Hey, I have a texture loaded with glTextImage2D.
I want to get the texture’s size after it was loaded to the VRAM, what do I need to do?
My internal format is RGBA and the texture’s format varies.
Hey, I have a texture loaded with glTextImage2D. I want to get the texture’s
Share
This might be helpful to you and you can probably infer the actual memory usage from it. However, I believe this still is rather an approximation:
http://www.geeks3d.com/20100531/programming-tips-how-to-know-the-graphics-memory-size-and-usage-in-opengl/
(query the total memory usage of OpenGL using NVIDIA or ATI specific extensions)
Also note that from my experience, approximating the memory usage by rough calculation was usually sufficient. Textures “should” be stored either 1,2 or 4 components without any significant overhead. Therefore for a WxH RGBA texture, calculate W*H*4. If you store float textures (i.e. GL_RGBA32F), calculate W*H*4*4. For Mip-Maps, add (1/3) additional memory consumption. Be aware however, that – at least to my knowledge – texture memory can also fragment, possibly leaving you with less available memory as estimated.