Fix T40142: Objects restricted in render/view don't produce duplis in

with correct transform for Blender Internal.

According to previous code the obmat must be modified even if the
duplicated object itself is filtered later. TBH i have no idea how/why
this works, but nobody else does either ... All obmats are restored
after BI messes with them during render, so should be fine ...
This commit is contained in:
Lukas Tönne 2014-05-12 08:55:47 +02:00
parent 204ba76ee0
commit 7fb96ff00d
Notes: blender-bot 2023-02-14 10:40:07 +01:00
Referenced by issue #42478, Unable to render cloth in group instance.
Referenced by issue #40161, Twisted object in render result
Referenced by issue #40142, Group instance rendered at wrong position
1 changed files with 2 additions and 2 deletions

View File

@ -5007,6 +5007,8 @@ static void database_init_objects(Render *re, unsigned int renderlay, int nolamp
DupliExtraData *dob_extra = &duplilist_apply_data->extra[i];
Object *obd= dob->ob;
copy_m4_m4(obd->obmat, dob->mat);
/* group duplis need to set ob matrices correct, for deform. so no_draw is part handled */
if (!(obd->transflag & OB_RENDER_DUPLI) && dob->no_draw)
continue;
@ -5020,8 +5022,6 @@ static void database_init_objects(Render *re, unsigned int renderlay, int nolamp
if (!allow_render_object(re, obd, nolamps, onlyselected, actob))
continue;
copy_m4_m4(obd->obmat, dob->mat);
if (allow_render_dupli_instance(re, dob, obd)) {
ParticleSystem *psys;
ObjectRen *obr = NULL;