0
artifactsはスプライトの一部のtop and bottom側にあります。 These are the shaders私はそれが重要であれば使用しています。私はv76を使用しています。THREE.jsのpngテクスチャの上下のアーティファクトv76
そして、私はこのようなこれらのスプライトを構築しています:
var object = new THREE.Object3D();
var textureLoader = new THREE.TextureLoader();
textureLoader.load('path/to/image.png', function(texture) {
texture.wrapS = THREE.RepeatWrapping;
texture.wrapT = THREE.RepeatWrapping;
texture.anisotropy = 16;
var geometry = new THREE.PlaneBufferGeometry(15, 15);
var material = new THREE.MeshPhongMaterial({
map: texture,
color: 0xffffff,
transparent: true,
alphaTest: 0.2,
side: DoubleSide,
});
var mesh = new THREE.Mesh(geometry, material);
mesh.castShadow = true;
mesh.receiveShadow = true;
mesh.customDepthMaterial = new ShaderMaterial({
uniforms: { texture: { type: 't', value: this.material.map } },
vertexShader: vertexShader,
fragmentShader: fragmentShader,
});
object.add(mesh);
})
答えが混ざってしまい、alphaTestと値を使って遊んでしまったのですが、あなたのアドバイスでも解決できませんでした – bitten