Add tests for scenery surface caching and preview behavior

- Introduced `test_scenery_brick_preview.gd` to validate focused placement and CPU draw-cost for large brick walls.
- Added `test_scenery_surface_cache.gd` to assess texture budget, visual equivalence, and cache invalidation.
- Created `test_scenery_surface_preview.gd` to evaluate adaptive preview selection and placement behavior.
- Implemented various helper functions to measure drawing performance and validate expected behaviors during tests.
- Added unique identifiers for new test files to ensure proper tracking and management.
This commit is contained in:
2026-10-21 11:06:57 -04:00
parent 80ba83b703
commit c1758efd3b
54 changed files with 5941 additions and 526 deletions
+19
View File
@@ -72,6 +72,25 @@ the configured `run/main_scene`.
Keep the prompt and visible Cancel together, leave the mode pill unobstructed, and reuse or
generalize `StageUseTargetCaptureBar` instead of copying its styling.
## Child-facing dialogs and popups
- When a user prefixes a UI/UX question or request with `uiux:` or `uiux,`, route it to the
custom UI/UX agent defined in `.codex/agents/uiux.toml`. Treat that prefix as an explicit
delegation request. The UI/UX agent is read-only; carry its design guidance into implementation
separately when implementation is requested.
- For new or revised child-facing dialogs, popups, and short setup flows, follow the
[Dialog Design Principles](docs/specs/dialog_design_principles.md). Use rounded containers
and controls, clear borders, blue primary actions with bold white labels, comfortable button
spacing, and large readable type. Prefer a visible, labeled action such as Cancel, Done, or
Back; do not make a small corner × the default or only way to close a dialog.
- When a dialog resizes after a tab, filter, or other in-place choice, preserve its current
anchor so the clicked control does not jump away from the pointer. Keep the dialog within the
safe viewport by limiting its height and scrolling content; nudge it only as much as needed
to keep essential controls visible. Avoid recentering after every content change.
- Keep reusable values in `SandboxTheme` or `PropTheme`. The Choose Scenery dialog in
`scripts/shared/ui/asset_selector.gd` and the `popups.asset_selector` tokens are the current
implementation reference. Adapt its layout to each workflow.
## Required addon
- **Scalable Vector Shapes 2D** (v2.27.7) at `addons/curved_lines_2d/`