Using the ISF Editor.

ISF Editor

When creating new ISF based generators and FX for use in VDMX or other supported applications, one of the most useful tools is the free ISF Editor.

ISF editor
The ISF Editor interface.

Downloading The ISF Editor

Latest release: ISF Editor (Mac)

Beta releases:

Features

While you can use any text editor to work with ISF files, the ISF Editor includes several useful features such as:

  • Live preview of output from the shader.
  • Create new ISF shaders from a useful starter template.
  • Simple interface for editing shader meta data and published parameters.
  • Use movies, images, Syphon, and camera inputs as test feeds for FX.
  • Publishes final output to Syphon for live use or preview in other applications.
  • Error message display for debugging.
  • Preview any render pass for debugging multi-pass shaders.
  • Includes an optional Quicklook plug-in for viewing thumbnails of ISF shaders in the Finder.
  • Switch between OpenGL 2 and OpenGL 4 rendering modes in the preferences.
  • Import (some) shaders from GLSL Sandbox and Shadertoy.
  • Automatically highlights and completes variable / function names from GLSL and ISF Specification.
  • The codebase for the ISF Editor is open source, included in the VVOpenSource repository.

Using The ISF Editor

Editing Shaders

The ISF Editor contains three windows:

  • The Loading/Playback UI window is used to browse shaders, and adjust the parameters of the file currently being edited.
    • Select a shader in the left-hand list to load into the editor.
    • Drag folders / files into the list of shaders to change directories. Shaders can also be opened using the Open Shader… option from the File menu.
    • Includes buttons for quickly jumping to the system ISF directory and user ISF directory.
    • Along with controls for parameters declared in the current shader, the rendering resolution can be adjusted.
  • The Editor UI contains three panels:
    • Viewing and editing the fragment shader (.fs)
    • Viewing and editing the optional vertex shader (.vs)
    • A simple interface for editing the meta data, published inputs, multi-pass / persistent buffer configurations for the shader. This information can also be modified manually in the JSON section of the fragment shader.
  • The Preview Window is used to show the rendered output from the currently selected shader.
    • When using a multi-pass shader the Display Render Pass menu can be used to view the output from a particular render pass.
    • The Freeze Output toggle can be used to hold the output on the current frame.
    • The Display Alpha toggle sets whether the output is rendered over a solid or transparent background.

Importing / Converting Shaders

In the File menu there are three options for importing / converting shaders.

  • Browse/Import from ISF site allows for downloading ISF files from https://www.interactiveshaderformat.com/
  • Import from GLSL Sandbox allows for entering a URL to a shaders from GLSL Sandbox and attempts to automatically convert them to the ISF specification.
  • Import from Shadertoy allows for entering a URL to a shaders from Shadertoy and attempts to automatically convert them to the ISF specification.

Using ISF Compositions in other software

VDMX

Visit the ISF in VDMX page for more information on this topic.

ISF for Motion

Visit the ISF for Motion page for more information on this topic.

More apps

For more applications and toolkits that support ISF, visit the ISF Integrations page.

Finding Shaders Online

Standard VIDVOX Shaders

The installer for VDMX includes a standard set of over 200 shaders which can be used with the ISF Editor and other supported host apps.

This collection of ISF files is completely open source and can be manually installed on a system if desired from this repository: ISF Files

Note: The ISF Editor includes the standard set of shaders as an optional part of their installers.

ISF Sharing Site

https://www.interactiveshaderformat.com/ is a community website for sharing ISF shaders.

Other GLSL Websites

As ISF is based on GLSL, many shaders from other websites can be adapted to the format. Here are some websites to check for useful code examples:

Tags: freebies