UNPKG

playcanvas

Version:

Open-source WebGL/WebGPU 3D engine for the web

26 lines (23 loc) 685 B
var compose_vignette_default = ` #ifdef VIGNETTE uniform vec4 vignetterParams; uniform vec3 vignetteColor; float dVignette; float calcVignette(vec2 uv) { float inner = vignetterParams.x; float outer = vignetterParams.y; float curvature = vignetterParams.z; float intensity = vignetterParams.w; vec2 curve = pow(abs(uv * 2.0 -1.0), vec2(1.0 / curvature)); float edge = pow(length(curve), curvature); dVignette = 1.0 - intensity * smoothstep(inner, outer, edge); return dVignette; } vec3 applyVignette(vec3 color, vec2 uv) { return mix(vignetteColor, color, calcVignette(uv)); } #endif `; export { compose_vignette_default as default };