Unity中影响渲染顺序的因素有哪些

这篇文章主要介绍Unity中影响渲染顺序的因素有哪些,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

一、Camera Depth

相机组件上设置的相机深度,深度越大越靠后渲染。

二、透明、不透明物体分隔

RenderQueue 2500是透明与不透明的分水岭。

同一个相机下

Renderqueue小于2500的物体 始终在 Renderqueue大于2500之前绘制。

三、Sorting Layer

在Tags & Layers设置中可见

如果Camera相同,那接下来就看Sorting Layers,越低越早绘制。

Sorting Layers是通过Renderer的sortingLayerName属性设置的。

全局Soring Layers在Edit->ProjectSettings->Tags&Layers中设置

Unity中影响渲染顺序的因素有哪些

可以通过代码设置render.sortingLayerName=”Effect”运行时设置物体的sortinglayer,如果在粒子系统中看,可以看到Render项的Sorting Layers下拉表单中会列出所有的Sorting Layers的名字

四、Order In Layer

相对于Sorting Layer的子排序,用这个值做比较时只有都在同一层时才有效。

soringOrder也是Render的一个属性,这个order是设置一个数字,数字越大,越在上面显示。

Unity中影响渲染顺序的因素有哪些

五、RenderQueue

Shader中对Tags设置的“Queue”。

如果上述几项都相同,那就要看renderQueue了,renderQueure是Material的一个属性,其实就是Shader中的renderQueue,这个也是一个int属性,数值越小,越靠前渲染。

Unity中影响渲染顺序的因素有哪些

Unity5以后,每个材质中都可以设置renderq参数。

Unity中影响渲染顺序的因素有哪些

六、深度排序。按照包围盒的深度进行排序

不透明物体由近到远排序优先

透明物体由远到近排序优先

按照包围盒的中心点的深度进行排序。

Unity中影响渲染顺序的因素有哪些

深度补间

ZBias,当两个包围盒中心点深度值相同或者很近的物体在一起时,排序有可能出错(不一定哪个在前)所以对于这个点的z值可以进行微调。(修改物体的轮廓或移动位置。。。)

一图总结:

Unity中影响渲染顺序的因素有哪些

常规方案

明确分层:

例如UI上的半透明(特效、面片)始终在3D场景之上,则一般分多个相机来绘制。

大多适用于有明确分层的游戏。例如横版游戏,明确近景远景

大片填充率的物件,例如地形,天空等,一般为提高深度命中,都会选择在延后批次绘制。

Draw character before the terrain.

UGUI方案

  • 同一个canvas,使用Hierarchy的顺序

  • 不同的canvas之间使用sort order来排序

NGUI

不同的pannel按照depth数值排序,同一个pannel中的结点按照深度排序。

以上是“Unity中影响渲染顺序的因素有哪些”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注编程之家行业资讯频道!

相关文章

这篇文章主要介绍了Unity游戏开发中外观模式是什么意思,具有...
这篇文章主要介绍Unity中地面检测方案的示例分析,文中介绍的...
这篇文章主要介绍了Unity游戏开发中如何消除不想要的黄色警告...
这篇文章主要介绍了Unity中有多少种渲染队列,具有一定借鉴价...
这篇文章主要介绍Unity中如何实现Texture,文中介绍的非常详...
小编给大家分享一下Unity中DOTS要实现的特点有哪些,相信大部...