Skip to content

Performance considerations

Profile the scene on your target device with the intended camera distance and resolution. A close-up planet can fill most of the screen, so the cost of its layered material and surrounding effects matters as much as object count.

  1. Build a representative view with the expected number of planets, rings and stars.
  2. Use Unity’s Profiler to inspect CPU, rendering and memory, and the Frame Debugger to inspect the rendering sequence.
  3. Compare the same view with optional atmosphere, ring and corona renderers disabled individually.
  4. Inspect both close-up and distant views. Record results on the target hardware before deciding what to simplify.
AreaPractical action
Atmosphere and CoronaLimit large overlapping shells and planes; additive effects can shade the same pixels repeatedly
Transparent ringsInspect overlap and depth behavior as well as draw cost
Surface detailUse texture resolution and normal strength appropriate to the final camera distance
TexturesReview target-platform import size and compression; compare quality and memory on the actual device
MaterialsReuse shared materials for identical looks; create independent copies only where variation is needed
MeshesKeep enough detail for the silhouette without assuming distant planets need the same geometry as close-ups
Runtime codeReuse material instances and property IDs rather than creating materials each frame

Lowering a visible contribution to zero does not necessarily remove its texture work from a shader. Use measurements before treating an artistic setting as a performance switch. Disabling a separate effect renderer is a clearer comparison when that layer is not required.

This guide’s baseline is Unity 2022.3, URP 14 and Windows/D3D11. It does not provide frame-rate, memory or GPU budgets for mobile, WebGL, XR or other graphics APIs. Evaluate those targets in your own build. A shader pass or keyword name alone is not a compatibility guarantee.

The lit surface shaders use a forward-only path within URP, including when used with a Deferred renderer. Do not assume that choosing Deferred makes every custom effect a native GBuffer material. Profile renderer features, camera stacking, extra lights and post-processing in the combination you intend to use.

For material instances, see Runtime materials. For blend, mapping and channel details that affect integration, see Technical reference.