Skip to content

Commit ce18756

Browse files
committed
Update changes.
Signed-off-by: apradhana <andre.pradhana@gmail.com>
1 parent 1db29a9 commit ce18756

25 files changed

+217
-115
lines changed

CHANGES

Lines changed: 103 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,110 @@
11
OpenVDB Version History
22
=======================
33

4-
Version 10.0.2 - In development
4+
Version 10.1.0 - October 10, 2023
5+
OpenVDB:
6+
New features:
7+
- Added points::replicate() for the replication of PointDataGrid points
8+
and attributes.
9+
10+
Improvements:
11+
- OpenVDB Python bindings are now implemented using pybind11 instead of Boost.Python.
12+
[Contributed by Matthew Cong]
13+
- Fix int-in-bool-context GCC9+ warnings by switching to use constexpr if.
14+
- Upgraded OpenVDBs internal half representation to IMath 3.1.6. Brings
15+
conversion support using F16C instructions (if enabled using -mf16c) and
16+
the removal of the exponent lookup table in favor of bit shifting.
17+
- LevelSetRebuild includes disabled code that uses this for
18+
resampling level sets - the original grid is used as the true
19+
sign value. However, due to differences between
20+
polygonalization and trilinear interpolation, it cannot be used
21+
directly. The code is provided so we can learn from this
22+
mistake.
23+
- boost::uuid removed from Archive, instead std::random_device is used
24+
directly to generate UUID-like objects.
25+
- Moved all cases of file static/global variables which relied on non-trivial
26+
construction into function scopes as static locals. These would previously
27+
initialize themselves on start-up in a non-deterministic, compiler-dictated
28+
order(static-initialization-order-fiasco). This order is now defined by the
29+
program's execution.
30+
- Introduced openvdb::make_index_sequence to solve clang compilations
31+
issues with compiler built-in index_sequence implementations.
32+
- Introduced openvdb::TupleList to wrap std::tuple and provide interface
33+
interop methods with openvdb::TypeList.
34+
- Added OPENVDB_FORCE_INLINE, OPENVDB_LIKELY and OPENVDB_UNLIKELY macros.
35+
36+
API changes:
37+
- openvdb/tools/MeshToVolume's meshToVolume takes two
38+
new optional arguments to provide an interior test oracle and an
39+
interior testing methods. These allow the default
40+
outside-flood-fill to be replaced if the actual sidedness can be
41+
known.
42+
[Contributed by Tomas Skrivan]
43+
- PagedArray iterators no longer derive from std::iterator
44+
(but remains standard compliant).
45+
- Significant infrastructural change to the ValueAccessor header and
46+
implementation. All ValueAccessor specializations have been consolidated
47+
into a single class which supports all possible ValueAccessor configurations
48+
using index_sequences. Backward compatible declarations have been provided.
49+
The new ValueAccessor implementation is marked as final.
50+
51+
Bug Fixes:
52+
- Fixed a build issue where Boost was not being pulled in when
53+
OPENVDB_USE_DELAYED_LOADING was set to OFF.
54+
- Fixed the constants used in openvdb::math::Coord::hash() and nanovdb::Coord::hash()
55+
to correctly be prime numbers (note that this changes the result of these methods).
56+
[Contributed by Benedikt Mersch]
57+
- Improved support for compiling with C++20.
58+
[Contributed by Denys Maletskyy and Jérémie Dumas]
59+
- OpenVDB's CMake no longer modifies the BUILD_SHARED_LIBS variable.
60+
[Reported by Maksim Shabunin]
61+
- Internal counters in tree::RangeIterator were limited to 32bit precision.
62+
They are now extended to size_t.
63+
[Reported by SpaceX]
64+
- Fixed a bug when compiling with -fvisibility=hidden and GCC 11 which
65+
would cause a crash in openvdb::initialize().
66+
- Fixed a bug with LeafManager which wouldn't correctly
67+
initialize its LeafNode array for single level Tree configurations
68+
i.e. RootNode<LeafNode> (bug introduced in 7.2.0).
69+
[Reported by @lanwatch]
70+
- Fixed a bug with LeafNodeBool Topology constructor with designated
71+
on/off values which wouldn't apply them correctly.
72+
[Reported by @hozhaoea]
73+
- Fixed a compilation error that would be encountered when attempting to
74+
enable the SSE4.2 or AVX SIMD options on non-x86 based platforms.
75+
- The Half.h is no longer built with an internal lookup table, but
76+
explicitly selects the non-LUT version and disables the creation of
77+
a LUT. This is required to avoid symbol conflicts with
78+
different namespaced OpenVDB builds.
79+
- Fixed a compilation issue with the min() and max() methods on Stencils
80+
in openvdb/math/Stencils.h.
81+
[Reported by Samuel Mauch]
82+
- Introduced openvdb::make_index_sequence to solve clang compilations
83+
issues with compiler builtin index_sequence implementations.
84+
- Introduced openvdb::TupleList to wrap std::tuple and provide interface
85+
interop methods with openvdb::TypeList.
86+
- Added OPENVDB_FORCE_INLINE, OPENVDB_LIKELY and OPENVDB_UNLIKELY macros.
587

