身為一名開發人員,使用遊戲引擎可讓您將精力集中在建構遊戲,而不用建構一整套的技術堆疊。
善用 Android 開發工具
無論使用哪種遊戲引擎,Android 開發工具都能協助您開發 Android 遊戲。Android Studio 提供以下工具供您使用:
- 使用系統、CPU 和記憶體分析器檢查遊戲效能
- 檢查遊戲套件或應用程式軟體包的內容
- 整合 Android SDK 和 NDK 的其他功能
Android GPU Inspector 可顯示遊戲的轉譯效能,並使用影格擷取功能,協助您深入瞭解轉譯影格的詳細資訊。
評估引擎
考慮在 Android 上使用遊戲引擎時,必須評估遊戲是否符合 Google Play 相關規定,以及是否支援所需的 Android 功能。確認遊戲引擎符合下列常見規定。
Google Play 相關規定
自 2021 年 8 月起,Google Play 要求所有 Android 應用程式都必須以 Android App Bundle 的形式提交,並且使用 30 以上的目標 API 級別。請確認要使用的引擎符合這些規定。
應用程式內購
如果遊戲設計使用了應用程式內購,請確認引擎是否支援 Google Play 帳款服務程式庫 (GPBL)。視引擎而定,GPBL 可能已直接整合到引擎中,或者也可透過外掛程式存取。
Google Play Core 功能
Google Play Core Library 提供 Google Play 商店的執行階段介面。Play Core Library 可執行的作業如下:
- 通知使用者應用程式更新
- 下載及存取資產包中的資料
- 要求應用程式內評論
如要使用任何一種功能,請確認引擎是否可以直接使用 Google Play Core Library,或是要透過外掛程式才能使用。
應用程式權限
有些 Android 功能需要先取得使用者同意,才能供遊戲使用。您可以使用 Android 權限系統要求存取這些功能。如果您的遊戲需要權限,請確認引擎可以在專案選項中使用某種方法來指定權限,或允許您自訂應用程式資訊清單以納入必要權限。
通知
當使用者沒有在玩遊戲時,系統會使用 Android 通知功能來通知或傳送訊息給使用者。如果這項功能對遊戲來說十分重要,請確認引擎是否支援傳送和處理通知。
引擎資源
下列商業和開放原始碼遊戲引擎可以為 Android 提供完善的支援。我們針對每個遊戲引擎提供了 Android 設定引擎專案的指南,以確保在 Android 裝置上執行時,可提供優質且引人入勝的使用者體驗。
Defold
Defold 是一個開放原始碼引擎,使用 Lua 程式設計語言做為指令碼語言。Defold 可以為 2D 遊戲和圖像提供廣泛的支援,並且內建了 Particles、Sprites、Tilemaps 和 Spine 模型的支援功能。雖然 Defold 採用 2D 視覺技術,但支援 3D 轉譯引擎,並支援轉譯 3D 模型和網格,以及自訂材質和著色器。內建物理支援功能,並提供 2D 或 3D 物理選項。Defold 以視覺編輯器為基礎,針對遊戲場景和物件提供了版面配置和屬性工具。Defold 編輯器包含整合式指令碼編輯和偵錯功能。Defold 引擎可透過外掛程式系統支援原生程式碼。
指南
Godot
Godot 是一款開放原始碼引擎,適用於 2D 和 3D 遊戲。這款引擎支援各式功能,包括 2D Sprite 和 Tilemaps,以及具有實體轉譯和全域照明的 3D 模型,並內建支援 2D 和 3D 物理的物理系統。Godot 提供多種程式設計語言選項,包括自訂 GDScript 語言、C# 8.0、C++ 和視覺指令碼。Godot 引擎專案是以核心 Scene 和 Node 物件建構,其中包含用於建立及編輯這些物件的視覺編輯器。編輯器也支援 GDScript 語言的整合式編輯和偵錯功能。
指南
Unity
Unity 是一款擁有許多遊戲的商業遊戲引擎。Unity 是專為 2D 和 3D 遊戲開發而設計。無論是基礎的 2D Sprite 遊戲,還是大型複雜 3D 世界的遊戲,都能使用 Unity。Unity 提供多種轉譯器選項,包括專門為了在行動裝置硬體上呈現高效能 2D 或 3D 圖像所設計的 Universal Render Pipeline。Unity 使用 C# 程式設計語言,支援透過外掛程式與原生程式碼互動。由於其超高人氣,Unity 擁有各式各樣的官方和社群資訊,以及教育資源。Unity Asset Store 由 Unity 營運,是一個預建藝術與程式碼資產的大型市集,提供免費和付費資產,可供 Unity 專案使用。
指南
- 使用 Unity 進行 Android 開發作業
- 使用 Unity 建立 Android App Bundle
- 整合 Play Asset Delivery
- Unity 手機遊戲的亮度
- 將 Unity 和 Android Performance Tuner 搭配使用
Unreal
Unreal Engine 4 是一款商業遊戲引擎,專精於建立複雜圖像的高級 3D 遊戲。Unreal 包含了一個視覺編輯器,可用於編輯遊戲等級,和匯入的模型和素材資產一同使用。Unreal Engine 4 不會使用內建指令碼程式設計語言。Unreal Editor 提供名為 Blueprints 的視覺指令碼系統,可用於建構遊戲和介面邏輯。遊戲功能也可以透過 C++ 程式碼來實作。Unreal 引擎的開發公司 Epic Games 經營了 Unreal Engine Marketplace,這是專為 Unreal Engine 資源打造的數位店面。Unreal Engine Marketplace 擁有各式預建與程式碼資產,提供免費和付費資產,可供 Unity 專案使用。Android Game Development Extension 可用於在 Android 上執行的 Unreal 專案進行偵錯。
相關資訊請見「利用 Unreal 進行 Android 開發作業」。