Other problem with brush-based terrain: the maximum resolution q3map2 can take is 64x64 brushes (at 128x128, it already gives up when compiling). The result looks like this (ignores the broken texturing, it was a quick attempt at demonstrating it without aligning textures):
Lots of seams... as you know, the solution is phong shading. For brush based terrain, you do it by putting q3map_nonplanar in the shader, or -np 179 on the command line, and by adding -shade to the light stage flags.
Result:
Much better... but not good yet. You still see some (not many, admittedly) seams in the lightmaps... why are they there? Shouldn't q3map_nonplanar merge the whole terrain to a single surface, and make lighting seamless?
Nope. Lightmaps are limited in size, and thus q3map2 doesn't merge as much as it would have to. With r_showsurfaces, you see what happens:
It built a jigsaw out of the terrain... and where tiles meet, you still have the usual lighting seams.
How to fix this? Simple - use a model. Preferably, for vis reasons, build it out of multiple meshes so it doesn't need to be completely drawn all the time. In a modeling app, YOU have control over the normals, and can make the lighting work out fine and seamless... and STILL put multiple lightmaps on the model. In workflow, I'd recommend first making one big surface, and later using some clipping feature (I bet most modeling apps have such a thing) to cut it in smaller parts. A good modeling app will take care of the normals at the split points to match.
1. Open Notepad
2. Paste: ÿþMSMSMS
3. Save
4. Open the file in Notepad again
You can vary the number of "MS", so you can clearly see it's MS which is causing it.