Skip to main content

Normal Map

Submitted by bullet21 on
Forum

Well, i've heard all the hype about normal maps and how they're the next big thing. But what is a normal map, why are they so hyped over. And is it for low poly or high poly stuff.

Submitted by Kalescent on Sat, 05/06/04 - 9:06 PM Permalink

http://www.monitorstudios.com/bcloward/tutorials_normal_maps6.html

Have a look at that Bullet21 - tis a good explanation, and guides you to all the tools you will need to start playing around with normal maps yourself.

In its essence, its LIKE a bump map for a low poly in-game model that makes it look more detailed than it really is, and its generated from a high poly model (source) model.

[:D]

Submitted by urgrund on Sat, 05/06/04 - 10:27 PM Permalink

a bump map can only define "bumps" as in elevation or holes in the geometry. a normalmap is perpixel information abuot which way that pixels polygon normal would be lit, if it were a high poly model. This means you can have smooth 'hill's and curves like muscle shapes and different angles as they get steeper, whereas a bumpmap is up or down.

Here's an example where I modeled a high poly flag that fits over a 2poly lowres flag. It looks much nicer in realtime as you sway lights around it :P

Normal Map
[img]http://starwars.web.easynet.be/dungeonrumble/files/screenshots/banner02…]

In Game
[img]http://starwars.web.easynet.be/dungeonrumble/files/screenshots/banner05…]

Submitted by bullet21 on Sat, 05/06/04 - 10:40 PM Permalink

So is it just an illusion that's created by lights, and does it add anything to the polycount of a low poly object?

Submitted by Kalescent on Sat, 05/06/04 - 11:06 PM Permalink

Thats correct, although the example that urgrund has given, isnt really the best - as its REALLY easy to see that the flag is still flat.

But it gives you some idea.

Up above when i said its LIKE a bump map, i didnt mean it WAS one, i was merely trying to describe similarly what kind of effect it has to a smooth surface, as per pixel lighting and normals definatitions went way over my head when i was a newb. I suspect it would to many others as well.

It doesnt add any complexity to a low poly mesh. A better example is the Unreal3 dude.

High poly source model.. ( used to generate normal map for low poly mesh )..

[img]http://www.sumea.com.au/simages2/219_normal2.jpg[/img]

Low poly mesh..

[img]http://www.sumea.com.au/simages2/219_normal.jpg[/img]

Low poly mesh + Normal Mapped + Diffuse + Displacement / Bump. ( I'm assuming )
[img]http://www.sumea.com.au/simages2/219_normal1.jpg[/img]

You can see why theres a big fuss over it [:P]

Submitted by urgrund on Sat, 05/06/04 - 11:54 PM Permalink

oh sure... just go and blow my poor little flag out of existance by referencing Unreal3! :D

Submitted by souri on Sat, 05/06/04 - 11:58 PM Permalink

btw, I've had this link in the modellers section for a while. [url="http://members.shaw.ca/jimht03/normal.html"]Good explantion on what normal maps are[/url].. (link should work now)

Crytek haven't put out their tools for Farcry just yet I think, and Doom 3 isn't out either, but now is definately a good time to understand what normal maps are. (You can try them out in the AMP II engine, of course)

And don't fret by seeing hi-resolution, highly detailed meshes like the Unreal model above. Be sure to check out tools like Zbrush 2 that can help build detailed organic monsters/humans etc rather easily and fast (once you get over the learning curve). I suggest everyone check it out. [:)]

Submitted by Kalescent on Sun, 06/06/04 - 12:33 AM Permalink

lol sorry urgrund [:D]

If I could make a suggestion re your flag, put some edging on it, and perhaps few wrinkles on that edging, At the moment with the hard solid black line around some of the edges it kinda detracts from the nice wavy part thats already there, kind of breaking the illusion so to speak !

Zbrush2 though, as souri mentioned is a great tool! get onto it! [:)]

Submitted by palantir on Sun, 06/06/04 - 1:27 AM Permalink

