Add README

This commit is contained in:
Matthias Schiffer 2016-02-06 12:12:32 +01:00
parent 3a2d45fb93
commit 53d2f9369a

123
README.txt Normal file
View file

@ -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