INKURSION 是一个 Unity 6 HDRP 的叙事平台游戏,玩家扮演一个刚刚成为自主的章鱼,逃离了一个模拟宇宙。HDRP 并不完全适合在手持设备上运行,因此让其变得可移植和 Deck 友好,同时保持视觉效果,是我们面临的最大挑战之一。以下是实际上推动了我们进步的关键因素:

章鱼本身 八个完全由物理驱动的腿部是一个大量的刚体和关节,包括步行脚本的程序化步骤。我们调整了每个tentacle的关节数量,简化了碰撞体形状,调整了求解器迭代次数,并确保当它们没有做任何事情时,分段会进入睡眠状态。我们的目标是保留柔软、反应性的感觉,而不让物理步骤吃掉帧率。

镜子 我们使用 HDRP 平面反射探针来实现镜子效果,使玩家可以看到章鱼角色。实时渲染镜子每帧都非常吃力。现在,每个镜子只有在实际上在屏幕上显示并且玩家位于一个特定半径范围内时才会实时渲染。即使这样,它也不会捕捉每一帧:它会在间隔时间内捕捉快照,这仍然足够平滑,以至于玩家不会注意到。这个优化是我们单个最大的 FPS 增益之一。

网格和着色器 我们清理了环境网格,LOD 化了它们,减少了着色器变体,并简化了我们最重的着色器,使其仍然可以读取光照效果,但在弱 GPU 上的成本大大降低。

批处理 有大量的foliage 和重复的道具,因此批处理是一个巨大的优势。减少绘制调用释放了更多的CPU 头room 比几乎任何其他优化都要多。

上采样 在 NVIDIA 硬件上,我们使用 DLSS,允许低端 RTX 卡以较低的内部分辨率渲染,并且仍然看起来很清晰。[[在 Deck 上,我们使用 FSR,因为 DLSS 是 NVIDIA 专有的。]]] 最终结果是,在低端硬件上保持稳定的 60fps,并且在剪辑中看到的生物放射性效果保持完好。很高兴对任何方面进行详细说明,尤其是 ragdoll 和镜子设置。

优化 HDRP 时,您的最大胜利是什么?演示:https://store.steampowered.com/app/4767470/INKURSION/