3D Cube OpenGL — Как отображаются стороны куба при движении камеры?

Я следую учебнику на YouTube, который объединяет 3 матрицы: projectionMatrix * viewMatrix * transformationMatrix. Они позволяют визуализировать 3D-куб вместе с камерой, управляющей сценой. Мой вопрос: как эти матрицы/матрицы показывают стороны нижнего куба, когда куб смещен от центра из-за движения камеры? камера повернута влево

камера повернута влево

Какие матрицы отвечают за отображение левой стороны куба при движении камеры по оси X? Это потому, что чем дальше вершины (по оси z), тем меньше на них влияет движение, и поэтому передние вершины перемещаются, открывая те, что позади; как ниже? введите здесь описание изображения

Я понимаю, что матрица проекции может быть связана с тем, что сторона куба меньше на вершинах дальше. Кроме того, я не думаю, что куб вращается, так как передний четырехугольник не искажается. Моя теория состоит в том, что матрица преобразования заставляет вершины отставать дальше и, таким образом, раскрываться.


person reddish    schedule 20.04.2016    source источник
comment
Если вы следовали руководству, в котором показано, как использовать матрицу перспективы, но не удосужились объяснить, что такое перспектива и как она работает, найдите лучшее руководство.   -  person Nicol Bolas    schedule 20.04.2016
comment
@NicolBolas, как мне поможет этот комментарий? Это не форум предложений.   -  person reddish    schedule 20.04.2016
comment
Как этот комментарий помогает мне? Сказав вам, чтобы вы перестали тратить свое время на ужасный учебник. Если в учебнике даже не удосужились объяснить, как работает перспектива, то он не стоит вашего времени.   -  person Nicol Bolas    schedule 20.04.2016
comment
@NicolBolas, так вы говорите всем вернуться в школу или найти другой учебник для каждого вопроса, который вы видите в stackoverflow?   -  person reddish    schedule 20.04.2016
comment
Нет. Просто люди, которые задали вопрос, основанный на плохом/неполном учебнике.   -  person Nicol Bolas    schedule 20.04.2016
comment
@NicolBolas Мои извинения. Страница не полностью обновилась, и я не видел, что она была закрыта.   -  person Xirema    schedule 20.04.2016
comment
Я не хочу быть таким парнем, но вам правда не нужен туториал, чтобы понять, как работает перспектива...   -  person RecursiveExceptionException    schedule 21.04.2016