Skip to content

vorg/webgl-debug

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

webgl-debug

stable

WebGL Debug Utils. This is a node port of WebGLDeveloperTools by Khronos Group.

Usage

NPM

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.