Игровой движок с хорошим созданием / управлением сущностью Lua [закрыто]

11

Я ищу движок, который создает его сущности, используя Lua или другой язык сценариев. Это для того, чтобы найти вдохновение и сделать это в моем собственном движке.

Я знаю, что CryEngine использует Lua для создания своих сущностей, но я хотел знать, есть ли другие альтернативы, которые я могу найти.

Спасибо!

Mr.Gando
источник

Ответы:

7

Я бы порекомендовал взглянуть на LÖVE: « Потрясающая среда, которую вы можете использовать для создания 2D-игр в Lua. Она бесплатная, с открытым исходным кодом и работает на Windows, Mac OS X и Linux». Это явно не альтернатива Cryengine, но, безусловно, должно продемонстрировать, как эффективно использовать потенциал Lua для создания сущностей и игровой логики. Объедините эти знания с тем, как Cryengine / другие движки AAA используют бэкенды сценариев, и у вас должно быть все вдохновение, необходимое для создания собственного движка с надежными возможностями сценариев. :)

Ари Патрик
источник
4

Насколько мне известно, серия Essence Engine от Relic (использованная в Company of Heroes и Dawn of War II ) использует Lua или его диалект для статистики юнитов и написания сценариев миссий. Для этого не существует реальных веб-источников, но вы всегда можете проверить некоторые моды на RelicNews.com, чтобы узнать, есть ли у вас интерес.

Спарк двигатель по Unknown Worlds, используемые в их предстоящей игре Natural Selection 2 позволяет большую часть игрового кода , чтобы быть в Lua, насколько я знаю. SDK поставляется с предварительным заказом игры и в настоящее время находится в бета-версии, как и игра.

Еще одна игра, которая когда-то была продвинута, сильно полагаясь на Lua, была бы Eufloria (ранее Dyson ). На их форумах также есть ссылка на моддинг Lua.

Valve, бесплатно кооператив игра Alien Swarm сильно использует язык сценариев под названием «Белок» , который был под влияние Lua. Пакет Alien Swarm SDK должен быть доступен для загрузки в Steam. ( Dev вики )

EDIT: Как я мог забыть о мире в конфликтах ! Игра делает много вещей на Python, что становится очевидным, если взглянуть на такие моды, как Modern Warfare Mod, в которых реализована совершенно новая механика.

Koarl
источник
Добавил ваши ссылки для вас.
Коммунистическая утка
Спасибо! // Удален комментарий, содержащий неформатированные ссылки ...
Koarl
Великий ответ, я надеюсь , что все больше людей могут добавить к этому вопросу , так как в будущем я абсолютно уверен , что там будет больше ответов. Большое спасибо Koarl (я большой Relic Fan кстати)
Mr.Gando
2

Вот несколько примеров (с открытым исходным кодом) игр, которые используют сценарии для реализации поведения сущностей:

Frogato реализует сущности, используя собственный язык сценариев. Battle for Wesnoth реализует сущности, используя собственный язык описания, в который могут быть встроены сценарии Lua. KQ реализует поведение сущностей, используя сценарии Lua.

Редактировать: Опубликованные ссылки теперь, когда я могу ...

СПЗ
источник
Frogato выглядит очень близко к тому, что я ищу, хотя и немного многословно, но все же очень интересно. Эквивалентный пример в Lua будет
потрясающим
2

Я делаю это в моем движке ( источник доступен , но, вероятно, не стоит расшифровывать).

В моем случае, «сущность» - это концепция, которая полностью существует в Lua. Там нет поддержки C ++ для "сущностей". Таким образом, «сущность» - это то, что нужно конкретной игре. Иногда это просто таблица с небольшим количеством данных, прикрепленных к ней, иногда это элемент 2d Frame (обратите внимание, что Frames также являются полностью конструкциями Lua, у меня просто есть стандартная библиотека пользовательского интерфейса), иногда это что-то сложное с AI и рендерингом, а затем это все еще просто вещь, созданная в Lua.

Многие люди используют Lua для создания сценариев объектных систем с поддержкой C ++, так что сущность «живет» в C ++ и вызывает Lua для сценариев. Раньше я делал это, но я становился все счастливее и счастливее, когда я перемещал код из C ++ в Lua. На данный момент я использую C ++ исключительно для обработки вызовов API OS, и вся логика компоновки / рендеринга / AI / игры полностью соответствует Lua.

Рекомендуемые.

Не стесняйтесь задавать вопросы, я вполне готов ответить :)

ZorbaTHut
источник
Как сравнить glorp с love2d?
deft_code
Насколько я понимаю, у love2d есть значительно устоявшийся путь рендеринга. У glorp нет - у него есть привязки OpenGL, и вы просто визуализируете все, что хотите (хотя у него есть вспомогательные функции для стандартных вещей.) У glorp есть встроенная система «главное меню / пауза / возврат в меню», она делает удаленный отчеты об ошибках при сбоях, и он автоматически генерирует установщики для любой операционной системы, на которой вы его собираете. Однако glorp на самом деле не предназначен для использования в качестве API - это фреймворк, который постоянно модифицируется для того, что мне нужно. Совсем не
такая