Terrain texturing, any nice,fast,good ideas ?

hello,
well i got the terrain tiles texturing working, well ofcoz only with one single texture for now, looks ugly the change of textures (eg. dirt to grass)
well this is what i would like to get some examples or doc about it… how to do the nice terrain texturing, blending textures? multitexturing? how? anyone?

http://www.tashco.com/terraintexturing.htm http://www.vterrain.org/

These links should head you in the right direction

yes, i’ve looked into those url’s…
well since im doing it under opengl i guess the tahsco thingy wont work that nicely… to calculate the texture in realtime and uploading to opengl… thats kinda procedural textures i guess no?
if anyone has an idea of how to do this way in opengl please let me know or any other ways to do the job…
thanks in advance

This site has example code showing how to blend between two textures using the texture environment combine extension.

[This message has been edited by Don’t Disturb (edited 11-05-2000).]

How about unique texturing? I mean have a relatively low-rex texture that contains the actual colors of your landscape. Maybe the texture could be 2:1 in resolution relative to your heightmap. Chop it up into little pieces too, so that older cards can handle it.

Then you use the multitexture extension to blend a detail map, that is a veryvery high-res texture with an average luminosity of 127, then you tile this across the entire landscape, blend it using a regular 50/50 blend.

You can have another, slightly lower-res (maybe the same size, only enlarged) detail-texture, and you blend this in also, but you rotate this to an arbitrary angle (like 32.1 degrees or something) so that it doesn’t produce patterns with the first detail map. This will help immensly too break up repetitions in the first detail-map.

Anyway. Just a suggestion. Multitexturing is very good to break up repeatition.

Vic,

I’ve been designing a Terrain Rendering system for awhile now, and recently added the texturing portion.

I’m using a Texture LOD engine to which makes the best use of the texture memory on the card versus the texel density onscreen. A quad-tree hierarchy of textures is kept in memory or swapped from disk to bring unique textures to every point on the landscape.

The highest level quad is a texture across the entire landscape. This quad is broken into four equal quads, which each have a texture the same size as the original, but covering half the area. Further children repeat the process until you either run out of memory, or run out of texutre LODs.

Thus, all my textures are 256x256, and I specify how many to keep in memory at once, and also how many to keep on the graphics card. Then I swap textures from main memory to the graphics card at a constant rate (up to 4 per frame). When I go to draw a patch of landscape, I choose the highest detail texture available for that patch.

Overall, I can achive excellent texel density on a large landscape with a fixed amount of the card’s memory. The algorithm swaps the most important textures into memory before drawing the frame.

This method is compatible with both multitexturing, and procedural textures. So if you have artist-created texture, it can be swapped from disk. If you have procedural textures, the ‘swapping’ really just calls the texture generator. You can take a look at the screenshots on my site.

My Terrain site: http://www.geocities.com/gone2rave/terrain.htm

There is also an excellent group working on terrain rendering: http://www.vterrain.org
They maintain great links and notes on the subject.

–Bryan
bryan.turner@pobox.com