This is a project about radiosity where we split our scene into patches and iteratively render the scene from each of those patches to globally illuminate a scene. This was done through opengl and I have a simple scene of an empty box.
The scene is rendered from the view of each patch multiple times in order to gather information about energy, position, normal, and id. These four textures are then used to calculate the next energy of the desired patch
ID Lookup
One of the primary textures we generate stores the id of a patch from 0-255 color value which we can then convert to an integer after reading the texture. This allows us to generate all the other textures we previously stated and then associate a value at a given pixel with a specific entity if we need additional information from it.
Issues
This is a program currently generates position textures that do not accurately represent where they are in 3D space. This comes down to the textures not holding negative values which skew where they trully are. Since the form factor depends highly on the direction of the normal this led to some asymetric energy distribution.