Objects are node trees
Each component becomes its own child node, and the root node’s type (here CharacterBody2D) decides what the object is.
- Player (GameObject)
- Transform
- SpriteRenderer
- BoxCollider2D
- PlayerController script
- Player · CharacterBody2D + player.gd
- Sprite2D
- CollisionShape2D
Code side by side: GameObject → NodeComponent (MonoBehaviour) → Child NodeTransform → Node2D / Node3D position, rotation, scale


