Aperion
04-10-2007 20:48:04
Sooo I'm very purplexed about an error I'm getting:
After some debugging I narrowed the problem down the the following function:
in particular it dies on the self.ogreRoot.renderOneFrame() line. The application this is for has multiple renderwindows, one for each view type. This function notifies each window of a render update then renders a frame, then notifies them all a frame was rendered. This function is called from an event timer (ala wxPython).
I'm having a very hard time finding information out on this error, the only referance I've been able to find has either been on the nvidia forums or on the wine bug list. So I'm kind of looking for advise on what to check, I am new to ogre so something required for linux may have been missed since development was done on windows as python-ogre wasn't available during initial development.
Thanks in advance.
The program 'python2.5' received an X Window System error.
This probably reflects a bug in the program.
The error was 'GLXBadDrawable'.
(Details: serial 3899 error_code 158 request_code 143 minor_code 5)
(Note to programmers: normally, X errors are reported asynchronously;
that is, you will receive the error a while after causing it.
To debug your program, run it with the --sync command line
option to change this behavior. You can then get a meaningful
backtrace from your debugger if you break on the gdk_x_error() function.)
it works in windows but not in linux, unfortunately I do not know if it happens using opengl in windows.After some debugging I narrowed the problem down the the following function:
def RenderAll(self):
for ogrewin in self.renderWindows.keys():
try:
ogrewin.OnFrameStarted()
except ogre.OgreException, e:
print '## EXCEPTION ##'
print str(e)
pass
try:
ogre.WindowEventUtilities().messagePump()
self.ogreRoot.renderOneFrame()
except ogre.OgreException, e:
print '## EXCEPTION ##'
print str(e)
pass
for ogrewin in self.renderWindows.keys():
try:
ogrewin.OnFrameEnded()
except:
continue
in particular it dies on the self.ogreRoot.renderOneFrame() line. The application this is for has multiple renderwindows, one for each view type. This function notifies each window of a render update then renders a frame, then notifies them all a frame was rendered. This function is called from an event timer (ala wxPython).
I'm having a very hard time finding information out on this error, the only referance I've been able to find has either been on the nvidia forums or on the wine bug list. So I'm kind of looking for advise on what to check, I am new to ogre so something required for linux may have been missed since development was done on windows as python-ogre wasn't available during initial development.
Thanks in advance.