Added PointReplicate for duplicating points and attributes
Seems that we're running out of disk space for the windows debug builds :neutral_face:
@danrbailey bump!
Hi Nick, I took a look at the code last week and this looks good to me in general. Sorry for the delay in reviewing.
When attempting to build and run the unit tests, I did run into an issue on Mac where it was segfaulting for me in the testReplicateZero unit test though. It only seems to do it in release mode and not debug mode and I haven't attempted to try and reproduce on Linux yet. I suspect it's a separate issue, because empty point leaf nodes are a little odd in how they work due to having arrays of minimum size 1, but would be good to find the source of the problem before merging this to be sure.
Hi Nick, I took a look at the code last week and this looks good to me in general. Sorry for the delay in reviewing.
When attempting to build and run the unit tests, I did run into an issue on Mac where it was segfaulting for me in the testReplicateZero unit test though. It only seems to do it in release mode and not debug mode and I haven't attempted to try and reproduce on Linux yet. I suspect it's a separate issue, because empty point leaf nodes are a little odd in how they work due to having arrays of minimum size 1, but would be good to find the source of the problem before merging this to be sure.
Thanks a lot @danrbailey! Hmm interesting, was it deterministic (i.e. segfaulted consistently)? The CI is all passsing, I'll rebase this and take a look
Hi Nick, I took a look at the code last week and this looks good to me in general. Sorry for the delay in reviewing. When attempting to build and run the unit tests, I did run into an issue on Mac where it was segfaulting for me in the testReplicateZero unit test though. It only seems to do it in release mode and not debug mode and I haven't attempted to try and reproduce on Linux yet. I suspect it's a separate issue, because empty point leaf nodes are a little odd in how they work due to having arrays of minimum size 1, but would be good to find the source of the problem before merging this to be sure.
Thanks a lot @danrbailey! Hmm interesting, was it deterministic (i.e. segfaulted consistently)? The CI is all passsing, I'll rebase this and take a look
It seems to be deterministic. I built with debug symbols enabled, but it wasn't anything obvious as far as I could tell.
Don't seem to be able to reproduce this. Here's my CMake command:
CMake Config
-D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/Users/nicholasa/openvdb_install -D CMAKE_CXX_FLAGS_INIT=-Wno-deprecated-declarations -D OPENVDB_CXX_STRICT=ON -D OPENVDB_CORE_SHARED=ON -D OPENVDB_CORE_STATIC=OFF -D OPENVDB_AX_SHARED=ON -D OPENVDB_AX_STATIC=OFF -D USE_EXPLICIT_INSTANTIATION=OFF -D USE_NUMPY=ON -D OPENVDB_PYTHON_WRAP_ALL_GRID_TYPES=ON -D OPENVDB_BUILD_PYTHON_UNITTESTS=ON -D LLVM_DIR=/opt/homebrew/opt/llvm@14/lib/cmake/llvm -D HOUDINI_ROOT=/Applications/Houdini/Current -D OPENVDB_BUILD_HOUDINI_PLUGIN=OFF -D OPENVDB_BUILD_DOCS=OFF -D OPENVDB_BUILD_UNITTESTS=ON -D OPENVDB_BUILD_PYTHON_MODULE=ON -D OPENVDB_BUILD_VDB_AX=ON -D OPENVDB_BUILD_AX=ON -D OPENVDB_BUILD_AX_BINARIES=ON -D OPENVDB_BUILD_AX_UNITTESTS=OFF -D OPENVDB_TESTS=PointReplicate
-- The CXX compiler identification is AppleClang 13.1.6.13160021
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /Library/Developer/CommandLineTools/usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Using ccache: /opt/homebrew/bin/ccache
-- Configuring CXX warnings
-- CMake Build Type: Release
-- Configuring for OpenVDB Version 10.0.1
-- Configuring for OpenVDB ABI Version 10
-- ----------------------------------------------------
-- ------------- Configuring OpenVDBCore --------------
-- ----------------------------------------------------
-- Found Boost: /opt/homebrew/lib/cmake/Boost-1.80.0/BoostConfig.cmake (found suitable version "1.80.0", minimum required is "1.73") found components: iostreams
-- Could NOT find PkgConfig (missing: PKG_CONFIG_EXECUTABLE)
-- Found TBB: /opt/homebrew/include (found suitable version "2021.5", minimum required is "2020.2") found components: tbb
-- Found Blosc: /opt/homebrew/lib/libblosc.dylib (found suitable version "1.21.1", minimum required is "1.17.0")
-- Found ZLIB: /Library/Developer/CommandLineTools/SDKs/MacOSX12.3.sdk/usr/lib/libz.tbd (found suitable version "1.2.11", minimum required is "1.2.7")
-- Looking for C++ include pthread.h
-- Looking for C++ include pthread.h - found
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
-- Found Threads: TRUE
-- The C compiler identification is AppleClang 13.1.6.13160021
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /Library/Developer/CommandLineTools/usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- ----------------------------------------------------
-- -------------- Configuring OpenVDBAX ---------------
-- ----------------------------------------------------
-- Performing Test HAVE_FFI_CALL
-- Performing Test HAVE_FFI_CALL - Success
-- Found FFI: /Library/Developer/CommandLineTools/SDKs/MacOSX12.3.sdk/usr/lib/libffi.tbd
-- Performing Test Terminfo_LINKABLE
-- Performing Test Terminfo_LINKABLE - Success
-- Found Terminfo: /Library/Developer/CommandLineTools/SDKs/MacOSX12.3.sdk/usr/lib/libcurses.tbd
-- Found ZLIB: /Library/Developer/CommandLineTools/SDKs/MacOSX12.3.sdk/usr/lib/libz.tbd (found version "1.2.11")
-- Found LibXml2: /Library/Developer/CommandLineTools/SDKs/MacOSX12.3.sdk/usr/lib/libxml2.tbd (found version "2.9.4")
-- Found LLVM: /opt/homebrew/opt/llvm@14/lib/cmake/llvm (found suitable version "14.0.6", minimum required is "10.0.0")
-- ----------------------------------------------------
-- ------------ Configuring OpenVDBPython -------------
-- ----------------------------------------------------
-- Found Python: /opt/homebrew/Frameworks/Python.framework/Versions/3.10/bin/python3.10 (found version "3.10.7") found components: Development.Module Interpreter NumPy
-- Found Python::Module: /opt/homebrew/opt/[email protected]/Frameworks/Python.framework/Versions/3.10/include/python3.10) (found suitable version "3.10.7", minimum required is "3.7")
-- Found Python::NumPy: /opt/homebrew/lib/python3.10/site-packages/numpy/core/include) (found suitable version "1.23.0", minimum required is "1.19.0")
-- Found Boost: /opt/homebrew/lib/cmake/Boost-1.80.0/BoostConfig.cmake (found suitable version "1.80.0", minimum required is "1.73") found components: python310 numpy310
CMake Deprecation Warning at openvdb_cmd/CMakeLists.txt:25 (message):
OPENVDB_BUILD_AX_BINARIES is deprecated. Use OPENVDB_BUILD_VDB_AX.
-- ----------------------------------------------------
-- ----------- Configuring OpenVDBBinaries ------------
-- ----------------------------------------------------
-- Could NOT find PkgConfig (missing: PKG_CONFIG_EXECUTABLE)
-- Found TBB: /opt/homebrew/include (found suitable version "2021.5", minimum required is "2020.2") found components: tbbmalloc
-- Found TBB: /opt/homebrew/include (found suitable version "2021.5", minimum required is "2020.2") found components: tbbmalloc
-- ----------------------------------------------------
-- ----------- Configuring OpenVDBUnitTests -----------
-- ----------------------------------------------------
-- Found GTest: /opt/homebrew/lib/cmake/GTest/GTestConfig.cmake (found suitable version "1.11.0", minimum required is "1.10")
-- Could NOT find PkgConfig (missing: PKG_CONFIG_EXECUTABLE)
-- Found TBB: /opt/homebrew/include (found suitable version "2021.5", minimum required is "2020.2") found components: tbbmalloc
-- Found ZLIB: /Library/Developer/CommandLineTools/SDKs/MacOSX12.3.sdk/usr/lib/libz.tbd (found suitable version "1.2.11", minimum required is "1.2.7")
-- Configuring done
-- Generating done
Just rebased, building @ 1e476667b6562f654b7054670552db5464664b14
Will check the CI has passed too
@danrbailey sorry, can reproduce this now! Will investigate
@danrbailey thanks for catching this, I've fixed this now!
@danrbailey thanks for catching this, I've fixed this now!
Sounds good, thanks! I'll take another look.