| 68 | } |
| 69 | |
| 70 | Vector UniformSampleHemisphere(const float u1, const float u2) { |
| 71 | const float z = u1; |
| 72 | const float r = sqrtf(Max(0.f, 1.f - z * z)); |
| 73 | const float phi = 2.f * M_PI * u2; |
| 74 | const float x = r * cosf(phi); |
| 75 | const float y = r * sinf(phi); |
| 76 | return Vector(x, y, z); |
| 77 | } |
| 78 | |
| 79 | float UniformHemispherePdf(float theta, float phi) { |
| 80 | return INV_TWOPI; |
no test coverage detected