【发布时间】:2013-01-24 12:09:22
【问题描述】:
我在屏幕上显示始终面向用户的文本,并使用以下代码保持直立(这是有效的):
object.lookAt(camera.position);
object.rotation.x = 相机.rotation.x;
object.rotation.y = camera.rotation.y;
object.rotation.z = camera.rotation.z;
现在,在按钮将场景绕 y 轴旋转 90 度后,
target = new THREE.Vector3(camera.position.z, camera.position.y, -camera.position.x);
object.lookAt(目标);
所以文本根据需要面向用户,但我不知道如何计算对象旋转以在使用轨迹球控件旋转场景时保持文本垂直:
object.rotation.x = ??
object.rotation.y = ??
object.rotation.z = ??
建议?谢谢!
【问题讨论】:
-
不知道你用的是哪个库。通常 LookAt 有一个可选参数来指定 up 向量。
-
r52,我如何正确“起床”?
-
你应该取相机的向上向量
-
我试过lookAt(target, [], camera.up),当我使用轨迹球控件移动时,它没有保持直立