From cfcdae5549f37198fa8e66ee512f1093764ef022 Mon Sep 17 00:00:00 2001 From: Jacques Lucke Date: Wed, 4 Nov 2020 13:21:43 +0100 Subject: Fix T82393: Volume to Mesh modifier with sequence fails during rendering The issue was that the volume for the current frame might not have been loaded already by the time the modifier runs. The solution is simply to make sure that the volume is loaded. This is similar to the Volume Displace modifier. --- source/blender/modifiers/intern/MOD_volume_to_mesh.cc | 3 +++ 1 file changed, 3 insertions(+) (limited to 'source/blender/modifiers') diff --git a/source/blender/modifiers/intern/MOD_volume_to_mesh.cc b/source/blender/modifiers/intern/MOD_volume_to_mesh.cc index 8146c4ca84a..11d30c1f173 100644 --- a/source/blender/modifiers/intern/MOD_volume_to_mesh.cc +++ b/source/blender/modifiers/intern/MOD_volume_to_mesh.cc @@ -45,6 +45,8 @@ #include "BLI_span.hh" #include "BLI_timeit.hh" +#include "DEG_depsgraph_query.h" + #ifdef WITH_OPENVDB # include # include @@ -281,6 +283,7 @@ static Mesh *modifyMesh(ModifierData *md, const ModifierEvalContext *ctx, Mesh * Volume *volume = static_cast(vmmd->object->data); + BKE_volume_load(volume, DEG_get_bmain(ctx->depsgraph)); VolumeGrid *volume_grid = BKE_volume_grid_find(volume, vmmd->grid_name); if (volume_grid == nullptr) { BKE_modifier_set_error(md, "Cannot find '%s' grid", vmmd->grid_name); -- cgit v1.2.3