Preface
This series of articles is the study notes of the author in the process of learning GAMES101 [1]. If there is any error, please contact and point it out. Please indicate the source for reprinting, thank you.
∇ \nabla ∇Contact information:
email : [email protected]
QQ: 973926198
github: https://github.com/FesianXu
Solid angle
The modeling of light propagation in computer graphics is a very important subject. We consider that the propagation of light in actual physical space is a process of spatial radiation, so we need to define the concept of "angle" in three-dimensional space. Of course, here The angle of is different from the angle in the two-dimensional case, which is easy to define. First, let’s review the definition of the angle on a two-dimensional plane. Given a circle, as shown in Fig 1 (a), we define the ratio of the circumference to the corresponding radius as the angle (radians), that is:
θ = lr ( 1) \theta = \dfrac{l}{r} \tag{1}θ=rl(1)
Following the definition of angle in two-dimensional space, we define the solid angle in three-dimensional space (Solid angle), as shown in equation (2).
Ω = A r 2 (2) \Omega = \frac{A}{r^2} \tag{2}Ω=r2A( 2 )
whereAAA is the area enclosed by the cone on the spherical surface, as shown in Fig 1 (b).
The surface area in equation (2) is not as easy to calculate as the perimeter. We need to use calculus to think about how to calculate it. As shown in Fig 2, we use spherical coordinates (θ, ϕ, r) (\theta,\phi,r)( θ ,ϕ ,r ) to represent any point on the sphere, then we consider(d θ, d ϕ) (\mathrm{d}\theta, \mathrm{d}\phi)(dθ,d ϕ ) The area of the surface surrounded by the change, because this change is very small, we can regard the surface as a side length ofH × WH \times WH×W rectangle. As shown in Fig. 3, we can consider itsHHH is the base of an isosceles triangle.
Then through a simple geometric relationship, we have:
H = 2 r sin (d θ 2) (3) H = 2r\sin(\dfrac{\mathrm{d}\theta}{2}) \tag{3}H=2 rwithout (2dθ)( 3 )
Because there is an equivalent infinitesimal relationship:
sin (d θ 2) ∼ d θ 2 (4) \sin(\dfrac{\mathrm{d}\theta}{2}) \sim \dfrac{\mathrm{ d}\theta}{2} \tag{4}without (2dθ)∼2dθ( 4 )
Therefore, the equations (3) and (4) are combined:
H = rd θ (5) H = r \mathrm{d}\theta \tag{5}H=rdθ(5)
In the same way, we can find the WW of the rectangleW为 :
W = r sin (θ) d ϕ (6) W = r \ sin (\ theta) \ mathrm {d} \ phi \ tag {6}W=rsin ( θ ) d ϕ( 6 )
那么 有 :
d A = H × W = (rd θ) (r sin (θ) d ϕ) = r 2 sin (θ) d ϕ d θ (7) \ mathrm {d} A = H \ times W = (r \ mathrm {d} \ theta) (r \ sin (\ theta) \ mathrm {d} \ phi) = r ^ 2 \ sin (\ theta) \ mathrm {d} \ phi \ mathrm { d} \ theta \ tag {7}d A=H×W=(rdθ)(rsin ( θ ) d ϕ )=r2sin ( θ ) d ϕ d θ( 7 )
Then the micro-element of the solid angle is:
d Ω = d A r 2 = sin (θ) d θ d ϕ (8) \mathrm{d}\Omega = \dfrac{\mathrm{d}A}{ r^2} = \sin(\theta)\mathrm{d}\theta\mathrm{d}\phi \tag{8}dΩ=r2d The=sin ( θ ) d θ d ϕ( 8 )
Then, by fully integrating the solid angle element at this time, we can get the maximum solid angle range as:
Ω = ∫ S 2 d Ω = ∫ 0 2 π ∫ 0 π sin (θ) d θ d ϕ = 4 π (9) \Omega = \int_{S^2} \mathrm{d}\Omega = \int_{0}^{2\pi} \int_{0}^{\pi} \sin(\theta )\mathrm{d}\theta\mathrm{d}\phi = 4\pi \tag{9}Ω=∫S2dΩ=∫02 p∫0Fr.sin ( θ ) d θ d ϕ=4 π(9)
The angle range of the two-dimensional plane is up to 2 π 2 \pi2 π。
Reference
[1]. https://sites.cs.ucsb.edu/~lingqi/teaching/games101.html