A good library affects its caller's state as little as possible.  I
definitely dropped the ball in this respect.  I'll make a note to
preserve the enable flags in the next Dice3DS release.

I'm not the biggest fan of pyglet (sorry) but maybe I'll also try to
update the example code to accommodate Pyglet's OpenGL interface.
Pyglet's built-in OpenGL calls are not as robust to all the different
array types as PyOpenGL is, so the code would need to be careful to
make sure arrays are contiguous and alignments correct.

Carl Banks


On Nov 22, 5:33 am, Noyan Tokgozoglu <[EMAIL PROTECTED]> wrote:
> I solved it.
>
> Turns out his code turned off GL_TEXTURE_2D. I enabled it within my
> code after drawing the model, and everything got solved. Simple, eh?
>
> On Nov 21, 9:56 pm, Noyan Tokgozoglu <[EMAIL PROTECTED]> wrote:
>
> > Actually, now that I look closely, the textures aren't gone, they are
> > barely visible on distant objects... The loaded model looks fine
> > though...
> > Here is now it looks:
>
> >http://i32.photobucket.com/albums/d7/thepicturesofnayon/bug.png
>
> > On Nov 21, 9:44 pm, Noyan Tokgozoglu <[EMAIL PROTECTED]> wrote:
>
> > > First of all, I love pyglet, and I would never want to use pyopengl.
>
> > > However, I need to load 3ds files. And this person wrote some code to
> > > load 3ds files (http://www.aerojockey.com/software/dice3ds/index.html
> > > ), which requries pyopengl to put it into a display list easily.
>
> > > I tried to modify his code to work with pyglet, and after lots of
> > > ctypes pain and dozens of segfaults, I gave up.
>
> > > Now I just run pyglet and pyopengl together. However, if I import
> > > pyglet first, pyopengl gives an error while importing, saying:
>
> > > Traceback (most recent call last):
> > >   File "interpolator.py", line 30, in <module>
> > >     from Dice3DS.example import glmodel, gltexture
> > >   File "C:\Python25\lib\site-packages\Dice3DS\example\glmodel.py",
> > > line 11, in <
> > > module>
> > >     from Dice3DS.example import basicmodel, gltexture
> > >   File "C:\Python25\lib\site-packages\Dice3DS\example\gltexture.py",
> > > line 14, in
> > >  <module>
> > >     from OpenGL.GLU import *
> > >   File "c:\python25\lib\site-packages\PyOpenGL-3.0.0b6-py2.5.egg\OpenGL
> > > \GLU\__in
> > > it__.py", line 10, in <module>
> > >     from OpenGL.GLU.glunurbs import *
> > >   File "c:\python25\lib\site-packages\PyOpenGL-3.0.0b6-py2.5.egg\OpenGL
> > > \GLU\glun
> > > urbs.py", line 147, in <module>
> > >     cb = _callbackWithType( funcType )
> > >   File "c:\python25\lib\site-packages\PyOpenGL-3.0.0b6-py2.5.egg\OpenGL
> > > \GLU\glun
> > > urbs.py", line 140, in _callbackWithType
> > >     simple.gluNurbsCallback
> > >   File "c:\python25\lib\site-packages\PyOpenGL-3.0.0b6-py2.5.egg\OpenGL
> > > \platform
> > > \baseplatform.py", line 192, in copyBaseFunction
> > >     extension = original.argNames,
> > >   File "c:\python25\lib\site-packages\PyOpenGL-3.0.0b6-py2.5.egg\OpenGL
> > > \platform
> > > \baseplatform.py", line 134, in createBaseFunction
> > >     extension = extension,
> > >   File "c:\python25\lib\site-packages\PyOpenGL-3.0.0b6-py2.5.egg\OpenGL
> > > \platform
> > > \baseplatform.py", line 80, in constructFunction
> > >     if extension and not self.checkExtension( extension ):
> > >   File "c:\python25\lib\site-packages\PyOpenGL-3.0.0b6-py2.5.egg\OpenGL
> > > \platform
> > > \baseplatform.py", line 158, in checkExtension
> > >     current = set.get( name )
> > > TypeError: list objects are unhashable
>
> > > And if I try to import pyopengl first, it works, however all my
> > > textures are gone, and only the textures of the imported model are
> > > displayed.
>
> > > So help me pelase! How can I make the two opengl libraries work
> > > together? Or should I really try to modify his code harder? The
> > > problem I've had with his code is basically related to (I think)
> > > glVertexPointer, numpy ndarrays and the fact that pyglet expects
> > > glfloats. However, I searched a lot on this and kept getting crashes
> > > that looked like segfaults. So I'd appreciate it if you could please
> > > focus on making pyopengl and pyglet working together instead of
> > > solving this issue.
>
> > > Thanks!

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"pyglet-users" group.
To post to this group, send email to pyglet-users@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/pyglet-users?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to