2015-11-04 50 views
0

我想創建一個隨機數,並使用Random.Range方法。但是,當我打電話Random.Range它給了我一個奇怪的號碼,我再次調用它給了我一個偶數:使用Random.Range在Unity3d中無法正常工作

//example 
calling random.range =1 
calling random.range =4 
calling random.range =17 
calling random.range =2 
calling random.range =3 

一個奇數一個偶數,但我不想這個,我想:

//example 
calling random.range =1 
calling random.range =5 
calling random.range =4 
calling random.range =7 
calling random.range =6 
calling random.range =12 

我該如何解決這個問題?

回答

-1

嘗試random.rangeMin或random.rangeMin()

+0

我不能使用 錯誤:'UnityEngine.Random」不包含'rangeMin'的定義 – Nurullah

1

這是一個有趣的行爲。我試圖重現它,但我無法 - 也許它只發生在一個特定的範圍內,你使用的隨機範圍是什麼?

無論如何,你不必使用統一隨機範圍內,可以使用例如:

public static class MyRandom { 
    static System.Random rnd = new System.Random(); 

    public static int Range(int min, int max) { 
     return min + rnd.Next() % (max + 1); 
    } 
} 

然後用MyRandom.Range(0, 10)