/** * Creates a WebGPU render pipeline for a custom WGSL fragment shader. * * Uses the same vertex shader, object bind group (group 0), and shadow bind * group (group 2) as the standard PBR pipeline. Group 1 is dynamically * generated from the CustomShaderDescriptor. Group 3 provides scene depth. */ import type { CustomShaderDescriptor } from './custom-shader-parser.js'; import type { PipelineResources } from './pipeline.js'; export interface CustomPipelineResources extends PipelineResources { descriptor: CustomShaderDescriptor; depthBindGroupLayout: GPUBindGroupLayout; /** Shadow pipeline for custom vertex displacement (null if no vertex code). */ shadowPipeline: GPURenderPipeline | null; /** Bind group layout for group 2 in shadow pipeline (scene + custom uniforms). */ shadowExtraBindGroupLayout: GPUBindGroupLayout | null; } export declare function createCustomPipeline(device: GPUDevice, descriptor: CustomShaderDescriptor, objectBindGroupLayout: GPUBindGroupLayout, shadowBindGroupLayout: GPUBindGroupLayout): Promise; //# sourceMappingURL=custom-pipeline.d.ts.map