Bộ sinh số ngẫu nhiên PCG32: nhanh, chất lượng tốt, và lặp lại được: cùng hạt giống thì cùng dãy số. Tiếp...
#include <_random.h>
Các hàm thành viên Public | |
| rng (u64 seed) | |
| Tạo bộ sinh với hạt giống seed. | |
| void | reseed (u64 seed) |
| Đặt lại hạt giống. | |
| u32 | next_u32 () |
| Số nguyên 32 bit tiếp theo. | |
| f32 | unit () |
| Số thực trong [0, 1). | |
| f32 | range (f32 lo, f32 hi) |
| Số thực trong [lo, hi). | |
| i32 | range (i32 lo, i32 hi) |
| Số nguyên trong [lo, hi], gồm cả hi. | |
| bool | chance (f32 p) |
| Đúng với xác suất p. | |
| vec2 | direction () |
| Vector độ dài 1 theo một hướng ngẫu nhiên. | |
| vec2 | point_in (rect r) |
| Điểm ngẫu nhiên trong hình chữ nhật. | |
Các thuộc tính Public | |
| u64 | state = 0x853c49e6748fea9bULL |
| Trạng thái hiện tại. | |
| u64 | inc = 0xda3e39cb94b95bdbULL |
| Luồng (phải là số lẻ). | |
Bộ sinh số ngẫu nhiên PCG32: nhanh, chất lượng tốt, và lặp lại được: cùng hạt giống thì cùng dãy số.
Engine có sẵn một bộ dùng chung, lấy bằng njin::random(). Tự tạo một rng riêng khi cần một dãy độc lập, ví dụ sinh bản đồ từ một mã số.
|
inlineexplicit |
Tạo bộ sinh với hạt giống seed.
| seed | Hạt giống. |
|
inline |
Đặt lại hạt giống.
Cùng hạt giống thì cùng dãy số.
| seed | Hạt giống. |
|
inline |
Số nguyên 32 bit tiếp theo.
|
inline |
Số thực trong [0, 1).
Số thực trong [lo, hi).
| lo | Cận dưới. |
| hi | Cận trên. |
Số nguyên trong [lo, hi], gồm cả hi.
| lo | Cận dưới. |
| hi | Cận trên. |
|
inline |
Đúng với xác suất p.
| p | Xác suất, từ 0 đến 1. |
|
inline |
Vector độ dài 1 theo một hướng ngẫu nhiên.