Zbrush 2 looks awesome, the only problem is it costs around $500 US ? a bit too expensive for most hobbyists. However, the demo is available for here: [url]http://pixologic.com/download/demo_pc.html[/url]
So we can at least check it out. Should be a bit of fun for a few weeks.[:)]

Submitted by Kalescent on Sun, 06/06/04 - 1:38 AM Permalink

That link up there is broken for me souri - for the normal map explanation.

Submitted by JonathanKerr on Sun, 06/06/04 - 1:39 AM Permalink

What is ZBrush? I'm not familiar with it. I've taken a quick gander around the site, but can't be arsed plowing through pages of stuff to find out what it is.

Submitted by Aven on Sun, 06/06/04 - 1:41 AM Permalink

I wont event try talking about Normal Mapping as I have never tried it, and have never completely understood it myself.

Crytek do have their Polybump tools available (the fancy name they gave to FarCry's Normal Maps), and can be viewed here...
http://www.crytek.de/downloads/index.php?sx=polybump

Maya 6 also comes with it's own inbuilt Normal Map making capabilities. Don't ask me how good they are as I have never tried them, and I don't see myself doing so in the near future. Plus, I have nothing to really compare them too... and screw your Unreal Engine 3 references HazarD :p More info can be found here, just go down to the Texturing area...
http://www.alias.com/eng/products-services/maya/new/features_enhancemen…

Submitted by bullet21 on Sun, 06/06/04 - 7:23 PM Permalink

That site was great, thanx souri, Hazard just delete the sumea address before the members.shaw.ca/jimht03/normal.html ande it works.

Submitted by souri on Mon, 07/06/04 - 3:55 PM Permalink

quote:Originally posted by JonathanKerr

What is ZBrush? I'm not familiar with it. I've taken a quick gander around the site, but can't be arsed plowing through pages of stuff to find out what it is.

Zbrush is different way of modelling, definately a more intuitive way for an artist I reckon. (btw, I'm still learning so I'm no expert or anything)

Basically, you make a rough model with Zspheres (the same idea as metablobs I guess, where you make an object up with spheres. Alternatively you can import a 3d model to work on), and then you can add/subtract dimension, bulges, details, creases etc simply by painting them on with the many tools provided. You see those veins on the arms on that Unreal 3 character up there? You could do that with displacement maps in a 3d program (paint it in photoshop, import it in your 3d program, do the uv mapping and all that) but in Zbrush, you can simply paint it directly on. A better example would be the face on that character - the brow, the cheekbones, the wrinkles on the lips, ridges on the nose etc all that detail can be simply painted on in Zbrush. Can you imagine the work needed for [url="http://www.pixolator.com/zbc-bin/ultimatebb.cgi?ubb=get_topic&f=1&t=014…"]a detailed creature like this[/url] in a conventional 3d program? A big bonus for using Zbrush is that you can model creatures with millions and millions of polygons worth of detail, and it shouldn't crawl your computer to a halt.

There are tonnes of other useful things it can do that would be tedious to do with other 3d modelling programs, so definately have a look at it. I won't say Zbrush will replace Max, Maya, LW etc, it really only shines with creature, human and other biological forms. btw, Weta used [url="http://www.pluginz.com/default.php?loc=news&id=1566"]Zbrush for Return of the King[/url]..

And don't confuse it to Deep paint - from what I remember of Deep Paint (when I tried it years ago), that was a texturing program where you could paint on textures/bump maps in 3d with a variety of wacky paint tools..

Submitted by bullet21 on Tue, 08/06/04 - 6:23 PM Permalink

Zbrush seems to be all the rage these days, for $500 US, it doesn't seem that pricy compared to other 3D packages like Maya Unlimited, or even Lightwave which is like one of the cheapest. Why's it so cheap?

Submitted by J I Styles on Tue, 08/06/04 - 8:44 PM Permalink

From all the feature lists and the fundamental principles behind zbrush, it sounds like a wonder-tool; in reality it is a very cumbersome and specialised tool which is absolutely fantastic at what it does, and awful at what it tries to do. There are a few very basic key things that it lacks -- namely, intuitive navigation and a straight forward integration into a 3D pipeline.

What I mean by these two things, are firstly at its very core it's not a 3D package. It's a hybrid canvas painting tool, think of it like photoshop, with a depth channel (aka 2.5D) and 3d modelling and texturing tools within that. So because of this, it's not like any other 3D application, because it simply isn't one, and shouldn't be treated like it, so that's no problem. What it does mean though, is this severely limits it's use as a 3D package; take navigation -- you're dealing with a flat canvas, not a camera in a 3D space. To navigate, zoom, rotate, or pan, you are physically transforming the object, because there is no camera. you're scaling the model, you're moving it, you're rotating it to fit the canvas, which is very poor navigation (especially without perspective correction, and limited control on how you see what you're working on). Next up is its integration into a 3D pipeline. It's NOT a 3D tool, it's a hybrid, and it gets cluttered when trying to use it for just 3D work. What you can do with it, it does very well, but it's not specifically meant and specialised for that. An example is any editing you're doing to your model, after you're done, if you "unselect" it (it doesn't actually have selection), after you stop editing it, it's flattened to the canvas becoming "pixols" (2.5D pixels). So you have to export it to save it. It doesn't have a 3D scene, it doesn't have a camera, it doesn't interact within a 3D world -- it's a flat canvas that you're temporarily editing a 3D object on, which is going to be flattened into "pixols" (no longer a 3d object) because natively it's a flat painting program.

