欢迎光临散文网 会员登陆 & 注册

UE5 面向教师和学生的 Nanite 基础指南

2022-10-18 22:06 作者:CGStaion  | 我要投稿

本指南适用于目前使用虚幻引擎 4 或其他希望迁移到虚幻引擎 5 的游戏引擎的教育工作者和学生。我们假设您了解游戏引擎和 3D 软件如何渲染 3D 几何图形,并且熟悉 UVW 映射、多边形等概念上。

图片


Nanite 优势

• Nanite 网格渲染速度更快,并且与使用烘焙法线贴图的传统网格相比,可以使用更少的内存和磁盘空间。由于压缩的魔力,一百万个三角形的 Nanite 网格只需要 14 MB 内存,而单个 4K 法线贴图大约需要 22 MB

• Nanite 具有非常稳定的性能配置文件,受渲染分辨率的影响比受三角形或场景对象数量的影响更大。

• 即使是低多边形内容也可以从Nanite 中受益。更智能的绘图调用和自动 LOD 可以减轻开发人员的一些负担。

• 美术师不必花时间优化和烘焙法线贴图。相反,他们可以将原始 3D 模型、雕刻和摄影测量扫描直接导入虚幻引擎,并以非常高的帧速率直接在视口中可视化它们。

• 关卡艺术家不再受对象或三角形数量的限制,允许他们在每个表面上丰富细节,而不必担心合并对象或不可预测的帧速率。

[Nanite Mesh vs. Baked Maps Mesh]

图片
Nanite


图片
Baked


技术限制

从5.0 开始,Nanite 不支持动态/变形网格,包括骨架网格和使用世界位置偏移(WPO 或顶点变形)的网格。

注意:Nanite for 5.1 的主要焦点是添加了一个可编程光栅化框架,为蒙版材料、两侧植物、像素深度偏移和世界位置偏移等功能打开了大门。请注意,确切的功能列表以及预期的稳定性和性能特征仍待定。


• Nanite 网格不能使用带有不透明蒙版或半透明的材质,也不能使用双面材质

• Nanite 不支持 Mac OS,由于图形 API 限制,将来也不可能支持。

• Nanite 网格在与光线追踪阴影一起使用时会显示错误。

• Path Tracer 不支持Nanite 网格。


此外,Nanite 目前不支持以下内容:


• 分屏和 VR

• 前向渲染支持

• 多重采样抗锯齿 (MSAA)

• 自定义模板和深度缓冲区


Nanite 处于开发的早期阶段,虽然我们预计会解决其中许多问题,但我们无法提供时间表指导。


其他注意事项

Nanite 提供无限三角形和对象数量的承诺。因此,您和您的学生应该注意一些其他实际考虑因素,以便相应地计划您的工作流程和课程。


3D 应用

3ds Max、Maya 和 ZBrush 等应用程序只能有效处理一定数量的三角形。

例如,具有超过 100 万个三角形的网格往往会使这些应用程序减慢到不再可用的程度。在这些工具发展之前,它们通常会限制模型的保真度。


管道流程

巨大的网格数也大大减慢了生产流程。它们会增加文件大小、减慢传输时间和编译/烹饪操作。此外,网格的三角形越多,从应用程序移动到应用程序并导入虚幻引擎所需的时间就越长,从而减慢了迭代速度。


寻找平衡

对于使用 Nanite 的艺术家来说,最关键的技能之一是能够决定资产的适当三角形和纹理密度,以平衡保真度和上述考虑因素。

确定三角形密度的一种合适方法是尝试瞄准每个像素一个三角形。

最终用户与之交互或非常接近的对象可以由非常密集的网格组成,而背景网格经过优化以提高性能和工作流程。


硬件和软件要求

Nanite 在较新版本的 Windows 10(版本 1909.1350 和更新版本)和 Windows 11 上运行,并支持安装了最新图形驱动程序的 DirectX 12 AgilitySDK。

对 Linux 和 Vulcan 的支持即将推出,但尚未公布时间表。


使用 Nanite 网格

Nanite 网格的行为与虚幻引擎中的任何其他静态网格一样(除了上述差异)。它们通常是手工创建的,或者在导入虚幻引擎之前在外部应用程序中扫描和清理,就像大多数其他静态网格体一样。您还可以从 Quixel、TurboSquid 或 Sketchfab 等资产库下载高多边形模型。

