Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/ecumene/rust-sloth

A 3D software rasterizer... for the terminal!
https://github.com/ecumene/rust-sloth

cli cli-app computer-graphics graphics graphics-3d hacktoberfest rust

Last synced: 7 days ago
JSON representation

A 3D software rasterizer... for the terminal!

Awesome Lists containing this project

README

        

# sloth - A one-of-a-kind Rust 3D Renderer for the CLI
![pikachu](models/demo/pikachu.gif)

A one-of-a-kind command line 3D software rasterizer made with termion, tobj, and nalgebra. Currently it
supports OBJ file formats without textures. It also supports OBJ file formats with vertex colors.

[Javascript Export Demonstration](http://ecumene.xyz/sloth-demo)

## Getting Started / Uses
---
Here's a few really simple commands for you to get started.

You can replace `sloth ` with `cargo run --release -- ` anywhere

#### Render pikachu
```
sloth models/Pikachu.obj
```
#### For multiple models:
```
sloth "models/suzy.obj models/suzy.obj"
```
#### You can also generate a static image:
```
sloth models/Pikachu.obj image -w -h
```
#### You can also generate a portable Javascript render like this:
```
sloth models/Pikachu.obj image -j -w -h > src-webify/data.js
```

Thank you, contributors!
---
[Maxgy](https://github.com/Maxgy) – Rustfmt lint
[donbright](https://github.com/donbright) – STL model loading added, Rustfmt lint
[sophiajt](https://github.com/sophiajt) – Crossterm port