Chapter 5

The Lab: ISF Editor

Installation and interface walkthrough: where the magic happens and errors get fixed.

In the previous chapters, you learned what ISF is and why it changed modern VJ workflows, how the ISF standard evolved historically, why a 2KB shader can outperform heavy 4K video files in real-time performance, and how to load ISF shaders inside host software. Now we enter the lab.

ISF Editor workspace used as a practical lab for creating, testing, and debugging shaders
If ISF shaders are the instrument, ISF Editor is the workshop where that instrument is tuned, repaired, and built from scratch.

ISF Editor Tutorial: Two Versions, Two Purposes

ISF Web Editor (editor.isf.video)

The Web Editor is the easiest entry point into the shader ecosystem. It is a cloud-based interactive platform that works both as a community repository and a live test bench. Its main strength is accessibility: visual artists can browse thousands of community shaders, tweak them instantly, and share their own versions without installing software.

Think of it as the social layer of ISF: an open place where creators remix and experiment fast.

Access it at editor.isf.video.

ISF Desktop Editor (Production Tool)

The Desktop Editor is Vidvox's professional environment for serious visual development. It runs locally on your machine and acts as a bridge between shader code and live performance. Unlike the web version, it is designed for production workflows where you create, test, and finalize shaders before deploying them to Resolume, VDMX, Magic Music Visuals, or MadMapper.

This chapter focuses entirely on the Desktop Editor.

Download it at isf.vidvox.net/desktop-editor.

Comparison Table: Web Editor vs Desktop Editor

Feature ISF Web Editor ISF Desktop Editor
Installation No (browser-based) Yes (native app)
File access Manual upload/download Direct local file access
Community layer Built-in browse/share Local workflow only
Performance ceiling Limited by browser/WebGL context Maximum native GPU performance
Offline work No Yes
Video input options Basic webcam-level Syphon/Spout and pro capture sources
Error debugging Basic Advanced
Best for Learning, exploring, sharing Production and live show preparation

How to Install ISF Desktop Editor on Windows (Step by Step)

Step 01 - Download the installer

Go to isf.vidvox.net/desktop-editor and download the Windows build. Depending on release packaging, you may receive an .exe or .zip.

Official ISF Desktop Editor download page with Windows installer option
Download ISF Desktop Editor for Windows from the official Vidvox page.

Step 02 - Run the installer

Double-click the downloaded file. If Windows SmartScreen shows "Windows protected your PC," click More info and then Run anyway. This warning is common with independent developer tools.

Windows SmartScreen warning while launching ISF Desktop Editor installer
On SmartScreen prompts, choose More info and then Run anyway to continue installation.

Step 03 - Complete the setup wizard

Follow the standard installer steps, accept terms, keep default options, and click Install. The process usually takes under one minute.

Step 04 - Open ISF Desktop Editor

Launch ISF Editor from Start Menu or desktop shortcut. On first run, three windows open at the same time. That is expected behavior.

ISF Desktop Editor first launch showing three windows
First launch view: ISF Editor opens three coordinated windows by design.

The Three ISF Editor Windows (System Overview)

ISF Editor is not a traditional single-window app. It uses three independent windows synchronized in real time:

  • MainWindow: code editing and app menus.
  • Loading/Playback UI: runtime controls, video input, and render settings.
  • ISF Editor Output: visual preview window.

When you edit code in MainWindow, output updates immediately. When you move a slider in Loading/Playback UI, visuals react instantly in Output.

ISF Editor workflow connecting MainWindow, Loading Playback UI, and Output
ISF Desktop Editor workflow: code, controls, and output are linked in real time.

Window 1: MainWindow

MainWindow is the core editor where shader code and JSON metadata are managed.

ISF Editor MainWindow with Fragment Source and JSON Editor panels
MainWindow showing ISF Fragment Source panel and ISF JSON Editor panel.

Main panel split:

  • Left panel (ISF Fragment Source): GLSL code that generates visuals.
  • Right panel (ISF JSON Editor): parameters and controls exposed to users.

File Menu

ISF Editor File menu with actions for shader file management
The File menu groups creation, save, and import actions for shader files.
  • About: checks current app version, Vidvox credits, and documentation access.
  • New: creates a fresh ISF template with a starter JSON header and GLSL snippet.
  • Save: stores shader as .fs file; save often because there is no full autosave.
  • Import from GLSL Sandbox / Shadertoy: legacy import route; many links may fail today, so manual copy/paste plus JSON input mapping is often more reliable.
