diff options
-rw-r--r-- | README.txt | 123 |
1 files changed, 123 insertions, 0 deletions
diff --git a/README.txt b/README.txt new file mode 100644 index 0000000..92d9a09 --- /dev/null +++ b/README.txt @@ -0,0 +1,123 @@ +glslview +======== + +glslview is a simple program to run GLSL fragment shaders and interact with them. + +glslview will render a simple fullscreen rectangle, the shader will determine each +pixel's color. + +The glslwrite tool can be used to write the generated frames to PNG files +(with transparency support!). + +You will need a graphics adapter and drivers with modern OpenGL/GLSL support. + +Building +~~~~~~~~ + +glslview has been tested on Linux only, but it should work on other systems as well. +If it doesn't, I'm happy to take patches. + +glslview has the following dependencies: + +* SDL2 +* libGL +* libGLEW + +glslwrite additionally depends on libpng. + +On Linux, glslview will use inotify to watch the loaded shader file for changes. + + +Running +~~~~~~~ + +Shader +------ + +glslview will supply the following uniform parameters to the shader: + +vec2 res + The current resolution of the window + +float time + Current time in milliseconds (by default since start of the program) + +int param0, param1, param2 + Modifiable parameters, 0 by default + +The shader must define an output vec4 called "fragColor" into which the fragment color +is to be written. + +See the examples provided with the source for more information. The "symmetry" +example makes use of all parameters. + + +Command line +------------ + + glslview <options> <shader> + glslwrite <options> <shader> <output directory> + + +Common options: + +-w <width> + Initial window width (default: 800) + +-h <height> + Initial window height (default: 800) + +-0, -1, -2 <param> + Initial value for the shader parameters + + +glslview options: + +-s <speed> + Initial speed factor (default: 1.0, negative values make time run backwards) + +-t <time> + Initial time value (default: 0.0) + + +glslwrite options: + +-s <step> + Time step between frames (default: 20.0) + +-f <frame> + Number of frames to generate (default: run forever) + + +glslview control +---------------- + ++/-, scroll wheel + Change speed + += + Reset speed + +< + Run backwards + +> + Run forwards + +r + Reset time + +R + Reset parameters + +Page up/down + Modify param0 + +Left/right + Modify param1 + +Up/down + Modify param2 + +Escape + Quit |