Performance Budgeting
Genesis is feature-dense. That is both the appeal and the trap — every toggle you flip adds shader instructions, sampler bindings, and a keyword variant. This page gives you a mental model for how much each feature costs, where the cliffs are, and how to ship a material that performs on your platform.
The budget model
Think of a Genesis material as a budget of texture samples, math ops, and variants. Mobile GPUs cap out around 6–8 samples per fragment before performance drops sharply. Variant count drives build size and warm-up stutter. Math ops mostly matter at high overdraw.
As a reference point, a kitchen-sink material (Lit + Cel + Rim + MatCap + Triplanar + Stochastic + Dissolve + Outline) runs roughly 412 ALU, 11 samples, and 8 keywords. Trimmed for mobile (Toon + Cel Single + Outline) the same silhouette costs about 138 ALU, 3 samples, and 2 keywords — close to a 3x reduction per fragment at the same gameplay-distance read.
Cost rules of thumb
Tactics
- Pick a Rendering Mode first. Unlit is the cheapest, Toon is mid, Lit costs the most. Choose by look, but know the floor.
- Disable features instead of zeroing them. Setting Outline Width to 0 still runs the vertex pass. Use the toggle.
- Share materials across props. Instancing is automatic when keyword sets match. Diverging materials breaks batching.
- Avoid Stochastic on mobile. Use plain triplanar or break tiling with a detail map instead.
- Ship a Mobile preset. The Feature Configurator can strip keyword sets from the build for platforms you do not target.
Variant explosion is the most common cause of long mobile build times. Audit
your material set with Tools > Genesis > Shader Tools Window > Variant Audit
before every release.