Это своего рода теоретический вопрос. Предположим, что я хочу сделать игру с C++ и использовать Lua внутри нее для логики игры, AI и т. Д. Я могу создать целый дизайн/иерархию объектов на C++ или Lua? Или оба? Как это работает? Спасибо за вашу помощь!C++ с LUA, дизайн объекта
ответ
Вы создаете библиотеки для работы с двигателем и производительностью, в C++, для максимальной производительности, и вы предоставляете API для всего, что есть в Lua.
Если у вас есть особенности игры, вы, вероятно, захотите закодировать их в Lua, чтобы вы могли повторно использовать свой игровой движок.
Если вы хотите закодировать AI в Lua или C++, то полностью зависит от других факторов, и я не могу ответить вам объективно на этот вопрос. Один из вариантов - сделать утилиты для AI на C++ и предоставить API для них в Lua.
Позвольте мне резюмировать:
- Перед вами кода что-то в C++, спросите себя: «Является ли эта библиотека общего назначения для большинства игр»
- Если ответ на вопрос «Нет», вы можете запрограммировать его в Lua.
- Если ответ «Да», то вы его кодируете на C++ и создаете API в Lua.
Это связано с тем, что целью игрового движка является упрощение разработки игр в долгосрочной перспективе и быстрее. Вы хотите, чтобы у него были все виды библиотек общего назначения и утилиты. Оно должно быть многоразового использования. Разделение игровой логики и библиотек общего назначения также облегчает вам изменение всей игры, не испортив ее суть.
Ваш вопрос не совсем объективна, поэтому я даю ответ в пользу производительности и возможно лучшего процесса.
(Я делаю точно то же самое.)
Большое спасибо – user1760770
Вы очень желанны. Развитие игрового движка - это то, что я делал в течение 8 месяцев, поэтому я с удовольствием ответил на этот вопрос (: –
Единственный ответ на такой широкий вопрос: это зависит. –