filmov
tv
Shader IDE - GLSL function editor
Показать описание
This short video demonstrates how to write GLSL functions using the Shader IDE I am currently developing.
The goal of this project is to provide an interactive environment for writing, compiling and testing shaders. It relies on the concept of visual programming using graphs to represent shaders. Each node within a graph is a GLSL function with a set of inputs and outputs.
The program comprises two UI workspaces. The first workspace is dedicated to writing the GLSL functions that are used as nodes in the second workspace to assemble shaders.
The function editor allows to write, compile and test individual functions. When one saves a function, the system scans through the source code to interpret the function signature and identify the function definition. This information is then used to convert the function to a standalone compute shader that uses buffer objects to receive input values and return the function results. The compute shader is then compiled to look for any syntax error. Once successfully compiled, the compute shader can be executed to run tests on the function.
This project is developed using C++ and OpenGL for the low level components and C# and WPF for the user interface.
Note that the shader assembler is still under development and a new video will be released to demonstrate it once ready.
The goal of this project is to provide an interactive environment for writing, compiling and testing shaders. It relies on the concept of visual programming using graphs to represent shaders. Each node within a graph is a GLSL function with a set of inputs and outputs.
The program comprises two UI workspaces. The first workspace is dedicated to writing the GLSL functions that are used as nodes in the second workspace to assemble shaders.
The function editor allows to write, compile and test individual functions. When one saves a function, the system scans through the source code to interpret the function signature and identify the function definition. This information is then used to convert the function to a standalone compute shader that uses buffer objects to receive input values and return the function results. The compute shader is then compiled to look for any syntax error. Once successfully compiled, the compute shader can be executed to run tests on the function.
This project is developed using C++ and OpenGL for the low level components and C# and WPF for the user interface.
Note that the shader assembler is still under development and a new video will be released to demonstrate it once ready.