SlideShare uma empresa Scribd logo
1 de 40
A Practical and Robust Bump-mapping Technique for Today’s GPUs Stanford Shading Group presentation May 8, 2000
Mark J. Kilgard Graphics Software Engineer NVIDIA Corporation
“Hardware Bump Mapping” mostly hype so far ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Example
Overview of the Technique ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Features of the technique ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Anatomy of the technique ,[object Object], + diffuse decal specular
High-level view ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Per-pixel lighting building blocks ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Per-pixel lighting building blocks ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Surface self-shadowing ,[object Object],[object Object],[object Object],L N N’ L N’ N Surface  should self-shadow due to perturbed normal, I.e., L dot N’<0 Surface  should self-shadow due to unperturbed normal, I.e., L dot N<0
Surface self-shadowing ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Complete lighting model ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Self-shadowing example Light leaks onto torus “back side” due to bad geometric self-shadowing Proper geometric self-shadowing!
Some CPU work required ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Normal Map Filtering Issues ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Sub-fragment diffuse lighting ,[object Object],[object Object],[object Object],[object Object]
Examining the Approximation ,[object Object],[object Object],[object Object],[object Object],[object Object]
Diffuse Normal Map Filtering ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Sub-fragment Specular Lighting ,[object Object],[object Object],[object Object],[object Object]
Attempting a Specular Approximation ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Specular Filtering Stand-in ,[object Object],[object Object],[object Object]
Single Filtered Normal Map Texture ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Issues ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Claim: practical ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Claim: robust ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Source available on the web already ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Other novel uses for cube mapping ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Example for stable specular highlights Bright, stable specular highlight, even at low tessellation. Poor per-vertex sampling of the highlight. Wobbles during animation. Cube map lighting Standard per-vertex lighting
Another example of stable specular highlights High tessellation does not completely fix per-vertex artifacts Still bright and stable. Better sampled, but still has streaky artifacts.
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Still more novel uses for cube maps & combiners
One pass per-pixel diffuse & specular example! OpenGL per-vertex lighting with mesh of thousands of vertices (note displacement). Per-pixel specular normal mapping with cube maps (flat, but lighting all there).
Example in wireframe Dense, dense mesh. One polygon!
Object-space per-pixel lighting example
Object-space per-pixel example in wire-frame The detail is per-pixel!
Register combiners overview ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Register combiners operational overview general combiner stages final combiner RGB Portion Alpha Portion initialize registers stage #0 stage #1 (optional) AB+CD, AB, CD AB+CD, AB, CD AB+CD, AB, CD AB+CD, AB, CD AB+(1-A)C+D, EF, G RGBA fragment
General combiners  RGB operation zero primary color secondary color constant color 0 constant color 1 fog spare 1 spare 0 texture 0 texture 1 A B C D input map input map input map not writeable RGB A RGB A input registers computations output registers scale and bias input map not readable zero primary color secondary color constant color 0 constant color 1 fog spare 1 spare 0 texture 0 texture 1 A B + C D A B mux C D -or- A B A    B -or- C    D C D -or-
General combiners Alpha operation zero primary color secondary color constant color 0 constant color 1 fog spare 1 spare 0 texture 0 texture 1 A B C D A B C D input map input map input map not writeable RGB A RGB A input registers computations output registers scale and bias input map not readable zero primary color secondary color constant color 0 constant color 1 fog spare 1 spare 0 texture 0 texture 1 A B + C D A B mux C D -or-
Final combiner operation zero primary color secondary color constant color 0 constant color 1 fog spare 1 spare 0 texture 0 texture 1 A B C D RGB A input registers computations A B + ( 1 - A) C + D E F E F G spare 0 + secondary color input map input map input map input map input map input map input map fragment RGB out fragment Alpha out G

Mais conteúdo relacionado

Mais procurados

Deferred shading
Deferred shadingDeferred shading
Deferred shading
Frank Chao
 
Practical and Robust Stenciled Shadow Volumes for Hardware-Accelerated Rendering
Practical and Robust Stenciled Shadow Volumes for Hardware-Accelerated RenderingPractical and Robust Stenciled Shadow Volumes for Hardware-Accelerated Rendering
Practical and Robust Stenciled Shadow Volumes for Hardware-Accelerated Rendering
Mark Kilgard
 
Introduction to Global Illumination by Aryo
Introduction to Global Illumination by AryoIntroduction to Global Illumination by Aryo
Introduction to Global Illumination by Aryo
Agate Studio
 

Mais procurados (20)

Deferred shading
Deferred shadingDeferred shading
Deferred shading
 
Global illumination
Global illuminationGlobal illumination
Global illumination
 
