tolua提供了乙個使用單例模式的luafileutils類,這個類用來讀取lua檔案,可以根據自己的專案繼承這個類來重寫readfile方法。
首先我們得把打包好的lua檔案載入進來,方便查詢lua檔案。
dictionarymap = new dictionary();
public void addab(string filename, assetbundle ab)
接下來就是讀取ab包中的lua檔案:
因為tolua提供了常用unity中的vecter3,color等lua檔案,我也覺得沒有必要去把這乙個個的檔案整合在ab包中。使用lua選單中的copy lua filse to resources選項
那麼接下來就是重寫readfile方法:
public override byte readfile(string filename)
if (buffer == null)//載入resources下面的lua檔案
}if (buffer == null)//載入ab包中的lua檔案
}return buffer;
}
基本工作已準備好,那接下來就是怎樣使用了:
void onbundleload()
state.dofile("test.lua");
state.dispose();
}
test.lua語句是設定場景中的文字元件的文字值為 「lua檔案載入成功!」。下面就是執行後的
測試工程 門鑰匙:im1m
如何使用unity中Resources檔案
unity有幾種特殊資料夾。其中乙個檔案是resources資料夾。儲存資源的簡單概念已經在 官方文件中被很好的解釋 通常,我們在場景中建立資源的例項以便在遊戲設定中使用它們。不過unity還允許從指令碼即時載入資源。通過將資源放在乙個叫resources 的資料夾或它的子資料夾 實際上可以有任意數...
unity之靶心製作
首先要知道兩個概念,乙個螢幕的座標是左上角為 0,0 而滑鼠位置的座標左下角為 0,0 靶心貼圖 public texture texture void ongui 計算準心貼圖的座標 rect rect new rect input.mouseposition.x texture.width 1 ...
Unity之封裝,繼承
1.用屬性來實現封裝 屬性是c 引入的一種語言成分,只有很少的語言支援屬性。通過對屬性的讀和寫來保護類中的域。第一種方法體身也是一種好的方式,但用屬性來實現封裝會更方便 例子 private string name public string name get person p new person...