Pygame • Врываемся в OpenGL
Автор: Fathopert
Загружено: 2021-01-24
Просмотров: 5785
Описание:
Введение в азы OpenGL. Рассматриваем основные понятия и алгоритм работы с OpenGL. Отправляем данные на видеокарту с помощью буферов. Пишем первые шейдеры. Рисуем треугольник с помощью модулей PyOpenGL и Pygame. Надеюсь, данное видео даст минимум знаний и некоторое "интуитивное понимание" OpenGL, которых будет достаточно для дальнейшего изучения OpenGL по литературе и видеоурокам.
Использую Python 3.8.3, Sublime Text, командную строку. (Перешел на Windows 10)
Таймкоды:
00:00 - Приветствие и постановка задач
00:29 - 1. Использование функций OpenGL Для рисования в окне Pygame
01:53 - Буфер кадра
03:53 - 2. Что такое OpenGL?
05:36 - 3. Графический конвейер
09:22 - 4. Алгоритм работы с OpenGL
10:37 - 5. Буферы и Vertex Buffer Object (VBO)
14:46 - 6. Шейдеры и язык шейдеров
15:45 - Вершинный шейдер
19:52 - Фрагментный шейдер
22:27 - Шейдерная программа
23:12 - 7. Передаем данные из буфера в вершинный шейдер
26:24 - 8. Рисуем треугольник
Картинки в видео:
Картинка 1 by Josh Applegate from unsplash
Картинка 2 by Bruce Mars from unsplash
Картинка 3 by Tadeusz Lakota from unsplash
Картинка 4 by Joshua Earle from unsplash
Музыка в видео:
Композиция 1 - Vibe Tracks - About That Oldie
Композиция 2 - Text Me Records & Bobby Renz - Jungle
Композиция 3 - Geographer - Bright Idea
Композиция 4 - Dan Lebowitz - Simon's Song
Композиция 5 - The Mini Vandals - Key to Your Heart
Композиция 6 - Esther Abrami - No.4 Piano Journey
Композиция 7 - Craig MacArthur - Potato Deal
Композиция 8 - Andrew Huang - Club
Композиция 9 - The 126ers - Winds of Spring
Композиция 10 - Zachariah Hickman - All the Fixings
Композиция 11 - RKVC - American Idle
Композиция 12 - Delicate Steve - Crops
Композиция 13 - TrackTribe - Turtleneck
Полезные источники для изучения OpenGL:
https://learnopengl.com/ -- топовый интернет-учебник для изучения OpenGL. Хотя весь код и написан на C++, команды в PyOpenGL такие же (только в Python нет указателей (pointers)).
https://habr.com/ru/post/310790/ -- перевод статей с learnopengl.com на русский язык. Не знаю, насколько он хорош.
https://nicolbolas.github.io/oldtut/ -- еще один интернет-учебник по OpenGL. В нем тоже используется язык С++. Многие моменты расписаны подробнее, но в данном случае подробнее =/= проще. Может, кому-то он понравится больше, чем learnopengl.com.
http://pyopengl.sourceforge.net/index... -- официальный сайт PyOpenGL.
• Learn OpenGL in python -- плейлист с канала AtiByte, посвященный PyOpenGL. Сначала для создания окна и обработки нажатий используется GLFW, а с 8-го видео используется связка PyOpenGL + Pygame. Под каждым видео есть ссылка на код из урока. В целом темы видео идут по программе учебника learnopengl.com.
• OpenGL with PyOpenGL tutorial Python and P... -- плейлист с канала sentdex о создании простенькой 3D игры на Pygame с использованием PyOpenGL. Используется устаревший fixed function pipeline (т.е. без шейдеров)!
https://www.haroldserrano.com/blog/ta... -- в учебнике на learnopengl.com я не мог понять урок "Hello Triangle" :) , потому что информация там всё наваливается и наваливается на тебя без особого обобщения. Статьи из блога по ссылке помогли мне понять что, за чем и почему. У этого автора много статей, в которых ОБЩИМИ словами рассказывается, как работает OpenGL.
https://www.khronos.org/opengl/wiki/ -- официальная вики об OpenGL. Удобно подсматривать непонятные термины.
Ginsburg D., Purnomo B., OpenGL ES 3.0 Programming Guide, 2014 -- отличная книга по OpenGL. Удобно пользоваться ею как справочником по разным вопросам, связанным с OpenGL.
https://geometrian.com/programming/tu... -- неплохая статья про графический конвейер OpenGL.
https://www.khronos.org/registry/Open... -- посмотреть, как выглядит OpenGL-документ версии 4.6. Этот документ обновляется компанией Khronos Group.
http://www.lki.ru/text.php?id=3859 -- немного об истории и конкурентах OpenGL.
_____________________________________
Мой сайт: https://fathopert.xyz/
Полный код урока:
Google Диск (временно): https://drive.google.com/file/d/1bYKD...
_____________________________________
Поддержать канал:
YooMoney: https://yoomoney.ru/to/410011384745492
DonationAlerts: https://www.donationalerts.com/r/fath...
QIWI: https://qiwi.com/n/FATHOPERT
#жирнаяграфика #pygame #python #pyopengl #opengl
Повторяем попытку...
Доступные форматы для скачивания:
Скачать видео
-
Информация по загрузке: