mirror of
https://github.com/ppy/osu.git
synced 2024-11-11 12:57:36 +08:00
Fix FastRandom using uint instead of int for NextDouble()
This commit is contained in:
parent
8f10dc7512
commit
8cfb119383
@ -10,7 +10,7 @@ namespace osu.Game.Rulesets.Mania.MathUtils
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
internal class FastRandom
|
internal class FastRandom
|
||||||
{
|
{
|
||||||
private const double uint_to_real = 1.0 / (uint.MaxValue + 1.0);
|
private const double int_to_real = 1.0 / (int.MaxValue + 1.0);
|
||||||
private const uint int_mask = 0x7FFFFFFF;
|
private const uint int_mask = 0x7FFFFFFF;
|
||||||
private const uint y = 842502087;
|
private const uint y = 842502087;
|
||||||
private const uint z = 3579807591;
|
private const uint z = 3579807591;
|
||||||
@ -65,7 +65,7 @@ namespace osu.Game.Rulesets.Mania.MathUtils
|
|||||||
/// Generates a random double value within the range [0, 1).
|
/// Generates a random double value within the range [0, 1).
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <returns>The random value.</returns>
|
/// <returns>The random value.</returns>
|
||||||
public double NextDouble() => uint_to_real * NextUInt();
|
public double NextDouble() => int_to_real * Next();
|
||||||
|
|
||||||
private uint bitBuffer;
|
private uint bitBuffer;
|
||||||
private int bitIndex = 32;
|
private int bitIndex = 32;
|
||||||
|
Loading…
Reference in New Issue
Block a user