diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2018-05-23 13:13:21 +0300 |
---|---|---|
committer | Brecht Van Lommel <brechtvanlommel@gmail.com> | 2018-05-23 14:21:02 +0300 |
commit | b20449cc08f33fc6b55fc6c326f5ab1b5f240fb9 (patch) | |
tree | ac49c0554144d98392ff68de34d037cf7be391e6 /source/blender/editors/object/object_bake_api.c | |
parent | d59b74adb38f3ac6b85107aa506e471efbd2a20c (diff) |
Cycles/Render API: changes for better copy-on-write support.
Mainly just passing the depsgraph and evaluated scene and camera, instead of
the original one. Patch by Sergey, further modifications by Brecht.
Diffstat (limited to 'source/blender/editors/object/object_bake_api.c')
-rw-r--r-- | source/blender/editors/object/object_bake_api.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/source/blender/editors/object/object_bake_api.c b/source/blender/editors/object/object_bake_api.c index b49a58b3766..9af8169ae41 100644 --- a/source/blender/editors/object/object_bake_api.c +++ b/source/blender/editors/object/object_bake_api.c @@ -893,7 +893,7 @@ static int bake( /* the baking itself */ for (i = 0; i < tot_highpoly; i++) { - ok = RE_bake_engine(re, view_layer, highpoly[i].ob, i, pixel_array_high, + ok = RE_bake_engine(re, depsgraph, highpoly[i].ob, i, pixel_array_high, num_pixels, depth, pass_type, pass_filter, result); if (!ok) { BKE_reportf(reports, RPT_ERROR, "Error baking from object \"%s\"", highpoly[i].ob->id.name + 2); @@ -920,7 +920,7 @@ cage_cleanup: ob_low->restrictflag &= ~OB_RESTRICT_RENDER; if (RE_bake_has_engine(re)) { - ok = RE_bake_engine(re, view_layer, ob_low, 0, pixel_array_low, num_pixels, depth, pass_type, pass_filter, result); + ok = RE_bake_engine(re, depsgraph, ob_low, 0, pixel_array_low, num_pixels, depth, pass_type, pass_filter, result); } else { BKE_report(reports, RPT_ERROR, "Current render engine does not support baking"); @@ -1120,6 +1120,8 @@ cleanup: if (me_cage) BKE_libblock_free(bmain, me_cage); + DEG_graph_free(depsgraph); + return op_result; } |