0
大家好!
使用three.j運行動畫時出現問題。請參閱示例:http://jsfiddle.net/5ywdE/13/
當綠色立方體旋轉到藍色立方體的位置時,紅色立方體將旋轉。
問題:爲什麼藍綠色立方體在它前面時顯示。我希望綠色立方體顯示在藍色立方體的前面(例如紅色立方體顯示在所有的前面)。如果重疊,我可以設置在其他立方體前面顯示的立方體嗎?
我在做什麼錯?
在此先感謝重疊顯示立方體?
大家好!
使用three.j運行動畫時出現問題。請參閱示例:http://jsfiddle.net/5ywdE/13/
當綠色立方體旋轉到藍色立方體的位置時,紅色立方體將旋轉。
問題:爲什麼藍綠色立方體在它前面時顯示。我希望綠色立方體顯示在藍色立方體的前面(例如紅色立方體顯示在所有的前面)。如果重疊,我可以設置在其他立方體前面顯示的立方體嗎?
我在做什麼錯?
在此先感謝重疊顯示立方體?
所有的立方體的position.z
等於零。那麼......哪個立方體必須首先繪製/最後繪製? Three.js不知道,只是將它們全部抽出,可能與它們被添加到場景中的順序相同。
你可以嘗試改變在立方體添加到場景的順序:
scene.add(obj1);
scene.add(obj);
scene.add(rot);
或者,如果你不打算移動攝像機,使用不同的z值的藍色立方體:
...
cube1.position.z = -0.1;
...
或者你也可以設置爲false藍色立方體的visible
屬性時綠色立方體完成他的動畫:
...
run1= false;
three.cube1.visible = false;
...
如果您現在可以使用WebGLRenderer
而不是CanvasRenderer
,則可以使用renderDepth
屬性爲每個立方體指定「深度偏差」。
感謝您的回覆。我想顯示所有的立方體。所以,解決方案3是不可行的。解決方案1也許可以,但是如果有多個立方體,我們不知道運行動畫的立方體的順序,而且當兩個立方體重疊時,三個立方體似乎顯示一個立方體。我會嘗試解決方案2.謝謝! – lptrung
@Iptrung:我不確定你的意思。 Three.JS如果可以同時顯示兩個立方體,並且它們的大小相同並且重疊在相同的位置,又怎麼能夠顯示? –
@Cory Gross:對不起,遲到回覆。我猜可能是。我看到three.js只顯示首先添加的立方體。在這種情況下使用z值是個好主意。 – lptrung