# A Framework for Learning and Rapid Implementation of Real-Time Global Illumination Methods
## 2 Related Work  
### Real-Time Global Illumination Methods  
The software applications that contain implementations of global illumination methods are complex. They can be considered to contain three major stages:  
1. Management of geometric data and illumination properties in the scene;
2. Light transport simulation;
3. Result display, which may require post-processing effects and adaptation to display hardware requirements.  
Usually, the implementation of global illumination methods is done in the light transport simulation stage and remains independent of the other two stages, which are in the management of the software application. However, due to the nature of the processes required for such methods, this stage is the most complex.  
To achieve the light transport simulation in real time, several pre-processing steps are used, which obtain the light transport information for the scene geometry, possibly followed by several steps of processing the information obtained in the acquisition stages. The last step of the light transport simulation is the lighting computation for the geometry visible by the observer by extracting the information produced in the previous stages.  
Among the real-time global illumination methods, there are several approaches that use certain data structures to store the light transport information, as presented by [PERSON] et al. [2] and more recently by [PERSON] et al. [3]. This research field is complex and goes beyond the scope of this paper, so for a comprehensive analysis, the work cited above can be consulted. Here, we give a brief overview of the real-time global illumination methods in terms of the requirements of a software application to contain the implementations of a wide range of approaches. We analyze the nature of the processes and data structures required for such applications to provide the necessary flexibility.  
Among the real-time global illumination methods, we further analyze those based on images and voxel volumes. The image-based methods extract information from the scene by using a set of light fields, obtained by rendering the scene from certain positions. A light field contains 2D information along the projection lines of the camera, but can be used to extract the light transport information. In this class, we note the methods that use the information on the screen, obtained by rendering the scene from the position of the observer to produce diffuse indirect illumination [4] and glossy reflections [5]. From the class of image-based methods, there are also those that use the information from the light space, obtained by rendering the scene from the position of the light. [PERSON] and [PERSON] [6] introduced the concept of the reflective shadow map (RSM), which is a set of buffers that store the light transport information for the geometry visible from the light position. Initially, this approach was proposed to compute the diffuse indirect illumination. Another large class of real-time global illumination methods is represented by those that produce a voxels volume [7; 8] in which the information about light transport is stored.  
There are several approaches [2; 3] that process these data structures after the acquisition stage. Moreover, there is a wide range of techniques that sample them. Additionally, some methods use several such data structures, some simultaneously at the step of extracting lighting information or sequentially to obtain different data structures.