Hallr
Hallr is a Blender add-on written in Rust and Python. Python is used for the blender add-on system glue, sending and receiving data to the rust implementation.
This project is a work in progress, so expect frequent changes to its functionality and API.
Usage
For Blender instructions, refer to the wiki.
Gallery
For some images generated by this add-on, see the release page and the wiki
Installing Hallr
You can download pre-built ZIP files from the GitHub Releases section. This ZIP file is the pre-packaged Hallr add-on, which can be drag-and-dropped directly into Blender.
The ZIP file contains dynamic libraries compiled for multiple platforms:
- macOS (ARM)
- Linux (amd64)
- Windows (amd64)
All releases are built automatically by GitHub workflows.
To build the add-on locally, use the following command:
Once the build is complete, simply drag and drop the generated hallr.zip file into Blender to install it.
Developer Mode
For a faster development workflow, you can enable developer mode:
Then, open and run the blender_addon_exported/__init__.py file inside Blender. In this mode, Blender will automatically use the latest compiled Rust library, so you only need to recompile your Rust code to see changes take effect the next time you run an operation.
Contributing
We welcome contributions from the community! Feel free to submit pull requests or report issues on our GitHub repository.
Minimum Supported Rust Version (MSRV)
The minimum supported version of Rust for hallr is 1.87.0.
License
Hallr is licensed under AGPL-3.0-or-later.
Acknowledgments
This project would not be possible without the following Rust crates:
- fast-surface-nets (v0.2) — Dual-licensed under MIT or Apache 2.0.
- rayon (v1.10) — Dual-licensed under MIT or Apache 2.0.
- thiserror (v2.0) — Licensed under either the MIT or Apache 2.0 license.
- rustc-hash (v2.1) — Dual-licensed under MIT or Apache 2.0.
- smallvec (v1.15) — Dual-licensed under MIT or Apache 2.0.
- itertools (v0.14) — Dual-licensed under MIT or Apache 2.0.
- vob (v3.0) — Licensed under the MIT license.
- logos (v0.15) — Dual-licensed under MIT or Apache 2.0.
- ilattice (v0.4) — Licensed under the MIT license.
- earcutr (v0.5) — Licensed under the ISC license.
- ryu (v1.0) — Licensed under either the Apache 2.0 or Boost Software License 1.0.
- rand (0.9) — Dual-licensed under MIT or Apache 2.0.
- saft (v0.34) — Licensed under either the MIT or Apache 2.0 license.