708
edits
mNo edit summary |
No edit summary |
||
Line 62: | Line 62: | ||
[[User:Ssg|Ssg]] 22:32, 6 December 2007 (CET) | [[User:Ssg|Ssg]] 22:32, 6 December 2007 (CET) | ||
This should clear up everything: | |||
float InverseNormalTable[] = { 0.0f, 0.125f, 0.2533f, 0.3853f, 0.5244f, 0.6745f, 0.8416f, 1.0364f, 1.2816f, 1.6449f, 3.0902f }; | |||
float InverseNormalRandom(float v1, float v2) | |||
{ | |||
float r = frnd(); // generates a random number in [-0.999, 0.999] | |||
float x = fabsf(r) * 10.0f; | |||
int i = floorf(x); | |||
float z = InverseNormalTable[i] + (x - i) * (InverseNormalTable[i + 1] - InverseNormalTable[i]); | |||
if (r < 0.0f) | |||
z = -z; | |||
return v1 + z * v2; | |||
} | |||
[[User:Neo|Neo]] |
edits