Bugfix: Object "restrict render" option was missing in vectorblur

Plumiferos request: Made individual duplicated group objects still check on
the restriction flag, *after* the group-duplicator itself was checked for.
So it works both. (Matt; was urgent feature, hope you're OK? These options
showed in outliner for groups anyway :).
This commit is contained in:
Ton Roosendaal
2006-12-12 16:47:18 +00:00
parent 925caea404
commit 12c0fb9312
2 changed files with 7 additions and 5 deletions

View File

@@ -3343,6 +3343,8 @@ void RE_Database_FromScene(Render *re, Scene *scene, int use_camera_view)
for(dob= lb->first; dob; dob= dob->next) {
Object *obd= dob->ob;
if (obd->restrictflag & OB_RESTRICT_RENDER) continue;
Mat4CpyMat4(obd->obmat, dob->mat);
/* group duplis need to set ob matrices correct, for deform. so no_draw is part handled */
@@ -3531,6 +3533,8 @@ static void database_fromscene_vectors(Render *re, Scene *scene, int timeoffset)
for(SETLOOPER(re->scene, base)) {
ob= base->object;
if (ob->restrictflag & OB_RESTRICT_RENDER) continue;
/* OB_DONE means the object itself got duplicated, so was already converted */
if(ob->flag & OB_DONE);
else if( (base->lay & lay) || (ob->type==OB_LAMP && (base->lay & re->scene->lay)) ) {
@@ -3554,6 +3558,8 @@ static void database_fromscene_vectors(Render *re, Scene *scene, int timeoffset)
for(dob= lb->first; dob; dob= dob->next) {
Object *obd= dob->ob;
if (obd->restrictflag & OB_RESTRICT_RENDER) continue;
Mat4CpyMat4(obd->obmat, dob->mat);
if(obd->type!=OB_MBALL) {

View File

@@ -3655,11 +3655,7 @@ void draw_object(Base *base, int flag)
ob= base->object;
if (ob!=G.obedit) {
/*
* Always draw dupli objects here, restriction of those is governed by the flag of their duplicator
* object, in drawview.c, draw_dupli_objects()
*/
if ((ob->restrictflag & OB_RESTRICT_VIEW) && !(base->flag & OB_FROMDUPLI))
if (ob->restrictflag & OB_RESTRICT_VIEW)
return;
}