Talk:Normal mapping/Archive 1

Bi-tangent vs. Cotangent
A bi-tangent is a term used for a vector perpendicular to the normal and tangent on a 1 dimensional path. A bi-tangent is always perpendicular to the normal and tangent. In this article we are talking about a vector on a 2D surface that is not always perpendicular to either the normal or tangent. (Almost never actually, in the technical sense of almost never, except in special boring cases like planes). The correct term is "cotangent." 173.218.156.160 (talk) 03:19, 16 May 2011 (UTC)


 * Just wondering, don't you usually orthonormalise the matrix after deriving the tangent space to make life easier (thus turning the cotangent into a bitangent)? --217.132.34.125 (talk) 08:59, 18 May 2011 (UTC)

Doom 3
Does Doom 3 use normal mapping or bump mapping? Both articles claim it for themselves... 202.150.96.34 07:30, 10 Feb 2005 (UTC)


 * Normal mapping is a subset of bump mapping. Bump mapping covers all techniques, normal mapping is simply one technique of bump mapping. Goosey

Usage in film: Harry Potter & the Half Blood Prince
Normal mapping was used in the latest Harry Potter movie, according to an interview with the makers on http://www.popularmechanics.com/technology/industry/4324866.html?page=2

Maybe add a section "usage in movies"?


 * Normal mapping is ubiquitous in 3D graphics, especially for movies and games. As such I don't think any such section is useful. Though perhaps expanding the article to clarify this could help. Lord Crc (talk) 13:58, 23 December 2016 (UTC)

Normal Mapping vs Height Maps
I don't really understand the advantage of using normal maps over height maps. Normal maps seem to be a more compliacted way of getting the same thing. Can anyone explain this to me please? --Feanix 11:18, 21 February 2007 (UTC)


 * One has nothing to do with the other. Zarkow 124.120.79.143 00:49, 22 March 2007 (UTC)


 * Height maps actually deform the polygon mesh. normal maps give the appearance of contours on surfaces with disturbing or tesselating the mesh.


 * Just to clarify in case someone else has the same question: Heightmaps do not necessarily transform the mesh - they are just a means of storing height according to a set of coordinates. A greayscale texture for example stores height for 2D coordinates, i.e. a 3D relief (like a map of a landscape). In the context of real time 3D graphics and bump-mapping, both normal- and height-maps can be used. Bump-mapping works by modifying the normal vector of the surface for lighting calculations - this is simply the important factor for calculating simple light intensity: a surface facing a light source directly will be illuminated maximally while a tilted surface will appear darker and a perpendicular surface isn't illuminated at all. Thus when calculating bump-mapping with a height-map, the relief from the height-map must be transformed to get the slope of the relief, i.e. its normals (basically computing the Gradient). A normal-map already provides the normals directly so the transformation step of the texture can be skipped. Bottom Line: normal-maps are more complicated for artists while height-maps are more complicated for rendering. An artist will usually work on a height-map level (or use an equal process such as baking from high-poly) and then use a tool to supply a normal-map for the actual rendering algrithm to work with. Golan2781 (talk) 13:45, 28 November 2012 (UTC)

Halo 2
I would have thought that Halo 2 was just as famed for its use of normal mapping as Doom 3 [assuming that as mentioned above, it actually uses normal rather than bump mapping] and Half Life 2. But maybe that's just me...

Does Half-Life 2 use normal mapping? I don't remember that but then again I never played through the game.

Also, which ps2 and gc games have used normal mapping? What are the conditions in which it was used? I know that Super Smash Bros. Melee used it on at least two trophies (dk and bowser) but not during actual gameplay.

Yes, HL2 does use normal mapping. --Feanix 11:15, 21 February 2007 (UTC)

