iw4nna.rock
Это ты понимаешь.
А вот чатГПТ сможет ли так же ? Есть сомнения.
Kemanorel
https://www.statista.com/statistics/1234218/epic-games-employees/
Сейчас у них около 4500 человек, сколько именно программеров на C++ не нашёл, ну допустим 1/3.
EnderGames
> В целом сколько времени у меня может занять полноценное обучение от мат части до написания движка и игры?
Сложно сказать, зависит от текущего уровня знаний.
По опыту скажу, что рабочая схема заехать в gamedev - реверс инжиниринг.
Я тогда на шарпе с нуля писал игру, экспериментируя над оригинальной игрой. Все ассеты соответственно из оригинала, так что чисто проектирование и кодинг.
Когда есть конкретный план, гораздо легче выбирать технологии и расчитывать время.
И то, что здесь было насыпано ECS, DOF и всяких SSR - не факт, что вообще тебе нужно.
Все зависит от проекта и лет 20 назад всех этих аббревиатур не было, а игры были.
ronniko
> А вот чатГПТ сможет ли так же ? Есть сомнения.
3-й чатГПТ не может или может - непонятно. Когда ему говоришь написать код поворота вектора с помощью кватернионов, то начинает писать что-то такое:
class Quaternion { public: float x; float y; float z; float w; Quaternion () {} Quaternion ( float X, float Y, float Z, float W ) : x( X), y( Y), z( Z), w( W) {} ... ... ...
то есть начинает рассказывать про то, как устроен кватернион и что с ним можно делать.
Но по правде говоря у меня был чатГПТ-3 адаптированный для писания историй, а не для кодинга.
Мне кажется, что адаптированный для кодинга чатГПТ-3 и чатГПТ-4 тоже не справятся по крайней мере удовлетворительно.
Возьми (полу)готовый движок, не начинай с нуля, иначе загубишь молодость.
Движок же, помимо "вкусных" вещей типа графики и физики, включает ещё "скучные" инструменты - редактор (чтобы, как минимум, расставлять объекты на сцены и подкручивать им свойства) и систему компиляции (или сборки) ресурсов. А ещё придётся писать скрипты для генерации проектов и кучу юнит-тестов для различных подсистем движка.
Вот неплохой вариант для построения своего движка https://github.com/ezEngine/ezEngine
Там есть редактор, asset pipeline, стриминг ресурсов, рэгдоллы, куча плагинов для физики, аудио, скриптов, ... и несколько проектов-примеров. Единственное - рендер там не очень продвинутый, но на конкурсы/джэмы хватит с головой.
И это делали с нуля несколько челов с коммерческим опытом разработки движков (VisionEngine/Havok Anarchy) с 2012 года, в свободное время.
Я уже хочу выкинуть своё гамно и как можно больше воровать готового кода.
Самое ценное от своего движка - это опыт, а сам движок для игр не годится.
Urho
innuendo
Так У(р)ха уже мёртвая почти 2 года, щас вместо неё это Двигло разрабатывается
https://github.com/dviglo/dviglo
есть Urho3d/rbfx https://rebelfork.io/docs/index.html с поддержкой PBR
Есть bgfx фреймворк https://github.com/bkaradzic/bgfx от которого образовался NeoAxis
движков дофига от которых можно основать свою ветку, переименовать и развивать дальше.
Но чтобы понять что такое движок, лучше взять glm и делать на нём.
- Делать игры
- Играть в U*подставь свое*, как будто делаешь игры
+ Играть в <подставь IDE>, как будто делаешь игру для тех, кто хочет играть в то, как будто делает игры;
Salamandr
> Но чтобы понять что такое движок, лучше взять glm и делать на нём
GLM? Это библиотека математики для OpenGL. Может быть, вы имели в виду какой-то игровой фреймворк или оконную библиотеку типа GLFW, SDL или FreeGLUT
iw4nna.rock
> Это библиотека математики для OpenGL. Может быть, вы имели в виду какой-то игровой фреймворк или оконную библиотеку типа GLFW, SDL
конечно вместе, GLM+SDL
PVSector
Зато код неплохой , года на два топикастену хватит
Salamandr
> Но движок я написать не могу,
Можешь, просто не хочешь.