ISF Editor import dialog for GLSL Sandbox and Shadertoy sources
Legacy import options for GLSL Sandbox and Shadertoy sources.

Preferences Menu

ISF Editor preferences panel with render and syntax color options
Preferences window for OpenGL behavior and syntax color customization.

Key options:

  • Toggle OpenGL 4 backend for shaders requiring modern GLSL features.
  • Reset syntax/theme colors to defaults.
  • Customize primary selection, secondary selection, and syntax highlighting groups.

Search Menu

ISF Editor search menu with find and navigation actions
Search tools for locating variables, functions, and values in shader code.
  • Find (Cmd/Ctrl + F): opens search.
  • Find Previous (Cmd/Ctrl + Shift + G): jumps to previous occurrence.
  • Find Next (Cmd/Ctrl + G): jumps to next occurrence.
  • Use Selection for Next Find: turns selected text into the active search token.

Help Menu

ISF Editor help menu with update check and documentation links
Help menu for update checks and direct access to official ISF docs.
  • Check for Updates: looks for newer ISF Editor builds.
  • Get Help: opens the official docs at docs.isf.video.

ISF JSON Editor Panel

ISF JSON Editor panel where shader inputs are defined
ISF JSON Editor defines the runtime controls shown in Loading/Playback UI.

ISF shaders combine:

  1. GLSL rendering logic.
  2. JSON metadata that defines user controls.

Every JSON input appears as a control in Loading/Playback UI. Example:

{
  "NAME": "speed",
  "TYPE": "float",
  "DEFAULT": 0.5,
  "MIN": 0.0,
  "MAX": 1.0
}

When your JSON input schema is clear, live control mapping becomes predictable and reusable across host apps.

Window 2: Loading/Playback UI

This is your runtime control console: input source, shader list, render resolution, UI controls, and default-state saving.

ISF Editor Loading Playback UI with shader controls and source settings
Loading/Playback UI centralizes source routing and interactive shader controls.

Video Source Selector

Video source dropdown in ISF Editor Loading Playback UI
Video Source selector chooses the input stream used by filter-type shaders.

This dropdown defines what media enters the shader pipeline. For filter-type shaders, this source is critical because the effect processes incoming frames rather than generating visuals from black.

Built-In Sample Sources (What They Are Good For)

  • Alien_Cavity: high-contrast alien organic shapes, useful for distortion tests.
  • Auroras: smooth gradient motion, useful for color and blend behavior.
  • Bechamel: fluid organic texture for mixing and texture response.
  • BlackCherryCosmos: bright elements on dark background for bloom/particle stress.
  • Bubbles: alpha/refraction behavior testing.
  • Candy_core: saturated palette for hue/saturation workflow checks.
  • Cellular: dense pattern for high-frequency shader response.
  • Chanel_Doodle_1 and Chanel_Doodle_2: line-based content for edge/detail processing.

Shader List and Load System ISFs

ISF shader list panel with Load System ISFs button
Use Load System ISFs to refresh and index local .fs files from system shader folders.

Load System ISFs scans standard shader locations and repopulates the shader list with built-in and user-added .fs files.

Rendering Resolution

Rendering resolution options in ISF Editor Loading Playback UI
Rendering Resolution lets you test performance and quality at different output sizes.

Choose predefined resolutions or custom values. Medium settings are ideal for iteration speed; switch to higher resolutions to validate production output before export to host software.

Filter Input UI Items

Filter input UI panel with sliders and color controls
Filter Input UI Items displays all runtime controls generated from the shader JSON.

Every slider, color picker, toggle, or menu shown here maps directly to JSON inputs.

Save Current UI Values as Default

Save Current UI vals as DEFAULT button in ISF Editor
Save Current UI vals as DEFAULT stores your current control state as the shader's startup values.

This action persists your best-tested control setup so the shader opens later with the same baseline in ISF Editor and compatible host software.

Window 3: ISF Editor Output

ISF Editor Output is the real-time render destination for your shader.

ISF Editor Output window with Display Rendering Pass selector
Display Rendering Pass helps inspect final output and intermediate passes in advanced shaders.

Display Rendering Pass

  • Main Output: final visual as seen by the audience.
  • startImage: source frame before processing.
  • endImage: frame at the end of the render chain before final composition.

