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 Tools Display Modes
  03 March 2004
Quote: Originally posted by jum'bok
hey good thread.

matt- i remember when normal mapping first became popular someone showed me an error they got when they mirrored their model. the normal map thought light was coming from two different directions at once, and each half was being shaded differently. has that happened to you?

The normal mapping doesn't get done until the high poly version is joined completely.

Quote: Originally posted by dom
[B]The only reason i see is that it speedens the refresh rate in zbrush. i mean i could jolly well do the details like raising and eyebrow or a higher hair line on one side of a face in zbrush...

Sure, but I also find that working on one side gives me opportunities to try things out on the other side first. If I want to go for some wild multi-step effect that I'm afraid of not being able to undo, or whatever. Also, I like seeing the direct comparison between the low poly side (it still appears low poly, although each original poly is subdivided hundreds of times) and the sculpted side. The final result will be a low poly generated from the joined high poly sculpted version, but it still has to be close to the original.

Last edited by Matt : 03 March 2004 at 12:14 AM.
  03 March 2004
Nvidia just released their combined LOD-maker and normal map generator...

"NVIDIA Melody creates high quality normal maps that make a low-poly model look like a high-poly model. Simply load your low poly working model, then load your high-poly reference model, click the "Generate Normal Map" button and watch Melody go to town.

You can also can use Melody to generate LODs for you with the "Generate Progressive Mesh" feature. You can rotate your models and see the normal map in action. A command line version is provided to help you integrate Melody in your content creation pipeline. Read more about how you can get the most out of Melody in the accompanying User Guide."

Looks pretty good, haven't played with it yet though.
  03 March 2004
Great! Trying it out now. I've been waiting for this for a little while now. They must have read the thread.

BORK! Melody requires a graphics card that supports Pixel Shader 2.0


Last edited by Matt : 03 March 2004 at 10:47 PM.
  03 March 2004
Naw, I kind of doubt it, although that would be nice. They've been working on it for awhile.

They do love to get feedback though. I asked for heightmaps, they were very helpful, sounds like it'll be in the next release.
  03 March 2004
That's a bummer. What kind of card do you have? Is that an error when you try to run it?
  03 March 2004
It's true. You have to have some type of GeForceFX card to run Melody. I jsut have a GeForce 4 at work and it popped up with an error that said, "Requires Pixel Shader 2.0." I guess they're hoping to sell a bunch of cards with it. :0)

The GeForceFX 5200 cards are really cheap now. Around $80 I think, but it's still kinda silly to have to go plunk down $80 to use "free" software.
Ben Cloward
Technical Artist

HLSL Training DVDs
| ShaderFX | HLSL Shader Thread | My Shaders | Free Textures | Tutorials

  03 March 2004
Thanks for posting a link to melody, it's so much faster than Ati's normal mapper, it seems better all round actually.

I hope this hasn't been asked already but are there any programmes that display a model with both a normal map and texture map?
  03 March 2004
Nvidia's Cg plugin for Max and Maya will allow you to use Cg shaders in the real-time viewport including shaders that use both diffuse maps and normal maps together. It works a lot like the material/shader system already in Max and Maya, only in real-time.

My tutorial shows how to set up the plug-in, choose a shader, and apply it to your model and includes step-by-step instructions. I even wrote a simple shader that uses both a diffuse and normal map. Just take a look at page 6.

There may be other programs out there, but this plugin is the best one for me since it fits right into max.
Ben Cloward
Technical Artist

HLSL Training DVDs
| ShaderFX | HLSL Shader Thread | My Shaders | Free Textures | Tutorials

  03 March 2004
Hey guys, glad to hear more and more people are interested in taking advantage of normal maps. I saw one of the questions here was if there was a way to do it in other software packages... Maya, XSI, etc. Any software is capable--just need to create an exporter, but I'm sure it's all ready been done. I know XSI for a fact is capable of this. Valve Software developers actually demonstrated how they achieved great results in HL2 by using normal maps. There is actually a movie you could download (one of the HL fan sites most likely has it,) that illustrates how they baked the normal map information onto a lower-poly replica. I, personally, have not used Maya enough to really look into exporting normal map data into the game-engine, but XSI, and 3D Studio Max works well.

You can download max scripts, mel scripts, etc. that are made by professional developers if you have no time messing around with it. Crytek made one called POLYBUMP, ATI has one that's free too. I know there is quite a few more... just search for it on google or something. :-)

Last edited by atenyotkin : 03 March 2004 at 01:04 AM.
  03 March 2004
well, cryteks polybumper is not free and atis is long not as good as Melody.

I just tryed Melody and it rocks ... really good tool

--- The White Knight is talking backwards
  03 March 2004
Just thought that I'd add my method in here for variety.

1. Model highpoly model, paying attention to form, muscle structure etc. No details (wrinkles etc...)

2. Use highpoly model as a stencil for the lowpoly model. I basically build the lowpoly model around the highpoly one, Like tracing in 3D. I like this because it allows me to shape the lowpoly in a way that it stays true as possible to the structure of the original hipoly mesh. Then generate a normal map.

3. Create a bump map for the details etc...

4. Texture and specular maps to finish.

Correct me if I'm wrong, but I beileve this is how it's done for Doom 3 (the engine mixes the normal and bump maps together).
  03 March 2004
Decent method.

I think the whole low first or high first is fairly moot, because we need to have both at the end of the day.

I'm working with this method:

1. Model low poly version

2. Split and smooth low to make high

3. Add UV coordinates where needed on High poly to add bump maps that need to be precise, like beveled grooves on a hole in the armour.

4. Create 2nd bump map traditionally, convert to normal and combine with normal map for bumps that can be less precise, like leather patterns.

5. Apply Normal, paint diffuse and spec maps.

I prefer to create the low poly version first for a couple of reasons:

1. I always create the whole character as a low mesh 1st, to block out proportions, which is a really great method, and if you're doing that anyway, might as well keep it.

2. I get a better idea of what shapes will be there in the final model, what's going to be fully modeled, what's going to have an alpha channel, etc. Essentially, the low poly IS what you get in the game, normal mapping is just a glorified bump map, and it only does high pass detail well, not low pass. It's important to have a really well done, dynamic low-res model, and I think it may work a bit better retrofitting the high-res to help the actual game model, than the other way around.
  03 March 2004
The method implements some common sense. I will have to agree that it is important to have a well-made lowpoly model. I will also admit that even though with my method the low model baked the information tremendously well, it was not the most clean, smooth flowing and optimized mesh.

I think a lot of people will benefit from this forum, Im seeing ways of mixing together certain peoples techniques and ideas already.
  04 April 2004
I've been reading more up on normal maping, but I've heard that in max 6 there should be a way built in to view normal maps within the viewports, but I haven't been able to find out how. I personally haven't tried to do a normal map yet, I'm just trying to get all my info together first.

"The path behind always seems easy, while the path ahead always seems insurmountably harder."
  04 April 2004
Ok guys im gonna sidetrack a lil. you can view your normal maps using a dx9 shader in max6. you also have to enable directdraw beforehand. hope this helps.
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
Society of Digital Artists

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

All times are GMT. The time now is 06:44 PM.

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