Fix related to #31317: viewport render layer rendering now uses render visibility
rather than viewport visibility, is more useful that way.
This commit is contained in:
parent
aa9c9173b1
commit
a30dec8e59
@ -286,7 +286,7 @@ void BlenderSync::sync_objects(BL::SpaceView3D b_v3d, int motion)
|
||||
BL::Scene::objects_iterator b_ob;
|
||||
|
||||
for(b_scene.objects.begin(b_ob); b_ob != b_scene.objects.end(); ++b_ob) {
|
||||
bool hide = (b_v3d)? b_ob->hide(): b_ob->hide_render();
|
||||
bool hide = (render_layer.use_viewport_visibility)? b_ob->hide(): b_ob->hide_render();
|
||||
uint ob_layer = get_layer(b_ob->layers());
|
||||
|
||||
if(!hide && (ob_layer & scene_layer)) {
|
||||
|
@ -215,6 +215,7 @@ void BlenderSync::sync_render_layers(BL::SpaceView3D b_v3d, const char *layer)
|
||||
render_layer.holdout_layer = 0;
|
||||
render_layer.material_override = PointerRNA_NULL;
|
||||
render_layer.use_background = true;
|
||||
render_layer.use_viewport_visibility = true;
|
||||
render_layer.samples = 0;
|
||||
return;
|
||||
}
|
||||
@ -234,6 +235,7 @@ void BlenderSync::sync_render_layers(BL::SpaceView3D b_v3d, const char *layer)
|
||||
render_layer.layer |= render_layer.holdout_layer;
|
||||
render_layer.material_override = b_rlay->material_override();
|
||||
render_layer.use_background = b_rlay->use_sky();
|
||||
render_layer.use_viewport_visibility = false;
|
||||
render_layer.samples = b_rlay->samples();
|
||||
}
|
||||
|
||||
|
@ -113,6 +113,7 @@ private:
|
||||
: scene_layer(0), layer(0), holdout_layer(0),
|
||||
material_override(PointerRNA_NULL),
|
||||
use_background(true),
|
||||
use_viewport_visibility(false),
|
||||
samples(0)
|
||||
{}
|
||||
|
||||
@ -122,6 +123,7 @@ private:
|
||||
uint holdout_layer;
|
||||
BL::Material material_override;
|
||||
bool use_background;
|
||||
bool use_viewport_visibility;
|
||||
int samples;
|
||||
} render_layer;
|
||||
};
|
||||
|
Loading…
Reference in New Issue
Block a user