Document material workflow acceptance
Some checks are pending
CI / Format, lint, test, build (push) Waiting to run
Some checks are pending
CI / Format, lint, test, build (push) Waiting to run
This commit is contained in:
parent
02247f029a
commit
3794faa4aa
@ -25,6 +25,7 @@ Docs for the in-process egui editor (`crates/editor/`). Update this index when a
|
|||||||
| [material-system.md](material-system.md) | Shared Material/Material Instance assets, static/skinned renderer slots, Surface ABI, Solari scope, and migration |
|
| [material-system.md](material-system.md) | Shared Material/Material Instance assets, static/skinned renderer slots, Surface ABI, Solari scope, and migration |
|
||||||
| [collaborative-file-safety.md](collaborative-file-safety.md) | Exact authored-file revisions, Git/read-only status, conflict recovery, and optional ownership providers |
|
| [collaborative-file-safety.md](collaborative-file-safety.md) | Exact authored-file revisions, Git/read-only status, conflict recovery, and optional ownership providers |
|
||||||
| [evaluations/material-renderer-foundation/](evaluations/material-renderer-foundation/) | Live screenshots and verification record for the renderer/material/component foundation |
|
| [evaluations/material-renderer-foundation/](evaluations/material-renderer-foundation/) | Live screenshots and verification record for the renderer/material/component foundation |
|
||||||
|
| [evaluations/material-library-targeted-drop/](evaluations/material-library-targeted-drop/) | Live screenshot and verification record for the docked Material Library and exact reversible surface drops |
|
||||||
| [evaluations/navigation-authoring/](evaluations/navigation-authoring/) | Live screenshots and verification record for navigation authoring and runtime parity |
|
| [evaluations/navigation-authoring/](evaluations/navigation-authoring/) | Live screenshots and verification record for navigation authoring and runtime parity |
|
||||||
| [evaluations/production-readiness/](evaluations/production-readiness/) | Current #50 release-candidate matrix and required clean-checkout, soak, performance, limitation, and independent-signoff evidence |
|
| [evaluations/production-readiness/](evaluations/production-readiness/) | Current #50 release-candidate matrix and required clean-checkout, soak, performance, limitation, and independent-signoff evidence |
|
||||||
|
|
||||||
|
|||||||
@ -0,0 +1,47 @@
|
|||||||
|
# Material Library And Targeted Drop Evaluation
|
||||||
|
|
||||||
|
Date: 2026-07-12
|
||||||
|
Branch: `codex/material-library-targeted-drop`
|
||||||
|
Implementation commit: `02247f0`
|
||||||
|
|
||||||
|
This record captures live acceptance for the docked Material Library and exact viewport
|
||||||
|
Material/Texture assignment workflow. The permanent user workflow lives in the
|
||||||
|
[material-system guide](../../material-system.md), and the implementation plan is
|
||||||
|
[material_library_and_targeted_drop_2026-07-12.plan.md](../../../../.cursor/plans/material_library_and_targeted_drop_2026-07-12.plan.md).
|
||||||
|
|
||||||
|
## Live Editor Evidence
|
||||||
|
|
||||||
|
The image below is a native Wayland capture from the debug editor. The assignment was previewed,
|
||||||
|
committed once, undone, previewed again, and canceled with Escape; the authored scene was not saved.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
The Material Library resolves `surface_tint_instance` through its base Material and sparse
|
||||||
|
overrides. While the pointer is over the viewport, the green card names `Ground / Surface`, the
|
||||||
|
inspector reflects the transient material, and the scene-usage section identifies the exact actor
|
||||||
|
and surface. The preview does not push history or dirty the scene.
|
||||||
|
|
||||||
|
## Acceptance Results
|
||||||
|
|
||||||
|
| Area | Result | Evidence |
|
||||||
|
|------|--------|----------|
|
||||||
|
| Catalog workflow | Pass | Window menu entry, persisted bottom dock, search, Material/Instance/Used/Unused filters, grid/list views, resolved instance thumbnail, and details selection |
|
||||||
|
| Exact targeting | Pass | Primitive preview resolves one actor surface; automated coverage resolves one stable renderer slot and one stable brush face |
|
||||||
|
| Feedback | Pass | Neutral acquisition changes to green valid actor/surface feedback; invalid payload and read-only paths are covered by focused tests |
|
||||||
|
| Preview lifecycle | Pass | Live material and usage update without a history entry; Escape restores the exact prior material |
|
||||||
|
| Commit lifecycle | Pass | Release creates one typed history/operator entry; undo restores the prior surface |
|
||||||
|
| Startup hygiene | Pass | Relaunching the authored showcase after visibility-order correction produced no Bevy hierarchy warnings |
|
||||||
|
| Packaged acceptance | Deferred | Explicitly deferred by project-owner direction; no packaged result is claimed here |
|
||||||
|
|
||||||
|
## Automated Verification
|
||||||
|
|
||||||
|
| Command/suite | Result |
|
||||||
|
|---------------|--------|
|
||||||
|
| `cargo fmt --all -- --check` | Pass |
|
||||||
|
| `cargo check --workspace --all-targets` | Pass |
|
||||||
|
| `cargo clippy --workspace --all-targets -- -D warnings` | Pass |
|
||||||
|
| `cargo test --workspace` | Pass |
|
||||||
|
| Editor strict Clippy with `dev` and `hot-reload` features | Pass |
|
||||||
|
| `cargo validate-levels --project .` | 59 dependencies, 5 non-blocking findings, 0 blocking errors |
|
||||||
|
| `cargo bake-navigation --project . --check` | 1 deterministic artifact current |
|
||||||
|
| `git diff --check` | Pass |
|
||||||
BIN
docs/editor/evaluations/material-library-targeted-drop/material-instance-surface-preview.png
(Stored with Git LFS)
Normal file
BIN
docs/editor/evaluations/material-library-targeted-drop/material-instance-surface-preview.png
(Stored with Git LFS)
Normal file
Binary file not shown.
@ -47,6 +47,9 @@ Texture drops target a primitive's base-color texture or one brush face. Direct
|
|||||||
renderer slot are rejected because a renderer slot stores a Material reference; create or edit a
|
renderer slot are rejected because a renderer slot stores a Material reference; create or edit a
|
||||||
Material Instance and assign the texture there.
|
Material Instance and assign the texture there.
|
||||||
|
|
||||||
|
See the [Material Library and targeted-drop evaluation](evaluations/material-library-targeted-drop/)
|
||||||
|
for the live preview, commit/undo, cancel, and source-verification record.
|
||||||
|
|
||||||
Static draw slots and material slots are separate. Removing a static draw retains its explicit
|
Static draw slots and material slots are separate. Removing a static draw retains its explicit
|
||||||
material assignment as an orphan rather than guessing a replacement. Reimport also reconciles
|
material assignment as an orphan rather than guessing a replacement. Reimport also reconciles
|
||||||
slots by stable ID, never by display name. Resolve an orphan explicitly in the renderer inspector.
|
slots by stable ID, never by display name. Resolve an orphan explicitly in the renderer inspector.
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user