Layabox技術講座分享

在這裏插入圖片描述

今天有幸聽了Layabox公司技術負責人做的技術宣講,關於LayaAir 2.0。收穫不少,在此記錄一下。

目前Layabox公司主推LayaAir 2.0,不過還是beta版本,演講者也說了,如果是開發3D遊戲,一定要用2.0;如果是開發2D遊戲,可以選擇1.0或者2.0,前者更加穩定,後者功能和性能更強。

2.0中給我印象比較深的幾大特性:組件化、物理引擎升級、場景管理

先說下組件化。這個功能也是模仿Unity,好處是模塊劃分清晰,所見即所得。事實上,LayaAir很多方面都在學Unity,特別是IDE和工作流這塊。演講者對Unity的開發效率推崇備至,坦言現在LayaAir與其還有很大差距。Laya甚至做了一個Unity插件,支持將Unity中開發好的shader一鍵導出到LayaAir中。這也可以理解爲一種商業策略,吸引更多的Unity開發者轉向LayaAir,或者方便將Unity開發好的手遊移植到H5平臺。

物理引擎升級,演講者強調了這是性能提升最大的一塊。這主要得益於對WebAssembly的使用。WebAssembly顧名思義,是在web開發中用到的bytecode。它屏蔽了ts、js等語言的差異,先編譯再解釋執行,從而提升效率。LayaAir把物理碰撞檢測中的大量計算放在WebAssembly中,極大提升了執行效率。

場景管理,也是模仿Unity的一個功能。好處是切換場景時不用手動釋放資源,會自動清理。如果需要跨場景保留的資源,則可以選擇不添加在場景中。

關於as/js/ts語言的選擇,演講者表示,LayaAir現在對as的支持最好;不過as畢竟是停止更新的語言,LayaAir以後對它的支持也會慢慢淡化,直至脫鉤。在js和ts之間,演講者建議選擇ts,因爲ts的類型健壯,而且ts編譯成js的過程效率很高。

Laya還提供了一個很有意思的功能:LayaCloud。這是爲一些小cp提供的服務端解決方案。具體應用場景:一些簡單的交互遊戲(如IO遊戲)要用到服務端通信,或者幀同步,但是小團隊又沒有時間精力去開發後端框架、部署服務器,這時就可以使用LayaCloud。它將雲服務和服務端框架做了封裝,暴露出簡單的接口。開發者只需用node.js寫簡單的邏輯即可,不用關心下面的技術細節。

演講者還爲我們演示了用LayaAir做的pbr渲染,一個戰士盾牌帶反光的效果,還不錯。這一點有點出乎我的意料,原以爲pbr在H5平臺上跑不起來。據他們說,申請了相關專利,用於保證pbr在H5平臺的性能。不得不說,Laya在3D這一塊的優勢挺大的,市場份額也是遙遙領先其他H5引擎。選擇一款好引擎,對於公司長遠的技術規劃來說也是很重要。

在整個過程中,演講者侃侃而談,說得很實在,對Laya的一些不足也直言不諱。對於我們的提問也是有問必答,熱心交流。相信一個靠譜的負責人帶隊開發的引擎也不會差,這也增加了我們用Laya開發好遊戲的信心。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章