[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [61140] trunk/blender/source/blender/ editors/space_view3d/drawobject.c: Fix [#37319] Forcefield on translated, unselected lamp draws in origin.

Bastien Montagne montagne29 at wanadoo.fr
Tue Nov 5 16:53:55 CET 2013


Revision: 61140
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=61140
Author:   mont29
Date:     2013-11-05 15:53:55 +0000 (Tue, 05 Nov 2013)
Log Message:
-----------
Fix [#37319] Forcefield on translated, unselected lamp draws in origin.

drawlamp() was not resetting OGL matrix to its org value!

Thanks to Philipp Oeser for initial investigation, and Brecht for review. :)

Modified Paths:
--------------
    trunk/blender/source/blender/editors/space_view3d/drawobject.c

Modified: trunk/blender/source/blender/editors/space_view3d/drawobject.c
===================================================================
--- trunk/blender/source/blender/editors/space_view3d/drawobject.c	2013-11-05 15:48:26 UTC (rev 61139)
+++ trunk/blender/source/blender/editors/space_view3d/drawobject.c	2013-11-05 15:53:55 UTC (rev 61140)
@@ -1356,6 +1356,7 @@
 	}
 	
 	/* and back to viewspace */
+	glPushMatrix();
 	glLoadMatrixf(rv3d->viewmat);
 	copy_v3_v3(vec, ob->obmat[3]);
 
@@ -1391,6 +1392,8 @@
 		/* restore for drawing extra stuff */
 		glColor3ubv(ob_wire_col);
 	}
+	/* and finally back to org object space! */
+	glPopMatrix();
 }
 
 static void draw_limit_line(float sta, float end, const short dflag, unsigned int col)
@@ -6876,7 +6879,6 @@
 			case OB_LAMP:
 				if (!render_override) {
 					drawlamp(scene, v3d, rv3d, base, dt, dflag, ob_wire_col);
-					if (dtx || (base->flag & SELECT)) glMultMatrixf(ob->obmat);
 				}
 				break;
 			case OB_CAMERA:




More information about the Bf-blender-cvs mailing list