1 / 7

Advanced Radiosity Techniques in Computer Graphics

This technology splits models into patches and calculates diffuse lighting by integrating light emitted between patches. The method pseudocode involves drawing scenes with shadows and ray tracing to determine new light sources, resulting in final images. Monte-Carlo rays can be used with single or multiple rays per child light, with the process taking around 9-10 seconds per frame. Common problems include working with shadows and cleaning up z-fighting noise. Potential improvements include generating new lights based on shadow-map data and using paraboloid shadow-maps. Further enhancements can involve utilizing non-floating-point pbuffers and the EXT_framebuffer extension. Various challenges and optimization possibilities are discussed for achieving advanced radiosity effects in computer graphics.

sal
Download Presentation

Advanced Radiosity Techniques in Computer Graphics

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. Traditional Radiosity Instant Radiosity • Splits model up into patches • Calculates diffuse lighting on scene by integrating light emitted by every patch onto every other patch. • Only as good as how many patches you use. • Starts with a hardware light and renders scene with shadows. • Ray traces model from light and calculates new light points same color as surface intersected. • Only as good as how many lights and bounces you use.

  2. Pseudo Code • Draw the scene with shadows. • Ray trace the scene to determine the appropriate number of new child light sources. • Each is attenuated by the surface color and light absorption information. • Draw scene with shadows from each child light. • Repeat step 2 using child light to generate further lights. • Combine all images together for final result.

  3. Monte-Carlo Rays Single ray spawned per child light Multiple rays spawned per child light

  4. Actual Images Actual Image of Modeled Scene Single Ray Monte-Carlo Multiple Rays Monte-Carlo Time For 1 Frame 9 seconds 10 seconds [~200 lights] [~800 lights]

  5. Problems • Shadows, shadows, shadows • Getting working initially. • Getting to work with desired field-of-view. • Cleaning up z-fighting noise. • Getting to work in GLSL. • Determining proper blending of individual scenes. • Ray tracing the image properly. • Hopes dashed for one of my optimizations. • Render individual images to pbuffers. • Not enough pbuffer space. • Not enough texture units. PITN PITN

  6. Improvements that can still be made • Generating new lights based on shadow-map information. • Still have to take each face of cube map into account. • Use a paraboloid shadow-map. • Use non floating-point pbuffers when rendering. • Use EXT_framebuffer extension when it’s created.

  7. Questions ??? Questions ???

More Related