With that horrible big rant out of the way, I'd like to say it's very good at what it does, and I've been using it for both displacement and normal mapping for quite a while now, and once you get around it's hideous short comings (or what are seen as short comings by anyone who wants to work with it in 3D in any way), then it's quite a good tool to use. It's just that it's such a bad round-about way of doing anything because it's simply so different.

Submitted by Aven on Tue, 08/06/04 - 8:52 PM Permalink

Because it isn't a 'complete' package. It is aimed at modelling and texturing. To do anything more, you have to have a major package to bring the project into. Think of it more as a modelling plug-in.

Just like Silo is a poly modelling program and Motion Builder is an animation program.

Edit: Er... Joel beat me to it :D

Posted by bullet21 on
Forum

Well, i've heard all the hype about normal maps and how they're the next big thing. But what is a normal map, why are they so hyped over. And is it for low poly or high poly stuff.


Submitted by Kalescent on Sat, 05/06/04 - 9:06 PM Permalink

http://www.monitorstudios.com/bcloward/tutorials_normal_maps6.html

Have a look at that Bullet21 - tis a good explanation, and guides you to all the tools you will need to start playing around with normal maps yourself.

In its essence, its LIKE a bump map for a low poly in-game model that makes it look more detailed than it really is, and its generated from a high poly model (source) model.

[:D]

Submitted by urgrund on Sat, 05/06/04 - 10:27 PM Permalink

a bump map can only define "bumps" as in elevation or holes in the geometry. a normalmap is perpixel information abuot which way that pixels polygon normal would be lit, if it were a high poly model. This means you can have smooth 'hill's and curves like muscle shapes and different angles as they get steeper, whereas a bumpmap is up or down.

Here's an example where I modeled a high poly flag that fits over a 2poly lowres flag. It looks much nicer in realtime as you sway lights around it :P

Normal Map
[img]http://starwars.web.easynet.be/dungeonrumble/files/screenshots/banner02…]

In Game
[img]http://starwars.web.easynet.be/dungeonrumble/files/screenshots/banner05…]

Submitted by bullet21 on Sat, 05/06/04 - 10:40 PM Permalink

So is it just an illusion that's created by lights, and does it add anything to the polycount of a low poly object?

Submitted by Kalescent on Sat, 05/06/04 - 11:06 PM Permalink

Thats correct, although the example that urgrund has given, isnt really the best - as its REALLY easy to see that the flag is still flat.

But it gives you some idea.

Up above when i said its LIKE a bump map, i didnt mean it WAS one, i was merely trying to describe similarly what kind of effect it has to a smooth surface, as per pixel lighting and normals definatitions went way over my head when i was a newb. I suspect it would to many others as well.

