[Bf-blender-cvs] [7cb60065a61] new-object-types: Fix build with OpenVDB disabled
Brecht Van Lommel
noreply at git.blender.org
Mon Mar 16 22:39:32 CET 2020
Commit: 7cb60065a61d8a6e239ee1983ab26ba9e1aa21b9
Author: Brecht Van Lommel
Date: Mon Mar 16 22:36:00 2020 +0100
Branches: new-object-types
https://developer.blender.org/rB7cb60065a61d8a6e239ee1983ab26ba9e1aa21b9
Fix build with OpenVDB disabled
===================================================================
M intern/cycles/blender/blender_volume.cpp
M intern/cycles/render/image_vdb.cpp
===================================================================
diff --git a/intern/cycles/blender/blender_volume.cpp b/intern/cycles/blender/blender_volume.cpp
index 064841ec656..25fd923270b 100644
--- a/intern/cycles/blender/blender_volume.cpp
+++ b/intern/cycles/blender/blender_volume.cpp
@@ -227,6 +227,7 @@ class BlenderVolumeLoader : public VDBImageLoader {
b_volume_grid(PointerRNA_NULL),
unload(false)
{
+#ifdef WITH_OPENVDB
/* Find grid with matching name. */
BL::Volume::grids_iterator b_grid_iter;
for (b_volume.grids.begin(b_grid_iter); b_grid_iter != b_volume.grids.end(); ++b_grid_iter) {
@@ -234,6 +235,7 @@ class BlenderVolumeLoader : public VDBImageLoader {
b_volume_grid = *b_grid_iter;
}
}
+#endif
}
bool load_metadata(ImageMetaData &metadata) override
@@ -244,9 +246,11 @@ class BlenderVolumeLoader : public VDBImageLoader {
unload = !b_volume_grid.is_loaded();
+#ifdef WITH_OPENVDB
Volume *volume = (Volume *)b_volume.ptr.data;
VolumeGrid *volume_grid = (VolumeGrid *)b_volume_grid.ptr.data;
grid = BKE_volume_grid_openvdb_for_read(volume, volume_grid);
+#endif
return VDBImageLoader::load_metadata(metadata);
}
diff --git a/intern/cycles/render/image_vdb.cpp b/intern/cycles/render/image_vdb.cpp
index e4282b14cb2..500131c2d84 100644
--- a/intern/cycles/render/image_vdb.cpp
+++ b/intern/cycles/render/image_vdb.cpp
@@ -113,6 +113,7 @@ bool VDBImageLoader::load_metadata(ImageMetaData &metadata)
bool VDBImageLoader::load_pixels(const ImageMetaData &, void *pixels, const size_t, const bool)
{
+#ifdef WITH_OPENVDB
if (grid->isType<openvdb::FloatGrid>()) {
openvdb::tools::Dense<float, openvdb::tools::LayoutXYZ> dense(bbox, (float *)pixels);
openvdb::tools::copyToDense(*openvdb::gridConstPtrCast<openvdb::FloatGrid>(grid), dense);
@@ -154,6 +155,10 @@ bool VDBImageLoader::load_pixels(const ImageMetaData &, void *pixels, const size
}
return true;
+#else
+ (void)pixels;
+ return false;
+#endif
}
string VDBImageLoader::name() const
@@ -163,14 +168,21 @@ string VDBImageLoader::name() const
bool VDBImageLoader::equals(const ImageLoader &other) const
{
+#ifdef WITH_OPENVDB
const VDBImageLoader &other_loader = (const VDBImageLoader &)other;
return grid == other_loader.grid;
+#else
+ (void)other;
+ return true;
+#endif
}
void VDBImageLoader::cleanup()
{
+#ifdef WITH_OPENVDB
/* Free OpenVDB grid memory as soon as we can. */
grid.reset();
+#endif
}
CCL_NAMESPACE_END
More information about the Bf-blender-cvs
mailing list