Reyes
ReyesReyes
Reyes
 
Calibrating Lighting and Materials in Far Cry 3
Calibrating Lighting and Materials in Far Cry 3Calibrating Lighting and Materials in Far Cry 3
Calibrating Lighting and Materials in Far Cry 3
 
The Unique Lighting of Mirror's Edge
The Unique Lighting of Mirror's EdgeThe Unique Lighting of Mirror's Edge
The Unique Lighting of Mirror's Edge
 
The Rendering Technology of Killzone 2
The Rendering Technology of Killzone 2The Rendering Technology of Killzone 2
The Rendering Technology of Killzone 2
 
Physically Based and Unified Volumetric Rendering in Frostbite
Physically Based and Unified Volumetric Rendering in FrostbitePhysically Based and Unified Volumetric Rendering in Frostbite
Physically Based and Unified Volumetric Rendering in Frostbite
 
Light prepass
Light prepassLight prepass
Light prepass
 
Around the World in 80 Shaders
Around the World in 80 ShadersAround the World in 80 Shaders
Around the World in 80 Shaders
 
Bending the Graphics Pipeline
Bending the Graphics PipelineBending the Graphics Pipeline
Bending the Graphics Pipeline
 
Practical and Robust Stenciled Shadow Volumes for Hardware-Accelerated Rendering
Practical and Robust Stenciled Shadow Volumes for Hardware-Accelerated RenderingPractical and Robust Stenciled Shadow Volumes for Hardware-Accelerated Rendering
Practical and Robust Stenciled Shadow Volumes for Hardware-Accelerated Rendering
 
Deferred shading
Deferred shadingDeferred shading
Deferred shading
 
CS 354 Shadows
CS 354 ShadowsCS 354 Shadows
CS 354 Shadows
 
Interactive Refractions And Caustics Using Image Space Techniques
Interactive Refractions And Caustics Using Image Space TechniquesInteractive Refractions And Caustics Using Image Space Techniques
Interactive Refractions And Caustics Using Image Space Techniques
 
Authoring of procedural rocks in The Blacksmith realtime short
Authoring of procedural rocks in The Blacksmith realtime shortAuthoring of procedural rocks in The Blacksmith realtime short
Authoring of procedural rocks in The Blacksmith realtime short
 
Paris Master Class 2011 - 07 Dynamic Global Illumination
Paris Master Class 2011 - 07 Dynamic Global IlluminationParis Master Class 2011 - 07 Dynamic Global Illumination
Paris Master Class 2011 - 07 Dynamic Global Illumination
 
Photogrammetry and Star Wars Battlefront
Photogrammetry and Star Wars BattlefrontPhotogrammetry and Star Wars Battlefront
Photogrammetry and Star Wars Battlefront
 
Introduction to Global Illumination by Aryo
Introduction to Global Illumination by AryoIntroduction to Global Illumination by Aryo
Introduction to Global Illumination by Aryo
 
Lighting you up in Battlefield 3
Lighting you up in Battlefield 3Lighting you up in Battlefield 3
Lighting you up in Battlefield 3
 
Advanced Real-time Post-Processing using GPGPU techniques
Advanced Real-time Post-Processing using GPGPU techniquesAdvanced Real-time Post-Processing using GPGPU techniques
Advanced Real-time Post-Processing using GPGPU techniques
 

Destaque

SXSW 2012 - NFC: i'd Bump That
SXSW 2012 - NFC: i'd Bump That SXSW 2012 - NFC: i'd Bump That
SXSW 2012 - NFC: i'd Bump That
Paul Gelb
 

Destaque (9)

A Practical and Robust Bump-mapping Technique for Today’s GPUs (paper)
A Practical and Robust Bump-mapping Technique for Today’s GPUs (paper)A Practical and Robust Bump-mapping Technique for Today’s GPUs (paper)
A Practical and Robust Bump-mapping Technique for Today’s GPUs (paper)
 
Next-Gen shaders (2008)
Next-Gen shaders (2008)Next-Gen shaders (2008)
Next-Gen shaders (2008)
 
SXSW 2012 - NFC: i'd Bump That
SXSW 2012 - NFC: i'd Bump That SXSW 2012 - NFC: i'd Bump That
SXSW 2012 - NFC: i'd Bump That
 
Smart Bump Presentation
Smart Bump PresentationSmart Bump Presentation
Smart Bump Presentation
 
BUMP - an Arts & Sciences Exhibit
BUMP - an Arts & Sciences ExhibitBUMP - an Arts & Sciences Exhibit
BUMP - an Arts & Sciences Exhibit
 
