Для яких цілей ми використовуємо матрицю проекційного перегляду моделей? Чому для шейдерів потрібна матриця проекційного перегляду моделей?
Для яких цілей ми використовуємо матрицю проекційного перегляду моделей? Чому для шейдерів потрібна матриця проекційного перегляду моделей?
Відповіді:
Матриці моделі, перегляду та проекції - це три окремі матриці. Моделюйте карти з місцевого координатного простору об'єкта у світовий простір, вид із світового простору в простір камери, проекція з камери на екран.
Якщо скласти всі три, ви можете використати один результат для відображення всього шляху від об'єктного простору до простору екрану, завдяки чому ви зможете розробити те, що потрібно перейти до наступного етапу програмованого конвеєра з позицій вхідних вершин.
У трубопроводах з фіксованою функціональністю старої моделі слід застосовувати модель та переглядати разом, а потім відпрацьовувати освітлення, використовуючи інший результат, отриманий від них (з деякими виправленнями, так що, наприклад, нормалі залишаються одиничною довжиною, навіть якщо ви застосували певне масштабування до об'єкта ), потім застосуйте проекцію. Ви можете бачити, що відображено у OpenGL, який ніколи не розділяє модель та переглядає матриці - зберігаючи їх як єдиний матричний стек перегляду моделі. Тому ви також іноді бачите, що відображено в шейдерах.
Отже: складена матриця проекційного перегляду моделей часто використовується шейдерами для зіставлення вершин, завантажених для кожної моделі, на екран. Це не потрібно, існує безліч способів досягнення одного і того ж, це просто звичайно, оскільки він дозволяє всі можливі лінійні перетворення. Через це менша складова його версія була також нормою у світі старого трубопроводу.
Тому що матриці зручні. Матриці допомагають перетворити місцеположення / напрямки відносно різних просторів (Простір можна визначити за допомогою 3 перпендикулярних осей та початку).
Ось приклад із книги, вказаної в коментарях @ legends2k.
Мешканці Картесії використовують карту свого міста з походженням, досить чітко зосередженим у центрі міста, і осями, направленими уздовж кардинальних точок циркуля. Мешканці Дислексії використовують карту свого міста з координованими центрами у довільній точці та осями, що проходять у деяких довільних напрямках, що, напевно, здавалося гарною ідеєю на той час. Громадяни обох міст цілком задоволені відповідними картами, але Державний інженер з транспорту призначив завдання скласти бюджет на першу автомагістраль між Картесією та Дислексія, яка потребує карти, де відображаються деталі обох міст, а тому вводить третю координату Система, яка перевершує його, хоча не обов'язково для когось іншого.
Ось ще один приклад,
Припустимо, що ви створили автомобільний об’єкт у грі з його вершинними положеннями, використовуючи світові координати. Припустимо, ви повинні використовувати цей самий автомобіль у якійсь іншій грі зовсім іншого світу, вам доведеться ще раз визначити позиції, і розрахунки будуть складними. Це тому, що вам знову доведеться обчислити положення вікна, капота, фари, коліс тощо, в машині по відношенню до нового світу.
Дивіться це відео, щоб зрозуміти поняття моделі, перегляду та проекції. (Настійно рекомендується)
Потім перегляньте це, щоб зрозуміти, як вершини у світі представлені як матриці та як вони перетворюються.