您可以在大多数 3D 应用程序(例如 Blender、3ds Max、Houdini 和 Maya)中创建自己的 Nanite 网格。Unreal 导入 FBX 和 OBJ 3D 交换格式,大多数 3D 应用程序都支持这些格式。Nanite 支持使用 Datasmith 导入的网格,允许可视化设计人员实时使用高保真设计和 CAD 模型。


启用 Nanite

虚幻引擎支持 Nanite 作为核心功能,只需在单个资产上启用即可。Nanite 网格可以通过两种方式启用:转换现有静态网格和在导入网格时选择 Nanite。


转换现有的静态网格物体

您可以通过在详细信息面板中选择启用 Nanite 支持,或在内容浏览器中右键单击一个或多个静态网格,在静态网格/几何集合编辑器中启用或禁用 Nanite。

注意:当您将现有静态网格体转换为 Nanite 时,它们将不再使用现有 LOD 模型,并将使用备用网格体进行每个多边形的碰撞,这可能会改变游戏玩法或视觉保真度。

将新网格导入为 nanite 网格

将静态网格体导入内容浏览器时,可以选择构建 Nanite。这将在新导入的网格上启用 Nanite。


碰撞

与传统的静态网格体一样,Nanite 网格体仍然使用低多边形表示(凸包)和分析形状(球体、盒子等)进行物理模拟。

对于每个多边形的复杂碰撞,UE5 使用 Nanite Fallback Mesh。如果这不能提供适当的结果,您可以在必要时使用传统 LOD 方法和网格常规设置中的 LOD for Collision 属性设置自定义碰撞 LOD。

注意:如果使用此方法,请在静态网格体编辑器中将 Fallback Triangle Percent 设置为 0。


UV 坐标

在非常高的多边形网格上使用 UV 坐标很快就会变得繁重,在开发管道中产生摩擦。3D 工具还不能完全处理密集的几何图形。

考虑查看投影映射技术、程序化和其他可以跳过或增强 UVW 展开方法的方法。


虚拟纹理

虽然不是 Nanite 的特定功能,但虚拟纹理 (VT) 允许开发人员在虚幻引擎中使用巨大的纹理分辨率。在不启用虚拟纹理的情况下,虚幻引擎支持纹理的最大分辨率为 8K,而虚拟纹理允许每个轴上数十万像素的分辨率。此外,与传统的纹理流式传输方法相比,VT 解锁了额外的地形工作流程,并且可以减少整体内存使用量。

即使启用了虚拟纹理,我们强烈建议对绝大多数资产使用 4K 纹理。处理较大的图像会很快变得繁重。大图像占用大量磁盘空间,传输速度慢,并且会使大多数纹理编辑和绘画应用程序变得无响应。

注意:您可以使用静态网格体编辑器视口中的“显示”菜单在静态网格体编辑器中查看 Nanite 后备网格体。


教学指导

Nanite所有的东西

我们建议在任何支持它的网格上启用 Nanite。这样,您的网格渲染速度更快,同时使用更少的内存和磁盘空间。对于 Nanite 不支持的网格,回退到常规的静态和骨架网格工作流程和技术。Nanite Meshes 和 non-nanite Meshes 在一个场景中无缝地协同工作。

例如,下面场景中的对象依赖于 Nanite 不支持的功能,例如地形和骨架网格体角色,使用更传统的方法进行渲染。在 Nanite 可视化中,它们显示为黑色剪影。


继续教纹理烘焙

Nanite 消除了创建低多边形、烘焙版本的雕刻、细分网格或实时应用程序中通常需要的 LOD 链的艰巨任务。但是,将数据编码为曲率和深度等纹理的过程。对于 3D 艺术家的工具集来说仍然是必不可少的。例如,随着 Nanite 的引入,角色艺术流程基本保持不变。

虽然学生可能不会烘焙从高多边形模型投影的法线贴图,以优化其环境网格,但他们仍将使用 Substance Painter 和 Quixel Mixer 等工具,这些工具利用环境光遮蔽、法线和曲率贴图等贴图创建表面纹理和材料。


探索新的工作流程

Nanite 网格有一些限制,需要大量创造性的问题解决才能克服。以下是开发人员需要应对的挑战示例。


• Nanite 不支持逐实例顶点颜色绘制:十多年来,驱动材质变化的顶点绘制一直是实时图形中的重要工作流程。我们如何将艺术家驱动的变化添加到网格中?

• Nanite 不支持蒙皮网格:但是,Nanite 网格可以附加到骨骼/骨架上。我们如何在角色上使用 Nanite 网格,有哪些权衡?

