Minutes from 74th OpenVDB TSC meeting, Jan 5th, 2021, (EDT)

Attendees: *Nick* A., *Jeff* L., *Ken* M., *Dan* B.

Additional Attendees: JT Nelson (Blender),
Andre Pradhana (DW), Bruce Cherniak (Intel)

Regrets: *Peter* C.

Agenda:

1) Confirm quorum
2) Secretary
3) GitHub Issues
4) SIGGRAPH Course
5) VDB 7.2.1 Release and VDB 8.0.0 Release
6) Extrapolate
7) ASWF Video
8) Misc ground work
9) Next Meeting

1) Quorum was confirmed.

2) Secretary was Jeff Lait

3) GitHub Issues

PR#903: Wrong distance sign computation issue.

Touching spheres have a vanishing gradient at the tangent.  This means the Eikonal equation fails.  But the smoothing may also be responsible.  If you have no self intersections, openvdb is not necessarily best for converting to SDF.   The mesh is only treated as a suggestion as we work around many common errors.

If you look at plane of symmetry between two spheres, the gradient is less than one.  And as you go to the center it goes to zero.  Just because you have an SDF does not imply length of normal is always one.

Maybe we need an assume manifold option that works only with correct meshes.

Jeff will add a link to the meeting notes.

4) SIGGRAPH Course

Do we go for short or long course?  Ken, Dan, and Jeff confirmed.  But AX isn't brand new?  But courses are not for solely new stuff.  We need a mock-up of the schedule.  Nick will confirm in a week.

5) VDB 7.2.1 Release and VDB 8.0.0 Release

Patch release was to fix include bug and node manager change.  We should write a test to verify the copying is occurring the way we expect.  The operator needs to be copied, but accidentally references were left behind.

The 8.0.0 release has most stuff.  No extrapolate SOP, but look forward to that in 8.1.  

Release announcement isn't done yet.  Ken will do the announcement.

The ABI changes for trivial types is guarded by ABI.

One issue bulding with Houdini 18.0, which uses boost 1.6.1.  VFX19 is now 1.6.6.    18.0 uses the older VFX platform, so to comply with 18.0's VFX platform causes a mismatch.  If we remove support for a VFX platform, we should remove corresponding versions of Houdini.

We will add a note that Houdini18.0 uses boost 1.6.1 so the warning has to be disabled.

Note: Post meeting I verified that Houdini 18.0 is VFX19.   Houdini 18.0 uses Boost 1.6.1, but since its symbols are hidden it is irrelevant for its compliance to VFX19.   (There is a note to that effect in the licenses page)

6) Extrapolate

Found a crash bug where multiple fields were updated.  Checking to see if it is fixed and will push soon.

7) ASWF Video

Embedded version of video, should we put it on the homepage?  People are in favour.

Can we secure some new images?  Approval can be long and slow.  We can get ASWF to approve images rather than going internally.  Some in DW have already started a process to get permission.  Maybe a gallery if we get too many images.

8) Misc ground work

a) TBB Deprecations

We have hit the wall for this as the deprecations are now gone.

There is a comment in LeafBuffer that suggests std::atomic is insufficient, but it appears to have std::memory_order now.  It is likely std::memory_release is the correct option.

Ken is to investigate this.

b) Blosc 

What are the valid versions?

c) PRs to make optional

Various PRs to make dependencies optional - try to push these through.

c) i) Half.h

We could add #include, implement our own, or a software/hardware option.

There is a component that uses EXR for output.

OpenEXR should be an optional dependency.  Do we do a link time, run time, or compile time error?  We wanted a pure #define independent header, but that then means that you run-time discover the missing functionality.

Addressing the raytracing tool is straightforward.  But removing half is a problem - all the website files stop working.

How do we include half quickly?  What if we just include it?  We'd have to namespace it.

Jeff is to investigate this.

d) Release notes clashing

Every time you go to make a PR you get conflicts in the release notes as they stomp on each other.

e) Automating Releases

This is a huge amount of work due to rebuilding documentation.

It is rebuilding the doxygen that is painful.  Maybe a draft github release that triggers an action to do the doc building.  The doc building needs to be done on the cloud, not locally.

Should we do more frequent releases?

f) Move fully to GTest

Move AX over.

9) Next Meeting

January 12th, 2021.  1pm-2pm EST (GMT-5)
