我正在为场景使用WebGLDeferredRenderer,并且我已经意识到材质属性透明度根本不起作用。
如果我设置为透明:true-材质根本不显示如果我设置透明:false-使用透明度的材质:1.0如果我更改透明度属性-没有区别
案例1:透明:真,透明度:0.5没有材料
案例2:透明:假,透明度:0.5有透明度为1.0的材料
您知道延迟渲染在透明材质和混合方面存在某些问题吗?
我不知道目前是否有任何对透明材料的支持,我会等到有更新的Three.js版本和至少一个演示。
你有两个选择:
- 更改为WebGLRenderer,因此根本没有延迟的管道
- 有延迟的管道,但也有额外的WebGLRenderer,它将转发渲染透明材质,然后使用深度缓冲区或任何其他已知技术混合场景
如果你没有真正的理由使用延迟渲染,那么切换到具有前向管道的"基本"WebGLRendering,你就不会有问题。