@sanek2005

Как устроен движок скриптинга?

Я совсем не понимаю, как строится у него архитектура, как он читает скрипты и исполняет их, и как это связывается с логикой в движке
  • Вопрос задан
  • 116 просмотров
Пригласить эксперта
Ответы на вопрос 1
YuriyVorobyov1333
@YuriyVorobyov1333
Software Developer (Node.js/Angular)
Практический каждый движок состоит из нескольких основных компонентов:
  • основной код игры с логикой
  • механизм рендеринга
  • звуковой движок
  • физический движок
  • ИИ

Понятное дело, что от реализации к реализации этот список может меняться. Обычно поверх всего это дела накатывается какая-то абстракция, чтобы это все можно было нормально использовать не залезая в исходники, так появились Unity/Unreal/Cry Engine и т.д. В итоге мы получаем набор инструментов и библиотек для обработки низкоуровневых функций, например таких как рисование объектов, и поэтому вместо написания кода для рисования разработчик просто создает объект класса спрайт. Как у разработчика у вас, обычно, есть полотно(сцена), где вы расставляете объекты и потом привязываете к объектам скрипты, при сборке это все является аргументами какой-то функции или конструкторами какого-то класса, который и начинает выполнять и связывать всю эту логику. Если мы говорим за популярные движки, указанные выше, то в них есть Entity Manager, который отслеживает все сущности и их поведение на сцене, а вашу сцену уже можно представить как граф, где узлы - сущности, а действия между ними - ребра.
Важно понимать, что реализация и внутренние механизмы меняются от случая к случаю. Вот здесь и здесь и здесь можно прочитать про движки в целом, а здесь и здесь посмотреть, как умные дяди на ваших глазах пишут эти самые движки.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы