[Bf-blender-cvs] [a786eae93de] temp-lineart-contained: Fix T89581: Cycles crash rendering some OpenVDB files with inactive voxels
Brecht Van Lommel
noreply at git.blender.org
Sun Jul 4 07:28:05 CEST 2021
Commit: a786eae93deead6997cb2c7093ef665591098139
Author: Brecht Van Lommel
Date: Thu Jul 1 21:18:55 2021 +0200
Branches: temp-lineart-contained
https://developer.blender.org/rBa786eae93deead6997cb2c7093ef665591098139
Fix T89581: Cycles crash rendering some OpenVDB files with inactive voxels
Print an error message instead.
===================================================================
M intern/cycles/render/image_vdb.cpp
===================================================================
diff --git a/intern/cycles/render/image_vdb.cpp b/intern/cycles/render/image_vdb.cpp
index 13cdda552ba..6202035ba3b 100644
--- a/intern/cycles/render/image_vdb.cpp
+++ b/intern/cycles/render/image_vdb.cpp
@@ -16,6 +16,7 @@
#include "render/image_vdb.h"
+#include "util/util_logging.h"
#include "util/util_openvdb.h"
#ifdef WITH_OPENVDB
@@ -61,7 +62,13 @@ struct ToNanoOp {
bool operator()(const openvdb::GridBase::ConstPtr &grid)
{
if constexpr (!std::is_same_v<GridType, openvdb::MaskGrid>) {
- nanogrid = nanovdb::openToNanoVDB(FloatGridType(*openvdb::gridConstPtrCast<GridType>(grid)));
+ try {
+ nanogrid = nanovdb::openToNanoVDB(
+ FloatGridType(*openvdb::gridConstPtrCast<GridType>(grid)));
+ }
+ catch (const std::exception &e) {
+ VLOG(1) << "Error converting OpenVDB to NanoVDB grid: " << e.what();
+ }
return true;
}
else {
More information about the Bf-blender-cvs
mailing list