《还在观望 Unity 的新技术?这家团队已经用它们开发 3A 级游戏了》
来源:Unity 官方平台
去年 11 月,一款融合了模拟经营、回合制战斗、SLG 玩法等元素的游戏正式对外公布,凭借 3A 级的游戏体验,该游戏迅速赚足了眼球,官方 Discord 社群用户已累计至 94 万,Twitter 粉丝数已累计至 84 万,可谓万众瞩目。
这款游戏,就是《Fusionist》。
《Fusionist》打造了一个基于机甲题材、星球探索的宏观宇宙,玩家将扮演机甲指挥官,管理自己的星球,收集稀有资源,升级技术,扫描蓝图来制造机甲,并建立生产管道。游戏计划于 2023 年底,正式登录 Steam 平台。《Fusionist》项目组共有 47 名全职成员,均是游戏行业的资深从业者,他们大胆使用 Unity 最新的前沿技术,如 DOTS、六面光照贴图等,创作出了逼真的水体、云层、爆炸等极尽精美的画面。本文中,我们邀请到了开发者团队,从技术层面讲解 Unity 引擎在画面表现方面的无限潜力。
HDRP – 打造物理真实的游戏世界
Unity 高清渲染管线 (High Definition Render Pipeline,缩写 HDRP) 采用了基于物理的渲染 (Physically Based Rendering,PBR) 框架,通过精确计算物体表面材质、纹理以及反射参数,可以生成更加真实的画面效果。
HDRP 支持更丰富的视觉特效和后期处理效果,这使得画面效果更加绚丽。例如,屏幕空间反射 (Screen Space Reflection,SSR) 和体积雾 (Volumetric Fog) 等效果可以赋予画面更丰富的立体感和层次感。
此外,HDRP 还内置了色彩分级 (Color Grading) 和泛光 (Bloom) 等后期处理效果,这使得最终的视觉效果更加丰富多彩。
在《Fusionist》中,使用到了 HDRP 管线的许多技术,包括 Layered Lit Material,PBR 物理渲染、SSR、SSAO、体积雾、后处理、HDR 等。
关于 ScreenSpaceReflection,ScreenSpaceAmbientOcclusion,HDRISky:
通过使用少量的光线模拟反射,使场景中的物件即使接受较少的环境光照,被遮蔽处也会呈现出明显的局部自阴影,进而提升物体的体积感和场景整体的光影真实感。启用后可以大幅度的提升图形品质,打开和关闭的差距对比参考:
Path Tracing
Path Tracing 的算法会从相机射出射线,当射线遇到物体表面时,会发生反射或者折射,它会一直重复这个过程,直到射线到达光源。开发者只要在 Volume 中添加 Path Tracing 重载即可。
Maximum Samples 最大采样值,可用于控制组成最终图像的帧数。这里的数值越大,形成最终图像所需渲染的帧数越多,当然所需的时间也越长,画面效果也越好。
Path Tracing 会使画面渲染效果变的更加逼真。游戏中的机甲展示,宣传展示图均有使用
Layered Lit Material
HDRP Layered Lit,是 Unity 的高清渲染管线 (High Definition Render Pipeline,HDRP) 之一,它可以用于创建高质量的 PBR 材质。
由于《Fusionist》项目的机甲模型需要一套不同材质和颜色变化的 Avatar 系统,开发团队在经过测试和讨论后决定采用 HDRP 独有的分层 Lit 材质,该材质球虽然是系统自带材质球,但是依然可以很好地满足游戏需要的效果。
Layered Lit Material 中的同一对象上最多堆叠四种材质,这样可以轻松地在 HDRP 中创建逼真且多样化的材质。Main Layer 是最底层,可以影响具有反照率、法线和高度的上层。HDRP 在 Main Layer 之上依次渲染 Layer 1、Layer 2 和 Layer 3。
在《Fusionist》项目中,每个 layer 分别控制着一种材质效果和颜色变化。然后通过增加材质球的数量,把机甲外观的丰富度可以无限扩充。
《Fusionist》的每个模型会属于一个 RGBA 通道的 Mask 贴图作为材质区域的分割,每一个分割区域的材质都可以赋予正常 Lit 材质的 PBR 属性:
《Fusionist》采用通用的 PBRmask 贴图来决定材质的表面物理属性以及磨损等细节。
材质强化助力角色形象多样化
HDRP/Lit 的 Type 中有更多的材质类型可以选择,但是 layered Lit 中并没有,于是开发团队进行了改进和集成。
从而实现了非常特殊的材质效果:
基于上述材质参数,调制出了一系列相当出彩的材质样本使机甲多样化。
Unity 丰富的插件支持
KWS water System
KWS water System 系统是一个基于模块的组件,模拟海洋/海洋/河流/湖泊/水池等水面。针对 PC/控制台平台和 HDRP 渲染的水系统,在《Fusionist》游戏中实现逼真的水面效果。
Caustic 效果是一种实现部分淹没的水下效应的方法。它可用于模拟光线在水中的折射和反射,从而营造出非常逼真的水下光影效果。
浪花制作:
•
制作具有海浪形状的粒子效果;
•
将制作好的粒子效果应用到海岸线上;
•
为粒子效果添加泡沫粒子渲染效果;
KWS Water System 的 Flowing 功能可以模拟自然流动的河流、瀑布等水体,让游戏中的水体看起来更加逼真。此外,Flowing 功能还可以自动生成杂波、涟漪等效果,使得水体的表现更加真实且具有动态感,通过自定义流速、流向、水纹等参数,可以进一步增强水体表现的多样性和真实感。
MicroSplat
MicroSplat 是一个 Unity 着色器插件,它可以用于创建细节丰富的地形材质,同时具有非常好的性能,帮助《Fusionist》在 Unity 中创建出更加逼真的地形效果。
MicroSplat 的地形混合模块可以平滑地将对象与地形混合。
MicroSplat 支持多种贴图控件,包括高度混合、纹理混合和细节贴图。这些控件可以让地形看起来更加细致和逼真。
Expanse
Expanse 是 Unity HDRP 的一个实验性功能插件,用于创建逼真的天空、云和大气效果。方便制作者很快速选择一个任意时间段可调节的气候天气。
Expanse 提供了一些高质量的材质和着色器,可以用于创建逼真的天空、云和大气效果。开发者可以根据自⼰的需求调整这些材质和着色器的参数,从而创造出各种不同的效果。
Unity 强大的特效工具
使用六面光照贴图制作爆炸和烟雾效果
在游戏中实时渲染烟雾和爆炸效果一直是个难题,因为算出复杂的光线在烟雾中的反射和散射需要很高的计算成本。为了在游戏中实现,开发团队常用贴图精灵来模拟烟雾。但是用贴图精灵难以实现烟雾与环境光照的互动,看起来不太真实。
六面光照技术是一个比贴图精灵更好的方法。它使用 6 个方向的光照贴图,记录从 6 个方向射入烟雾时,光线在烟雾中的反射和散射效果。在游戏运行时,开发团队根据当前场景的光照环境,选择使用 6 个光照贴图中的某一个或某几个结合,来渲染烟雾精灵。这样烟雾就可以根据真实的光照环境而变化其外观,看起来更加真实。
Unity 2022.2 版本推出了一整套端到端的工作流程 (从 DCC 到 Unity),可以逼真地渲染从烘培模拟中获得的烟雾。此解决方案还包括一套现成可用的贴图库,旨在使任何人都可以轻松将烟雾效果提升到新的视觉保真度水平。
VFX Graph
VFX Graph 资产通常作为子图提供,开发者可以直接将其拖入 VFX Graph 场景中使用。只需要调整简单的属性,如颜色、大小、动画速度等,就可以有显著的效果变化。
由于 VFX Graph 资产可以高度定制,同一个资产通过参数调整可以产生截然不同的效果。一个资产就可以满⾜多变的效果需求,大大提高工作效率。
此外开发者可以轻松地与其他 VFX 如火焰、碎片等组合,创作出更加复杂完备的视觉效果。不同 VFX 间通过参数链接可以实现协同变化,交互效果更加丰富。
“>”>
“>”>
ShaderGraph
Shader Graph 是 Unity 官方推出的,专门为 HDRP 量⾝定制的 Shader 编辑工具,它可以更加深度地集成 HDRP 的各项功能,与 HDRP Materials 和 VFX Graph 无缝链接,同时也提供了非常高效的工作流程。这使得在 HDRP 中使用 Shader Graph 创作 Shader 会更加简单高效。
“>”>
Cinemachine & Timeline
Cinemachine 提供多种 Camera Shake 模式,以及各种虚拟摄像机,如目标摄像机、轨迹摄像机、旋转摄像机等,这使开发者可以轻松实现酷炫技能特写。通过 Timeline 驱动,整个技能特写的实现过程大幅简化,开发者只需要在时间轴上设置好关键帧,选择合适的虚拟摄像机。
配合 Post-Processing Volume 的 Depth of Field,Motion Blur,Chromatic Aberration 等效果实现极具电影感和戏剧张力的技能特写,拓宽了技能特写的创意空间与表现力。
Unity DOTS 动态维护性能提升
DOTS 在游戏表现上具有高性能和可扩展性。
“>”>
《Fusionist》最后将是一款全球同服的太空 MMO-SLG,高峰时服务器需要实时动态维护几十万个 Entity。通过 Netcode for Entities 实现前后端实时同步,客户端编译至「Windows Target」,服务端编译至「Dedicated Server Target」,在 Entity 状态维护层面统一了前后端的技术栈,实现同程序员用同代码仓库。
在内部性能评测中,一台 AWS c6a.xlarge 服务器,可支撑近百个 System,几十万个 Entity 规模的宇宙模拟。服务器的 Logic Ticket 始终维持在 10 FPS 以上。
Unity 引擎在同一套工作流,同一个技术栈可支持多个平台。在官网的制作中,需要用到卡牌展示。卡牌仅需在 Unity Editor 中编辑,实现渲染效果后导出网页格式即可整合至 Web 端。
Unity 第三方工具
Unity 的 World Creator 2022 可以帮助开发者快速创建高质量的地形,包括山脉、河流、湖泊和森林等。它支持多种地形生成算法和多种地形材质,可以创建出非常丰富的地形效果。
World Creator 2022 支持多种地形编辑工具和多种地形变形功能,可以让开发者更加灵活地控制地形的形态和质感。
《Fusionist》是一个非常好的例子,详细说明了 Unity 引擎的最新功能在实践中的技术应用。凭借其令人印象深刻的视觉效果和游戏性,《Fusionist》揭开了 Unity 在 3A 游戏方面的无限可能。团队希望本篇技术文章提供了有价值的见解,并可以激励更多的开发者去探索 Unity 引擎的最新功能。
文章来源于互联网:Web3画质天花板?Fusionist如何使用Unity引擎新技术打造3A级链游