最早接觸Lua是在四年前,當時是在上一家公司做微端項目開發,那是客戶端和服務器的邏輯部分都是用Lua來更新處理,最底層的進行的封裝。當時感覺Lua好神奇,語法簡單,而且還更容易理解和維護。但是由于當時所處“地位”的原因,底層代碼的封裝代碼沒能拿來進行研究,倍感遺憾。后來進入87870進行虛擬現實項目的開發,所開發的項目基本上都是在PC平臺上的單機或者弱聯網的游戲,所以有關Lua的學習也因此擱淺。最近公司組織架構調整,時局動蕩卻能抽出時間來進行Lua學習,暗自慶幸。廢話也不多說了,接下來咱們切入正題,進入Lua的世界。
游戲中的熱更新主要包括:游戲資源更新(模型,貼圖,場景,配置信息等)和游戲邏輯代碼更新。因為在IOS中,不支持反射,所以無法直接更新.cs文件,所以使用ULua進行熱更新是最好的解決 方案。
首先我們我們在http://www.ulua.org/simpleframework.html下載Ulua的工程文件,這是一位大神寫好的有關NGUI和UGUI的簡單更新框架,這里我下載的是一個關于UGUI的工程,如下圖:
使用的Unity版本是5.2,下載到本地,然后用Unity打開會彈出下面一個窗口
此時如果你直接運行Unity的話,會有報錯,這是因為你沒有按照上面提示框里的提示進行操作,分別按照上圖中的提示進行操作,然后運行,正確運行后,如下圖:
單機Button按鈕后,會有一個錯誤提示,這是因為你沒有啟動Server,此處的Button按鈕,點擊時會往Server上發送一個消息。在你下載的工程文件下E:/ULua/SimpleFramework_UGUI-0.4.1/Server/Server/bin/Debug文件夾下找到SuperSocket.SocketService.exe,點擊運行,如下圖:
如圖所示,按下“r”鍵,服務器啟動成功,這時,返回unity中,點擊Button按鈕,就會彈出一個對話框,如下圖所示:
這樣Ulua的環境就基本大家完成了。
好了,這一章就寫到這,歡迎大家加入QQ群:280993838 ?;蛘哧P注我的公眾號:
新聞熱點
疑難解答