生活随笔
收集整理的這篇文章主要介紹了
对cocos2dx引擎的改动
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
最近用的引擎版本是cocos2dx-3.8.1-lua代碼, 考慮到以后會開發多款游戲, 所以需要在cocos2dx上擴展一輕量級的框架,封裝常用的游戲模塊,這個框架包括c++工程和lua工程, 思想類似于以前的quick-Cocos2dx框架
為了便于升級引擎,所以盡可能的不對 cocos2dx引擎的代碼做改動, 但是不可避免要完成一些引擎的填坑工作
以下是對cocos2dx引擎的修改點(記錄在此,以后升級引擎同樣要修改):
修改CCLuaStack.cpp中的lua_release_print, lua_print中去掉打印Lua字符串頭, 將\t替換成4個空格(在mac上\t換行有問題)修改mac/simulatorApp.mm 增加輸出日志到文件,設置優先讀取路徑,去掉編譯mac模擬器拷貝腳本和資源的功能, 從優先路徑讀取即可修改mac/ConsoleWindowController.m中的MAX_LINE_LEN MAX_LINES_COUNT 定義擴大輸出日志行數限制修改lua工程配置 將luajit刪除,改為引用lua, ? ?因項目需要一套字節碼android/ios用一套字節碼維護,故暫時放棄luajit方案將lua5.1.4升級為lua5.1.5并移植代碼混淆方案(該方案基于quick3.3)修改binder-generator/targets/lua/conversions.yaml中添加? ? LUA_FUNCTION : "${out_value} = ?toluafix_ref_function(tolua_S,${arg_idx},0);ok &= ${out_value} != 0;" ??這樣可以支持LUA_FUNCTION的tolua導出(很奇怪的是cocos3.8.1去掉了這一行不知道目的何在?)
修改binder-generator/targets/lua/conversions.yaml增加dragonBones支持修改AppDelegate.cpp增加加解密代碼, 修改進入前臺/后臺執行代碼 經邏輯刪除放在lua端,增加發送前臺/后臺事件代碼修改Android工程的Application.mk增加?APP_PLATFORM:=android-19 這樣用ndk10+編譯就不會報錯了修改Android工程mk中的luajit應用改為lua在此基礎上進行了擴展性封裝
輕量級c++框架工程cola ?(包括加密,cjson ios支付,dragonbones, lfs, sqlite, ?native窗體, pbc, lpack)lua框架工程cola (包括常量模塊,打印擴展, 設備相關擴展,方法擴展, label/node擴展 protobuf支持, Cache, 本地存儲支持, 龍骨動畫管理器, 廣播管理器, sdk平臺框架, 資源管理框架及通用接口編寫, lua常用ui btn/list/窗體/界面/場景基類/富文本封裝 ?加密/json解析/action/lua嗲用ocjava統一接口擴展, 不重啟直接刷新界面機制)tools用于編寫各種一鍵化腳本 (包括動畫打包生成腳本, 密鑰證書腳本,配置文件導出腳本, 字體文件生成腳本, android打包簽名上傳腳本, ios打包簽名上傳腳本, 字節碼及加密腳本, ?so/靜態庫生成腳本, tps生成大圖腳本, ?protobuf處理自動生成代碼腳本, tolua綁定腳本)整個項目后續考慮支持
多語言框架支持/ ?增加更新腳本及代碼支持/ ?增量更新差異包支持/ ?sdk接入與完善/ ?日志上傳支持/ ?spine測試與完善/ ?crash分析包支持/ ?shader支持/ ?AI行為樹支持/??pomelo擴展支持/ ? ?
?
轉載于:https://www.cnblogs.com/ColaZhang/p/4922186.html
總結
以上是生活随笔為你收集整理的对cocos2dx引擎的改动的全部內容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。