2016-04-06 14 views
0

時間遅延でシーンにメッシュを追加する必要があります。ここで私three.jsでシーンにメッシュを追加する際の時間遅延を設定する方法

var geometry = new THREE.BoxGeometry(1, 1, 1); 
var material = new THREE.MeshLambertMaterial({color: 0xFF0000, side: THREE.DoubleSide}); 
function addMesh(mesh) 
{ 
    setTimeout(function() 
    { 
     Scene.add(mesh); 
    },3000); 
} 

for (var i = 0; i < pointzz.length; i += 2) { 
    var mesh = new THREE.Mesh(geometry, material); 
    mesh.rotation.x = -Math.PI/2; 
    mesh.rotation.y = Math.PI; 
    mesh.rotation.z = Math.PI; 
    mesh.name = "mesh"; 
    mesh.position.set(pointzz[i], 0, pointzz[i + 1]); 
    mesh.scale.set(15, 15, 15); 
    addMesh(mesh); 
} 

pointzzmeshxz座標を含むため、残念ながらsetTimeout機能が動作しません。コードは正常に動作します。すべてのメッシュはsceneに追加されていますが、各メッシュを短時間で追加する必要があります

答えて

0

setTimeoutthree.jsで問題なく動作します。

this fiddle here(2秒後にメッシュとワイヤフレームを追加)を参照してください。

なぜsetTimoutはあなたが望んでいないのですか?あなたは何を達成したいですか?

+0

メッシュが遅延なしでシーンに追加されます。遅延後にメッシュを追加したい場合は、他のメッシュを追加します。 – ArUn

+0

私はフィドルを更新しました。以前は**ワイヤフレーム**だけが遅れて追加されていました。 **メッシュ**と**ワイヤフレーム**の両方に遅延が加えられました。 – Wilt

+0

私のコードを更新しました@Wiltを見てください。 – ArUn

関連する問題