Developing a real-time Global Illumination Renderer is more than a small feat however the basic concepts of which are fairly quick to understand. Monte-carlo ray tracing can estimate the rendering equation
L(x,w) which solves how light is distributed through a scene and it’s contents, taking it from an implicit integral equation to a sum of a finite number of randomly distributed rays in the scene. To explain and learn the concept we’ve built our own physically based renderer using this method, our own scene graph and linear algebra.
An implementing of an Oren-Nayar reflectance model or support for transparent objects could further showcase support for how a complex process can be broken down into more manageable finite steps.