12 个版本 (4 个稳定版)
1.2.1 | 2024 年 7 月 20 日 |
---|---|
1.2.0 | 2024 年 7 月 9 日 |
0.4.5 | 2024 年 6 月 24 日 |
0.3.7 | 2024 年 5 月 30 日 |
#1554 在 游戏开发
每月 606 次下载
在 2 个 包中使用
27KB
694 行
rantz_random
一个简单的Rust库,用于使用 fastrand 生成随机值。目前基本上只是对一些额外类型的fastrand进行了封装。随着时间的推移可能会增长。适用于与 Bevy 一起使用。
可以生成以下类型的随机值
- i8-128
- u8-128
- f32 & f64
- Vec2/3/4, UVec2/3/4, and IVec2/3/4(使用
bevy
功能) - 颜色(使用
bevy
功能) - 角度、弧度、
Position2D
以及所有方向(使用spatial2d
功能)- 需要rantz_spatial2d
可以生成以下类型的随机范围值
- i8-128
- u8-128
- f32 & f64
- Vec2/3/4, UVec2/3/4, and IVec2/3/4(使用
bevy
功能) - 角度、弧度、和
Position2D
(使用spatial2d
功能)- 需要rantz_spatial2d
可以随机打乱任何 Clone + IntoIterator<T> + FromIterator<T>
的内容,以及返回随机元素或随机索引。
还包括一个用于加权随机生成的 WeightedTable
类。
用法
将其添加到您的 Cargo.toml
。使用 rantz_random::*;
以获取定义随机生成的特性。
确定性
此crate依赖于 fastrand
,它是“确定性”的。也就是说,对于给定的种子值,如果系统顺序是确定的,则结果将是确定的。
为了确保确定性,任何使用此crate功能的系统在添加到Bevy应用时都需要进行 .chain()
。
依赖关系
~23MB
~411K SLoC