0

因此,相机使用俯仰、偏航、滚动和在各个轴上的一些 90 度旋转来旋转。我要找的是整个变换后相机的滚动值。rotationZ 属性返回的不是我要找的东西,因为它看起来像相机首先倾斜,所以有时尽管相机向下矢量指向下方,但值是 180 度。

我很乐意提供更多信息,因为我被困住了:/

4

1 回答 1

0

这就是我想出的。它甚至离完美还差得很远,因为它只提供平均滚动,但对于我的项目而言,这已经足够了。

var rotation:Number = 0;
var mtx:Matrix3D = _targetCamera.transform.clone();
_cameraRotationObject.transform = mtx;

while (1 == 1)
{
    var lastY:Number = _cameraRotationObject.rightVector.y;
    rotation += 10;
    mtx.appendRotation(-10, _cameraRotationObject.forwardVector, _cameraRotationObject.position);
    _cameraRotationObject.transform = mtx;
    if (lastY > 0 && _cameraRotationObject.rightVector.y <= 0) break;
    lastY = _cameraRotationObject.rightVector.y;
}
于 2013-06-10T13:07:12.860 回答