you could put them 4x4 into a 1024x1024 texture and sample it multiple times per pass
Yep, that's the way to go if you want to get the best performance.
Okay, it can't harm to learn a bit about shader programming anyway, so I will try and see if this gives me the performance boost I am aiming for.
Although that introduces a slight complication - the textures within the atlas will need to be specially prepared to avoid typical problems associated with texture atlases
I've ran into this problem when using texture atlases with direct OpenGL programming already (though I stopped working on that before quite solving it). I hope that extending each textures to it's edges (i.e. a direct copy of each outer pixel) might solve it. That's my first idea at least..
Trosan, what graphics card do you have?
Mobility Radeon 9600
Supports Shader v2, but was the first (notebook) card which did (I think it's the laptop version of Radeon 9800 IIRC).
Your card is definitely better than mine.
Well, you'll have to decide what you want. For one thing, you could limit the amount of textures to use to 6-12.
Hum... I think I need 20, perhaps 18 (two could be left out easily).
You could also multiply them by a colour map so you get a bit of variation by colouring the terrain on top of a few base textures.
Sounds interesting, I guess it's one more pass, though? (such as the lighting one)
Or you'll just need to target higher graphics hardware
Hm.. I will probably not release anything within the next year, so this might be an option. Not a preferred one, though.
Just out of curiosity: What size are the textures you used?
128x128 atm.