Visibility¶
Purpose¶
Owns prefab and shadow-catcher visibility control for separated character/shadow capture.
This territory toggles renderer shadow-casting modes and shadow-catcher quad visibility between the two states a "character + shadows separately" export needs, and drives the two-pass (character pass, then shadow pass) capture sequence, without owning export sequencing or capture execution.
Owns¶
- Prefab renderer shadow-casting-mode toggling (visible vs shadow-only)
- Shadow-catcher quad show/hide for capture passes
- Visibility snapshot and restore
- The two-pass character/shadow capture driver (Character/ then Shadows/)
Does NOT Own¶
- Export sequencing / routine execution
- Capture execution and file saving
- Shadow material or shadow-catcher creation (see
Shadow/Materials,Shadow/Utilities) - Panel UI layout
- Preview scene lifecycle ownership
Allowed Dependencies¶
Visibility may depend on:
- Unity rendering APIs (Renderer, ShadowCastingMode, GameObject active state)
- Lightweight collections for snapshot/restore
Visibility should avoid depending on:
- export orchestration systems
- panel/UI systems
- window lifecycle systems
Notes¶
This folder owns how visibility is switched and how the two passes are ordered, not when an export runs.
Export/Animation systems decide: - whether a separated export is requested - how frames/folders are sequenced
Visibility owns: - the reusable visibility toggling - the snapshot/restore lifecycle - the two-pass driver that yields a character pass then a shadow pass
Future Candidates¶
- Keep this territory a reusable helper; the two-pass driver should not become an export owner.
- Avoid embedding folder-layout or routine-sequencing decisions here.
- Maintain restore safety so preview visibility is never left mutated after a run.