Need help with three?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

three-rs
539 Stars 44 Forks Other 426 Commits 54 Opened issues

Description

[abandoned] Totally not inspired Rust 3D library

Services available

!
?

Need anything else?

Contributors list

three-rs

Build Status Docs Crates.io Gitter

Totally not inspired Rust 3D library! Ok, maybe, just a tiny bit... by Three.JS.

If you a looking for something simple to prototype 3D graphics with, you found it.

Screenshots

Aviator CarObj glTF-skinning

Motivation and Goals

Three-rs is focused at the ergonomics first and foremost. Being able to prototype quickly and code intuitively is more important than capturing all the 3D features. We already have a solid foundation with gfx-rs, so let's make some use of it by providing a nice higher-level abstraction.

We do leave the room for optimization opportunity here. Given the low-level declarative style of the API, the implementation can do a lot of tricks to ensure decent performance by default: - use of efficient low-level native graphics APIs - reordering the calls into passes, minimizing state changes - automatic instancing

Interestingly, you can observe an new trend in rust-gamedev community to mimic existing libraries: Amethyst was created to be Rust version of Autodesk Stingray engine (formely Bitsquid), ggez is a re-interpretation of Love2D engine, and now

three-rs
attempting to capture Three.JS usability. This is not to say that we failed to find our own path, I just see the current step inevitable.

Examples

Init submodule

git submodule update --init test_data

Build

cargo build --example 

Run

cargo run --example 

License

Licensed under either of the following terms at your choice: * Apache License, Version 2.0, (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0) * MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.