88+
OpenVDB AX:
89+
Improvements:
90+
- Added support for LLVM 15.
91+
92+
Bug Fixes:
93+
- Fixed a bug in AX on older X86 hardware which could cause a crash when
94+
accessing point attributes with half compression (bug introduced in 9.1.0).
95+
- Fixed a build issue with AX on 32-bit platforms.
96+
[Reported by Mathieu Malaterre]
97+
- Fixed an incorrect option in the `vdb_ax` command line tool where the default
98+
optimization level was set to NONE instead of O3 (issue introduced in 10.0.0).
99+
100+
Houdini:
101+
Improvements:
102+
- Added Preserve Holes option to VDB From Polygons that uses the
103+
fast winding oracle to not collapse holes in polygonal geometry.
104+
105+
Bug Fixes:
106+
- Fix a bug in the projection mode of the Advect Points SOP that was causing
107+
a segfault.
6108

7109
Version 10.0.1 - November 30, 2022
8110

doc/changes.txt

Lines changed: 114 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,123 @@
22

33
@page changes Release Notes
44

5-
@htmlonly <a name="v10_0_2_changes"></a>@endhtmlonly
5+
@htmlonly <a name="v10_1_0_changes"></a>@endhtmlonly
66
@par
7-
<B>Version 10.0.2</B> - <I>In development</I>
7+
<B>Version 10.1.0</B> - <I>October 10, 2023</I>
88