• Nanite 使多平台支持变得更加复杂:开发可靠的工作流程,使项目能够从低端/移动硬件扩展到下一代控制台,对于许多拥有多平台游戏的工作室来说,这将是一项宝贵的技能。

• 多面体工作流程可能需要一些时间来适应:需要养成新习惯以保持项目按计划进行。确保在低多边形阶段展开网格以节省时间,并考虑使用不同的纹理方法(例如 polypaint)来利用这些更详细的网格的优势。


给学生的建议

为了覆盖最广泛的受众,工作室现在正在开发多平台混合游戏,这些游戏可在当前一代游戏机(PlayStation 5 和 Xbox Series X)、PC 以及 PlayStation 4 和 Nintendo Switch 等功能较弱的平台上运行。

随着当前一代游戏机的采用增加,工作室开始为他们真正可以利用虚幻引擎 5 的所有功能的下一代项目开发和招聘。


应届毕业生和前辈

计划在不久的将来进入劳动力市场的学生应该知道,Nanite 还不是开发 3D 资产的行业标准方法。学生仍应精通传统的从高到低的多边形方法、优化、LOD 等。但是,他们应该了解 Nanite 和虚幻引擎 5 的世界构建方法。


新学生

那些刚刚开始学习的人应该假设在 2-3 年内,Nanite 的采用和虚幻引擎 5 的使用将大幅增长。理解并将强大的高多边形工作流程应用于艺术和世界建设的需求将变得越来越重要。

摄影测量、数字雕刻和程序化等主题将越来越多地成为 3D 艺术家工具集的一部分。在这些领域拥有强大技能的毕业生将比同龄人更具优势。


在读学生

那些已经在研究 3D 资产制作的人可以立即开始探索 Nanite。这个

如果您已经从 CAD、摄影测量或雕刻应用程序等来源生成高保真模型,则尤其如此。面向 AAA 工作室的学生应该考虑使用 Nanite 和虚幻引擎 5 的下一代功能。

然而,许多工作室将在未来许多年继续使用不支持 Nanite 风格工作流程的游戏引擎进行开发。对您来说,重要的是查看您想要工作的工作室并确定他们是否会在不久的将来采用这些类型的技术。专注于移动、VR 或游戏即服务 (GaaS) 的工作室可能会在未来一段时间内受制于传统的开发技术。


其他软件和学习主题

Blender、ZBrush 和 Mudbox 等工具引发了令人难以置信的数字艺术的爆炸式增长。到目前为止,实时渲染这些创作是一项艰巨的任务。您需要使用称为纹理烘焙的过程将高多边形网格转换为优化的低多边形模型。此过程技术性强、耗时且容易出错。它还对 3D 应用程序和实时引擎之间的迭代产生巨大影响,每次迭代都需要重新烘焙纹理。

Nanite 允许艺术家将他们的造型直接导入虚幻引擎,无需任何优化。下图显示了在 ZBrush 中雕刻的雕像,其中包含大约 1 亿个三角形。在关卡周围复制了数百个这种资产,Nanite 可以轻松渲染场景。


摄影测量

使用照片来扫描和捕捉现实世界的物体和表面作为 3D 数字网格并不是一项非常新的技术。RealityCapture 和 ReCap 等应用程序已经有一段时间了,艺术家、历史学家、研究人员等正在使用摄影测量来捕捉数十万个细节丰富的 3D 模型。

Nanite 消除了对此类模型进行大量优化的需要,允许开发人员使用数百个摄影测量扫描网格来创建具有前所未有的细节和沉浸感的环境。


资产库

当今绝大多数游戏、电影和可视化工作室都在使用诸如 Quixel Bridge、Sketchfab 和 Unreal Engine Marketplace 等资产库来帮助他们填充自己的世界。创建单个下一代关卡或渲染所需的详细程度和大量不同资产对于除了最大的团队之外的所有人来说可能太多了。

艺术家从这些市场中找到高质量材料并对其进行定制以适应其工作室的特定风格或其他特征的能力正在迅速成为与原始建模或雕刻能力一样重要的技能。


教学资源

虽然 Nanite 是全新的,但已经有很多文档、官方教程和社区资源可以帮助您将 Nanite 带入课堂。


官方文档:


虚幻引擎 5 文档:https://docs.unrealengine.com/5.0/en-US/

Nanite 文档:https://docs.unrealengine.com/5.0/en-US/nanite-virtualized-geometry-in-unreal-engine/

虚拟阴影贴图文档:https://docs.unrealengine.com/5.0/en-US/virtual-shadow-maps-in-unreal-engine/


示例项目


堆栈 O 机器人

