Download presentation
Presentation is loading. Please wait.
1
Parallel Spectral Renderer
Computer Systems Lab Presentation Stuart Maier
2
Abstract Computer generation of highly realistic images has been a difficult problem. Although there are algorithms that can generate images that look essentially real, they take large amounts of time to render. This project explores ways of distributing that onto multiple computers, in order to speed up the process.
3
Graphics Background Many different algorithms
Most unrealistic Real-life based algorithms developed Ray tracing Path tracing Spectral rendering
4
Ray Tracing Rays shoot through screen Rays seek light sources
Phong shading Image from Wikipedia.
5
Path Tracing Rays don't seek light Rays can: Probabilistic Find light
Be absorbed Be reflected Be transmitted Probabilistic
6
Spectral Rendering Complete color space RGB part illuminated
Many different colors can create the same RGB value Image from Wikipedia.
7
Parallel Background BOINC Splitting data Multiple independent clients
No interclient communication Clients barely talk with server Splitting data Pixels are divided up among clients
8
Design Written in C with MPI and OpenGL libraries
Currently implements a parallel spectral renderer with spectral colors Six components Main Renderer Object Spectrum Vector XML
9
Main Runs the entire show Talks with MPI and OpenGL
Starts up the renderer Passes off to the Renderer component
10
Renderer Holds information about the scene Renders the scene
Performs the high-level ray calculations
11
Object Information about objects Calculates ray-object intersections
12
Spectrum Contains the spectral colors Can retrieve these colors
Converts spectral colors to RGB ones for display
13
Vector Generic library Creates 3-D vectors and processes them
Used for spatial calculations
14
XML First component called after Main Reads in the scene file
Passes off information to Renderer
15
data.xml <scene sampling="10" depth="4" width="256" height="256"> <camera x="0.0" y="0.0" z="0.0" /> <screen> <origin x="-1.0" y="-1.0" z="1.0" /> <width x="2.0" y="0.0" z="0.0" /> <height x="0.0" y="2.0" z="0.0" /> </screen> <object type="sphere" radius="0.2" index_refraction="1.5"> <origin x="0.0" y="0.0" z="1.0" /> <emmitivity color="black" /> <diffuse color="black" /> <reflectivity color="black" /> <refractivity color="white" /> </object>
16
Results
17
Analysis Spectral Renderer works in parallel No Cornell Box yet Grainy
Large amount of work
18
Cornell Box Reference scene Spectral colors Not tested yet
19
Parallel Speedup Some speedup on multiple computers
Unequal work distribution Network lag
20
Questions?
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.