首页 理论教育 Unity3D渲染管线:轻量级渲染管线的灵活控制与定制

Unity3D渲染管线:轻量级渲染管线的灵活控制与定制

时间:2023-11-21 理论教育 版权反馈
【摘要】:目前,Unity 3D提供了大量的渲染配置,如正向渲染和延迟渲染。SRP API开放了Unity 3D的渲染接口,允许使用C#脚本进行灵活控制,开发者可以根据项目的具体情况编写自定义渲染器。这不仅使开发者更易使用Unity 3D,也可以向引擎的工具盒中添加新模块,从而使开发者能够快速获得对最新渲染功能的访问。轻量级渲染管线是一种在Unity 3D 2018.1中可用的可编辑脚本渲染管线。轻量级渲染管线最多支持每对象8个光源,并仅支持Unity 3D内置渲染特性的一个子集。

Unity3D渲染管线:轻量级渲染管线的灵活控制与定制

1.可编脚本渲染管线

可编脚本渲染管线(scriptable render pipeline)是一种由C#脚本控制的、在Unity 3D中配置和实行渲染的方式。与Unity 3D传统的渲染方式相比,这是一个巨大的进步,完成了渲染控制从硬编码到完全项目驱动式的转变。

目前,Unity 3D提供了大量的渲染配置,如正向渲染和延迟渲染。这些管线是固定无法更改的,存在许多的缺点。

(1)无法修复或绕过渲染问题。

(2)因为可能需要应对所有用例,管线太过庞大复杂。

(3)由于过时性与复杂性,很难添加最先进的效果。

为了解决这些问题,在Unity 3D 2017的版本中试验性地开发了SRP API。现在该功能已经进入Unity 3D 2018.1 beta版本中。SRP API开放了Unity 3D的渲染接口,允许使用C#脚本进行灵活控制,开发者可以根据项目的具体情况编写自定义渲染器

通过组合模块的方式设计一个自定义渲染管线,每个模块都是一个定义良好、易于测试、改进和维护的函数。这就是Scriptable Render Pipeline的工作原理。这不仅使开发者更易使用Unity 3D,也可以向引擎的工具盒中添加新模块,从而使开发者能够快速获得对最新渲染功能的访问。(www.xing528.com)

2.轻量级渲染管线

设计轻量级渲染管线(lightweight rendering pipeline)是为了加快速度和更好地扩展到低端硬件。它是一个基于正向的渲染器,能很好地从移动设备扩展到VR和PC。

轻量级渲染管线是一种在Unity 3D 2018.1中可用的可编辑脚本渲染管线。它采取的是一种按每个对象进行光照剔除的单通道正向渲染,其优势是会在单次通道中完成所有光照的着色。与之相比,Unity 3D的vanilla正向渲染会为每个像素光照进行一次额外的通道,使用LTRP管线会产生更少的绘制调用,而代价是轻微的着色器复杂度增加。轻量级渲染管线最多支持每对象8个光源,并仅支持Unity 3D内置渲染特性的一个子集。

3.高清晰渲染管线

高清晰渲染管线(HD rendering pipeline)是一种在Unity 3D 2018.1中可用的可编辑脚本渲染管线。高清晰渲染管线是一种现代渲染管线,设计时同时考虑了PBR、线性光照、HDR光照。它使用一种可配置混合平铺(tile)/集群延迟(cluster deferred)/正向光照(forward lighting)架构构建。

HDRP在Unity 3D内置功能上增加了一些特性,改进了光照、反射探头和标准材质的选项。它提供了诸如Anisotropy、Subsurface scattering、Clear Coating这样的高级材质,以及对高级光照的支持,如area lights(区域光)。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