小遊戲引擎常見問題解答

Lydiasq發表於2023-02-06

經過近些年的發展,已經有很多手機廠商、網際網路巨頭關注到小遊戲市場,並在自家應用平臺上整合了小遊戲模組,如微信、支付寶、QQ、抖音等。從此遊戲不再只是一個獨立的存在,還可以整合到其他應用中,充當其一部分。與此同時,我們也發現小遊戲的釋出平臺有很多,如果每個平臺都需要針對性的開發,這工程量極大。目前,國內幾家遊戲引擎開發商都紛紛推出了支援小遊戲開發與釋出的遊戲引擎,今天我們就來盤一盤。


近期 FinClip 官方正在舉行小遊戲支援的功能內測,有興趣的朋友可以去看看。


小遊戲與小遊戲引擎的關係

小遊戲現在囊括的範圍包括微信小遊戲、QQ 空間小遊戲、QQ 玩一玩(釐米遊戲)、Facebook Instant Games、各手機廠商的快應用小遊戲,他們都在嘗試著將社交場景和遊戲場景做融合。

我們這裡以微信小遊戲為例,其執行環境是微信小程式環境的擴充套件,在小程式環境的基礎上提供了 WebGL 介面的封裝,使得渲染能力和效能有了大幅度提升。不過由於這些介面都是微信團隊透過自研的原生實現封裝的,所以並不可以等同為瀏覽器環境。

作為小遊戲引擎,可以儘可能簡化開發者的工作量,這樣能夠幫助開發者完成的主要工作包括:

  • 引擎框架適配微信 小遊戲   API,純遊戲邏輯層面,使用者不需要任何額外的修改
  • 編輯器提供了快捷的打包流程,直接釋出為微信小遊戲,並自動喚起小遊戲的開發者工具
  • 自動載入遠端資源,快取資源以及快取資源版本控制

小遊戲引擎選型需要考慮哪些因素

選擇小遊戲引擎一般情況下需要考慮以下幾個方面,其中選擇開發語言、效能、應用廣度這三個重要的因素進行細緻的說明。

  • 開發語言的支援
  • 2D、3D、VR的支援
  • 核心效能
  • 引擎的應用廣度
  • 設計理念
  • 工作流支援力度
  • 商業化成熟案例
  • 學習資源與技術支援能力

1、開發語言的支援

擁有廣泛開發者的小遊戲開發語言共有2種:TypeScript、JavaScript。TypeScript 屬於物件導向的高階指令碼語言,透過編譯器將原專案程式碼編譯成 JavaScript 程式碼檔案執行於瀏覽器之中,物件導向的高階語言無論是專案開發管理,還是專案開發的工具環境的成熟度都明顯優於 JavaScript 指令碼語言,尤其是中大型專案方面。

2、核心效能

效能是小遊戲面臨的核心門檻,遊戲卡不卡頓,流不流暢都是小遊戲開發者首要考慮的問題,只有一個成熟可靠的小遊戲產品才能吸引使用者持續玩下去甚至主動進行社交裂變。

近些年小遊戲品質在迅速提高,包括精細的美術和炫酷的動畫等。在複雜的遊戲專案面前,上述種種元素,其流暢體驗度對遊戲引擎是極大的考驗。所以選擇效能優秀的引擎是保證品質的最重要基礎,一定要謹慎。

在遊戲專案研發開始時,一定要先對複雜的模組做 DEMO 測試,特別是帶背景滾動的遊戲。比如橫屏卷軸遊戲,對幀數穩定性要求極高,如果滿足不了效能上的需求,可能會帶來眩暈、眼花、疲倦等不良體驗。

3、應用廣度

隨著小遊戲開發者對於跨端需要的增長,希望自己開發的小遊戲不僅是在微信中能夠跑起來,還能支援App獨立端、H5頁面等也具備一定的競爭力和價值,一次開發可發行各個領域版本,這就需要小遊戲引擎能夠形成跨端統一的能力。

有哪些小遊戲引擎

如果我們將以上考慮到的因素作為篩選條件,符合小遊戲開發的引擎包括 Cocos2d-JS、Egret、Layabox、Unity是比較符合條件的。我們再透過細緻的優劣勢對比來看該如何幫助我們選型做決定。

1、Cocos

 使用 JavanScript/TypeScript 開發,2010年的時候,能跨平臺開發的遊戲引擎只有Cocos, 大部分都是2D遊戲為主,Cocos 成為了國民手機移動端遊戲引擎,那時很多手機遊戲,都是基於Cocos開發,也讓它迅速了佔領了開發者的市場。

後來隨著手機硬體的發展,3D遊戲越來越多,手遊市場份額慢慢的被 Unity 取代。Cocos 引擎完全免費,包體小,做2D遊戲技術成熟, Cocos Creator 開發工具和 Unity 的易用性一樣,極易上手。

最近2年全新引擎全面支援3D,一次開發能釋出到PC端,Android、iOS、微信、抖音、華為等各大小遊戲平臺。

總結一下Cocos Creator特點:

  • 引擎完全免費、開源、包體小、定製靈活;
  • 引擎開發2D遊戲經過大量驗證,非常適合2D遊戲開發。
  • 全新的3D引擎,能開發3D遊戲,但是還有提升空間。
  • 一次開發多平臺釋出,與傳統引擎不同的是,可以釋出微信、抖音、華為小遊戲多個平臺。
  • Creator 3D引擎生態還不夠豐富, 如第三方外掛等。
  • Cocos H5 遊戲runtime核心在行業做的非常好,可以提供高效的H5遊戲執行方案。

