[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [15653] trunk/blender/source/blender: Bugfix #16662

Ton Roosendaal ton at blender.org
Sun Jul 20 18:06:40 CEST 2008


Revision: 15653
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=15653
Author:   ton
Date:     2008-07-20 18:06:40 +0200 (Sun, 20 Jul 2008)

Log Message:
-----------
Bugfix #16662

Curve modifier on lattice suffered drawing updates, only when the system
was not animated though, missed depsgraph calls then.

Solved it by forcing lattice to always return displist for its vertices,
that's same as for how mesh/curve works now.

Modified Paths:
--------------
    trunk/blender/source/blender/blenkernel/intern/lattice.c
    trunk/blender/source/blender/src/drawobject.c

Modified: trunk/blender/source/blender/blenkernel/intern/lattice.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/lattice.c	2008-07-20 15:40:03 UTC (rev 15652)
+++ trunk/blender/source/blender/blenkernel/intern/lattice.c	2008-07-20 16:06:40 UTC (rev 15653)
@@ -915,7 +915,10 @@
 		mti->deformVerts(md, ob, NULL, vertexCos, numVerts);
 	}
 
-	if (vertexCos) {
+	/* always displist to make this work like derivedmesh */
+	if (!vertexCos) vertexCos = lattice_getVertexCos(ob, &numVerts);
+	
+	{
 		DispList *dl = MEM_callocN(sizeof(*dl), "lt_dl");
 		dl->type = DL_VERTS;
 		dl->parts = 1;

Modified: trunk/blender/source/blender/src/drawobject.c
===================================================================
--- trunk/blender/source/blender/src/drawobject.c	2008-07-20 15:40:03 UTC (rev 15652)
+++ trunk/blender/source/blender/src/drawobject.c	2008-07-20 16:06:40 UTC (rev 15653)
@@ -1199,7 +1199,12 @@
 	int use_wcol= 0;
 
 	lt= (ob==G.obedit)?editLatt:ob->data;
+	
+	/* now we default make displist, this will modifiers work for non animated case */
+	if(ob->disp.first==NULL)
+		lattice_calc_modifiers(ob);
 	dl= find_displist(&ob->disp, DL_VERTS);
+	
 	if(ob==G.obedit) {
 		cpack(0x004000);
 		





More information about the Bf-blender-cvs mailing list