Not enough video memory for texture

Started by
5 comments, last by PolarWolf 4 years, 8 months ago

I am developing an opengl program on windows 7,what I want to do is sampling from a 16384*16384 rgb texture,then render to another 16384*16384 rgb texture,so for the 2 textures 1536M memory is needed, but my video card has only 1024M memory,every time I executed the program,an out of memory error occured,but for one time or two,it executed succesfully,so I wonder if it's possible to allocate more memory than the video card's capacity,and is there any way to make the program execute succesfully without changing video card? like use symtem memory instead,I don't mind if it's slow,I can wait minutes if only it can do the work.

Advertisement

Afaik OpenGL can swap data in an out between system and video memory.

What's the maximum texture size your graphics card supports ?

Does it support compression ?

Is there a chance that that you can split the texture into tiles ?

The value get by GL_MAX_TEXTURE_SIZE is 16384,and I can load and display 16384*16384 texture.  split isn't viable,I have to sample from random position and render to random position.Compression maybe help,I will check this, if it can reduce from 1500M to under 1024M,by the way,is it possible to render to compressed texture?

The docu says:

"Despite being color formats, compressed images are not color-renderable, for obvious reasons. Therefore, attaching a compressed image to a framebuffer object will cause that FBO to be incomplete and thus unusable. For similar reasons, no compressed formats can be used as the internal format of renderbuffers."

------

Is transform feedback an option ?

Thanks for the info,I am trying to compress the sampled texture,though I am not sure it will compress enough,but definately will help.

I changed the sampled texture from GL_RGB8 to GL_COMPRESSED_RGB,then it rendered succesfully,I have struggled more than 3 hours,really appriciate your help,thanks.

This topic is closed to new replies.

Advertisement