It doesnt add any complexity to a low poly mesh. A better example is the Unreal3 dude.

High poly source model.. ( used to generate normal map for low poly mesh )..

[img]http://www.sumea.com.au/simages2/219_normal2.jpg[/img]

Low poly mesh..

[img]http://www.sumea.com.au/simages2/219_normal.jpg[/img]

Low poly mesh + Normal Mapped + Diffuse + Displacement / Bump. ( I'm assuming )
[img]http://www.sumea.com.au/simages2/219_normal1.jpg[/img]

You can see why theres a big fuss over it [:P]

Submitted by urgrund on Sat, 05/06/04 - 11:54 PM Permalink

oh sure... just go and blow my poor little flag out of existance by referencing Unreal3! :D

Submitted by souri on Sat, 05/06/04 - 11:58 PM Permalink

btw, I've had this link in the modellers section for a while. [url="http://members.shaw.ca/jimht03/normal.html"]Good explantion on what normal maps are[/url].. (link should work now)

Crytek haven't put out their tools for Farcry just yet I think, and Doom 3 isn't out either, but now is definately a good time to understand what normal maps are. (You can try them out in the AMP II engine, of course)

And don't fret by seeing hi-resolution, highly detailed meshes like the Unreal model above. Be sure to check out tools like Zbrush 2 that can help build detailed organic monsters/humans etc rather easily and fast (once you get over the learning curve). I suggest everyone check it out. [:)]

Submitted by Kalescent on Sun, 06/06/04 - 12:33 AM Permalink

lol sorry urgrund [:D]

If I could make a suggestion re your flag, put some edging on it, and perhaps few wrinkles on that edging, At the moment with the hard solid black line around some of the edges it kinda detracts from the nice wavy part thats already there, kind of breaking the illusion so to speak !

Zbrush2 though, as souri mentioned is a great tool! get onto it! [:)]

Submitted by palantir on Sun, 06/06/04 - 1:27 AM Permalink

Zbrush 2 looks awesome, the only problem is it costs around $500 US ? a bit too expensive for most hobbyists. However, the demo is available for here: [url]http://pixologic.com/download/demo_pc.html[/url]
So we can at least check it out. Should be a bit of fun for a few weeks.[:)]

Submitted by Kalescent on Sun, 06/06/04 - 1:38 AM Permalink

That link up there is broken for me souri - for the normal map explanation.

Submitted by JonathanKerr on Sun, 06/06/04 - 1:39 AM Permalink

What is ZBrush? I'm not familiar with it. I've taken a quick gander around the site, but can't be arsed plowing through pages of stuff to find out what it is.

Submitted by Aven on Sun, 06/06/04 - 1:41 AM Permalink

I wont event try talking about Normal Mapping as I have never tried it, and have never completely understood it myself.

