由於一些開發者不知道如何去使用和編譯Github上的源碼示例,本篇將引導開發者去使用Github上的DEMO。這對於引擎初學者,快速了解引擎API與引擎示例效果會有著幫助。
一、克隆 LayaAir源碼項目到本地
先安裝好Git環境,不會的可以自行百度搜索一下,這裡就不展開了。然後clone(克隆)LayaAir源碼倉庫到本地。
git clone https://github.com/layabox/LayaAir.git二、通過npm安裝LayaAiri源碼環境依賴包
因為我們需要用到npm安裝一些LayaAir引擎源碼開發編譯的依賴環境。
基礎的Node環境npm,需要提前安裝好。沒安裝好的,要看一下官網文檔,進行安裝:
https://ldc2.layabox.com/doc/?nav=zh-ts-1-0-0
當我們進入clone後的LayaAi源碼本地根目錄後,需要通過命令行環境來安裝依賴包,操作如下圖所示:
然後在命令行下,執行npm install命令,如下圖所示:
由於引擎根目錄中有package.json文件,所以npm install會自動執行安裝package.json中指定的依賴包。
如上圖所示,在安裝的過程會有一個警告,那是安裝依賴包所使用的第三方依賴,可以不用管。不影響使用。
三、引擎使用示例目錄說明
引擎的源碼目錄可以用VSCode打開,示例目錄位於 源碼根目錄/src/samples/ 目錄下,如下圖所示。
在上圖中,index.ts是示例的入口文件,2d與3d目錄分別對應著引擎的2D與3D示例。
由於引擎源碼是TS語言的,所以示例也是基於TS源碼的示例。如果想看AS3與JS示例,可以前往官網的開發者中心,查看線上示例。
示例的資源文件位於源碼根目錄/bin/res/,如下圖所示:
四、如何運行查看LayaAir引擎示例
為了驗證我們的編譯與項目環境沒有問題,我們先把默認的示例給編譯運行起來看一看。
由於引擎源碼目錄中,已經配置好gulp任務,可以直接在VSCode中通過 Ctrl + Shift + B 運行gulp任務(gulp:LayaAirBuild),啟動編譯。如下圖所示:
當然,我們也可以在VSCode中通過F5或者Ctrl + F5,自動啟動gulp任務,進行代碼的編譯。
效果如下圖所示:
無論哪種方式,編譯完成之後,
我們從VSCode終端命令行,通過 cd bin進入bin目錄,然後通過anywhere命令啟動一個web伺服器。
操作如下圖所示:
web服務啟動後,會彈出瀏覽器,打開web服務的根目錄bin,效果如下圖所示:
indexTSC.html是入口頁面,直接點擊就可以打開我們默認的示例。
效果如下圖所示:
如果我們編譯沒有問題,打開indexTSC.html頁面,就會看到上圖一樣的示例效果。
點擊兩個效果列表,我們就可以切換查看到別的示例。點擊下拉列表右側的下箭頭按鈕,可以快捷切換到下一個示例效果。
五、切換官方的3D和2D示例
默認的示例,我們通過切換查看示例效果,會發現官網上的3D示例效果全都有,為什麼沒有2D的呢?
其實是有的,需要修改代碼,切換到2D示例,就可以查看了。
由於運行的代碼入口是index.ts,打開後會發現只有兩行
import{Main}from"./Main";newMain();通過代碼,我們可以看出,默認引入了示例目錄下的main.ts,並實例化了Main類。
這個類,其實包括了Layabox官網上所有的2D與3D線上示例。
我們只需要在實例化Main類的時候,傳入構造方法的參數,就可以切換為2D示例效果。
index.ts修改後的代碼如下所示:
import{Main}from"./Main";newMain(false);再次編譯運行後,效果如下圖所示:
六、切換到指定示例或者自己的示例
如果我們想調試某個指定的示例,或者自己寫的示例。
那直接在入口index.ts中實例化對應的類就可以了。
例如,實例化反射探針的示例,我們就直接去new ReflectionProbeDemo();即可,
編碼效果如下圖所示:
然後,再次編譯運行,效果如下圖所示:
七、如果出現引用路徑錯誤的解決方案
在編寫自定義示例時, 如果出現VSCode自動引用路徑錯誤的現象,如下圖所示:
需要檢查 TypeScript版本,如下圖所示:
推薦使用 3.7.X 版本的TypeScript,可以自動引用補全正確路徑。
END
引擎案例分享:
聊聊電商圈成功的遊戲跨界案例3D研發經驗分享:50多款3D小遊戲的炫稷遊戲創始人程銀斌分享3D研發經驗!3D技術分享:有著30多款3D小遊戲產品的長沙嗨鹿互動科技資深研發工程師分享3D遊戲研發經驗132款3D跑酷極限運動主題的微信小遊戲分享LayaAir引擎78款3D射擊主題微信小遊戲分享,看看玩過幾款!