Преобразование матрицы проекции в матрицу реального мира

Я использую следующий код, чтобы получить матрицу проекции из ARCore.

Frame.CameraImage.GetCameraProjectionMatrix(m_Camera.nearClipPlane, m_Camera.farClipPlane);

Я хотел бы преобразовать матрицу проекции в матрицу мира с точки зрения нашего глаза. Другими словами, я пытаюсь преобразовать ProjectionMatrix в матрицу реального мира. Есть ли возможное решение для того же?


person Community    schedule 07.08.2019    source источник


Ответы (1)


var camera = GetComponent<Camera>();
camera.projectionMatrix = Frame.CameraImage.GetCameraProjectionMatrix(camera.nearClipPlane, camera.farClipPlane);
var worldMatrix = camera.cameraToWorldMatrix;

worldMatrix это то, что вы хотите, я думаю.

person Beautyfull Castle    schedule 07.08.2019
comment
Я хочу использовать матрицу мира в качестве матрицы проекции, поскольку я пытаюсь разместить объект, выровненный с измерением реального мира. Позвольте мне попробовать это. - person ; 07.08.2019
comment
@user1241241 user1241241 Как установить worldMatrix на другой объект? - person Beautyfull Castle; 07.08.2019
comment
Я использовал приведенную выше строку кода, чтобы назначить ее обратно матрице проекции. - person ; 07.08.2019