重叠时显示立方体?

时间:2012-06-26 07:29:46

标签: three.js


大家好!
使用three.j运行动画时遇到问题。参见示例:http://jsfiddle.net/5ywdE/13/
当绿色立方体旋转到蓝色立方体的位置时,红色立方体将旋转 问题:为什么蓝色立方体显示在蓝色的前面。我希望绿色立方体显示在蓝色立方体的前面(就像所以红色立方体显示在所有前面)。如果重叠,我可以设置将显示在其他立方体前面的立方体吗? 我做错了什么?

提前致谢

1 个答案:

答案 0 :(得分:1)

所有立方体的position.z等于零。那么......哪个立方体必须先画/后画? Three.js不知道,只是绘制所有这些,可能与它们被添加到场景的顺序相同。

您可以尝试更改将多维数据集添加到场景中的顺序:

scene.add(obj1);
scene.add(obj);
scene.add(rot);

或者,如果您不打算移动相机,请为蓝色立方体使用不同的z值:

...
cube1.position.z = -0.1;
...

或者,当绿色立方体完成动画时,您可以将蓝色立方体的visible属性设置为false:

...
run1= false;
three.cube1.visible = false;
...

如果您现在可以使用WebGLRenderer而不是CanvasRenderer,则可以使用renderDepth属性为每个多维数据集指定“深度偏差”。