OpenGL. 6 - Перспективная проекция (идеальное объяснение формул и проекционной матрицы)
Узнаем:
1. Как видит глаз.
2. Как понять проекционную матрицу для перспективной проекции.
3. Как располагать оси в воображении во время проектирования мира.
Запуск под Windows с нуля: • OpenGL. 13 - Запуск на...
Плейлист по OpenGL (C, Linux/Windows): • OpenGL. 1 - создание о...
Исходный код: это видео без кодирования.
Для самообразования я использовал следующие 2 источника:
1. web.archive.org/web/201502251...
2. ogldev.atspace.co.uk/
3. songho.ca/opengl
При желании используйте их)
Сразу говорю, из 2-го туториала уроки №2 и №3 могут не заработать, т.к. ogldev.atspace.co.uk/faq.html .
Замечу, что в своих видео я самостоятельно устанавливаю нужные библиотеки по мере необходимости и не использую какие-либо дополнительные файлы, поэтому Вы чётко контроллируете весь процесс при разработке.
Пікірлер: 22
Очень полезное видео, большое спасибо автору. Выглядит как абсолютное проявление альтруизма, ты проделал столько работы исключительно ради других людей, ты молодец!
Большое спасибо. Лучшее объяснение из всех, которые я находил!
@mxhpns7322
3 жыл бұрын
Спасибо)
Спасибо, очень подробно описано, аналогично вывел матрицу для dx, ато привычка есть использовать только те формулы которые понимаю. Попутного ветра вам!
Вот это крутяк! Автору всего наилучшего! Решил изучить ОпенГЛ, скачал книгу Краснова, ничего не понял, не обвиняю автора, просто это очень сложная вещь. А здесь всё по полочкам разложено.
Очень круто, видос достоин просмотра если вы решили изучать ОпенГэЭл
Надеюсь не зря потратил 2 недели на проработку материала для этого видео. Извините, что работаю без монтажа, т.к. иначе на моём канале видео будут появляться ещё реже, а ещё столько всего нужно нормально изложить
@WindowChicago
2 жыл бұрын
Отличное кино, огромное спасибо за ролик!
Спасибо. Продолжайте в том же духе.
@mxhpns7322
4 жыл бұрын
Спасибо за Ваш комментарий!)
о госпаде, мужик, спасибо.
Скажите пожалуйста, я вот видел такую матрицу где первые два столбца не используют r l t b, а используют аспект и тангенс и FOV, так, какая матрица всё же лучше и удобнее? И в чём их различия визуально, так же в той матрице переставлены "f" и "n" местами 1 / (aspect*tan(fov/2)), 0, 0, 0, 0, 1 / (tan(fov/2)), 0, 0, 0, 0, (f+n)/(f-n), (2*f*n)/(f-n), 0, 0, -1, 0 Я бы очень хотел послушать/посмотреть/почитать ваше мнение Пытаюсь написать свою игру на языке Lua используя фреймворк Love2d и мне очень не понятны матрицы, совсем недавно я пытался понять как делать буфер глубины и вот только недавно сделал его. Если что - я использую вершинный шейдер glsl где умножаю вектор на матрицу которую передаю через Lua в Шейдер UPD: Вопрос на половину исчерпан
@donthave9268
3 жыл бұрын
Так же просмотрев видео чуть дальше где Вы нарисовали график у меня возник вопрос, линейное вычисление выходит лучше с точки зрения z-буфера?
@mxhpns7322
3 жыл бұрын
Лучше используй с тангенсом и fov, она легко выводится из первой матрицы. Она крутая, так как по этим параметрам просто легче
@mxhpns7322
3 жыл бұрын
Удачи в написании игры на луа)
@donthave9268
3 жыл бұрын
@@mxhpns7322 Спасибо)
@mxhpns7322
3 жыл бұрын
Я думаю, при линейном очень далекие фигуры рисуются в нужном порядке, так как маленькое изменение расстояния по z влечет не столь малое изменение в итоге. На самом деле плевать, Всё будет четко
Еще длиннее паузы между фразами делай, а то слишком быстро
Ты конечно ужасно косноязычный, но материал изложен очень хорошо.
@mxhpns7322
3 жыл бұрын
спасибо)
Вобщем понятно.. искажается слегка... а так ничё.
Вы повторяете то же давнейшее заблуждение, что и все остальные. Люди! Мозг ничего не переворачивает. Какая бы ориентация проекции реального мира на сетчатке глаза не была - В ЛЮБОМ СЛУЧАЕ мозг должен просто адаптироваться к ней. Насколько я помню, нашей правой рукой управляет левое полушарие (грубо говоря). Но про этот "парадокс" все почему-то забывают.