unity vr是加一个摄像机就行吗_Unity实时光线追踪功能演示项目创作过程

本文介绍了Unity实时光线追踪技术在宝马汽车广告项目中的应用,展示了如何使用Unity的HDRP结合NVIDIA RTX技术实现逼真的光照和反射效果。通过视觉预览、后期制作和实时光线追踪技术,实现了CG汽车与真实汽车画面的无缝混剪,提高了广告制作效率和质量。
摘要由CSDN通过智能技术生成

今年3月,Unity宣布提供针对NVIDIA RTX实时光线追踪技术的支持,实时光线追踪技术为Unity的高清晰渲染管线HDRP加入了逼真的光照质量,给Unity的视觉功能赋予新的潜力。

Unity中NVIDIA RTX技术的预览版支持计划在Unity 2019.3版本推出。

为了展示这项全新光照技术,我们发起了一项使用Unity渲染的宝马CG汽车和现实车库里拍摄的真实宝马8系列Coupe车型相同效果的挑战。

最终项目结合了实时交互式演示和预渲染的4K视频,把真实汽车和CG汽车的画面混剪在一起。我们在演示时还让观众们尝试分辨了真实汽车和CG汽车,最终视频共包含11个CG宝马汽车的画面。

广告和汽车行业都在快速的转变中发展壮大的,我们制作宝马汽车广告的目的是为了证明:广告创作阶段所做的决策可以从实时引擎的多功能性受益。

我们在GDC 2019和NVIDIA的GPU技术大会GTC上发布了演示视频。本文将介绍Unity实时光线追踪演示项目的创作过程。

预制作过程

视觉预览过程对于准备拍摄以及制作精美的专业广告至关重要。我们和摄影导演Christoph Iwanow进行合作,直接在Unity中制作影片的完整CG版本。

在这个初步阶段中,我们使用了简单的光照和着色器,主要工作是确定影片节奏、摄像机位置、摄影取景、景深和焦点区域。

571773d423830d8763bf2ab20d570a76.gif

通过使用Unity的Physical Cameras功能,我们可以还原出真实的物理外景摄像机,使用逼真的镜头得到精确的细节:传感器尺寸、ISO、快门速度、镜头畸变等。这让我们能够获得真实摄像机的外观和感觉,从而在所有层级上实现1:1的还原效果。

Cinemachine让我们能够轻松创建逼真的摄像机移动效果,同时保持快速的迭代速度。

视觉预览阶段也是我们尝试光照功能的部分,我们计划使用的现实光照设备也在Unity中有各个细节的对应模拟效果:光源的形状及大小、温度和光强。

我们可以立即看到天花板上灯管的效果,调整它们的位置、强度和颜色,我们也可以在汽车上生成完美的反射效果。否则,这个过程会耗费长达数小时的珍贵外景时间。

通过使用数字方法模仿出现实的光照和摄像机设置,Christoph Iwanow可以尝试更多的组合效果,在拍摄前寻找到他想要的外观,因此我们可以更高效的利用拍摄时间。

8e3cd3299a82ebd3a797582aa64b0175.png

后期制作过程

拍摄后的第二天,我们立刻开始加工拍摄画面。由于视觉预览在Unity中完成,我们不需要转移资源。

我们使用了外景的光照参考,也参考了真实汽车,确保我们的资源在外观开发中有逼真的反应。该技术允许我们在区域光使用图像纹理,因此我们可以使用实际光源的照片作为纹理,从而得到更逼真的光照和反射效果。

7cb06912354b6ba8e4b11253a6d9b4d3.png

凭借Unity的强大功能,我们在第一天就渲染出4K的超高分辨率,这是Unity明显优于离线渲染的地方,大多数情况下制作阶段的离线渲染作品会渲染为较低分辨率,以节省成本和时间。

通过在初次迭代提供4K分辨率画面,我们可以调整外观开发和光照效果的小细节,在短时间内进行更多渲染迭代,这样能够获得优质的视觉效果,也意味着我们可以预测最终渲染的结果。

