Fix freestyle renders not including some types of animation.
Freestyle Python scripts need to get the evaluated view layer and scene, not the original one.
This commit is contained in:
@@ -32,10 +32,10 @@
|
||||
|
||||
namespace Freestyle {
|
||||
|
||||
BlenderFileLoader::BlenderFileLoader(Render *re, ViewLayer *view_layer)
|
||||
BlenderFileLoader::BlenderFileLoader(Render *re, ViewLayer *view_layer, Depsgraph *depsgraph)
|
||||
{
|
||||
_re = re;
|
||||
_view_layer = view_layer;
|
||||
_depsgraph = depsgraph;
|
||||
_Scene = NULL;
|
||||
_numFacesRead = 0;
|
||||
#if 0
|
||||
@@ -79,11 +79,6 @@ NodeGroup *BlenderFileLoader::Load()
|
||||
_z_offset = 0.f;
|
||||
}
|
||||
|
||||
ViewLayer *view_layer = (ViewLayer*)BLI_findstring(&_re->scene->view_layers, _view_layer->name, offsetof(ViewLayer, name));
|
||||
Depsgraph *depsgraph = DEG_graph_new(_re->scene, view_layer, DAG_EVAL_RENDER);
|
||||
|
||||
BKE_scene_graph_update_tagged(depsgraph, _re->main);
|
||||
|
||||
#if 0
|
||||
if (G.debug & G_DEBUG_FREESTYLE) {
|
||||
cout << "Frustum: l " << _viewplane_left << " r " << _viewplane_right
|
||||
@@ -95,7 +90,7 @@ NodeGroup *BlenderFileLoader::Load()
|
||||
int id = 0;
|
||||
|
||||
DEG_OBJECT_ITER_BEGIN(
|
||||
depsgraph, ob,
|
||||
_depsgraph, ob,
|
||||
DEG_ITER_OBJECT_FLAG_LINKED_DIRECTLY |
|
||||
DEG_ITER_OBJECT_FLAG_LINKED_VIA_SET |
|
||||
DEG_ITER_OBJECT_FLAG_VISIBLE |
|
||||
@@ -111,7 +106,7 @@ NodeGroup *BlenderFileLoader::Load()
|
||||
|
||||
bool apply_modifiers = false;
|
||||
bool calc_undeformed = false;
|
||||
Mesh *mesh = BKE_mesh_new_from_object(depsgraph,
|
||||
Mesh *mesh = BKE_mesh_new_from_object(_depsgraph,
|
||||
_re->main,
|
||||
_re->scene,
|
||||
ob,
|
||||
@@ -125,8 +120,6 @@ NodeGroup *BlenderFileLoader::Load()
|
||||
}
|
||||
DEG_OBJECT_ITER_END;
|
||||
|
||||
DEG_graph_free(depsgraph);
|
||||
|
||||
// Return the built scene.
|
||||
return _Scene;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user