Geometry Shader-based Bump Mapping Setup
Geometry Shader-based Bump Mapping SetupGeometry Shader-based Bump Mapping Setup
Geometry Shader-based Bump Mapping Setup
 
Bump mapping Techniques
Bump mapping TechniquesBump mapping Techniques
Bump mapping Techniques
 
ANSYS RedHawk-CPA: New Paradigm for Faster Chip-Package Convergence
ANSYS RedHawk-CPA: New Paradigm for Faster Chip-Package ConvergenceANSYS RedHawk-CPA: New Paradigm for Faster Chip-Package Convergence
ANSYS RedHawk-CPA: New Paradigm for Faster Chip-Package Convergence
 
Slideshare ppt
Slideshare pptSlideshare ppt
Slideshare ppt
 

Semelhante a A Practical and Robust Bump-mapping Technique for Today’s GPUs (slides)

Advanced Lighting Techniques Dan Baker (Meltdown 2005)
Advanced Lighting Techniques   Dan Baker (Meltdown 2005)Advanced Lighting Techniques   Dan Baker (Meltdown 2005)
Advanced Lighting Techniques Dan Baker (Meltdown 2005)
mobius.cn
 
Practical Spherical Harmonics Based PRT Methods
Practical Spherical Harmonics Based PRT MethodsPractical Spherical Harmonics Based PRT Methods
Practical Spherical Harmonics Based PRT Methods
Naughty Dog
 
study Diffusion Curves: A Vector Representation for Smooth-Shaded Images
study Diffusion Curves: A Vector Representation for Smooth-Shaded Imagesstudy Diffusion Curves: A Vector Representation for Smooth-Shaded Images
study Diffusion Curves: A Vector Representation for Smooth-Shaded Images
Chiamin Hsu
 
Interactive Stereoscopic Rendering for Non-Planar Projections (GRAPP 2009)
Interactive Stereoscopic Rendering for Non-Planar Projections (GRAPP 2009)Interactive Stereoscopic Rendering for Non-Planar Projections (GRAPP 2009)
Interactive Stereoscopic Rendering for Non-Planar Projections (GRAPP 2009)
Matthias Trapp
 

Semelhante a A Practical and Robust Bump-mapping Technique for Today’s GPUs (slides) (20)

Advanced Lighting for Interactive Applications
Advanced Lighting for Interactive ApplicationsAdvanced Lighting for Interactive Applications
Advanced Lighting for Interactive Applications
 
PapersWeLove - Rendering Synthetic Objects Into Real Scenes - Paul Debevec.pdf
PapersWeLove - Rendering Synthetic Objects Into Real Scenes - Paul Debevec.pdfPapersWeLove - Rendering Synthetic Objects Into Real Scenes - Paul Debevec.pdf
PapersWeLove - Rendering Synthetic Objects Into Real Scenes - Paul Debevec.pdf
 
Rendering basics
Rendering basicsRendering basics
Rendering basics
 
Advanced Lighting Techniques Dan Baker (Meltdown 2005)
Advanced Lighting Techniques   Dan Baker (Meltdown 2005)Advanced Lighting Techniques   Dan Baker (Meltdown 2005)
Advanced Lighting Techniques Dan Baker (Meltdown 2005)
 
Practical spherical harmonics based PRT methods.ppsx
Practical spherical harmonics based PRT methods.ppsxPractical spherical harmonics based PRT methods.ppsx
Practical spherical harmonics based PRT methods.ppsx
 
The 'Rubble of the North' -a solution for modelling the irregular architectur...
The 'Rubble of the North' -a solution for modelling the irregular architectur...The 'Rubble of the North' -a solution for modelling the irregular architectur...
The 'Rubble of the North' -a solution for modelling the irregular architectur...
 
Practical Spherical Harmonics Based PRT Methods
Practical Spherical Harmonics Based PRT MethodsPractical Spherical Harmonics Based PRT Methods
Practical Spherical Harmonics Based PRT Methods
 
Soft Shadow Maps for Linear Lights
Soft Shadow Maps for Linear LightsSoft Shadow Maps for Linear Lights
Soft Shadow Maps for Linear Lights
 
Extended Light Maps
Extended Light MapsExtended Light Maps
Extended Light Maps
 
Computer Graphics Part1
Computer Graphics Part1Computer Graphics Part1
Computer Graphics Part1
 
Abalanche - Unity Shader Graph #1: Shader & PBR Materials
Abalanche - Unity Shader Graph #1: Shader & PBR MaterialsAbalanche - Unity Shader Graph #1: Shader & PBR Materials
Abalanche - Unity Shader Graph #1: Shader & PBR Materials
 
