A shader-based texture generation tool.
As a programmer working very closelly with artists in many different situations, plenty of times I've found myself in the need of a quick texture edit, or wanting to generate a simple image to improve or complement an artist's work.
Trying to avoid disrupting their workflow for a minor change in a game asset, I've given some texture generation apps a chance, and in all occasions I've ended up opening a Paint-like, rudimentary image editor. The amount of options and loads of spaghetti nodes resulted on me giving up, when most of the times the changes I wanted could be written down in a shader program.
This small tool is the response to this kinda stupid tech-art struggle.
TexWriter is designed for a Visual Studio 2019 development environment, using C++ and OpenGL.
To get a clean build of the application, we must first make a --recursive
clone of this repository:
git clone --recursive https://github.com/pacojq/TexWriter
Once the source is cloned, the Visual Studio solution can be generated executing the GenerateProjects.bat
command.
The features that TexWriter provides, ordered by implementation priority, list as follow:
- Fragment shader editor
- Shader compiler
- Export image asset
- Include input image files
- Define custom uniform variables
- Editor feedback on shader compile errors
- Save and load TexWriter projects
- Include OpenGL files
TexWriter has the following dependencies:
- ImGui for GUI rendering.
- GLFW for OpenGL, OpenGL ES, window creation and input handling. More info at its website.
- Glad for OpenGL rendering.
- glm as math(s) library.
- spdlog for logging.
- stb_image.h for texture loading.
- pugixml for project serialization in XML.
- ImGuiColorTextEdit for shader source editor.
Projects are generated with Premake 5.