Godot保存数据

112 阅读2分钟

image.png

🧱 StaticBody2D

StaticBody2D 是静态物理体,用于构建不需要移动的环境元素,如墙壁、地面和障碍物。它参与碰撞检测,但不会响应物理引擎的力。

  • 用途:构建不动的环境元素,如墙壁、地面和障碍物。
  • 特点:不会响应物理引擎的力。

🛡️ CollisionShape2D

CollisionShape2D 为父节点提供碰撞形状。它是所有物理体(如 StaticBody2DCharacterBody2D 等)定义碰撞区域的关键节点。

  • 用途:为物理体定义碰撞区域。
  • 注意:在编辑器中调整碰撞形状时,避免使用缩放工具,推荐使用形状的大小调整手柄。

🗺️ TileMapLayer

TileMapLayer 是 Godot 4.x 中用于构建瓦片地图的新节点。它取代了旧版本中的 TileMap

  • 用途:构建瓦片地图。
  • 特点:支持多层次的瓦片布局,适用于构建复杂的地图。

🎮 CharacterBody2D

CharacterBody2D 是用于实现玩家或 NPC 控制的物理体。它不受物理引擎的影响,需要通过代码控制其移动。

  • 用途:实现玩家或 NPC 的控制。
  • 特点:不受物理引擎的影响,需要通过代码控制其移动。
  • 注意:使用 move_and_collide()move_and_slide() 方法来处理碰撞。

🎞️ AnimatedSprite2D

AnimatedSprite2D 是用于播放 2D 动画的节点。它可以使用单独的图像文件或精灵表来创建动画。

  • 用途:播放 2D 动画。
  • 特点:支持使用单独的图像文件或精灵表来创建动画。

🌐 Area2D

Area2D 定义了一个 2D 空间区域。它用于检测其他 CollisionObject2D 节点的重叠、进入和退出事件。

  • 用途:检测区域内的碰撞。
  • 特点:可以用于触发事件,如玩家进入区域时播放音效。

🖼️ CanvasLayer

CanvasLayer 是一个 2D 渲染层,用于将其子节点绘制在独立的层上。它常用于实现 UI、背景和过渡效果。

  • 用途:实现 UI、背景和过渡效果。
  • 特点:可以将子节点绘制在独立的层上,避免与游戏世界的其他元素混合。

🎥 Camera2D

Camera2D 节点会影响当前视口(viewport)的显示内容,通常用于实现视图的平移、缩放、限制等功能。

  • 继承关系Camera2D 继承自 Node2D,因此具有 Node2D 的位置、旋转和缩放属性。
  • 视口注册:摄像机会在其父节点的视口中注册,如果没有父节点,默认注册到全局视口。
  • 激活摄像机:每个视口只能有一个激活的摄像机。可以通过设置 current 属性为 true 或调用 make_current() 方法来激活摄像机。