Texture size limitations
Blitz3D Forums/Blitz3D Programming/Texture size limitations
| ||
Does anyone have any good links or information about what the texture size limitations are on a large range of graphics cards? |
| ||
Larger textures = uses more of VRAM. Think of that a texture uses just as much VRAM as the filesize would've been if saved as BMP. That should be almost the size it uses in the VRAM. |
| ||
I think some of the older ones have a 256x256 limit, while the newer ones are limited just by the texture memory you have. |
| ||
Vodoo2 and 3's had a 256 limit I think the tnt2 had a 512 limit I use to limit myself to 256 textures but 512 seems to be best for single surface skinned objects. I would think they would be OK for level design also without putting too much on a card. 32 meg sounds like a good low end to me |
| ||
IMO you should not use bigger than 1k textures even for modern harware (GeForce2 ->) although latest offerings do support 2K or even 4K textures. |
| ||
You mean 1000 individual textures, rather than a size thing or a memory thing? If so, that's the first I've heard - a good thing to know... |
| ||
You mean 1000 individual textures, rather than a size thing or a memory thing? If so, that's the first I've heard - a good thing to know... If you mean me, I meant to mean the texture size as in pixels (1K*1K) per one texture, not how many (total) you can use. |
| ||
Yep, 1024x1024 textures can absoluety kill your game. Whereas 512x512 textures are fine (depend on hardware). |
| ||
4096x4096 is a limit on some new Geforce FX cards tho I dont think there are any games that need textures anywhere near that size! |
| ||
My GeForce 3 Ti200 supports up to 2048x2048... The larger the values the better. These values don't limit the texture size, they tend to limit the size of any images in vram. Depending on the card of course. Bigger limits = less cutting images in half for my game =] |
| ||
What about running your game on others hardware :) |
| ||
Yep, 1024x1024 textures can absoluety kill your game. Really? I used a 1024x1024 texture for the court in Anime Tennis Babes and it works pretty well even with onboard Sis and Intel chipsets. |
| ||
I found with Tattoo it will be happy up until 1024 x 1024 on most machines. Go above that and it can kill your frame rate if you have to copyrect anything. |
| ||
What about running your game on others hardware :) Obviously a form of autodetection is needed... Usually something like a (size of power of two) < (current screenres size) will do it... hmm. |
| ||
1024x1024 textures can absoluety kill your game. Whereas 512x512 textures are fine It's not the size, it's how you use it... :P 4 512*512 sized textures will be many times slower than one 1024*1024 - IF you HW supports 1K textures, AND if you can share texturemap space (ie compile bits to bigger maps, like faces, clothes etc instead of keeping them separate texture (surface)) |
| ||
"I used a 1024x1024 texture for the court in Anime Tennis Babes" One big texture isn't a big deal, especially if that one texture is always onscreen (and thus not swapped into/out of memory.) But multiple huge textures can be really inefficient. As Mustang says, it's how you use it. Note that sharing a lot of texture map space gets inefficient if it interferes with culling. That is, even if you are only rendering one tiny part of the texture the entire texture is loaded into memory. |
| ||
Note that sharing a lot of texture map space gets inefficient if it interferes with culling. That is, even if you are only rendering one tiny part of the texture the entire texture is loaded into memory. Exactly - you should group stuff to a texturemap "intelligently", meaning that group only stuff that's likely to be drawn together, like spesific character OR vehicle texturemaps... but there is not point to group character AND vehicle texturemap together, because they might not be visible at the same time... and they are separate objects anyway menaing separate surfaces. Of course vehicles CAN have characters as drivers, but that's spliting hairs really :) |
| ||
4 512*512 sized textures will be many times slower than one 1024*1024 Actually, that entirely depends on the graphics card.I've done several tests, and on older cards (Geforce3 and older) 16 256*256 textures are faster than a single 1024*1024 texture...At least for what I was doing :) But that included a bunch of realtime manipulation of the textures. |
| ||
Hm, interesting. Cletus uses a 1024x2048 texture to store everything for its single-surface system. Seems to run okay both on my geforce2 and my mum's onboard card. I do have the option to run it using a bunch of 256x256 textures instead though, just in case (although doing so necessitates disabling alpha transparency) |
| ||
I have sixty five seperate textures on my demo level( so far), each at 128x128. at least this way as I am texturing square by square I get even texture resolution all over and it still looks fairly sharp. pain in the bum with all those multi sub object textures, but it works fine. |
| ||
what if I save the texture as a jpeg, does it take up less memory than a bitmap? |
| ||
Only on your HD, once loaded they take up the same space uncompressed. DXTC would save space I think :) |