playcanvas
Version:
Open-source WebGL/WebGPU 3D engine for the web
12 lines (11 loc) • 334 B
JavaScript
var spot_default = (
/* wgsl */
`
fn getSpotEffect(lightSpotDir: vec3f, lightInnerConeAngle: f32, lightOuterConeAngle: f32, lightDirNorm: vec3f) -> f32 {
let cosAngle: f32 = dot(lightDirNorm, lightSpotDir);
return smoothstep(lightOuterConeAngle, lightInnerConeAngle, cosAngle);
}`
);
export {
spot_default as default
};