three-rs/three
Fork: 46 Star: 555 (更新于 2024-11-17 05:50:12)
license: Apache-2.0
Language: Rust .
[abandoned] Totally not inspired Rust 3D library
最后发布版本: v0.3 ( 2018-02-24 22:09:20)
three-rs
NOTE: project is abandoned for being stuck with an old graphics stack (gfx-rs pre-ll). It needs to either be ported to wgpu (see https://github.com/three-rs/three/issues/222), or written anew, like https://github.com/kvark/baryon.
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
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 <name>
Run
cargo run --example <name>
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.
最近版本更新:(数据更新于 2024-10-20 07:35:17)
2018-02-24 22:09:20 v0.3
2018-02-24 22:06:07 v0.2
2017-06-11 11:15:08 v0.1
three-rs/three同语言 Rust最近更新仓库
2024-11-22 05:42:56 lanyeeee/jmcomic-downloader
2024-11-19 23:39:15 gleam-lang/gleam
2024-11-19 08:50:55 lapce/lapce
2024-11-11 22:51:00 tauri-apps/tauri
2024-11-11 07:55:30 dani-garcia/vaultwarden
2024-11-09 16:42:37 rustdesk/rustdesk