1 / 17

Radiosity

Radiosity Syed-Areeb A. Sabzposh S. Yaris A. Sabzposh CSC 470 11/11/2004 Computer Graphics Ray Tracing Radiosity Texture and Surface Details Modeling Volumetric Rendering Graphics Hardware and other important components of a realistic model of an object Render

adamdaniel
Download Presentation

Radiosity

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Radiosity Syed-Areeb A. Sabzposh S. Yaris A. Sabzposh CSC 470 11/11/2004

  2. Computer Graphics • Ray Tracing • Radiosity • Texture and Surface Details • Modeling • Volumetric Rendering • Graphics Hardware • and other important components of a realistic model of an object

  3. Render • To render is to create 2-D drawings. • Based on 2, 3 or higher dimensional worlds. • Simple light rendering involves bouncing light off of objects and into a person’s eye. • Limitation of simple rendering: Not a whole lot of realism compared to other methods.

  4. Different techniques • Different techniques of rendering light: • Simple light rendering. • Ray tracing. • Global illumination. • Radiosity. • Phong Model.

  5. The Phong Model • Commonly used in computer graphics today. • Light at any given point is made of 3 components: • Diffuse: represent reflection that is not directional in nature. • Specular: characterize reflections that are highly directional. • Ambient: Accounts for light generated from interobject reflections.

  6. Another way of rendering light: Global Illumination • Refers to a class of algorithms used in 3D CGs which takes into account not only the light which has taken a path directly from light source, but also light which has undergone reflection from other surfaces. • Images rendered using global illumination algorithms are considered more realistic. • Algorithms are much slower and computationally expensive than simple rendering. • Radiosity is an example of global illumination.

  7. Radiosity • Alternative to Phong model; better approximates the interaction of diffuse surfaces. • It is an addition to typical 3D rendering methods that increases the realism of any given image by a multitude. • Allows the light to bounce off objects onto yet more objects and then into the person’s eye. • Allows us to imitate what happens in real life!!! • Results in “color bleeding”.

  8. Reason for Radiosity • Results are detailed analysis of light reflections off diffuse surfaces. • Images that result from a radiosity renderer are characterized by soft gradual shadows. • Typically used to render images of the interior of buildings; create photo-realistic results for scenes comprised of diffuse reflecting surfaces.

  9. Radiosity Model • Original radiosity system developed by Goral. • Method based on a simple model of energy transfer. • At each surface in a model the amt. of energy that is given off is comprised of the energy that the surface emits internally, plus the amt. of energy that is reflected off the surface. • Basically: The radiosity of a surface is the energy that is given off. • Radiosity equation:

  10. Radiosity Pipeline • The following is a list of procedures that a radiosity renderer would take in computing a scene: • Generate Model • Compute Form Factors • Solve Radiosity Matrix • Render

  11. Radiosity Matrix • Two interesting properties: • Diagonally dominant. • Upper right matrix is computable from the lower left.

  12. Basic Outline of Radiosity Mapping • The steps required for radiosity mapping are: • Render object view from object origin. • Blur object view so that all pixels contribute their color equally to the half of the object view closest to them. • Use normal mapping to acquire UV coordinates for each vertex of the mesh. • Texture map the object view onto the object using pixel colors as lighting values and adding those light values to the light already present on the object from traditional lighting methods. • Render the scene with its new light values.

  13. Optimizations • Obvious optimizations to be implemented with radiosity are: • Don’t do full texture mapping for the object view. Instead, only find the light values for each vertex in the mesh, and then interpolate. • Ignore the radiosity calculation of the static objects, and only do radiosity mapping for dynamic object. Pre-calculate the radiosity of static objects by traditional method. Pre-calculate the volume of light-contribution that moved with the object for dynamic objects.

  14. Examples Without Radiosity With Radiosity

  15. Sample Code for Radiosity using C inline float Hemicube::getFormFactor(int side, int pixX, int pixY = -1) { if( pixY == -1) { // access pixels linearly using pixX if( side == 0) { return topPixels[pixX]; } if( side > 0) { return sidePixels[side-1][pixX]; } return 0; } // else access pixels as 2d array by using yOffset[] precalcs if( side == 0) { return topPixels[yOffsetPixels[pixY] + pixX]; } if( side > 0) { return sidePixels[side-1][yOffsetPixels[pixY] + pixX]; } return 0; }

  16. References • www.opengl.org/resources/faq/technical/miscellaneous.htm • www.flipcode.com/articles/article_radenglish02-pf.shtml • www.q-bus.de/Blender/test009.html • www.cs.wpi.edu/~matt/courses/cs563/talks/radiosity.html • www.gamedev.net/reference/articles/article918.asp

  17. Questions???

More Related