Specular bumpmapping how?

Squeak

Veteran
Can anyone explain how specular bumpmapping is done on registercombiner/OpenGL 1.X multitexture hardware?
Diffuse normal mapping is relatively straightforward to understand (roughly, three lightmaps blended by vertex values), but I haven’t been able to find a satisfactory explanation on how the specular effect is achieved, anywhere.
I figure part of the solution is taking the viewpoint-vector into account, and then maybe subtracting that from the diffuse and then enhancing the brightness of the resulting texture? Is this completely of target?
 
Squeak said:
Can anyone explain how specular bumpmapping is done on registercombiner/OpenGL 1.X multitexture hardware?
Diffuse normal mapping is relatively straightforward to understand (roughly, three lightmaps blended by vertex values), but I haven?t been able to find a satisfactory explanation on how the specular effect is achieved, anywhere.
I figure part of the solution is taking the viewpoint-vector into account, and then maybe subtracting that from the diffuse and then enhancing the brightness of the resulting texture? Is this completely of target?

what do you mean by 'diffuse done through 3 lightmaps blended together'?
per-pixel shading for both diffuse and specular components under the Phong (read: Blinn) local illumination model utilizes dot3 blending ops.

re how specular is calculated under that model:
http://www.siggraph.org/education/m...lights/blinn_model_for_specular_reflect_1.htm

ps: the 3d algos forum may be better suited for this topic
 
darkblu said:
what do you mean by 'diffuse done through 3 lightmaps blended together'?
Sorry, I meant normal maps of course (x,y,z).

per-pixel shading for both diffuse and specular components under the Phong (read: Blinn) local illumination model utilizes dot3 blending ops.
I was under the impression that with the dot3 blend mode, as implemented in Flipper and NV2a, you had to do two passes, if you wanted specular as well as diffuse lighting?

Interesting read, but it's probably a bit too complex for realtime use on consumer hardware.

ps: the 3d algos forum may be better suited for this topic
Maybe, but I'm more interested in how it's implemented on consoles, than on ever-changing PC-hardware. Besides I hardly ever use the other forums so I would probably forget to look for replies. :oops:
 
Back
Top