Multitexture? What the hell for?

Something that all of the major accelerator boards now implement is Multitexture… What the hell for??? Isn’t it better to make in Photoshop or something, the final texture? I mean, it just doesn’t seem that usefull to me… I’ve heard something about lightmaps using it, how? For exemple: are the marks on the walls of a shoot, multitextures in quake3?

>>For exemple: are the marks on the walls of a shoot, multitextures in quake3?<<

No, they are additional textured polygons put onto the wall with polygon offset enabled. You’ll see it if you watch it in wireframe.

“I’ve heard something about lightmaps using it, how?”

But the light on the floor under the rocket flying to the wall is a lightmap. Or the halo on the floor if someone has quad damage…

Have a look at NVIDIA’s developer relations page to get a grip on what can be done with additional textures and multiple passes.

[This message has been edited by Relic (edited 07-24-2000).]

Multitexturing has tons of uses:

  1. Instead of having a texture hold colors have it hold normal vectors for each pixel for per pixel lighting (this is also how bump mapping is done)

  2. Lightmaps like you said

  3. You get to combine textures in any way you want during the game rather than having to combine them in photoshop

  4. Tons more

As for lightmapping in quake also when you look at the walls next to a light notice how the wall texture is bright close to the light and then gets darker as you move down the wall. This is the big use of lightmaps in quake. These light maps are generated for you when you make a make in Qradiant.

Well, it’s great for stuff like lightmaps.

Without multitexturing, the only way to apply more than one texture to a polygon is to do multiple passes (rendering the same poly more than once with blending enabled). This works, and it’s actually pretty easy to code (for simple cases), but it is SLOWER. You basically multiply the number of polys you pass to the card by the number of passes, plus overhead. Multitexturing is a way to get it all done in one fell swoop. It’s great, because it’s fast and on cards the implement it well, it looks good (and you avoid annoying blending artifacts).

If you have a card that supports it, use it! It’s pretty neat how it works.