我有一组用THREE.Points制作的粒子,我正在使用THREE.PointMaterial和纹理。纹理是用画布制作的笔划矩形,它可以工作,但只是部分,这就是问题。
在这里你可以看到我的粒子发生了什么:
正如您所看到的,粒子的透明度仅适用于某些粒子,而其他粒子则不然。
这里可能会发生什么?
这是我用来创建材料的代码:
var material = new THREE.PointsMaterial( {
size: this.particleSize,
vertexColors: THREE.VertexColors,
map: ct.getTexture(),
transparent: true,
fog: false } );
答案 0 :(得分:2)
问题的原因是粒子没有按深度排序并按照从前到后的顺序呈现。
解决方案是添加
material.alphaTest = 0.5;
然后,透明片段将被丢弃。
three.js r.73