27 lines
2.1 KiB
YAML
27 lines
2.1 KiB
YAML
name: material-slot-live-edit
|
|
purpose: Verify persistent live Material edits, explicit save separation, and the unified responsive slot widget.
|
|
preconditions: editor_scene contains a primitive and static mesh using a project Material; no editor process is running.
|
|
build_lane: dev
|
|
fixture: assets/materials/pebble_bricks.ron
|
|
steps:
|
|
- Select the primitive using pebble_bricks and expand its material parameters.
|
|
- Drag a scalar control, release it, and observe the surface for at least five seconds.
|
|
- Switch selection away and back, then compare the scalar value and rendered surface.
|
|
- Narrow and widen the Inspector around the responsive threshold.
|
|
- Save the active Material document and observe status and processing indicators.
|
|
- Select a static mesh material slot and compare its slot presentation.
|
|
- Leave the expanded material card idle for five minutes while sampling the editor process GPU memory and terminal diagnostics.
|
|
- Close and relaunch the editor, then reopen the same Material slot.
|
|
assertions:
|
|
- The surface changes continuously, does not flicker back after release, and the editor remains responsive.
|
|
- Selection changes preserve the live value and the compact amber dirty indicator without label overlap.
|
|
- Scalar save becomes clean without a PROCESSING state or a long-running UI operation.
|
|
- Primitive and static-mesh slots use the same compact header and schema-driven parameter layout.
|
|
- Narrow and wide layouts contain every control without overlap, clipping, garbled rows, or redundant diagnostics prose.
|
|
- No Apply, Revert, Ctrl+S hint, inline Explicit label, or inline Source & Diagnostics section appears.
|
|
- GPU memory remains bounded, no repeated egui multipass ID warning appears, and the editor stays alive without a renderer Out of Memory error.
|
|
- Relaunch preserves the saved Material value and rendered result.
|
|
evidence: Target-window captures for dirty-wide, dirty-narrow, saved, and relaunched states plus hashes.
|
|
cleanup: Close the spawned editor and atomically restore pebble_bricks.ron from the runner snapshot.
|
|
invalidates: Material UI, material persistence, or slot-resolution code changes.
|