基本上,
这有效:
var expl1 = new THREE.ImageUtils.loadTexture( 'images/explodes/expl1.png' );
this.material = new THREE.MeshBasicMaterial({ map: expl1, transparent:true, blending:THREE.AdditiveBlending });
而这并不...
var expl1 = new THREE.ImageUtils.loadTexture( 'images/explodes/expl1.png' );
this.material = new THREE.MeshBasicMaterial({ map: expl1.clone(), transparent:true, blending:THREE.AdditiveBlending });
问题是,我有多个具有这种纹理的对象。我希望能够更改其中 1 个对象的纹理偏移,而其他对象也不会更改。这就是我需要克隆的原因,但克隆的纹理似乎是空的。
var expl1 = new THREE.ImageUtils.loadTexture( 'images/explodes/expl1.png' );
这仅在全局变量中加载一次。每次创建新对象时,我都可以加载新纹理,但因为它是 700KB,所以在加载图像时会产生延迟。