Eikonal Rendering: View Renderer

Post on 03-Feb-2016

35 views 0 download

Tags:

description

Eikonal Rendering: View Renderer. refEiko - View renderer. “ Eikonal Rendering: Efficient Light Transport in Refractive Objects ”, Ivo Ihrke, Gernot Ziegler, Art Tevs, Christian Theobalt, Marcus Magnor, Hans-Peter Seidel. Overview: 2 main components. - PowerPoint PPT Presentation

Transcript of Eikonal Rendering: View Renderer

Eikonal Rendering: View Renderer

Eikonal Rendering: View Renderer

refEiko - View renderer

“Eikonal Rendering: Efficient Light Transport in Refractive Objects”, Ivo Ihrke, Gernot Ziegler, Art Tevs, Christian Theobalt, Marcus Magnor,

Hans-Peter Seidel

Overview: 2 main componentsOverview: 2 main components

System capable of Refractive Object Rendering:

• Light Simulator (pre-process, ~10 secs)

• View Renderer (real-time, 5-60 fps)

Renderer

• Shader Model >= 3.0 GPU

• Use OpenSceneGraph (v1.2) for the low level tasks, e.g. transparency sorting, mesh rendering, etc.

• nrEngine: script handling, resource management, …

• Volume Ray Casting

Scene Graph based rendering (depth and transparency sorting)

Renderer

• Full HDR coloralong complete rendering pipeline

• Post processing by PPUG (post-processing units graph)

• Completely scriptable

Scene RepresentationScene Representation

• XML description of a complete scene

• Supported objects:

– Camera

– Light

– Shader

– Texture

– Model (Mesh)

– Entity (Static, Voxel Volume)

– Environment Map (CubeMap, PlaneMap, ShadowCubeMap)

– Post Processing Unit

Scene graphScene graph

Root Node

RenderableRoot Node

Entity

EnvironmentMap

EntityLight Group

Light 1 Light 2Mesh (Geode) Mesh (Geode)

Entity

Volume renderingVolume rendering

• Volume rendering is required for our approach

• VoxelVolume class stays for an osg node handling volume rendering

• VoxelVolumeDrawable derived from osg::Drawable, implements volume rendering by a shader program

• Rendering by a proxy geometry (ray casting)

– Box primitive (default)

– Geode as a child-node

Post Processing EffectsPost Processing Effects

• Post processing by a so called PPU, post processing unit

• PPUs are combined into a graph

• Multiple inputs for each of PPU (osg::Texture)

• Multiple outputs (MRT) are implemented, but not well tested ;-(

• PPUG could contribute to osg as a new node kit

PP Effects (HDR bloom, Depth of Field, Motion Blur, [+ tone mapping])

Post Processing Units Graph (Depth of Field)Post Processing Units Graph (Depth of Field)

Color bypass

Depthmap bypass

DoF resample0.5

DoF resample0.5

DoF blurvertical

DoF blurhorizontal

DoF blurvertical

DoF blurhorizontal

DoF Result

Taken from http://www.daionet.gr.jp/~masa/archives/GDC2003_DSTEAL.ppt

Post Processing Units Graph (HDR Bloom + tone mapping)Post Processing Units Graph (HDR Bloom + tone mapping)

DoF Result

Downsample

Compute avg.luminance

Compute scaledluminance

BrightpassDownsample

Blur vertical Blur horizontalTone mapping

Based on http://msdn2.microsoft.com/en-us/library/bb173484.aspx

Summary & Future workSummary & Future work

• Nice renderer for our approach

• HDR rendering and scripting

• Osg 2.x is supported, but not well tested

• osgLua implementation required

• Possible contribution to the community by developing a new node kit osgPPU

• New SH4.0 features are in development, hence new contribution to osg will follow: Texture2DArray, GeometryProgram, …

AdvertisementAdvertisement

• Visit our implementation sketch at Thursday, 9th August, Room 3 at San Diego Convention Center:GPU-based Light Wavefront Simulation for Real-Time Refractive Object Rendering

• Google for Eikonal Rendering or just go to :

http://www.mpi-inf.mpg.de/resources/EikonalRendering/and download slides, videos and source code.

• Visit my Homepage http://www.tevs.eu ;-)

Discussion & DemoDiscussion & Demo