Hello Guest

[SOLVED] Removing VBOs causes Display.update() to throw Out of memory (1285)

  • 1 Replies
  • 6579 Views
Since the move to LWJGL I get memory exceptions sometimes which crashes the whole application. I've been reading around a bit on the web and found that it can be because of several reasons. Three I found was:
Textures not at a power of two (I made sure mine were)
Not newest gfx driver (I have the newest I can use)
Not rewinding buffers before adding them to the VBO (Mine are rewinded)

When I just let the game stand still I don't run into the problem but once I start creating and removing VBOs it crashes.

I came to the conclusion that it doesn't occur if I don't run the following line but I kind of need to run that one...:
ARBBufferObject.glDeleteBuffersARB(Buffers);

I have three "containers" that generate, populate and delete VBOs. If I only delete VBO's in one of them it works but if I delete VBOs in two or three of them it causes the above error.

Any known issue with deleting buffers?
« Last Edit: June 01, 2009, 16:44:50 by Mickelukas »

Adding getGLError here and there made it clear that it happens after I call glDrawArrays.

I tried with glDrawElements as well but it gave the same error. I also changed a float array I still had since the JOGL time into a FloatBuffer but it didn't help

Any ideas?

[EDIT]Ah, if I call glBindBufferARB with an buffer id that doesn't exist I get the same error. Seeing as I'm not getting it when I don't delete the buffers I somewhere delete a buffer that I try to use in the display loop.

[EDIT2] I had also mixed ARBVertexBufferObject calls with ARBBufferObject calls. Making it all VBO solved the last issues.

I hope this helps anyone that runs into the same issue.
« Last Edit: June 01, 2009, 16:44:33 by Mickelukas »