Releases: Azkellas/mesh_to_sdf
Releases · Azkellas/mesh_to_sdf
v0.4.0
Migration Guide
generate_sdf
AccelerationMethod
andSignMethod
were merged into oneAccelerationMethod(SignMethod)
when the acceleration method accepts a sign method.- Consider switching to
AccelerationMethod::RtreeBvh
(raycast) orAccelerationMethod::Rtree
(normal) for faster results. generate_grid_sdf
is now parallelized.Point
trait now requiresDebug
andPartialEq
to be implemented.
Changelog
mesh_to_sdf
[0.4.0] - 2024-09-17
Added
- New
AccelerationMethod
s withRtree
andRtreeBvh
.Rtree
uses a r-tree for distances and the normal sign method, whileRtreeBvh
uses a r-tree for distances and a bvh for raycast.
Both are about 4x faster than the previousBvh
for 10k and more queries.
Changed
generate_grid_sdf
is now fully parallelized. It's between 10x and 20x faster on a high end cpu, depending on the number of triangles and the grid resolution.AccelerationMethod
now includes theSignMethod
when it makes sense.generate_sdf
only takes theAccelerationMethod
parameter, and theSignMethod
is inferred from it.
This is because not all acceleration methods support all sign methods. For example,Rtree
only supports the normal sign method, whileRtreeBvh
supports raycasting only.Point
trait now requiresDebug
andPartialEq
to be implemented.RtreeBvh
is the new defaultAccelerationMethod
.
mesh_to_sdf_client
[0.4.0] - 2024-09-17
Update mesh_to_sdf
dependency to 0.4.0
.
v0.3.0 / v0.3.1
Migration Guide
generate_sdf
needs an additionnalAccelerationMethod
parameter.Point
custom implementations need to be (de-)serializable if the featureserde
is enabled and specify theSerde
associated typenalgebra
feature was removed as it is required byAccelerationMethod::Bvh
Changelog
mesh_to_sdf
[0.3.0]
Added
generate_sdf
takes an additionalAccelerationMethod
parameter, that can be eitherAccelerationMethod::Bvh
(default) orAccelerationMethod::None
.
Bvh
is recommended unless you're really tight on memory or your query is very small (couple hundreds of queries and triangles).
For example, a query of 15k points with 100k triangles is 10 times faster with a bvh, and twice faster for 500 queries and 10k triangles.
Bvh
is also optimised for theSignMethod::Raycast
sign method. #75- Both generic and grid based sdfs can now be (de-)serialized. Use
SerializeGrid
andDeserializeGrid
, or the helperssave_to_file
andread_from_file
.
Fixed
- Fix #25 where
generate_grid_sdf
might panic if the grid does not contain the mesh. - Make grid based generation ~2x faster by improving heap generation.
Removed
- nalgebra is no longer optional as it is required by bvh. The feature was removed as it will always be available.
mesh_to_sdf_client
[0.3.1]
Fixed
- Fix overflow when loading gltf.
[0.3.0]
Added
- Voxel and Raymarch visualizations now map the material of the mesh onto the new geometry.
Changed
- Parallelize loading of the mesh.
v0.2.1
Migration Guide
Changelogs
In generate_grid_sdf
signature, replace &cell_count
by cell_count
.
mesh_to_sdf
[0.2.1] - 2024-02-18
Changed
generate_grid_sdf
withSignMethod::Raycast
now tests in the three directions (+x, +y, +z). This does not slow the computation down, but it makes the result more robust. This does not affectgenerate_sdf
.Grid::from_bounding_box
takes a[usize; 3]
instead of&[usize; 3]
forcell_count
mesh_to_sdf_client
[0.2.1] - 2024-02-18
Update mesh_to_sdf
dependency to 0.2.1
since it had a breaking change.
v0.2.0
Migration Guide
mesh_to_sdf::generate_sdf
and mesh_to_sdf::generate_grid_sdf
require a new SignMethod
parameter at the end of their signature.
Use mesh_to_sdf::SignMethod::Normal
to keep the same behavior as the previous version, but consider switching to mesh_to_sdf::SignMethod::Raycast
for better results if your meshes are watertight.
Changelogs
mesh_to_sdf
[0.2.0] - 2024-02-16
Added
SignMethod
enum to represent the sign method used to calculate the signed distance.generate_sdf
andgenerate_grid_sdf
now take aSignMethod
parameter.SignMethod::Raycast
to use raycasting to determine the sign of the distance.
mesh_to_sdf_client
[0.2.0] - 2024-02-16
Added
- Isosurface control for point cloud, voxels and raymarching visualization.
- Expose
SignMethod
enum in UI.
v0.1.0
mesh_to-sdf
[0.1.0] - 2024-02-05
First release of mesh_to_sdf
.
Added
generate_sdf
function to get the signed distance from query points to a mesh.generate_grid_sdf
function to get the signed distance from a grid to a mesh.Point
trait to allow the use of any type as vertices.Topology
enum to represent the topology of the mesh.Grid
struct to represent a grid.[f32; 3]
implementation forPoint
trait.cgmath
implementation forPoint
trait.glam
implementation forPoint
trait.mint
implementation forPoint
trait.nalgebra
implementation forPoint
trait.
mesh_to_sdf_client
[0.1.0] - 2024-02-05
First release of mesh_to_sdf_client
.
Added
- Model visualization with a Blinn-Phong shader.
- SDF visualization with a point cloud.
- SDF point size and color customization.
- Model + SDF visualization.
- Raymarching visualization (snap, trilinear and tetrahedral interpolations).
- Voxels visualization.
- Model and SDF metrics.
- Light control.
- Grid parametrization (cell count, size, and bounding box extension).