unity-scriptableobjects

Installation
SKILL.md

Unity ScriptableObject Architecture

Use ScriptableObject assets to store shared data and decouple systems in Unity 6 — configuration, event channels, and registries that live as project assets instead of being hard-wired into scenes or singletons. Targets Unity 6 (6000.0 LTS).

When to use

  • Use when you need designer-editable config (weapon stats, level data), to share one value between unrelated systems, to decouple senders from listeners via event channels, or to build a runtime registry of active objects — without a static/singleton manager.
  • Use when the project has *.asset data files backed by : ScriptableObject classes.

When not to use: per-instance runtime state that differs per GameObject (that belongs on a MonoBehaviour) — a ScriptableObject asset is shared by everyone who references it. Saving player progress to disk → save-systems. Plain DTOs that never need to be an asset can just be [System.Serializable] classes.

Core workflow

Installs
505
GitHub Stars
351
First Seen
Jun 27, 2026
unity-scriptableobjects — gamedev-skills/awesome-gamedev-agent-skills