所以我正在開發的遊戲有一個地圖系統,其中地圖的各個部分可以獨立於(大部分)其他部分加載。非順序隨機數字發生器(不確定的術語)
我想有一個隨機數發生器,給定一個種子數和一個地圖部件號,會產生一個隨機數。但是這個數字必須對於每對種子和地圖部件號都是一致的。
什麼是這樣一個隨機數發生器被稱爲?另外,這樣一個RNG的好例子是什麼?
所以我正在開發的遊戲有一個地圖系統,其中地圖的各個部分可以獨立於(大部分)其他部分加載。非順序隨機數字發生器(不確定的術語)
我想有一個隨機數發生器,給定一個種子數和一個地圖部件號,會產生一個隨機數。但是這個數字必須對於每對種子和地圖部件號都是一致的。
什麼是這樣一個隨機數發生器被稱爲?另外,這樣一個RNG的好例子是什麼?
大部分隨機數發生器都是這樣工作的。你可以用你的seed
和part_number
的某種組合調用seed()
函數,然後調用random()
函數來獲得你想要的「隨機」數字(當然這不是隨機的,但這就是你想要的)。
例如,在C++:
srand(seed*part_number); // How you combine seed and part_number doesn't matter.
result = rand();
這聽起來像你對我不是在尋找一個PRNG所有,而是爲Procedural Generation aka Procedural Synthesis。 (當然,雖然具有固定種子值的PRNG是用於程序生成的非常普遍和流行的實現技術。)