12 releases
new 0.2.0 | Jan 13, 2025 |
---|---|
0.1.17 | Nov 1, 2024 |
0.1.15 | Oct 6, 2024 |
0.1.14 | May 2, 2024 |
0.1.9 | Jan 17, 2024 |
#16 in Data formats
88 downloads per month
48KB
427 lines
display3d
display3d is a command line interface for rendering and animating 3D objects using ANSI escape codes, written using gemini-engine in the Rust programming language.
For a basic guide on how to use the tool, run display3d --help
Supported formats
- .obj (combined with .mtl for colours). If you're exporting from Blender, set the forward axis to +Z and the up axis to +Y
- .stl
Please note that this form of rendering requires the terminal to support ANSI escape codes, support for which tends to be unreliable on Windows from installation to installation. If you are having issues getting an image on Linux or MacOS, please submit an issue request
Installing
Arch Linux
display3d is available as a package in the AUR. You can install it using your preferred AUR helper, e.g. paru -S display3d
.
Nix/NixOS
If you use Nix, you can install display3d from nixpkgs. You can install it as pkgs.display3d
Cargo
Make sure you have rust and cargo installed, then run cargo install display3d
. This will download, compile and install the latest stable release of display3d. You can then simply run display3d
to access it
Compile from source
Clone this repository with git clone https://github.com/renpenguin/display3d.git
or download and unzip this repository. You must have rust and cargo installed to compile display3d.
Build the project with cargo build --release
. The binary will be saved to <project-repo>/target/release/display3d
Example
To run the example spinning shark, run display3d blahaj.obj -t 0,0,5.5
. You can get the blahaj.obj
and blahaj.mtl
(for colours, should be stored together with blahaj.obj
) files in the resource directory of this repository.
Dependencies
~5–14MB
~197K SLoC