#### Archived

This topic is now archived and is closed to further replies.

# Static lightmaps: how to build them ?

This topic is 6844 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

## Recommended Posts

The lightmaps used by quake are grayscale textures. These are modulated (multiplied) with the colormaps applied to each polygon, with texture blending. Unlike colormaps, which are reused over and over for many polygons, there is a lightmap for each and every polygon. To save memory, these are stored at lower resolution than the colormaps (I forget exactly what).

To generate the lightmaps in the first place, I think quake uses a radiosity tool. Check out http://members.home.com/droyer/index.html for more information on radiosity.

##### Share on other sites
Thanks. I already knew what you said, but the link was very precious to understand better the theory. However i still have a few questions.
Lightmaps are 2d squares. I understand that they should be well working on square or rectangular surfaces. But what happens with triangles or more complex surfaces like a star ? How do you calculate the lightmap then ? Or, more exactly, how do you find where in the lightmap each vertex of your surface is ?
Another question. I've seen in the quake source that each vertex has a 3d ( and not 2d, as i thought at the beginning ) texture coordinate, which is basically used to compute the coordinates in the lightmap. I didn't understand the equations nor what is the sense of 3d coords for a texture...if anybody has a clue..
Thanks,

Ysaneya

##### Share on other sites
Hi !!

Check out my article about lightmaps. My article explains what they are and how to compute them. I am pretty sure that you will be able to answer all your questions yourself after you read my article.
http://www.voodoospotlight.com/devknowledge/index.html

Hope this helps.

Phillip

##### Share on other sites
Many thanks...i think i've understood the theory. My lights are going to be semi-static ( ie, static during 99% of the time..but may move/change color/intensity sometimes ), so i have to calculate the lightmaps in real time (at least, when a light changes). Hope it won't be too hard....

Y.

##### Share on other sites
You're probably going to want to use a combination of static and dynamic lightmaps. There's no way you're going to be able to calculate all the lightmaps every frame. You might as well leave the other 99% alone.

Also might want to take a look into multitexure support. That way the videocard mixes the lightmaps.

##### Share on other sites
I know little about the theory of lightmaps. I've been playing with the source code of Quake, and seen that the static lightmaps are not calculated in the engine but with an external tool. I'm searching either the code of a such tool, or the theory (links?docs?) to calculate static lightmaps.
Thanks for any help,

Ysaneya

1. 1
2. 2
3. 3
Rutin
18
4. 4
5. 5
JoeJ
13

• 9
• 14
• 10
• 25
• 9
• ### Forum Statistics

• Total Topics
632645
• Total Posts
3007626
• ### Who's Online (See full list)

There are no registered users currently online

×