/** * Generates a complete WGSL fragment shader from a CustomShaderDescriptor. * * The generated code includes: * 1. Constants (PI, MAX_*_LIGHTS) * 2. CustomUniforms struct (from @property metadata, 16-byte aligned) * 3. Scene structs (DirLight, PointLight, SpotLight, SceneUniforms) * 4. Bind group 1 declarations (custom uniforms, scene uniforms, textures) * 5. Shadow code (group 2) * 6. PBR helper functions (available but not required) * 7. FragmentInput struct * 8. User's fragment code */ import type { CustomShaderDescriptor } from './custom-shader-parser.js'; export declare function generateCustomFragmentShader(descriptor: CustomShaderDescriptor): string; /** * Generates a custom vertex shader with user's displaceVertex function. * Layout: group 0 = ObjectUniforms, group 1 binding 0 = CustomUniforms, group 1 binding 1 = SceneUniforms. */ export declare function generateCustomVertexShader(descriptor: CustomShaderDescriptor): string; /** * Generates a shadow vertex shader for custom vertex displacement. * Layout: group 0 = ObjectUniforms, group 1 = lightVP, group 2 = scene + custom uniforms. */ export declare function generateCustomShadowVertexShader(descriptor: CustomShaderDescriptor): string; //# sourceMappingURL=custom-shader-codegen.d.ts.map