Ну, есть несколько способов думать об этом. Один из них состоит в том, чтобы перечислить специфические функции, которые должен иметь движок (о чем вы просили здесь.) Однако другой способ - просто начать создавать игры, не слишком заботясь о «движке», и затем найденные вами функции повторно используются между несколькими В играх (в частности, функциях, используемых в каждой игре) вы должны мигрировать из исходного кода для конкретной игры в общую кодовую базу под названием «движок».
Потому что, в конце концов, вам нужна конкретная функция в движке, а не в игре, потому что она используется несколькими играми. Обычно это такие вещи, как команды рисования, контроллеры ввода и сетевой код. Движок 2D-игр будет иметь множество функций 2D-графики, таких как загрузка изображений, иерархия отображения в z-порядке, обработка таблиц спрайтов, анимация движения и т. Д. Во многих играх требуется физическое моделирование, хотя, с другой стороны, многим это не нужно. Между тем, больше «скрытых» вещей, используемых почти в каждой игре, включают таймеры, обмен сообщениями о событиях и даже математические функции, специфичные для разработки игр (например, distanceToTarget ()
Короче:
A) Движок должен иметь функции, общие для большинства игр.
Б) Вы узнаете, какие функции являются общими, создав кучу игр.
just start making games without worrying too much about the "engine"
just start making games without worrying too much about the "engine"
это определенно хорошее предложение.