Updated August 17, 2026
Custom GLSL shaders in Framebolt: supported inputs and limits
Framebolt's shader path is a documented compatibility boundary: source is compiled to SPIR-V and MSL, validated by Metal, and rejected with a reason when the imported graph needs unsupported resources.
See the GLSL feature overviewEntry points and uniforms
Image/Main -> final frame
Common -> shared declarations
Buffer A-D -> ordered current- or previous-frame inputs
iTime -> still scrub or video timeline
iMouse -> recorded or configured positionImport boundary
| Supported | Rejected with diagnostics |
|---|---|
| Exactly one Image/Main + Common | FragCoord external image, video, or cubemap annotations |
| Up to four ordered buffers with supported feedback | Includes, VR entry points, or graphs above the 256 MB feedback limit |
| Live stereo-mix or microphone spectrum input | Arbitrary external audio or media textures |
| GLSL → SPIR-V → MSL compilation | Silent syntax substitution |
| Reusable validated presets | A broken render with silent fallback |
Mouse and audio behavior
For recordings, Framebolt can save one relative mouse position per accepted frame and convert it to the shader's pixel-space convention during rendering. That is shader input data, not a visible cursor highlight. Audio input is available to the relevant shader path as a live stereo mix or microphone source; microphone input is not a narrated recording track.
Representative diagnostics
Questions about custom shader reference
Keep exploring
GLSL backgrounds for screenshots and recordings
Frame stills and MP4 recordings with compiled GLSL, not another static gradient-only screenshot beautifier.
Native Mac screen recording with editable framing
Record a selected region or display to MP4, trim it non-destructively, and carry the same framing model from screenshots into video.
Getting started with Framebolt
Install Framebolt, grant the right macOS permission, capture your first region, paste it, and understand where raw files and edit data live.