/*global define*/ define([ '../Core/freezeObject' ], function( freezeObject) { "use strict"; /** * Determines the action taken based on the result of the stencil test. * * @namespace * @alias StencilOperation */ var StencilOperation = { /** * 0. Sets the stencil buffer value to zero. * * @type {Number} * @constant */ ZERO : 0, /** * 0x1E00. Does not change the stencil buffer. * * @type {Number} * @constant */ KEEP : 0x1E00, /** * 0x1E01. Replaces the stencil buffer value with the reference value. * * @type {Number} * @constant */ REPLACE : 0x1E01, /** * 0x1E02. Increments the stencil buffer value, clamping to unsigned byte. * * @type {Number} * @constant */ INCREMENT : 0x1E02, // WebGL: INCR /** * 0x1E03. Decrements the stencil buffer value, clamping to zero. * * @type {Number} * @constant */ DECREMENT : 0x1E03, // WebGL: DECR /** * 0x150A. Bitwise inverts the existing stencil buffer value. * * @type {Number} * @constant */ INVERT : 0x150A, /** * 0x8507. Increments the stencil buffer value, wrapping to zero when exceeding the unsigned byte range. * * @type {Number} * @constant */ INCREMENT_WRAP : 0x8507, // WebGL: INCR_WRAP /** * 0x8508. Decrements the stencil buffer value, wrapping to the maximum unsigned byte instead of going below zero. * * @type {Number} * @constant */ DECREMENT_WRAP : 0x8508 // WebGL: DECR_WRAP }; return freezeObject(StencilOperation); });