Ambient Occlusion. Ambient Occlusion (AO) "shadowing of ambient light "darkening of the ambient shading contribution

Similar documents
GLSL Applications: 2 of 2

Screen Space Ambient Occlusion. Daniel Kvarfordt & Benjamin Lillandt

Advanced Computer Graphics CS 563: Screen Space GI Techniques: Real Time

CMSC427 Advanced shading getting global illumination by local methods. Credit: slides Prof. Zwicker

Shadows. COMP 575/770 Spring 2013

VAO++: Practical Volumetric Ambient Occlusion for Games

DEFERRED RENDERING STEFAN MÜLLER ARISONA, ETH ZURICH SMA/

Rendering Algorithms: Real-time indirect illumination. Spring 2010 Matthias Zwicker

Enhancing Traditional Rasterization Graphics with Ray Tracing. March 2015

Advanced Graphics. Global Illumination. Alex Benton, University of Cambridge Supported in part by Google UK, Ltd

Computergrafik. Matthias Zwicker Universität Bern Herbst 2016

CS354R: Computer Game Technology

Ambien Occlusion. Lighting: Ambient Light Sources. Lighting: Ambient Light Sources. Summary

TSBK03 Screen-Space Ambient Occlusion

Screen Space Ambient Occlusion TSBK03: Advanced Game Programming

Computer Graphics with OpenGL ES (J. Han) Chapter 6 Fragment shader

EECS 487: Interactive Computer Graphics

Volume-based Ambient Occlusion with Voxel Fragmentation

Modern Methods of Realistic Lighting in Real Time

Deferred Rendering Due: Wednesday November 15 at 10pm

Topic 9: Lighting & Reflection models 9/10/2016. Spot the differences. Terminology. Two Components of Illumination. Ambient Light Source

Topic 9: Lighting & Reflection models. Lighting & reflection The Phong reflection model diffuse component ambient component specular component

Global Illumination CS334. Daniel G. Aliaga Department of Computer Science Purdue University

Render all data necessary into textures Process textures to calculate final image

Voxel Cone Tracing and Sparse Voxel Octree for Real-time Global Illumination. Cyril Crassin NVIDIA Research

INFOGR Computer Graphics. J. Bikker - April-July Lecture 10: Ground Truth. Welcome!

Sung-Eui Yoon ( 윤성의 )

Game Technology. Lecture Physically Based Rendering. Dipl-Inform. Robert Konrad Polona Caserman, M.Sc.

ART 268 3D Computer Graphics Texture Mapping and Rendering. Texture Mapping

Advanced Ambient Occlusion Methods for Modern Games

Today. Global illumination. Shading. Interactive applications. Rendering pipeline. Computergrafik. Shading Introduction Local shading models

CSE 167: Lecture #7: Color and Shading. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2011

Interactive Methods in Scientific Visualization

Lab 9 - Metal and Glass

Radiance. Radiance properties. Radiance properties. Computer Graphics (Fall 2008)

Octree-Based Sparse Voxelization for Real-Time Global Illumination. Cyril Crassin NVIDIA Research

LIGHTING - 1. Note. Lights. Ambient occlusion

Local vs. Global Illumination & Radiosity

CSE 681 Illumination and Phong Shading

INFOGR Computer Graphics

Advanced Post Processing

Dynamic Ambient Occlusion and Indirect Lighting. Michael Bunnell NVIDIA Corporation

Illumination & Shading

Computer Graphics Shadow Algorithms

Shadow Rendering EDA101 Advanced Shading and Rendering

TDA362/DIT223 Computer Graphics EXAM (Same exam for both CTH- and GU students)

Design Visualization with Autodesk Alias, Part 2

Computer Graphics I. Assignment 3

SUMMARY. CS380: Introduction to Computer Graphics Texture Mapping Chapter 15. Min H. Kim KAIST School of Computing 18/05/03.

Illumination & Shading: Part 1

Overview. Radiometry and Photometry. Foundations of Computer Graphics (Spring 2012)

MIT Monte-Carlo Ray Tracing. MIT EECS 6.837, Cutler and Durand 1

Enhancing Traditional Rasterization Graphics with Ray Tracing. October 2015

Ray Tracing. Kjetil Babington

CMSC427 Shading Intro. Credit: slides from Dr. Zwicker

Rendering. Converting a 3D scene to a 2D image. Camera. Light. Rendering. View Plane

Monte Carlo Ray Tracing. Computer Graphics CMU /15-662

Bringing Hollywood to Real Time. Abe Wiley 3D Artist 3-D Application Research Group

After the release of Maxwell in September last year, a number of press articles appeared that describe VXGI simply as a technology to improve

INFOGR Computer Graphics

Deus Ex is in the Details

Multi-View Soft Shadows. Louis Bavoil

Configurable Rendering Effects For Mobile Molecule Visualization

How to use Voxel Cone Tracing with two bounces for everything. instead of just Global Illumination

Photorealism: Ray Tracing

Global Illumination. CMPT 361 Introduction to Computer Graphics Torsten Möller. Machiraju/Zhang/Möller

Precomputed Radiance Transfer: Theory and Practice

Visual cues to 3D geometry. Light Reflection and Advanced Shading. Shading. Recognizing materials. size (perspective) occlusion shading

Illumination Models & Shading

Dominic Filion, Senior Engineer Blizzard Entertainment. Rob McNaughton, Lead Technical Artist Blizzard Entertainment

COMPUTING SCIENCE. Real-Time Ambient Occlusion on the Playstation3. Dominic Goulding, Richard Smith, Lee Clark, Gary Ushaw and Graham Morgan

