Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrecht Van Lommel <brecht@blender.org>2020-05-14 04:09:33 +0300
committerBrecht Van Lommel <brecht@blender.org>2020-05-14 04:09:33 +0300
commitdb1099c0aeec3b793296808c77ea8eb9abad33f0 (patch)
tree8cd7de7b7139269cdb411ea0ca32485a608b1ae2 /source/blender/render
parent879032d2ab95fb6124eb95b131a0bbc315a05dfe (diff)
parentec324d87411b1e6ae9285eab2efcecb479d4dd46 (diff)
Merge branch 'blender-v2.83-release'
Diffstat (limited to 'source/blender/render')
-rw-r--r--source/blender/render/intern/source/external_engine.c2
-rw-r--r--source/blender/render/intern/source/pipeline.c56
2 files changed, 30 insertions, 28 deletions
diff --git a/source/blender/render/intern/source/external_engine.c b/source/blender/render/intern/source/external_engine.c
index ffd483a8b62..4770e98bd20 100644
--- a/source/blender/render/intern/source/external_engine.c
+++ b/source/blender/render/intern/source/external_engine.c
@@ -605,9 +605,11 @@ bool RE_bake_engine(Render *re,
engine->resolution_x = re->winx;
engine->resolution_y = re->winy;
+ BLI_rw_mutex_lock(&re->partsmutex, THREAD_LOCK_WRITE);
RE_parts_init(re);
engine->tile_x = re->r.tilex;
engine->tile_y = re->r.tiley;
+ BLI_rw_mutex_unlock(&re->partsmutex);
if (type->bake) {
engine->depsgraph = depsgraph;
diff --git a/source/blender/render/intern/source/pipeline.c b/source/blender/render/intern/source/pipeline.c
index 77a482f8546..4a910d9e12c 100644
--- a/source/blender/render/intern/source/pipeline.c
+++ b/source/blender/render/intern/source/pipeline.c
@@ -1819,42 +1819,42 @@ bool RE_is_rendering_allowed(Scene *scene,
}
}
- if (scemode & R_DOCOMP) {
- if (scene->use_nodes) {
- if (!scene->nodetree) {
- BKE_report(reports, RPT_ERROR, "No node tree in scene");
- return 0;
- }
+ if (RE_seq_render_active(scene, &scene->r)) {
+ /* Sequencer */
+ if (scene->r.mode & R_BORDER) {
+ BKE_report(reports, RPT_ERROR, "Border rendering is not supported by sequencer");
+ return false;
+ }
+ }
+ else if ((scemode & R_DOCOMP) && scene->use_nodes) {
+ /* Compositor */
+ if (!scene->nodetree) {
+ BKE_report(reports, RPT_ERROR, "No node tree in scene");
+ return 0;
+ }
- if (!check_composite_output(scene)) {
- BKE_report(reports, RPT_ERROR, "No render output node in scene");
- return 0;
- }
+ if (!check_composite_output(scene)) {
+ BKE_report(reports, RPT_ERROR, "No render output node in scene");
+ return 0;
+ }
- if (scemode & R_FULL_SAMPLE) {
- if (composite_needs_render(scene, 0) == 0) {
- BKE_report(reports, RPT_ERROR, "Full sample AA not supported without 3D rendering");
- return 0;
- }
+ if (scemode & R_FULL_SAMPLE) {
+ if (composite_needs_render(scene, 0) == 0) {
+ BKE_report(reports, RPT_ERROR, "Full sample AA not supported without 3D rendering");
+ return 0;
}
}
}
-
- /* check valid camera, without camera render is OK (compo, seq) */
- if (!check_valid_camera(scene, camera_override, reports)) {
- return 0;
- }
-
- if (RE_seq_render_active(scene, &scene->r)) {
- if (scene->r.mode & R_BORDER) {
- BKE_report(reports, RPT_ERROR, "Border rendering is not supported by sequencer");
- return false;
+ else {
+ /* Regular Render */
+ if (!render_scene_has_layers_to_render(scene, single_layer)) {
+ BKE_report(reports, RPT_ERROR, "All render layers are disabled");
+ return 0;
}
}
- /* layer flag tests */
- if (!render_scene_has_layers_to_render(scene, single_layer)) {
- BKE_report(reports, RPT_ERROR, "All render layers are disabled");
+ /* check valid camera, without camera render is OK (compo, seq) */
+ if (!check_valid_camera(scene, camera_override, reports)) {
return 0;
}