Skip to content

Materials

Purpose

Owns shadow-related material instance management for Snap Studio Pro.

This territory is responsible for safely applying, cloning, reverting, and disposing materials used by shadow/background/ground workflows without mutating user material assets directly.

Owns

  • Shadow/ground material instance ownership
  • Background material override handling
  • Transparent ground material handling
  • Default material backup/revert workflows
  • Material cleanup/disposal responsibility
  • Preview-safe material application

Does NOT Own

  • Rendering pipeline implementation
  • Shadow capture orchestration
  • Preview scene lifecycle ownership
  • Panel UI
  • Export workflows
  • Shader selection logic

Allowed Dependencies

Materials may depend on:

  • Unity material/rendering APIs
  • Lightweight shadow models/settings where required

Materials should avoid depending on:

  • export orchestration systems
  • preview lifecycle systems
  • panel/UI systems
  • rendering pipeline implementation systems

Notes

Material systems here exist to protect user assets.

They should clone or instance materials where required and avoid mutating original project assets directly.

This folder owns: - temporary material lifecycle - revert behaviour - cleanup ownership

Shadow utilities may decide which materials are needed. Preview systems may decide where materials are applied. Materials owns how material instances are safely managed.

Future Candidates

  • Continue protecting source material assets from mutation.
  • Maintain explicit cleanup/disposal ownership.
  • Avoid letting material managers become shadow workflow orchestrators.