1个不稳定版本
0.1.1 | 2019年6月15日 |
---|---|
0.1.0 |
|
#1313 在 游戏开发
66 每月下载量
在 2 个库中 使用
19KB
409 行
dyoren-fov
一个包含用于roguelike的2D视野算法的纯Rust库。
编译说明
本地编译
cargo run --example fov
WebAssembly编译
rustup target install wasm32-unknown-unknown
cargo install cargo-web
cargo web start --example fov
用法
Cargo.toml
[dependency]
doryen-fov="*"
main.rs
use doryen_fov::{FovAlgorithm, FovRecursiveShadowCasting, MapData};
fn main() {
let mut fov = FovRecursiveShadowCasting::new();
let map_width = 10;
let map_height = 10;
let mut map = MapData::new(map_width, map_height); // build an empty map
map.set_transparent(5, 5, false); // put some wall
let radius = 0;
let player_x = 5;
let player_y = 6;
map.clear_fov(); // compute_fov does not clear the existing fov
fov.compute_fov(&mut map, player_x, player_y, radius, false);
assert!(map.is_in_fov(5, 7));
}
贡献
您可以通过pull requests来为此库做出贡献。如果您这样做,请更新CHANGELOG.md和CREDITS.md文件。如果您提供了一个新功能,请考虑添加一个示例作为教程/展示。