webgl-debug
WebGL Debug Utils. This is a node port of WebGLDeveloperTools by Khronos Group.
Usage
var WebGLDebugUtil = require('webgl-debug');
Examples
Get error code string representation.
var WebGLDebugUtil = require('webgl-debug');
var str = WebGLDebugUtil.glEnumToString(gl.getError());
Create debug context that will throw error on invalid WebGL operation.
var WebGLDebugUtil = require('webgl-debug');
function throwOnGLError(err, funcName, args) {
throw WebGLDebugUtils.glEnumToString(err)
+ "was caused by call to "
+ funcName;
};
gl = WebGLDebugUtils.makeDebugContext(gl, throwOnGLError);
Tutorial
WebGL Wiki: Debugging
API
init()
Initializes this module. Safe to call more than once.
mightBeEnum(value)
Returns true or false if value matches any WebGL enum
glEnumToString(value)
Gets an string version of an WebGL enum.
glFunctionArgToString(functionName, numArgs, argumentIndx, value)
Converts the argument of a WebGL function to a string
glFunctionArgsToString(functionName, args)
Converts the arguments of a WebGL function to a string.
makeDebugContext(ctx, onErrorCb, onFuncCallCb)
returns a wrapped context that calls gl.getError after every command and calls a function if the result is not NO_ERROR
makeLostContextSimulatingCanvas(canvas)
returns a wrapped canvas element that will simulate lost context
resetToInitialState(gl)
Resets a context to the initial state
License
MIT, see LICENSE.md for details.