Lots of space to play in.
This is a simple floating origin plugin, useful if you want to work with very, very large scales. It works with bevy's existing f32
-based Transform
s, which means it's largely compatible with the bevy ecosystem.
The plugin is generic over a few integer types, to trade off scale and precision for memory use. Some fun numbers with a worst case precision of 0.5mm:
i8
: 2,560 km = 74% of the diameter of the Mooni16
: 655,350 km = 85% of the diameter of the Moon's orbit around Earthi32
: 0.0045 light years = ~4 times the width of the solar systemi64
: 19.5 million light years = ~100 times the width of the milky way galaxyi128
: 3.6e+26 light years = ~3.9e+15 times the width of the observable universe
From the docs: https://docs.rs/big_space/latest/big_space/struct.GridCell.html
I intend to track the main
branch of Bevy. PRs supporting this are welcome!
bevy | big_space |
---|---|
0.12 | 0.4 |
0.11 | 0.3 |
0.10 | 0.2 |
0.9 | 0.1 |
This project is dual licensed:
- MIT License (LICENSE-MIT or http://opensource.org/licenses/MIT)
- Apache License, Version 2.0 (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
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.