9+
@par
10+
Highlights:
11+
- OpenVDB Python bindings are now implemented using pybind11 instead of Boost.Python.
12+
[Contributed by Matthew Cong]
13+
14+
@par
15+
OpenVDB:
16+
- New features:
17+
- Added points::replicate() for the replication of PointDataGrid points
18+
and attributes.
19+
20+
- Improvements:
21+
- OpenVDB Python bindings are now implemented using pybind11 instead of Boost.Python.
22+
[Contributed by Matthew Cong]
23+
- Fix int-in-bool-context GCC9+ warnings by switching to use constexpr if.
24+
- Upgraded OpenVDBs internal half representation to IMath 3.1.6. Brings
25+
conversion support using F16C instructions (if enabled using -mf16c) and
26+
the removal of the exponent lookup table in favor of bit shifting.
27+
- LevelSetRebuild includes disabled code that uses this for
28+
resampling level sets - the original grid is used as the true
29+
sign value. However, due to differences between
30+
polygonalization and trilinear interpolation, it cannot be used
31+
directly. The code is provided so we can learn from this
32+
mistake.
33+
- boost::uuid removed from Archive, instead std::random_device is used
34+
directly to generate UUID-like objects.
35+
- Moved all cases of file static/global variables which relied on non-trivial
36+
construction into function scopes as static locals. These would previously
37+
initialize themselves on start-up in a non-deterministic, compiler dictated
38+
order(static-initialization-order-fiasco). This order is now defined by the
39+
program's execution.
40+
- Introduced openvdb::make_index_sequence to solve clang compilations
41+
issues with compiler built-in index_sequence implementations.
42+
- Introduced openvdb::TupleList to wrap std::tuple and provide interface
43+
interop methods with openvdb::TypeList.
44+
- Added OPENVDB_FORCE_INLINE, OPENVDB_LIKELY and OPENVDB_UNLIKELY macros.
45+
46+
- API changes:
47+
- openvdb/tools/MeshToVolume's meshToVolume takes two
48+
new optional arguments to provide an interior test oracle and an
49+
interior testing methods. These allow the default
50+
outside-flood-fill to be replaced if the actual sidedness can be
51+
known.
52+
[Contributed by Tomas Skrivan]
53+
- PagedArray iterators no longer derive from std::iterator
54+
(but remains standard compliant).
55+
- Significant infrastructural change to the ValueAccessor header and
56+
implementation. All ValueAccessor specializations have been consolidated
57+
into a single class which supports all possible ValueAccessor configurations
58+
using index_sequences. Backward compatible declarations have been provided.
59+
The new ValueAccessor implementation is marked as final.
60+
61+
- Bug Fixes:
62+
- Fixed a build issue where Boost was not being pulled in when
63+
OPENVDB_USE_DELAYED_LOADING was set to OFF.
64+
- Fixed the constants used in openvdb::math::Coord::hash() and nanovdb::Coord::hash()
65+
to correctly be prime numbers (note that this changes the result of these methods).
66+
[Contributed by Benedikt Mersch]
67+
- Improved support for compiling with C++20.
68+
[Contributed by Denys Maletskyy and Jérémie Dumas]
69+
- OpenVDB's CMake no longer modifies the BUILD_SHARED_LIBS variable.
70+
[Reported by Maksim Shabunin]
71+
- Internal counters in tree::RangeIterator were limited to 32bit precision.
72+
They are now extended to size_t.
73+
[Reported by SpaceX]
74+
- Fixed a bug when compiling with -fvisibility=hidden and GCC 11 which
75+
would cause a crash in openvdb::initialize().
76+
- Fixed a bug with LeafManager which wouldn't correctly
77+
initialize its LeafNode array for single level Tree configurations
78+
i.e. RootNode<LeafNode> (bug introduced in 7.2.0).
79+
[Reported by @lanwatch]
80+
- Fixed a bug with LeafNodeBool Topology constructor with designated
81+
on/off values which wouldn't apply them correctly.
82+
[Reported by @hozhaoea]
83+
- Fixed a compilation error that would be encountered when attempting to
84+
enable the SSE4.2 or AVX SIMD options on non-x86 based platforms.
85+
- The Half.h is no longer built with an internal lookup table, but
86+
explicitly selects the non-LUT version and disables the creation of
87+
a LUT. This is required to avoid symbol conflicts with
88+
different namespaced OpenVDB builds.
89+
- Fixed a compilation issue with the min() and max() methods on Stencils
90+
in openvdb/math/Stencils.h.
91+
[Reported by Samuel Mauch]
92+
- Introduced openvdb::make_index_sequence to solve clang compilations
93+
issues with compiler builtin index_sequence implementations.
94+
- Introduced openvdb::TupleList to wrap std::tuple and provide interface
95+
interop methods with openvdb::TypeList.
96+
- Added OPENVDB_FORCE_INLINE, OPENVDB_LIKELY and OPENVDB_UNLIKELY macros.
97+
98+
@par
99+
OpenVDB AX:
100+
- Improvements:
101+
- Added support for LLVM 15.
102+
103+
- Bug Fixes:
104+
- Fixed a bug in AX on older X86 hardware which could cause a crash when
105+
accessing point attributes with half compression (bug introduced in 9.1.0).
106+
- Fixed a build issue with AX on 32-bit platforms.
107+
[Reported by Mathieu Malaterre]
108+
- Fixed an incorrect option in the `vdb_ax` command line tool where the default
109+
optimization level was set to NONE instead of O3 (issue introduced in 10.0.0).
110+
111+
@par
112+
OpenVDB Houdini:
113+
- Improvements:
114+
- Added Preserve Holes option to VDB From Polygons that uses the
115+
fast winding oracle to not collapse holes in polygonal geometry.
9116

117+
- Bug Fixes:
118+
- Fix a bug in the projection mode of the Advect Points SOP that was causing
119+
a segfault.
120+
121+
@par
10122
@htmlonly <a name="v10_0_1_changes"></a>@endhtmlonly
11123
@par
12124
<B>Version 10.0.1</B> - <I>November 30, 2022</I>

pendingchanges/ax32fix.txt

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

pendingchanges/ax_f16c.txt

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

pendingchanges/boost_build_fix.txt

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

pendingchanges/coord_hash.txt

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

pendingchanges/cplusplus20.txt

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

pendingchanges/fix_RangeIterator.txt

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

pendingchanges/fix_int_in_bool_warnings.txt

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

pendingchanges/half_3_1_imath.txt

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

0 commit comments

Comments
 (0)