Minutes from OpenVDB TSC meeting, September 29th, 2023 Attendees: *Ken* M., *Jeff* L., *Andre* P, *Dan* B. Regrets: Attendees: *Greg* H., *Rich* J. *Nick* A. Additional Attendees: Karl Marrett Agenda: 1) Confirm quorum 2) Secretary 3) Explicit Instantiation of the Tree 4) VTT Integration 5) Reproducible Workflows 6) Next meeting ------------ 1) Confirm quorum Quorum is present. 2) Secretary Secretary is Jeff Lait 3) Explicit Instantiation of the Tree We are still implicitly instantiating the Tree. But we hadn't got that far in the explicit instantiation. If Tree was instantiated, the function templates inside get instantiated, and it becomes a big rabbit hole to get it working. Also the goal is to remove stuff from the Tree class to make this faster. Tools were the first layer to be done. 4) VTT Integration Cookbook would suffice rather than actual code for establishing. Do we discuss what the definition of Tile is? How do we make sure our terminology is consistent? What of naming? VTT is confusing with VDB. What about Multires or Adaptive grid? Vs Sparse grid? Can we make Grid the new baseclass? It has a Tree() that returns a reference so is hard to nullify. But TreeBase could the right point to inject? There is no activation in VTT. But there is a box from the 2^32 range. An ROI mask could be done with a VDB or a VTT with coarse tiles. What does it look like to convert between them? Does VDB become the finest resolution of the VTT? By Friday we'll share the google doc. VTT should be a first class citizen. 5) Reproducible Workflows Karl Marrett presented a proposal to improve OpenVDBs interoperatbility with package systems, nix in particular. Add some files to root of repository to make it understandable by package managers. Compliment of openvdb is distribution of VDB. So if we can commoditize distribution, we'll improve things. Package managers are not commoditized, they are slow, specific, and often useless for active developers. Git sort of transcends package managers, it has the idea of forking, etc. Nix Flake is a decentralized package manager. Takes in flake.lock - specifies specific revisions of different repos. Can output to a docker-like file. Semantic versioning is built-in as well. So can auto-bump based on latest versions. New libraries would have to be added in if they were not already in NIX. NanoVDB is not currently supported. MacOS is not supported as there is a broken package somewhere. Can we get a CI job on it? 6) Next meeting Next meeting is on September 26th, 2023. 2pm-3pm EDT.