Как преобразовать матрицу MVP NDC размером 2x2x2 в матрицу MVP куба размером 2x2x1 (металл)? - PullRequest
1 голос
/ 02 ноября 2019

Как преобразовать матрицу MVP NDC куба 2x2x2 с центром в 0 (openGL) в матрицу MVP NDC куба 2x2x1 с центром в (0, 0, 0.5) (металл)?

1 Ответ

1 голос
/ 02 ноября 2019

Эта ссылка имеет хорошее объяснение преобразования матрицы из OpenGL в Metal.

Для Metal с его конкретным NDC, мы можем либо получить матрицу аналогичным образом, либоиспользуйте простой способ: преобразовать NDC OpenGL в NDC Metal. Это делается с помощью пост умножения, которое сначала масштабирует куб 2x2x2 до 2x2x1, а затем сдвигает его на 0,5, чтобы получить правильный центр:

enter image description here

...