Change Log
Currently ISF is at version 2.0 with a proposed version 3.0 in development.
Differences from the first version of the ISF spec
The first version of the ISF spec did some confusing and silly things that the second version improves on. If you want to write your own ISF host, and you want that host to support "old" ISF files, here's a link to the original ISF spec.
...and here's a list of the specific changes that were made from ISFVSN 1 to ISFVSN 2:
- The
PERSISTENT_BUFFERS
object in the top-level dict has been removed- it was redundant and confusing. Anything describing a property of the buffer a pass renders to is in the appropriate pass dictionary (PERSISTENT
,FLOAT
,WIDTH
,HEIGHT
, etc). - The uniform vec2
vv_FragNormCoord
has been renamedisf_FragNormCoord
, and the functionvv_vertShaderInit()
has been renamedisf_vertShaderInit()
. ISF is open-source, the use of "vv" for terms in the spec is inappropriate. - The
INPUT
types "audio" and "audioFFT" didn't exist in the first version of the ISF spec. - The
IMG_SIZE
function didn't exist in the first version of the ISF spec. - The
TIMEDELTA
,DATE
, andFRAMEINDEX
uniforms didn't exist in the first version of the ISF spec. - The first version of the ISF spec didn't have any sort of versioning label-
VSN
andISFVSN
didn't exist. - The first version of the ISF spec didn't codify any conventions with respect to image filters. The second version sets forth the basic requirement for ISF shaders that are expected to be used as image filters or transitions.