Crytek do have their Polybump tools available (the fancy name they gave to FarCry's Normal Maps), and can be viewed here...
http://www.crytek.de/downloads/index.php?sx=polybump

Maya 6 also comes with it's own inbuilt Normal Map making capabilities. Don't ask me how good they are as I have never tried them, and I don't see myself doing so in the near future. Plus, I have nothing to really compare them too... and screw your Unreal Engine 3 references HazarD :p More info can be found here, just go down to the Texturing area...
http://www.alias.com/eng/products-services/maya/new/features_enhancemen…

Submitted by bullet21 on Sun, 06/06/04 - 7:23 PM Permalink

That site was great, thanx souri, Hazard just delete the sumea address before the members.shaw.ca/jimht03/normal.html ande it works.

Submitted by souri on Mon, 07/06/04 - 3:55 PM Permalink

quote:Originally posted by JonathanKerr

What is ZBrush? I'm not familiar with it. I've taken a quick gander around the site, but can't be arsed plowing through pages of stuff to find out what it is.

Zbrush is different way of modelling, definately a more intuitive way for an artist I reckon. (btw, I'm still learning so I'm no expert or anything)

Basically, you make a rough model with Zspheres (the same idea as metablobs I guess, where you make an object up with spheres. Alternatively you can import a 3d model to work on), and then you can add/subtract dimension, bulges, details, creases etc simply by painting them on with the many tools provided. You see those veins on the arms on that Unreal 3 character up there? You could do that with displacement maps in a 3d program (paint it in photoshop, import it in your 3d program, do the uv mapping and all that) but in Zbrush, you can simply paint it directly on. A better example would be the face on that character - the brow, the cheekbones, the wrinkles on the lips, ridges on the nose etc all that detail can be simply painted on in Zbrush. Can you imagine the work needed for [url="http://www.pixolator.com/zbc-bin/ultimatebb.cgi?ubb=get_topic&f=1&t=014…"]a detailed creature like this[/url] in a conventional 3d program? A big bonus for using Zbrush is that you can model creatures with millions and millions of polygons worth of detail, and it shouldn't crawl your computer to a halt.

There are tonnes of other useful things it can do that would be tedious to do with other 3d modelling programs, so definately have a look at it. I won't say Zbrush will replace Max, Maya, LW etc, it really only shines with creature, human and other biological forms. btw, Weta used [url="http://www.pluginz.com/default.php?loc=news&id=1566"]Zbrush for Return of the King[/url]..

And don't confuse it to Deep paint - from what I remember of Deep Paint (when I tried it years ago), that was a texturing program where you could paint on textures/bump maps in 3d with a variety of wacky paint tools..

Submitted by bullet21 on Tue, 08/06/04 - 6:23 PM Permalink

Zbrush seems to be all the rage these days, for $500 US, it doesn't seem that pricy compared to other 3D packages like Maya Unlimited, or even Lightwave which is like one of the cheapest. Why's it so cheap?

Submitted by J I Styles on Tue, 08/06/04 - 8:44 PM Permalink

From all the feature lists and the fundamental principles behind zbrush, it sounds like a wonder-tool; in reality it is a very cumbersome and specialised tool which is absolutely fantastic at what it does, and awful at what it tries to do. There are a few very basic key things that it lacks -- namely, intuitive navigation and a straight forward integration into a 3D pipeline.

What I mean by these two things, are firstly at its very core it's not a 3D package. It's a hybrid canvas painting tool, think of it like photoshop, with a depth channel (aka 2.5D) and 3d modelling and texturing tools within that. So because of this, it's not like any other 3D application, because it simply isn't one, and shouldn't be treated like it, so that's no problem. What it does mean though, is this severely limits it's use as a 3D package; take navigation -- you're dealing with a flat canvas, not a camera in a 3D space. To navigate, zoom, rotate, or pan, you are physically transforming the object, because there is no camera. you're scaling the model, you're moving it, you're rotating it to fit the canvas, which is very poor navigation (especially without perspective correction, and limited control on how you see what you're working on). Next up is its integration into a 3D pipeline. It's NOT a 3D tool, it's a hybrid, and it gets cluttered when trying to use it for just 3D work. What you can do with it, it does very well, but it's not specifically meant and specialised for that. An example is any editing you're doing to your model, after you're done, if you "unselect" it (it doesn't actually have selection), after you stop editing it, it's flattened to the canvas becoming "pixols" (2.5D pixels). So you have to export it to save it. It doesn't have a 3D scene, it doesn't have a camera, it doesn't interact within a 3D world -- it's a flat canvas that you're temporarily editing a 3D object on, which is going to be flattened into "pixols" (no longer a 3d object) because natively it's a flat painting program.

With that horrible big rant out of the way, I'd like to say it's very good at what it does, and I've been using it for both displacement and normal mapping for quite a while now, and once you get around it's hideous short comings (or what are seen as short comings by anyone who wants to work with it in 3D in any way), then it's quite a good tool to use. It's just that it's such a bad round-about way of doing anything because it's simply so different.

Submitted by Aven on Tue, 08/06/04 - 8:52 PM Permalink

Because it isn't a 'complete' package. It is aimed at modelling and texturing. To do anything more, you have to have a major package to bring the project into. Think of it more as a modelling plug-in.

Just like Silo is a poly modelling program and Motion Builder is an animation program.

Edit: Er... Joel beat me to it :D