Godot 4 入门(02):用一个玩家场景理解节点、场景与实例

一、 节点是有单一职责的积木

Sprite2D 负责显示图片,Camera2D 负责观察画面,之后还会用 CollisionShape2D 描述碰撞。节点不必包办一切;多个节点按照父子关系组合,才形成完整对象。

二、 场景是一棵保存下来的节点树

新建场景,以 Node2D 为根节点并命名为 Player,添加两个子节点:

text 复制代码
Player (Node2D)
├── Sprite2D
└── Camera2D

给 Sprite2D.Texture 设置 icon.svg,把场景保存到 scenes/player/player.tscn。这里的 .tscn 是可读文本场景文件。

三、实例不是复制粘贴

打开 main.tscn,删除原来的 Sprite2D,点击"实例化子场景",选择 player.tscn:

text 复制代码
Main (Node2D)
└── Player
    ├── Sprite2D
    └── Camera2D

再添加两个 Player 实例并移动位置。修改 player.tscn 中 Sprite2D 的缩放,三个实例会一起更新;单独修改某个实例的 Position,则只影响它自己。这正是"模板与实例"的关系。

四、生命周期先记两个节点

  • 节点进入场景树后会收到 _enter_tree()。
  • 自己与子节点准备完成后会收到 _ready()。
  • 父节点被释放时,其子节点也会随之释放。

运行游戏后切换场景面板的"本地/远程",远程场景树展示的是此刻真正运行的节点,排查动态节点时非常有用。

相关推荐
chen_2274 天前
godot做仪表hmi
游戏引擎·godot
一只大鸽子8 天前
游戏开发笔记0-Godot启动
笔记·游戏引擎·godot
Oiiouui9 天前
Godot-GridGame架构DI容器全局联动设计
架构·游戏引擎·godot
wgslucky10 天前
Godot UI管理与使用
游戏引擎·godot
Oiiouui10 天前
Godot-GridGame架构屏幕UI层
架构·游戏引擎·godot
Oiiouui13 天前
Godot-GridGame架构逻辑层与实体/物品层篇
架构·游戏引擎·godot
坐吃山猪13 天前
Godot01-初体验
godot·1024程序员节
Oiiouui14 天前
针对Godot-GridGame(网格游戏)的DI注入+RefCounted数据驱动信号流架构设计的研究(全程开源)
游戏·游戏引擎·godot·1024程序员节
Oiiouui14 天前
Godot-GridGame架构数据层篇
架构·godot·1024程序员节
狂野小白兔1 个月前
AI游戏制作04——Codex 搭配 Godot MCP 全流程教程
人工智能·游戏·godot