专栏名称: CG世界
CG世界是CG领域自媒体。专注3D动画、影视特效后期制作、AR/VR几个领域的知识,前沿技术,资讯和行业教程分享。
目录
相关文章推荐
云南省商务厅  ·  外贸促进信息 | 第二十期《重点贸易促进活动》 ·  17 小时前  
云南省商务厅  ·  外贸促进信息 | 第二十期《重点贸易促进活动》 ·  17 小时前  
四川商务  ·  市州观察 | ... ·  昨天  
FM1007福建交通广播  ·  宇树科技携两款机器人亮相2025GDC ·  3 天前  
FM1007福建交通广播  ·  宇树科技携两款机器人亮相2025GDC ·  3 天前  
51好读  ›  专栏  ›  CG世界

写实度太炸了! Unity6实时演示短片幕后制作技术解析!

CG世界  · 公众号  ·  · 2024-09-30 19:09

正文

点击上方蓝字 CG世界 关注我们

“ 感知技术 · 感触CG · 感受艺术 · 感悟心灵 ”

中国很有影响力影视特效CG动画领域自媒体


《黑神话:悟空》的大火,让它背后功臣之一的UE5狠狠刷了一波存在感(虽然之前就已经充满存在感 )。

眼看着UE5势头越来越旺,隔壁的Unity坐不住了。这不,在不久前的Unite2024大会上,拉出了自家最新版本游戏引擎Unity6来炸场。

整场大会干货满满,最炸裂的极大场面之一,就是Unity6的技术能力展示。一段名为《 Time Ghost 》的4分钟短片,呈现的是一名貌似从蒸汽朋克风格的一战战壕中逃脱出来的士兵,在一个看起来巨大且空旷的山地中探险的情景。

《Time Ghost》是由 《铁匠》、《亚当》、《死亡之书》、《叛教者》和《敌人》等项目背后的团队开发的最新 Unity 原创实时电影演示, 使用了Unity6早些时候发布的预览版中引入的一些新特性。

这段影片当天是实时运行在一个 GeForce RTX 4090显卡上,重点突出了Unity6在视觉质量、项目复杂度方面的进步以及机器学习工作流程的实际应用。

全方位展示了Unity 6引擎在光照、毛发处理以及大规模环境方面的强大实力。

除了展示这段名为《 Time Ghost 》的短片,当天幕后团队还从如何 创建大型环境、高保真视觉特效、灯光设计以及构建角色等几个大方面做了技术分享。


推广↓↓↓


废话不多说,赶快跟着编编一起来看下吧:

PART 01

TIME GHOST



环境创建


地形生成

首先从地形生成开始,这里提到的地形,指主要的水平和垂直地标,也就是角色站立、奔跑、垂死或执行其他动作的地方,如山脉、巨石、甚至是洞穴等大的垂直元素。

这里使用了两种不同的方式进行地形创建:完全从零开始创造环境和基于现实世界地点建造环境。

第一种情况下,团队决定使用 Houdini 来从零开始建立地形,选择Houdini的原因是它不仅是一个地形生成工具,用户同时还能使用其中的任何其他工具。另外Houdini与Unity交互得很好,可以 在两者之间轻松切换,进行创作和修改,整个迭代无比灵活。

整个短片中,大约有一个半的环境是从零开始创建的。比如下面我们看到的非常平坦的战争场景环境,团队从零开始,创建了一个2*2公里的环境。首先确定环境中的主要建筑地标,加入一些地形变化以增加环境的层次感。然后将创建的地形导入Unity,继续进行微调。

在Unity中,团队会对地形进行基础的纹理测试,并通过摄像机检查效果。如果战壕的高度不对,就再进行调整,继续添加更多细节(如处理着色器),使用 Shader Graph 确保从近景到远景的视觉效果都令人满意。

确定了地形和基础纹理后,团队从资产库中选取适合环境的道具(如建筑物、车辆等)进行布置,继续不断通过摄像机视角检查效果。 最后一步,是散布植被、鹅卵石等小元素,增加环境的真实感,当然这一过程也是通过摄像机视角反复测试,确保视觉效果最佳。

而对于那些基于现实世界位置构建的环境,方法略有不同,但流程基本相似。首先选定一个适合故事发展的地方,然后带着无人机进行现场勘景, 用无人机进行摄影测量,通过软件处理分析无人机从不同角度拍摄的照片,获取真实世界地形的数据,以便创建更逼真的环境。

另一方面,团队还大量依赖于 LiDAR数据来创建地形,LiDAR数据提供了高精度的高度信息,这对于创建真实的地形至关重要。

每个环境块包含五千万个点,这样的大数据量使得处理起来非常困难。处理如此庞大数据集几乎不可能,为了简化处理,团队选择将数据“平面化”:存储每个点的高度信息,并重新投影成体素 (voxel)形式,以便更容易处理数据。在这一形势下,可以执行清理、修改数据等任何操作。

为确保数据可以在软件之间顺畅传输,团队建立了从Houdini到Unity的高效工作流,将处理后的体素(voxel)数据导入Unity的地形系统,直接在编辑器中进行进一步的调整和迭代。

在Unity中,团队可以通过放置摄像机来预览环境,并在此基础上进行迭代。还能够从点云数据中导出颜色信息、法线贴图等,用于增加地形的高频细节。同时使用拼贴图来增强纹理,或者用于散布等任务。

在创建虚拟环境时,可以根据项目的具体需求进行选择,无论是从零开始创建还是基于现实世界数据创建环境,关键是建立一个灵活且允许迭代的稳健工作流程。


资产构建

另外的一大挑战是资产构建,团队没有使用任何在线资产库,从一片草叶到一块石头,再到一座山、一处悬崖,都是专门为了这个项目从零开始构建的。

