開源手遊熱更係統xLua最新2.1.6版是Unity3D下Lua編程解決方案,自2016年初推廣以來,已經應用於十多款騰訊自研遊戲,因其良好性能、易用性、擴展性而廣受好評。現在,騰訊已經將xLua開源到GitHub。
Unity 下 Lua 編程支持
xLua 為 Unity 增加 Lua 腳本編程的能力,進而提供代碼邏輯增量更新的可能。當然不僅僅如此,在 coco2dx 上的實踐告訴我們,以 Lua 為主打語言的遊戲客戶端編程是可行的。
C# 下 Lua 編程支持
xLua 也支持非 Unity 下的 C# 環境使用,通用版本的介紹請看這裏。
xLua 的突破
xLua 在功能、性能、易用性都有不少突破,這幾方麵分別最具代表性的是:
Unity 全平台熱補丁技術,可以運行時把 C# 實現(方法,操作符,屬性,事件,構造函數,析構函數,支持泛化)替換成 lua 實現;
自定義 struct,枚舉在 Lua 和 C# 間傳遞無 C# gc alloc;
編輯器下無需生成代碼,開發更輕量;
新增特性
1、帶約束的泛型支持(by forsakenyang);
2、非 Unity 的 .net 環境支持;
3、代碼注入支持小工具方式,該方式不用拷貝 cecil 庫,可以解決拷錯 cecil 庫版本或者和 Unity,VS 插件衝突的問題;
4、Hotfix 配置支持字段和屬性
5、更方便的 Unity 協程 hotfix
6、在 hotfix 觸發事件;
7、LuaTable 添加 ForEach 方法以及 Length 屬性;
8、cmake 生成項目優化:保留源文件目錄結構;
9、對已經 Dispose 的 LuaEnv 的訪問做保護;Dispose 時檢查 callback 是否已經都釋放,沒釋放的話報錯;
10、支持釋放 Hotfix 回調;
變更
1、構造函數改為執行原有邏輯後調用 lua;
2、對 string 類型的[]操作符重載會影響到繼承調用,去掉該特性的支持;
3、編輯器下的代碼注入改為手動方式;
bug 修複
1、防止定義了同時定義 get_xx 方法以及xx屬性的生成代碼的重名。
2、struct 注入代碼無效;
3、Utils 加名字空間,防止和業務衝突;
4、返回定長多維數組的 delegate ,生成代碼可能會衝突;
5、interface ,以及編輯器下不生成代碼情況下,對可變參數的展開;
6、il2cpp 下,如果不生成代碼,會報 ManifestModule 不支持;
7、規避 Unity4 的 bug:訪問一個已經被 Distroy 的 UnityEngine.Object ,編輯器下會崩潰,這個問題在 Unity5,或者 luajit 版本都不會出現;
8、修改上個版本引入的問題:xlua_setglobal 會漏一個值在棧上,這會導致一些32位應用不穩定;
9、當 delegate 參數隻有 ref 和 out 的區別的話,報重載衝突。
76.4M / 03-25
立即下載55M / 06-05
立即下載237.9M / 04-13
立即下載140.5M / 03-06
立即下載900.9M / 03-02
立即下載96.2M / 07-06
立即下載311.2M / 07-06
立即下載335M / 07-06
立即下載200M / 07-06
立即下載413.8M / 07-06
立即下載353.9M / 06-05
立即下載131.8M / 04-13
立即下載230.8M / 03-03
立即下載195.6M / 03-03
立即下載165.4M / 03-03
立即下載45.6M / 09-08
立即下載665.2M / 07-06
立即下載2.84G / 07-06
立即下載93M / 07-06
立即下載338.3M / 07-06
立即下載1.38G / 07-26
立即下載488.3M / 07-16
立即下載109.8M / 06-03
立即下載142M / 01-08
立即下載1.2M / 11-23
立即下載548.8M / 04-13
立即下載1.6M / 04-13
立即下載1.48G / 03-18
立即下載646.6M / 03-03
立即下載133.7M / 03-03
立即下載325.8M / 06-07
立即下載60M / 04-29
立即下載254M / 04-25
立即下載659M / 04-23
立即下載1M / 12-26
立即下載253.4M / 12-08
立即下載253M / 12-08
立即下載1.19G / 11-16
立即下載110.5M / 04-23
立即下載26.7M / 03-16
立即下載488.3M / 07-16
立即下載248.9M / 12-08
立即下載248.9M / 12-08
立即下載201.2M / 04-13
立即下載100.6M / 03-06
立即下載148.9M / 03-06
立即下載1.12G / 07-06
立即下載1.25G / 07-06
立即下載9.48G / 07-06
立即下載50KB / 07-06
立即下載116.2M / 04-10
立即下載1.92G / 04-17
立即下載201.5M / 04-13
立即下載7.31G / 07-01
立即下載94.3M / 07-06
立即下載2.48G / 07-06
立即下載7.63G / 07-06
立即下載1M / 07-06
立即下載778.1M / 07-06
立即下載509.7M / 07-06
立即下載561.8M / 07-11
立即下載1.32G / 01-19
立即下載72M / 07-06
立即下載548.7M / 07-06
立即下載1.00G / 07-06
立即下載9.13G / 07-06
立即下載126.2M / 07-06
立即下載72M / 07-06
立即下載105.1M / 07-06
立即下載132M / 07-06
立即下載