reverted this, will need to see why this works fine in 2.4x but not 2,5. On Thu, Jan 13, 2011 at 8:45 AM, Daniel Salazar - 3Developer.com <[email protected]> wrote: > This commit slows down dupligroups massively. Noted by Bassam too on IRC > > cheers > Daniel Salazar > > > > On Wed, Jan 12, 2011 at 10:53 AM, Campbell Barton <[email protected]> > wrote: >> Revision: 34284 >> >> http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=34284 >> Author: campbellbarton >> Date: 2011-01-12 16:53:27 +0000 (Wed, 12 Jan 2011) >> Log Message: >> ----------- >> bugfix [#24774] Lattice modifier+Dupligroup+Texture solid=weird result >> new 2.5x code was not passing group recalc flags onto objects within them. >> >> Modified Paths: >> -------------- >> trunk/blender/source/blender/blenkernel/intern/group.c >> trunk/blender/source/blender/makesdna/DNA_group_types.h >> >> Modified: trunk/blender/source/blender/blenkernel/intern/group.c >> =================================================================== >> --- trunk/blender/source/blender/blenkernel/intern/group.c 2011-01-12 >> 15:45:00 UTC (rev 34283) >> +++ trunk/blender/source/blender/blenkernel/intern/group.c 2011-01-12 >> 16:53:27 UTC (rev 34284) >> @@ -364,17 +364,22 @@ >> scene->r.cfra= cfrao; >> } >> else >> -#endif >> +#else >> { >> - /* only do existing tags, as set by regular depsgraph */ >> + /* use 2 loops to avoid updating objects multiple times */ >> for(go= group->gobject.first; go; go= go->next) { >> - if(go->ob) { >> - if(go->ob->recalc) { >> - object_handle_update(scene, go->ob); >> - } >> + if(go->ob && go->recalc) { >> + go->ob->recalc |= go->recalc; >> } >> } >> + >> + for(go= group->gobject.first; go; go= go->next) { >> + if(go->ob && go->recalc) { >> + object_handle_update(scene, go->ob); >> + } >> + } >> } >> +#endif >> } >> >> Object *group_get_member_with_action(Group *group, bAction *act) >> >> Modified: trunk/blender/source/blender/makesdna/DNA_group_types.h >> =================================================================== >> --- trunk/blender/source/blender/makesdna/DNA_group_types.h 2011-01-12 >> 15:45:00 UTC (rev 34283) >> +++ trunk/blender/source/blender/makesdna/DNA_group_types.h 2011-01-12 >> 16:53:27 UTC (rev 34284) >> @@ -40,8 +40,8 @@ >> struct GroupObject *next, *prev; >> struct Object *ob; >> void *lampren; /* used while render */ >> - int recalc; /* copy of ob->recalc, used to set >> animated groups OK */ >> - int pad; >> + short recalc; /* copy of ob->recalc, used to set >> animated groups OK */ >> + char pad[6]; >> } GroupObject; >> >> >> >> _______________________________________________ >> Bf-blender-cvs mailing list >> [email protected] >> http://lists.blender.org/mailman/listinfo/bf-blender-cvs >> > _______________________________________________ > Bf-committers mailing list > [email protected] > http://lists.blender.org/mailman/listinfo/bf-committers >
-- - Campbell _______________________________________________ Bf-committers mailing list [email protected] http://lists.blender.org/mailman/listinfo/bf-committers
