Render Modes
Bakery render mode decides what kind of lightmaps are produced. In VRChat world production, this is usually a choice between how much lighting should be fully baked for stability and how much should remain real-time at additional runtime cost.
Full Lighting
What it does: Bakes complete direct and indirect lighting for Bakery lights.
When to use it: Use this for mostly static VRChat worlds where baked lighting defines the final look.
Pros:
- Lowest runtime lighting complexity for static scenes.
- Predictable final result once lightmaps, probes, and reflection probes are baked.
- Usually the best starting point for environment-driven VRChat worlds.
Cons:
- Baked direct light does not update dynamically.
- Direct specular and live light response are limited compared with real-time lighting.
- Dynamic objects still need light probes, VRC Light Volumes, or another compatible solution.
VRChat considerations: This is usually the right default for static VRChat worlds, especially when the mood comes from architectural lighting, emissive fixtures, signs, windows, and baked bounce.
Indirect
What it does: Bakes indirect contribution while direct lighting can come from real-time Unity lights. Lights configured to bake direct and indirect can still behave more like Full Lighting.
When to use it: Use it when you want baked GI but still need direct light behavior from real-time lights.
Pros:
- Useful hybrid mode for real-time direct lighting plus baked bounce.
- Lets direct lighting remain adjustable.
- Can preserve some live response without losing baked GI.
Cons:
- Higher runtime cost than a fully baked setup.
- Requires careful matching between Bakery and Unity light setup.
- Easy to make inconsistent if direct and indirect contributions are not balanced.
VRChat considerations: Use it when the direct light is expected to change or stay live, not as a default for every world. Real-time lights add cost quickly in VRChat, so use them deliberately.
Shadowmask
What it does: Generates baked color lighting plus baked static shadow information for mixed lighting. Real-time lights can still provide dynamic shadows, bump, and specular while respecting baked static occlusion.
When to use it: Use it when real-time direct lighting, dynamic shadows, or specular from real-time lights matters.
Pros:
- Better fit for mixed static and dynamic lighting.
- Lets selected real-time lights add live bump and specular response.
- Useful for interactive or hero lighting cases.
Cons:
- Higher runtime cost than Full Lighting.
- More setup complexity.
- Needs project-level testing because mixed lighting behavior depends on the actual scene and shaders.
VRChat considerations: Good for cases like live lamps, interactive fixtures, or hero lighting where a purely baked result is not enough. Test carefully in-client because the runtime tradeoff matters more than it does in a plain editor preview.
Subtractive
What it does: Uses Unity Subtractive lighting mode. In Bakery, the baked result works similarly to Full Lighting, but the project is also configured around Subtractive mixed-light behavior.
When to use it: Use only if the project intentionally relies on Unity Subtractive lighting.
Pros:
- Can fit older or compatibility-focused workflows.
- Simple baked outcome.
Cons:
- Less flexible than the other mixed-lighting approaches.
- Usually not the best fit for modern high-quality scene lighting.
VRChat considerations: Treat this as a legacy or compatibility option, not the normal default.
Ambient Occlusion Only
What it does: Bakes only ambient occlusion.
When to use it: Use only when you intentionally need AO data as a separate utility bake.
Pros:
- Useful for specialized workflows.
- Can isolate AO from broader lighting decisions.
Cons:
- Not a complete lighting solution.
- Easy to misuse if treated as world lighting.
VRChat considerations: AO-only is a support tool, not a replacement for proper world lighting.
Comparison
| Render Mode | What It Bakes | Runtime Cost | Best For | Avoid When |
|---|---|---|---|---|
| Full Lighting | Complete Bakery direct and indirect lighting | Low | Mostly static scenes | You need live direct shadows or specular |
| Indirect | Baked GI for hybrid real-time direct lighting | Medium | Real-time direct lights with baked bounce | The scene can be fully baked |
| Shadowmask | Baked color plus static shadowmask data | Medium to high | Mixed lighting with dynamic direct response | The scene is fully static |
| Subtractive | Full Lighting-like bake plus Unity Subtractive setup | Varies | Legacy mixed-lighting workflows | You want more flexible mixed lighting |
| Ambient Occlusion Only | AO only | Depends on usage | Utility AO workflows | You need complete lighting |
Recommendation
- For static VRChat worlds: Full Lighting.
- For dynamic direct response or real-time specular: Shadowmask.
- For hybrid real-time direct lighting with baked bounce: Indirect.
Next: choose directionality in Directional Modes.