在threejs上进行z-index,renderDepth或深度排序

时间:2013-12-22 11:50:58

标签: html5 three.js

我正在尝试使用纹理和精灵渲染一些平面。一切都有透明的PNG纹理。

当对象重叠时,透明度有效。 我试图截取我的问题。

还尝试用谷歌搜索,玩renderDepth和其他奇怪的东西,但没有任何帮助...!

http://postimg.org/image/om69rdbxb/

2 个答案:

答案 0 :(得分:1)

  

当对象重叠时,透明度有效。我试图截取我的问题。

是。这就是来龙去脉。当涉及半/透明几何体时,深度测试失败(悲惨地)。您必须将对象分类到远处并按顺序绘制。否则你需要一种称为“与订单无关的透明度”的东西,这对于光栅化器来说仍然是一个未解决的问题;虽然取得了一些进展。

答案 1 :(得分:0)

我的问题解决了)

虽然有点奇怪...... 首先,我尝试使用精灵。我遇到了第一张照片上的问题。然后我将所有精灵转换为每次相机旋转时旋转到玩家角度的平面(我只有4个摄像头位置,所以这没什么大不了的。)

一切都很好,但....有时,当很多物品在一个地方时,它们相互重叠......我又开始谷歌了。找到“alphaTest:0.5”的解决方案。有效! 剩下的唯一“东西”......这不是精灵,所以图标变形了。

15分钟前,我试图用精灵替换飞机,看看它是否会起作用。而且......它在工作! )

我唯一要做的就是“alphaTest:0.5”。 我仍然不知道alphaTest是如何工作的以及为什么它有所帮助,但它确实有效)

http://postimg.org/image/o0h9plz9b/