feat(shaders_lab): uniform annotations → auto-generated ImGui controls
- cpp/functions/gfx/uniform_parser: regex-based parser of @slider/@color/@toggle/@xy annotations (+ inline tests) - cpp/functions/gfx/uniform_panel: ImGui widgets + value store + glUniform* apply - shader_canvas: optional uniforms callback invoked per-frame - gl_loader: +glUniform1i/3f/4f - seed plasma: demo uniforms u_speed + u_color - rebuild Windows .exe Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -26,7 +26,10 @@ PFNGLGETUNIFORMLOCATIONPROC fn_glGetUniformLocation = nullptr;
|
||||
PFNGLLINKPROGRAMPROC fn_glLinkProgram = nullptr;
|
||||
PFNGLSHADERSOURCEPROC fn_glShaderSource = nullptr;
|
||||
PFNGLUNIFORM1FPROC fn_glUniform1f = nullptr;
|
||||
PFNGLUNIFORM1IPROC fn_glUniform1i = nullptr;
|
||||
PFNGLUNIFORM2FPROC fn_glUniform2f = nullptr;
|
||||
PFNGLUNIFORM3FPROC fn_glUniform3f = nullptr;
|
||||
PFNGLUNIFORM4FPROC fn_glUniform4f = nullptr;
|
||||
PFNGLUSEPROGRAMPROC fn_glUseProgram = nullptr;
|
||||
|
||||
namespace fn::gfx {
|
||||
@@ -60,7 +63,10 @@ bool gl_loader_init() {
|
||||
LOAD(glLinkProgram);
|
||||
LOAD(glShaderSource);
|
||||
LOAD(glUniform1f);
|
||||
LOAD(glUniform1i);
|
||||
LOAD(glUniform2f);
|
||||
LOAD(glUniform3f);
|
||||
LOAD(glUniform4f);
|
||||
LOAD(glUseProgram);
|
||||
|
||||
#undef LOAD
|
||||
|
||||
Reference in New Issue
Block a user