許多開發者對「遊戲引擎」望而生畏,實則其核心結構並不複雜。本文以「電影拍攝」為隱喻,拆解 2D 手機遊戲引擎的基本模組,並對應至實際程式架構。適合想自建輕量引擎的中小團隊參考。
| 電影角色/物品 | 引擎模組 | 職責 |
|---|---|---|
| 劇本 | 腳本系統 | 定義關卡流程、觸發條件、劇情分支 |
| 導演 | 場景控制器 | 統籌全局:切換場景、指揮實體生成/銷毀、處理輸入 |
| 劇務 | 場景管理器/資源管理器 | 載入/卸載資源、管理資源生命週期、最佳化 I/O |
| 場景/佈景 | 地圖系統 | 地形資料、碰撞資訊、視野範圍 |
| 攝影機/鏡頭 | Camera | 決定可視區域、座標轉換、跟隨目標 |
| 攝影機/底片 | 渲染器 | 將可見實體繪製到螢幕/離屏緩衝 |
| 群眾演員 | NPC/實體系統 | AI 行為、屬性、動畫狀態 |
| 主角 | Player 實體 | 響應外部事件(按鍵)、驅動遊戲邏輯 |
| 外部事件(天氣、打擾) | 事件處理模組 | 按鍵、來電、系統中斷、計時器 |
第二章將深入「場景管理器/資源管理器」的具體實作:資源索引建立、快取策略、I/O 優化、記憶體預算控制,並附參考程式碼(反編譯自商業級遊戲)。