study Diffusion Curves: A Vector Representation for Smooth-Shaded Images
study Diffusion Curves: A Vector Representation for Smooth-Shaded Imagesstudy Diffusion Curves: A Vector Representation for Smooth-Shaded Images
study Diffusion Curves: A Vector Representation for Smooth-Shaded Images
 
Unity: Next Level Rendering Quality
Unity: Next Level Rendering QualityUnity: Next Level Rendering Quality
Unity: Next Level Rendering Quality
 
Lecture1
Lecture1Lecture1
Lecture1
 
Interactive Stereoscopic Rendering for Non-Planar Projections (GRAPP 2009)
Interactive Stereoscopic Rendering for Non-Planar Projections (GRAPP 2009)Interactive Stereoscopic Rendering for Non-Planar Projections (GRAPP 2009)
Interactive Stereoscopic Rendering for Non-Planar Projections (GRAPP 2009)
 
Deferred Pixel Shading on the PLAYSTATION®3
Deferred Pixel Shading on the PLAYSTATION®3Deferred Pixel Shading on the PLAYSTATION®3
Deferred Pixel Shading on the PLAYSTATION®3
 
Dual photography
Dual photographyDual photography
Dual photography
 
CS 354 Lighting
CS 354 LightingCS 354 Lighting
CS 354 Lighting
 
Computer Vision panoramas
Computer Vision  panoramasComputer Vision  panoramas
Computer Vision panoramas
 
DirectX 11 Rendering in Battlefield 3
DirectX 11 Rendering in Battlefield 3DirectX 11 Rendering in Battlefield 3
DirectX 11 Rendering in Battlefield 3
 

Mais de Mark Kilgard

Mais de Mark Kilgard (20)

D11: a high-performance, protocol-optional, transport-optional, window system...
D11: a high-performance, protocol-optional, transport-optional, window system...D11: a high-performance, protocol-optional, transport-optional, window system...
D11: a high-performance, protocol-optional, transport-optional, window system...
 
Computers, Graphics, Engineering, Math, and Video Games for High School Students
Computers, Graphics, Engineering, Math, and Video Games for High School StudentsComputers, Graphics, Engineering, Math, and Video Games for High School Students
Computers, Graphics, Engineering, Math, and Video Games for High School Students
 
NVIDIA OpenGL and Vulkan Support for 2017
NVIDIA OpenGL and Vulkan Support for 2017NVIDIA OpenGL and Vulkan Support for 2017
NVIDIA OpenGL and Vulkan Support for 2017
 
NVIDIA OpenGL 4.6 in 2017
NVIDIA OpenGL 4.6 in 2017NVIDIA OpenGL 4.6 in 2017
NVIDIA OpenGL 4.6 in 2017
 
NVIDIA OpenGL in 2016
NVIDIA OpenGL in 2016NVIDIA OpenGL in 2016
NVIDIA OpenGL in 2016
 
Virtual Reality Features of NVIDIA GPUs
Virtual Reality Features of NVIDIA GPUsVirtual Reality Features of NVIDIA GPUs
Virtual Reality Features of NVIDIA GPUs
 
Migrating from OpenGL to Vulkan
Migrating from OpenGL to VulkanMigrating from OpenGL to Vulkan
Migrating from OpenGL to Vulkan
 
EXT_window_rectangles
EXT_window_rectanglesEXT_window_rectangles
EXT_window_rectangles
 
OpenGL for 2015
OpenGL for 2015OpenGL for 2015
OpenGL for 2015
 
Slides: Accelerating Vector Graphics Rendering using the Graphics Hardware Pi...
Slides: Accelerating Vector Graphics Rendering using the Graphics Hardware Pi...Slides: Accelerating Vector Graphics Rendering using the Graphics Hardware Pi...
Slides: Accelerating Vector Graphics Rendering using the Graphics Hardware Pi...
 
Accelerating Vector Graphics Rendering using the Graphics Hardware Pipeline
Accelerating Vector Graphics Rendering using the Graphics Hardware PipelineAccelerating Vector Graphics Rendering using the Graphics Hardware Pipeline
Accelerating Vector Graphics Rendering using the Graphics Hardware Pipeline
 
NV_path rendering Functional Improvements
NV_path rendering Functional ImprovementsNV_path rendering Functional Improvements
NV_path rendering Functional Improvements
 
OpenGL 4.5 Update for NVIDIA GPUs
OpenGL 4.5 Update for NVIDIA GPUsOpenGL 4.5 Update for NVIDIA GPUs
OpenGL 4.5 Update for NVIDIA GPUs
 
