123456789101112131415161718192021222324 |
- // Do not edit.
- import { ShaderStore } from "../../Engines/shaderStore.js";
- const name = "fogFragmentDeclaration";
- const shader = `#ifdef FOG
- #define FOGMODE_NONE 0.
- #define FOGMODE_EXP 1.
- #define FOGMODE_EXP2 2.
- #define FOGMODE_LINEAR 3.
- #define E 2.71828
- uniform vec4 vFogInfos;uniform vec3 vFogColor;varying vec3 vFogDistance;float CalcFogFactor()
- {float fogCoeff=1.0;float fogStart=vFogInfos.y;float fogEnd=vFogInfos.z;float fogDensity=vFogInfos.w;float fogDistance=length(vFogDistance);if (FOGMODE_LINEAR==vFogInfos.x)
- {fogCoeff=(fogEnd-fogDistance)/(fogEnd-fogStart);}
- else if (FOGMODE_EXP==vFogInfos.x)
- {fogCoeff=1.0/pow(E,fogDistance*fogDensity);}
- else if (FOGMODE_EXP2==vFogInfos.x)
- {fogCoeff=1.0/pow(E,fogDistance*fogDistance*fogDensity*fogDensity);}
- return clamp(fogCoeff,0.0,1.0);}
- #endif
- `;
- // Sideeffect
- ShaderStore.IncludesShadersStore[name] = shader;
- /** @internal */
- export const fogFragmentDeclaration = { name, shader };
- //# sourceMappingURL=fogFragmentDeclaration.js.map
|