我一直对军事游戏有几个问题:人物瞬间改变方向,玩家左右摇摆而没有重量和惯性来避免子弹,滑行脚部和头部错误利用,允许玩家在不暴露自己时就射击。
我带着这个想法几年了,最后终于有时间来实现它。已经工作了三个月。
基于之前在Reddit上发布的视频的巨大反馈,我已经解决了大部分问题并取得了很大的进展,但仍有许多需要改进的地方。
我对这个项目深深着迷,努力将其推向质量与之前的游戏不同。我希望你喜欢它的方向,并且希望再次听到你的想法。
关键特性:
- 我在物理引擎上建立了核心,以便运动具有真正的重量和惯性,同时保持输入响应。轻量级士兵速度快灵活,而重装载单位感觉笨重,难以在跑步时转弯。
- 所有运动都是程序化的。没有使用动画片段。所有步骤周期都是基于曲线的,这使得创建非常不同的运动风格变得容易。
- 相机位于右眼的位置。这是一个真正的第一人称视角。它消除了头部和枪支之间的间隙,因此敌人无法在不暴露自己之前就射击你——头部错误利用。
- 机动是完全分离的IK层。它驱动空对象,而那些空对象驱动双腿IK。这使得切换到另一个引擎如Unreal变得直接。
抗恶心解决方案
上一次帖子的主要担忧是相机运动导致不适。因此,我实现了三层稳定:
- 锁定相机到水平轴。
- 添加了通过脊柱运动学的冲击吸收。
- 眼睛锁定稳定。最难的一点。 - 在现实中,我们的眼睛不会因为头部运动而感到不适,因为我们的眼睛始终锁定目标。纯粹从鼠标输入和抖动头部中计算这个目标点花了两天的数学,但最终实现了。
可用性
我目前正在提供机动系统的许可。 我也愿意全职或合同角色来将这个体系集成到正在进行的项目中。如果你的工作室需要一个像这样的系统,让我们谈谈。
性能
在我的老机器上,计算所有系统和IK求解器需要大约0.5 ms。 我没有进行任何优化。 我目前使用Final IK,之后计划切换到Unity的动画rigging包,它使用工作线程进行IK计算和应该给予显著的性能提升。 我也计划添加刷新阀值和LOD远处单位。
附注
在工作中,我理解为什么像这样的系统如此罕见 - 极其困难。 在现实生活中,你只是走路。 在这里,你必须分解每种类型的步骤并在代码中实现它,同时保持一切干净和坚实。如果你使用胶带解决任何问题,你将为之后的每个步骤付出代价。
关于GEN AI
我在编码时使用了Gemini的帮助,但仅限于简单任务。系统的复杂性已经远远超出了Gemini 3.1 Pro的范围。
我还使用了Gemini来生成视频背景音乐。
评论 (0)