View Full Version : HELP! Normal maps gone insane!

04 April 2007, 04:41 PM
If someone can shed some light on this I will kneel down and call you master.

Ok I am having a very strange and highly irritating issue with generating Normal Maps in Mudbox.

Basically, I have an object that has been UVed in several patches. None of the UVs on those patches are flipped, but they are rotated in various degrees to fit them tightly into a texture space. Usual stuff. No flipped UVs, no mirrored UVs, no overlapping.

When I generate the Normal Map in Mudbox however, somehow the map thats being generated doesnt line up on the seams. I tried flipping the different Red and Green channels of the pieces but that doesnt fix the problem. If I get the seams to line up on one small part, the rest is still off.

Looking at the Red and Green channels, it almost looks like Mudbox just completely ignored the orientation of the normals in world space, and is generating the normal direction according to the UV space. For example, the Green channel is Y, and white is up and black is down. Well lets say I have a wrinkle that extends across 2 UV patches. one of the UV patches is rotated 180 degrees. What it looks like in Photoshop is that the Normal map took no consideration of the rotation of the UVs and in one of the patches the part of the wrinkle that points up is given a dark value while the lower part is given a light value.

Now that wouldnt be a problem, except the UVs arent all perfectly straight in 90 degree angles, so even inverting channels leaves seams.

Needless to say that is unacceptable, and I've been banging my head on my desk for 2 days now trying to figure out why it does it. Tried every Mudbox setting I could think of, nothing works.

Please help!

Below are the settings I used for the last Normal map, and also a screenshot of the lovely seam that this mess forms.

04 April 2007, 04:47 PM
Oh yeah, forgot to add, I'm using Maya 8.0.

04 April 2007, 01:31 PM
if you have any awnser on this one please share :)

04 April 2007, 05:14 PM
Hmmm.. Interesting. Could you post a shot of your normal map to see if there seems to be anything off? Preferably the same area you already posted for easier comparing.

04 April 2007, 03:58 PM
Keops are you having the same issue?

Unfortunately because of NDAs im unable to post the whole files here, but below are some pieces of the normal map, which should give you a good idea of whats going on.

Once again, the UVs are NOT inverted/flipped, they are only rotated to fit in the UV space.

Red Channel:

Green channel:

And another example of another piece of the map:

Now it looks like the green channel should just be inverted on one of the UV patches, but I already tried it, and there is still an obvious seam. No matter which channel i invert, the seams just dont line up!

04 April 2007, 06:42 PM
i went nuts from this too for a while when i was messing with this game engine "reality factory". i think its the way the normal map is generated, it seems they are generated in a continous circle or something and in order to get it to line up you would have to flip the reds or greens and try to patch it together . which is easy if its just half a model, but in reality factory it was the uv groups, so it was impossible. that was just because reality factory couldn't smooth the normals though, i think.
i guess if that is on one texture map, flipping the red or greens wouldn't make a difference.
if those are two seperate maps though, you should be able to flip one of them, but i think you might have to assign a seperate shader to be flipped.
its hard to explain but if you look at the normal map auv tiled then its easier to see how the direction of the lighting is all over the place when the map is generated.
hope this helped.

04 April 2007, 07:55 PM
What do you mean by rotate the model?

Also, I tried inverting the channels to each of the pieces (just by selecting the UV patches in photoshop that wanted to invert and copy/pasting then inverting), not the whole map.

I resorted to reUVing and hiding the seams, but its just a temporary solution. Still having the same problem.

04 April 2007, 10:56 PM
sorry i meant flip the colors and not rotate. although i tried
that too, rotating, because i suspected that the actual
raytracing light needed to be reversed. ( which i still suspect)
this was all for this crappy game engine "reality factory" that i gave up
on, so it probably doesn't really pertain to what youre doing.
plus it was zmapper, so forget it. :) sorry abut that.
i was ready to kill somebody for a couple of days there,
because i was getting that same thing where it would
indent and "reverse light" in certain areas within reality factory.
i think its just you have to flip the channels till they match,
which is easier if you can assign a seperate shader to each part.
and if you can see it in real time ( which is better)
you can flip each chanel until it looks right.
like i said this drove me nuts for a couple of weeks so...
i tried to recreate it, the weird thing is its mirrored in the Y middle
on display but its just two 4 poly planes.
anyway i feel your pain
on display

04 April 2007, 04:04 PM
mudbox is on crack LOL. As i said, I tried flipping the channels in every possible combination, and it still leaves a seam. Whats weird is in Hardware view, it doesnt look as obvious (actually you cant tell at all.....) but when I render it, thats when the seam is like "HI LOOK AT ME".

Maybe its just Maya... but theres an obvious discrepency in the pieces on the Normal map, which is what leads me to believe its Mudbox's fault. lol

04 April 2007, 11:37 PM
Yea its the mudbox.. A bug or an undocumented feature. Try to output normal map in different software, although its hard because the polycount. Apparently the normals get screwed in some point. Try something to "reset" the normals. Just guessing here.. good luck.

CGTalk Moderation
04 April 2007, 11:37 PM
This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.