• Hey, guest user. Hope you're enjoying NeoGAF! Have you considered registering for an account? Come join us and add your take to the daily discourse.

Can anyone explain normal mapping to me?

ge-man

Member
It's another way of bump mapping. In this case, it's a way to make a low poly character model look high poly without the extra overhead. The look is achieved by constructing a high poly character. You take the lighting information and create a bump map that can be applied to the low poly model. With the correct the lighting information in place the low poly model now looks very similiar to the high poly model, except that it's using only a fraction of the polys on the higher poly model.

This is how I understand it, hopefully someone more savy might correct me if I'm missing something but I think this is right.
 

cybamerc

Will start substantiating his hate
A normal map is an RGB color map where the RGB values describe a light vector. It can be generated in multiple ways. Hi-res models are not a requirement. The bump maps in Halo 2 for example are painted by a texture artist and then converted to normal maps.
 

jarrod

Banned
Over on OAF the discussion expanded into which platforms are capable of normal mapping in actual gameplay engines. So far from what I understand it's definitely possible on XBox and GameCube, maybe on Dreamcast, probably on PSP and probably not on PlayStation 2... could anyone tell me why exactly? Pana help! :/
 
shanty: For some even more basic knowledge, to light the surface of a polygon, you take a light from some origin, and you have it hit a surface. The angle it hits the surface, relative to the normal vector coming out of the surface will dictate the way you see the polygon, ie color, brightness, etc. That is why when you take a polygon surface and move it around in light, you can see it change from light to dark depending on the angle. Normals are usually coming straight out from the surface.

So as it was mentioned earlier, you take a higher polygon model, and map out all those normal vectors coming out from each of the polygons. You then apply those normal values to a lower polygon count model, thus instead of having one normal, the larger polygon on the lower poly count model now has numerous normals. When the light hits those normals, it gives the illusion that it is lighting up several polygons instead of just the one.
 
jarrod said:
Over on OAF the discussion expanded into which platforms are capable of normal mapping in actual gameplay engines. So far from what I understand it's definitely possible on XBox and GameCube, maybe on Dreamcast, probably on PSP and probably not on PlayStation 2... could anyone tell me why exactly? Pana help! :/

That just seems silly. I don't see any reason why normal mapping cannot be done on the PS2.
 

DaCocoBrova

Finally bought a new PSP, but then pushed the demon onto someone else. Jesus.
The PS2 is not the slouch many make it out to be. It may need to be done differently but it's still possible I'm sure.
 

jarrod

Banned
Marty Chinn said:
That just seems silly. I don't see any reason why normal mapping cannot be done on the PS2.
Well from what was said ...

"The calculations for the lighting on these techniques work on a per-texel (a pixel within a texture map) level and commonly require a mathematical operation known as a dot product. The Dreamcast, GameCube, and Xbox all have hardware accelerated support for the feature, so it is practical for them to use it (even the DC has done dot-product bump mapping in-game before, in an otherwise-appaling port of a Tomb Raider title on Windows CE for instance.) However, working with the necessary blends on a pixel level is almost the polar opposite of the type of function that the PS2 focuses on, so emulating dot-product bump mapping on PS2 would require a lot of extra passes and math combinations and ultimately isn't very practical. "

...though that was coming from Lazy8s, who I like but don't think is the most impartial person to get answers from on PS2 hardware. I'm hoping Pana can come in and "balance the force" so to speak. ;)
 

GigaDrive

Banned
I'd like to see normal mapping done with a medium polygon model, as the in game model, say in the tens of thousands of polygons instead of 10K or less, with the high polygon model being in the millions of polygons.
 

jarrod

Banned
Marty Chinn said:
Well I'm no expert on the PS2 architecture, but in theory couldn't you just use one of the VUs to do dot product calculations?
That's what I thought but nobody would explain anything. They just said "no". :/

Pana!!!
 

KickyFast