资产的来源大致分以下几种:
摄影测量 :使用标准的 交叉极化设备来扫描小型到中型资产;
无人机摄影测量 :捕捉地形、山脉等大型元素;
光度扫描 :创建植被图集和角色的服装材质;
SpeedTree :创建草、植物、树木和一般植被;
程序化资产创建 :创建背景资产;

手工建模 :用于创建建筑物等非程序化资产。

处理完这些工作之后,导入Unity,根据环境分类(每个环境有一个资产库), 另外团队还建立了一个庞大的植被库, 方便艺术家在工作时可以快速选择资产使用。

团队使用了程序化建模工具 SpeedTree来创建了短片中的树木,将附带纹理的树木资产导入到 Unity,再用基于扫描的材质来增强树木的纹理。稍微远一点的背景树木,则可以 一键生成假象(imposters)资产。

最后,团队还制作了一个程序化工具来布置根系系统。


scattering

通过在地形上分布各种资产(如植被、岩石等),可以提升环境的真实感和生动性。

团队在Houdini中进行分布规则的设置,同时开发了一个用户界面,暴露了一些参数给用户,以便艺术家可以轻松调整资产分布规则。从Houdini导出含点信息的数据集,由于点云 (point cloud)数据非常轻量,可以轻松传入Unity。

在Unity中,每个点携带有关放置何种资产的信息,点云数据转换为实际资产,每个点包含资产应放置的位置及其属性信息。Unity 会根据点云数据在指定位置放置预置体,并转换为点实体。不仅提高了效率,还可以与风系统以及角色互动结合起来,使环境更具动态性。

具体示例如下,使用Houdini中的工具来分析环境,创建分布规则。自动生成遮罩,根据规则散布点云数据,当然也可以手动绘制遮罩。

至于植被资产,可以将相关信息输入到Houdini中,设置比例、旋转等变化来增加自然感。这里提供了如密度、聚类等多种控制选项( 但大多数时候保持简单的随机化设置),可以选择使用一个或多个散布系统来增加灵活性。

通过使用Unity的实例化功能,可以高效渲染许多相同资产的副本。 LOD( Level of Detail) 系统,还能确保远处的资产以较低的细节级别渲染,减轻GPU的压力。

PART 02

TIME GHOST



视觉效果

在创建短片中的战争场景时,团队使用了大量视效。

团队利用了Unity的VFX Graph和粒子系统,以及Houdini/Blender中的六向光照和Flipbooks等技术,创造了大量视觉效果。在增强场景真实性的同时,也注意到了性能的平衡。

地面模拟

RBD模拟:用于模拟刚体动力学,如地形破坏、建筑物倒塌等。
虚拟动画纹理:用于模拟动态效果,如燃烧的余烬、闪烁的火焰等。

爆炸效果

六向光照:虽然不是完全的体积光,但在调整和与光照互动方面表现良好。

Flipbooks:用于模拟火焰、烟雾组件。

点光源:添加在每个爆炸上,以控制爆炸的冲击波及互动光照。

碎片和脚印

粒子系统:用于模拟碎片喷射,如土壤、灰尘和鹅卵石飞散。
视觉效果图(VFX Graph):用于创建脚印,使角色与环境互动更加自然。

烟雾和雾气

局部和全局体积雾:增加场景的深度和氛围。
视觉效果图、 Flipbooks :用于模拟背景中的火焰。

其他次要视觉效果

子弹击中效果:增加细节,使战斗更加生动。
特殊粒子效果:增加空中的复杂度和真实感。

RBD模拟:低分辨率模拟,但通过纹理和二级视觉效果(如碎片、尘土等)增强了真实感。

团队创建了多个可以随意调整和组合的子组件,虽然在短片中有些细节可能不是很容易被看到,但这些特效确实为增加最终画面的真实感做出了很大贡献。

PART 03

TIME GHOST



光照环境

在实时渲染的战争场景时,团队使用了自适应探针体积(APVs)以及其他照明技术来达到所需的视觉质量,同时保持实时性能。


光照设计

1. 自适应探针体积(APVs): 在场景内多个点和方向采样照明环境(样本用于插值采样点间的照明),提供了一种近似全局光照的自然高效场景照明。
优点如下



能够在性能和质量之间提供良好的平衡,同时允许在没有完整光线追踪 计算开销的情况下进行动态照明变化。
自动化的设置过程,只需要点击按钮,Unity就会完成配置;当自动设置不起作用,也可手动调节。
光照一致性更好。
流式传输对性能友好,不需要额外的光照贴图、UBO或纹理。
适用于多资产环境,特别是拥有数百个资产的场景。

2.屏幕空间反射(SSR):

SSR可以为特定反射表面提供反射,但在处理遮挡时表现不佳,缺乏APVs提供的全局光照效果。团队选择性地在某些反射表面使用了SSR,在不影响性能的情况下增强真实性。


实际应用

主照明:

定向光 :模仿太阳光,建立主要的照明源。

点光源 :用于爆炸等特定效果。

次级照明

APVs :用于模拟主光源引起的间接照明,增添场景的整体氛围和真实性。

交互式照明

交互式的照明设置,允许光照效果 随着场景中角色/物体等动态因素与环境的互动而实时调整,看起来更加真实自然。


爆炸中的照明

在爆炸中的照明还要考虑到光和粒子的相互作用。爆炸中的粒子系统不仅要模拟碎片和烟雾,还需要与爆炸产生的光源互动。此外,爆炸发生时,动态生成的光照也需要与场景中的其他光源协调,以确保光照的一致性和自然性。这里团队还通过六向光照( Hexagonal Light)来实现近似的体积效果,以增强爆炸的视觉冲击力。

PART 04

TIME GHOST



角色构建


角色开发







请到「今天看啥」查看全文