開發者眼中的 HarmonyOS 遊戲生態:有紅利也有挑戰

{"type":"doc","content":[{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"作者|羅燕珊"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"編輯|蔡芳芳"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"新平臺的誕生,往往意味着新的機會。"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"儘管這兩年國內遊戲政策不斷收緊,但鴻蒙的到來,依然讓不少小型休閒遊戲開發者躍躍欲試,而隨着遊戲引擎開始支持 HarmonyOS,HarmonyOS 的遊戲生態或將開啓新的局面。"}]},{"type":"heading","attrs":{"align":null,"level":2},"content":[{"type":"text","text":"鴻蒙平臺的“新紅利”"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"“提前入駐平臺,就可能獲得前期的紅利。”從事遊戲開發十多年的黎瑾(化名)話語中帶着一絲無奈。"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"2020 年 12 月華爲面向開發者發佈 "},{"type":"link","attrs":{"href":"https:\/\/www.infoq.cn\/news\/xXF02ZoSyjePNr6T3m0K","title":"xxx","type":null},"content":[{"type":"text","text":"HarmonyOS 手機 Beta 版"}]},{"type":"text","text":",緊接着是首屆 HarmonyOS 開發者創新大賽的舉辦。黎瑾此前一直對 HarmonyOS 很期待,今年上半年,當朋友提議做個鴻蒙應用的時候,大家很快一拍即合,組隊參賽,將之前開發的一款微信小程序遊戲移植到了HarmonyOS 上。"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"但出乎意料的是,移植並沒有大家想的那麼簡單。比賽那會很多引擎都還沒適配HarmonyOS,所以很多東西需要從底層開始搗鼓。後來即使解決了技術問題,得以完成比賽作品並收穫獎項,黎瑾卻遭遇遊戲政策的再度收緊,其開發的遊戲因爲缺乏版號的原因暫時上不了應用商店。"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"他表示,去年像他們這類廣告版遊戲(不含應用內購,依靠廣告變現)的休閒遊戲,只需要有軟著(《計算機軟件著作權登記證書》)就行。但今年即使是廣告版本也需要有版號,而版號只能是有公司資質的纔可以申請,並且申請審覈週期長。像他們這些因興趣愛好才組到一起的小團隊,背後自然也沒有公司主體。"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"雖然應用上架遇到些阻滯,黎瑾表示還是會持續關注 HarmonyOS,看看有沒有辦法在政策不改變的情況下,進入華爲應用市場的 HarmonyOS 精品遊戲陣營。"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"“平臺發展前期基本上是靠個人開發者去慢慢發展起來的,據我觀察,像微信小遊戲,第一批上線的好多遊戲雖然質量參差不齊,但多數都是個人開發者做出來的。”黎瑾感慨道,“HarmonyOS 一開始就已經跟知名的遊戲做了兼容,玩遊戲畢竟是很多人的選擇,如果沒有遊戲,對一個生態的影響確實很大。”"}]},{"type":"heading","attrs":{"align":null,"level":2},"content":[{"type":"text","text":"遊戲開發和其他應用開發是兩碼事"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"一個備受關注的問題是,既然 HarmonyOS "},{"type":"link","attrs":{"href":"https:\/\/www.infoq.cn\/article\/dWsDz3dxgvW2kobuFz08","title":"xxx","type":null},"content":[{"type":"text","text":"兼容"}]},{"type":"text","text":"安卓應用,那還有再開發鴻蒙版的必要嗎?"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"黎瑾給出的回答是“有必要”,因爲“鴻蒙設備開放了不少設備能力,比如屏幕流轉,遊戲性能也可以得到提升。”"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"但他也直言,對於App開發商來說,開發鴻蒙版需要很高的成本,應用的開發技術比較多,尤其如果是原生開發,很多功能需要重新寫,而如果使用跨平臺的技術解決方案,則需要等適配。但遊戲應用還不太一樣,現在的遊戲開發基本都離不開引擎,若引擎沒有適配鴻蒙系統,那遊戲開發者就需要從底層做起,比如可能從 Open GL、Web GL,還有一些相關的技術從頭開始寫。"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"黎瑾原本做的小程序遊戲是基於 Cocos Creator 引擎開發,剛開始打算直接將其移植到 HarmonyOS 的時候,尋思研究一下 Cocos Creator 的底層適配然後移植會比較簡單,但研究了兩三天後發現並沒有預想中那麼容易,需要了解大部分的底層架構以及適配代碼,工作量比較大。當時離比賽結束只剩下兩個月,每個人都是利用業餘時間去開發,考慮再三,黎瑾下決心不移植,直接原生開發。"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"在原生開發的過程中,黎瑾等人本來選擇用 JavaScript 開發,因爲 Cocos Creator 引擎是用 JS 作爲腳本語言,所以大家想着如果能直接移植就可以省不少工作量,渲染層可以用 WebGL。但當把遊戲所需的物理引擎改了遍併發布成 JS 版運行時,卻發現不少問題。當時 HarmonyOS 的JS SDK並不完善,渲染時會有拖影和一些不流暢的地方。"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"“這種發佈 JS 版本的方式嘗試了很多次,但每次都還是會發現不少不穩定因素,之後我們就改變了技術方向,使用Java SDK開發。”最後在嘗試了好幾個Java版本後,黎瑾他們終於成功把物理引擎集成到 HarmonyOS 裏面。因爲 Creator 引擎的代碼沒辦法用,加上他們的小遊戲並不複雜,所以團隊自己寫了一套底層的渲染接口和渲染框架,再去結合物理引擎,最後完成了 HarmonyOS 小遊戲的創作。"}]},{"type":"heading","attrs":{"align":null,"level":2},"content":[{"type":"text","text":"開源遊戲引擎先行支持"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"開發一個遊戲,用遊戲引擎來做會簡單得多。因此,來自遊戲引擎的支持對鴻蒙生態來說很重要。雖然在黎瑾參賽那會,主流遊戲引擎還沒有支持 HarmonyOS。但從6月份開始,形勢正在起變化。"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"6月18日,在 HarmonyOS 2.0 發佈半個月後,國產主流遊戲引擎 Cocos "},{"type":"link","attrs":{"href":"https:\/\/www.cocos.com\/cocos-creator-3-2-%E6%9B%B4%E6%96%B0%E8%AF%B4%E6%98%8E%EF%BC%8C%E4%B8%8E%E5%8D%8E%E4%B8%BA%E9%B8%BF%E8%92%99%E3%80%81%E5%AD%97%E8%8A%82%E8%B7%B3%E5%8A%A8%E6%B7%B1%E5%BA%A6%E5%90%88%E4%BD%9C","title":"xxx","type":null},"content":[{"type":"text","text":"發佈"}]},{"type":"text","text":"了 Cocos Creator 3.2 ,並宣佈正式支持 HarmonyOS,成爲全球首個支持 HarmonyOS 的遊戲引擎。在 3.2 版本,Creator 支持一鍵將遊戲打包爲 HarmonyOS 應用。這意味着未來很多開發者可以直接基於 Cocos 引擎開發 HarmonyOS 原生遊戲,開發效率將大幅提升。"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"Cocos 引擎 CTO 林順告訴InfoQ,支持 HarmonyOS 算是他們團隊未竟夢想的延續。"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"“可能很多人都不知道,其實早在王哲和我決定出來創業之前,‘Cocos’引擎是服務於國產手機操作系統‘WoPhone’的一個內部子項目,目標是爲操作系統引入遊戲內容,後來因爲‘WoPhone’手機操作系統的資源投入跟不上發展需求,引擎項目需要被暫停,我們覺得很可惜,纔將‘Cocos’引擎項目拆分出來獨立融資,走上了引擎獨立發展之路。今天引擎團隊的很多核心成員都還是當年國產操作系統的項目核心成員,主要工作職責都是操作系統的研發,對自主產權的操作系統有着特殊的情結。”林順說,這成爲了 Cocos 與鴻蒙合作的一個契機。"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"據瞭解,Cocos 與華爲團隊深入配合了半年多的時間,在這個過程中, Cocos 團隊做的工作主要是系統適配、第三方庫編譯適配、引擎啓動流程改造等方面。具體而言,Cocos Creator v3.2 在渲染層通過Open GL ES 2.0&3.0 支持了 HarmonyOS 平臺,集成了 Page Ability,改造了引擎的啓動流程,對接了操作系統的功能,並做了所有第三方庫和引擎對方舟編譯的支持,編譯爲 HarmonyOS 平臺的格式,完整地支持了鴻蒙遊戲的開發。"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"image","attrs":{"src":"https:\/\/static001.infoq.cn\/resource\/image\/1a\/96\/1a10bde6c035abc02bc6550806e79296.jpeg","alt":null,"title":"","style":[{"key":"width","value":"75%"},{"key":"bordertype","value":"none"}],"href":"","fromPaste":false,"pastePass":false}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"雙方配合開發的過程中,華爲的技術團隊會幫助 Cocos 解決一些系統適配性的問題,還有定位一些比較不好調試的技術問題,雙方也會一起討論技術方案。但"},{"type":"text","marks":[{"type":"strong"}],"text":"更多的是“細節上的打磨,持續的優化和改進"},{"type":"text","text":","},{"type":"text","marks":[{"type":"strong"}],"text":"雙方工具鏈的無縫銜接優化”"},{"type":"text","text":",這些纔是真正耗時間的地方。"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"據 Cocos 引擎技術總監凌華彬介紹,對於通用商業遊戲引擎的架構設計,跨平臺是很基本的能力,要求支持一次編碼就可以跨平臺發佈。在 Cocos Creator 支持了 HarmonyOS 平臺之後,基於 Cocos Creator 最新版本的遊戲可以無縫發佈到 HarmonyOS 平臺,且社區內現有的大量遊戲只要升級到3.2版本,即可順利發佈到 HarmonyOS 平臺。"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"但黎瑾也提到,雖然 Cocos 引擎支持 HarmonyOS,但必須要升級到高版本(即 v3.2),而這個升級成本有點高。目前 Cocos Creator 2.0 老版本並不支持發佈成 HarmonyOS 遊戲,這其實對不少遊戲來說是個挑戰。“我們做的遊戲雖然很小,但從 Creator 2.0 升級到 3.0 需要耗費不少功夫,因爲這裏面API接口變動比較大,並且腳本語言移除了對JS的支持,如果之前是用JS寫的腳本,還需要改爲TS。”黎瑾說。"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"據InfoQ瞭解,後續Cocos Creator的低版本也將逐步支持HarmonyOS。"}]},{"type":"heading","attrs":{"align":null,"level":2},"content":[{"type":"text","text":"Harmony遊戲開發的想象空間"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"凌華彬指出,針對HarmonyOS遊戲開發,目前 Cocos Creator v3.2 需要先構建出項目工程,再導入華爲的開發工具 DevEco Studio,纔可以打包出 HAP 格式的安裝包,這樣的話需要在兩個工具間切換,其實對開發者的體驗不是太好。"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"不過他同時表示,這點已經和華爲團隊溝通過,未來"},{"type":"text","marks":[{"type":"strong"}],"text":"華爲團隊會推出新的 DevEco Studio 版本,支持命令行調用的模式,Cocos 引擎也會對應進行適配和升級"},{"type":"text","text":",開發者就可以在 Cocos Creator 的面板裏一鍵打包出 HAP 格式的安裝包,也可以方便地在自己的 CI (Continue Integrate)服務器上做自動出包、自動測試功能,這是很多團隊的剛需。"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"另外,凌華彬強調, HarmonyOS 多設備的協同和流轉能力非常適合 IoT 行業,將帶來全新的交互模式,基於此遊戲行業也會有不一樣的互動模式出現,Cocos 引擎未來會重點去支持 HarmonyOS 的多設備能力,拓展新的應用場景。"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"對於目前市面上鴻蒙版主流遊戲 App 並不多的現狀,凌華彬認爲,任何一個新的事物,都需要一個發現、認識、接受和擁抱的過程。“從我們接觸到的遊戲廠商來看,大家對 HarmonyOS 平臺的發展還是保持高度關注的,社區內更是有不少人已經在嘗試使用 HarmonyOS 平臺獨特的多設備協同能力去構建不一樣的遊戲內容。”"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"“未來,HarmonyOS 平臺必然會成爲重要的移動平臺之一,不僅覆蓋手機和平板,更是會將 XR 設備、車機設備、智慧家電等 IoT 設備串聯起來,提供更廣闊的設備空間和更順暢的自然交互模式,這也給遊戲或者應用內容的交互提供了更大的舞臺,結合更強的遊戲交互能力,勢必會帶來全新的內容和不一樣的應用場景,我們對此充滿期待。”"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"延展閱讀:"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"link","attrs":{"href":"https:\/\/www.infoq.cn\/article\/dWsDz3dxgvW2kobuFz08","title":"xxx","type":null},"content":[{"type":"text","text":"《HarmonyOS 生態,投入還是繼續觀望?》"}]}]}]}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章