Fix for regression noted in T38942: Blender Internal rendering can lead

to wrong obmats of nested dupli objects.

Restoring obmats after BI nested dupli object rendering has to happen
in reverse order, so higher level omats are applied last.
This commit is contained in:
2014-03-04 11:22:56 +01:00
parent dad9600004
commit a31571481b
@@ -5108,8 +5108,11 @@ static void database_init_objects(Render *re, unsigned int renderlay, int nolamp
if (re->test_break(re->tbh)) break;
}
/* restore obmats */
for (dob= duplilist->first, i = 0; dob; dob= dob->next, ++i) {
/* restore obmats
* NOTE: this has to happen in reverse order, since nested
* dupli objects can repeatedly override the obmat
*/
for (dob= duplilist->last, i = totdob - 1; dob; dob= dob->prev, --i) {
copy_m4_m4(dob->ob->obmat, duplilist_extra[i].omat);
}