Files
UnrealEngine/Engine/Source/ThirdParty/OpenVDB/openvdb-12.0.0/tsc/meetings/2022-07-12.md
2025-05-18 13:04:45 +08:00

3.9 KiB

Minutes from 139th OpenVDB TSC meeting, July 12th, 2022, (EDT)

Attendees: Ken M., Jeff L., Andre P, Nick A., Dan B., Rich J.

Additional Attendees: JT Nelson (Blender), Peyton Murray, Greg Hurst (United Therapeutics), Sebastian Gaida

Regrets:

Agenda:

  1. Confirm quorum
  2. Secretary
  3. Forum
  4. Siggraph
  5. vdb_tool
  6. NanoVDB
  7. VDB File Format
  8. Boost
  9. VDB Clip and VDB SOP
  10. Outstanding PRs
  11. Next Meeting

  1. Confirm quorum

Quorum is present.

  1. Secretary

Secretary is Dan Bailey.

  1. Forum

Nothing to discuss.

  1. Siggraph

Who is attending from TSC? Ken, Jeff, Dan, Rich. ASWF has scheduled an OpenVDB session 1:50pm - 2:30pm on Tuesday 9th August as part of their Open Source Days. Need a summary by 18th July to go into the Siggraph schedule, Ken to organize. Greg may also be able to attend, would be good to talk about Mathematica in this session. Rough plan is to talk about any new or noteworthy features in VDB 9.x and what's planned for VDB 10.x.

  1. vdb_tool

Ken has taken Nick's feedback on board and introduced a Python binding to the vdb_tools based on using CPython as a draft. Was not too complicated, but introduces an optional Python binding, so may still be worthwhile keeping the existing solution as well. Also, lots of new docs and some additional examples to help explain usage of the tool.

  1. NanoVDB

Ken has been looking at adding a similar solution to PointIndexGrid where data can be stored out-of-tree. It is lightweight and only requires a ValueMask grid. Primary benefit is cases where user wants to store multiple channels per voxel.

NeuralVDB likely to be presented at Siggraph as well, will still need TSC approval before including in the project.

  1. VDB File Format

Dan highlighted that embedding .vdb files in .bgeo.sc typically results in smaller file sizes. This is primarily due to bgeo using a larger block size for Blosc compression than VDB which is more efficient and VDB storing uncompressed topology. VDB delayed-load cannot be used when embedded in bgeo files although Blosc does allow seeking so technicially it should be possible to support.

Should re-consider what we can do about improving VDB file format, will need to continue supporting old VDB file format, but is there an opportunity to introduce a new one that is more efficient? One option might be to pull out the IO from the Grid and Tree classes as a starting point.

  1. Boost

Wish to revisit the work previously done to make Boost an optional dependency (PR823 does not result in a change in Grid ABI). One major piece is being able to disable delay-loading as this has a mandatory dependency on boost due to using interprocess. Does not appear that C++17 will help here as std::filesystem does not contain interprocess communication. Dan to resurrect PR823 and bring it up-to-date.

  1. VDB Clip and VDB SOP

Jeff to share the code behind the VDB SOP that relates to camera overscan. Plan is still to include the VDB SOP in the repo.

  1. Outstanding PRs
  • PR1430 - Nick has made some significant refactoring to VolumeToMesh, though it does move some failures from run-time to compile-time. TSC agrees this is a good thing in general. Jeff points out that constexpr if can help alleviate fallout from this.

  • PR1432 - Convex hull activation. Only hiccup is that it is H19.5 only due to the new Convex Hull API in HDK. In theory should be possible to turn this into a tool in the core library at a later date. Missing SOP on the PR which will need H19.5 conditional CMake logic.

  • PR1426 - Draft PR from Nick for adjusting leaf value iterators to minimize performance cost due to the delay-load atomics. Still discussing the larger topic of what to do about delay-loading. General desire to be able to use a grid with this feature disabled. This PR may be a more practical solution.

  1. Next Meeting

Next meeting is on July 19th, 2022. 1pm-2pm EDT (GMT-4).