A practical guide to using NodeFX (GLSL-APP): from quick start to common workflows.
Drag & drop an image file onto the canvas to start.
Drag a filter node from the left sidebar library onto the canvas.
Connect the image node output to the filter node input.
Click the eye icon on the filter node to preview the result.
Adjust node uniforms and watch the preview update in real time.
Save the result directly from the preview panel.
A node-based GLSL editor built for fast creation, generation, and iteration of game VFX textures. Start by dropping an image, then chain nodes to modify and preview instantly—without the steep learning curve of AE/SD/PS-style tools.
Drag nodes from the sidebar into the canvas.
Drop an image file onto the canvas. The app creates a SAMP_TEXTURE node and sets its image uniform to the dropped image.
Use the sampler2D parameter widget to pick a texture.
float / intvec2 / vec3 / vec4sampler2Drun() conventionThe node entry point is void run(...). Ports and types are derived from its parameters.
vec2 uv (typically 0~1 texture coordinates).out keyword.void run(vec2 uv, out vec4 outColor);
void run(vec2 uv, float strength, sampler2D image, out vec4 outColor);
void run(vec2 uv, vec3 a, vec3 b, out vec3 outColor, out float outMask);
If your shader contains multiple run() signatures, you can switch overloads from the inspector.
You can label/sort overloads via comments:
//Item[name,order]
// order: smaller = higher priority; ties keep source order
Choose a preview node, then inspect the result in the preview panel.
Export a project file and import it later to restore your graph.
Generate a share link and copy it.
Add bloom and neon vibes.
Chromatic aberration & glitch.
UV distortion & warping.
Perlin, Simplex, & Fractal.
Gradient maps & remapping.
Write raw GLSL code for limitless possibilities.