OK, been slowly condensing and updating and re-writing things.
http://wiki.polycount.net/Normal_Map
I wonder if anyone has some art samples they could contribute. Too much text!
I'm looking for some art that shows mirrored UVs, but with the mirror seam offset from the center. Like Ben's faces here.
http://www.benregimbal.com/Step_face_I.jpg
But it'd be great to show something on a mesh, so the kids can see how it's done. :poly128: Like, here's the seam, and see how artfully it's painted to hide said seam.
Replies
One thing that might be worth adding to the RGB channels part is that if you do swap colours around like your compression example then it looks like the normal map has changes - the blue/purple tangent space map becomes green to the observer.
By the way, I don't know the correct term, but we use this technique and call it Swizzling. We end up with Swizzled normal maps. It might be the correct term, but them again I wrote a script that re-orders the bones in the max skin modifier and it's called Skelatordorator.
Thanks Rick, will work that in somewhere. I've heard swizzle before, just looked it up the other day, wikipedia said it's a math re-organization term, very similar to the color channel swap.
http://developer.nvidia.com/object/real-time-normal-map-dxt-compression.html
http://wiki.polycount.net/Normal_Map#Renormalizing
Needs some finesse, but it's cool when something just works, ya know?
Does the explanation I wrote make sense? Maybe I need more pictures.
I wish this stuff existed when I was picking up next gen. I'm glad it does now at least. Super neat leaf trick.
It's also mirrored now on the tech-artists.org wiki.
http://wiki.polycount.net/Normal_Map#
Feeling a bit of writer's fatigue though. How does it read?
It would be really nice if there was a wiki link on the front page.
Or better yet...
A supporting wiki thread at the top of the front page with links to Wiki pages.
I keep forgetting to take advantage of this great resource.
Thanks for all the hard work Eric!
Yes, the term is called swizzling (to switch things around )
One nitpick, the "bitangent" you speak of, is referred to as the binormal.
Again, excellent work and it's good seeing everything all laid out in a "1 stop" go to for normalmapping.
RE: binormal, this guy seemed to think it's a misnomer.
http://www.terathon.com/code/tangent.html