of Bump Mapping Presented in Real Time by: Kenny Moser Course: ECE8990 Real Time Rendering Presented in Real Time by: Kenny Moser Course: ECE8990 Real Time Rendering The “High’s” The “High’s” and “Low’s” and “Low’s”
Topical Division of Subject Matter Term Project Overview Life Without Bumps Early Techniques Modern Approaches Topical Division of Subject Matter Term Project Overview Life Without Bumps Early Techniques Modern Approaches Demos
Term Project Four Seasons Blending Shaders (leaf/grass transitions) Particle Effects (snow flakes/falling leaves maybe) Key Frame Interpretation (model animation using shaders) Bump Mapping Effects Four Seasons Blending Shaders (leaf/grass transitions) Particle Effects (snow flakes/falling leaves maybe) Key Frame Interpretation (model animation using shaders) Bump Mapping Effects
Round and Smooth
Geometry Types: 1.Macro Features Vertices Triangles (Primitives) 2.Meso Features Can be modeled (computation cost) Can be simulated (loss of detail) 3.Micro Features Modeled in Shader Surface Roughness Geometry Types: 1.Macro Features Vertices Triangles (Primitives) 2.Meso Features Can be modeled (computation cost) Can be simulated (loss of detail) 3.Micro Features Modeled in Shader Surface Roughness
Some Like it Rough Jim Blinn – Man, Myth, Bump Map Pioneer Surface Normal Perturbation 2D Array Surface Normal Perturbation 2D Array 1978 – “Simulation of Wrinkled Surfaces” [2] J. Blinn
Normal Space Tangent Space o Transform lighting o Tangent/Bi-tangent vectors o Transform lighting o Tangent/Bi-tangent vectors Offset Map (offset vector bump map) Height Map Low Space Requirement X Computation (Transformation) Intensive
Modern Update Normal Mapping Full X, Y, Z values stored [-1, 1] mapped to [0, 255] Transformations Still Required Full X, Y, Z values stored [-1, 1] mapped to [0, 255] Transformations Still Required
Bump and Grind Ease V. Realism 1.Simple lookup B.Quick Computation III.Limited Realism i.Occlusion 2.Shadowing 1.Simple lookup B.Quick Computation III.Limited Realism i.Occlusion 2.Shadowing
A Pair O’Lax [3] Self Occlusion: Easy means to increase realism. Originally presented by Tomomichi Kaneko – “Detailed Shape representation with Parallax Mapping” Use height data to guesstimate what can be seen from a given perspective
Polygon heightfield view vector T ideal T Polygon heightfield view vector T ideal T offset T approximate Precise Visible Point Approximation of Visible Point Polygon heightfield view vector T ideal T offset T approximate Offset Limiting Approximation [1] New offset T Adjusted
What a Relief What technique can be used to more accurately determine the intersection point? Ray Tracing like Technique – dubbed “Relief Mapping”, “Parallax Occlusion Mapping”, “Steep Parallax Mapping” Ray Tracing like Technique – dubbed “Relief Mapping”, “Parallax Occlusion Mapping”, “Steep Parallax Mapping”
Relief Yourself Heightfield View vector Texture Samples Approximation
Reliefed of Duty Very Accurate (with enough samples) Able to be applied to shadowing Computationally Expensive Many variations using various performance enhancing techniques [4] Very Accurate (with enough samples) Able to be applied to shadowing Computationally Expensive Many variations using various performance enhancing techniques [4] Area of continued research: Speedup without loss of accuracy Advanced phenomenon (reflection/refraction, dispersion, etc.) Area of continued research: Speedup without loss of accuracy Advanced phenomenon (reflection/refraction, dispersion, etc.)
References and Demos [1]T. Akenine-Moller, E. Haines, N. Hoffman, “Real-Time Rendering”, 3 rd Edition. A. K. Peters, MA, pg [2]J. Blinn, “Simulation of Wrinkled Surfaces,” Computer Graphics (SIG-GRAPH ’78 Proceeedings), pp , August 1978 [3]J. W. Patterson, “Inverse Displacement Mapping”, Computer Graphics forum, vol. 10 no. 2 pp , March 1991 [4]M. Pharr G. Humphreys, “Physically Based Rendering”, 2 nd Edition. Morgan Kaufmann, NY, pg [5]R. Rost, B. Licea-Kane, “OpenGL Shading Language”, 3 rd Edition Addison-Wesley,NJ, pg [1]T. Akenine-Moller, E. Haines, N. Hoffman, “Real-Time Rendering”, 3 rd Edition. A. K. Peters, MA, pg [2]J. Blinn, “Simulation of Wrinkled Surfaces,” Computer Graphics (SIG-GRAPH ’78 Proceeedings), pp , August 1978 [3]J. W. Patterson, “Inverse Displacement Mapping”, Computer Graphics forum, vol. 10 no. 2 pp , March 1991 [4]M. Pharr G. Humphreys, “Physically Based Rendering”, 2 nd Edition. Morgan Kaufmann, NY, pg [5]R. Rost, B. Licea-Kane, “OpenGL Shading Language”, 3 rd Edition Addison-Wesley,NJ, pg