概述
第一人称射击游戏框架:该插件旨在成为一个简单、高性能、模块化、基于组件的框架。
表现:
性能是我们所有新系统的首要关注点。与市面上一些流行的套件不同,这些套件使用蓝图、在游戏线程上运行所有操作,或者几乎所有复制都使用多播,而我的套件采用推送模型进行复制,在可行的情况下使用工作线程,并且没有蓝图带来的额外开销。
多人游戏:
我在数据复制方面经验丰富,也擅长优化。该系统的核心是充分利用推送模型,从而提升服务器性能,优于默认的虚幻引擎实现。对于可能较大的数组,系统会使用快速数组序列化器来减少数据更改时通过网络传输的数据量。在适用的情况下,变量会在发送前压缩成字节,并在接收后在本地解压缩。每个类都带有一个 `bAutoCallForceNetUpdate` 选项,当该选项设置为 `true` 时,服务器会在将变量标记为“脏”时强制执行网络更新并清除网络休眠状态。这样,即使设置非常低的 `NetUpdateFrequency` 值,也能保持复制系统的响应速度。
动画片:
和大多数事物一样,动画系统也会受到性能的严重影响。为了尽量避免这种情况,动画系统会将大部分繁重的计算任务卸载到工作线程上。这种方法允许多个角色(Pawn)的动画数据并行运行,而无需等待前一个角色完成,下一个角色才能开始处理其工作。上面的截图展示了该系统的性能示例:在游戏线程上,我对比了使用默认第三人称模板角色运行 45 个动画角色的耗时 13.11 毫秒,而我的系统使用程序化动画,耗时仅为 14.34 毫秒。以上数据均未包含任何额外的优化,例如动画预算分配器(Animation Budget Allocator),它可以显著提升动画系统的性能,并带来卓越的效果(我为蓝图用户提供了一个辅助函数,以便他们更轻松地使用动画预算分配器)。
程序:
提供的程序化系统是市面上最深入的。它充分利用了IK骨骼(例如ik_hand_gun,当然您并非必须使用该骨骼),从而赋予玩家对枪械的完全自由,例如用右手操作栓动步枪,以及在左右手之间切换。程序化系统配备了全新的姿势系统,现在可以实现无限的姿势,例如高位持枪、低位持枪、短枪托、盲射、肩部切换(类似于2023年末的塔科夫更新),以及您想要的任何其他姿势,因为它们完全由曲线驱动。同样由曲线驱动的还有后坐力(包括枪械和手柄)、枪械碰撞和移动晃动。其余部分则由数值和插槽驱动。一些由插槽驱动的程序化功能包括瞄准、点瞄准、在单个瞄准器上瞄准多个点(例如带有内置机械瞄准器的Elcan瞄准器)以及副手IK(左右手均适用)。一些价值驱动程序包括移动延迟、旋转延迟、死区、基础姿势偏移和第三人称瞄准偏移(左手和右手模式)。
火器:
程序化组件默认包含大量枪械功能和配件。枪械组件充当其他配件的接口,同时还包含配件管理器,可直接访问每个配件及其父组件。
枪械附件:
该系统包含多个组件,可让您制作几乎任何枪械配件,例如光学瞄具、放大光学瞄具、照明灯、激光指示器、前握把、枪口装置、枪管、支架等。示例中还提供了几个附加功能来补充这些配件,例如枪口温度系统,可实现类似 Tarkov 的消音器烟雾/热量闪烁效果(见图)。
红外/夜视:
内置的红外/夜视系统可使灯光和激光等设备仅在夜视功能开启时可见。该系统包含由强光源引起的管路烧屏效果,该效果通过计算着色器对场景亮度进行采样来实现。提供的示例内容包含夜视后期处理和叠加层(见图),可实现逼真的视觉效果,并提供一系列设置和材质功能,以帮助您改进自己的素材。
附件系统:
这套附件系统旨在通用,并非仅限于枪械。它适用于任何需要附加组件的物品,例如带有附件的枪械,以及带有服装/装备(背包/护甲等)的角色。该系统设计快速高效,完全支持骨骼网格和引导姿势组件。
执法记录仪:
有人问我如何设置类似执法记录仪的装置,所以我添加了一些后期处理素材,这样您只需点击几下鼠标,即可轻松设置系统来模仿执法记录仪!
技术细节
Features:
- Written Entirely in C++ with Components, No actor classes or interfaces
- Full Procedural Animation System
- Attachment system for all types of customization including characters
- Custom Physical Materials
- Magnified Scopes
- Simulated Scope Eye box
- Lights/Lasers
- Forward Grips
- Magnifiers
- Offset Mounts
- Range Finders
- Red Dots/Holograph Sights
- Changing Reticles
- Changing Reticle Brightness
- Night Vision
- Thermal Vision
- Muzzle Devices (such as suppressors and compensators)
- Firearm Collision Handling
- Much Much More that cannot even come close to fitting in this list!
Code Modules:
- SKGAnimGraphNodes
- SKGAttachment
- SKGLightLaser
- SKGMuzzle
- SKGOptic
- SKGOptional – Can be ignored
- SKGPhysicalMaterialModule
- SKGProceduralAnim
- SKGProjectile
- SKGRangeFinder
- SKGShooterFramework
- SKGShooterFrameworkCore
- SKGShooterFrameworkEditor
- SKGStats
- SKGStock
Number of Blueprints: In Example Project
Number of C++ Classes: 41
Network Replicated: Yes
Supported Development Platforms: Win64, MacOS, Linux, SteamVR, Oculus
Supported Target Build Platforms: Win64, MacOS, Linux, SteamVR, Oculus
Documentation: https://www.youtube.com/playlist?list=PLnHeglBaPYu9NBH3G9LT8v-4o6qe31xSg
Support Email: sneakykittygamedev@gmail.com
兼容性
支持的虚幻引擎版本:4.27,5.5~5.7
支持的目标平台:Windows Mac Linux Oculus SteamVR / HTC Vive Nintendo Switch PS4 Xbox One
支持的开发平台:Windows Linux Mac
其他信息
分发方式:插件
更新日志
2026年01月23日 Update To Version 1.4.5 For Unreal Engine 5.5 5.6 5.7
Update To Version 7.0.9 For Unreal Engine 4.27











暂无评论内容