NCSOFT 公布了 Project G 的细节,这是一款使用虚幻引擎5开发的雄心勃勃的大规模战略游戏。其核心技术挑战是在保持单个单位高保真度的同时,在屏幕上渲染数千个单位,这一成就重新定义了即时战略游戏类型的界限。为了实现这一目标,该工作室实施了一条混合管线,将数字雕刻工具与大规模特效系统相结合。
技术管线:从 ZBrush 到 Houdini 的数字战争 🛠️
制作流程始于 ZBrush,艺术家们在此为每个单位雕刻高分辨率模型,确保即使是最小的士兵也具备毫米级的细节。这些资源随后被导入 Maya 进行拓扑重建和骨骼绑定创建,优化几何体以适用于实时渲染。真正的诀窍在于 Houdini,它生成大规模视觉特效系统(爆炸、烟雾和破坏),并直接集成到引擎中。为了管理图形负载,团队实施了动态 LOD 系统和 GPU 实例化,每个单位共享精简后的顶点缓冲区。此外,视锥体裁剪和层次遮挡剔除使 UE5 能够即时丢弃玩家视野之外的物体,即使在有 10,000 个活跃实体的情况下也能保持稳定的帧率。
大规模场景下的保真度困境 ⚔️
Project G 的矛盾之处在于,每个士兵在近景镜头下必须看起来独一无二,但在远处却难以区分。解决方案是使用图集纹理和参数化材质,在不增加绘制调用的情况下实现颜色和磨损的变化。尽管引擎借助 Nanite 和 Lumen 处理负载,但真正的挑战并非技术层面,而是设计层面:让玩家相信在数字混乱中每个单位都具有个体价值。Project G 证明了,在下一代战略游戏中,规模与细节并非不可兼得。
作为开发者,在虚幻引擎5中同时实现数千个单位的具体技术挑战是什么?NCSOFT 采取了哪些解决方案来在 Project G 中保持稳定的性能?
(附注:着色器就像蛋黄酱:一旦分离,就得从头再来)