tcobbs
01-24-2004, 03:37 PM
My app displays static geometry. I decided to add VBO support to see if it would effect performance. Up until now, I was was just using display lists and standard vertex arrays.
On my ATI 9700 Pro with Catalyst 4.1 drivers, it crashes when it gets to the glDrawElements() call if the glDrawElements() call itself is in a display list. As long as I don't use display lists at all, my geometry draws as expected via VBO, so I believe my VBO code is correct. (It draws faster with display lists than VBO, but since my model tree walk isn't optimized at all at the moment, I'm not particularly surprised.)
Looking carefully at the VBO spec, I was under the impression that a call to glDrawElements() inside a display list with a bound VBO should work fine. Is this not the case? Note that the spec does talk about the VBO interaction with display lists, and states that the actual gl*Pointer() calls will be exectuted immediately. However, these aren't inside my display list, just the glDrawElements().
On my ATI 9700 Pro with Catalyst 4.1 drivers, it crashes when it gets to the glDrawElements() call if the glDrawElements() call itself is in a display list. As long as I don't use display lists at all, my geometry draws as expected via VBO, so I believe my VBO code is correct. (It draws faster with display lists than VBO, but since my model tree walk isn't optimized at all at the moment, I'm not particularly surprised.)
Looking carefully at the VBO spec, I was under the impression that a call to glDrawElements() inside a display list with a bound VBO should work fine. Is this not the case? Note that the spec does talk about the VBO interaction with display lists, and states that the actual gl*Pointer() calls will be exectuted immediately. However, these aren't inside my display list, just the glDrawElements().