API reference
Every public class, method, and event in @codexo/exojs. Generated from source.
interfaceShaderFilterOptions
@codexo/exojs / rendering / stable
Construction options for a ShaderFilter.
7
props
0
methods
0
events
Import
import { ShaderFilterOptions } from '@codexo/exojs'Construction options for a ShaderFilter.
Properties7
autoUpgrade?: booleanAuto-upgrade legacy GLSL ES 1.00 fragment source to GLSL ES 3.00. Default true - Shadertoy/ISF-style and modern 3.00 sources are both accepted. Set to false for strict 3.00 input, which turns legacy constructs into compile errors instead of silently rewriting them. Only the fragment source is upgraded: a 1.00-style glsl.vertex fails to compile as written.
glsl?: { fragment: string; vertex?: string }GLSL ES 3.00 sources for the WebGL2 backend. vertex is optional and defaults to a pass-through fullscreen quad that writes the vUv varying; supply one only to change how the quad is built.
A ready-made source pair, the way Material takes one. Takes the place of ShaderFilterSourceOptions.glsl/ShaderFilterSourceOptions.wgsl and is used verbatim - no default vertex stage is filled in, and no GLSL upgrade is run.
textures?: Record<string, RenderTextureAn off-screen render target that can also be sampled as a texture. Combines RenderTarget (framebuffer attachment) with the sampler parameters of a Texture (sca… | TextureA static GPU texture sourced from an image, canvas, or video element. Holds the pixel source, its sampling state (ScaleModes, WrapModes) and its upload state (…>Textures bound after the uniform blocks, in declaration order, each followed by its sampler. Use this rather than texture-valued uniforms entries whenever the source declares a uniform schema.
uniformBlocks?: B extends undefined ? never : UniformBlockInitialValuesPer-block starting values accepted when an instance is constructed.<Extract<B, Readonly<Record<string, UniformBlockOne explicitly named uniform block. Use this only with `uniformBlocks`, where the record key supplies both the shader-visible instance name and the runtime nam…<Readonly<Record<string, UniformFieldDeclarationOne entry of a UniformFields record.>>>>>>>Starting values per named block, for a source declaring uniformBlocks.
Starting values for the declared uniforms, or - on a source without a schema - the initial uniform record, updated at runtime through ShaderFilter.setUniform / ShaderFilter.setUniforms.
wgsl?: stringWGSL source for the WebGPU backend - one module carrying both entry points, the same convention Shader uses for materials. The fragment entry point must be fragmentMain. A module that declares no @vertex stage gets the default fullscreen-quad vertex stage (vertexMain, plus its VsOut struct) prepended; a module that declares one must name it vertexMain and emit @location(0) vUv: vec2<f32>.
Source