Skip to content

Interfaces

Purpose

Owns the core rendering, lighting, camera, and volume contracts used throughout Snap Studio Pro.

This territory defines the pipeline-agnostic interfaces that allow Built-In, URP, HDRP, and future rendering implementations to participate in the same preview and capture architecture.

Interfaces represent the foundation contracts used by preview, rendering, capture, and editor workflows.

Owns

  • Camera management contracts
  • Lighting management contracts
  • Rendering management contracts
  • Global volume contracts
  • Dual-camera contracts
  • Dual-lighting contracts
  • Pipeline integration seams

Does NOT Own

  • Camera implementations
  • Lighting implementations
  • Render-pipeline implementations
  • Preview scene ownership
  • Rendering execution
  • Editor UI

Allowed Dependencies

Interfaces may depend on:

  • Unity primitive types
  • Unity rendering types
  • Shared foundational concepts

Interfaces should avoid depending directly on:

  • Pipeline implementations
  • Preview systems
  • Rendering systems
  • Editor panels
  • Export workflows

Notes

Interfaces defines the architectural contracts that allow Snap Studio Pro to remain render-pipeline agnostic.

Built-In, URP, HDRP, and stub implementations consume these contracts while remaining interchangeable from the perspective of higher-level systems.

This folder is one of the primary architectural foundations of the entire editor.

Future Candidates

  • Additional rendering contracts
  • Preview environment contracts
  • Capture-facing rendering seams
  • Future pipeline extension contracts