Finally your answers.(some may be height mapping, i'll list it)

PS2

PON(Nmapping)

On spec shine polys only (Shiny!! heh). I found the game to slow the same with or without it. By fiddling with the light detail they put on there, or in levels that don't have shine and therefore no passes or calculation of it. The game slows on this horrid conversion of the havock engine (though xbox version slows now too), even in low end games like StuntMan2 it slows when you bump things (yet has only a ps1 dr1ver damage model and arcade control).

HitMan:BM(EMBM which may indicate simple hieght)

However I didn't like that they had a LOD yet didn't do it as much as PON.

Malice(H-mapping)

1 inf light and was a tech demo of sorts

Jak3(not sure)

Uses bump mapping of sorts, on the waist land desert. However you need to vid cap it, it's light, but you may see shadow appear on one side to the other. Actually they messed up and the shadow goes towards the light here. Another part is these blades you must pass through slow motion by walking on it's beem. The beem looks to have a geometric indent, but looking at the edge reveals its flat.

GC

GodZilla games(not sure, most likely height)

On charas as you can see.

StarWars:RogueSquadrun 2+3(not sure, most likely height)

Is this an Xbox game? Nope! The best showcase the console has to date (uses 50% too, due to half units used, 75% polys at that amount of appliance, not all hardware effects used, and AI not being fully used to the most). Now according to the devs a whole area can be about 230k-280k and stays 60 most times, however doing the math of GC I assume the game slows a bit just when the whole area is being viewed, so you have 8M about rather the peak 11-12M (however peaks mean all on all, even bones, and the real numbers could be a bit higher dependantly).

BobtheVila —Preceding comment was added at 14:06, 26 February 2008 (UTC)

Code For Normal Mapping
For the above, uh, yes Half-Life 2 uses normal mapping. Ok. I was wondering if anyone has some Cg or HLSL shader code for normal mapping that they could place on this wiki.


 * GLSL for bump mapping is the closest I have. Although the only difference is that bump mapping computes the normal, while normal mapping just looks it up in a table. Of course, my code would have to be checked first to make sure it actually works the way it's supposed to anyway.Tommstein 18:55, 4 December 2005 (UTC)

Is Normal mapping 3D?
Maybe this is a dumb question but I don't understand the difference between bump mapping (which is not 3D as I understand it but gives the illusion of displacement) and normal mapping.

In other words, if you apply a bump map of a deep gash onto a sphere, and then rotate the sphere in 3D to see the gash from the "side", you cannot see into the gash because there is only an illusion of a gash painted onto the sphere geometry. Is this true for normal mapping as well?
 * Normal mapping has the same limitations as bump mapping. The difference is an implementation detail. -Ahruman 23:41, 6 April 2006 (UTC)

I think it's called a "normal map" because in optics you study light rays and one those rays is called the "normal ray". If I understood well the normal map doesn't make the texture 3D, it makes the lightrays be calculated according to the shape of an object. Normal map is bout how light reflects off a surface, the heightmaps are about describing the volumetric shape of an object without actually drawing more triangles for it. —Preceding unsigned comment added by 201.81.199.100 (talk) 13:15, 29 October 2007 (UTC)

I found N-mapping and bump mapping also to look the same, deepening the height via art program contrast/brightness, results in a normal map in depth. Only now you got merely 1 pass and ability to do it in a unit, also the calculation is of fake vectors, using gradient slope looks per axis. It has no data per pixel, neighbor reliant.

I also found that normal mapping still changes per light/spec pixel in the lights raster even if it uses normals at every pixel to calculate slope, all that fixing comes from phong which interpolates also the silhoettes to lights. Look to games using a 1.0 spec and you can see it change. Thats why fragment shader is a more correct name. Without phong, blocky lights are there, only the correcting of the light in the texture helps remove it.BobtheVila

Article is too difficult to understand
I think this article uses the language of a professional 3d designer. I know it's difficult to explain things about mapping and design without using such complicated terms, but maybe this could be simplified a little for all of us simple mortals out there.

--201.141.175.22 22:29, 17 June 2006 (UTC)


 * While I agree that the article is fairly poorly written, it is in the realm of graphics and is obligatory that the math and geometry behind it be discussed because that's really all it is. From a layman's standpoint, normal mapping boils down to giving objects a more 3D, in your face look without altering the model or geometry. It does this by loading in an image and using the RGB channels to alter the surface normals, thus changing the lighting. That is about as simple an explanation as can be made. Jon914 18:10, 27 October 2007 (UTC)


 * Please stop putting references to color channels in this article. If you choose to think of the map as RGB, personally, that's fine; but its wholly irrelevant to the actual technique. You could just as well pretend they're YUV, or chrominance, luminance and alpha or anything similarly ridiculous. They're really just 3-dimensional vectors, encoded as a bitmap. Bitmap does not _mean_ image. It just means a spatially arranged map of bits. While, in common discourse, people are referring to rasters of RGB color components, that is clearly not the case here. —Preceding unsigned comment added by 65.183.135.40 (talk) 22:00, 4 February 2008 (UTC)

How do I create a normal map of a texture on a 3d model?
I can create a low resolution 3d model with a texture wrapped onto the model. I have a scanner that scans a face and wraps the face photograph onto the 3d geometry. What is the best way, or best software, to create the normal map so that the low resulution geometry displays as if it were high resolution using the normal map? I'm sure lots of people want to know this. —The preceding unsigned comment was added by 24.64.227.161 (talk) 00:49, 11 December 2006 (UTC).

List of Games has lost its purpose
Today most games have normal mapping, if it's shader-driven. The listing of only a few games makes it seem like they are unique. They are not and neither is the implementation. Zarkow 124.120.79.143 00:49, 22 March 2007 (UTC)


 * I believe the list is for those that have no clue with a normal map is. The list can be used as a reference for those that would like to see normal maps used properly. When you recommend the local eateries you recommend the best not everyone of them, correct?


 * I removed it. The list was relevant in 2004 when normal mapping first appeared, but at this point it is silly.  You might as well include a list of games in the article Polygon.  Just look at almost any major title for the Xbox360 if you want to see normal maps. Redquark 14:12, 9 May 2007 (UTC)

Except GodFather, the only ps3/360 game not to use it(I think).BobtheVila —Preceding comment was added at 16:05, 26 February 2008 (UTC)

Does the Gamecube support Normal Mapping?
I think that some of the details in the Gamecube technical demo are Normal mapped, although i don't know myself. 68.147.223.143 01:34, 15 May 2007 (UTC)

In TeV it has some bump map extensions. GodZilla and SW:RS2+3 has it.BobtheVila

It does. All the Resident Evil games (except RE2 and RE3) use it nearly everywhere, especially RE0. Luigi's Mansion, Pikmin 2, and Twilight Princess had it. Even Super Smash Bros. Melee had it on the Metroid, Giga Bowser, Classic Bowser, and Classic DK trophies (although their in-game counterparts lacked it.) 66.116.35.202 (talk) 09:27, 25 August 2017 (UTC)

The two different ways to bump
Normal bump mapping perturbs the existing geometric surface normal, but this replaces it entirely. As someone here pointed out, these are the same ideas, just different implementations. I was wondering if we could get a section on here about the relative advantages and disadvantages of each format. I'm not really clear on this myself.

I would like to work on that partly, as I have new information from using anim8or on some same tiles in comparisons. I figured out that N mapping is mimicable by adding more depth or contrast in the map...that small a thing to do. I also found no actual difference enough to replace it with normal mapping. Height is enough for all, it has no actual data per pixel and calced by gradient slope. It uses 1 pass and if new games used it with the deeper maps accordingly they could boost so much performance. 4 passes is uaually used, even Q4 did for passes for this time (I guess you have to use passes), however 1 tiny unit or pass will give a giant boost in polys or at least fps at times on cards that slow. I think a big majority of slowdown is from actually repeating geometry at least 4 times.BobtheVila