Capture¶
Purpose¶
Owns capture-facing abstraction contracts for file saving, image encoding, and texture compositing.
This territory defines the low-level seams used by capture and export workflows without binding those workflows directly to file system, encoding, or pixel-compositing implementations.
Owns¶
- File saving contracts
- Image encoding contracts
- Texture compositing contracts
- Capture output abstraction seams
- The shadow-pass scene contract (IShadowPassContext) — the first narrow slice of the preview facade, consumed by export run coordination
Does NOT Own¶
- Capture workflow execution
- Export orchestration
- Texture compositing implementation
- Image encoding implementation
- File system implementation
- Preview rendering
Allowed Dependencies¶
Capture abstractions may depend on:
- Unity texture types
- Shared primitive data
Capture abstractions should avoid depending directly on:
- Panels
- Preview systems
- Rendering implementations
- Export services
- Infrastructure implementations
Notes¶
Capture abstractions are intentionally small and implementation-agnostic.
Capture workflows consume these contracts so the actual implementation can remain centralized inside rendering, infrastructure, or capture services.
This keeps capture orchestration focused on workflow sequencing rather than low-level output mechanics.
Future Candidates¶
- Texture lifecycle ownership contracts
- Capture validation contracts
- Export result/reporting contracts