Re: tangent maps

Date : Wed, 24 Jan 2007 19:46:42 -0500
To : XSI(at)Softimage.COM
From : "Bernard Lebel" <3dbernard(at)gmail.com>
Subject : Re: tangent maps
While it might probably be incorrect from a technical point of view, I
think of tangent normal maps as a way to encode surface curvature into
a texture. That's what it looks like. Personally, understanding the
maths behind this is giving me severe headaches, so I won't even try
to talk about this.

Now, bump and displacement change the geometry curvature, right? While
bump is just a shading effect, displacement works directly onto
geometry. No matter if just fake or real, imagine that you can take
this modified curvature and store it into a map.

If you apply back this map onto the object, without bump or
displacement, you should get a shading effect that is pretty close to
bump/displacement. It's not the same, but close.

The advantage is that it renders faster, and is less subject to bump
artefacts. To me this is a major win that outs all the disadvantages.
Once the normal map is done, though, I think it's easier to work with.

There are many disadvantages, unfortunately, that all come down to
getting the normal map done.

- just like object normal maps, tangent normal maps are hard to read.
Where bump and displacement encode "elevation", tangent normal maps
encode "curvature". Each color channel specifies a different
information, it's easier to read the map if you check the channels
separately.
- what is even more tricky is to handle "direction". For example if
you unwrap the object, and some sides of it, in the texture editor,
are rotated 90 degrees, this will affect the normal map. Ideally,
everything that points up in 3D space should be unwrapped as pointing
up in the texture editor.
- for these two reasons, painting normal map is less than intuitive.
So if you want to make corrections in Photoshop (like it is oftenly
the case), you can easily screw things up.
- the whole object needs careful unwrapping for any area that is not
perfectly flat. Since the normal maps has a more far-reaching effect
than bumpmap on shading, you can hardly round corners.
- in my experience, it requires more resolution than bumpmaps to get
sharp results.
- although I have not investigated this deeply, I find it hard to
combine several maps together (I'm open to suggestions). Ideally you'd
have only one map for the entire geometry.
- the tools to extract tangent normals are not there yet imho. There
is no straightforward way to convert a bumpmap in a normal map, you
have to use a complex shader tree that also includes the geometry
curvature with it. A tool (shader or plugin) that only write bumpmaps
into a normal map (writing geometry tangents as flat) would be
awesome. Rendermap and Ultimapper can create tangent maps, but
again...  with rendermaps you sometimes end up with a pure blue image,
while if you use two identical objects with Ultimapper, same result.
All in all it's very convoluted.
- also sometimes you get artefacts and undesirable creases in the
normal map. When you can't find where they come from, you have to
paint them out.
- you need to use a "Tangent" property. If someone could tell me why
I'd be more than happy. I suspect this is due to the fact that tangent
normal maps are heavily used in realtime rendering, and the Tangent
property is a color at vertices property (which also makes it an
absolute nightmare scripting-wise... why not having a new cluster
property for this one, please oh God?) so there must be something
related here.


Hope that clear things up.



Cheers
Bernard





On 1/24/07, Andi Farhall <andi(at)clearpost.co.uk> wrote:
That makes some sence, thanks for that. I assume, if i understand correctly, that a patch surface wouldn't need one as it already has u and v by default>


much thanks

Andi.

-----Original Message-----
From: owner-xsi(at)Softimage.COM [mailto:owner-xsi(at)Softimage.COM]On Behalf
Of André Adam
Sent: Wednesday, January 24, 2007 3:44 PM
To: XSI(at)Softimage.COM
Subject: Re: tangent maps


A tangent map describes the direction of a texture projection's u coordinate in space relative to the polygons it is bound to. Basically think of a texture map with lots of small arrows pointing to the right mapped onto an object. The vector in 3d-space they describe once textured onto the object's surface is the tangent space, which gets stored on a per sample basis. The tangent space is a reference for bump mapping effects, where the original surface normals gets bent towards certain directions. These directions have to be relative to some sort of direction fixed right in the object - the tangent space. :)

This technique brings along lot's of ways to produce unwanted artifacts,
which might explain the trouble of getting a decent piece bump mapping
to work...

Hope that sheds some light, cheers!

    -André


Andi Farhall wrote: > actually i'm a bit confused as to what a tangency map is. I understood tangency to be where one curve flows cleanly into another, either that or "at 90 degrees to". I'm wrong aren't i.... > > Subsequently i've no idea how you would use them in the context of displacement or bump mapping... boy do i feel thick > > > regards > > Andi > > -----Original Message----- > From: owner-xsi(at)Softimage.COM [mailto:owner-xsi(at)Softimage.COM]On Behalf > Of Bernard Lebel > Sent: Wednesday, January 24, 2007 12:08 PM > To: XSI(at)Softimage.COM > Subject: Re: tangent maps > > > Bumpmap and displacementmap substitution, we do a lot of em. > > > Cheers > Bernard > > > > On 1/24/07, Andi Farhall <andi(at)clearpost.co.uk> wrote: > >> >> Do have tangent maps have any other uses apart from hair instance >> orientation? without scripting stuff that is... >> >> >> regards >> >> Andi

---
Unsubscribe? Mail Majordomo(at)Softimage.COM with the following text in body:
unsubscribe xsi

______________________________________________________________________
This email has been scanned by the MessageLabs Email Security System.
For more information please visit http://www.messagelabs.com/email
______________________________________________________________________

---
Unsubscribe? Mail Majordomo(at)Softimage.COM with the following text in body:
unsubscribe xsi


--- Unsubscribe? Mail Majordomo(at)Softimage.COM with the following text in body: unsubscribe xsi


Search the XSI List archives here or use the advanced search form to search across mailing lists. Searching help is available.
This site supposedly brought to you by Benjamin Grosser and the Imaging Technology Group.