Hello Mab,

I am currently using PyOpenGL on a Windows 7 x64 machine and I haven't run into these issues. I am not using GLUT though, I create my OpenGL context using Qt.

Those "NoneType is not callable" errors lead me to believe that for some reason the OpenGL functions are not being linked into your program. This should happen automagically when you create an OpenGL context (at least this is the case for me using Qt on a NVIDIA driver).

Have you tried using a different mechanism to create your window? pygame is really simple, just call pygame.display.set_mode((w,h), pygame.OPENGL | pygame.DOUBLEBUF).

Alejandro.-

On Tue, Jul 5, 2011 at 10:49 PM, Belzile Marc-André <mabxsi@hotmail.com> wrote:
Hi,

anyone knows what's going on ? I supsect my pyopengl installation is not adequate. So here are the instructions I used to install pyopengl 3.0.1:

python.exe setup.py build
python.exe setup.py install

However this doesn't seem to do the job:

C:\Users\mab\Downloads\PyOpenGL-3.0.1 (1)\PyOpenGL-3.0.1\tests>python test_glutinit.py
Traceback (most recent call last):
  File "test_glutinit.py", line 18, in <module>
    glutInit([])
  File "c:\Python27\lib\site-packages\OpenGL\GLUT\special.py", line 323, in glutInit
    _base_glutInit( ctypes.byref(count), holder )
TypeError: 'NoneType' object is not callable

I'm sure I'm missing something obvious. Is there any more magic involved for installing pyopengl on win64 ?

I was able to install the win64 package available here http://www.lfd.uci.edu/~gohlke/pythonlibs/ but I still get the error for GL_MAX_TEXTURE_BUFFER_SIZE_ARB .

thanks for your help

-mab



From: mabxsi@hotmail.com
To: asegovi@gmail.com
Date: Tue, 5 Jul 2011 09:55:04 -0400
Subject: Re: [PyOpenGL-Users] error using GL_MAX_TEXTURE_BUFFER_SIZE_ARB

Hi,

yes I did. Here's the full code I'm using:

"""Log opengl info for this machine"""

from OpenGL.GL import *
from OpenGL.GLUT import *
from OpenGL.GL.ARB.texture_buffer_object import *


def InitGL(Width, Height):
glClearColor(0.0, 0.0, 0.0, 0.0)
glMatrixMode(GL_PROJECTION)
glLoadIdentity()
glMatrixMode(GL_MODELVIEW)
 
 
def log_opengl_info():
  ver = glGetString( GL_VERSION )
  ven = glGetString( GL_VENDOR )
  ren = glGetString( GL_RENDERER )
 
  print 'vendor: %s\nopenl version: %s\nrenderer: %s\nsupported extensions:' % (ven,ver,ren)
  #print '\n'.join( glGetString( GL_EXTENSIONS ).split(' ') )

print 'OpenGL.GL.ARB.texture_buffer_object %d\n' % glInitTextureBufferObjectARB()
print glGetIntegerv( GL_MAX_TEXTURE_BUFFER_SIZE_ARB )

def render():
glClear(GL_COLOR_BUFFER_BIT)
glLoadIdentity()
log_opengl_info()

window = None
def main():
global window
glutInit(sys.argv)
glutInitDisplayMode(GLUT_RGBA)

glutInitWindowSize(10, 10)

glutInitWindowPosition(0, 0)

window = glutCreateWindow('log opengl info')

glutDisplayFunc(render)

# Initialize our window. 
InitGL(10, 10)

# Start Event Processing Engine    
glutMainLoop()


if __name__ == "__main__":
    main()



From: asegovi@gmail.com
Date: Tue, 5 Jul 2011 10:14:14 -0300
Subject: Re: [PyOpenGL-Users] error using GL_MAX_TEXTURE_BUFFER_SIZE_ARB
To: mabxsi@hotmail.com
CC: pyopengl-users@lists.sourceforge.net

Hi Mab,

Hi,

using GL_MAX_TEXTURE_BUFFER_SIZE_ARB ends up with an error
 

Have you tried creating a window with an OpenGL context before trying to call glGetIntegerv?

Alejandro.-
 
--  


------------------------------------------------------------------------------ All of the data generated in your IT infrastructure is seriously valuable. Why? It contains a definitive record of application performance, security threats, fraudulent activity, and more. Splunk takes this data and makes sense of it. IT sense. And common sense. http://p.sf.net/sfu/splunk-d2d-c2
_______________________________________________ PyOpenGL Homepage http://pyopengl.sourceforge.net _______________________________________________ PyOpenGL-Users mailing list PyOpenGL-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/pyopengl-users



--
http://alejandrosegovia.net