Конструкторы VS фреймворки

Конструкторы VS фреймворки Gamedev, Игры, Конструктор, Libgdx, Unity, Игровой движок

Вазяп дудс!


Что лучше для начинающего игродела, начать юзать конструкторы, или окунуться с головой в глубины игровых движков, ковыряя фреймворки?


Давным-давно, когда небо светило ярче, а солнце было выше я начал изучать разные конструкторы. Времен было убито море. В ход шло все, от RPGMakerа до UE. Я качал примеры, изучал решения разных задач, создавал свои проектики.

Мне очень нравилась скорость создания игр, визуальные редакторы почти всех ресурсов, а разработка 3D игр без подобных конструкторов очень сложна.


Но даже при всех их плюшках чего-то мне не хватало:

Дорогие лицензии, что не подходит для хобби.

Большие объёмы памяти пустых проектов, что негативно сказывается при разработке под мобилы.

А самое главное - почти во всех конструкторах закрытый исходный код, а значит я не знаю, как происходят те или иные процессы. Я не могу оптимизировать этот код под свои нужды. Я ограничен (пусть иногда не слишком большими) ограничениями конструктора.


Тогда я начал изучать фреймворки. Вот несколько бодрых: Cocos2d, MonoGame, LibGdx… Я их все попробовал и остановился на LibGDX. Он больше всего мне подошёл для моих творчеств. Он полностью бесплатный (что очень важно, если вы просто учитесь). Для него есть визуальные редакторы (шрифты, упаковщики текстур, редактор полигонов для Box2D, редактор эффектов (как 2D так и 3D), nine_path редактор, для разработки карт можно юзать TileMap, Spine и его аналог Dragon Bones) В общем все, что нужно, чтобы делать игры.


Что мне это дало? После того, как я засел за LibGDX прошло несколько лет. Я практически полностью знаю, как он работает. Знаю в какой момент что загружается, полностью управляю всеми этапами работы в своих проектах. Эти знания открывают мне понимание работы игровых движков в целом. Изучая исходники я даже написал свой движок на C++.

Так что я думаю, что начинать изучение игродела нужно именно с фреймворков. Вы много чего поймете, что не понятно с самого начала (как было у меня), вы сможете создать свои инструменты для разработок или пользоваться чужими. После полученных знаний вы не только закалитесь и будете знать свои силы, но и легко сможете овладеть любым конструктором.