Почему 4×4 матриц используется для преобразования вещей в 3D?
Причина использования 4×4 матрицы для преобразования вещей в 3D
Например, вращение обычно делается с помощью матрицы, поэтому для того, чтобы иметь дело с несколькими преобразованиями (вращение / перевод / масштабирование / проекция…так далее) единообразно, Вы должны кодировать их в матрице.
Что ж, более технически говоря; преобразование является отображение точку / вектор в другой точке / вектор.
p` = T(p);
где p` является преобразованным точку и T(п) это функция преобразования.
Учитывая, что мы не используем матрицу, мы должны сделать это, чтобы объединить несколько преобразований:
р1 = Т(п);
покончательный = M(p1);
Мало того, что матрица объединить несколько типов преобразований в одну матрицу (например. аффинное, линейный, проективный).
Используя матрицу, даешь нам возможность объединить цепочки преобразований, а затем умножить их партии. Это экономит массу циклов, как правило, с помощью GPU (благодаря @ChristianRau за указав его).
Tокончательный = T * р * п; // перевестиповоротпроект
покончательный = Tокончательный*п;
Это также хорошо отметить, что графические процессоры и даже некоторые процессоры оптимизированы для векторных операций; Процессоры с использованием SIMD и графические процессоры времени управляемых данными параллельных процессоров от дизайна, поэтому использование матрицы прекрасно сочетается с аппаратным ускорением (на самом деле, Графические процессоры были разработаны, чтобы соответствовать матрицы / векторных операций).
КРЕДИТ:
HTTPS://gamedev.stackexchange.com/questions/72044/why-do-we-use-4×4-матрицы к спектрально-вещей в 3d?answertab = активный # вкладка-топ
Оставьте ответ
Вы должны авторизоваться или же регистр добавить новый ответ.