カスタム検索

2015年6月9日火曜日

Cocos2d-x 2.2系でLuaを部分的に使う

検索したら意外に情報が少なかったCocos2d-xでLua使う方法
まずC++で作ったプロジェクトだとLua関係がimportされてないので追加する。

・iOS
Luaの空プロジェクト作って、luaフォルダを同じようにimportしてやるのが一番早い
luajit(Luaをバイナリコードするやつ)が古いため64bitに対応していないので、3.6からluajitをコピー
Build SettingsのHeader Search PathsとLibrary Search Pathsにlua系を追加

・Android
こっちもluajitを3.6についてるバージョンに上書き
Android.mkに以下を追加
LOCAL_WHOLE_STATIC_LIBRARIES += cocos_lua_static
$(call import-module,scripting/lua/proj.android)

・あとは普通にLuaEngineから読み込める
CCLuaEngine *engine=CCLuaEngine::defaultEngine();
string luaFile=CCFileUtils::sharedFileUtils()->fullPathForFilename("script.lua");
engine->executeScriptFile(luaFile.c_str());
lua_State *L=engine->getLuaStack()->getLuaState();

こっから先は ココらへん で詳しく乗ってます