SIGGRAPH Asia 2012: GPU-accelerated Path Rendering
SIGGRAPH Asia 2012: GPU-accelerated Path RenderingSIGGRAPH Asia 2012: GPU-accelerated Path Rendering
SIGGRAPH Asia 2012: GPU-accelerated Path Rendering
 
SIGGRAPH Asia 2012 Exhibitor Talk: OpenGL 4.3 and Beyond
SIGGRAPH Asia 2012 Exhibitor Talk: OpenGL 4.3 and BeyondSIGGRAPH Asia 2012 Exhibitor Talk: OpenGL 4.3 and Beyond
SIGGRAPH Asia 2012 Exhibitor Talk: OpenGL 4.3 and Beyond
 
Programming with NV_path_rendering: An Annex to the SIGGRAPH Asia 2012 paper...
Programming with NV_path_rendering:  An Annex to the SIGGRAPH Asia 2012 paper...Programming with NV_path_rendering:  An Annex to the SIGGRAPH Asia 2012 paper...
Programming with NV_path_rendering: An Annex to the SIGGRAPH Asia 2012 paper...
 
GPU accelerated path rendering fastforward
GPU accelerated path rendering fastforwardGPU accelerated path rendering fastforward
GPU accelerated path rendering fastforward
 
GPU-accelerated Path Rendering
GPU-accelerated Path RenderingGPU-accelerated Path Rendering
GPU-accelerated Path Rendering
 
SIGGRAPH 2012: GPU-Accelerated 2D and Web Rendering
SIGGRAPH 2012: GPU-Accelerated 2D and Web RenderingSIGGRAPH 2012: GPU-Accelerated 2D and Web Rendering
SIGGRAPH 2012: GPU-Accelerated 2D and Web Rendering
 
SIGGRAPH 2012: NVIDIA OpenGL for 2012
SIGGRAPH 2012: NVIDIA OpenGL for 2012SIGGRAPH 2012: NVIDIA OpenGL for 2012
SIGGRAPH 2012: NVIDIA OpenGL for 2012
 

Último

Último (20)

Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 

A Practical and Robust Bump-mapping Technique for Today’s GPUs (slides)

  • 1. A Practical and Robust Bump-mapping Technique for Today’s GPUs Stanford Shading Group presentation May 8, 2000
  • 2. Mark J. Kilgard Graphics Software Engineer NVIDIA Corporation
  • 3.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14. Self-shadowing example Light leaks onto torus “back side” due to bad geometric self-shadowing Proper geometric self-shadowing!
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29. Example for stable specular highlights Bright, stable specular highlight, even at low tessellation. Poor per-vertex sampling of the highlight. Wobbles during animation. Cube map lighting Standard per-vertex lighting
  • 30. Another example of stable specular highlights High tessellation does not completely fix per-vertex artifacts Still bright and stable. Better sampled, but still has streaky artifacts.
  • 31.
  • 32. One pass per-pixel diffuse & specular example! OpenGL per-vertex lighting with mesh of thousands of vertices (note displacement). Per-pixel specular normal mapping with cube maps (flat, but lighting all there).
  • 33. Example in wireframe Dense, dense mesh. One polygon!
  • 35. Object-space per-pixel example in wire-frame The detail is per-pixel!
  • 36.
  • 37. Register combiners operational overview general combiner stages final combiner RGB Portion Alpha Portion initialize registers stage #0 stage #1 (optional) AB+CD, AB, CD AB+CD, AB, CD AB+CD, AB, CD AB+CD, AB, CD AB+(1-A)C+D, EF, G RGBA fragment
  • 38. General combiners RGB operation zero primary color secondary color constant color 0 constant color 1 fog spare 1 spare 0 texture 0 texture 1 A B C D input map input map input map not writeable RGB A RGB A input registers computations output registers scale and bias input map not readable zero primary color secondary color constant color 0 constant color 1 fog spare 1 spare 0 texture 0 texture 1 A B + C D A B mux C D -or- A B A  B -or- C  D C D -or-
  • 39. General combiners Alpha operation zero primary color secondary color constant color 0 constant color 1 fog spare 1 spare 0 texture 0 texture 1 A B C D A B C D input map input map input map not writeable RGB A RGB A input registers computations output registers scale and bias input map not readable zero primary color secondary color constant color 0 constant color 1 fog spare 1 spare 0 texture 0 texture 1 A B + C D A B mux C D -or-
  • 40. Final combiner operation zero primary color secondary color constant color 0 constant color 1 fog spare 1 spare 0 texture 0 texture 1 A B C D RGB A input registers computations A B + ( 1 - A) C + D E F E F G spare 0 + secondary color input map input map input map input map input map input map input map fragment RGB out fragment Alpha out G