i Innehållet I detta häfte är skyddat enligt Lagen om upphovsrätt, 1960:729 och får inte reproduceras eller spridas i någon form utan medgivande av författarna. Förbudet gäller hela verket såväl som delar av verket och inkluderar lagring i elektroniska och magnetiska media, visning på bildskärm samt bandupptagning. Abstract Modern graphics cards are rapidly increasing in computational power and the amount of memory available. Still this computational power is rarely used for anything else than 3D-games and modelling. This thesis investigates how to implement a ray tracer that executes all of its image rendering operations on a graphics card using pixel shaders and vertex shaders and to compare the performance of this implementation to standard ray tracer. Implementing general purpose programs for graphics hardware is not trivial because GPU:s have large limitations compared to ordinary CPU:s. Recursion and loops with too many iteration can not be used and there is also the problem of storing data in texture memory. It will be shown how many of the programming limitations can be worked around and how texture memory can be used to store data needed for the computations. This thesis will also show how a proximity cloud algorithm can increase performance compared to standard grid traversal when ray tracing on graphics hardware, but still none of the implementations have been able to achieve better performance than 3D-studio's ray tracer, " Mental Ray " .
[1]
John Amanatides,et al.
A Fast Voxel Traversal Algorithm for Ray Tracing
,
1987,
Eurographics.
[2]
Tomas Akenine-Möller,et al.
Fast, Minimum Storage Ray-Triangle Intersection
,
1997,
J. Graphics, GPU, & Game Tools.
[3]
Sudhanshu Kumar Semwal,et al.
Directed Safe Zones and the Dual Extent Algorithms for Efficient Grid Traversal during Ray Tracing
,
1997,
Graphics Interface.
[4]
Tomas Akenine-Möller,et al.
Real-Time Rendering, Second Edition
,
2002
.
[5]
John C. Hart,et al.
The ray engine
,
2002,
HWWS '02.
[6]
Thomas Ertl,et al.
GPU‐Based Nonlinear Ray Tracing
,
2004,
Comput. Graph. Forum.
[7]
Pat Hanrahan,et al.
Ray tracing on programmable graphics hardware
,
2002,
SIGGRAPH Courses.
[8]
Tomas Akenine-Möller,et al.
Fast, Minimum Storage Ray-Triangle Intersection
,
1997,
J. Graphics, GPU, & Game Tools.
[9]
D. Cohen,et al.
Proximity clouds — an acceleration technique for 3D grid traversal
,
1994,
The Visual Computer.