lingo3d
Version:
Lingo3D is a React/Vue 3d game development framework that ships with a complete visual editor
3 lines (2 loc) • 1.57 kB
TypeScript
declare const _default: "#define MODE_DEFAULT 0\n#define MODE_REFLECTIONS 1\n#define MODE_RAW_REFLECTION 2\n#define MODE_BLURRED_REFLECTIONS 3\n#define MODE_INPUT 4\n#define MODE_BLUR_MIX 5\n\n#define FLOAT_EPSILON 0.00001\n\nuniform sampler2D inputTexture;\nuniform sampler2D reflectionsTexture;\n\n#include <boxBlur>\n\nvoid mainImage(const in vec4 inputColor, const in vec2 uv, out vec4 outputColor) {\n vec4 reflectionsTexel = texture2D(reflectionsTexture, vUv);\n ivec2 size = textureSize(reflectionsTexture, 0);\n vec2 invTexSize = 1. / vec2(size.x, size.y);\n\n vec3 reflectionClr = reflectionsTexel.xyz;\n\n if (blur > FLOAT_EPSILON) {\n vec3 blurredReflectionsColor = denoise(reflectionsTexel.rgb, reflectionsTexture, vUv, invTexSize, blur, blurSharpness, blurKernel);\n\n reflectionClr = mix(reflectionClr, blurredReflectionsColor.rgb, blur);\n }\n\n#if RENDER_MODE == MODE_DEFAULT\n outputColor = vec4(inputColor.rgb + reflectionClr, 1.0);\n#endif\n\n#if RENDER_MODE == MODE_REFLECTIONS\n outputColor = vec4(reflectionClr, 1.0);\n#endif\n\n#if RENDER_MODE == MODE_RAW_REFLECTION\n outputColor = vec4(reflectionsTexel.xyz, 1.0);\n#endif\n\n#if RENDER_MODE == MODE_BLURRED_REFLECTIONS\n outputColor = vec4(blurredReflectionsTexel.xyz, 1.0);\n#endif\n\n#if RENDER_MODE == MODE_INPUT\n outputColor = vec4(inputColor.xyz, 1.0);\n#endif\n\n#if RENDER_MODE == MODE_BLUR_MIX\n outputColor = vec4(vec3(blur), 1.0);\n#endif\n}";
export default _default;