我有一个关于away3D的小问题。我有一些立方体具有完全相同的尺寸,位于同一个地方。当我点击立方体堆栈时,我想在最后添加的立方体上注册一次点击。而不是这样做,点击是在我首先添加的立方体上注册的。
我找到了一种方法来改变容器中的立方体位置,并尝试将元素放在末尾(下面的代码)并开始使用childrenArray,但似乎没有任何效果。我有点卡在这里,所以如果有人知道如何在点击堆栈时获得顶级元素,我会很高兴听到。
//We get the targetCube's childIndex.
for(var i:uint = 0; i < _3DContent.children.length; i++)
{
if(_targetCube == _3DContent.children[i])
break;
}
//Now we rearrange the array if the targetCube is different from
//the last cube in our list of children.
if(i != _3DContent.children.length-1)
{
//We reposition the children.
for(var j:uint = i; j < _3DContent.children.length-1; j++)
_3DContent.children[j] = _3DContent.children[j+1];
//Lastly, we push the child.
_3DContent.children[_3DContent.children.length-1] = _targetCube;
}
答案 0 :(得分:0)
我通过使用不同的渲染器解决了这个问题。创建视图时,应将其作为参数传递,如下所示。
_view = new View3D({renderer: Renderer.CORRECT_Z_ORDER});