Unity 中的摄影测量将现实世界的物品转化为数字资产

摄影测量是使用现实世界中物体的多张照片来制作可用于游戏的资产的过程。它最适合用三维雕刻软件制作耗时的物体。本文章将介绍 Unity 的新功能如何帮助您进行摄影测量。我们还将分享我们的枫丹白露摄影测量演示项目,包括所有网格、纹理和材质。
去年在 Siggraph 2017 上,我们为专业艺术家们展示了一份非常详细的现场指南。它将一步步引导你完成整个流程,利用照片和视频制作出高质量、可重复使用、可用于游戏的数字资产。
作为工作流程的一部分,团队在资产商店发布了去光工具。它使艺术家和开发人员能够从摄影测量纹理中移除照明信息,从而使最终资产可在任何照明条件下使用。我们还在 Siggraph 上发表了关于摄影测量工作流程概述的演讲,并分享了去光工具的技术细节。
今年,我们制作了一份分步指南,展示如何使用分层着色器来达到与摄影测量工作流程指南中所示相同的质量水平,同时优化纹理内存预算,以满足您的游戏需求。
下面概述了在 Unity 中使用摄影测量资产制作素材的步骤:
查看完整指南:
使用高清(HD)渲染管道在 Unity 中分层制作材质
摄影测量可以获得定性结果,但需要非常高的纹理分辨率来保存细节,如图所示:

由于内存预算的原因,这种方法在游戏制作中并不实用,而且无法为对象添加任何变化。
Unity 2018.1 测试版引入了 "可脚本渲染管道"预览版。我们将在 Unity 2018.1 中发布两个内置渲染管道:轻量级(LW)渲染管道和高清(HD)渲染 管道。HD Pipeline 提供了一个专用于摄影测量材料创作的着色器:LayeredLit.
上图中的主材质与石头、地面元素和苔藓等其他材质混合在一起。这些其他材料可以铺贴瓷砖。这意味着它们可以缠绕在对象上,并可以在不同的对象上重复使用。结合使用多种材质,可以获得与高分辨率纹理相似的视觉质量(如屏幕上相似的像素密度),但纹理分辨率较低,从而节省内存:

通过分层着色器,您可以在不同资产之间共享纹理,并将可铺贴的材质组合在一起以增加变化。这样,您就能以低成本轻松填充一个庞大的世界:

我们制作了枫丹白露演示,以说明摄影测量工作流程和 LayeredLit 着色器的使用。该技术演示的编写考虑到了游戏开发条件:它是一个具有代表性的游戏关卡,以 1080p @ 30fps 的标准 PlayStation 4 平台为目标。该关卡展示了枫丹白露森林的一部分,使用了一组有限的网格和纹理,在 LayeredLit 着色器的帮助下,这些网格和纹理以不同的变化形式重复使用。在森林中行走有第一人称和第三人称两种模式。针对 XboxOne 或 PlayStation 4 等游戏机,需要考虑如何最大限度地利用这些平台。

该演示还支持三种不同的照明条件,以说明正确编写和去光的资产在任何照明条件下都能正常工作:
日间照明:

日落照明:

关灯后的夜间照明:

开灯后的夜间照明:

最后,我们在演示中加入了三种探索模式:
- 电影模式:选择灯光程序,然后坐下来,放松并欣赏表演、
- 第一人称模式和三人模式:这些都是非常初级的探索模式,让你自己去发现环境,第一人称模式会有奖励。
枫丹白露 是 "团结 "组织巴黎办事处附近一片森林的名字。说到摄影测量,森林是一个很好的主题。自然资产往往十分复杂,难以真实再现。对于我们的艺术家来说,最重要的是能在他们身边进行所有必要的测试,以分析游戏的最佳工作流程。


开始时,摄影测量过程似乎很难管理,但结果是值得的。
希望这个演示能说服你们中的一些人使用摄影测量来提高资产质量,并帮助你们加快项目进度。
我们期待着看到你的作品,并在这个论坛主题中与你讨论这个演示以及 Unity 中的摄影测量工作流程。
