Ysaneya
12-18-2007, 08:45 AM
I'm trying to do terrain texturing by using a 3D texture, actually a stack of 2D textures that are 1024x1024 each.
It works fine on Geforce 8 but on my Geforce 7800 with the latest driver (163.75 if I remember), it fails. For a simple reason: when you query the max 3D texture dimension, it returns 512x512x512.
If I try to submit a 1024x1024x4 3D texture, I get no GL error but the triangles textured with this 3D texture don't appear at all (like if they were invisible) and my application crashes after a couple of seconds. I'm of course not exceeding the max amount of video memory.
ATI cards report a max of 4096^3.
I'm wondering why there is such a restriction of 512^3 on Geforce 7 or under. It almost sounds like the logic of NVidia was (wrongly) that 512^3 exceeds the amount of available video memory on Geforce 7 cards, so there's no point in upping the limit, while in reality it should be possible to use 3D textures with a very low 3rd dimension and that easily fit in video memory..
Even worse, I'm pretty sure it's a driver and not a hardware problem, as I believe Direct3D doesn't suffer from the same limitation.
Is there a logic here ?
Y.
It works fine on Geforce 8 but on my Geforce 7800 with the latest driver (163.75 if I remember), it fails. For a simple reason: when you query the max 3D texture dimension, it returns 512x512x512.
If I try to submit a 1024x1024x4 3D texture, I get no GL error but the triangles textured with this 3D texture don't appear at all (like if they were invisible) and my application crashes after a couple of seconds. I'm of course not exceeding the max amount of video memory.
ATI cards report a max of 4096^3.
I'm wondering why there is such a restriction of 512^3 on Geforce 7 or under. It almost sounds like the logic of NVidia was (wrongly) that 512^3 exceeds the amount of available video memory on Geforce 7 cards, so there's no point in upping the limit, while in reality it should be possible to use 3D textures with a very low 3rd dimension and that easily fit in video memory..
Even worse, I'm pretty sure it's a driver and not a hardware problem, as I believe Direct3D doesn't suffer from the same limitation.
Is there a logic here ?
Y.