Introduces a visual shader example to demonstrate node-based shader creation.
This commit includes:
- Core node editor implementation with node dragging, linking, and selection
- Example nodes for color, perlin noise, add, multiply, and output
- Dynamic input pins to showcase node extension capabilities
- Integration with OpenGL for rendering node previews
Implements a basic node editor using ImGui for creating
and manipulating nodes and links.
Introduces node creation, deletion, selection, dragging,
zooming, panning, and linking functionalities.
Adds basic pin typing for color and compatibility, including
Any, Float, Vector, Texture, and Exec types.
Also includes saving and loading node graphs to/from strings.