For single-pass shaders these may look identical; multi-pass shaders reveal more debugging value.

Freeze Output

Pauses animation at current frame so you can inspect detail, diagnose artifacts, or make JSON/GLSL adjustments without moving output.

Display Alpha

Shows transparency using checkerboard preview, crucial when authoring overlays that must blend correctly in Resolume or VDMX.

Guided Practice Blocks

These exercises are designed as practical lab drills so you can move from theory to confidence inside ISF Desktop Editor.

Guided Practice Block 1 - Where Are My Files? (ISF Desktop Editor Default Library)

Before creating anything new, locate the assets you already have. ISF Desktop Editor installs a default shader library on your drive.

Default shader library installed by ISF Editor Desktop on Windows
Default shader library installed by ISF Editor Desktop on Windows.

On Windows, check C:\ProgramData\ISF or the app installation directory. This default library is where many ISF shader workflows begin before you build custom folders.

Practice:

  1. Open File Explorer and locate the default ISF library folder.
  2. Find .fs shader files.
  3. Drag any .fs file directly into MainWindow.
  4. Confirm code and controls load instantly.

Guided Practice Block 2 - Creating Your First "Generative" Shader from Scratch

You are not coding deeply yet; this exercise teaches the creation flow of a brand-new shader file in ISF Editor Desktop on Windows.

Creating a first generative shader in ISF Editor Desktop on Windows
Creating your first shader in ISF Editor Desktop on Windows.
  1. Go to File > New.
  2. In "What type of ISF would you like to create?", choose Generator.
  3. When prompted to save pending changes, click Yes and save into your desktop Shaders folder as My_First_Shader.
  4. Change color2 in the ISF JSON Editor panel.
  5. Check the visual result in the ISF Editor Output window.

Guided Practice Block 3 - Using Webcam and External Inputs in ISF Editor

To test filter-type shaders properly, you need a real incoming image source. If you have not configured host-side loading yet, review how to install ISF shaders in Magic Visuals first.

Using webcam as video input in ISF Editor Desktop on Windows
Using a webcam as live video input in ISF Editor Desktop for Windows.
  1. In Loading/Playback UI, open the Video Source dropdown.
  2. If a webcam is connected, select it (for example, "Built-in FaceTime HD Camera" or similar).
  3. Load a shader (for example, Bad TV) using Load System ISFs.
  4. Confirm the effect applies to your live camera feed in real time.

Guided Practice Block 4 - The Fixer: Correcting a Common ISF Shader Error

This is where the lab mindset matters: force a simple error and learn to read it fast.

Debugging errors in ISF Editor Desktop on Windows
Debugging workflow in ISF Editor Desktop on Windows.
  1. In the left GLSL panel, remove the semicolon (;) at the end of the last line.
  2. Watch Output turn black or freeze.
  3. In MainWindow, find the red error bar with technical details.
  4. Locate the reported line number, restore the semicolon, and verify rendering comes back immediately.

Complete Workflow Recap

Complete ISF Desktop Editor workflow from coding to live host export
Complete flow: edit code, test controls, validate output, save defaults, and export to host software.

In a typical session:

  1. Start from File -> New or load an existing shader.
  2. Review runtime output immediately in ISF Editor Output.
  3. Choose the most useful Video Source for validation.
  4. Tune controls in Filter Input UI Items.
  5. Save best defaults.
  6. Adjust GLSL or JSON as needed.
  7. Save final .fs and move it into your live host workflow.

Next chapter: we move from the editor to discovery and curation workflows in The Hidden Library inside the ISF ecosystem.

Frequently Asked Questions

Use ISF Web Editor for fast exploration and community browsing, then move to ISF Desktop Editor for production-ready development, local file control, and deeper debugging before live deployment.

The workflow is intentionally split into code editing, runtime control, and visual output. This separation accelerates iteration because JSON, GLSL, and render feedback stay visible and synchronized in real time.

It writes your current control state as the shader's startup defaults. The next time you load that shader in ISF Editor or compatible host software, it opens with the same tested parameter baseline.

Validate control ranges, render behavior at target resolution, alpha/transparency when needed, and consistent startup defaults. If all checks pass in ISF Desktop Editor, transfer reliability in host apps is much higher.

Technical Appendix

This appendix centralizes quick references for this chapter, including cited links and chapter navigation for faster study and review.

Referenced Links

Continue Reading