UNPKG

@babylonjs/viewer

Version:

The Babylon Viewer aims to simplify a specific but common Babylon.js use case: loading, viewing, and interacting with a 3D model.

99 lines (94 loc) 3.65 kB
import { S as ShaderStore } from './index-MZPybX0H.esm.js'; import { k as kernelBlurVaryingDeclarationWGSL } from './kernelBlurVaryingDeclaration-BXd8avp0.esm.js'; import { p as packingFunctionsWGSL } from './packingFunctions-CRspvE8r.esm.js'; // Do not edit. const name$2 = "kernelBlurFragment"; const shader$2 = `#ifdef DOF factor=sampleCoC(fragmentInputs.sampleCoord{X}); computedWeight=KERNEL_WEIGHT{X}*factor;sumOfWeights+=computedWeight; #else computedWeight=KERNEL_WEIGHT{X}; #endif #ifdef PACKEDFLOAT blend+=unpack(textureSample(textureSampler,textureSamplerSampler,fragmentInputs.sampleCoord{X}))*computedWeight; #else blend+=textureSample(textureSampler,textureSamplerSampler,fragmentInputs.sampleCoord{X})*computedWeight; #endif `; // Sideeffect if (!ShaderStore.IncludesShadersStoreWGSL[name$2]) { ShaderStore.IncludesShadersStoreWGSL[name$2] = shader$2; } /** @internal */ const kernelBlurFragmentWGSL = { name: name$2, shader: shader$2 }; // Do not edit. const name$1 = "kernelBlurFragment2"; const shader$1 = `#ifdef DOF factor=sampleCoC(fragmentInputs.sampleCenter+uniforms.delta*KERNEL_DEP_OFFSET{X});computedWeight=KERNEL_DEP_WEIGHT{X}*factor;sumOfWeights+=computedWeight; #else computedWeight=KERNEL_DEP_WEIGHT{X}; #endif #ifdef PACKEDFLOAT blend+=unpack(textureSample(textureSampler,textureSamplerSampler,fragmentInputs.sampleCenter+uniforms.delta*KERNEL_DEP_OFFSET{X}))*computedWeight; #else blend+=textureSample(textureSampler,textureSamplerSampler,fragmentInputs.sampleCenter+uniforms.delta*KERNEL_DEP_OFFSET{X})*computedWeight; #endif `; // Sideeffect if (!ShaderStore.IncludesShadersStoreWGSL[name$1]) { ShaderStore.IncludesShadersStoreWGSL[name$1] = shader$1; } /** @internal */ const kernelBlurFragment2WGSL = { name: name$1, shader: shader$1 }; // Do not edit. const name = "kernelBlurPixelShader"; const shader = `var textureSamplerSampler: sampler;var textureSampler: texture_2d<f32>;uniform delta: vec2f;varying sampleCenter: vec2f; #ifdef DOF var circleOfConfusionSamplerSampler: sampler;var circleOfConfusionSampler: texture_2d<f32>;fn sampleCoC(offset: vec2f)->f32 {var coc: f32=textureSample(circleOfConfusionSampler,circleOfConfusionSamplerSampler,offset).r;return coc; } #endif #include<kernelBlurVaryingDeclaration>[0..varyingCount] #ifdef PACKEDFLOAT #include<packingFunctions> #endif #define CUSTOM_FRAGMENT_DEFINITIONS @fragment fn main(input: FragmentInputs)->FragmentOutputs {var computedWeight: f32=0.0; #ifdef PACKEDFLOAT var blend: f32=0.; #else var blend: vec4f= vec4f(0.); #endif #ifdef DOF var sumOfWeights: f32=CENTER_WEIGHT; var factor: f32=0.0; #ifdef PACKEDFLOAT blend+=unpack(textureSample(textureSampler,textureSamplerSampler,input.sampleCenter))*CENTER_WEIGHT; #else blend+=textureSample(textureSampler,textureSamplerSampler,input.sampleCenter)*CENTER_WEIGHT; #endif #endif #include<kernelBlurFragment>[0..varyingCount] #include<kernelBlurFragment2>[0..depCount] #ifdef PACKEDFLOAT fragmentOutputs.color=pack(blend); #else fragmentOutputs.color=blend; #endif #ifdef DOF fragmentOutputs.color/=sumOfWeights; #endif }`; // Sideeffect if (!ShaderStore.ShadersStoreWGSL[name]) { ShaderStore.ShadersStoreWGSL[name] = shader; } const includes = [kernelBlurVaryingDeclarationWGSL, packingFunctionsWGSL, kernelBlurFragmentWGSL, kernelBlurFragment2WGSL]; for (const inc of includes) { if (!ShaderStore.IncludesShadersStoreWGSL[inc.name]) { ShaderStore.IncludesShadersStoreWGSL[inc.name] = inc.shader; } } /** @internal */ const kernelBlurPixelShaderWGSL = { name, shader }; export { kernelBlurPixelShaderWGSL }; //# sourceMappingURL=kernelBlur.fragment-DQH3BYk2.esm.js.map