Oops forgot to CC the list.

On Mon, Oct 18, 2010 at 11:03 AM, Mike C. Fletcher <mcfletch@vrplumber.com> wrote:
On 10-10-14 09:41 AM, Alejandro Segovia wrote:
> Hello List,
> I'm using PyOpenGL for conducting a Computer Graphics course at the
> University where I work.
> One of my students is working on an Intel-based card (on W/Vista) that
> reports OpenGL version 1.5, however, when trying to create VBO's, he
> was getting an error from deep inside the wrapper. I figured this was
> probably because of the function wrapper existing, but not being
> actually linked to anything, which would imply VBO's are not supported
> by his driver.
Is the error a "null function error"?  Or something more exotic?  Null
function error is basically just PyOpenGL saying "that doesn't exist"
when you go to call the function.  If the function evaluates to true
(i.e. bool( fun ) == True), then we may have an error in the wrappers.
> The solution was to use the vertex_buffer_object ARB extension, which
> had to be imported using something akin to:
> >>from OpenGL.raw.GL.ARB.vertex_buffer_object import *
Normally you wouldn't use the raw version, but rather the
OpenGL.GL.ARB.vertex_buffer_object version.  VBOs, in particular, are
actually provided as a wrapper (OpenGL.arrays.vbo), but this is the
general pattern of use.
> I was wondering, is this the recommended way to import and use
> extensions in PyOpenGL? and, is it possible that although the Intel
> driver reports OpenGL version 1.5, it does not provide VBO's? I
> thought VBO's were promoted to Core in version 1.5.
I seem to recall them being core in 1.5, yes.

It's been a while since I opened this topic, but since the troublesome computer isn't actually mine, I couldn't make all the tests I would've liked to.

Mike, apparently bool(glBufferData) returns False, even though the Intel driver reports OpenGL version 1.5. My guess is that driver is actually not OpenGL 1.5 compliant even though it says it is.

Thanks for the help,

Alejandro Segovia Azapian
Director, Algorithmia: Visualization & Acceleration