Mai*_*tor 20 javascript zbuffer depth webgl three.js
如果在Three.js/WebGL中有两个平面,并且其中一个或两个都是透明的,有时后面的平面将被上面的透明平面隐藏.为什么是这样?
Ale*_*der 24
假设你正在使用一些透明的*.png图像.那么这会有所帮助:
new THREE.MeshBasicMaterial( { side:THREE.BackSide,map:texture, depthWrite: false, depthTest: false });
Run Code Online (Sandbox Code Playgroud)
mrd*_*oob 20
尝试添加alphaTest: 0.5材料.
Wil*_*ilt 20
设置depthWrite属性以false解决我的问题.
new THREE.MeshBasicMaterial({
opacity: 0.25,
transparent: true,
side: THREE.DoubleSide,
depthWrite: false
});
Run Code Online (Sandbox Code Playgroud)
fwiw,如果你有很多平行的平面(无法看到你的样本,谷歌无法解析你的域),很容易保持它们沿垂直轴排序.对于平面列表[ABCD],绘制顺序将是[ABCD]或[DCBA]而不是其他任何东西!因此,排序不会对性能造成影响.当你走的时候,请保持秩序.
| 归档时间: |
|
| 查看次数: |
19064 次 |
| 最近记录: |