这个完整的 UE5 示例游戏项目展示了 Unreal Engine 5 的许多下一代功能,例如 Lumen 全局照明、Control Rig 程序动画,当然还有 Nanite 的虚拟几何体。对于那些希望开始制作不太复杂的体验但可以使用一个很好的基础进行工作的学习者来说,这是一个很好的基础。从 Unreal Engine Marketplace 下载 Stack O Bot 项目。(https://www.unrealengine.com/marketplace/en-US/product/stack-o-bot)

图片


虚幻学习套件

为了帮助学生更好地了解整个游戏开发流程,我们很自豪地展示了虚幻学习套件。这包轻量级、异想天开的资产 - 包括源 3D 和纹理文件

- 允许您探索在 3D 应用程序中构建内容,将其导入虚幻引擎,并对其进行迭代直至完美。在此处从 Unreal Marketplace 下载项目。(https://www.unrealengine.com/marketplace/en-US/product/unreal-learning-kit)

我们还开发了一系列课程计划和其他学习内容,以帮助您将虚幻带入课堂,在此处了解更多信息!(https://www.unrealengine.com/en-US/lesson-plans)

图片


城市样本

有关下一代开放世界游戏体验的示例,请下载 City Sample 项目。该项目展示了游戏和故事片中的顶级创意和技术头脑可以使用虚幻引擎 5 创造什么。然后,通过教程系列学习如何构建具有无与伦比的真实感和细节的庞大、超详细的世界!(https://www.unrealengine.com/marketplace/en-US/product/city-sample)

如果完整的城市示例太多而无法下载或运行,请考虑下载城市示例车辆或建筑物包,以获取有关在演示中如何使用 Nanite 的更具体示例。

(https://www.unrealengine.com/marketplace/en-US/product/city-sample-vehicles)

(https://www.unrealengine.com/marketplace/en-US/product/city-sample-buildings)

图片


其他资源

  • “阿尔法点”的制作——UE5技术演示| 游戏开发者大会 2021(https://www.youtube.com/watch?v=X2FBFFBDJf0)

  • UE5 中的 Nanite:Polycounts 的终结?| 虚幻引擎(https://www.youtube.com/watch?v=xUUSsXswyZM)

  • 虚幻内部 | 纳米石(https://dev.epicgames.com/community/learning/livestreams/5LO/nanite-inside-unreal)

  • Nanite基础课程(https://dev.epicgames.com/community/learning/courses/rwK/nanite-essentials/vK2/introduction-to-nanite-essentials)


制作中的早期虚幻引擎 5 游戏:

  • Fortnite (https://www.epicgames.com/fortnite/en-US/home?sessionInvalidated=true)

  • Black Myth: Wukong (https://www.heishenhua.com/)

  • Senua’s Saga: Hellblade II  (https://senuassaga.com/)

  • Redfall (https://bethesda.net/en/game/redfall)

  • Ark 2 (https://www.xbox.com/en-us/games/ark-2)

  • Hell Is Us (https://store.steampowered.com/app/1620730/Hell_is_Us/)

  • Into The Echo (https://intotheecho.online/)

  • Stalker 2: Heart of Chernobyl  (https://www.stalker2.com/)

  • Ashes of Creation  (https://ashesofcreation.com/)

  • Dreamhouse: The Game  (https://store.steampowered.com/app/1468400/Dreamhouse_The_Game/)

  • Quantum Error (https://quantumerror.games/)


结尾语

Nanite 代表了渲染保真度和性能的重大改进。它消除了将交互式游戏和可视化与离线渲染场景分开的一些最严重的限制,允许艺术家和设计师实现他们的愿景,而无需解决复杂的技术限制。

在短期内,学生将需要学习使用传统的低多边形渲染和高三角形网格。开发中的平台和游戏将立即需要这些技能。

然而,从长远来看,如果学生的目标是 AAA 级或故事片,他们应该尽快开始使用 Nanite 和 UE5 的所有其他下一代功能。建筑、汽车、广告和其他专业的学生也可以开始探索 Nanite。从虚幻引擎 5.0 开始,这些工作流程尚未经过全面审查,但仍显示出非常有希望的结果。

最后,这是一项全新的技术。预计未来版本的虚幻引擎 5 将在性能、兼容性和工作流程方面得到显着改进。

有关面向教育者的 Nanite 和虚幻引擎 5 的更多信息,请访问:https://unrealengine.com/educators

图片
图片
图片


UE5 面向教师和学生的 Nanite 基础指南的评论 (共 条)

分享到微博请遵守国家法律