[Bf-committers] [Bf-blender-cvs] SVN commit: /data/svn/bf-blender [34284] trunk/blender/source/blender: bugfix [#24774] Lattice modifier+Dupligroup+Texture solid=weird result
Daniel Salazar - 3Developer.com
zanqdo at gmail.com
Thu Jan 13 12:27:48 CET 2011
thank you cam
Daniel Salazar
www.3developer.com
On Thu, Jan 13, 2011 at 5:23 AM, Campbell Barton <ideasman42 at gmail.com> wrote:
> 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
> <zanqdo at gmail.com> 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 <ideasman42 at gmail.com> 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
>>> Bf-blender-cvs at blender.org
>>> http://lists.blender.org/mailman/listinfo/bf-blender-cvs
>>>
>> _______________________________________________
>> Bf-committers mailing list
>> Bf-committers at blender.org
>> http://lists.blender.org/mailman/listinfo/bf-committers
>>
>
>
>
> --
> - Campbell
> _______________________________________________
> Bf-committers mailing list
> Bf-committers at blender.org
> http://lists.blender.org/mailman/listinfo/bf-committers
>
More information about the Bf-committers
mailing list