diff --git a/core/math/rand/rand.odin b/core/math/rand/rand.odin index ebc289a7b..c345d02c9 100644 --- a/core/math/rand/rand.odin +++ b/core/math/rand/rand.odin @@ -88,6 +88,9 @@ int_max :: proc(n: int, r: ^Rand = global_rand_ptr) -> int { float64 :: proc(r: ^Rand = global_rand_ptr) -> f64 { return f64(int63_max(1<<53, r)) / (1 << 53); } float32 :: proc(r: ^Rand = global_rand_ptr) -> f32 { return f32(float64(r)); } +float64_range :: proc(lo, hi: f64, r: ^Rand = global_rand_ptr) -> f64 { return (hi-lo)*float64(r) + lo; } +float32_range :: proc(lo, hi: f32, r: ^Rand = global_rand_ptr) -> f32 { return (hi-lo)*float32(r) + lo; } + read :: proc(p: []byte, r: ^Rand = global_rand_ptr) -> (n: int) { pos := i8(0);