Member
To do normalmapping in hardware you need DOT3 support. The PS2 simply lacks this blend mode, but it can do it in several passes.

Normalmapping can be done on the VUs but it's going to be much slower than hardware DOT3. There is however, a fast way of doing bumpmapping on the VU by using paletted textures. Here's a page that describes the algorithm: link
 

jarrod

Banned
adelgary said:
Why wasn't normal mapping applied in video games until very recently? It's like the latest buzz word in the industry.
Reminds me of 'ACM' rendering that suddenly boomed in 1994. A clever technique that revitalises current hardware so to speak.
 

Lathentar

Looking for Pants
adelgary said:
Why wasn't normal mapping applied in video games until very recently? It's like the latest buzz word in the industry.

More than likely CPUs/GPUs are finally catching up and able to do the technology while keeping a high frame rate.
 

Dice

Pokémon Parentage Conspiracy Theorist
Now they just need to solve the problem of normal-mapped things looking like plastic.
 

Pimpbaa

Member
Isn't it the specular lighting and not the normal mapping causing the plastic look? Developers probably need to learn how to make a material reflect light properly and are currently over doing it.
 

jarrod

Banned
KickyFast said:
To do normalmapping in hardware you need DOT3 support. The PS2 simply lacks this blend mode, but it can do it in several passes.

Normalmapping can be done on the VUs but it's going to be much slower than hardware DOT3. There is however, a fast way of doing bumpmapping on the VU by using paletted textures. Here's a page that describes the algorithm: link
Thanks, that makes sense. I remember people saying the VU1 & VU0 can simulate pixel shading fuctions, which is why I figured it could be done on PS2 (with some effort).
 

Sho Nuff

Banned
Marty Chinn said:
That just seems silly. I don't see any reason why normal mapping cannot be done on the PS2.

I'm positive it can. There just can't be any AI, sound, or gameplay to accompany it. ;)
 

jarrod

Banned
Lazy8s new response to the VU1/VU0 proposition...

Usage of per-pixel blending effects, such as dot product bump mapping, is an issue of practicality for the PS2. The vector units are focused for geometry transform, crunching through large display lists of polygons - more like a vertex shader than a pixel shader. Emulating a dot product and applying a bump map on the PS2 takes a lot of operations and combinations on the Graphic Synthesizer (it doesn't support those blends), so the crafty techniques even end up taking the PS2 four texture passes and some framebuffer operations to pull it off for a range of lighting scenarios.

There are a lot of games that don't even use two texture passes. Four passes would be nice even for GameCube and Xbox. The PS2 is the lead platform for development in the industry and gets far and away the most software R&D done for it, so the usage of per-pixel blending effects you've seen from the system is a relatively good indicator for what's practical with it.

...so forget theoreticals... could PS2 actually use normal maps in a running game engine? Pana?
 

Lathentar

Looking for Pants
adelgary said:
But XBox hardware has been the same since launch :p

I'm not 100% confident, but normal mapping has been used since the Xbox launch in Halo and other games. Just now is it being used on EVERY TEXTURE in the game.
 

cybamerc

Will start substantiating his hate
Marty Chinn:

> So as it was mentioned earlier, you take a higher polygon model...

Not neccessary. That's how id does it but as I mentioned there are other ways of going about it.



adelgary:

> Why wasn't normal mapping applied in video games until very recently?

Because it wasn't feasible until recently.

> It's like the latest buzz word in the industry.

Due to the popularity of Doom 3.

> But XBox hardware has been the same since launch :p

Malice uses DOT3 bump mapping. While it only came out just recently it was first shown in early 2001 (just like Doom 3). The first Shrek for Xbox also uses it.



Dice:

> Now they just need to solve the problem of normal-mapped things looking like plastic.

Specular lighting is a seperate effect from bump mapping. But it helps accentuate the bumpy effect and ppl like shiny things so developers tend to overdo it.
 
Top Bottom