引擎渲染层级已经变成了我无法理解的维度

预定角度看起来正常


换个角度看看, 救命 :rofl: 这是几维空间?跑道顶到最上层,图形渲染…

把上边的问题简化一下,随便用个单面的纹理
侧面看跑道和障碍物


正面 ????后者可以覆盖前者
image

怎么重现?
随便拿个纹理,
1.使用builtin-unlit – transparent
2.开启合批 USE INSTANCEING
3.复制几个物体面摆放距离互相遮住,
4.距离镜头近到远顺序摆放 物体01 -> 物体02 ->物体03, 物体03 在最上层,其次物体02

开启合批下,材质的Priority 也是失效的… 论坛还没找到一个能掌握在自己手里控制渲染层级问题的方案。物体和镜头的距离也影响渲染,越远越后渲染(也不完全,情况就是上图所述),跑道加个粒子,粒子特效最后渲染,跑到所有合批物体上层来了…有毒 :nauseated_face:

为啥要透明?因为要发光。
为啥要合批?为了帧数。

来个大哥救救孩子吧,实在不知道怎么搞了 :sob: :sob:

补充一下:合批,似乎是把几个mesh的顶点合起来了,所以越后生成的物体,顶点index越大,GPU必定越后渲染,所以不管它在什么位置都会覆盖其他前面index比较小的同批次渲染.

大佬可以上传一个简单的 demo.zip 包吗?

越远越后渲染

深度缓冲没处理好

这么拉风的效果,你是怎么搞出来。说出秘笈 :upside_down_face: :upside_down_face:

和不透明对象不同,透明对象的渲染是需要远近排序的,CPU 端根据远近排序后的话 GPU 按模型依次渲染。如果模型之间有穿插,往往怎么排序效果都是有问题的,换什么引擎都一样
建议物体不透明的部分别用透明材质,确保会写入深度。实在不行把模型拆成多份。
如果开启 instancing,这个问题就会更严重,因为穿插的地方更多了,推荐 instancing 只用在不透明物体上。

是的,我写错了

demo.zip (36.1 KB)
附上demo

1赞

现在项目的透明部分实例很多,美术要发光,不透明不好处理,不开 instancing 低端机渲染帧数下去了.层级问题我想手动控制也控制不了 :see_no_evil:

老哥有没有建议的处理方案 :kissing_closed_eyes:

我也遇到了这个问题,透明的物体开启动态合批就会失效,请问怎样解决?

渲染层级吗?解决不了