Author: ArcRiley
Date: 2008-03-04 12:32:15 -0500 (Tue, 04 Mar 2008)
New Revision: 1022

Modified:
   trunk/pysoy/src/bodies._bodies/Body.pxi
   trunk/pysoy/src/bodies.lights/Light.pxi
   trunk/pysoy/src/bodies.lights/soy.bodies.lights.pyx
Log:
Ticket #934 :
  * fixed Light by rearranging when _append is called and s/id/_id


Modified: trunk/pysoy/src/bodies._bodies/Body.pxi
===================================================================
--- trunk/pysoy/src/bodies._bodies/Body.pxi     2008-03-04 16:39:51 UTC (rev 
1021)
+++ trunk/pysoy/src/bodies._bodies/Body.pxi     2008-03-04 17:32:15 UTC (rev 
1022)
@@ -42,7 +42,9 @@
       (<soy.scenes.Scene> scene)._stepLock()
       self._scene = scene
       self._create()
-      self._append()
+      (<soy.scenes.Scene> self._scene)._bodies.lock()
+      (<soy.scenes.Scene> self._scene)._bodies.append(<void *> self)
+      (<soy.scenes.Scene> self._scene)._bodies.unlock()
       (<soy.scenes.Scene> scene)._stepUnLock()      
     else :
       self._scene    = None

Modified: trunk/pysoy/src/bodies.lights/Light.pxi
===================================================================
--- trunk/pysoy/src/bodies.lights/Light.pxi     2008-03-04 16:39:51 UTC (rev 
1021)
+++ trunk/pysoy/src/bodies.lights/Light.pxi     2008-03-04 17:32:15 UTC (rev 
1022)
@@ -27,9 +27,12 @@
                 ambient=soy.colors.black, diffuse=soy.colors.white,
                 specular=soy.colors.white,
                 *args, **keywords) :
-    self._ambient  = ambient
-    self._diffuse  = diffuse
-    self._specular = specular
+    self.ambient  = ambient
+    self.diffuse  = diffuse
+    self.specular = specular
+    (<soy.scenes.Scene> self._scene)._lights.lock()
+    (<soy.scenes.Scene> self._scene)._lights.append(<void *> self)
+    (<soy.scenes.Scene> self._scene)._lights.unlock()
 
 
   cdef void _append(self) :
@@ -63,10 +66,10 @@
     _position[1] = self._position[1]
     _position[2] = self._position[2]
     _position[3] = 1.0
-    gl.glLightfv(id, gl.GL_AMBIENT,  _ambient)
-    gl.glLightfv(id, gl.GL_DIFFUSE,  _diffuse)
-    gl.glLightfv(id, gl.GL_SPECULAR, _specular)
-    gl.glLightfv(id, gl.GL_POSITION, _position)
+    gl.glLightfv(_id, gl.GL_AMBIENT,  _ambient)
+    gl.glLightfv(_id, gl.GL_DIFFUSE,  _diffuse)
+    gl.glLightfv(_id, gl.GL_SPECULAR, _specular)
+    gl.glLightfv(_id, gl.GL_POSITION, _position)
 
 
   cdef void _off(self, int _id) :

Modified: trunk/pysoy/src/bodies.lights/soy.bodies.lights.pyx
===================================================================
--- trunk/pysoy/src/bodies.lights/soy.bodies.lights.pyx 2008-03-04 16:39:51 UTC 
(rev 1021)
+++ trunk/pysoy/src/bodies.lights/soy.bodies.lights.pyx 2008-03-04 17:32:15 UTC 
(rev 1022)
@@ -23,9 +23,9 @@
               'by '+'$Author$'[9:-2]
 __version__ = 'Trunk (r'+'$Rev$'[6:-2]+')'
 
-cimport soy.scenes
 cimport soy.colors
 cimport soy.materials
+cimport soy.scenes
 import soy.colors
 
 include "Light.pxi"

_______________________________________________
PySoy-SVN mailing list
PySoy-SVN@pysoy.org
http://www.pysoy.org/mailman/listinfo/pysoy-svn

Reply via email to