- Modular block files: split into blocks-algo, blocks-data, blocks-proc - New modules: sections.js (labelled canvas areas), proc-browser.js (procedure tree modal), lib-loader.js (lazy library loading), templates.js (project templates), errno-data.js (errno table) - Test infrastructure: browser test suite (28 tests) and Node pure-function tests (75 tests) - Warning system: unified .block-warn for disconnected inputs, unconnected error hooks, and zero-exit-in-error-path - Error path highlighting: red flow paths and block borders for error-only subgraphs - Input hooks: hidden by default, shown during linking; outputs always at bottom - Block editor modal: pencil icon, colour picker for accent, compact field labels - Doc generation: standalone node script extracts JSDoc -> docs/API.md (124 declarations) - Persistence: save/restore sections, errno selection, block colours - Fixes: _segmentsIntersect bug, WCEnd crash from closest(this), drawpath guard on detached elements
137 lines
4.3 KiB
JSON
137 lines
4.3 KiB
JSON
{
|
|
"procedures": [
|
|
{
|
|
"name": "glCreateShader",
|
|
"inputs": [["type","unsigned int"]],
|
|
"outputs": [["shader","unsigned int"]],
|
|
"desc": "Creates an empty shader object of the specified type."
|
|
},
|
|
{
|
|
"name": "glShaderSource",
|
|
"inputs": [["shader","unsigned int"],["count","int"],["source","string"]],
|
|
"outputs": [],
|
|
"desc": "Sets the source code for a shader object."
|
|
},
|
|
{
|
|
"name": "glCompileShader",
|
|
"inputs": [["shader","unsigned int"]],
|
|
"outputs": [],
|
|
"desc": "Compiles the source code of a shader object."
|
|
},
|
|
{
|
|
"name": "glGetShaderiv",
|
|
"inputs": [["shader","unsigned int"],["pname","unsigned int"]],
|
|
"outputs": [["params","int"]],
|
|
"desc": "Retrieves a parameter value from a shader object."
|
|
},
|
|
{
|
|
"name": "glCreateProgram",
|
|
"inputs": [],
|
|
"outputs": [["program","unsigned int"]],
|
|
"desc": "Creates an empty shader program object."
|
|
},
|
|
{
|
|
"name": "glAttachShader",
|
|
"inputs": [["program","unsigned int"],["shader","unsigned int"]],
|
|
"outputs": [],
|
|
"desc": "Attaches a shader object to a shader program."
|
|
},
|
|
{
|
|
"name": "glLinkProgram",
|
|
"inputs": [["program","unsigned int"]],
|
|
"outputs": [],
|
|
"desc": "Links the attached shaders into an executable program."
|
|
},
|
|
{
|
|
"name": "glGetProgramiv",
|
|
"inputs": [["program","unsigned int"],["pname","unsigned int"]],
|
|
"outputs": [["params","int"]],
|
|
"desc": "Retrieves a parameter value from a program object."
|
|
},
|
|
{
|
|
"name": "glGenVertexArrays",
|
|
"inputs": [["n","unsigned int"]],
|
|
"outputs": [["arrays","unsigned int"]],
|
|
"desc": "Generates vertex array object (VAO) names."
|
|
},
|
|
{
|
|
"name": "glBindVertexArray",
|
|
"inputs": [["array","unsigned int"]],
|
|
"outputs": [],
|
|
"desc": "Binds a VAO for use in subsequent vertex operations."
|
|
},
|
|
{
|
|
"name": "glGenBuffers",
|
|
"inputs": [["n","unsigned int"]],
|
|
"outputs": [["buffers","unsigned int"]],
|
|
"desc": "Generates buffer object names."
|
|
},
|
|
{
|
|
"name": "glBindBuffer",
|
|
"inputs": [["target","unsigned int"],["buffer","unsigned int"]],
|
|
"outputs": [],
|
|
"desc": "Binds a buffer object to a target."
|
|
},
|
|
{
|
|
"name": "glBufferData",
|
|
"inputs": [["target","unsigned int"],["size","int"],["data","string"],["usage","unsigned int"]],
|
|
"outputs": [],
|
|
"desc": "Uploads vertex data to the currently bound buffer."
|
|
},
|
|
{
|
|
"name": "glVertexAttribPointer",
|
|
"inputs": [["index","unsigned int"],["size","int"],["type","unsigned int"],["normalized","int"],["stride","int"],["pointer","int"]],
|
|
"outputs": [],
|
|
"desc": "Defines how vertex data is mapped to a shader attribute."
|
|
},
|
|
{
|
|
"name": "glEnableVertexAttribArray",
|
|
"inputs": [["index","unsigned int"]],
|
|
"outputs": [],
|
|
"desc": "Enables a vertex attribute array for rendering."
|
|
},
|
|
{
|
|
"name": "glUseProgram",
|
|
"inputs": [["program","unsigned int"]],
|
|
"outputs": [],
|
|
"desc": "Activates a shader program for rendering."
|
|
},
|
|
{
|
|
"name": "glDrawArrays",
|
|
"inputs": [["mode","unsigned int"],["first","int"],["count","int"]],
|
|
"outputs": [],
|
|
"desc": "Renders primitives from the currently bound vertex data."
|
|
},
|
|
{
|
|
"name": "glClear",
|
|
"inputs": [["mask","unsigned int"]],
|
|
"outputs": [],
|
|
"desc": "Clears the specified buffers (color, depth, stencil)."
|
|
},
|
|
{
|
|
"name": "glClearColor",
|
|
"inputs": [["red","float"],["green","float"],["blue","float"],["alpha","float"]],
|
|
"outputs": [],
|
|
"desc": "Sets the clear color used when clearing the color buffer."
|
|
},
|
|
{
|
|
"name": "glDeleteShader",
|
|
"inputs": [["shader","unsigned int"]],
|
|
"outputs": [],
|
|
"desc": "Deletes a shader object and frees its resources."
|
|
},
|
|
{
|
|
"name": "glDeleteProgram",
|
|
"inputs": [["program","unsigned int"]],
|
|
"outputs": [],
|
|
"desc": "Deletes a shader program and frees its resources."
|
|
},
|
|
{
|
|
"name": "glViewport",
|
|
"inputs": [["x","int"],["y","int"],["width","int"],["height","int"]],
|
|
"outputs": [],
|
|
"desc": "Sets the viewport rectangle for rendering."
|
|
}
|
|
]
|
|
}
|