Lighting¶
Purpose¶
Owns lighting-related editor workflows, lighting configuration state, preset persistence, and reusable lighting utilities used throughout Snap Studio Pro.
This territory coordinates stylized lighting workflows while remaining independent from rendering pipeline implementation details.
Owns¶
- Lighting configuration workflows
- Lighting settings models
- Lighting preset persistence
- Lighting editor preferences
- Lighting state tracking
- Reusable lighting utilities
- Light-to-settings mapping workflows
- Shared lighting behaviour helpers
Does NOT Own¶
- Rendering pipeline implementation
- Preview scene lifecycle ownership
- Export orchestration
- Panel UI layout ownership
- Low-level rendering implementation
- Shader implementation
Allowed Dependencies¶
Lighting may depend on:
- Models
- Preview systems where required
- Infrastructure preference services
- Unity lighting/rendering APIs
- Rendering abstractions where needed
Lighting should avoid depending on:
- panel orchestration systems
- export workflow systems
- rendering implementation systems
Notes¶
Lighting is a shared editor-domain territory.
Lighting owns: - reusable lighting configuration - preset persistence - lighting workflow helpers - editor-facing lighting state
Preview owns: - preview scene coordination
Rendering/Pipelines own: - actual rendering behaviour - pipeline-specific implementation
This distinction allows lighting workflows to remain reusable across: - preview systems - thumbnail generation - export workflows - future tooling
The goal is pragmatic lighting workflow coordination rather than rendering ownership.
Future Candidates¶
- Continue protecting the separation between lighting workflows and rendering implementation.
- Avoid allowing export orchestration into Lighting.
- Maintain reusable and pipeline-safe lighting helpers.
- Keep preset/persistence ownership isolated from preview orchestration.