Add dedicated skinned rendering, pose restoration, shared Material and Material Instance slots, registry-driven components, Surface/Solari integration, transactional schema upgrades, navigation authoring, documentation, and evaluation evidence.
1.3 KiB
1.3 KiB
ADR 0010: ActorKind and inspector architecture
Status
Partially superseded by ADR 0034.
Context
Inspector panels were routed by if world.get::<LightDesc> and mixed with bevy_inspector_egui entity dumps, which exposed runtime components and diverged from saved scenes.
Decision
- Every savable
LevelObjectcarries a requiredActorKindcomponent (schema v2). - One-shot
ActorKindbackfill runs incrates/scenemigration v1→v2; load-time backfill is a fallback only for unsaved in-memory entities. validate_actorruns on save and rejects invalid component sets per kind. ADR 0034 replaces this authority model with component-owned validation while retainingActorKindas a derived compatibility/display hint.- The default Inspector tab uses
actor_inspectoronly (transform first, then authoring panels). Noui_for_entity_with_childrenin production builds.
Consequences
- Spawn/history snapshots always include
actor_kind. DefaultInspectorConfigPluginis not registered in the editor app;bevy-inspector-eguiremains only forSelectedEntitiesuntil selection is decoupled.- Optional
inspector-debugfeature may add a separate engine ECS tab later—not a second inspector on the same tab.