ffgl ShaderLoader + ShaderMaker

Awesomeness by Lynn Jarvis from Spout developers team: Shader Loader is a Windows-only ffgl-plugin for using webGL-shaders from GLSL Sandbox or ShaderToy (or your own vertex or fragment shaders) in FFGL host applications such as VDMX, Resolume, Isadora and others.

Picture above: ShaderLoader in Resolume 4.2. – heavy going on a Nvidia GT540m (12fps). FPS is dependent on viewport size but it is possible to fine tune the frame rate against resolution within a composition. All in all ShaderLoader won’t be as efficient as – for example – Magic Visuals because of the overhead in transferring textures between plugin and host. Plugins have some limitations for performance.

There are some limitations such as no audio input, only two input textures and not all of the pre-defined uniform variables are supported. But nevertheless many many of the shaders on the websites work straight away. With attention to licensing and credit to the authors, this effectively creates a huge number of instant freeframe plugins.

You can select the shader files with a file selection dialog and edit them.

Installation
For installation with Resolume you only need to drop the ShaderLoader.dll into your ffgl plugin folder. You can select the shader files with a file selection dialog and edit them. Note that you also need to install Spout for the texture sharing. Spout users will need to update “SpoutPanel” with this latest version by copying “SpoutPanel.exe” to the host program folder and replacing the old version.
For „Isadora“ copy to the Program files „..\Common Files\Freeframe“ folder. Create this folder if it does not exist.
Magic allows „additional module folders“ to be defined so using the „..\Common Files\Freeframe“ folder is a good idea. „SpoutPanel.exe“ from the Spout project, is provided with ShaderLoader and should be copied to the same folder as the host executable to enable the file selection and warning dialogs. The latest Version 2.03 (after 9th January 2015) is required.

There is a lot potential for this. But don’t get too disappointed if many of the shaders don’t work. It is ideal if you use the ShaderToy/GLSL shader examples as a basis for your own shader, but even so many do work out of the box. Just try around and start creating your own shaders with ShaderMaker (below).

ShaderMaker
For the shaders that you find useful and will use a lot, it is best to have a dedicated FreeFrameGL plugin that does not not rely on a shader file. So people who are set up for Visual Studio and C++ can make any number of them with ShaderMaker. ShaderMaker can be used in OSX, too – thanks to Amaury Hazan (developer of Vidibox iPad application).

Download everything and unzip into in any folder, open the VS2010 solution file with Visual Studio and change to “release”, it should build OK as-is. More examples are in the source file.

To make your own shader plugin on a Windows system, all you do is copy/paste the shader code into the source file, change the plugin information and rename the resulting dll. In OSX there are both the XCode project and a makefile. In both cases, the resulting bundle will be created in Binaries/osx.
There are some things to take note of like compiling in 32-bit, but hopefully the code and documentation are clear enough. You can find some more detailed information via Spout Forums.