798bee269269490d582dc58eafb7f63a.png

关于使用底片集成的画面,它们的素材在Unity外拍摄,然后摄像机和拍摄的数据会以FBX格式文件的形式导入Unity。

对于在Unity直接创建的其它摄像机, Cinemachine的二个功能非常重要,它们实现了逼真可信的摄像机移动过程:

  • Cinemachine Storyboard扩展:在Cinemachine的许多功能中,Storyboard扩展允许创作者对齐摄像机角度。它是一个必不可少的工具,可以轻松实现特定摄像机移动过程,在CG中完全重现真实镜头画面。

    我们使用外景摄像机素材的画面作为叠加层,用来指导CG摄像机的对齐,该过程用来处理一些画面的第一帧,中间帧和最后一帧。

  • Cinemachine Noise噪声:将程序化噪声应用到摄像机移动中,通过为摄像机的移动加入逼真的微动,让我们轻松摆脱CG摄像机不自然的完美。我们可以确保移动过程的生动效果,同时避免明显的反复性。

在我们的原始概念设计中,CG宝马汽车的车漆颜色和真实宝马汽车的不同。随着项目的开发,我们觉得让二者拥有相同颜色的话会更有说服力,我们可以无缝地把它们的画面混剪到一起。

改变汽车颜色是一个后期阶段的决定,它可以在Unity中灵活地实现,因为光照和外观开发艺术家可以同时处理更新。

离线渲染器的类似项目会有这样的纪录:把轮子向右旋转20度,把主灯光放到停车位置。我们不必为小型技术调整而花一整天的时间处理,我们可以交互式处理这些改动,把精力投入到到创意决策部分。

65f8bd14f2dc18e8a299cf0e69e57ccd.gif

对于使用底片集成的二个画面,我们使用Shader Graph着色器视图来创建屏幕空间投影材质和HD分辨率的原始素材。

我们在汽车周围的地面和墙上使用了着色器,把底片的逼真反射效果实现到汽车上。我们使用额外的光照进行补充,使用Unity渲染画面,然后使用外部的合成软件合并最终地面效果和完整分辨率的底片。

69c6f0cfbded3bc5c311629b19feab34.gif

实时光线追踪技术

游戏制作过程中,模拟反射效果的常见方法是在多个位置设置一组反射探针,并且结合屏幕空间光线追踪,这通常会造成各种漏光现象和表面特性的粗糙效果。

通过使用实时光线追踪技术,我们可以正确地反射屏幕外的光线,不必让艺术家做额外处理。然而,这样的反射效果需要对渲染引擎进行一些设置。

360516d1e7e7272c86b3677b128cfd9d.png

在传统游戏制作过程中,所有不在摄像机视椎体内的内容都会被禁用,但现在我们可以反射出受到屏幕中不可见光源照亮和投影的对象。

为了准确模拟金属物体,有效的光线追踪要求实现光的多重反弹效果,这在我们的性能限制内无法实现。因此我们选择仅处理一次反弹,其它反弹的结果通过近似效果实现,方法是将金属颜色乘以当前的间接漫反射光照。

7459b63202888317b30dd690125c837c.png

传统的离线渲染器擅长管理大型纹理区域光的渲染过程,但使用离线渲染器的成本较大,而且会产生大量噪声。使用的光线越多,噪声越小,但是这会提高每帧画面的渲染成本。

为了取得实时帧率并维持质量,Unity Labs团队的研究人员与Lucasfilm和NVIDIA合作开发了一种算法进行处理。通过使用该方法,区域阴影的可见度可以和直接光照估算分离,同时视觉结果仍保持不变。

通过结合对二个组成部分单独应用的降噪技术,我们可以为大型纹理区域光产生少量光线,并且实现30 fps目标,我们的实时演示项目中只有4个光线。

