请问使用babylonjs进行3d项目开发时添加旋转动画是如何沿着局部坐标轴或是自定义坐标轴进行旋转?

在最近的项目中用到了babylonjs,引入了一个obj,需要对obj中的一个门也就是一个mesh进行旋转,但是用rotation.add的方法进行旋转每次都是围绕着世界坐标轴转动的,如何自定义局部坐标轴并围绕着这个坐标轴定义旋转动画?求各路大神指点迷津!!!

阅读 3.5k
1 个回答
    //围绕局部坐标旋转
    box.rotate(BABYLON.Axis.Y,-Math.PI/4,BABYLON.Space.LOCAL)
    //围绕世界坐标旋转
    box.rotate(BABYLON.Axis.Z,Math.PI/2,BABYLON.Space.WORLD)
//先围绕局部坐标Y旋转-45°,再围绕局部坐标Z旋转90°
 box.addRotation(0, -Math.PI/4, 0).addRotation(0,0,Math.PI/2)
//先围绕局部坐标Y旋转-45°,再围绕局部坐标Z旋转90°
    box.rotation.y = -Math.PI/4
    box.rotation.z = Math.PI/2

//效果一样
box.rotation = new BABYLON.Vector3(0,-Math.PI/4,Math.PI/2)
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进