User:Pedro Oval/Uniform random rotation
Jump to navigation
Jump to search
Based on a "graphics gem" by Ken Shoemake [1]
rotation UniformRandRot()
{
// Method from Graphic Gems 3, "Uniform Random Rotations"
// by Ken Shoemake, p.130
float r2 = llFrand(1.0);
float a1 = llFrand(TWO_PI);
float a2 = llFrand(TWO_PI);
float r1 = llSqrt(1.0 - r2);
r2 = llSqrt(r2);
return <r1*llSin(a1), r1*llCos(a1), r2*llSin(a2), r2*llCos(a2)>;
}