This is a pure Rust implementation of Freestyle Sculpting, a real-time dynamic topology sculpting algorithm.
It is based on the paper Freestyle: Sculpting meshes with self-adaptive topology by Lucian Stanculescu, Raphaëlle Chaine, Marie-Paule Cani. This is the same algorithm that is used by the Dyntopo sculpting mode in Blender.
Please check out the bevy-basic-sculpt example to see how it can be used in an interactive application.
At the moment it doesn't support topology genus changes, i.e. no splitting or merging of different parts of the mesh.
rerun
: Enables recording of the mesh graph and the different algorithms to Rerun for visualization.bevy
: Enables integration with the Bevy game engine.
To implement a custom deformation field, you can create a struct that implements the [DeformationField
] trait. Have a look
at the existing deformation fields in the [deformation
] module for inspiration.
If you want to implement a custom selection strategy, you can create a struct that implements the [MeshSelector
] trait. Have a look
at the existing selection strategies in the [selectors
] module for inspiration.