Skip to main content

Overview

luma.gl applications must provide the shader source code that will ultimately run on the GPU. Such code must be provided as WGSL and/or GLSL depending on which backend(s) are targeted. luma.gl helps assemble that source, bind its inputs, and run it through the engine APIs.

QuestionGuide pageMain reference pages
How does luma.gl combine application source with reusable shader code?Shader AssemblyShaderAssembler, ShaderModule, ShaderPlugin
How do I let optional features customize a base shader without copying it?Writing Customizable ShadersShaderPlugin, ShaderAssembler
How do I keep one rendering feature available on WebGPU and WebGL 2?Writing Portable ShadersModel, WGSL Support
How do I run image effects or other fullscreen texture stages?Shader PassesShaderPass, ShaderPassRenderer

Related reference topics:

For runnable examples, see the Shader Modules, Shader Hooks, Shader Plugins, and Lighting tutorials.