整合營銷服務商

          電腦端+手機端+微信端=數據同步管理

          免費咨詢熱線:

          避坑寶典:如何選擇HTML5游戲引擎

          生手游市場已是紅海,騰訊、網易等寡頭獨霸天下,H5游戲市場或將成為下一個風口。據筆者所知,很多H5游戲開發團隊由于選擇引擎不慎導致項目甚 至團隊夭折。如何選擇適合團隊和項目的引擎,筆者通過學習和項目實踐,總結微薄經驗,供大家參考,非技術人員也可以將本篇內容作為引擎選擇的重要關注點。

          選擇H5游戲引擎的思考維度

          1、開發語言的支持

          2、2D、3D、VR的支持

          3、性能

          4、引擎的應用廣度

          5、設計理念

          6、工作流支持力度

          7、商業化成熟案例

          8、學習資源與技術支持能力

          首先,我們要知道,當前主流的游戲引擎有哪些。由于H5引擎有很多,筆者在這里進行了精心的篩選,過濾掉不支持webGL的引擎,以及封裝了第三方渲染內核的JS框架,和不能直接在瀏覽器中運行的JS引擎。

          為什么要過濾掉這幾種呢,首先,沒有自己的渲染內核,僅僅是基于第三方的內核作的API封裝,筆者很擔心可持續的性能優化和維護能力。另外,不能在 瀏覽器中直接運行的JS引擎,將限制H5游戲跨平臺的交互能力。還有, 筆者非??春脀ebGL模式,認為webGL模式才是H5引擎的未來。原因有幾 點:

          第一、性能,webGL模式遠超Canvas數倍。DOM模式就不適合用于真正的游戲開發,更不用提。

          第二、3D方向,webGL模式理論上可以制作2D和3D游戲,Canvas和DOM模式下只能制作2D游戲。

          第三、普及率,webGL的普及率已經非常高了,尤其是支持webGL的騰訊TBS-Blink內核已在4月19日發布,并逐步在微信、QQ空間、QQ瀏覽器、手機QQ等APP中采用靜默安裝方式全面升級。這個普及率在國內帶來的影響,;你懂的……

          1、選擇H5游戲開發語言

          擁有廣泛開發者的H5游戲開發語言共有三種,分別為Flash AS3、TypeScript、JavaScript。其中Flash AS3、 TypeScript均屬于面向對象的高級腳本語言,通過編譯器將原項目代碼編譯成JavaScript代碼文件運行于瀏覽器之中,面向對象的高級語言無 論是項目開發管理,還是項目開發的工具環境的成熟度都明顯優于JavaScript腳本語言,尤其是中大型項目方面,AS3等高級語言的效率會更高。

          從上圖看出,支持JavaScript語言的引擎更多,由于AS3語言的編譯器為Layabox引擎推出的,因此采用AS3作為開發語言的僅有 Layabox引擎。筆者建議在開發中大型游戲項目的時候,采用TypeScript或者是Flash AS3語言進行開發。如果是小型游戲,任選其一即 可。

          2、引擎的未來延續能力

          選擇一個引擎,并不是簡單的認為,滿足眼前夠用就可以了,引擎的未來延續能力也是很重要的,這個項目是2D,下個項目想開發3D,如果引擎不支持怎 么辦?去換個引擎?如果VR的機會來了,再想發布VR版本,這個引擎不支持,需要重新開發嗎?等等問題,作為開發者盡可能要提前想好。

          通過上圖,可以看出,即便是在支持webGL的H5引擎里,有只面向2D游戲的,也有只面向3D游戲的,同時支持2D、3D、VR的H5引擎,從目前看只有Layabox與Egret引擎。

          3、性能是核心需求

          性能是H5游戲面臨的核心門檻,也是很多H5游戲不被專業玩家認可的重要原因之一。游戲卡頓,不流暢,這樣的產品體驗很難在激烈競爭中生存下來。

          H5產業早期的普及階段即將過去,游戲品質在迅速提高,品質中包括精細的美術和炫酷的動畫等。在復雜的游戲項目面前,上述種種元素,其流暢體驗度對游戲引擎是極大的考驗。所以選擇性能優秀的引擎是保證品質的最重要基礎,一定要謹慎。

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

          在webGL的2D渲染性能方面,pixi.js的性能處于當前的頂級。在webGL的3D渲染性能方面,Three.js非常優秀。在 runtime方面Cocos2d-js也有著原生級的表現,經過對比,筆者認為Layabox性能的綜合實力最強,在各個渲染領域都保持在HTML5引 擎的頂級水平。當然,上圖僅作為參考,對于任何號稱某個引擎性能最牛的論調,一定要親自進行性能DEMO的測試對比,而不要輕易采信。

          由于性能是游戲最核心的需求,筆者這里再多說一句,大型項目在系統復雜度、UI復雜度、動畫顯示數量和種類等方面與小型游戲項目完全不在一個量級。 會涉及到比小游戲更復雜的性能優化、內存管理、資源管理等需求,如果選擇了小馬拉大車的低性能引擎,項目夭折可能性非常大,除非最后項目開發者花大量時間 自己優化引擎。所以性能差一點,就會導致結果差很多,不可主觀想象。

          4、與引擎的應用廣度

          隨著H5游戲品質提升,在其他領域也具備一定的競爭力和價值,一次開發可發行各個領域版本,已成為日漸明確的需求,這里面包括發行原生APP手游和 PC的flash頁游需求,大統一的引擎時代即將來領。目前最火爆的H5游戲《傳奇世界H5》據說有40%的收入來自PC網頁。

          發布PC頁游時,由于PC瀏覽器目前對HTML5兼容性不足70%,用戶損耗很大,頁游聯運平臺可能會拒絕或放量很少,只有采用能同時發布Flash版本的引擎,才能解決這個問題。

          5、設計理念與定位

          設計理念是個比較大的話題,也是個很重要的引擎選擇因素,比如引擎是要專注移動端,還是要面向全平臺多端游戲市場。是注重性能,還是注重工具鏈等等。深入了解不同引擎的理念與定位,才能更好的與游戲產品進行結合。

          上圖內容僅作參考,詳情建議去各引擎官網深入了解。

          6、工作流支持力度

          作為商業級開源引擎,工具鏈的提供與支持也是一種選擇考量要素,比如UI編輯器、粒子編輯器、骨骼編輯器、場景編輯器等等,如果引擎方直接提供或支持,那么將會較大的提升研發效率。本文中提到的7個引擎,只有Egret、Layabox、Cocos2d-JS這三個引擎,在工具鏈方面提供足夠全面的支撐。

          7、是否有成熟的商業案例

          怎么證明引擎是成熟的?一定要有成熟的商業案例,一般引擎的官網上都會有游戲案例介紹,我們在選擇引擎之前要進行深入體驗,包括:商業案例的數量、 商業案例的種類、穩定性、流暢度(要在低端機里體驗)、項目復雜度、項目相似度等。如果有一些大型成功案例背書會相對安全可靠些。從目前的行業案例來看,Layabox引擎的MMORPG《醉西游》、重度動作游戲《獵刃2》、大型模擬經營游戲《夢幻家園》等無疑是H5引擎技術的最高 水準代表作。但是從卡牌、掛機等類型的付費游戲總體數量來看,Egret引擎明顯占優,充分說明該引擎的市場宣傳力度更勝一籌。

          8、學習資源與技術支持能力

          能提供什么樣的學習資源,以及技術支持,對于開發者也是重要因素,如果你是技術大牛,只想使用輕量的第三方渲染內核。那么2D游戲,pixi.js 無疑是首選。3D游戲,筆者推薦Three.js。但是這兩種引擎的學習資料都比較稀少。筆者認為學習資料的完善,以及在學習過程中的技術支持力度,將會 很大的幫助你解決引擎使用中的問題。所以,API完善,DEMO完善,文檔完善,社區的響應速度,交流氛圍,以及QQ技術支持等,都可以作為你選擇引擎的 因素考量之一。

          9、頁游移植產品的引擎選擇

          目前像《醉西游》等優秀H5產品是Flash頁游或手游移植而成,移植類的產品在選用引擎時要注意,代碼是否可以直接移植?如果可以,那將節省大量 的開發成本。比如Flash AS3開發的2D或3D頁游或手游,可以把邏輯與算法代碼直接拷貝移植到Layabox引擎項目中,開發速度提高數倍。

          寫在最后:最后提醒一下,千萬不要相信某些引擎的單方宣傳,一定要花一點時間去研究實踐,親自制作DEMO去作一作對比,動手體驗到的才是真理。

          針對DEMO測試筆者有幾點建議:

          1、采用一個復雜的UI,特別是復雜列表,比如說沒有分頁的背包列表,背包里放上不同的道具圖片,測試滑動時的流暢度,這塊比較考驗性能,元素越復雜,數據越多,尤其能對比出來性能上的差異。

          2、包含最復雜戰斗部分,不要寫戰斗邏輯代碼,不然會花的時間太長,只需要把戰斗相關的動畫和復雜的元素放在場景中模擬即可,因為H5游戲性能瓶頸通常在于畫面的顯示。

          3、 測試主要目的是看項目在引擎中性能,這是最至關重要的,所以,硬件上,我們要選擇低端安卓手機(比如紅米)進行測試。軟件環境建議使用微信環境測試,首 先,因為微信公眾號是H5的主要渠道之一,其次,微信當前的H5性能低于chrome瀏覽器,在惡劣的環境下更能測試引擎的優劣。

          為市面上唯一一款純HTML5技術而備受矚目的青瓷引擎(QICI Engine),在經歷了一個多月的封閉測試之后,近日全新0.95版本正式發布。據悉,該版本的青瓷引擎(QICI Engine)已具備了正式開發游戲的條件,不但保持了已有的專業HTML5引擎核心要素,對于HTML5游戲的開發服務及性能上亦進行了強化,同時還為開發者量身打造了上百個示例工程,降低學習成本,入門更加輕松。

          在此之前,青瓷引擎(QICI Engine)以“讓天下沒有難做的游戲”為口號,出席了各大移動游戲展會及HTML5峰會,從專業的角度以及實例演示,闡述了“真正HTML5引擎究竟應該是什么樣的”,吸引了大批開發者的關注。那么,這樣一款純HTML5技術的游戲引擎究竟能為開發者帶來什么?0.95版本又解決了哪些問題?

          【純JavaScript語言開發 快速易用無需安裝】

          青瓷引擎(QICI Engine)極易入門,采用純JavaScript語言架構,即引擎基于JavaScript,工具基于JavaScript,后臺服務基于Node的JavaScript,這樣的架構體系使得系統內部各個組件無縫融合,并最大化的減低了對開發人員的要求,只要懂JavaScript即可開發游戲,又可自定義擴展開發工具和后臺服務的插件。另外,青瓷引擎無需插件和客戶端安裝即可在瀏覽器下運行,甚至在平板和手機上亦能做開發工作。而在0.95版本中,更是新增了上百個示例工程,為開發者的學習保駕護航。

          【可視化操作 一站式集成 】

          目前市面上有些HTML5引擎,只有簡單的制作工具和一堆難懂的渲染API,要做出一款普通的游戲需要耗費較多的精力來開發配套工具,這對大部分普通開發者來說成本難以承受。

          青瓷引擎(QICI Engine)是專為游戲開發而生的,采用的是可視化的一站式開發框架,沒有復雜瑣碎的插件,是為游戲量身定做的所見即所得的集成式開發工具,擁有UI控件、自適應分辨率布局系統、曲線動作編輯器、圖集打包等工具,通過簡單的拖拽都可以實現很多復雜的功能。最大程度簡化開發者的操作。

          同時,游戲數據也均為可視化,并且可以直接進行修改。游戲引擎還支持excel配置,游戲的數據、數值甚至一些規則都是可以通過excel表格直接配置。而曲線動作編輯器方面,策劃或美工可以直接完成界面打開的動畫、界面關閉動畫、場景切換效果等等一系列界面動作。在0.95版本中,也更加完善了中文API文檔和用戶手冊,給開發者帶來了極大的便利。

          【全套通用組件庫解決方案 自定義編輯器插件】

          青瓷引擎(QICI Engine)的編輯器工具完全基于青瓷引擎Widget全套自家通用組件庫解決方案搭建而成,不依賴市面上各種層次不齊的通用組件解決方案,青瓷引擎 Widget組件庫包含了樹表等豐富的常規組件,以及靈活組件布局功能,組件風格操作模式統一,并且極其高性能,完全能達到和Native組件媲美的高負載和可操作性,這也是青瓷引擎編輯器工具敢于完全基于HTML5開放游戲引擎工具的根基,這樣的架構很好的和青瓷引擎融合一體,無需任何插件,即可無縫的查看游戲對象層次結構和調試,并且用戶可非常容易的基于青瓷引擎 Widget組件庫擴展自定義編輯器插件。

          青瓷引擎(QICI Engine)始終致力于開發者的核心體驗,性能與高效一直是研發過程中的重中之重,伴隨青瓷引擎0.95版本的到來,除了修復BUG外,還新增TiledMap支持,在性能上面也有著更加卓越的表現。

          關于青瓷引擎(QICI Engine):

          青瓷引擎(QICI Engine)由廈門青瓷數碼十幾年實際游戲開發經驗總結、提煉,汲取Unity3D大部分的優點,采用純HTML5技術和JavaScript語言,提供一站式2D游戲開放框架及專業的編輯器工具,是一款高性能、高效率,更貼合實際,更親近程序、美術和策劃等開發人員的真正意義上的HTML5引擎。青瓷引擎將以開源和免費的形式發布。

          頁游戲開發通常使用不同的開發框架和技術棧,以創建各種類型的游戲,從簡單的HTML5游戲到復雜的多人在線游戲(MMO)等。以下是一些常見的網頁游戲開發框架和它們的特點,希望對大家有所幫助。北京木奇移動技術有限公司, 專業的軟件外包開發公司,歡迎交流合作。

          1.Phaser:

          Phaser是一個用于HTML5游戲開發的流行框架,支持2D游戲開發。它提供了許多功能,包括物理引擎、動畫、音頻支持等。Phaser易于學習,適用于快速原型設計和小型游戲的開發。

          2.Three.js:

          Three.js是一個用于創建3D圖形和游戲的JavaScript庫。它建立在WebGL之上,可以在現代Web瀏覽器中創建復雜的3D游戲。它提供了強大的3D渲染能力,用于創建虛擬現實(VR)和增強現實(AR)游戲。

          3.Unity WebGL:

          Unity是一種多平臺游戲引擎,可以輸出到WebGL平臺。Unity提供了廣泛的功能,適用于2D和3D游戲的開發。Unity WebGL可用于創建高質量、跨平臺的網頁游戲。

          4.Cocos2d-JS:

          Cocos2d-JS是Cocos2d游戲引擎的JavaScript版本,用于創建2D游戲。它支持HTML5、Canvas和WebGL渲染,并提供了跨平臺的開發能力。

          5.Babylon.js:

          Babylon.js是一個開源的JavaScript框架,用于創建3D游戲和應用程序。它提供了強大的3D渲染引擎和工具,支持WebGL,并具有易用的API。

          6.PixiJS:

          PixiJS是一個輕量級的2D渲染引擎,用于創建HTML5游戲。它專注于性能和易用性,適用于快速的2D游戲開發。

          7.PlayCanvas:

          PlayCanvas是一個用于創建3D游戲的可視化開發工具和引擎。它支持WebGL和WebVR,適用于創建高質量的3D網頁游戲。

          8.Phaser 3:

          Phaser 3是Phaser游戲框架的升級版本,提供更先進的功能和性能。它支持2D游戲開發,具有現代化的架構。

          9.Panda.js:

          Panda.js是一個開源的HTML5游戲引擎,專注于2D游戲開發。它支持多平臺輸出,包括Web和移動設備。

          這些開發框架具有各自的特點和適用范圍,開發人員可以根據項目需求和技術偏好選擇合適的框架。許多框架提供了社區支持、文檔和示例,以幫助開發人員更容易入門并創建高質量的網頁游戲。同時,還需要考慮游戲的美術設計、音頻、性能優化和用戶體驗等因素,以確保游戲的成功。


          主站蜘蛛池模板: 日韩一区二区三区不卡视频 | 亚洲av乱码一区二区三区香蕉| 一区精品麻豆入口| 无码人妻精品一区二区三区66 | 无码播放一区二区三区| 国产高清在线精品一区小说| 无码人妻精品一区二区三区久久久| 精品日韩在线视频一区二区三区| 久久一区二区三区精华液使用方法| 国产成人一区二区三区视频免费| 极品少妇伦理一区二区| 色窝窝免费一区二区三区| 日韩精品一区二区三区中文| 国产aⅴ精品一区二区三区久久| 国产精品揄拍一区二区久久| 久久精品视频一区二区三区| 亚洲欧洲一区二区三区| 国产精品成人一区无码| bt7086福利一区国产| 亚洲A∨无码一区二区三区| 91福利国产在线观看一区二区| 成人久久精品一区二区三区| 国产免费一区二区三区| 99精品国产一区二区三区不卡| 又硬又粗又大一区二区三区视频| 国产精品成人一区二区| 一区二区免费电影| 亚洲人AV永久一区二区三区久久| 国产成人一区二区动漫精品| 日韩精品一区在线| 爱爱帝国亚洲一区二区三区| 精品人妻无码一区二区色欲产成人 | 日本一区二区三区免费高清在线| 九九无码人妻一区二区三区| 午夜福利无码一区二区| 亚洲午夜一区二区三区| 亚洲另类无码一区二区三区| 亚洲欧美日韩中文字幕在线一区| 国产一区二区成人| 在线视频精品一区| 波多野结衣一区在线|