Version: 2020.3
  • C#

How do you use documentation throughout your workflow? Share your experience with us by taking this survey.


struct in UnityEngine.Rendering


Implemented in:UnityEngine.CoreModule

Suggest a change


Thank you for helping us improve the quality of Unity Documentation. Although we cannot accept all submissions, we do read each suggested change from our users and will make updates where applicable.


Submission failed

For some reason your suggested change could not be submitted. Please <a>try again</a> in a few minutes. And thank you for taking the time to help us improve the quality of Unity Documentation.




Spherical harmonics up to the second order (3 bands, 9 coefficients).

Spherical harmonics (SH) represent a function or signal over directions, and are commonly used in computer graphics to efficiently evaluate smooth lighting. Unity uses them for LightProbes and environment lighting.

L2 spherical harmonics is composed of 9 coefficients for each color channel.

See Also: RenderSettings.ambientMode, RenderSettings.ambientProbe, LightProbes.


this[int,int]Access individual SH coefficients.

Public Methods

AddAmbientLightAdd ambient lighting to probe data.
AddDirectionalLightAdd directional light to probe data.
ClearClears SH probe to zero.
EvaluateEvaluates the Spherical Harmonics for each of the given directions. The result from the first direction is written into the first element of results, the result from the second direction is written into the second element of results, and so on. The array size of directions and results must match and directions must be normalized.


operator !=Returns true if SH probes are different.
operator *Scales SH by a given factor.
operator +Adds two SH probes.
operator ==Returns true if SH probes are equal.