Re: glGenVertexArrays producing 'invalid enumerant' error.
Gordon Wrigley <[email protected]>
| Newsgroups | gmane.comp.python.opengl.user |
|---|---|
| Message-ID | <CAD-wiX11aUP0kPBcPMayhpsuzebJ6s4NBHc_rseSfB4CmgdEiQ@mail.gmail.com> |
On Tue, Oct 18, 2011 at 4:56 AM, Mike C. Fletcher <[email protected]>wrote: > On 11-10-12 03:34 AM, tolomea wrote: > > Version stuff: > > Python 2.7.1+ (r271:86832, Apr 11 2011, 18:05:24) > > [GCC 4.5.2] on linux2 > > Type "help", "copyright", "credits" or "license" for more information. > > import OpenGL > > OpenGL.__version__ > > '3.0.2a1' > > I'm using FORWARD_COMPATIBLE_ONLY, context version 3.3 and > GLUT_CORE_PROFILE. > > > > > > I'm porting a working (same machine and environment etc) C program to > Python, > > and the glGenVertexArrays function is giving me grief. > > > > The pythonic form: > > vao = glGenVertexArrays(1) > > produces "TypeError: this function takes at least 2 arguments" which I > presume > > means it hasn't been wrapped yet. > Yes. > > I've no idea what could be causing that and googling hasn't turned up > anything > > useful. > > > > Does anyone have any suggestions as to where to look? > > Are there any known working examples of using vertex array objects and > pyopengl > > that I could cross check against? > My go-to guess with almost any Python-differs-from-C problems during > init is to look at the error-checking code. PyOpenGL's biggest > difference from C code is that it runs error checking after every call. > I'm guessing either your context isn't quite ready-to-go and you're > getting an error from the error checking, or that the line before had an > error and the error checking picked it up a line late. > > import OpenGL > OpenGL.USE_ACCELERATE = False > OpenGL.ERROR_CHECKING = False > > at the top of your script should let you quickly determine a) where the > problem is b) whether the problem is with error checking. > > If I turn error checking off it dies much earlier on a glCreateShader call with: WARNING:OpenGL.errors:Failure on glCreateShader: Traceback (most recent call last): File "/usr/local/lib/python2.7/dist-packages/OpenGL/logs.py", line 74, in __call__ return function( *args, **named ) ArgumentError: argument 3: <type 'exceptions.TypeError'>: Don't know how to convert parameter 3 Traceback (most recent call last): File "main.py", line 237, in <module> main(sys.argv) File "main.py", line 227, in main init() File "main.py", line 147, in init init_program() File "main.py", line 122, in init_program vert = gl.VertexShader("data/shaders/basic.vert") File "/mnt/drive1/home/gordon/code/spacecraft2/gl.py", line 50, in __init__ _Shader.__init__(self, fname, VERTEX_SHADER) File "/mnt/drive1/home/gordon/code/spacecraft2/gl.py", line 37, in __init__ self.shader = createShader(shader_type) File "/usr/local/lib/python2.7/dist-packages/OpenGL/platform/baseplatform.py", line 372, in __call__ return self( *args, **named ) File "/usr/local/lib/python2.7/dist-packages/OpenGL/logs.py", line 74, in __call__ return function( *args, **named ) ctypes.ArgumentError: argument 3: <type 'exceptions.TypeError'>: Don't know how to convert parameter 3 That doesn't seem like progress. With error checking on calling glGetError right before the glGenVertexArrays call returns 0. Toggling use accelerate hasn't made any noticeable difference. I don't know if it helps any but I turned on full logging and attached a dump of the output. G ------------------------------------------------------------------------------ The demand for IT networking professionals continues to grow, and the demand for specialized networking skills is growing even more rapidly. Take a complimentary Learning@Ciosco Self-Assessment and learn about Cisco certifications, training, and career opportunities. http://p.sf.net/sfu/cisco-dev2dev _______________________________________________ PyOpenGL Homepage http://pyopengl.sourceforge.net _______________________________________________ PyOpenGL-Users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/pyopengl-users
log
(application/octet-stream, 21.3 KB) - not displayed