<div dir="ltr"><div>I am trying to do openGL on a virtual machine, which only supports OpenGL 2.1<br>I've checked that my directX version is 11<br><br>Most of of the PyQt examples don’t work because (I think) our openGL is only 2.1 on the virtual machines. <br>
However, openGLWindow.py works fine, and spits out no errors.<br><br>The other examples run but spits out lots of errors, and I can’t see anything in the windows. <br></div>Here is the output of grabber.py:<br><div><br>C:\Python33\python.exe C:/Python33/Lib/site-packages/PyQt5/examples/opengl/grabber.py<br>
Traceback (most recent call last):<br>  File "C:/Python33/Lib/site-packages/PyQt5/examples/opengl/grabber.py", line 114, in initializeGL<br>    glLightfv(GL_LIGHT0, GL_POSITION, lightPos)<br>  File "latebind.pyx", line 32, in OpenGL_accelerate.latebind.LateBind.__call__ (c:\Users\mcfletch\OpenGL-dev\OpenGL-ctypes\OpenGL_accelerate\src\latebind.c:989)<br>
  File "wrapper.pyx", line 318, in OpenGL_accelerate.wrapper.Wrapper.__call__ (c:\Users\mcfletch\OpenGL-dev\OpenGL-ctypes\OpenGL_accelerate\src\wrapper.c:6561)<br>  File "wrapper.pyx", line 311, in OpenGL_accelerate.wrapper.Wrapper.__call__ (c:\Users\mcfletch\OpenGL-dev\OpenGL-ctypes\OpenGL_accelerate\src\wrapper.c:6439)<br>
  File "C:\Python33\lib\site-packages\OpenGL\platform\baseplatform.py", line 402, in __call__<br>    return self( *args, **named )<br>  File "errorchecker.pyx", line 53, in OpenGL_accelerate.errorchecker._ErrorChecker.glCheckError (c:\Users\mcfletch\OpenGL-dev\OpenGL-ctypes\OpenGL_accelerate\src\errorchecker.c:1218)<br>
OpenGL.error.GLError: GLError(<br>    err = 1282,<br>    description = b'invalid operation',<br>    baseOperation = glLightfv,<br>    pyArgs = (<br>        GL_LIGHT0,<br>        GL_POSITION,<br>        <OpenGL.raw.GL._types.c_float_Array_4 object at 0x03227800>,<br>
    ),<br>    cArgs = (<br>        GL_LIGHT0,<br>        GL_POSITION,<br>        <OpenGL.raw.GL._types.c_float_Array_4 object at 0x03227800>,<br>    ),<br>    cArguments = (<br>        GL_LIGHT0,<br>        GL_POSITION,<br>
        <OpenGL.raw.GL._types.c_float_Array_4 object at 0x03227800>,<br>    )<br>)<br><br>2dpainting.py, helloGL.py and overpainting.py do the same thing as grabber.py<br><br>The main difference with openGLWindow compared to the other examples is that it uses Qt’s initializeOpenGLFunctions() to get access to openGL API of the correct version. This seems to be safer across multiple platforms than using OpenGL Apis directly, as the other examples do.<br>
<br>       if needsInitialize:<br>            self.m_gl = self.m_context.versionFunctions()<br>            self.m_gl.initializeOpenGLFunctions()<br><br></div><div>Do the other examples even check to see what version of openGL is running? <br>
</div><div><br>Is there any reason why QOpenGLFunctions is not available from PyQt? <br><br><br></div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Sun, Mar 2, 2014 at 4:41 AM, Matthew Ngaha <span dir="ltr"><<a href="mailto:chigga101@gmail.com" target="_blank">chigga101@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hey David. I've updated and re-updated the drivers to no avail. But<br>
what really puzzles me is my card is Intel (R) HD graphics. My mum's<br>
PC uses an earlier version of the same driver and Qt5 programs run<br>
fine. But mine a more recent version doesn't work. I now realise it's<br>
not a Qt problem, maybe I can contact Intel's support desk.<br>
<br>
Thanks for heloing.<br>
<div class="HOEnZb"><div class="h5">_______________________________________________<br>
PyQt mailing list    <a href="mailto:PyQt@riverbankcomputing.com">PyQt@riverbankcomputing.com</a><br>
<a href="http://www.riverbankcomputing.com/mailman/listinfo/pyqt" target="_blank">http://www.riverbankcomputing.com/mailman/listinfo/pyqt</a><br>
</div></div></blockquote></div><br></div>