Global Illumination for Point-Based Rendering

Luis Omar Álvarez Mures

Final Degree Project (Proyecto Fin de Carrera), University of A Coruña, Spain
Supervised by Alberto Jaspe-Villanueva and Emilio J. Padrón, UDC

Global Illumination for Point-Based Rendering teaser

PDF UDC library record

@MastersThesis{Mures:2012:GIP,
 author = {Luis Omar {\'A}lvarez Mures},
 title = {Global Illumination for Point-Based Rendering},
 school = {University of A Coru{\~n}a},
 type = {Bachelor's final project},
 year = {2012},
 note = {Supervisors: Alberto Jaspe-Villanueva and Emilio J. Padr{\'o}n},
 }
Degree
Final Degree Project (Proyecto Fin de Carrera), Technical Engineering in Computer Systems
Institution
University of A Coruña, Spain
Student
Luis Omar Álvarez Mures
Supervisors
Alberto Jaspe-Villanueva and Emilio J. Padrón, UDC
Defended
July 9, 2012

Abstract

The objective of this project is designing and implementing a point-based rendering engine that utilizes ray tracing for global illumination computation. Point-based rendering has several advantages compared to the more classic polygon-based rendering that uses polygon meshes, specially when polygons can be smaller than a pixel. In this project we explore how to represent point models without ray tracing techniques (with a projective camera) and using ray tracing that is the true focus of this project. It is also important to mention that because of the nature of point clouds, datasets tend to be really large. That is why a k-d tree is used to accelerate the ray tracing process. A k-d tree is a space partitioning structure for data organization (in our case, point data). This acceleration structure reduces greatly rendering times, and without it the rendering process would take too long and be too computationally expensive. Point-based rendering also has some disadvantages, like for example the zero-dimensional nature of points. This means that a point has no surface, volume or normal vector. This results in problems in the rendering process. In this project we explore several solutions for these problems. To facilitate the usage of the project to the end user, and to also make testing easier, a plugin compatible with Blender will be programmed. It allows the rendering of scenes created in Blender with our project and facilitates the use of the engine thanks to the integration with the interface of Blender.

Omar’s final degree project (Technical Engineering) explored global illumination for point-based rendering of scanned models, the starting point of his later work on the Point Cloud Manager library.