2、白鷺引擎

,開發語言是 JavanScript/TypeScript,白鷺遊戲引擎對於H5遊戲是有著不可磨滅的貢獻,它是最早的H5遊戲引擎,它裡面的很多工具非常好用,到現在還被其他的引擎使用,比如骨骼動畫工具,DragonBones 被廣泛引用到遊戲開發中。

最早一批的 H5 遊戲開發者一定都是使用白鷺。白鷺引擎在 H5 遊戲這個鄰域有著不可磨滅的貢獻。後來白鷺也推出了 Native 平臺,不過發現目前白鷺引擎逐漸落寞。

總結一下白鷺的特點:

  • H5遊戲的先驅,為H5遊戲做了不可磨滅的貢獻。
  • H5 2D遊戲技術成熟,經過很多商業遊戲驗證;
  • 3D功能有,但是商業專案3D遊戲用的比較少。

3、Layabox

 遊戲引擎,使用 JavanScript/TypeScript 開發。H5 剛新起時,H5 跑3D遊戲,很多公司都不看好,認為以H5的效能,不足以跑效果好的3D遊戲, 但是H5遊戲有普通遊戲無法比擬的優點就是不用安裝,點開就可以玩。

那個時候PC頁遊已經發展成熟,同時手機頁遊大規模興起,頁遊依靠FlashPlayer,而到手機上,就沒有FlashPlayer 這個東西,隨之取代的就是H5。

Flash 轉 H5 商業上不上太成功,後來隨著 h5 的發展,直接轉為 H5 3D遊戲引擎,是最早在H5上跑出大型商業3D遊戲的H5 3D引擎, 在H5 3D這塊積累了很多經驗和成熟上線的產品案例,現在80%左右的 3D 微信、抖音、快應用小遊戲都是 laya 引擎做的。

總結一下Laya的特點:

  • 最早的被大規模商業專案驗證的H5 3D遊戲引擎,釋出微信抖音等小遊戲平臺非常成熟。
  • 借用強大易用的Unity編輯器可相容3D資源,如果一個遊戲是Unity開發,你要移植到H5,那麼Laya一定是首選。

4、Unity

, 使用 C# 或 Lua 語言開發。國民 3D 引擎,這個稱號說明了 Unity 在 3D 引擎的市場地位,中小型的遊戲公司做 3D 遊戲,基本都是用 Unity , 很多大公司的遊戲也用 Unity ,AppStore 上面80%的3D遊戲都使用 Unity 遊戲引擎開發。

為什麼 Unity 打敗了眾多高手,成為國民遊戲引擎,我們也好好的說一下。時間回到2010年左右,當時頁遊比較火,Unity那個時候引擎的定位是能開發PC端遊和頁遊的遊戲引擎。

隨著手遊時代來臨,市場急需一個3D遊戲引擎,能一次開發多平臺釋出到 Android、iOS、微信小遊戲等 , 而 Unity 成為了當時唯一的3D遊戲引擎解決方案。和手遊市場一起,Unity實現快速增長。

Unity 能成為國民引擎還有一個很重要的原因,就是對初學者很友好,很方便就可以上手,極大的降低了3D遊戲開發難度,Unity 引擎的市場份額越來越大,技術人才、SDK、第三方外掛、技術資料等也越來越完整。

總結一下 Unity 的特點:

  • 能製作精美的 3D 遊戲畫面,和定製渲染管線,畫面效果不如 UE4。
  • 能製作各種型別的 3D 遊戲上線,每種型別的遊戲都被商業專案驗證過。
  • 完整的生態,一次開發多, 平臺釋出。
  • Unity 不開源, 需要支付授權費才可以修改引擎程式碼, 釋出後也要付授權費。
  • Unity 開發2D遊戲相對包體過大。

最後

目前,市場上的 H5遊戲引擎有很多,很難直接去一分高下。每個引擎都有自己的特性與優勢,適用的場景自然也有所不同。

對於專注於小遊戲公司,使用最多的是 Cocos creator 和 Layabox,其中又要屬 Cocos creator 最多。

對於中小型以上的遊戲公司,使用最多的是 Unity,也是目前市面上使用最廣的遊戲引擎,也是使用人員最多的引擎。

現在很多人對於小遊戲的第一印象是微信小遊戲,但實際除了微信小遊戲,其他渠道上投放小遊戲所帶來的流量也有不少,例如抖音、淘寶、 FinClip等平臺。其中投放到 FinClip的小程式遊戲有個特別之處:只要開發小程式後適配 FinClip 平臺,並在第三方 App 中整合 FinClip SDK 即可實現在第三方 App 中執行小遊戲,App 可以是自己的,也可以是外部其他廠商的。這就意味著更廣闊的小遊戲價值,不限於幾大主流平臺,觸達最廣闊的使用者群體,最終實現最大的價值。

對於小遊戲引擎你還有什麼想法?歡迎在評論區討論。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70023421/viewspace-2934088/,如需轉載,請註明出處,否則將追究法律責任。

相關文章