31 static T
random(T min = 0.0, T max = 1.0) {
32 static std::random_device s_randomDevice;
33 static std::mt19937 s_randomEngine(s_randomDevice());
34 if constexpr (std::is_integral_v<T>) {
35 return std::uniform_int_distribution<T>(min, max)(s_randomEngine);
37 return std::uniform_real_distribution<T>(min, max)(s_randomEngine);