import freezeObject from '../Core/freezeObject.js'; import WebGLConstants from '../Core/WebGLConstants.js'; /** * Determines the action taken based on the result of the stencil test. * * @exports StencilOperation */ var StencilOperation = { /** * Sets the stencil buffer value to zero. * * @type {Number} * @constant */ ZERO : WebGLConstants.ZERO, /** * Does not change the stencil buffer. * * @type {Number} * @constant */ KEEP : WebGLConstants.KEEP, /** * Replaces the stencil buffer value with the reference value. * * @type {Number} * @constant */ REPLACE : WebGLConstants.REPLACE, /** * Increments the stencil buffer value, clamping to unsigned byte. * * @type {Number} * @constant */ INCREMENT : WebGLConstants.INCR, /** * Decrements the stencil buffer value, clamping to zero. * * @type {Number} * @constant */ DECREMENT : WebGLConstants.DECR, /** * Bitwise inverts the existing stencil buffer value. * * @type {Number} * @constant */ INVERT : WebGLConstants.INVERT, /** * Increments the stencil buffer value, wrapping to zero when exceeding the unsigned byte range. * * @type {Number} * @constant */ INCREMENT_WRAP : WebGLConstants.INCR_WRAP, /** * Decrements the stencil buffer value, wrapping to the maximum unsigned byte instead of going below zero. * * @type {Number} * @constant */ DECREMENT_WRAP : WebGLConstants.DECR_WRAP }; export default freezeObject(StencilOperation);