Interactive Texture Generator

Here's a screenshot of a new side-project. The project is a library, texture_generator, and an application, interactive_texture_generator. The library takes in a source file and uses that source file to generate texture(s).


The source file is a list of glsl fragment shaders. Each fragment shader can declare zero-or-more samplers. Each fragment shader can also declare one-or-more outputs. The texture_generator library connects samplers from later shaders to outputs from earlier shaders.

The screenshot above shows the outputs from a source file containing two shaders. The first shader defines a single output named red, and the second shader defines a single output named magenta.

Sometimes, shaders get too complicated to think about. So I thought it would be nice to be able to write values to intermediate textures and inspect them visually (and by hovering over individual pixels to see values via a tool-tip). If there no need for real-time rendering of these textures, the trade-off for doing so is inconsequential.


Comments