Вопрос

В настоящее время у меня есть набор оболочек SWIG для моих классов, и все это собирается.Я могу создать виртуальную машину Lua и загрузить свои оболочки, но в этот момент я в замешательстве.Поиск в Google подсказывает мне, как вставить C++ в Lua в Swig, но не говорит, как вставить Lua в C++.

На самом деле все, что я хочу сделать, это создать экземпляр объекта lua и передать ему указатель на мой основной объект игрового движка, оттуда я могу управлять

Это было полезно?

Решение

Взгляните на книгу «Программирование на Lua», там есть раздел, посвященный API Луа C.

Для вызова функций Lua используйте lua_pcall, что эквивалентно lua_call (у него есть короткий пример), за исключением того, что он обнаруживает ошибки времени выполнения Lua.

Вы, должно быть, уже загрузили и запустили скрипт один раз (например, используя. luaL_dofile), поскольку первым шагом скрипта является определение функций, которые вы будете вызывать.Когда он вернется, вы можете получить доступ к функциям, определенным сценарием, с помощью lua_getglobal.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top