在Godot 引擎中,Node2D 是所有2D节点的基础类型,绝大多数2D相关的节点都继承自 Node2D。下面是常见的 Node2D 子节点类型,以及它们的典型使用场景:
- Sprite2D
用途:用于显示一张2D图片(精灵)。
适用场景:需要在场景中渲染静态或动态图片(如角色、背景、道具等)。
- AnimatedSprite2D
用途:用于播放帧动画(多张图片按顺序切换)。
适用场景:角色走路、怪物攻击等需要帧动画的对象。
- TileMap
用途:用于大规模的格子地图(瓦片地图)管理和渲染。
适用场景:RPG、平台跳跃、策略等需要大面积地图的游戏。
- Line2D
用途:绘制折线、曲线。
适用场景:画轨迹、路径、激光、连接线等。
- Polygon2D
用途:绘制任意多边形。
适用场景:自定义形状的区域、特效、UI装饰等。
- CollisionShape2D / CollisionPolygon2D
用途:为物体添加碰撞区域。
适用场景:需要物理碰撞检测的对象(如玩家、敌人、障碍物)。
- Area2D
用途:检测区域内的物体进入、离开、重叠等事件。
适用场景:触发机关、拾取道具、检测攻击范围等。
- RigidBody2D / StaticBody2D / CharacterBody2D
用途:实现2D物理效果。
RigidBody2D:受物理引擎控制的刚体(可被力推动、碰撞等)。
StaticBody2D:静态物体(不动但可碰撞,如地面、墙壁)。
CharacterBody2D:用于角色控制,带有专用移动API。
适用场景:需要物理运动、碰撞的对象(如主角、敌人、箱子等)。
- ParallaxBackground / ParallaxLayer
用途:实现视差滚动背景。
适用场景:平台跳跃、横版卷轴等需要多层背景滚动的游戏。
- CanvasLayer
用途:分层渲染2D内容,常用于UI。
适用场景:HUD、界面、始终显示在最上方的内容。
- Light2D
用途:2D光照效果。
适用场景:烘托气氛、制作灯光特效。
- Path2D / PathFollow2D
用途:路径和沿路径移动的节点。
适用场景:敌人巡逻、轨道运动、导弹跟踪等。
节点类型 主要用途 典型场景
Sprite2D 显示图片 角色、道具、背景
AnimatedSprite2D 帧动画 角色动作、爆炸等
TileMap 瓦片地图 RPG地图、关卡
Line2D 画线、路径 轨迹、激光、连接线
Polygon2D 多边形 区域、特效、UI装饰
CollisionShape2D 碰撞形状 物理检测、障碍物
Area2D 区域检测 触发器、拾取道具
RigidBody2D 物理刚体 可推动物体、弹跳球
StaticBody2D 静态物体 地面、墙壁
CharacterBody2D 角色控制 玩家、NPC
ParallaxBackground 视差背景 多层滚动背景
CanvasLayer 2D分层 UI、HUD
Light2D 2D灯光 光源、特效
Path2D
/PathFollow2D
路径、沿路径移动 敌人巡逻、轨道运动