| 123456789101112131415161718192021222324 |
- #ifndef _MATH_GLSL_
- #define _MATH_GLSL_
- const float PI = 3.1415926535;
- const float PI2 = PI * 2.0;
- vec2 envMapEquirect(const vec3 normal, const float angle) {
- const float PI = 3.1415926535;
- const float PI2 = PI * 2.0;
- float phi = acos(normal.z);
- float theta = atan(-normal.y, normal.x) + PI + angle;
- return vec2(theta / PI2, phi / PI);
- }
- float rand(const vec2 co) { // Unreliable
- return fract(sin(dot(co.xy, vec2(12.9898, 78.233))) * 43758.5453);
- }
- float attenuate(const float dist) {
- return 1.0 / (dist * dist);
- }
- #endif
|