View Full Version : Texture Memory

10 October 2003, 12:47 PM
Assume I have a plane with a 256x256 sized texture on it.

Now, I duplicate the plane, but use a 256x128 texture on it, but tile it two fold to make up the rez.

My question is, do both systems occupy the same amount of texture memory? Im tempted to think the 2n'd situation has some savings, but will cost more in speed?

Ash Henstock
10 October 2003, 05:21 PM
The second option will use less video memory.

When you request for a polygon to be drawn it will first be transformed by the current modelling and perspective matrices and then be drawn to the framebuffer. The framebuffer resides in video memory and aswell as storing colour information at each fragment (each 'pixel' in the framebuffer is referred to as a fragment) it stores information such as depth buffer and stencil buffer values. The relevence of this to your question is that no matter what area the texture will be mapped to in the colour buffer the size of the texture used in the mapping does not effect the framebuffer size (this is dependent on the screen resolution and buffer bitdepths). As the texel data is stored as a regular array in video memory, the smaller texture should use less memory.

As far as the impact on rendering performance I would say it would probably result in a speed up, although it's really down to a number of implementation specific details. The fact is though that the smaller texture has a smaller memory footprint and so can be copied into memory faster (important especially if you are doing a lot of texture swapping) and is more likely to fit into any cache your board might have.

Hope that makes sense :)

10 October 2003, 05:28 PM
Ok I can relate to that. I just figured that since a tile needs to be tiled about.. it required more gpu cycles for extra calculations and may slow things down but I guess other speed increses make up for it.

11 November 2003, 03:16 PM
You may want to add some error checking and a spare 256x256 just in case the program is run on a machine with a graphics card or chip that can not handle irregular dimensioned sized textures.

11 November 2003, 10:40 PM
in such cases you might consider putting 2 textures in the same file.
But those textures will be able to be seamless only in one direction.

CGTalk Moderation
01 January 2006, 01:00 PM
This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.