UNPKG

molstar

Version:

A comprehensive macromolecular library.

38 lines (32 loc) 1.24 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.composite_frag = void 0; exports.composite_frag = ` precision highp float; precision highp int; precision highp sampler2D; uniform vec2 uTexSizeInv; uniform sampler2D tBlur1; uniform sampler2D tBlur2; uniform sampler2D tBlur3; uniform sampler2D tBlur4; uniform sampler2D tBlur5; uniform float uBloomStrength; uniform float uBloomRadius; uniform float uBloomFactors[5]; uniform vec3 uBloomTints[5]; float lerpBloomFactor(const in float factor) { float mirrorFactor = 1.2 - factor; return mix(factor, mirrorFactor, uBloomRadius); } void main(void) { vec2 coords = gl_FragCoord.xy * uTexSizeInv; gl_FragColor = uBloomStrength * ( lerpBloomFactor(uBloomFactors[0]) * vec4(uBloomTints[0], 1.0) * texture2D(tBlur1, coords) + lerpBloomFactor(uBloomFactors[1]) * vec4(uBloomTints[1], 1.0) * texture2D(tBlur2, coords) + lerpBloomFactor(uBloomFactors[2]) * vec4(uBloomTints[2], 1.0) * texture2D(tBlur3, coords) + lerpBloomFactor(uBloomFactors[3]) * vec4(uBloomTints[3], 1.0) * texture2D(tBlur4, coords) + lerpBloomFactor(uBloomFactors[4]) * vec4(uBloomTints[4], 1.0) * texture2D(tBlur5, coords) ); } `;