# name
Techniques for efficient global illumination through virtual point lights

# metadata.dc.contributor.advisor[].value
Rodrigues Sepúlveda Marques, Ricardo Jorge

# metadata.dc.description[].value
Treballs Finals de Grau d'Enginyeria Informàtica, Facultat de Matemàtiques, Universitat de Barcelona, Any: 2022, Director: Ricardo Jorge Rodrigues Sepúlveda Marques

# metadata.dc.description.abstract[].value
[en] Global illumination is the task that aims to add realism to the modeling of light in 3D scenes, all this encompasses a set of algorithms that make it possible. These algorithms take into account, in addition to the light coming directly from a light source (direct illumination), the light rays that come from the same source but have
been through reflections on surfaces of the scene (reflective or not) ( indirect illumination). So this in computing science is a more complex term than it seems a priori, it refers not only to light sources, but to all the lighting conditions of the scene, that is, we have to take into account all the objects of the scene since each one will
influence the others in one way or another with the light that it reflects, refracts or absorbs. To be more precise to calculate GI we need a description of the virtual scene which includes the position, size and orientation of the 3D geometric objects that compose the scene, the material associated with each object, the position and characteristics of the light sources which illuminate the scene, and a virtual camera that defines how a scene is seen. Once this is defined, one needs to compute/simulate how light is emitted from the light sources and bounces on the scene until it hits the image plane. The light that hits each pixel of the image will define the pixel color. 
To calculate all this lighting we need a very high computing capacity if we want to do it in a reasonable time, or some algorithms that optimize this calculation, and this is what we will deal with in this thesis.
We will start by talking about the use of the Virtual Point Lights algorithm, also called Instant Radiosity by some authors. This algorithm is able to generate images of comparable quality to that of, for example, the Path Tracing (which is a standard algorithm in photo-realistic rendering). -We will explain how the VPLs algorithm works
and how it is able to render an image in less time than Path Tracing and explain how the images are generated. Furthermore, we will also discuss the artifacts that are generated using the original virtual point lights and how to solve them. 
The core of this work is the acceleration of the original VPLs algorithm. To this end, we will resort to clustering techniques, which will allow us to drastically reduce the number of computations involved. In particular, we will provide details on the implementation of the K-means algorithm (a type of non-supervised learning) and its
application in the context of VPLs-based image synthesis. We will show how K-means can be used to cluster the visible points from each pixel, and also to cluster the virtual light points.
We provide detailed results using the four different algorithms: the original VPLs algorithm, which we have implemented from scratch; VPLs with K-means clustering of the visible points; VPLs using K-means clustering of the VPLsa; and, finally, the results when using both K-means clustering fo the visible points and of the VPLs.
The results show clear improvements in image synthesis time.
Finally we will present the results obtained from the perspective of the final image quality . We identify the main limitation of the methods developed, and propose improvements for future work.

# metadata.dc.rights[].value
memòria: cc-nc-nd (c) Pol Baylina Naval, 2022

# metadata.dc.source[].value
Treballs Finals de Grau (TFG) - Enginyeria Informàtica

# metadata.dc.title[].value
Techniques for efficient global illumination through virtual point lights