Amy Vanderbilt ~ Vin Taylor ~ Martin Taylor ~ Mark Nixon ~ Jan Terje Bjorke
When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.
-
Upload
melvin-walker -
Category
Documents
-
view
220 -
download
0
Transcript of When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.
![Page 1: When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.](https://reader036.fdocuments.us/reader036/viewer/2022062323/56649ec95503460f94bd609d/html5/thumbnails/1.jpg)
WhenWhenShaders Shaders &&TexturesTexturesCollideCollideKevin BjorkeKevin BjorkeNVIDIA CorporationNVIDIA Corporation
![Page 2: When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.](https://reader036.fdocuments.us/reader036/viewer/2022062323/56649ec95503460f94bd609d/html5/thumbnails/2.jpg)
Everybody Wants More
![Page 3: When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.](https://reader036.fdocuments.us/reader036/viewer/2022062323/56649ec95503460f94bd609d/html5/thumbnails/3.jpg)
Everybody Wants More
…and Moore’s Law can’t keep up
![Page 4: When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.](https://reader036.fdocuments.us/reader036/viewer/2022062323/56649ec95503460f94bd609d/html5/thumbnails/4.jpg)
Next Gen, New Challenges
“If you think you are good enough you have just started your decline.”
Simply layering-on more lights or per-pixel lighting doesn’t automatically enhance game play
What is “Next-Gen Done Right”?
http://developer.nvidia.com
![Page 5: When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.](https://reader036.fdocuments.us/reader036/viewer/2022062323/56649ec95503460f94bd609d/html5/thumbnails/5.jpg)
Painters & Hackers
“Art does not reproduce the visible;
it makes thingsvisible” – Paul Klee
New Harmony, 1936
![Page 6: When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.](https://reader036.fdocuments.us/reader036/viewer/2022062323/56649ec95503460f94bd609d/html5/thumbnails/6.jpg)
Painters & Hackers
“Art does not reproduce the visible;
it makes thingsvisible” – Paul Klee
New Harmony, 1936
“A videogame is not Art” – Hideo Kojima
![Page 7: When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.](https://reader036.fdocuments.us/reader036/viewer/2022062323/56649ec95503460f94bd609d/html5/thumbnails/7.jpg)
Anything Can Be Painted
Painting is direct Painting can influence programs,
but in hidden ways that may be difficult to visualize
Downside: Scales Poorly
![Page 8: When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.](https://reader036.fdocuments.us/reader036/viewer/2022062323/56649ec95503460f94bd609d/html5/thumbnails/8.jpg)
Anything Can Be Programmed Programming is indirect Imagery is often the result of
abstract ideas, with little direct control
Downside: programmer art
![Page 9: When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.](https://reader036.fdocuments.us/reader036/viewer/2022062323/56649ec95503460f94bd609d/html5/thumbnails/9.jpg)
Great Technical Artists
![Page 10: When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.](https://reader036.fdocuments.us/reader036/viewer/2022062323/56649ec95503460f94bd609d/html5/thumbnails/10.jpg)
Shaping the Subjective Experience Every pixel has
the potential and the obligation to be a deliberate choice.
© Epic Games
![Page 11: When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.](https://reader036.fdocuments.us/reader036/viewer/2022062323/56649ec95503460f94bd609d/html5/thumbnails/11.jpg)
Why We MIP
![Page 12: When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.](https://reader036.fdocuments.us/reader036/viewer/2022062323/56649ec95503460f94bd609d/html5/thumbnails/12.jpg)
Why We MIP
![Page 13: When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.](https://reader036.fdocuments.us/reader036/viewer/2022062323/56649ec95503460f94bd609d/html5/thumbnails/13.jpg)
Stage Makeup = LOD
Makeup example courtesy
Tara Maginnis,
http://www.costumes.org
![Page 14: When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.](https://reader036.fdocuments.us/reader036/viewer/2022062323/56649ec95503460f94bd609d/html5/thumbnails/14.jpg)
Stage Makeup = LOD
Makeup example courtesy
Tara Maginnis,
http://www.costumes.org
![Page 15: When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.](https://reader036.fdocuments.us/reader036/viewer/2022062323/56649ec95503460f94bd609d/html5/thumbnails/15.jpg)
Sharpening on MIP levels
![Page 16: When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.](https://reader036.fdocuments.us/reader036/viewer/2022062323/56649ec95503460f94bd609d/html5/thumbnails/16.jpg)
Which Size is the Right Size? UVDetective.fx
DEMODEMO
![Page 17: When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.](https://reader036.fdocuments.us/reader036/viewer/2022062323/56649ec95503460f94bd609d/html5/thumbnails/17.jpg)
The Evils Charts Can Do
Texture Atlases and charts let us remap any 3D shape to a group of 2D shapes
![Page 18: When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.](https://reader036.fdocuments.us/reader036/viewer/2022062323/56649ec95503460f94bd609d/html5/thumbnails/18.jpg)
The Evils Charts Can Do
Texture Atlases and charts let us remap any 3D shape to a group of 2D shapes
![Page 19: When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.](https://reader036.fdocuments.us/reader036/viewer/2022062323/56649ec95503460f94bd609d/html5/thumbnails/19.jpg)
Making Do with Charts
The evil you see versus the evil you don’t see
![Page 20: When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.](https://reader036.fdocuments.us/reader036/viewer/2022062323/56649ec95503460f94bd609d/html5/thumbnails/20.jpg)
![Page 21: When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.](https://reader036.fdocuments.us/reader036/viewer/2022062323/56649ec95503460f94bd609d/html5/thumbnails/21.jpg)
Normals from Bumps
![Page 22: When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.](https://reader036.fdocuments.us/reader036/viewer/2022062323/56649ec95503460f94bd609d/html5/thumbnails/22.jpg)
Normals from Bumps
![Page 23: When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.](https://reader036.fdocuments.us/reader036/viewer/2022062323/56649ec95503460f94bd609d/html5/thumbnails/23.jpg)
MIPs and Normal Maps
![Page 24: When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.](https://reader036.fdocuments.us/reader036/viewer/2022062323/56649ec95503460f94bd609d/html5/thumbnails/24.jpg)
MIPs and Normal Maps
![Page 25: When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.](https://reader036.fdocuments.us/reader036/viewer/2022062323/56649ec95503460f94bd609d/html5/thumbnails/25.jpg)
![Page 26: When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.](https://reader036.fdocuments.us/reader036/viewer/2022062323/56649ec95503460f94bd609d/html5/thumbnails/26.jpg)
![Page 27: When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.](https://reader036.fdocuments.us/reader036/viewer/2022062323/56649ec95503460f94bd609d/html5/thumbnails/27.jpg)
![Page 28: When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.](https://reader036.fdocuments.us/reader036/viewer/2022062323/56649ec95503460f94bd609d/html5/thumbnails/28.jpg)
![Page 29: When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.](https://reader036.fdocuments.us/reader036/viewer/2022062323/56649ec95503460f94bd609d/html5/thumbnails/29.jpg)
![Page 30: When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.](https://reader036.fdocuments.us/reader036/viewer/2022062323/56649ec95503460f94bd609d/html5/thumbnails/30.jpg)
![Page 31: When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.](https://reader036.fdocuments.us/reader036/viewer/2022062323/56649ec95503460f94bd609d/html5/thumbnails/31.jpg)
![Page 32: When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.](https://reader036.fdocuments.us/reader036/viewer/2022062323/56649ec95503460f94bd609d/html5/thumbnails/32.jpg)
Best Practices: Normal Maps Common, Complex, & Wrong:
![Page 33: When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.](https://reader036.fdocuments.us/reader036/viewer/2022062323/56649ec95503460f94bd609d/html5/thumbnails/33.jpg)
Best Practices: Normal Maps Common, Complex, & Wrong:
![Page 34: When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.](https://reader036.fdocuments.us/reader036/viewer/2022062323/56649ec95503460f94bd609d/html5/thumbnails/34.jpg)
Best Practices: Normal Maps Common, Complex, & Wrong:
Easier, Better:
![Page 35: When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.](https://reader036.fdocuments.us/reader036/viewer/2022062323/56649ec95503460f94bd609d/html5/thumbnails/35.jpg)
Color & Depth
![Page 36: When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.](https://reader036.fdocuments.us/reader036/viewer/2022062323/56649ec95503460f94bd609d/html5/thumbnails/36.jpg)
Color & Depth
“Facing Ratio”:(N·V)
C = lerp(mossColor, texColor,pow(dot(N,V)),expon))
![Page 37: When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.](https://reader036.fdocuments.us/reader036/viewer/2022062323/56649ec95503460f94bd609d/html5/thumbnails/37.jpg)
Color & Depth
“Facing Ratio”:(N·V)
C = lerp(mossColor, texColor,pow(dot(N,V)),expon))
![Page 38: When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.](https://reader036.fdocuments.us/reader036/viewer/2022062323/56649ec95503460f94bd609d/html5/thumbnails/38.jpg)
![Page 39: When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.](https://reader036.fdocuments.us/reader036/viewer/2022062323/56649ec95503460f94bd609d/html5/thumbnails/39.jpg)
Texture Scripts in Photoshop™ “Mipster”
DEMODEMO
![Page 40: When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.](https://reader036.fdocuments.us/reader036/viewer/2022062323/56649ec95503460f94bd609d/html5/thumbnails/40.jpg)
Text Mips
![Page 41: When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.](https://reader036.fdocuments.us/reader036/viewer/2022062323/56649ec95503460f94bd609d/html5/thumbnails/41.jpg)
Gratuitous Equation Alert!
)()( xfxf
![Page 42: When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.](https://reader036.fdocuments.us/reader036/viewer/2022062323/56649ec95503460f94bd609d/html5/thumbnails/42.jpg)
Gratuitous Equation Alert!
)()( xfxf
Filtering/AA
Lighting
![Page 43: When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.](https://reader036.fdocuments.us/reader036/viewer/2022062323/56649ec95503460f94bd609d/html5/thumbnails/43.jpg)
The Toksvig Factor
No sparklies at the edges!
Need to choose a fixed phong exponent
http://developer.nvidia.com/object/mipmapping_normal_maps.html
DEMODEMO
![Page 44: When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.](https://reader036.fdocuments.us/reader036/viewer/2022062323/56649ec95503460f94bd609d/html5/thumbnails/44.jpg)
Nightfall – color control
![Page 45: When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.](https://reader036.fdocuments.us/reader036/viewer/2022062323/56649ec95503460f94bd609d/html5/thumbnails/45.jpg)
![Page 46: When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.](https://reader036.fdocuments.us/reader036/viewer/2022062323/56649ec95503460f94bd609d/html5/thumbnails/46.jpg)
Painting a Shader
1D & 2D functions
![Page 47: When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.](https://reader036.fdocuments.us/reader036/viewer/2022062323/56649ec95503460f94bd609d/html5/thumbnails/47.jpg)
Painting a Shader
1D & 2D functions
![Page 48: When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.](https://reader036.fdocuments.us/reader036/viewer/2022062323/56649ec95503460f94bd609d/html5/thumbnails/48.jpg)
Two Pictures = One BRDF
+ =
![Page 49: When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.](https://reader036.fdocuments.us/reader036/viewer/2022062323/56649ec95503460f94bd609d/html5/thumbnails/49.jpg)
DEMODEMO
![Page 50: When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.](https://reader036.fdocuments.us/reader036/viewer/2022062323/56649ec95503460f94bd609d/html5/thumbnails/50.jpg)
Providing Sensible Controls The most harmonious
circumstance comes when these worlds intermesh
Everything really great that any of us have done has been the result of teamwork
Texture and Shading are both about color control
J. Itten, Die Begegnung, 1916
![Page 51: When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.](https://reader036.fdocuments.us/reader036/viewer/2022062323/56649ec95503460f94bd609d/html5/thumbnails/51.jpg)
Brdf_paint
Let artists paint the BRDF directly…
DEMODEMO
![Page 52: When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.](https://reader036.fdocuments.us/reader036/viewer/2022062323/56649ec95503460f94bd609d/html5/thumbnails/52.jpg)
Hair Functions
Use Kajiya-kay.fxh, or… roll your own!
Grayscale Color
DEMODEMO
Hair direction is… a normal map!
![Page 53: When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.](https://reader036.fdocuments.us/reader036/viewer/2022062323/56649ec95503460f94bd609d/html5/thumbnails/53.jpg)
Directional Painting
![Page 54: When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.](https://reader036.fdocuments.us/reader036/viewer/2022062323/56649ec95503460f94bd609d/html5/thumbnails/54.jpg)
Directional Painting
![Page 55: When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.](https://reader036.fdocuments.us/reader036/viewer/2022062323/56649ec95503460f94bd609d/html5/thumbnails/55.jpg)
Even More Abstract Textures Textures as animation channels Textures to guide particle
animation/ image flow Etc….
SLIDE IN PROGRESS
![Page 56: When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.](https://reader036.fdocuments.us/reader036/viewer/2022062323/56649ec95503460f94bd609d/html5/thumbnails/56.jpg)
Shading to Look Like Painting Anime Shadow
Technique
Reice with Rounded “Hand-Drawn” Shadow Shading
“Reice” courtesy Han dae Hoon, Graphic Factory, Korea
![Page 57: When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.](https://reader036.fdocuments.us/reader036/viewer/2022062323/56649ec95503460f94bd609d/html5/thumbnails/57.jpg)
Render Color and Normals
RGB Raw Surface Normals
![Page 58: When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.](https://reader036.fdocuments.us/reader036/viewer/2022062323/56649ec95503460f94bd609d/html5/thumbnails/58.jpg)
Blur the Normals
Blur Pass 1: Horizontal Blur Pass 2: Vertical (and optional clip to show form)
![Page 59: When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.](https://reader036.fdocuments.us/reader036/viewer/2022062323/56649ec95503460f94bd609d/html5/thumbnails/59.jpg)
Composite
Hard cutoff on blurred normals = “round shadow”
Reice with Final rounded shadow outline
DEMODEMO
![Page 60: When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.](https://reader036.fdocuments.us/reader036/viewer/2022062323/56649ec95503460f94bd609d/html5/thumbnails/60.jpg)
Pushing Forward
You progress not through what has been done, but reaching towards what has yet to be done
– Kahlil Ghibran
![Page 61: When Shaders & TexturesCollide Kevin Bjorke NVIDIA Corporation.](https://reader036.fdocuments.us/reader036/viewer/2022062323/56649ec95503460f94bd609d/html5/thumbnails/61.jpg)
Pushing Forward
You progress not through what has been done, but reaching towards what has yet to be done
– Kahlil Ghibran
The market only rewards innovation– Gopal Solanki