Godot 引擎教程
免费开源的游戏引擎
第一章 Godot概述
1.1 什么是Godot
Godot是一款免费开源的2D和3D游戏引擎,由Juan Linietsky和Ariel Manzur开发。
1.2 特点
- 完全免费开源
- 节点系统
- GDScript脚本
- 轻量级
1.3 版本
- Godot 3.x
- Godot 4.x(最新)
第二章 界面介绍
2.1 主界面
2.1.1 场景面板
显示项目文件结构。
2.1.2 inspector面板
编辑节点属性。
2.1.3 viewport面板
可视化编辑场景。
2.2 编辑器布局
- 场景树
- 文件系统
- 动画编辑器
第三章 节点系统
3.1 节点类型
3.1.1 2D节点
- Node2D
- Sprite
- AnimatedSprite
- TileMap
- Area2D
- RigidBody2D
- CharacterBody2D
3.1.2 3D节点
- Node3D
- MeshInstance3D
- Camera3D
- DirectionalLight3D
3.2 节点树
子节点继承父节点变换。
第四章 场景
4.1 场景概念
场景是节点的层次结构。
4.2 场景文件
.tscn格式
4.3 实例化
- 拖拽方式
- 代码方式
第五章 GDScript
5.1 基础语法
extends Node
var health = 100
var speed = 200.0
func _ready():
print("Game started")
func _process(delta):
position.x += speed * delta
5.2 变量
- var
- @export
- @onready
5.3 函数
func take_damage(amount):
health -= amount
if health <= 0:
die()
5.4 信号
signal health_changed(new_value)
func die():
emit_signal("health_changed", 0)
queue_free()
第六章 2D游戏
6.1 角色移动
extends CharacterBody2D
const SPEED = 200.0
func _physics_process(delta):
var direction = Input.get_axis("ui_left", "ui_right")
velocity.x = direction * SPEED
move_and_slide()
6.2 碰撞检测
- Area2D
- CollisionShape2D
6.3 动画
AnimatedSprite2D
第七章 3D游戏
7.1 3D节点
- MeshInstance3D
- CollisionShape3D
- Camera3D
7.2 材质
- StandardMaterial3D
7.3 光照
- DirectionalLight3D
- OmniLight3D
- SpotLight3D
第八章 UI系统
8.1 Control节点
8.2 常用控件
- Label
- Button
- TextureRect
- ProgressBar
8.3 布局
- HBoxContainer
- VBoxContainer
- GridContainer
第九章 物理
9.1 2D物理
- RigidBody2D
- StaticBody2D
- CharacterBody2D
9.2 3D物理
- RigidBody3D
- StaticBody3D
- CharacterBody3D
第十章 动画
10.1 AnimationPlayer
10.2 动画状态机
AnimationTree
第十一章 音效
11.1 AudioStreamPlayer
11.2 背景音乐
11.3 音效
第十二章 项目导出
12.1 导出预设
- Windows
- macOS
- Linux
- Android
- iOS
- HTML5
12.2 导出流程
- 添加预设
- 配置选项
- 导出项目
笔记整理:AI助手
更新时间:2026-03-19