Advanced Texturing: Stupid Texture Tricks David Luebke University of Virginia

advertisement
Advanced Texturing:
Stupid Texture Tricks
David Luebke
University of Virginia
Recap


A point sprite is a screen-aligned textured
quad placed by rendering a single vertex
A billboard is a textured (usually) quad that
(usually) rotates to face the viewer
– Performer demo, Far Cry demo
– Billboard clouds

An imposter is a billboard created on the fly
to “cache” rendered imagery
– Sometimes also refers to just a textured LOD
Recap

A depth texture affects and is
affected by the depth buffer
– NV_DEPTH_TEXTURE demo
Imposters Continued

Depth meshes
– UNC MMR system
– Imposters for urban environments
Billboards cont.

Can represent an entire object with just
billboards!
– Common trick for trees
– Billboard clouds apply idea to other (all)
objects
– Trick is to compute these automatically…
Multitexturing




Modern hardware can read from multiple
textures at once, even with mipmapping
Detail texturing
Light mapping
Bump mapping
Textures:
Other Important Stuff


Render to texture
Environment maps
– Simplest approach: sphere map
– Hardware supports cube maps

Shadow maps
– Basically, a depth texture from the point of
view of a light source
– More later
Textures:
Still More Stuff

Normal maps
– Gloss maps, reflectance maps, etc

Generally:
– Think of textures as global memory for
fragment programs, w/ built-in filtering
– Soon (next-gen hardware) will be able to
access textures in vertex programs too


Deferred shading
Projective texture mapping
Next topic: Cg



Many of the tricks we discuss in this class
do not depend on programmable graphics
hardware
But, most are easier to implement this
way!
So, the next topic is a brief intro to Cg
– My apologies to those of you who’ve seen this
– My apologies to those of you who haven’t.
Download