Skip to content

Commit 49dc158

Browse files
authored
Merge pull request #1698 from danrbailey/update_release_notes_11_0
Update change notes
2 parents fc4a559 + 04f4ee3 commit 49dc158

File tree

4 files changed

+202
-42
lines changed

4 files changed

+202
-42
lines changed

CHANGES

Lines changed: 86 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,98 @@
11
OpenVDB Version History
22
=======================
33

4-
Version 11.0.0 - In Progress
4+
Version 11.0.0 - October 31, 2023
55

66
This version introduces ABI changes relative to older major releases,
77
so to preserve ABI compatibility it might be necessary to define the
88
macro OPENVDB_ABI_VERSION_NUMBER=N, where, for example, N is 9 for
99
Houdini 19.5 and 10 for Houdini 20.0.
1010

11+
OpenEXR 2 and Python 2 are no longer supported.
12+
Boost is now an optional OpenVDB dependency.
13+
14+
OpenVDB:
15+
Improvements:
16+
- Removed last traces of Boost when OPENVDB_USE_DELAYED_LOADING is OFF
17+
[Contributed by Brian McKinnon]
18+
19+
NanoVDB:
20+
API Changes:
21+
- Minor version changed from 4 to 6 (major version is unchanged since the ABI is
22+
preserved)
23+
- nanovdb::Vec3R is deprecated. Use nanovdb::Vec3d instead.
24+
- nanoToOpenVDB now accepts the index of the NanoVDB grid contained inside of a
25+
GridHandle to be converted to OpenVDB.
26+
- DataTypes are now public in all node types.
27+
- GridMetaData can be copied.
28+
- Major improvements to GridBuilder.h, which allows users to construct grids
29+
with random access on the host
30+
- The move constructor now requires the GridBuffer to actually contain a
31+
valid grid
32+
- Moved CudaDeviceBuffer.h to cuda/CudaDeviceBuffer.h
33+
- Added nanovdb::pi()
34+
- Introduced a new extendable API for acceleration of custom random-access
35+
get/set methods on ValueAccessor, e.g. getValue(ijk), isActive
36+
(ijk), probeValue(ijk, val).
37+
- Added nanovdb::BitFlags.
38+
- Added minComponentAtomic and maxComponentAtomic methods on the GPU to
39+
nanovdb::Vec2 and nanovdb::Vec3. Added expandAtomic and intersectAtomic on
40+
nanovdb::BBox, and expandAtomic in nanovdb::Coord.
41+
- Added nanovdb::Map constructors.
42+
- Mask:: DenseIterator, Mask:: setOnAtomic,Mask:: setOffAtomic.
43+
- Improved and renamed device function that converts voxels into a grid -
44+
nanovdb::cudaVoxelsToGrid
45+
46+
New Features:
47+
- Added a new grid class called IndexGrid in 4 flavors (Index, OnIndex,
48+
IndexMask, OnIndexMask).
49+
- Several new ways to construct and modify NanoVDB grids on the GPU. See
50+
CreateNanoGrid.h and CudaPointsToGrid.cuh.
51+
- New device function to convert points into a compact grid -
52+
nanovdb::cudaPointsToGrid
53+
- Added cuda/CudaUtils.h and cuda/GpuTimer.h with cuda utility functions
54+
- Added cuda/CudaPointToGrids.cuh that constructs device grids from points or
55+
voxels
56+
- Added cuda/CudaIndexToGrid.cuh that converts IndexGrids and values into
57+
regular Grids
58+
- Added cuda/CudaSignedFloodFill.cuh that performs signed-flood filing on SDF on
59+
the GPU
60+
- Added cuda/CudaAddBlindData.cuh that adds blind data to an existing grid on the
61+
GPU
62+
- Added cuda/CudaGridChecksum.cuh that computes CRC32 checksums of grids on the
63+
GPU
64+
- Added cuda/CudaGridHandle.cuh that handles grids on the GPU
65+
- Added cuda/CudaNodeManager.cuh that constructs a NodeManager on the GPU
66+
- Introduced new (dummy) build-type nanovdb::Points and
67+
nanovdb::GridType::PointIndex
68+
- Introduced new types nanovdb::GridType::Vec3u16 and nanovdb::GridType::Vec3u8
69+
used for compressed representations of point coordinates as blind data
70+
- Added PrefixSum.h for concurrent computation of prefix sum on the host
71+
- Primitives.h can now create grids on the CPU with SDF, FOG, and point or
72+
torus
73+
74+
Improvements:
75+
- Transition from C++11 to C++17 in NanoVDB.h and its tools
76+
- Improve NanoVDB Build Traits.
77+
- CreateNanoGrid.h is replacing GridBuilder.h, IndexGridBuilder.h and
78+
OpenToNanoVDB.h.
79+
- Syncing PNanoVDB.h with NanoVDB.h.
80+
81+
Build:
82+
- Support for OpenEXR 2.X has been removed.
83+
- Boost is no longer required if OPENVDB_USE_DELAYED_LOADING is OFF
84+
- Better support for building with external package configurations
85+
with CMAKE_FIND_PACKAGE_PREFER_CONFIG=ON.
86+
87+
Python:
88+
- Removed Python 2 support.
89+
[Contributed by Matthew Cong]
90+
- Removed explicit bindings for Math types.
91+
[Contributed by Matthew Cong]
92+
- Improved type casting for TypedMetadata.
93+
[Contributed by Matthew Cong]
94+
95+
1196
Version 10.1.0 - October 11, 2023
1297

