Skip to content

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