CS5620 Intro to Computer Graphics

Horizon-Based Ambient Occlusion using Compute Shaders. Louis Bavoil

The Rasterization Pipeline

TSBK 07! Computer Graphics! Ingemar Ragnemalm, ISY

Illumination Modelling

Practical Techniques for Ray Tracing in Games. Gareth Morgan (Imagination Technologies) Aras Pranckevičius (Unity Technologies) March, 2014

Lecture 17: Shadows. Projects. Why Shadows? Shadows. Using the Shadow Map. Shadow Maps. Proposals due today. I will mail out comments

Creating soft shadows

Point based global illumination is now a standard tool for film quality renderers. Since it started out as a real time technique it is only natural

CS130 : Computer Graphics Lecture 8: Lighting and Shading. Tamar Shinar Computer Science & Engineering UC Riverside

Overview. Hierarchy. Level of detail hierarchy Texture maps Procedural shading and texturing Texture synthesis and noise.

BRDF Computer Graphics (Spring 2008)

Computer Graphics. Illumination and Shading

Last Time. Why are Shadows Important? Today. Graphics Pipeline. Clipping. Rasterization. Why are Shadows Important?

CENG 477 Introduction to Computer Graphics. Ray Tracing: Shading

Raytracing CS148 AS3. Due :59pm PDT

Ray tracing. Computer Graphics COMP 770 (236) Spring Instructor: Brandon Lloyd 3/19/07 1

Effects needed for Realism. Computer Graphics (Fall 2008) Ray Tracing. Ray Tracing: History. Outline

The Making of Seemore WebGL. Will Eastcott, CEO, PlayCanvas

Soft shadows. Steve Marschner Cornell University CS 569 Spring 2008, 21 February

Subtractive Shadows: A Flexible Framework for Shadow Level of Detail

Shading & Material Appearance

Rendering & Compositing

Image Enhancement by Unsharp Masking the Depth Buffer

For Intuition about Scene Lighting. Today. Limitations of Planar Shadows. Cast Shadows on Planar Surfaces. Shadow/View Duality.

Texture. Detail Representation

EDAF80 Introduction to Computer Graphics. Seminar 3. Shaders. Michael Doggett. Slides by Carl Johan Gribel,

Final Project: Real-Time Global Illumination with Radiance Regression Functions

Advanced Shading I: Shadow Rasterization Techniques

Transcription:

Slides modified from: Patrick Cozzi University of Pennsylvania CIS 565 - Fall 2013 (AO) "shadowing of ambient light "darkening of the ambient shading contribution "the crevices of the model are realistically darkened, and the exposed parts of the model realistically receive more light and are thus brighter "the soft shadow generated by a sphere light of uniform intensity surrounding the scene" Image from Bavoil and Sainz. http://developer.download.nvidia.com/sdk/10.5/direct3d/source/screenspaceao/doc/screenspaceao.pdf Math "the integral of the occlusion contributed from inside a hemisphere of a given radius R, centered at the current surface point P and oriented towards the normal n at P" E surface irradiance L A incoming radiance Evenly lit from all directions Global Illumination Image from Bavoil and Sainz. http://developer.download.nvidia.com/sdk/10.5/direct3d/source/screenspaceao/doc/screenspaceao.pdf 1

Math Math Object Space Cook, Torrance added a visibility term AO: 0 if fully occluded, 1 if fully visible AO: 0 if fully occluded, 1 if fully visible K A means surface irradiance changes with position AO does not depend on light direction Precompute AO for static objects using ray casting How many rays? How far do they go? Local objects? Or all objects? Object Space Object Space Screen Space Cosine weight rays or use importance sampling: cosine distribute number of rays Depends on scene complexity Stored in textures or vertices How can we Support dynamic scenes Be independent of scene complexity Apply AO as a post processing effect using a combination of depth, normal, and position buffers Not physically correct but plausible Visual quality depends on Screen resolution Number of buffers Number of samples Image courtesy of A K Peters, Ltd. http://www.realtimerendering.com/ 2

Depth Buffer Normal Buffer View Space Eye Position Buffer Screen Space Screen Space SSAO Sample a sphere and integrate the samples Image from Martin Mittring. http://developer.amd.com/documentation/presentations/legacy/chapter8-mittring-finding_nextgen_cryengine2.pdf 3

SSAO Improvement SSAO Improvement SSAO Improvement Poisson Sampling Demo 1 4 1 4 16 64 16 64 4

Another SSAO Method Image Enhancement by Unsharp Masking the Depth Buffer: Luft et al. SIGGRAPH 2006 uniform sampler2d utexinput; uniform int ublursize = 4; // use size of noise texture noperspective in vec2 vtexcoord; // input from vertex shader out float fresult; void main() { vec2 texelsize = 1.0 / vec2(texturesize(uinputtex, 0)); float result = 0.0; vec2 hlim = vec2(float(-ublursize) * 0.5 + 0.5); for (int i = 0; i < ublursize; ++i) { for (int j = 0; j < ublursize; ++j) { vec2 offset = (hlim + vec2(float(x), float(y))) * texelsize; result += texture(utexinput, vtexcoord + offset).r; } } Result = result / float(ublursize * ublursize); } Blur depth buffer Subtract it from original depth buffer Scale and clamp image, then subtract from original Superficially resembles AO but fast Image from Mike Pan. http://mikepan.com Depth Buffer Phong Silhouette Toon Haloed Contour D = G D D D - is the negative fraction of the spatial importance Which means, don t lighten the luminance 5

SSAO 6