DataAsset / ScriptableObject system (data + code, lifecycle, Inspector editing)
Current State
No DataAsset/ScriptableObject concept exists. Configuration and shared data must live in code or scene files. Stub component types exist but there is no data-only asset that pairs serialized data with behavior and is editable in the Inspector.
Goal
A DataAsset (Unity ScriptableObject analogue): a GUID-identified asset that bundles serialized data + optional code, is editable in the Inspector , and is referenceable from components and other assets.
Tasks
- Define the DataAsset base type and registration (shares the component-registration mechanism from)
- GUID identity + serialization through the asset database /
.metapipeline - Inspector editing via the reflection property drawers
- Create-from-Asset-Browser flow per registered DataAsset type
- Lifecycle hooks (onEnable/onValidate-style) where applicable
- Reference resolution (components → DataAssets, DataAssets → DataAssets) by GUID
- Document with an example DataAsset
Acceptance Criteria
- A user can define a DataAsset type, create instances from the Asset Browser, and edit them in the Inspector.
- DataAssets serialize/deserialize with stable GUIDs and can be referenced by components.
Related
- (Inspector), (registration), #12 (closed) (DI), #13 (closed) (settings build on this).
Edited by Bruno Massa