Jump to content

  • Log In with Google      Sign In   
  • Create Account

Textures question


Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

  • You cannot reply to this topic
2 replies to this topic

#1 Crypthor   Members   -  Reputation: 122

Like
Likes
Like

Posted 18 July 2001 - 10:47 PM

Hi, ppls, When i''m loading textures, i''m processing next speps: 1. Load file tga, bmp, pcx,... 2. glBindTexture( ..., tID ); 3. some functions with glTexParameteri(.... ); 4. [gluBuild2dMipmaps] 5. glTexImage2D(....) now, after this code where will be my texture, in video card memory ?? i''m right ? or ? How to delete texture from memory ?? and how i can know about free memory in my videocard ? thank you !

Sponsor:

#2 mittens   Moderators   -  Reputation: 1315

Like
Likes
Like

Posted 19 July 2001 - 04:45 PM

glDeleteTextures(1, tID);

------------------------------
Trent (ShiningKnight)
E-mail me
OpenGL Game Programming Tutorials

#3 Obelix   Members   -  Reputation: 122

Like
Likes
Like

Posted 20 July 2001 - 08:31 AM

Yes, your texture is in the cards memory and you can safely return the memory for the image. I do not know of any method to find out how much memory that is left on the card. You can use something like this from the red book

Example 9-2 : Querying Texture Resources with a Texture Proxy
GLint format;
glTexImage2D(GL_PROXY_TEXTURE_2D, 0, GL_RGBA8,
64, 64, 0, GL_RGBA, GL_UNSIGNED_BYTE, NULL);
glGetTexLevelParameteriv(GL_PROXY_TEXTURE_2D, 0,
GL_TEXTURE_INTERNAL_FORMAT, &format);

but
"Note: There is one major limitation about texture proxies: The texture proxy tells you if there is space for your texture,
but only if all texture resources are available (in other words, if it''s the only texture in town). If other textures are using
resources, then the texture proxy query may respond affirmatively, but there may not be enough space to make your
texture resident (that is, part of a possibly high-performance working set of textures). (See "Texture Objects" for more
information about managing resident textures.)"

Anyway, the question is difficult since other (slower) memory is used if not all the textures can be on the card. Making assumptions about how the performance will be affected is certainly not easy. Particulary if your forced to guess about systems you do not have access to or perhaps has not even been built yet.

The only reasonable solution is to making the texture detail and other stuff something that the user can set. This is not difficult to implement and your application will be easier to debug. Remember that drivers are far from perfect.




Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.



PARTNERS