Normal Mapping for Games

Become a member of the CGSociety

Connect, Share, and Learn with our Large Growing CG Art Community. It's Free!

THREAD CLOSED
 
Thread Tools Display Modes
  04 April 2004
You're welcome. Took me awhile to learn it, might as well share.
 
  04 April 2004
[edit... oops double post]

Last edited by EricChadwick : 04 April 2004 at 08:27 PM.
 
  04 April 2004
Hi there!
First of all great post!
Ive been playing around with these treads
but It seems to me that the CG plugin doesn't work for max 6?
Ive got everything working except for the cgplugin.

can someone please help me out?
__________________
www.flyingkiwi.nl
 
  04 April 2004
Quote: I've gotten the altered ati normal mapper with obj support, but it wont generate a normal map, its just either a back or grey flat area on the tga. I do know how to get them to view in max 6, but I still can't seem to get the obj one to work properly. I think I will contact ATI to see what they can do.


Gyzer How did you get 3dsmax 6 preview the normal maps?

can you please explain?

Willem
__________________
www.flyingkiwi.nl
 
  04 April 2004
Ok, first off u have to be running in direct 3D mode, otherwise the options wont be avalible.

First off open up the material editor and go down to direcx Manager. Go down to metalbump9 and hit the enabled box right next to it. Then scroll down to the Bump section and place the normal map in the bump map, not the Normal map. At least for me, the normal map doesn't show the normal map as it should. You can play with the bump intensity. Also at the bottom of the MetalBump 9 section theres a checkbox fofr Sync Standard Material, hit that, and then it should render. Sometimes the Sync Standard Material is a bit funky, but just play with it and it should work.

Also you can do it this way:

Hit the standard material button and pick DirectX9 Shader. I personally don't use this method so I don't know how to get it to work in here, but it works just fine using the other method.

I hope this helps.
__________________
"The path behind always seems easy, while the path ahead always seems insurmountably harder."
 
  04 April 2004
Normal Mapping Do's and Don'ts

So I thought I would put this info in here.
(There are not laws just problems I have come up wiht.)

#1. Don't Mirror UV's

#2. Don't have very accute polygons with super sharp angles in your low poly model. (see pictures below).


Feel free to move this to the first thread if you think they are correct.

-Omita
__________________
Software Engineer

Last edited by Omita : 04 April 2004 at 01:16 AM.
 
  04 April 2004
Some other tid bits. I remembered something the ATI people said about Maya and Normal Mapping. Maya is held back because it uses OpenGL. OpenGL 2.0 still has does not support HLSL. The new versions of OpenGL coming out address the shader issue. So Maya has to have plug-in created by the graphic card manufactures while Max can just use DirectX.

IMO I like SoftImage's Normal mapping capabilities the best. But maybe Maya has something in Maya 6.

I personally am a Maya artist... so I am not trying to knock Maya. I just wanted to pass on what I have heard from various industry folks.

-Omita
__________________
Software Engineer
 
  04 April 2004
Whats the prob about mirroring uvs for areas you want to be the same?

I haven't done it yet, but I'm just curious as to why u shouldn't
__________________
"The path behind always seems easy, while the path ahead always seems insurmountably harder."
 
  04 April 2004
Whoaa!
thanks Gyzer.
that helped me alot..
Will post some stuff when its worth it!!

thanks..

Willem
__________________
www.flyingkiwi.nl
 
  04 April 2004
As far as I see, mirroring UVs is OK, with a couple caveats...

1. Before deriving your normal maps, you need to get rid of any overlapping UVs on your low-poly model. One easy way to do this, while preserving the mirroring, is to select the UVs for the half of the model that is mirrored, then move the UVs 1.0 along U (or V) so those faces are outside the 0-1 UV box. They'll still be mirrored, but they should be ignored by the normal map tool, since it only calculates normals for the UVs in the main UV 0-1 box.

2. If you're using mirrored UVs, make sure your game engine supports mirrored UVs for normal maps. Otherwise you'll end up with incorrect lighting in-game.
 
  04 April 2004
Quote: Originally posted by Gyzer
Whats the prob about mirroring uvs for areas you want to be the same?

I haven't done it yet, but I'm just curious as to why u shouldn't


Ths simplest problem is that a lot of Baking tools flip out when presented with overlapping or Mirrored UV's. So first off you would have to do some photoshop work.

The second problem has to do with if you are using World space, tangent mapping stuff like that. What can happen is the light on half of the body will look correct and on the mirrored half the Normals will light backwards. Note: Some others have mentioned that programmers can fix this in game engines. But it's worth mentioning that a lot of games engines don't support mirrored normals.

Again this all depends what the specifics of the game engine.
__________________
Software Engineer

Last edited by Omita : 04 April 2004 at 09:41 PM.
 
  04 April 2004
Quote: you would have to do some photoshop work.
Don't have to if you arrange your UVs properly (see my last post).
 
  04 April 2004
Quote: Originally posted by Omita
The second problem has to do with if you are using World space, tangent mapping stuff like that. What can happen is the light on half of the body will look correct and on the mirrored half the Normals will light backwards. Note: Some others have mentioned that programmers can fix this in game engines. But it's worth mentioning that a lot of games engines don't support mirrored normals.

Again this all depends what the specifics of the game engine.


I have had this problem, EricChadwick are you saying that when you move the mirorred uv's that overlap the original outside the 0-1 area this won't happen?, and i asume you can then later move it back to place once the normal map is calculated?

Quote: Originally posted by EricChadwick
You need a tool/engine that massages the normals of the vertices on your low-poly mesh, along each of the UV seams in your model. These normals are used by a 3d engine to transform the per-pixel normals from your normal map into world space... the orientation that's needed so the lighting will be seamless across the model.


Does this mean the seams apearing in the 3d s/w's viewports are the result of the s/w's inability of doing this? If so is there a program out there that does have that ability and shows normal maps without the seams?

Here the workflow i have been using

1. Model the low poly
2. Make a copy of the low poly and Seprate the different body parts
3. Convert a part to Sub-D
4. Crease the edges that need to be
5. Covert the Sub-D back to polygons using between 3-5 divisions per face (using Maya)
6. Import the part into Zbrush and start adding details
7. Same for all other parts
8. Done
 
  04 April 2004
Quote: move the mirorred uv's that overlap the original outside the 0-1 area
In my opinion, this is only needed when you bake the normal map, to stop the baker from attempting to superimpose two solutions on top of each other. Many normal map bakers have trouble with overlapping faces, exactly the problem that mirrored UVs present.

In my experience, the overlapped UV chunks can be moved off to the side and then left that way permanently. They still get mapped appropriately after the normal map has been made, it's just that over there they're ignored by most normal map bakers.

Quote: Does this mean the seams apearing in the 3d s/w's viewports are the result of the s/w's inability of doing this? If so is there a program out there that does have that ability and shows normal maps without the seams?
Yes and yes. AFAIK you need to run the model through an exporter that will massage the normals properly, then view the results in the game engine. The viewports in 3d content-creation software (Maya, Max, etc.) don't do this properly AFAIK. Our engine does it. As far as free or publicly available engines, I'm not sure. Perhaps AMP?
http://www.4drulers.com/amp.html
 
  04 April 2004
Nvidia's Melody factors in UV seams when rendering normal mapping.
 
Thread Closed share thread



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
CGSociety
Society of Digital Artists
www.cgsociety.org

Powered by vBulletin
Copyright 2000 - 2006,
Jelsoft Enterprises Ltd.
Minimize Ads
Forum Jump
Miscellaneous

All times are GMT. The time now is 03:27 PM.


Powered by vBulletin
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.