Terrain - Texture Coordinates / Shadow Map

I used multitexturing to provide a fairly standard terrain where height / slope related texturing can be applied.

I wanted to cater for those without any multitexturing support and to provide a minimal rendered terrain - just a single texture plus a shadowmap.

The multitextured version uses vertex arrays but for single textured, I decided to use a display list.

The problem … how do I apply the shadow map … the display list texture coordinates correspond to the actual grid whereas the shadow map must be applied to the whole terrain.

At the moment, I came up with two terrain lists each with different texture coordinates.



To be honest, I doubt you’ll find many people who don’t have multitexturing available, but since it sounds like you’re having a linear mapping, how about just using the texture matrix? I’m pretty sure that’s been in before multitexturing arrived.

Thanks … like so much in life it’s only easy when you know ! Yes, I just rescaled the texture and it looks very nice … still puzzled as to why the shadow map orientation had been flipped over … it was OK using multitexturing … anyway flipped it over whilst rescaling it !

I am always wary as to what the ‘base’ level of graphics card actually is and I know of a few friends whose systems do not support multitexturing … maybe they’re in the minority !

(Is there any reference guide that describes such design strategies for what OpenGL extensions might not be common ?)

Thanks again,


Systems who do not support multitexturing are few and far between, we are talking basically everything since the voodoo3 which was introduced in early 1999.
Here is a list of cards that support it

The base level today would probably be something like a geforce 6800, but you have to choose yourself at what level are you going to work from, because there will always be people who cant run it.

I’m using an EeePC (7", using the default Linux OS and using the default MesaGL version) as a development environment and it certainly supports multitexturing and texture combiners.
Of course it does not offer shaders, but the fixed function stuff seems to be fine.
It reports GL 1.3 (multitexturing was introduced as standard in 1.2), and it’s far from the most recent Intel chipset.
For casual gamers something like this is probably quite common.

Your friends certainly seem to be in the minority. Maybe they need to upgrade their drivers?