Update several months later (since I had given up). On a different PC I don't have this problem either.
On Sunday, 7 April 2013 18:57:18 UTC+1, Claudio Canepa wrote: > > > On Sun, Apr 7, 2013 at 11:09 AM, <[email protected] <javascript:>> wrote: > >> I've checked the environment variables and indeed I am not setting any >> pyglet options. I am using pyglet 1.2alpha1 and python 2.7.3. >> >> > Just in case I retested with pyglet 1.2alpha1, all runs ok here. > > >> With a fresh copy of my script: >> 1st run: all imports commented out - Runs OK. >> 2nd run: uncomment only ONE - Error >> >>> Traceback (most recent call last): >>> File "cocostest.py", line 17, in <module> >>> director.init() >>> >>> File >>> "C:\Python27\lib\site-packages\cocos2d-0.5.5-py2.7.egg\cocos\director.py", >>> line 295, in init >>> self.window = window.Window( *args, **kwargs ) >>> File "C:\Python27\lib\site-packages\pyglet\window\win32\__init__.py", >>> line 131, in __init__ >>> super(Win32Window, self).__init__(*args, **kwargs) >>> File "C:\Python27\lib\site-packages\pyglet\window\__init__.py", line >>> 559, in __init__ >>> self._create() >>> File "C:\Python27\lib\site-packages\pyglet\window\win32\__init__.py", >>> line 261, in _create >>> self.context.attach(self.canvas) >>> File "C:\Python27\lib\site-packages\pyglet\gl\win32.py", line 263, in >>> attach >>> super(Win32ARBContext, self).attach(canvas) >>> File "C:\Python27\lib\site-packages\pyglet\gl\win32.py", line 208, in >>> attach >>> raise gl.ContextException('Unable to share contexts') >>> pyglet.gl.ContextException: Unable to share contexts >>> >> >> 3rd run: uncomment only the first TWO - Runs OK. >> 4th run: uncomment only the second TWO - Runs OK. >> >> With your script: >> 1st run: both commented out - Runs OK. >> 2nd run: uncommented only #ONE - Runs OK. >> 3rd run: uncommented only #TWO - Runs OK. >> >> >> > > > Thats... surprising. > > Comparing the second and third runs of your script: > the third run explodes in the director.init call > at this point the only difference in app state are the ones created by > the import cocos_particle_systems in the exploding script > and what does that import ? It is equivalent to > > from particle import ParticleSystem, Color > from euclid import Point2 > > because all other code is class definition, so no running at import time. > From the point of view of side effects at import, thats equivalent > (replacing the first import) to: > > import random > import pyglet > from pyglet.gl import * > import math > import copy > import numpy > import ctypes > > from cocosnode import CocosNode > from euclid import Point2 > > forced_point_sprites = None > rand = lambda: random.random() * 2 - 1 > > All other lines are in class and func definitions, so no running at import > > cocosnode.py has no side effects on imports, euclid does nothing openGL, > the last two lines don't change the openGL state. > > In fact, the only lines looking as potential culprits to change GL state > are > > import pyglet > from pyglet.gl import * > > I would expect then that my script, the one only involving pyglet, will > crash in the second run. > > Yet your results tell otherwise. > > And now what ? > > I suggest you double check that the second run with my script uncomments > only ONE and that it does not traceback ( yes, yes, just in case) > > If the results are the same (no crash) , the only way I can see to > investigate the issue is testing your script gradually commenting out code > in cocos.particle.py and see when it ceases to crash. > > As I can not reproduce the issue I cant test by myself, sorry. > > > > -- You received this message because you are subscribed to the Google Groups "cocos2d discuss" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/cocos-discuss. For more options, visit https://groups.google.com/groups/opt_out.
