The ISF Primer
This book is about the Interactive Shader Format, aka ISF, version 2.
What is the Interactive Shader Format and how is it different from standard GLSL?
In this section we will discuss the basics concepts related to ISF and examine the toolsets that we'll be using throughout the course of this guide.
Here we will learn about JSON, GLSL and write our first ISF generator and FX.
A quick overview of some of the toolsets that support ISF and how to make use of your compositions outside of the editor.
A closer look at the various data types and functions provided by GLSL and ISF, and how to create your own functions to create re-usable code.
A few advanced examples involving vertex shaders. We will also briefly explore the difference between polar and Cartesian coordinate systems.
In this section we'll look at Convolution techniques in GLSL, which are used to make blur, sharpen and a number of other standard image filters.
Two of the most powerful advanced features of ISF are the ability to create complex multi-stage shaders that can retain information between render passes. Here we will look at some basic examples of how these concepts can be used to create feedback effects, deep blurs and the classic Conway's Game of Life.
ISF includes conventions for working with audio streams to create visualizations of raw waveforms and FFT data.
GLSL is a widely used language and much of it can be adapted to meet the ISF specification with a few minor modifications. We'll also see how to combine complex multi-shader project into a single ISF sketch.
As you are going through this guide, or writing your own shaders, you may find it useful to keep the ISF Reference Pages on hand.