# A Framework for Learning and Rapid Implementation of Real-Time Global Illumination Methods
## 6 Results  
### Comparison with Other Frameworks  
We decided to compare the proposed framework with the ones described in Section 5.2. We only chose the frameworks for real-time global illumination. The comparison criteria are the possibility of using the framework as educational software and that of using it for the rapid implementation of real-time global illumination techniques. More precisely, we chose the information that tell us whether the framework contains the implementation of techniques that can be used for demonstration purposes, because it represents a good educational support, correlated with the possibility to allow the implementation of other new methods. The result of our analysis can be observed in Table 2.  
As can be seen, most frameworks are not intended for learning real-time global illumination techniques. Most of them were not created for this purpose and have monolithic system for other purposes, which are difficult to modify and have a lack of varied implementations. \begin{table}
\begin{tabular}{c c c} \hline \hline
**Framework/Game Engine** & **Contains Demonstrative Real-Time Global** & **Allows the Implementation of New** \\  & **Illumination Technique Implementations** & **Methods** \\ \hline Unreal Engine 5 [25] & Monolithic, Lightmass [26] and Lumen [27] & Only by ground-up implementation \\ \hline CryEngine [29] & Monolithic, Voxel-Based Global Illumination & Only by ground-up implementation \\ \hline Unity BRP [31] & Monolithic, requires offline pre-processing & No \\ \hline Unity SRP [32] & No & Yes, multi-pass architecture \\ \hline Unity URP [33] & Monolithic, requires offline pre-processing & No \\ \hline Unity HDRP [34] & Ray tracing methods & Yes, multi-pass architecture \\ \hline \multirow{2}{*}{Godot [36]} & Monolithic, signed distance field global & \multirow{2}{*}{Only by ground-up implementation} \\  & & illumination & \\ \hline Open 3D Engine [37] & Monolithic, dynamic diffuse global & \multirow{2}{*}{Only by ground-up implementation} \\  & & illumination & \\ \hline NVIDIA OptiX [40] & Only methods based on ray tracing & Only methods based on ray tracing \\ \hline NVIDIA RTXGI [41] & Only methods based on ray tracing & Only methods based on ray tracing \\ \hline NVIDIA VXGI [42] & Voxel-Based Global Illumination & Only by ground-up implementation \\ \hline NVIDIA Falcon [43] & Several illumination effect implementations & Yes, multi-pass architecture \\ \hline Radeon Cauldron [44] & Several illumination effect implementations & Yes, multi-pass architecture \\ \hline \hline \end{tabular}
\end{table} 
Table 2: Comparison between the frameworks and game engines for real-time global illumination implementaion. The two frameworks, NVIDIA Falcon [43] and Radeon Cauldron [44], at the time of this paper, contain the implementations of several illumination effects, such as ambient occlusion, reflections and shadows, but not of a comprehensive set of real-time global illumination techniques. This is due to the fact that the purpose of these frameworks is mostly support for research. However, it should be noted that the currently implemented techniques can be investigated and evaluated together with a GUI at a detailed level, so that for certain techniques in particular, these frameworks can be a good source for education in this domain. The frameworks that contain arranged implementations of some real-time global illumination techniques are the only ones that, among others, also have educational purposes. These are NVIDIA OptiX, NVIDIA RTXGI and NVIDIA VXGI [42]. However, they focus on a certain class of techniques and do not offer a varied set of illumination methods. Regarding the possibility to implement new methods, the frameworks that contain the implementation of lighting techniques in monolithic systems have the least flexibility.