[Bf-blender-cvs] [a4868f20581] master: Fix T104136: Crash with Mesh to Volume & Simplify
Erik Abrahamsson
noreply at git.blender.org
Wed Feb 1 20:51:37 CET 2023
Commit: a4868f20581cd4b1ae071dbfda45fdac76b66b07
Author: Erik Abrahamsson
Date: Wed Feb 1 20:50:39 2023 +0100
Branches: master
https://developer.blender.org/rBa4868f20581cd4b1ae071dbfda45fdac76b66b07
Fix T104136: Crash with Mesh to Volume & Simplify
Blender crashes when Simplify is enabled and set to 0.
This is because mesh_to_volume_grid returns nullptr at voxel size 0.
A simple null-check fixes this problem.
Differential Revision: https://developer.blender.org/D17122
===================================================================
M source/blender/geometry/intern/mesh_to_volume.cc
===================================================================
diff --git a/source/blender/geometry/intern/mesh_to_volume.cc b/source/blender/geometry/intern/mesh_to_volume.cc
index 12a4a95bd71..8cbee7a3d32 100644
--- a/source/blender/geometry/intern/mesh_to_volume.cc
+++ b/source/blender/geometry/intern/mesh_to_volume.cc
@@ -159,12 +159,14 @@ VolumeGrid *volume_grid_add_from_mesh(Volume *volume,
interior_band_width,
density);
- /* Merge the generated grid. Should be cheap because grid has just been created. */
- grid->merge(*mesh_grid);
+ if (mesh_grid != nullptr) {
+ /* Merge the generated grid. Should be cheap because grid has just been created. */
+ grid->merge(*mesh_grid);
+ /* Change transform so that the index space is correctly transformed to object space. */
+ grid->transform().postScale(voxel_size);
+ }
/* Set class to "Fog Volume". */
grid->setGridClass(openvdb::GRID_FOG_VOLUME);
- /* Change transform so that the index space is correctly transformed to object space. */
- grid->transform().postScale(voxel_size);
return c_grid;
}
} // namespace blender::geometry
More information about the Bf-blender-cvs
mailing list