@babylonjs/core
Version:
Getting started? Play directly with the Babylon.js API using our [playground](https://playground.babylonjs.com/). It also contains a lot of samples to learn how to use it.
42 lines • 1.5 kB
JavaScript
// Do not edit.
import { ShaderStore } from "../Engines/shaderStore.js";
import "./ShadersInclude/gaussianSplattingFragmentDeclaration.js";
const name = "gaussianSplattingDepthPixelShader";
const shader = `
varying vPosition: vec2f;varying vColor: vec4f;
varying vDepthMetric: f32;
fn checkDiscard(inPosition: vec2f,inColor: vec4f)->vec4f {var A : f32=-dot(inPosition,inPosition);var alpha : f32=exp(A)*inColor.a;
(defined(DEPTH_RENDER) && defined(ALPHA_BLENDED_DEPTH))
if (A<-4.) {discard;}
if (A<-inColor.a) {discard;}
var opacity : f32=1.0;
opacity=alpha;
return vec4f(fragmentInputs.vDepthMetric,0.0,0.0,opacity);
return vec4f(inColor.rgb,alpha);
}
@fragment
fn main(input: FragmentInputs)->FragmentOutputs {fragmentOutputs.color=checkDiscard(fragmentInputs.vPosition,fragmentInputs.vColor);
(defined(DEPTH_RENDER) && defined(ALPHA_BLENDED_DEPTH))
var alpha : f32=fragmentOutputs.color.a;
}
`;
// Sideeffect
if (!ShaderStore.ShadersStoreWGSL[name]) {
ShaderStore.ShadersStoreWGSL[name] = shader;
}
/** @internal */
export const gaussianSplattingDepthPixelShaderWGSL = { name, shader };
//# sourceMappingURL=gaussianSplattingDepth.fragment.js.map