3d 如何保存对象';s";感知的;3.js中的旋转一致吗?

3d 如何保存对象';s";感知的;3.js中的旋转一致吗?,3d,three.js,rotation,image-rotation,aframe,3d,Three.js,Rotation,Image Rotation,Aframe,我有一个部分编程/部分数学问题:我在three.js环境中有一堆可拖动的平面。相机位于球体的中部,可以旋转,但不能改变位置。平面沿球体拖动并保持其全局旋转(如果您使用console.log(plane.rotation),则与沿球体拖动相同)。然而,在某一点上,它“消失了”。我想象它有点像一张纸——如果你绕着这张纸旋转,在你绕着它旋转的某一点上,它会希望它“消失”,当你只看到纸的边缘时。基本上,我想手动设置对象的旋转,使其保持视觉旋转,这必须考虑球体上的位置和相机的旋转,我想?我尝试过使用“注视

我有一个部分编程/部分数学问题:我在three.js环境中有一堆可拖动的平面。相机位于球体的中部,可以旋转,但不能改变位置。平面沿球体拖动并保持其全局旋转(如果您使用console.log(plane.rotation),则与沿球体拖动相同)。然而,在某一点上,它“消失了”。我想象它有点像一张纸——如果你绕着这张纸旋转,在你绕着它旋转的某一点上,它会希望它“消失”,当你只看到纸的边缘时。基本上,我想手动设置对象的旋转,使其保持视觉旋转,这必须考虑球体上的位置和相机的旋转,我想?我尝试过使用“注视”,但这只是让对象直接注视摄影机,有时,飞机会有轻微的旋转(飞机不会一直注视摄影机)。我附上了一些照片来解释我所说的:


任何帮助都将不胜感激!我相信我必须对四元数和法线做些什么,但我甚至不知道如何解决这个问题,我已经研究了很长一段时间了

这是否需要
aframe
标签?否。。。但是我在使用A-frame时遇到了同样的问题,所以我认为使用A-frame的人会从答案中受益……使用A
THREE.Group
包裹所有平面和球体?你确定要平面保持其相对方向,而不是面向摄影机吗?例如,对于第一张图片左右两侧的两架飞机来说,这看起来不是很陌生和不切实际吗?@Paul Jan是的,我是肯定的。我正在制作一个软件,因此我希望确保用户能够更改对象的旋转,但仍然能够拖动对象,而无需重新更改对象的旋转。