{"record":{"id":"4145beb77ecd1d16","repo":"remotion-dev/remotion","slug":"radial-progressive-blur-shader-compile-failed-l","errorCode":null,"errorMessage":"Radial progressive blur shader compile failed: ${log ?? '(no log)'}","messagePattern":"Radial progressive blur shader compile failed: (.+?)","errorType":"exception","errorClass":"Error","httpStatus":null,"severity":"error","filePath":"packages/effects/src/radial-progressive-blur/radial-progressive-blur-runtime.ts","lineNumber":50,"sourceCode":"\treadonly vertical: RadialProgressiveBlurUniforms;\n};\n\nconst compileShader = (\n\tgl: WebGL2RenderingContext,\n\ttype: number,\n\tsource: string,\n): WebGLShader => {\n\tconst shader = gl.createShader(type);\n\tif (!shader) {\n\t\tthrow new Error('Failed to create WebGL shader');\n\t}\n\n\tgl.shaderSource(shader, source);\n\tgl.compileShader(shader);\n\tif (!gl.getShaderParameter(shader, gl.COMPILE_STATUS)) {\n\t\tconst log = gl.getShaderInfoLog(shader);\n\t\tgl.deleteShader(shader);\n\t\tthrow new Error(\n\t\t\t`Radial progressive blur shader compile failed: ${log ?? '(no log)'}`,\n\t\t);\n\t}\n\n\treturn shader;\n};\n\nconst linkProgram = (\n\tgl: WebGL2RenderingContext,\n\tvs: WebGLShader,\n\tfs: WebGLShader,\n): WebGLProgram => {\n\tconst program = gl.createProgram();\n\tif (!program) {\n\t\tthrow new Error('Failed to create WebGL program');\n\t}\n\n\tgl.attachShader(program, vs);","sourceCodeStart":32,"sourceCodeEnd":68,"githubUrl":"https://github.com/remotion-dev/remotion/blob/78fe4bb3fdb5a2cd68724393d63cb223db333fa7/packages/effects/src/radial-progressive-blur/radial-progressive-blur-runtime.ts#L32-L68","documentation":"The radial-progressive-blur effect compiles GLSL shader source via WebGL2 and throws this error when gl.compileShader reports a failure. The interpolated message includes the GLSL info log returned by the driver, or '(no log)' if the driver provided none. This indicates a bug in the shader source string built by the effect itself, not in caller-supplied parameters.","triggerScenarios":"Calling radialProgressiveBlur() during a render or Studio preview where the GLSL fragment or vertex source contains a syntax error, references an undefined function, or uses an extension not enabled on the current GPU. Also triggered on drivers with non-standard GLSL dialects.","commonSituations":"GPU driver bugs or outdated OpenGL drivers; headless rendering environments with software rasterizers (SwiftShader) that reject certain GLSL constructs; updating the effect's shader source and introducing a typo; running in a browser/engine combination with limited WebGL2 support.","solutions":["Check the GLSL info log in the error message for the exact line and syntax problem in the shader","Update GPU drivers to the latest stable version","If rendering headless, ensure the environment provides a WebGL2-capable context (hardware or full-featured software rasterizer)","File a bug with the effect name, GPU vendor, driver version, and the info log text"],"exampleFix":null,"handlingStrategy":"try-catch","validationCode":null,"typeGuard":null,"tryCatchPattern":"try {\n  const effect = radialProgressiveBlur({ radius: 10 });\n  // ... apply effect\n} catch (err) {\n  if (err instanceof Error && err.message.includes('shader compile failed')) {\n    console.error('GPU shader compilation failed; check driver support:', err.message);\n  }\n  throw err;\n}","preventionTips":["Test effects on the same GPU class as the production render target","Keep GPU drivers updated to the latest stable release","Monitor WebGL context health during long render sessions"],"tags":["webgl","shader","gpu","radial-progressive-blur"],"backgroundTag":null,"analyzedSha":"78fe4bb3fdb5a2cd68724393d63cb223db333fa7","analyzedAt":"2026-08-12T17:18:50.444Z","schemaVersion":2},"datasetVersion":"2026-08-12T18:17:37.767Z"}