Files
UnrealEngine/Engine/Source/ThirdParty/OpenVDB/openvdb-12.0.0/tsc/meetings/2021-10-26.md
Brandyn / Techy fcc1b09210 init
2026-04-04 15:40:51 -05:00

5.9 KiB

Minutes from 110th OpenVDB TSC meeting, October 26th, 2021, (EDT)

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

Additional Attendees: JT Nelson (Blender), Bruce Cherniak (Intel), Greg Hurst (United Therapeutics), Kyle Wardlow (United Therapeutics)

Regrets:

Agenda:

  1. Confirm Quorum

  2. Secretary

  3. Forum

  4. Release 9

  5. PR-1215

  6. PR-1182

  7. PR-1202

  8. Post Version 9

  9. TAC Update

  10. PR-1219

  11. Next meeting

  12. Confirm Quorum

Quorum is present.

  1. Secretary

Secretary is Andre Pradhana.

  1. Forum

There is nothing on the forum to discuss.

  1. Release 9

We will release OpenVDB 9.0.0 on Friday, October 29, 2021. If we have things to fix, we will release a patch. Dan says that the release process is relatively quick, e.g. there are automated processes to build the documentation through CI.

What needs to get into OpenVDB version 9.0.0: (a) NanoVDB (PR-1215); (b) explicit template instantiation (PR-1182); and (c) OpenVDB AX python hook fix (PR-1202). Nick says that Point Statistics (PR-997) does not need to get into version 9, since it has a lot of feedback from Dan.

Ken asks who can do the release this time. Andre volunteers. We agree to have all the PRs to be merged to master by Friday at noon Pacific Time. The checklist is in tsc/process/release.md.

Nick thinks that version 9 should contain all the pending changes that are listed in version 8.2. We will talk more about our plan to release 8.2 and what should go there.

  1. PR-1215

The purpose of this PR is to consolidate NanoVDB's build system with OpenVDB, and to get the CI to pass. Nick fixed the majority of the issues to make the build system to work on different platforms and to get the CI to pass.

CNanoVDB does not work on Windows, but PNanoVDB.h does. The issue is because of a zero-size array in CNanoVDB.h. PNanoVDB.h is a more-complete wrapper for the original NanoVDB.h written in C99. Jeff Lait is to add documentation to explain this issue on SourceTree.md.

Ken asks if we can retire CNanoVDB.h in the future. Jeff says that it is possible.

Andre tried to put all of the NanoVDB documentation in the same place as the root OpenVDB documentation. The mark-down files are now included in the OpenVDB documentation page, but a few html features are not supported by the mark-down. Nick says that in the past, the documentation is built through the release process and we can do the same thing this time.

Nick mentions the main problem with building and running NanoVDB on windows (the executables). Currently, OpenVDB allows you to build a static and shared version of the library in a single pass of CMake. The default behavior targets the dynamic c runtime for shared library build, and targets the static c runtime library for static library build on Windows. However, CMake will link libraries to the dynamic c runtime no matter what kind of build you are choosing. This makes the current NanoVDB configuration to build against dynamic c runtime. We have two options: (a) change OpenVDB to target the dynamic c runtime, or (b) change NanoVDB to be configured the same way OpenVDB behaves. Option (a) means that if you want to build a static OpenVDB library against a different runtime, then you need to run cmake twice. Jeff asks Edward. Edward says that he builds against the OpenVDB static library and we expect it to be statically linked against the static version of c runtime. Edward hopes that we don't change the default behavior necessarily.

Andre mentions three things that he needs to check: (a) Andre is asking a friend to check NanoVDB install on Windows; (b) building NanoVDB against an preinstalled OpenVDB library; (c) compiling NanoVDB with NANOVDB_USE_TBB=OFF. He previously observed a problem with the compilation when the flag is off. Andre will double check this.

Nick thinks that it will be nice to have a CI checking a NanoVDB install against a pre-existing OpenVDB library. This can go in after version 9. Nick already added CI against gcc and clang. Dan asks if it is worth it to add MacOS 11 and Windows 2022 environments to the CI.

  1. PR-1182

This is support for explicit template instantiation. Dan prefers that this will get in version 9.0.0 and if there is any problem, to fix the issue in v 9.0.1. Explicit template instantiation is enabled by default. Jeff will try to install this and build Houdini against it to test that it works. Dan thinks it's a great idea and that Houdini will get the benefit of more efficient compile time. Jeff will follow up with that and this PR will get into master, pending verification from Jeff.

  1. PR-1202

PR-1202. Nick will merge this PR. It's the AX platform hook, which is an update to the Python module. Rich has approved it.

  1. Post Version 9

Preliminary list for post version 9 includes multi-resolution grid, surfacing, and NanoVDB viewer. Ken has been talking with Autodesk about their intent to contribute their multiresolution grid data structure to the OpenVDB project. Robert Bridson may be involved.

Nick mentions that it will be good if the person who wrote the NanoVDB viewer to be involved in getting the NanoVDB viewer to the repository.

  1. TAC Update

Ken notified TAC that we will release OpenVDB 9.0 by Friday, 10/29/2021. Ken claimed that we will get support for OpenEXR 3, NanoVDB, and explicit template instantiation in OpenVDB version 9. He also mentioned about the plan to get multi-resolution grid, surfacing, and NanoVDB viewer for post-9 release.

Dan asks Ken to update the TAC after we successfully release OpenVDB 9.0.0.

Dan asks Ken about a question from Larry Gritz if the NanoVDB that is released in version 9.0.0 will include the compressed NanoVDB support. The answer is yes.

  1. PR-1219

Greg Hurtz submitted a PR on multithreaded evalMinMax using the DynamicNodeManager class. This is PR-1219.

  1. Next meeting

Next meeting is November 2nd, 2021. 12pm-1pm EST (GMT-5).