Skip to content

Commit 58e43d3

Browse files
authored
Merge pull request #1756 from apradhana/TSC_Jan16_2024
Add TSC notes from 2024-01-16.
2 parents 14714d0 + 18d9a96 commit 58e43d3

File tree

1 file changed

+106
-0
lines changed

1 file changed

+106
-0
lines changed

tsc/meetings/2024-01-16.md

Lines changed: 106 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,106 @@
1+
Minutes from OpenVDB TSC meeting, January 16th, 2024
2+
3+
Attendees: *Jeff* L., *Dan* B., *Ken* M., *Richard* J., *Andre* P.,
4+
*Greg* H.
5+
6+
Additional Attendees: Marten Bojsen-Hansen (Autodesk),
7+
Paul Mark di Francesco (SideFX), Phill Mayer (Autodesk),
8+
Yannick Pomerleau, Jonah Friedman
9+
10+
Regrets: *Nick* A.,
11+
12+
Agenda:
13+
14+
1) Confirm quorum
15+
2) Secretary
16+
3) Autodesk VTT
17+
4) Next meeting
18+
19+
------------
20+
21+
1) Confirm quorum
22+
23+
Quorum is present.
24+
25+
2) Secretary
26+
27+
Secretary is Andre Pradhana.
28+
29+
3) Autodesk VTT
30+
31+
The TSC likes the idea of incorporating VTT into the VDB project because VTT
32+
is an orthogonal and complementary data structure to a VDB. VDB is sparse
33+
(VDB has a notion of an activation) but non-adaptive. VTT is dense, but adaptive
34+
in values. Fundamentally, it covers two cases of adaptive versus sparse.
35+
It makes sense to have both in one system.
36+
37+
TSC asks if the name VTT can be changed because it sounds too similar to VDB,
38+
which may cause confusion when discussing the data structure. It is good to
39+
highlight the feature of VTT being dense and adaptive. The Autodesk team is
40+
not married to the name VTT.
41+
42+
Tile means different things in VDB and VTT. In VDB this means a constant value
43+
that covers an index space that is larger than one by one by one (used for
44+
example for the interior of a level-set). In VTT, a tile is a node.
45+
46+
There is some concern about repeated implementations of algorithms that are
47+
subtly different for different cases. Perhaps VDB can break things down into
48+
more building blocks, which facilitates better integration with having an
49+
adaptive grid. One suggestion is to have a superclass of the BaseGrid that
50+
splits into a sparse grid versus an adaptive grid. Specific tools, such as
51+
convert to polygons, should accept either type and know how to switch itself.
52+
53+
Autodesk is looking to open-source NanoVTT first. TSC reiterates that we are
54+
interested in the C++ implementation of VTT also. We should make sure that there
55+
is a way forward to incorporate VTT if NanoVTT is already incorporated into the
56+
VDB project.
57+
58+
A lesson from the VDB project is that object-oriented nature of the data
59+
structure is limiting. We are trying to move away, e.g. by moving signed
60+
flood fill out of the leaf nodes or a tree into tools.
61+
62+
VTT has a lossy conversion to VDB because the adaptive information is not
63+
supported in VDB. Needs more clarification on the conversion from a VDB to a
64+
NanoVTT and if this conversion requires the whole OpenVTT library.
65+
66+
VTT is considering having two types of grids, one static and another dynamic.
67+
If a user needs to do modification (e.g. create a new grid), they can switch to
68+
switch to a dynamic grid.
69+
70+
Right now, VTT has a general serialization format in Bifrost. The hope is to
71+
use .vdb format if it gets adopted. Autodesk has a conversion from VTT to a
72+
single VDB right now, but they can look into converting a VTT into a stack of
73+
VDBs. It is lossy. It uses Bifrost SDK.
74+
75+
VTT doesn’t have a transform. It is usually handled by higher-level tools,
76+
such as Maya or Arnold. One possibility is to use a VDB-like transform in VTT,
77+
but more conversation is needed for a technical decision. The caveat is VDB has
78+
a frustum transform. There is a question about limiting the dense volume to a
79+
meter cubed, which works well with frustum transform.
80+
81+
On frustum transform, Houdini can produce this. Dan Bailey added a feature for
82+
the frustum rasterizer.
83+
84+
NanoVTT was first created to address the issue that software, other than Arnold,
85+
should be able to render VTT volumes and to move to converge to VDB.
86+
87+
We need to focus on the Minimum Viable Product (MVP) and be pragmatic:
88+
- The conversion from VTT to VDB
89+
- Serialization to .vdb format
90+
- Sampling
91+
- Regrading aspect of it. Top up and bottom down regrading.
92+
(like a refinement and coarsening oracle on an adaptive tree).
93+
94+
VTT team says that this is along the line of what they are thinking because
95+
Bifrost is a visual programming language. They are thinking about what
96+
traversals should be exposed to users to use the volumes in Bifrost.
97+
98+
There is a VTT Cookbook example.
99+
100+
Ideas to follow up on: create a super base class, more thoughts on transform.
101+
The main concern is that we do not want to fragment the VDB project. We need to
102+
follow up with a written feedback.
103+
104+
4) Next meeting
105+
106+
Next meeting is on January 23rd, 2024. 2pm-3pm EDT (GMT-4).

0 commit comments

Comments
 (0)