Based on - https://developer.blender.org/rBbdc537e0a7b4b62af049dd4d508d5b08a4fa8b3b - https://developer.blender.org/rB05697470ab0dde6646be939ae57a95c9d4099e0b diff --git intern/cycles/render/volume.cpp intern/cycles/render/volume.cpp index 358ef71d501..a0a16d7c52f 100644 --- intern/cycles/render/volume.cpp +++ intern/cycles/render/volume.cpp @@ -271,7 +271,8 @@ void VolumeMeshBuilder::add_grid(openvdb::GridBase::ConstPtr grid, void VolumeMeshBuilder::add_padding(int pad_size) { #ifdef WITH_OPENVDB - openvdb::tools::dilateVoxels(topology_grid->tree(), pad_size); + openvdb::tools::dilateActiveValues( + topology_grid->tree(), pad_size, openvdb::tools::NN_FACE, openvdb::tools::IGNORE_TILES); #else (void)pad_size; #endif diff --git source/blender/blenkernel/BKE_volume.h source/blender/blenkernel/BKE_volume.h index cf755827a6c..5a96b70514e 100644 --- source/blender/blenkernel/BKE_volume.h +++ source/blender/blenkernel/BKE_volume.h @@ -103,7 +103,6 @@ typedef enum VolumeGridType { VOLUME_GRID_INT, VOLUME_GRID_INT64, VOLUME_GRID_MASK, - VOLUME_GRID_STRING, VOLUME_GRID_VECTOR_FLOAT, VOLUME_GRID_VECTOR_DOUBLE, VOLUME_GRID_VECTOR_INT, @@ -203,8 +202,6 @@ auto BKE_volume_grid_type_operation(const VolumeGridType grid_type, OpType &&op) return op.template operator()(); case VOLUME_GRID_VECTOR_DOUBLE: return op.template operator()(); - case VOLUME_GRID_STRING: - return op.template operator()(); case VOLUME_GRID_MASK: return op.template operator()(); case VOLUME_GRID_POINTS: diff --git source/blender/blenkernel/intern/volume.cc source/blender/blenkernel/intern/volume.cc index 7b03839f659..6b745d0bb3e 100644 --- source/blender/blenkernel/intern/volume.cc +++ source/blender/blenkernel/intern/volume.cc @@ -1300,9 +1300,6 @@ VolumeGridType BKE_volume_grid_type_openvdb(const openvdb::GridBase &grid) if (grid.isType()) { return VOLUME_GRID_VECTOR_DOUBLE; } - if (grid.isType()) { - return VOLUME_GRID_STRING; - } if (grid.isType()) { return VOLUME_GRID_MASK; } @@ -1338,7 +1335,6 @@ int BKE_volume_grid_channels(const VolumeGrid *grid) case VOLUME_GRID_VECTOR_DOUBLE: case VOLUME_GRID_VECTOR_INT: return 3; - case VOLUME_GRID_STRING: case VOLUME_GRID_POINTS: case VOLUME_GRID_UNKNOWN: return 0; @@ -1570,13 +1566,8 @@ struct CreateGridWithChangedResolutionOp { template typename openvdb::GridBase::Ptr operator()() { - if constexpr (std::is_same_v) { - return {}; - } - else { - return create_grid_with_changed_resolution(static_cast(grid), - resolution_factor); - } + return create_grid_with_changed_resolution(static_cast(grid), + resolution_factor); } }; diff --git source/blender/blenkernel/intern/volume_render.cc source/blender/blenkernel/intern/volume_render.cc index 6dc497bb616..57c7773d7be 100644 --- source/blender/blenkernel/intern/volume_render.cc +++ source/blender/blenkernel/intern/volume_render.cc @@ -77,7 +77,6 @@ static void extract_dense_float_voxels(const VolumeGridType grid_type, case VOLUME_GRID_VECTOR_INT: return extract_dense_voxels( grid, bbox, reinterpret_cast(r_voxels)); - case VOLUME_GRID_STRING: case VOLUME_GRID_POINTS: case VOLUME_GRID_UNKNOWN: /* Zero channels to copy. */ diff --git source/blender/makesrna/intern/rna_volume.c source/blender/makesrna/intern/rna_volume.c index 76db6f3e325..32c59d5f359 100644 --- source/blender/makesrna/intern/rna_volume.c +++ source/blender/makesrna/intern/rna_volume.c @@ -241,7 +241,6 @@ static void rna_def_volume_grid(BlenderRNA *brna) {VOLUME_GRID_INT, "INT", 0, "Integer", "32-bit integer"}, {VOLUME_GRID_INT64, "INT64", 0, "Integer 64-bit", "64-bit integer"}, {VOLUME_GRID_MASK, "MASK", 0, "Mask", "No data, boolean mask of active voxels"}, - {VOLUME_GRID_STRING, "STRING", 0, "String", "Text string"}, {VOLUME_GRID_VECTOR_FLOAT, "VECTOR_FLOAT", 0, "Float Vector", "3D float vector"}, {VOLUME_GRID_VECTOR_DOUBLE, "VECTOR_DOUBLE", 0, "Double Vector", "3D double vector"}, {VOLUME_GRID_VECTOR_INT, "VECTOR_INT", 0, "Integer Vector", "3D integer vector"}, diff --git source/blender/modifiers/intern/MOD_volume_displace.cc source/blender/modifiers/intern/MOD_volume_displace.cc index e7c4004853e..e74ea3656b3 100644 --- source/blender/modifiers/intern/MOD_volume_displace.cc +++ source/blender/modifiers/intern/MOD_volume_displace.cc @@ -200,9 +200,8 @@ struct DisplaceGridOp { template void operator()() { if constexpr (std::is_same_v || - std::is_same_v || std::is_same_v) { /* We don't support displacing these grid types yet. */ return; }