What for? Shadows tell us about the relative locations. Vienna University of Technology 2
|
|
- Donald Beasley
- 5 years ago
- Views:
Transcription
1 Shadows
2 What for? Shadows tell us about the relative locations and motions of objects Vienna University of Technology 2
3 What for? Shadows tell us about the relative locations and motions of objects And about light positions Vienna University of Technology 3
4 What for? Objects look like they are floating Shadows can fix that! Vienna University of Technology 4
5 Motivation Shadows contribute significantly to realism of rendered images Anchors objects in scene Global effect expensive! Light source behaves very similar to camera Is a point visible from the light source? shadows are hidden regions Shadow is a projection of caster on receiver projection methods Best done completely in hardware through shaders Vienna University of Technology 5
6 Shadow Algorithms Static shadow algorithms (lights + objects) Radiosity, ray tracing lightmaps Approximate shadows Projected shadows (Blinn 88) Shadow volumes (Crow 77) Object-space algorithm Shadow maps (Williams 78) Projective image-space algorithm Soft shadow extensions for all above algorithms Still hot research topic (500+ shadow publications) Vienna University of Technology 6
7 Shadow Terms light source creator (occluder, blocker, caster) creator and receiver receiver (occludee) Vienna University of Technology 7
8 Hard vs. Soft Shadows point source area source umbra hard shadow +fast penumbra penumbra -only good for localized lights (sun, projectors) +fake soft shadow through filtering Vienna University of Technology 8 + very realistic - very expensive + becomes more and more usable
9 Static Shadows Glue to surface whatever we want Idea: incorporate shadows into light maps For each texel, cast ray to each light source Bake soft shadows in light maps Not by texture filtering alone, but: Sample area light sources Vienna University of Technology 9
10 Static Soft Shadow Example no filtering filtering 1 sample n samples Vienna University of Technology 10
11 Approximate Shadows Hand-drawn approximate geometry Perceptual studies suggest: shape not so important Minimal cost Vienna University of Technology 11
12 Approximate Shadows Dark polygon (maybe with texture) Cast ray from light source through object center Blend polygon into frame buffer at location of hit May apply additional rotation/scale/translation Incorporate distance and receiver orientation Problem with z-quantization: light viewer Blend at hit polygon Z-test equal z-buffer quantization errors! Vienna University of Technology 12
13 Approximate Shadows Elevate above hit polygon Z-test less or equal shadow too big may appear floating light viewer No z-test, only one eye ray shadow too big, maybe in wrong place Vienna University of Technology 13
14 Projection Shadows (Blinn 88) Shadows for selected large planar receivers Ground plane Walls Projective geometry: flatten 3D model onto plane and darken using framebuffer blend Vienna University of Technology 14
15 Projection for Ground Plane Use similar-triangle tricks l y l l p l y = y y y x x x x v l l l v l p y y x x l l v = y y y x x y x v l v l v l p y=0 y=0 = y z z y y y v l v l p p = 0 y y z p v l p Vienna University of Technology 15 0 y p
16 Projection Matrix M Projective 4x4 matrix: l y lx = 0 lz ly l y Arbitrary yplane: Intersect line p = l α (v l) with plane nx+ d = 0 Express result as a 4x4 matrix Append this matrix to view transform Vienna University of Technology 16 n l v p
17 Projection Shadow Algorithm Render scene (full lighting) For each receiver polygon Compute projection matrix M Append to view matrix Render selected shadow caster With framebuffer blending enabled Vienna University of Technology 17
18 Projection Shadow Artifacts Bad Good extends off ground region Z fighting double blending Vienna University of Technology 18
19 Stencil Buffer Projection Shadows Stencil can solve all of these problems Separate 8-bit frame buffer for numeric ops Stencil buffer algorithm (requires 1 bit): Clear stencil to 0 Draw ground polygon last and with glstencilop(gl_keep, GL_KEEP, GL_ONE); fail zfail pass Draw shadow caster with no depth test but glstencilfunc(gl_equal, 1, 0xFF); glstencilop(gl_keep, GL_KEEP, GL_ZERO); Every plane pixel is touched at most once Vienna University of Technology 19
20 Stencil Buffer Planar Reflections Draw object twice, second time with: glscalef(1, -1, 1) Reflects through floor Bad Vienna University of Technology 20 Good, stencil used to limit reflection.
21 Projection Shadow Summary Easy to implement GLQuake first game to implement it Only practical for very few, large receivers No self shadowing Possible remaining artifacts: wrong shadows Objects behind light source Objects behind receiverer Vienna University of Technology 21
22 Shadow Volumes (Crow 1977) Occluders and light source cast out a 3D shadow volume Shadow through new geometry Results in Pixel correct shadows Light source Shadowed scene Visualization of shadow volume Vienna University of Technology 22
23 Shadow Volumes (Crow 1977) Heavily used in Doom3 Vienna University of Technology 23
24 2D Cutaway of Shadow Volume Occluder polygons extruded to semi-infinite volumes light source shadowing object surface outside shadow volume (illuminated) shadow volume (infinite extent) eye position partially shadowed object surface inside shadow volume (shadowed) Vienna University of Technology 24
25 Shadow Volume Algorithm 3D point-in-polyhedron indide-outside test Principle similar to 2D point-in-polygon test Choose a point known to be outside the volume Count intersection ti on ray from test t point to known point with polyhedron faces Front face +1 Back face -1 Like non-zero winding rule! Known point will distinguish algorithms: Infinity: Z-fail algorithm Eye-point: Z-pass algorithm Vienna University of Technology 25
26 Enter/Leave Approach Increment on enter, decrement on leave Simultaneously l test t all visible ibl pixels Stop when hitting object nearest to viewer light source shadowing object zero +1 zero eye +1 position Vienna University of Technology 26
27 Shadow Volume Algorithm Shadow volumes in object precision Calculated by CPU/Vertex Shaders Shadow test in image precision Using stencil buffer as counter! Vienna University of Technology 27
28 Shadow Volume Algorithm Step 1: Render scene Z-values Vienna University of Technology 28
29 Shadow Volume Algorithm Front face: +1 Back face: -1 Step 2: Render shadow volume faces Vienna University of Technology 29
30 Shadow Volume Algorithm Front face: ±0 (Depth test) Back face: ±0 (Depth test) Σ = ±0 Vienna University of Technology 30
31 Shadow Volume Algorithm ±0 Front face: +1 Back face: ±0 (Depth test) Σ = +1 Vienna University of Technology 31
32 Shadow Volume Algorithm +1 ±0 Front face: +1 Back face: -1 Σ = ±0 Vienna University of Technology 32
33 Shadow Volume Algorithm ±0 +1 ±0 Step 3: Apply shadow mask to scene Vienna University of Technology 33
34 Shadow Volume Algorithm (Zpass) Render scene to establish z-buffer Can also do ambient illumination For each light Clear stencil Draw shadow volume twice using culling Render front faces and increment stencil Render back faces and decrement stencil Illuminate all pixels not in shadow volume Render testing stencil = 0 Use additive blend Vienna University of Technology 34
35 Zpass Technique (Before Shadow) Light source Shadowing object zero +1 zero Eye +1 position Unshadowed object Shadow Volume Count = 0 (no depth tests passes) Vienna University of Technology 35
36 Zpass Technique (In Shadow) Light source Shadowing object zero +1 zero Eye +1 position Shadowed object Shadow Volume Count = = 2 Vienna University of Technology 36
37 Zpass Technique (Behind Shadow) Light source Shadowing object zero +1 zero Eye position Unshadowed object Shadow Volume Count = = 0 Vienna University of Technology 37
38 Zpass Near Plane Problem Missed shadow volume intersection due to near clip plane clipping; leads to mistaken count zero Far clip plane zero +2 Near clip plane Vienna University of Technology 38
39 Alternative: Zfail Technique Zpass near plane problem difficult to solve Have to cap shadow volume at near plane Expensive and not robust, many special cases Try reversing test t order Zfail technique (also known as Carmack s reverse) Start from infinity and stop at nearest intersection Render shadow volume fragments only when depth test t fails Render back faces first and increment Then front faces and decrement Need to cap shadow volume at infinity or light extent Vienna University of Technology 39
40 Zfail, Behind Shadow Light source Shadowing object zero +1 zero Eye +1 position Unshadowed object Shadow Volume Count = 0 (zero depth tests t fail) Vienna University of Technology 40
41 Zfail, in Shadow Light source Shadowing object zero +1 zero Eye +1 position Shadowed object Shadow Volume Count = +1+1 = 2 Vienna University of Technology 41
42 Zfail, before Shadow Light source Shadowing object zero +1 zero Eye +1 position Unshadowed object Shadow Volume Count = = 0 Vienna University of Technology 42
43 Shadow Volumes Shadow volume = closed polyhedron Actually 3 sets of polygons! 1. Object polygons facing the light ( light cap ) 2. Object polygons facing away from the light and projected to infinity (with w = 0) ( dark cap ) 3. At Actual shadow hd volume polygons (extruded dd object edges) ( sides ) but which h edges? Vienna University of Technology 43
44 Zpass vs. Zfail Equivalent, but reversed Zpass Zfail Faster (light cap and dark cap not needed) Light cap inside id object always fails z-test t Dark cap infinitely far away either fails or falls on background Problem at near clip plane (no robust solution) Slower (need to render dark and light caps!) Problem at far clip plane when light extends farther than far clip plane Robust solution with infinite shadow volumes! Vienna University of Technology 44
45 Zpass vs. Zfail Idea: Combine techniques! Test whether viewport in shadow Zfail Otherwise Zpass Idea: avoid far plane clipping in Zfail! Send far plane to infinity in projection matrix Easy, but loses some depth buffer precision Draw infinite vertices using homogeneous coordinates: project to infinity w = 0 robust solution! Vienna University of Technology 45
46 W=0 Rasterization At infinity, vertices become vectors (-3,-1,z1,1) (2,-2,z2,1) (2,-2,z2,0) (-1,-3,z1,0) (2,-2,z2,0) Vienna University of Technology 46
47 Computing Actual SV Polygons Trivial but bad: one volume per triangle 3 shadow volume polygons per triangle Better: find exact silhouette Expensive on CPU Even better: possible silhouette edges Edge shared by a back-facing and frontfacing polygon (with respect to light source!), extended to infinity Actual extrusion can be done by vertex shader Vienna University of Technology 47
48 Possible Silhouette Edges Vienna University of Technology 48
49 Shadow Volumes Summary Advantages Arbitrary receivers Fully dynamic Omnidirectional lights (unlike shadow maps!) Exact shadow boundaries (pixel-accurate) Automatic self shadowing Broad hardware support (stencil) Disadvantages Fill-rate intensive Difficult to get right (Zfail vs. Zpass) Silhouette computation required Doesn t work for arbitrary casters (smoke, fog ) Vienna University of Technology 49
50 Shadow Volume Issues Stencil buffering fast and present in all cards With 8 bits of stencil, maximum shadow depth is 255 EXT_stencil_wrap overcomes this Two-sided stencil tests can test front- and back triangles simultaneously Saves one pass available on NV30+ p NV_depth_clamp (hardware capping) Regain depth precision with normal projection Requires watertight models with connectivity, and watertight ti rasterization ti Vienna University of Technology 50
51 Shadow Maps Casting curved shadows on curved surfaces Image-space algorithm, 2 passes Final scene Shadow map Vienna University of Technology 51
52 Shadow Map Algorithm Eye view Eye Light Shadow map Render from light; save depth values Render from eye Transform all fragments to light space Compare z eye and z light (both in light space!!!) z eye > z Licht Vienna University of Technology 52 y g fragment in shadow
53 Shadow Maps in Hardware Render scene to z-buffer (from light source) Copy depth buffer to texture Render to depth texture + pbuffer Project shadow map into scene (remember projective texturing!) Hardware shadow test (ARB_shadow) Use homogeneous texture coordinates Compare r/q with texel at (s/q, t/q) Output 1 for lit and 0 for shadow Blend fragment color with shadow test result Vienna University of Technology 53
54 Shadow Maps in Hardware Shadow extension available since GeForce3 Requires high precision texture format (ARB_depth_texture) On modern hardware: Render lightspace depth into texture In vertex shader: Calculate texture coordinates as in projective texturing In fragment shader: Depth compare Vienna University of Technology 54
55 Problem: Perspective Aliasing Sufficient resolution far from eye Insufficient resolution near eye Vienna University of Technology okay 55 aliased
56 Problem: Projection Aliasing Shadow receiver ~ orthogonal to Shadow Map - viewplane Vienna University of Technology 56
57 Problem: Incorrect Self-Shadowing Polygon Vienna University of Technology 57
58 Problem: Incorrect Self-Shadowing Polygon z eye > z light Incorrect Self-shadowing Vienna University of Technology 58
59 Solution for Perspective Aliasing Insufficient resolution near eye okay aliased Vienna University of Technology 59
60 Solution for Perspective Aliasing Insufficient resolution near eye Redistribute values in shadow map Vienna University of Technology 60
61 Solution for Perspective Aliasing Sufficient resolution near eye Redistribute values in shadow map okay okay Vienna University of Technology 61
62 Solution for Perspective Aliasing How to redistribute? Use perspective p transform Additional perspective matrix, used in both: Light pass Eye pass More details: [WSP2004] [WSP2004] M. Wimmer, D. Scherzer, and W. Purgathofer; Light space perspective shadow maps; In Proceedings of Eurographics Symposium on Rendering 2004 Vienna University of Technology 62
63 Solution for Projection Aliasing Shadow receiver ~ orthogonal to Shadow Map plane Redistribution does not work But... Vienna University of Technology 63
64 Solution for Projection Aliasing Diffuse lighting: I = I L max( dot( L, N ), 0 ) Almost orthogonal receivers have small I Dark artifacts not very visible! L N Vienna University of Technology 64
65 Solution for Projection Aliasing Recommendations Small ambient term Diffuse term hides artifacts Specular term not problematic Light and view direction almost identical Shadow Map resolution sufficient Vienna University of Technology 65
66 Solution for Projection Aliasing Blur shadows Hides artifacts Soft shadow borders Render shadow result values to separate texture and blur Vienna University of Technology 66
67 Solution for Incorrect Self-Shadowing Polygon Shifted Polygon z Aug > z Licht z Aug < z Licht Incorrect Self-shadowing No Self-shadowing Vienna University of Technology 67
68 Solution for Incorrect Self-Shadowing How to choose bias? No Bias Vienna University of Technology 68 Constant Bias Slope-Scale Bias
69 Depth Bias glpolygonoffset(1.1,4.0) works well Works in window coordinates Too little bias, everything begins to shadow Too much bias, shadow starts too far back Vienna University of Technology 69
70 Solution for Incorrect Self-Shadowing Other possibility: Previous: render front faces into Shadow Map Now: render back faces into Shadow Map: Back- Side Rendering Vienna University of Technology 70
71 Problem: Aliasing Artifacts Resolution mismatch image/shadow map! Use perspective shadow maps Use percentage closer filtering Normal color filtering cannot be used Filter lookup result, not depth map values! 2x2 PCF in hardware for NVIDIA Better: Poisson-disk distributed samples (e.g., 6 averaged aged samples) Vienna University of Technology 71
72 Shadow Map Filtering GL_NEAREST GL_LINEARLINEAR Vienna University of Technology 72
73 Shadow Map Summary Advantages Fast only one additional pass Independent of scene complexity (no additional shadow polygons!) Self shadowing (but beware bias) Can sometimes reuse depth map Disadvantages Problematic for omnidirectional o lights Biasing tweak (light leaks, surface acne) Jagged edges (aliasing) i Vienna University of Technology 73
74 OGRE shadow demo Vienna University of Technology 74
75 Conclusions Shadows are very important but still difficult Many variations based on shadow volumes/shadow maps to do shadowing: Variance shadow mapping (VSM) Perspective shadow mapping (PSM) Hierarchical shadow volume Subdivided shadow maps Vienna University of Technology 75
Shadow Algorithms. CSE 781 Winter Han-Wei Shen
Shadow Algorithms CSE 781 Winter 2010 Han-Wei Shen Why Shadows? Makes 3D Graphics more believable Provides additional cues for the shapes and relative positions of objects in 3D What is shadow? Shadow:
More informationComputer Graphics Shadow Algorithms
Computer Graphics Shadow Algorithms Computer Graphics Computer Science Department University of Freiburg WS 11 Outline introduction projection shadows shadow maps shadow volumes conclusion Motivation shadows
More informationReal-Time Shadows. Last Time? Today. Why are Shadows Important? Shadows as a Depth Cue. For Intuition about Scene Lighting
Last Time? Real-Time Shadows Today Why are Shadows Important? Shadows & Soft Shadows in Ray Tracing Planar Shadows Projective Texture Shadows Shadow Maps Shadow Volumes Why are Shadows Important? Depth
More informationComputergrafik. Matthias Zwicker. Herbst 2010
Computergrafik Matthias Zwicker Universität Bern Herbst 2010 Today Bump mapping Shadows Shadow mapping Shadow mapping in OpenGL Bump mapping Surface detail is often the result of small perturbations in
More informationShadows in the graphics pipeline
Shadows in the graphics pipeline Steve Marschner Cornell University CS 569 Spring 2008, 19 February There are a number of visual cues that help let the viewer know about the 3D relationships between objects
More informationComputer Graphics. Shadows
Computer Graphics Lecture 10 Shadows Taku Komura Today Shadows Overview Projective shadows Shadow texture Shadow volume Shadow map Soft shadows Why Shadows? Shadows tell us about the relative locations
More informationRobust Stencil Shadow Volumes. CEDEC 2001 Tokyo, Japan
Robust Stencil Shadow Volumes CEDEC 2001 Tokyo, Japan Mark J. Kilgard Graphics Software Engineer NVIDIA Corporation 2 Games Begin to Embrace Robust Shadows 3 John Carmack s new Doom engine leads the way
More informationCMSC427 Advanced shading getting global illumination by local methods. Credit: slides Prof. Zwicker
CMSC427 Advanced shading getting global illumination by local methods Credit: slides Prof. Zwicker Topics Shadows Environment maps Reflection mapping Irradiance environment maps Ambient occlusion Reflection
More informationReal-Time Shadows. Last Time? Textures can Alias. Schedule. Questions? Quiz 1: Tuesday October 26 th, in class (1 week from today!
Last Time? Real-Time Shadows Perspective-Correct Interpolation Texture Coordinates Procedural Solid Textures Other Mapping Bump Displacement Environment Lighting Textures can Alias Aliasing is the under-sampling
More informationReal-Time Shadows. MIT EECS 6.837, Durand and Cutler
Real-Time Shadows Last Time? The graphics pipeline Clipping & rasterization of polygons Visibility the depth buffer (z-buffer) Schedule Quiz 2: Thursday November 20 th, in class (two weeks from Thursday)
More informationLast Time. Why are Shadows Important? Today. Graphics Pipeline. Clipping. Rasterization. Why are Shadows Important?
Last Time Modeling Transformations Illumination (Shading) Real-Time Shadows Viewing Transformation (Perspective / Orthographic) Clipping Projection (to Screen Space) Graphics Pipeline Clipping Rasterization
More informationShadow Rendering EDA101 Advanced Shading and Rendering
Shadow Rendering EDA101 Advanced Shading and Rendering 2006 Tomas Akenine-Möller 1 Why, oh why? (1) Shadows provide cues about spatial relationships among objects 2006 Tomas Akenine-Möller 2 Why, oh why?
More informationFor Intuition about Scene Lighting. Today. Limitations of Planar Shadows. Cast Shadows on Planar Surfaces. Shadow/View Duality.
Last Time Modeling Transformations Illumination (Shading) Real-Time Shadows Viewing Transformation (Perspective / Orthographic) Clipping Projection (to Screen Space) Graphics Pipeline Clipping Rasterization
More informationReal-Time Shadows. Last Time? Schedule. Questions? Today. Why are Shadows Important?
Last Time? Real-Time Shadows The graphics pipeline Clipping & rasterization of polygons Visibility the depth buffer (z-buffer) Schedule Questions? Quiz 2: Thursday November 2 th, in class (two weeks from
More informationLast Time. Reading for Today: Graphics Pipeline. Clipping. Rasterization
Last Time Modeling Transformations Illumination (Shading) Real-Time Shadows Viewing Transformation (Perspective / Orthographic) Clipping Projection (to Screen Space) Scan Conversion (Rasterization) Visibility
More informationAcknowledgement: Images and many slides from presentations by Mark J. Kilgard and other Nvidia folks, from slides on developer.nvidia.
Shadows Acknowledgement: Images and many slides from presentations by Mark J. Kilgard and other Nvidia folks, from slides on developer.nvidia.com Practical & Robust Stenciled Shadow Volumes for Hardware-Accelerated
More informationShadows. Real-Time Hard Shadows. Collected by Ronen Gvili. Most slides were taken from : Fredu Durand Stefan Brabec
Shadows Real-Time Hard Shadows Collected by Ronen Gvili. Most slides were taken from : Fredu Durand Stefan Brabec Hard Shadows Planar (Projected) Shadows Shadow Maps Volume (Stencil) Shadows 1 Soft Shadows
More informationComputer Graphics 10 - Shadows
Computer Graphics 10 - Shadows Tom Thorne Slides courtesy of Taku Komura www.inf.ed.ac.uk/teaching/courses/cg Overview Shadows Overview Projective shadows Shadow textures Shadow volume Shadow map Soft
More informationReal-Time Shadows. Computer Graphics. MIT EECS Durand 1
Real-Time Shadows Computer Graphics MIT EECS 6.837 Durand 1 Why are Shadows Important? Depth cue Scene Lighting Realism Contact points 2 Shadows as a Depth Cue source unknown. All rights reserved. This
More informationOverview. A real-time shadow approach for an Augmented Reality application using shadow volumes. Augmented Reality.
Overview A real-time shadow approach for an Augmented Reality application using shadow volumes Introduction of Concepts Standard Stenciled Shadow Volumes Method Proposed Approach in AR Application Experimental
More informationShadows. COMP 575/770 Spring 2013
Shadows COMP 575/770 Spring 2013 Shadows in Ray Tracing Shadows are important for realism Basic idea: figure out whether a point on an object is illuminated by a light source Easy for ray tracers Just
More informationAdvanced Shading I: Shadow Rasterization Techniques
Advanced Shading I: Shadow Rasterization Techniques Shadow Terminology umbra: light totally blocked penumbra: light partially blocked occluder: object blocking light Shadow Terminology umbra: light totally
More informationShadow Techniques. Sim Dietrich NVIDIA Corporation
Shadow Techniques Sim Dietrich NVIDIA Corporation sim.dietrich@nvidia.com Lighting & Shadows The shadowing solution you choose can greatly influence the engine decisions you make This talk will outline
More informationVolume Shadows Tutorial Nuclear / the Lab
Volume Shadows Tutorial Nuclear / the Lab Introduction As you probably know the most popular rendering technique, when speed is more important than quality (i.e. realtime rendering), is polygon rasterization.
More informationLecture 17: Shadows. Projects. Why Shadows? Shadows. Using the Shadow Map. Shadow Maps. Proposals due today. I will mail out comments
Projects Lecture 17: Shadows Proposals due today I will mail out comments Fall 2004 Kavita Bala Computer Science Cornell University Grading HW 1: will email comments asap Why Shadows? Crucial for spatial
More informationPipeline Operations. CS 4620 Lecture 10
Pipeline Operations CS 4620 Lecture 10 2008 Steve Marschner 1 Hidden surface elimination Goal is to figure out which color to make the pixels based on what s in front of what. Hidden surface elimination
More informationTexture Mapping II. Light maps Environment Maps Projective Textures Bump Maps Displacement Maps Solid Textures Mipmaps Shadows 1. 7.
Texture Mapping II Light maps Environment Maps Projective Textures Bump Maps Displacement Maps Solid Textures Mipmaps Shadows 1 Light Maps Simulates the effect of a local light source + = Can be pre-computed
More informationShadows in Computer Graphics. by Björn Kühl im/ve University of Hamburg, Germany
Shadows in Computer Graphics by Björn Kühl im/ve University of Hamburg, Germany Importance of Shadows Shadows provide cues to the position of objects casting and receiving shadows to the position of the
More informationRendering. Converting a 3D scene to a 2D image. Camera. Light. Rendering. View Plane
Rendering Pipeline Rendering Converting a 3D scene to a 2D image Rendering Light Camera 3D Model View Plane Rendering Converting a 3D scene to a 2D image Basic rendering tasks: Modeling: creating the world
More informationShadows. Shadows. Spatial relationship between objects. Shadows as depth cue. Spatial relationship between objects
Shadows Thanks to: Frédo Durand and Seth Teller MIT Shadows Realism Depth cue 1 2 Shadows as depth cue Spatial relationship between objects 3 Michael McCool Univ of Waterloo 4 Spatial relationship between
More informationShadow Volume History (1) Shadow Volumes. Shadow Volume History (2) Shadow Volume History (3) Shadow Volume Basics. Shadow Volume History (4)
Shadow Volume History (1) Shadow Volumes Invented by Frank Crow [ 77] Software rendering scan-line approach Brotman and Badler [ 84] Software-based depth-buffered approach Used lots of point lights to
More informationCreating soft shadows
A Hybrid Approach One more shadow algorithm which deserves mention is McCool s clever idea shadow volume reconstruction from depth maps [McCool 2000]. This algorithm is a hybrid of the shadow map and shadow
More informationShadows. Shadows. Thanks to: Frédo Durand and Seth Teller MIT. Realism Depth cue
Shadows Thanks to: Frédo Durand and Seth Teller MIT 1 Shadows Realism Depth cue 2 1 Shadows as depth cue 3 Spatial relationship between objects Michael McCool Univ of Waterloo 4 2 Spatial relationship
More informationSimpler Soft Shadow Mapping Lee Salzman September 20, 2007
Simpler Soft Shadow Mapping Lee Salzman September 20, 2007 Lightmaps, as do other precomputed lighting methods, provide an efficient and pleasing solution for lighting and shadowing of relatively static
More informationShadows. Shadows. Spatial relationship between objects. Shadows as depth cue. Spatial relationship between objects
Shadows Thanks to: Frédo Durand and Seth Teller MIT Shadows Realism Depth cue 1 2 Shadows as depth cue Spatial relationship between objects 3 Michael McCool Univ of Waterloo 4 Spatial relationship between
More informationReal-time Shadow Mapping
Electrical Engineering Faculty Technion Israel Institute of Technology Haifa, ISRAEL Real-time Shadow Mapping Joined Project in Computer Graphics for Rafael Armament Development Authority Igor Naigovzin
More information03 RENDERING PART TWO
03 RENDERING PART TWO WHAT WE HAVE SO FAR: GEOMETRY AFTER TRANSFORMATION AND SOME BASIC CLIPPING / CULLING TEXTURES AND MAPPING MATERIAL VISUALLY DISTINGUISHES 2 OBJECTS WITH IDENTICAL GEOMETRY FOR NOW,
More informationA Shadow Volume Algorithm for Opaque and Transparent Non-Manifold Casters
jgt 2008/7/20 22:19 page 1 #1 Vol. [VOL], No. [ISS]: 1?? A Shadow Volume Algorithm for Opaque and Transparent Non-Manifold Casters Byungmoon Kim 1, Kihwan Kim 2, Greg Turk 2 1 NVIDIA, 2 Georgia Institute
More informationHard Shadows Aliasing and Remedies
Hard Shadows Aliasing and Remedies Michael Wimmer www.realtimeshadows.com Shadow Map as Signal Reconstruction Initial sampling: shadow-map rendering Resampling: determined by view Reconstruction: nearest
More informationComputer Graphics (CS 543) Lecture 10: Soft Shadows (Maps and Volumes), Normal and Bump Mapping
Computer Graphics (CS 543) Lecture 10: Soft Shadows (Maps and Volumes), Normal and Bump Mapping Prof Emmanuel Agu Computer Science Dept. Worcester Polytechnic Institute (WPI) Shadow Buffer Theory Observation:
More informationPipeline Operations. CS 4620 Lecture 14
Pipeline Operations CS 4620 Lecture 14 2014 Steve Marschner 1 Pipeline you are here APPLICATION COMMAND STREAM 3D transformations; shading VERTEX PROCESSING TRANSFORMED GEOMETRY conversion of primitives
More informationAdvanced Shading and Texturing
Real-Time Graphics Architecture Kurt Akeley Pat Hanrahan http://www.graphics.stanford.edu/courses/cs448a-01-fall Advanced Shading and Texturing 1 Topics Features Bump mapping Environment mapping Shadow
More informationgraphics pipeline computer graphics graphics pipeline 2009 fabio pellacini 1
graphics pipeline computer graphics graphics pipeline 2009 fabio pellacini 1 graphics pipeline sequence of operations to generate an image using object-order processing primitives processed one-at-a-time
More informationgraphics pipeline computer graphics graphics pipeline 2009 fabio pellacini 1
graphics pipeline computer graphics graphics pipeline 2009 fabio pellacini 1 graphics pipeline sequence of operations to generate an image using object-order processing primitives processed one-at-a-time
More informationPipeline Operations. CS 4620 Lecture Steve Marschner. Cornell CS4620 Spring 2018 Lecture 11
Pipeline Operations CS 4620 Lecture 11 1 Pipeline you are here APPLICATION COMMAND STREAM 3D transformations; shading VERTEX PROCESSING TRANSFORMED GEOMETRY conversion of primitives to pixels RASTERIZATION
More informationOptimized Stencil Shadow Volumes. Cass Everitt & Mark J. Kilgard
Optimized Stencil Shadow Volumes Cass Everitt & Mark J. Kilgard Outline: Complete Lecture Review of Stenciled Shadow Volumes Stenciled Shadow Volumes Optimizations More Information Outline: Review of Stenciled
More informationReal-time Shadows in CG
Real-time Shadows in CG Christian Luksch MatNr. 0525392 Institute of Computer Graphics and Algorithms TU Vienna Abstract This work should give an overview of various shadow techniques used in real-time
More informationCEng 477 Introduction to Computer Graphics Fall 2007
Visible Surface Detection CEng 477 Introduction to Computer Graphics Fall 2007 Visible Surface Detection Visible surface detection or hidden surface removal. Realistic scenes: closer objects occludes the
More informationMulti-View Soft Shadows. Louis Bavoil
Multi-View Soft Shadows Louis Bavoil lbavoil@nvidia.com Document Change History Version Date Responsible Reason for Change 1.0 March 16, 2011 Louis Bavoil Initial release Overview The Multi-View Soft Shadows
More informationRasterization Overview
Rendering Overview The process of generating an image given a virtual camera objects light sources Various techniques rasterization (topic of this course) raytracing (topic of the course Advanced Computer
More informationDeferred Rendering Due: Wednesday November 15 at 10pm
CMSC 23700 Autumn 2017 Introduction to Computer Graphics Project 4 November 2, 2017 Deferred Rendering Due: Wednesday November 15 at 10pm 1 Summary This assignment uses the same application architecture
More informationCS 381 Computer Graphics, Fall 2008 Midterm Exam Solutions. The Midterm Exam was given in class on Thursday, October 23, 2008.
CS 381 Computer Graphics, Fall 2008 Midterm Exam Solutions The Midterm Exam was given in class on Thursday, October 23, 2008. 1. [4 pts] Drawing Where? Your instructor says that objects should always be
More informationModels and Architectures
Models and Architectures Objectives Learn the basic design of a graphics system Introduce graphics pipeline architecture Examine software components for an interactive graphics system 1 Image Formation
More informationSoft shadows. Steve Marschner Cornell University CS 569 Spring 2008, 21 February
Soft shadows Steve Marschner Cornell University CS 569 Spring 2008, 21 February Soft shadows are what we normally see in the real world. If you are near a bare halogen bulb, a stage spotlight, or other
More informationPractical Shadow Mapping
Practical Shadow Mapping Stefan Brabec Thomas Annen Hans-Peter Seidel Max-Planck-Institut für Informatik Saarbrücken, Germany Abstract In this paper we propose several methods that can greatly improve
More informationCSE 167: Introduction to Computer Graphics Lecture #18: More Effects. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2016
CSE 167: Introduction to Computer Graphics Lecture #18: More Effects Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2016 Announcements TA evaluations CAPE Final project blog
More informationIllumination and Geometry Techniques. Karljohan Lundin Palmerius
Illumination and Geometry Techniques Karljohan Lundin Palmerius Objectives Complex geometries Translucency Huge areas Really nice graphics! Shadows Graceful degradation Acceleration Optimization Straightforward
More informationIntroduction to Computer Graphics with WebGL
Introduction to Computer Graphics with WebGL Ed Angel Professor Emeritus of Computer Science Founding Director, Arts, Research, Technology and Science Laboratory University of New Mexico Models and Architectures
More informationCS 5610 / Spring Depth Buffering and Hidden Surface Removal
Define a buffer by its spatial resolution (n x m) and its depth (or precision) k, the number of bits/pixel Buffers pixel Angel and Shreiner: Interactive Computer Graphics 7E Addison-Wesley 2015 2 Depth
More informationProjective Shadows. D. Sim Dietrich Jr.
Projective Shadows D. Sim Dietrich Jr. Topics Projective Shadow Types Implementation on DirectX 7 HW Implementation on DirectX8 HW Integrating Shadows into an engine Types of Projective Shadows Static
More informationModels and Architectures. Ed Angel Professor of Computer Science, Electrical and Computer Engineering, and Media Arts University of New Mexico
Models and Architectures Ed Angel Professor of Computer Science, Electrical and Computer Engineering, and Media Arts University of New Mexico 1 Objectives Learn the basic design of a graphics system Introduce
More informationTSBK03 Screen-Space Ambient Occlusion
TSBK03 Screen-Space Ambient Occlusion Joakim Gebart, Jimmy Liikala December 15, 2013 Contents 1 Abstract 1 2 History 2 2.1 Crysis method..................................... 2 3 Chosen method 2 3.1 Algorithm
More informationReflections, Shadows, Transparency, and Fog
GDC Tutorial: Advanced OpenGL Game Development Reflections, Shadows, Transparency, and Fog March 8, 2000 Mark J. Kilgard Graphics Software Engineer NVIDIA Corporation Quick Tutorial on Stencil Testing
More informationReal-Time Universal Capture Facial Animation with GPU Skin Rendering
Real-Time Universal Capture Facial Animation with GPU Skin Rendering Meng Yang mengyang@seas.upenn.edu PROJECT ABSTRACT The project implements the real-time skin rendering algorithm presented in [1], and
More informationRendering Algorithms: Real-time indirect illumination. Spring 2010 Matthias Zwicker
Rendering Algorithms: Real-time indirect illumination Spring 2010 Matthias Zwicker Today Real-time indirect illumination Ray tracing vs. Rasterization Screen space techniques Visibility & shadows Instant
More informationAn Interactive Introduction to OpenGL Programming
Define a buffer by its spatial resolution (n n x m) ) and its depth (or precision) k,, the number of bits/pixel Buffers pixel Angel and Shreiner: Interactive Computer Graphics 7E Addison-Wesley 2015 2
More informationAlgorithms for Real-Time Rendering of Soft Shadows
University of Canterbury COSC460 Honours Report Algorithms for Real-Time Rendering of Soft Shadows Richard Viney rjv20@student.canterbury.ac.nz 8 th November, 2007 Supervisor: Dr R. Mukundan mukundan@canterbury.ac.nz
More informationFAST SELF-SHADOWING USING OCCLUDER TEXTURES. A Thesis CHRISTOPHER RYAN COLEMAN
FAST SELF-SHADOWING USING OCCLUDER TEXTURES A Thesis by CHRISTOPHER RYAN COLEMAN Submitted to the Office of Graduate Studies of Texas A&M University in partial fulfillment of the requirements for the degree
More informationCS 354R: Computer Game Technology
CS 354R: Computer Game Technology Texture and Environment Maps Fall 2018 Texture Mapping Problem: colors, normals, etc. are only specified at vertices How do we add detail between vertices without incurring
More informationStencil Shadow Volumes
Helsinki University of Technology Telecommunications Software and Multimedia Laboratory T-111.500 Seminar on Computer Graphics Spring 2002 Rendering of High Quality 3D-Graphics Stencil Shadow Volumes Matti
More informationRecollection. Models Pixels. Model transformation Viewport transformation Clipping Rasterization Texturing + Lights & shadows
Recollection Models Pixels Model transformation Viewport transformation Clipping Rasterization Texturing + Lights & shadows Can be computed in different stages 1 So far we came to Geometry model 3 Surface
More informationHardware-driven visibility culling
Hardware-driven visibility culling I. Introduction 20073114 김정현 The goal of the 3D graphics is to generate a realistic and accurate 3D image. To achieve this, it needs to process not only large amount
More informationTDA362/DIT223 Computer Graphics EXAM (Same exam for both CTH- and GU students)
TDA362/DIT223 Computer Graphics EXAM (Same exam for both CTH- and GU students) Saturday, January 13 th, 2018, 08:30-12:30 Examiner Ulf Assarsson, tel. 031-772 1775 Permitted Technical Aids None, except
More informationCSE 167: Introduction to Computer Graphics Lecture #9: Visibility. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2018
CSE 167: Introduction to Computer Graphics Lecture #9: Visibility Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2018 Announcements Midterm Scores are on TritonEd Exams to be
More informationPractical Shadows. Outline
Practical Shadows Out of the demo, into the engine Tom Forsyth RAD Game Tools Outline Shadow volumes (stencil shadows) Fairly brief covered well elsewhere Shadow buffers Scene management of shadow buffers
More informationProjection Matrix Tricks. Eric Lengyel
Projection Matrix Tricks Eric Lengyel Outline Projection Matrix Internals Infinite Projection Matrix Depth Modification Oblique Near Clipping Plane Slides available at http://www.terathon.com www.terathon.com/
More informationCS4620/5620: Lecture 14 Pipeline
CS4620/5620: Lecture 14 Pipeline 1 Rasterizing triangles Summary 1! evaluation of linear functions on pixel grid 2! functions defined by parameter values at vertices 3! using extra parameters to determine
More informationOther Rendering Techniques CSE 872 Fall Intro You have seen Scanline converter (+z-buffer) Painter s algorithm Radiosity CSE 872 Fall
Other Rendering Techniques 1 Intro You have seen Scanline converter (+z-buffer) Painter s algorithm Radiosity 2 Intro Some more Raytracing Light maps Photon-map Reyes Shadow maps Sahdow volumes PRT BSSRF
More informationIn- Class Exercises for Shadow Algorithms
In- Class Exercises for Shadow Algorithms Alex Wiens and Gitta Domik, University of Paderborn, Germany Abstract: We are describing two exercises to deepen the understanding of two popular real-time shadow
More informationCHAPTER 3. Visualization of Vector Data. 3.1 Motivation
CHAPTER 3 Visualization of Vector Data 3.1 Motivation Besides raster data, vector data are the fundamental information representation stored and managed in today s geographic information systems (GIS).
More informationFRUSTUM-TRACED RASTER SHADOWS: REVISITING IRREGULAR Z-BUFFERS
FRUSTUM-TRACED RASTER SHADOWS: REVISITING IRREGULAR Z-BUFFERS Chris Wyman, Rama Hoetzlein, Aaron Lefohn 2015 Symposium on Interactive 3D Graphics & Games CONTRIBUTIONS Full scene, fully dynamic alias-free
More informationCSE528 Computer Graphics: Theory, Algorithms, and Applications
CSE528 Computer Graphics: Theory, Algorithms, and Applications Hong Qin State University of New York at Stony Brook (Stony Brook University) Stony Brook, New York 11794--4400 Tel: (631)632-8450; Fax: (631)632-8334
More informationHigh-quality Shadows with Improved Paraboloid Mapping
High-quality Shadows with Improved Paraboloid Mapping Juraj Vanek, Jan Navrátil, Adam Herout, and Pavel Zemčík Brno University of Technology, Faculty of Information Technology, Czech Republic http://www.fit.vutbr.cz
More informationINFOGR Computer Graphics. J. Bikker - April-July Lecture 10: Ground Truth. Welcome!
INFOGR Computer Graphics J. Bikker - April-July 2015 - Lecture 10: Ground Truth Welcome! Today s Agenda: Limitations of Whitted-style Ray Tracing Monte Carlo Path Tracing INFOGR Lecture 10 Ground Truth
More informationApplications of Explicit Early-Z Culling
Applications of Explicit Early-Z Culling Jason L. Mitchell ATI Research Pedro V. Sander ATI Research Introduction In past years, in the SIGGRAPH Real-Time Shading course, we have covered the details of
More informationDOOM 3 : The guts of a rendering engine
DOOM 3 : The guts of a rendering engine Introduction Background Game Design Techniques Tradeoffs Problems and Solutions Background Doom One of the most successful PC games of all time Kicked off First
More informationFRUSTUM-TRACED RASTER SHADOWS: REVISITING IRREGULAR Z-BUFFERS
FRUSTUM-TRACED RASTER SHADOWS: REVISITING IRREGULAR Z-BUFFERS Chris Wyman, Rama Hoetzlein, Aaron Lefohn 2015 Symposium on Interactive 3D Graphics & Games CONTRIBUTIONS Full scene, fully dynamic alias-free
More informationShadow Mapping. Marc Stamminger, University of Erlangen-Nuremberg
Shadow Mapping Marc Stamminger, University of Erlangen-Nuremberg 1 Idea assumption: spot light with spot angle
More information6.837 Introduction to Computer Graphics Quiz 2 Thursday November 20, :40-4pm One hand-written sheet of notes allowed
6.837 Introduction to Computer Graphics Quiz 2 Thursday November 20, 2003 2:40-4pm One hand-written sheet of notes allowed Name: 1 2 3 4 5 6 7 / 4 / 15 / 5 / 5 / 12 / 2 / 7 Total / 50 1 Animation [ /4]
More informationShadow Mapping for Hemispherical and Omnidirectional Light Sources
Shadow Mapping for Hemispherical and Omnidirectional Light Sources Abstract Stefan Brabec Thomas Annen Hans-Peter Seidel Computer Graphics Group Max-Planck-Institut für Infomatik Stuhlsatzenhausweg 85,
More informationReal-Time Rendering (Echtzeitgraphik) Michael Wimmer
Real-Time Rendering (Echtzeitgraphik) Michael Wimmer wimmer@cg.tuwien.ac.at Walking down the graphics pipeline Application Geometry Rasterizer What for? Understanding the rendering pipeline is the key
More informationReading. 18. Projections and Z-buffers. Required: Watt, Section , 6.3, 6.6 (esp. intro and subsections 1, 4, and 8 10), Further reading:
Reading Required: Watt, Section 5.2.2 5.2.4, 6.3, 6.6 (esp. intro and subsections 1, 4, and 8 10), Further reading: 18. Projections and Z-buffers Foley, et al, Chapter 5.6 and Chapter 6 David F. Rogers
More informationVincent Forest, Loïc Barthe, Mathias Paulin. IRIT-UPS-CNRS University of Toulouse, France
Realistic Soft Shadows by Penumbra-Wedges Blending Vincent Forest, Loïc Barthe, Mathias Paulin IRIT-UPS-CNRS University of Toulouse, France www.irit.fr/~vincent.forest/softshadows.php Outline Introduction
More informationOrthogonal Projection Matrices. Angel and Shreiner: Interactive Computer Graphics 7E Addison-Wesley 2015
Orthogonal Projection Matrices 1 Objectives Derive the projection matrices used for standard orthogonal projections Introduce oblique projections Introduce projection normalization 2 Normalization Rather
More informationEnabling immersive gaming experiences Intro to Ray Tracing
Enabling immersive gaming experiences Intro to Ray Tracing Overview What is Ray Tracing? Why Ray Tracing? PowerVR Wizard Architecture Example Content Unity Hybrid Rendering Demonstration 3 What is Ray
More informationComputer Graphics Introduction. Taku Komura
Computer Graphics Introduction Taku Komura What s this course all about? We will cover Graphics programming and algorithms Graphics data structures Applied geometry, modeling and rendering Not covering
More informationGaël Guennebaud Loïc Barthe, Mathias Paulin IRIT UPS CNRS TOULOUSE FRANCE Gaël Guennebaud Cyprus June 2006
Real-time Soft Shadow Mapping by back-projection Gaël Guennebaud Loïc Barthe, Mathias Paulin IRIT UPS CNRS TOULOUSE FRANCE http://www.irit.fr/~gael.guennebaud/ 1 Hard Shadows light source Is the light
More informationThesis Report. Thesis Title: Soft Shadow Rendering in Real Time. Shihab Rezwan Manzur ID: CSE Department BRAC University
Thesis Report Thesis Title: Soft Shadow Rendering in Real Time Shihab Rezwan Manzur ID: 09201028 CSE Department BRAC University Supervisor: Professor Dr. Mumit Khan Date: 13-08 - 12 Abstract Shadows have
More informationBCC Sphere Transition
BCC Sphere Transition The Sphere Transition shape models the source image onto a sphere. Unlike the Sphere filter, the Sphere Transition filter allows you to animate Perspective, which is useful in creating
More informationCHAPTER 1 Graphics Systems and Models 3
?????? 1 CHAPTER 1 Graphics Systems and Models 3 1.1 Applications of Computer Graphics 4 1.1.1 Display of Information............. 4 1.1.2 Design.................... 5 1.1.3 Simulation and Animation...........
More information