Godot 是一款開源遊戲引擎,適合 2D 小遊戲、獨立遊戲原型,以及中等規模的 3D 專案。
它的特點是輕量、開源、啟動快,節點和場景系統清楚。對新手來說,Godot 通常比 Unity 更容易入門;對獨立開發者來說,也更容易控制小專案。
先說結論
Godot 入門不要一開始就學所有功能。
更合理的路線是:
- 先做 2D,不急著做 3D。
- 先理解節點和場景,不急著寫複雜架構。
- 先學 GDScript,不急著上 C#。
- 先做一個能開始、能失敗、能重開的小遊戲。
- 再補動畫、音效、UI、關卡和導出。
Godot 適合什麼人
Godot 適合想從零學遊戲開發、想做 2D 獨立遊戲、想快速做玩法原型、不想被大型商業引擎工具鏈壓住的人。
如果目標是大型商業團隊管線、成熟資產商店、行動廣告 SDK 或高規格 3D 畫面,Unity 或 Unreal 仍然更成熟。但如果目標是學習和做自己的遊戲,Godot 很適合起步。
安裝和專案建立
到 Godot 官網下載,解壓後直接執行即可。
第一個專案建議:
- 使用預設 renderer。
- 專案名用英文。
- 路徑不要太複雜。
- 一開始就用 Git。
可以叫:
|
|
先熟悉 Scene、FileSystem、Inspector、Script、2D / 3D 視圖。
核心概念:節點和場景
Godot 最重要的是節點和場景。
常見節點:
Node2D:2D 物件基礎節點。Sprite2D:顯示圖片。CollisionShape2D:碰撞形狀。CharacterBody2D:可移動角色。Camera2D:2D 攝影機。AudioStreamPlayer:播放音效。Label:顯示文字。
場景是一組節點的組合。玩家、敵人、關卡都可以是場景。
|
|
第一個 2D 專案做什麼
建議做一個 2D 閃避遊戲:
- 玩家可以上下左右移動。
- 敵人從邊緣生成。
- 碰到敵人就失敗。
- 存活時間就是分數。
- 有開始、失敗和重新開始。
這能覆蓋移動、輸入、碰撞、生成、UI、Timer、音效和場景重載。
玩家移動
玩家用 CharacterBody2D,掛腳本:
|
|
輸入 action:
|
|
不要在程式裡寫死按鍵,用 action 方便之後支援手把、觸控和改鍵。
碰撞和物理
常用節點:
CollisionShape2D:碰撞範圍。Area2D:檢測進入、離開、重疊。CharacterBody2D:玩家或可控角色。RigidBody2D:受物理力影響的物體。StaticBody2D:牆、地面、固定障礙。
新手記住:自己控制移動用 CharacterBody2D,只做碰撞觸發用 Area2D。
|
|
敵人生成
Godot 場景可以像 prefab 一樣實例化:
|
|
配合 Timer 就能定時生成敵人。
UI、分數和音效
UI 用 Control 系列節點,例如 CanvasLayer、Label、Button、Panel。
簡單分數:
|
|
音效用 AudioStreamPlayer:
|
|
功能能跑只是第一步,音效、閃爍、震動和按鈕狀態會讓玩家感到遊戲有回應。
專案目錄
建議一開始整理:
|
|
場景放 scenes/,腳本放 scripts/,圖片音訊放 assets/,UI 放 ui/。
新手常見坑
- 節點選錯。
- 忘記加碰撞形狀。
- 按鍵寫死。
- 把所有邏輯塞進
Main.gd。 - 第一個專案做太大。
一個完成的小遊戲,比半途而廢的大構想更有價值。
推薦學習路線
- 編輯器基本操作。
- 節點和場景。
- GDScript 基礎。
- 輸入系統。
- 2D 移動。
- 碰撞和
Area2D。 Timer和生成。- UI 和分數。
- 音效和動畫。
- 導出桌面或 Web 版本。
總結
Godot 入門的關鍵不是看完所有功能,而是理解組織方式:節點組成場景,場景組成遊戲,腳本驅動行為,信號連接事件,資源用目錄管理。
從 2D 小遊戲開始,把移動、碰撞、UI、音效和重新開始做完,再去學 TileMap、存檔、狀態機、3D、Shader 和導出優化。