playcanvas
Version:
Open-source WebGL/WebGPU 3D engine for the web
3 lines (2 loc) • 1.35 kB
TypeScript
declare const _default: "\n\n#include \"fogMathPS\"\n\nvar<private> dBlendModeFogFactor : f32 = 1.0;\n\n#if (FOG != NONE)\n uniform fog_color : vec3f;\n \n #if (FOG == LINEAR)\n uniform fog_start : f32;\n uniform fog_end : f32;\n #else\n uniform fog_density : f32;\n #endif\n#endif\n\n#ifdef VERTEXSHADER\n fn getFogFactor(depth: f32) -> f32 {\n#else\n fn getFogFactor() -> f32 {\n let depth = pcPosition.z / pcPosition.w;\n#endif\n\n #if (FOG == LINEAR)\n return evaluateFogFactorLinear(depth, uniform.fog_start, uniform.fog_end);\n #elif (FOG == EXP)\n return evaluateFogFactorExp(depth, uniform.fog_density);\n #elif (FOG == EXP2)\n return evaluateFogFactorExp2(depth, uniform.fog_density);\n #else\n return 1.0;\n #endif\n}\n\n#ifdef VERTEXSHADER\n fn addFog(color: vec3f, depth: f32) -> vec3f {\n #if (FOG != NONE)\n return mix(uniform.fog_color * dBlendModeFogFactor, color, getFogFactor(depth));\n #else\n return color;\n #endif\n }\n#else\n fn addFog(color: vec3f) -> vec3f {\n #if (FOG != NONE)\n return mix(uniform.fog_color * dBlendModeFogFactor, color, getFogFactor());\n #else\n return color;\n #endif\n }\n#endif\n";
export default _default;