7c0baa9800461bcb65c4d7299f7c126d.png

间接漫反射或漫反射光线通过使对象接触地面,并对改变光照条件做出反应来增强场景的光照效果。游戏制作的相关工作流程非常费力,依赖于在场景设置光照探针或使用光照贴图来实现。

对于电影,我们使用了简单的单次反弹间接漫反射的方法,该方法生成了多个光线,让我们取得理想的光线混合效果。这种方法会给艺术家巨大的自由度,使他们不必设置任何内容,但它的成本较大。

ec7137a1d6e225a831d79acdad62a2ae.png

对于实时版本,我们选择了一种成本较低的方法:通过光线追踪,我们可以在每一帧动态地重新烘焙一组光照探针。而在过去,我们会使用一组预烘焙的光照探针来烘焙光照贴图。

72086925eff30fac71ba56e35fe4d271.png

正如光线追踪的反射效果可以替代屏幕空间的方法一样,实时光线追踪可以生成环境遮蔽效果,该效果和常用的屏幕空间方法得到的结果差不多。

前面提到的间接漫反射方法使用的性能资源不多,它可以通过光线追踪环境遮蔽得到加强,从而更好地处理该方法产生的漏光情况。由于考虑到性能因素,我们没有让该方法支持透明对象,因为这需要处理穿过透明对象的透光性。

实时光线追踪是能够在实时环境渲染逼真车头灯的唯一工具,车头灯形状,多重透镜和反射光会产生复杂的光线交互效果,这让模拟具有挑战性。

ce7edb854c7ad50c5b6b0a7109ea2a86.png

我们添加了多个连续且平滑的反射光和透射光线,这让光束产生现实中的偏移效果,可以使用将影响光线方向的纹理细节来控制精细细节。

3fdbc3b29aac75ed430d618afeb5bed4.png

未来展望

Unity实时光线追踪功能实现了全新的仿真效果,我们不是试图从头开始重构传统的制作管线,而是要去除这类项目常见的一些痛点。通过该功能,我们可以交互地改变画面并得到即时反馈,这种功能对于创意总监和摄影导演来说非常重要。

由于在Unity中创作这部影片,我们可以轻松地把这项工作迁移到其它项目,在多种媒体上实现多样而一致的广告活动。实时光线追踪功能使我们能够以更具创意,方便协作和成本适中的方法,改善传统的汽车广告制作流程。

你可以获下载nity实时光线追踪功能实验性版本,尝试使用支持NVIDIA RTX技术的Unity:

https://github.com/Unity-Technologies/Unity-Experimental-DXR

请注意:该版本处于原型制作阶段,DXR技术的最终实现效果会和该版本有所不同。

更多Unity实时光线追踪功能信息,请访问:

https://unity.com/ray-tracing

更多Unity精彩技术经验分享和谈论,尽在Unity Connect平台(Connect.unity.com)。

推荐阅读

  • Unity GDC 2019 Keynote精彩回顾

  • 实时3D技术在AEC行业的运用

  • 使用Unity创作逼真的VR视觉体验

  • Adaptive Performance:高品质画面呈现与流畅稳定帧率的二者兼得

  • 使用Sinespace创作和发布多人游戏

  • 面向数据技术栈DOTS之ECS实体组件系统

  • 使用Tilemap创作等距2D环境

  • Unite 2019 | H5游戏开发圆桌会议报名开启

Unite Shanghai 2019

5月10日-12日上海,Unite大会强势回归。技术门票正在热销中,购票即获指定Asset Store资源商店精品21款资源的5折优惠券。

  • 了解Training Day开发者训练营课程内容,请点击此处。

  • 了解部分技术演讲内容,请点击此处。

  • H5游戏开发圆桌会议正在报名,请点击此处。

购票请访问:Unite2019.csdn.net

7081897cc17e0ee2a925f79113cd8a70.png

点击“阅读原文”访问Unity Connect

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值