| 28 | } |
| 29 | |
| 30 | float3 RandomInUnitSphere(uint32_t& state) |
| 31 | { |
| 32 | float3 p; |
| 33 | do { |
| 34 | p = 2.0*float3(RandomFloat01(state),RandomFloat01(state),RandomFloat01(state)) - float3(1,1,1); |
| 35 | } while (sqLength(p) >= 1.0); |
| 36 | return p; |
| 37 | } |
| 38 | |
| 39 | float3 RandomUnitVector(uint32_t& state) |
| 40 | { |