Делаю свой движок тут
Подробности о шейдерах, их написании и возможностях находятся на сайте Learn OpenGL, который я упоминал выше. Однако у меня возникла смешная заминка, на сайте (да и вообще во всём интернете) объясняется OpenGL версии 3.3. А моё железо, на котором я пишу движок, и которое буквально достал с помойки, имеет процессор Intel Core 2 Duo со встроенной графикой и поддерживает максимум версию 2.1. Пришлось спрашивать Чат о некоторых недоступных мне особенностях шейдеров, и чем их можно заменить
Игровые объекты
Каждый раз, когда я слышу фразу "объектно-ориентированное программирование", представляется что-то душное и сложное, но на деле это очень удобно для "сортировки". Оказалось очень полезно, чтобы заменить в движке десяток массивов, каждый из которых хранил одно из свойств всех игровых (не)объектов
Для объектов я решил заменить загрузку сырых моделей и пнг текстур на собственные форматы файлов, чтобы "упростить" работу с ними (ну и естественно развлечь тех, кто полезет в файлы игры)
Импорт файлов, для которого я даже создал набор функций, использует Assimp (модели), SDL_image (текстуры) и стандартную библиотеку fstream (тексты, а так же для записи новых файлов). В файл модели записываются все вершины, их индексы, нормали, текстурные координаты, а также некоторая информация о костях и анимациях, до которых я пока не дошёл. Текстурный файл содержит все пиксели каждый в виде 3-4 символов, которые отвечают за яркость основных компонентов цвета: красный, зелёный, синий, и иногда прозрачность. Вообще, текстуры неплохо бы сжимать, но я пока не понял как. Тексты тупо переписываются из блокнота
В файлы игры определённо кто-нибудь будет лезть, и чтобы присечь хотябы попытки заменить игровые ассеты, добавил их проверку с помощью хэша - копии файла, которую сжали и получили почти уникальный "пароль" к файлу. Мне было впадлу использовать для этого ещё одну библиотеку, поэтому сделал что-то своё, и оно вроде как работает - замена ассета крашит игру, если не поменять в коде хэш
Редактор
Как в юнити и анриле, я начал делать себе такой же удобный редактор, который позволит импортировать ассеты, редактировать уровни и проверять игру в действии. Пока в разработке, можно только ставить падающих мужиков
Естественно буду крайне благодарен, если найдутся те кто разбираются в работе игровых движков и поможет мне информацией
Иногда мне кажется, что это просто большой щитпост
Выхлопные трубы не оттуда сделал :). Они сверху отводят отработавшие газы. Из головки блока цилиндров, а не из поддона картера.
Это конечно мощно. Однако не могу не вставить свои 5 копеек (сорри): Делать игры и свой движок вещи не совместимые для одинокого инди разработчика по множеству причин и ограничений, самое страшное из которых - время.
в голосяндру с ебыча валеры
Лютый
Чел, хорош
Комментарий недоступен