Luaの研究では、4ノート - XLua

ダウンロードXLua:https://github.com/tencent/xlua

XLua単にプラグインとXLua 2つのフォルダがU3Dにコピーすることができ、プロジェクトで使用
XLuaインタラクティブのLuaとC#を実装するためだけのコアが、便利な「フレームワーク」を提供していない、我々はプロジェクトでXLuaを使用し、その後、 「Luaは、クライアントのホットアップデートを完了するために、サーバからABおよびリソースをダウンロード」を達成するように、フレーム部分を実装

C#の呼び出しLuaの
  使用XLua;
  // LuaEnvの例では、Luaの仮想マシン、それが推奨されているグローバルに一意
  LuaEnv luaEnv新しい新LuaEnv =();
  luaEnv.DoString( "印刷( 'テスト')");
  外部のLUAコールC#コードファイル
  XLuaでfileName.lua.txt:完全なLuaのファイル名形式でXLua; \ Resourcesフォルダは、LUAファイルを作成し、ファイルの拡張子はTXTです

  

  負荷とは、LUAファイルを実行し、C#のコードによって、その後DoString Luaの仮想マシン方法:
  luaEnv.DoString(「必要『extraTestLua』」); //パスと接尾書いてはいけません
  で取得したC#のLuaのコードデータ
  luaEnv.Global.Getを<整数>( "A") ; // LUAの値を取得
  luaEnv.Global.Get <文字列>( "B" ); //はLuaの中で文字列を取得
  luaEnv.Global.Get <ブール>( "C" ); //取得LUAブール
  luaEnv.Global.Get <LuaFunction>( "D" ); // LUAの方法を取得します

LuaはC#を呼び出します
  CS.UnityEngine.GameObject
  ()CS.UnityEngine.Debug.Logを
  CS.UnityEngine.GameObject.Find()
  CS:// LuaはC#に名前空間接頭辞の前に必要な、C#のを呼び出します。

     LuaEnv = LuaEnv 新しい新 LuaEnv();    // Luaの仮想マシンの実行
         // luaEnv.DoString( "印刷( 'hellow')"); 

        luaEnv.DoString(" 必要'extraTestLua' "); // C#のコール外部コード・ファイルのLua 、ノーライトパスとサフィックス
        INT A = luaEnv.Global.Get < 整数 >(" A ");                     // 取得Luaの値の
        文字列 B = luaEnv.Global.Get < ストリング >(" B ");               // Luaの文字列取得
        BOOL C = luaEnv.Global.Getを< BOOL >( " C");                   // 获取LUA中的布尔 
        LuaFunction D = luaEnv.Global.Get <LuaFunction>(" D ");     // 获取LUA的メソッド中
        d.Call(); 

        文字列 luaScript = @" 
            ローカルゲームオブジェクト= CS。 UnityEngine.GameObject 
            ローカルデバッグ= CS.UnityEngine.Debug 

            ローカルプレイヤー=ゲームオブジェクト( 'XXXXX')
            DEBUG.LOG(player.name)
       
            ローカルカメラ= GameObject.Find( 'メインカメラ')
            DEBUG.LOG(camera.name)
        
        luaEnv.DoString(luaScript)。

 

おすすめ

転載: www.cnblogs.com/xianguoguo/p/11606532.html