[Bf-blender-cvs] [4dddd543933] blender-v2.91-release: Fix T82016: Cycles assert with empty OpenVDB volumes

Brecht Van Lommel noreply at git.blender.org
Wed Nov 4 15:53:23 CET 2020


Commit: 4dddd543933ce9d5674b29ff408516022e67d23e
Author: Brecht Van Lommel
Date:   Wed Nov 4 15:50:32 2020 +0100
Branches: blender-v2.91-release
https://developer.blender.org/rB4dddd543933ce9d5674b29ff408516022e67d23e

Fix T82016: Cycles assert with empty OpenVDB volumes

===================================================================

M	intern/cycles/render/volume.cpp

===================================================================

diff --git a/intern/cycles/render/volume.cpp b/intern/cycles/render/volume.cpp
index a8edc04f8a9..fcf33a5e50a 100644
--- a/intern/cycles/render/volume.cpp
+++ b/intern/cycles/render/volume.cpp
@@ -438,10 +438,15 @@ static openvdb::GridBase::ConstPtr openvdb_grid_from_device_texture(device_textu
                                 image_memory->data_width - 1,
                                 image_memory->data_height - 1,
                                 image_memory->data_depth - 1);
+
+  typename GridType::Ptr sparse = GridType::create(ValueType(0.0f));
+  if (dense_bbox.empty()) {
+    return sparse;
+  }
+
   openvdb::tools::Dense<ValueType, openvdb::tools::MemoryLayout::LayoutXYZ> dense(
       dense_bbox, static_cast<ValueType *>(image_memory->host_pointer));
 
-  typename GridType::Ptr sparse = GridType::create(ValueType(0.0f));
   openvdb::tools::copyFromDense(dense, *sparse, ValueType(volume_clipping));
 
   /* #copyFromDense will remove any leaf node that contains constant data and replace it with a



More information about the Bf-blender-cvs mailing list