I am currently trying to implement light propagation volumes in DirectX 11 and I have already done the RSM part which contains position, normal, depth and flux map generation. But for Injecting Virtual point lights into light propagation volumes, we have to inject lights into an x,y,z grid for which each element consists of 3 vectors for each of red, green and blue channels and each vector consists of four coefficients of a two-band spherical harmonic.
To do this, here are my steps:
- Prepare 3 texture arrays. Each slice is a slice of the grid.
- Inject RSM into the texture array by calculating grid space position.
Can someone briefly explain how this injection can be done and how each virtual point light can be used inside each grid unit?