| 60183 | }); |
| 60184 | } |
| 60185 | function installSetterSpy(gl, functionName, setter) { |
| 60186 | var originalSetterFunc = gl[functionName].bind(gl); |
| 60187 | gl[functionName] = function set() { |
| 60188 | for(var _len = arguments.length, params = new Array(_len), _key = 0; _key < _len; _key++)params[_key] = arguments[_key]; |
| 60189 | var _setter = setter.apply(void 0, [ |
| 60190 | gl.state._updateCache |
| 60191 | ].concat(params)), valueChanged = _setter.valueChanged, oldValue = _setter.oldValue; |
| 60192 | if (valueChanged) originalSetterFunc.apply(void 0, params); |
| 60193 | return oldValue; |
| 60194 | }; |
| 60195 | Object.defineProperty(gl[functionName], "name", { |
| 60196 | value: "".concat(functionName, "-to-cache"), |
| 60197 | configurable: false |
| 60198 | }); |
| 60199 | } |
| 60200 | function installProgramSpy(gl) { |
| 60201 | var originalUseProgram = gl.useProgram.bind(gl); |
| 60202 | gl.useProgram = function useProgramLuma(handle) { |