ThreeJS场景图问题

时间:2013-12-07 21:00:17

标签: three.js scene rubiks-cube

我花了最近几天在Three JS中使用rubik的立方体。我差不多完成了它,但是在组的正确嵌套方面存在问题。基本上我已经制作了所有的立方体,当点击一个面上的一个中心立方体时,该面上的所有立方体都被添加到一个组中并且该组被旋转。问题是,当我尝试将立方体读回场景时,它们会回到原来的位置,而不是新的旋转位置。以下是单击顶面的示例

else if(cubie.position.x == 0 && cubie.position.y == 12.5 && cubie.position.z == 0){
    for(var i = scene.children.length - 1; i >=0; i--){
        var cubie = scene.children[i];
        if(cubie.position.y == 12.5){
            group.add(cubie);
        }
    }
    group.rotateOnAxis(new THREE.Vector3(0,-1,0), Math.PI/2);
}

这里是我尝试将立方体读回场景的地方

for(var i = group.children.length - 1; i >= 0; i--){
    scene.add(group.children[i]);
}
scene.remove(group);

如果我注释掉两条线,则会出现一个完整的旋转,但由于立方体现在是组的一部分,我不能再旋转它们。如果我删除第一行,然后离开删除(组),那么显然该行会消失,但是如果我将两行都放入,那么立方体根本不会改变,就好像当我将立方体读到场景时它需要原来的那样回来......我已经尝试了我能想到的一切。任何帮助将不胜感激

如果有人需要,我会将整个代码发布到pastebin。 http://pastebin.com/vj6LgR0r

0 个答案:

没有答案