1398
Highlights:

doc/changes.txt

Lines changed: 116 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,122 @@
22

33
@page changes Release Notes
44

5+
@htmlonly <a name="v11_0_0_changes"></a>@endhtmlonly
6+
@par
7+
<B>Version 11.0.0</B> - <I>October 31, 2023</I>
8+
9+
@par
10+
<BLOCKQUOTE>
11+
This version introduces ABI changes relative to older major releases, so to
12+
preserve ABI compatibility it might be necessary to define the macro
13+
<TT>OPENVDB_ABI_VERSION_NUMBER=</TT><I>N</I>.
14+
</BLOCKQUOTE>
15+
16+
@par
17+
<BLOCKQUOTE>
18+
OpenEXR 2 and Python 2 are no longer supported.
19+
</BLOCKQUOTE>
20+
21+
<BLOCKQUOTE>
22+
Boost is now an optional OpenVDB dependency.
23+
</BLOCKQUOTE>
24+
25+
@par
26+
OpenVDB:
27+
Improvements:
28+
- Removed last traces of Boost when <TT>OPENVDB_USE_DELAYED_LOADING</TT> is <TT>OFF</TT>
29+
<I>[Contributed&nbsp;by&nbsp;Brian&nbsp;McKinnon]</I>
30+
31+
@par
32+
NanoVDB:
33+
API Changes:
34+
- Minor version changed from 4 to 6 (major version is unchanged since the ABI
35+
is preserved)
36+
- @c nanovdb::Vec3R is deprecated. Use @c nanovdb::Vec3d instead.
37+
- <TT>nanoToOpenVDB</TT> now accepts the index of the NanoVDB grid contained
38+
inside of a GridHandle to be converted to OpenVDB.
39+
- DataTypes are now public in all node types.
40+
- GridMetaData can be copied.
41+
- Major improvements to <TT>GridBuilder.h</TT>, which allows users to
42+
construct grids with random access on the host
43+
- The move constructor now requires the GridBuffer to actually contain a valid
44+
grid
45+
- Moved <TT>CudaDeviceBuffer.h</TT> to <TT>cuda/CudaDeviceBuffer.h</TT>
46+
- Added @c nanovdb::pi()
47+
- Introduced a new extendable API for acceleration of custom random-access
48+
get/set methods on ValueAccessor, e.g. @c getValue(ijk), @c isActive
49+
(ijk), @c probeValue(ijk, val).
50+
- Added @c nanovdb::BitFlags.
51+
- Added @c minComponentAtomic and @c maxComponentAtomic methods on the GPU
52+
to @c nanovdb::Vec2 and @c nanovdb::Vec3. Added @c expandAtomic and @c
53+
intersectAtomic on @c nanovdb::BBox, and @c expandAtomic in @c
54+
nanovdb::Coord.
55+
- Added @c nanovdb::Map constructors.
56+
- <TT>Mask:: DenseIterator</TT>, <TT>Mask:: setOnAtomic</TT>,<TT>Mask::
57+
setOffAtomic</TT>.
58+
- Improved and renamed device function that converts voxels into a grid - @c
59+
nanovdb::cudaVoxelsToGrid
60+
61+
@par
62+
New Features:
63+
- Added a new grid class called IndexGrid in 4 flavors (Index, OnIndex,
64+
IndexMask, OnIndexMask).
65+
- Several new ways to construct and modify NanoVDB grids on the GPU. See
66+
<TT>CreateNanoGrid.h</TT> and <TT>CudaPointsToGrid.cuh</TT>.
67+
- New device function to convert points into a compact grid -
68+
nanovdb::cudaPointsToGrid
69+
- Added <TT>cuda/CudaUtils.h</TT> and <TT>cuda/GpuTimer.h</TT> with cuda
70+
utility functions
71+
- Added <TT>cuda/CudaPointToGrids.cuh</TT> that constructs device grids from
72+
points or voxels
73+
- Added <TT>cuda/CudaIndexToGrid.cuh</TT> that converts IndexGrids and values
74+
into regular Grids
75+
- Added <TT>cuda/CudaSignedFloodFill.cuh</TT> that performs signed-flood
76+
filing on SDF on the GPU
77+
- Added <TT>cuda/CudaAddBlindData.cuh</TT> that adds blind data to an existing
78+
grid on the GPU
79+
- Added <TT>cuda/CudaGridChecksum.cuh</TT> that computes <TT>CRC32</TT>
80+
checksums of grids on the GPU
81+
- Added <TT>cuda/CudaGridHandle.cuh</TT> that handles grids on the GPU
82+
- Added <TT>cuda/CudaNodeManager.cuh</TT> that constructs a NodeManager on the
83+
GPU
84+
- Introduced new (dummy) build-type @c nanovdb::Points and @c
85+
nanovdb::GridType::PointIndex
86+
- Introduced new types @c nanovdb::GridType::Vec3u16 and @c
87+
nanovdb::GridType::Vec3u8 used for compressed representations of point
88+
coordinates as blind data
89+
- Added <TT>PrefixSum.h</TT> for concurrent computation of prefix sum on the
90+
host
91+
- <TT>Primitives.h</TT> can now create grids on the CPU with SDF, FOG, and
92+
point or torus
93+
94+
@par
95+
Improvements:
96+
- Transition from <TT>C++11</TT> to <TT>C++17</TT> in <TT>NanoVDB.h</TT> and
97+
its tools
98+
- Improve NanoVDB Build Traits.
99+
- <TT>CreateNanoGrid.h</TT> is replacing <TT>GridBuilder.h</TT>,
100+
<TT>IndexGridBuilder.h</TT> and <TT>OpenToNanoVDB.h</TT>.
101+
- Syncing <TT>PNanoVDB.h</TT> with <TT>NanoVDB.h</TT>.
102+
103+
@par
104+
Build:
105+
- Support for <TT>OpenEXR 2.X</TT> has been removed.
106+
- Boost is no longer required if <TT>OPENVDB_USE_DELAYED_LOADING</TT> is
107+
<TT>OFF</TT>
108+
- Better support for building with external package configurations with
109+
<TT>CMAKE_FIND_PACKAGE_PREFER_CONFIG=ON</TT>.
110+
111+
Python:
112+
- Removed Python 2 support.
113+
<I>[Contributed&nbsp;by&nbsp;Matthew&nbsp;Cong]</I>
114+
- Removed explicit bindings for Math types.
115+
<I>[Contributed&nbsp;by&nbsp;Matthew&nbsp;Cong]</I>
116+
- Improved type casting for TypedMetadata.
117+
<I>[Contributed&nbsp;by&nbsp;Matthew&nbsp;Cong]</I>
118+
119+
120+
5121
@htmlonly <a name="v10_1_0_changes"></a>@endhtmlonly
6122
@par
7123
<B>Version 10.1.0</B> - <I>October 11, 2023</I>

pendingchanges/nanovdb.txt

Lines changed: 0 additions & 31 deletions
This file was deleted.

pendingchanges/vdb11.txt

Lines changed: 0 additions & 10 deletions
This file was deleted.

0 commit comments

Comments
 (0)