http://babylonjs-playground.com/#A83GX#0
大家好,
我已经和babylonjs一起玩了几天而且很兴奋。但如果我没有问题,为什么我会在这里呢。
附上游乐场链接,现在弧形旋转相机围绕网格旋转。它给人一种幻觉,即网格本身正在旋转,但是当我将对象从(0,0,0)移开时,它开始显示相机正在旋转而不是对象。而不是这样的相机黑客,我想从任何地方旋转网格本身,我用Google搜索并在babylonjs论坛中找到了几个主题,但解决方案并不像相机解决方案那样平滑或轻松。如果有人可以帮助我,那就太好了。欢呼并提前感谢您的帮助。
答案 0 :(得分:1)
我认为你要找的是旋转功能?
尝试cylinder.rotate(new BABYLON.Vector3(1, 1, 1), 30);
...它将旋转圆柱网格,在所有轴上旋转30度。这是一个updated playground.
如果您想使用鼠标输入旋转网格,下面是如何使用一些指针事件围绕X和Y轴旋转网格:
var onPointerDown = function (e) {
// check if we clicked on a mesh
var pickInfo = scene.pick(scene.pointerX, scene.pointerY);
if (pickInfo.hit) {
currentMesh = pickInfo.pickedMesh;
rotationInit = currentMesh.rotation.y;
}
};
var onPointerMove = function (e) {
dragDiff = {
x: e.x - dragInit.x,
y: e.y - dragInit.y
}
var newRotation = rotationInit;
newRotation.x = rotationInit.x - dragDiff.x /70
newRotation.y = rotationInit.y - dragDiff.y /70
currentMesh.rotation = newRotation;
return true;
};
您还可以通过添加一些代码(例如收听键,如Shift)围绕Z轴旋转。