How many textures do you use in your terrain?
Miscellaneous Forums/General Discussion/How many textures do you use in your terrain?
T.ED: 6 pre-loaded textures
A.L.E.: Use up to 6 individual textures
I've often seen this magic maximum number of 6.
My terrain engine has no limit (as far as I know) on multi-texturing - I can use 8 if I want or 100.
Anyone else using more than 6 multi-textures? I don't see a technical limit other than one that must be based on the terrain method.
If you give me the source code to your terrain engine I'll let you know how many textures I use in mine.
Here is an example of 8 textures:
I don't see a technical limit other than one that must be based on the terrain method.
If you use more textures than you've got texture pipelines, you'll be rendering the entire terrain twice.
I don't think there are technical pipelines on my 8800 GTX. It uses the new 'stream processors' - I have 128 of them.
EDIT:
Although the stream processors are completely decoupled, they share L1 and L2 cache in eight 16-shader clusters. The clusters of sixteen streaming processors also share four texture address units and eight texture filtering units, making up a total of 32 texture address units and 64 texture filtering units in GeForce 8800 GTX. These are clocked at a different speed to the stream processors. The texture address and texture filtering units are clocked at what NVIDIA determines the actual core clock to be – that’s 575MHz on GeForce 8800 GTX
Well that would be fine if you were programming in C# and XNA, using DirectX10, but Blitz3D is stuck with DX7 limitations. I can't find any information on whether that was 4 or 8 textures.
Blitz3D supports 8 textures with 2 UV sets, I believe.
The reason i put a limit in was simply that any more layers would give a MAV for 64x64 quads on a geforce4 or older. I guess in theory 12 would work with a 32x32 but the amount of geometry involved for a small area would be getting rather large. Some of my users have come up with clever ways of cheating the limit using a large baked "supertexture" reloaded as the first layer and blended with a detail map to reduce the blur.
Blitz3D supports 8 textures with 2 UV sets, I believe.
Yes, I know it supports 8, but it automatically renders multiple passes if the graphics card can't do 8 in one pass. What I don't know is how many DX7 allows in one pass. Just because the videocard can do 8 or 16, doesn't necessarily mean that DX7 could do it. DX7 is so old now that it's hard to find accurate information on what it could do unless you've got books from that period.
oic
I'm not sure I like this DX7 limitation.
I suggest "Sibly" fix that for the next update.
In the meantime, I'll soldier on to towards my 100 multi-textures - regardless of how many times it gets rendered.
There is no fix to it
If the hardware has 8 texture units it allows multitexturing with up to 8 textures, if not it uses 4 and a second mesh with another 4 textures.
If you do alpha vertex splatting thats of no importance anyway. You have more than 1 surface, so that stuff is not used at all. So that limit has quite little impact.
Using this approach allows you to use up to 8 layers on 64x64 quad terrains or logically 32 on 32x32 quad terrains (reason is the short indexing for vertices and triangles on DX7)
Look at this- just look at this:

There are 9 multi-textures.
The 9th one repeats.
I lay down one strip of it, but Blitz3D draws 2 strips next to each other.
I lay down one patch of it, but Blitz3D draws a second patch.
Check it out.
Mmm, I tried doing 10, but Blitz3D draws the 9th again.
This is most unfair.
Wait a minute - in the above picture the 9th one killed the 8th one.
It's missing from the top most picture.
I can only get 8!
This simply is most unfair. I'm stuck with the same limit as everyone else.
I spent ages on my terrain system to end up with a normal terrain system - like anybody elses.
I am not amused.
How many Texture do you want on the Terrain?
Why Dont make own Programming language engine then you have either 64 or 128 Texture on Terrain! eh?
As mentioned, Hardware does not support more than 8 textures per surface!
You have to use multiple Surfaces for that.
Does not sound like any of you even reads what other writes, so just forget that I wrote this and waste another 5 days till you readup on hardware first and implement hardware intense stuff later.
But it should work for puki :o)
Yeh, I'll fix it later.
I was using multiple surfaces for every base texture. However, I had yet to break them up - so Blitz3D will look at every texture I apply to the surfaces and pork out when I get to 8 applications per surface.
I can sort this though. However, it means I have to break the terrain down into smaller pieces than I wanted to. This has advantages and dissadvantages in the rendering process.
Right, glad I sorted that out.