Arquitectura para renderizador 3D tipo ray-cast SVO - Valverde-Garro, Diego (Instituto Tecnológico de Costa Rica, 2015)
The three-dimensional rendering of complex scenes is an open problem in the area of computer graphics. Improvements in specialized hardware rendering are not sufficient for the increasing complexity of the models. There is a growing interest from the industry and the computer graphics community to explore alternatives to traditional rendering scheme based on the method of projections and raster, with techniques such as Ray-Casting . The naive algorithm of Ray-Casting consists in finding the intersection of each ray with each object in the three-dimensional scene without further optimization. This algorithm belongs to the family of algorithms which are known as embarrassingly parallel. This is because each ray is independent of all other rays, and in a system of brute force with potentially as many processors as rays, parallelism can achieve a very high level. One of the main problems of ray-casting is that all processors have to access a shared memory containing the objects in the scene, thus creating a bottleneck in the bus to access this memory. This data traffic congestion on the buses is a major limiting to the performance of parallel Ray-Casting systems. This research proposes to combine the use of SVOs, sort-fist type scene partitions, using Morton codes with depth first tree traversal, and a hierarchy of cache memories in order to obtain a significant decrease in the amount of accesses to the memory that stores the objects in the scene.
Proyecto de Graduación (Maestría en Computación) Instituto Tecnológico de Costa Rica, Escuela de Ingeniería en Computación, 2015.
Keywords: Ray-casting; SVO; CPU; Código de Morton; Gráficos por computadora; Hardware