«Библиотека Художника-эксперта» (EXLib) предназначена для работы с трёхмерной графикой для Windows на C++. Это библиотека для начинающих OpenGL-программистов, реализована с целью помочь им в изучении простейших принципов OpenGL. Документация на русском языке.
Создание библиотеки начинается с идеи, ради которой библиотека должна существовать. Идея создания библиотеки пришла мне в голову, когда я увидел пример простейшей программы на OpenGL. Чтобы увидеть то, что я увидел, достаточно просто открыть простейшую среду разработки Dev-Cpp (не реклама), создать новый проект и выбрать тип «OpenGL». Сколько кода! И ведь эта программа рисует всего лишь крутящийся треугольник. Мне было даже страшно представить, сколько кода потребуется ради создания простейшей 3D-игры. Стало понятно, почему программирование с OpenGL не привлекает начинающих. И тогда я решил помучаться и написать библиотеку, позволяющую работать с OpenGL так же легко, как рисовать в TXLib.
Основной идеей библиотеки стало упрощение работы с OpenGL,что сделает трехмерную графику доступной для обычных смертных (среди начинающих много таких, которые с радостью бы писали 3D-игры, но вынуждены были писать 2D-игры, за неимением легких для изучения 3D-инструментов).
Важной стадией разработки библиотеки я считаю стадией реализации базового функционала (API). Не стоит сразу писать кучу функций. Стоит начать с одной-двух, а потом постепенно расширять их множество. Базовыми функциями стали создание окна и подготовка OpenGL к работе. Не менее важно то, что в библиотеке более понятно указываются размеры и координаты - в пикселях (в отличие от OpenGL, где они указываются более сложным для начинающих образом).
После написания библиотеки, если ей будете пользоваться не только Вы, стоит подумать о документации кода. По моему мнению, самой простой, но мощной программой для этого является Doxygen. Если Вы хотя бы немного знаете HTML, то эти знания Вам очень здесь пригодятся.
Чтобы новичкам в создании библиотек было легче, все, что использовалось при ее создании, оставлено в папке «Dev».
Если Вы заинтересованы в создании 3D-игр, или Вам просто интересно посмотреть библиотеку, то установочный файл Вы можете найти здесь.
Если Вам нужна помощь на какой-нибудь стадии создания собственной библиотеки, или Вам что-то не понятно, Вы можете обратиться ко мне: IDanila24@gmail.com.
Примеры и скриншоты
Скриншот работы примера 2 (см. Документацию)
Скриншот работы примера 3 (см. Документацию)
Сжатая сфера. См. Код и исполняемые файлы.
Система частиц. См. Код и исполняемые файлы.
256*256*6 = 393216 точек. Каждая точка (x, y, z) имеет цвет RGB (x, y, z).
Кубик Рубика средствами EXLib.
Ссылки
|