Записи Новый Roadmap
Post
Cancel

Новый Roadmap

По прошествии пару месяцев я прочитал книгу Game Programming in C++: Creating 3D Games: Creating 3D Games (Game Design). Это замечательная книга! В ней рассказывается о многих аспектах разработки игр с нуля, не используя готовых движков. В книге объясняются основы и приводится исходный код с пояснениями. После кадой главы приводится список источников, в которых материал главы раскрывается более подробнее.

Есть в книге и некоторые недостатки. В основном это непривычная математическая запись уравнений и левая система координат в OpenGL, хотя в других источниках я такого не встречал.

Я начинал делать конспекты-переводы, но решил бросить это дело, так как мне более интереснее практика.

Unreal Engine 4 и отказ от него

После прочтения книги у меня зачесались руки попробовать всё в действии, написать игру. Я начал думать, что ещё, кроме того, что написано в книге, мне понадобиться. Естественно, ушел в дебри различных алгоритмов, вроде navmesh и перемещения по нему. Люди, работающие в геймдеве, посоветовали поучить Unreal Engine, так как в нём уже всё реализовано.

Мой комп не тянул анриал! Дождавшись премии, я собрал новый комп, запустил Unreal Engine и погрузился в изучение. И с первых же туториалов меня он выбесил - постоянное переключение между кодом и блюпринтами смерти подобно! Промучавшись две недели и взяв паузу понял, что не создание игр меня привлекает, а именно изучение алгоритмов и разработки различных сложных систем тянет в эту область. И так радился план!

Новый roadmap

Изучение того, как писать системы, используемые в играх, как их оптимизировать представляет для меня больший интерес и ценность, чем разработка непосредственно игр. Поэтому новый план заключается именно в изучении и написании ради интереса.

План:

  1. Написан “песочницу” (sandbox) по книге Мадхава.
  2. Написать рендерер.

Попалась мне интересная книжка Real-Time Rendering, Fourth Edition, поэтому вначале интересно было бы интересно написать рендерер для реалистичного и красивого отображения игрового мира “песочницы”.

Функционал “песочницы”

  1. Создание объектов через наследование класса Actor
  2. Расширение функциональности через наследование класса Component
  3. Загрузка мешей и их расположение в мире
  4. Управление персонажем
  5. Отображение игрового мира от третьего и первого лица

После реализации базового функционала можно будет сосредоточиться на рендерере.

-

Sandbox::Write(Day001) Костяк песочницы, основной игровой цикл

Comments powered by Disqus.