我已經在Visual Studio中使用C++創建了一個多維數據集,我試圖給它一個隨機的方向來移動。從我在網上看到的情況來看,我用於隨機數的方程式應該是生成一個-1到1之間的隨機數,或者更正式地(-1,1)生成一個隨機數。但由於某些原因,生成的隨機數字完全相同。如何在由C++中的負值和正值組成的範圍內生成一個隨機數?
我覺得這個部門有什麼問題,但我無法弄清楚。任何幫助,將不勝感激!
// Give the cube a random direction
float x = 2*((float)rand()/(float)(RAND_MAX + 1.0)) - 1;
float y = 2*((float)rand()/(float)(RAND_MAX + 1.0)) - 1;
float z = 2*((float)rand()/(float)(RAND_MAX + 1.0)) - 1;
m_directionVector = XMFLOAT3(x, y, z);
所有這些轉換都是不必要的,'rand()/(RAND_MAX + 1.0)'已經執行小數分頻。 – fredoverflow