@nativescript/canvas 2.0.0-alpha.23 → 2.0.0-alpha.24

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. package/Canvas/common.d.ts +199 -25
  2. package/Canvas/common.js +624 -489
  3. package/Canvas/common.js.map +1 -1
  4. package/Canvas/index.android.js +19 -9
  5. package/Canvas/index.android.js.map +1 -1
  6. package/Canvas/index.ios.js +13 -12
  7. package/Canvas/index.ios.js.map +1 -1
  8. package/Canvas2D/CanvasRenderingContext2D/index.d.ts +0 -1
  9. package/Canvas2D/CanvasRenderingContext2D/index.js +9 -121
  10. package/Canvas2D/CanvasRenderingContext2D/index.js.map +1 -1
  11. package/WebGL/WebGLExtensions/index.d.ts +4 -3
  12. package/WebGL/WebGLExtensions/index.js +10 -3
  13. package/WebGL/WebGLExtensions/index.js.map +1 -1
  14. package/WebGL/WebGLRenderingContext/index.d.ts +15 -15
  15. package/WebGL/WebGLRenderingContext/index.js +15 -277
  16. package/WebGL/WebGLRenderingContext/index.js.map +1 -1
  17. package/WebGL2/WebGL2RenderingContext/index.js +0 -86
  18. package/WebGL2/WebGL2RenderingContext/index.js.map +1 -1
  19. package/package.json +1 -1
  20. package/platforms/android/canvas-release.aar +0 -0
  21. package/platforms/ios/CanvasNative.xcframework/Info.plist +5 -5
  22. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/CanvasNative +0 -0
  23. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Headers/CanvasNative-Swift.h +2 -0
  24. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Modules/CanvasNative.swiftmodule/Project/arm64-apple-ios.swiftsourceinfo +0 -0
  25. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios.abi.json +1035 -83
  26. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios.private.swiftinterface +2 -0
  27. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios.swiftinterface +2 -0
  28. package/platforms/ios/CanvasNative.xcframework/ios-arm64/dSYMs/CanvasNative.framework.dSYM/Contents/Resources/DWARF/CanvasNative +0 -0
  29. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/CanvasNative +0 -0
  30. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Headers/CanvasNative-Swift.h +4 -0
  31. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/Project/arm64-apple-ios-simulator.swiftsourceinfo +0 -0
  32. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/Project/x86_64-apple-ios-simulator.swiftsourceinfo +0 -0
  33. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios-simulator.abi.json +1035 -83
  34. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface +2 -0
  35. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios-simulator.swiftinterface +2 -0
  36. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/x86_64-apple-ios-simulator.abi.json +1035 -83
  37. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface +2 -0
  38. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/x86_64-apple-ios-simulator.swiftinterface +2 -0
  39. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/_CodeSignature/CodeResources +22 -22
  40. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/dSYMs/CanvasNative.framework.dSYM/Contents/Resources/DWARF/CanvasNative +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/canvas/WebGL/WebGLRenderingContext/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/canvas/WebGL/WebGLRenderingContext/index.ts"],"names":[],"mappings":"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"}
@@ -37,186 +37,147 @@ export class WebGL2RenderingContext extends WebGL2RenderingContextBase {
37
37
  }
38
38
  /* Transform feedback */
39
39
  beginQuery(target, query) {
40
- this._glCheckError('beginQuery');
41
40
  const value = query.native;
42
41
  this.native.beginQuery(target, value);
43
42
  }
44
43
  beginTransformFeedback(primitiveMode) {
45
- this._glCheckError('beginTransformFeedback');
46
44
  this.native.beginTransformFeedback(primitiveMode);
47
45
  }
48
46
  bindBufferBase(target, index, buffer) {
49
- this._glCheckError('bindBufferBase');
50
47
  const value = buffer ? buffer.native : null;
51
48
  this.native.bindBufferBase(target, index, value);
52
49
  }
53
50
  bindBufferRange(target, index, buffer, offset, size) {
54
- this._glCheckError('bindBufferRange');
55
51
  const value = buffer ? buffer.native : null;
56
52
  this.native.bindBufferRange(target, index, value, offset, size);
57
53
  }
58
54
  bindSampler(unit, sampler) {
59
- this._glCheckError('bindSampler');
60
55
  const value = sampler ? sampler.native : null;
61
56
  this.native.bindSampler(unit, value);
62
57
  }
63
58
  bindTransformFeedback(target, transformFeedback) {
64
- this._glCheckError('bindTransformFeedback');
65
59
  const value = transformFeedback ? transformFeedback.native : null;
66
60
  this.native.bindTransformFeedback(target, value);
67
61
  }
68
62
  bindVertexArray(vertexArray) {
69
- this._glCheckError('bindVertexArray');
70
63
  const value = vertexArray ? vertexArray.native : null;
71
64
  this.native.bindVertexArray(value);
72
65
  }
73
66
  blitFramebuffer(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter) {
74
- this._glCheckError('blitFramebuffer');
75
67
  this.native.blitFramebuffer(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter);
76
68
  }
77
69
  clearBufferfi(buffer, drawbuffer, depth, stencil) {
78
- this._glCheckError('clearBufferfi');
79
70
  const value = buffer.native;
80
71
  this.native.clearBufferfi(value, drawbuffer, depth, stencil);
81
72
  }
82
73
  clearBufferfv(buffer, drawbuffer, values) {
83
- this._glCheckError('clearBufferfv');
84
74
  const value = buffer.native;
85
75
  this.native.clearBufferfv(value, drawbuffer, values);
86
76
  }
87
77
  clearBufferiv(buffer, drawbuffer, values) {
88
- this._glCheckError('clearBufferiv');
89
78
  const value = buffer ? buffer.native : 0;
90
79
  this.native.clearBufferiv(value, drawbuffer, values);
91
80
  }
92
81
  clearBufferuiv(buffer, drawbuffer, values) {
93
- this._glCheckError('clearBufferuiv');
94
82
  const value = buffer ? buffer.native : 0;
95
83
  this.native.clearBufferuiv(value, drawbuffer, values);
96
84
  }
97
85
  clientWaitSync(sync, flags, timeout) {
98
- this._glCheckError('clientWaitSync');
99
86
  const value = sync.native;
100
87
  return this.native.clientWaitSync(value, flags, timeout);
101
88
  }
102
89
  compressedTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, srcData, srcOffset = 0, srcLengthOverride = 0) {
103
- this._glCheckError('compressedTexSubImage3D');
104
90
  this.native.compressedTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, srcData, srcOffset);
105
91
  }
106
92
  /* Transform feedback */
107
93
  /* Framebuffers and renderbuffers */
108
94
  copyBufferSubData(readTarget, writeTarget, readOffset, writeOffset, size) {
109
- this._glCheckError('copyBufferSubData');
110
95
  this.native.copyBufferSubData(readTarget, writeTarget, readOffset, writeOffset, size);
111
96
  }
112
97
  copyTexSubImage3D(target, level, xoffset, yoffset, zoffset, x, y, width, height) {
113
- this._glCheckError('copyTexSubImage3D');
114
98
  this.native.copyTexSubImage3D(target, level, xoffset, yoffset, zoffset, x, y, width, height);
115
99
  }
116
100
  createQuery() {
117
- this._glCheckError('createQuery');
118
101
  return new WebGLQuery(this.native.createQuery());
119
102
  }
120
103
  createSampler() {
121
- this._glCheckError('createSampler');
122
104
  return new WebGLSampler(this.native.createSampler());
123
105
  }
124
106
  createTransformFeedback() {
125
- this._glCheckError('createTransformFeedback');
126
107
  return new WebGLTransformFeedback(this.native.createTransformFeedback());
127
108
  }
128
109
  createVertexArray() {
129
- this._glCheckError('createVertexArray');
130
110
  return new WebGLVertexArrayObject(this.native.createVertexArray());
131
111
  }
132
112
  deleteQuery(query) {
133
- this._glCheckError('deleteQuery');
134
113
  const value = query.native;
135
114
  this.native.deleteQuery(value);
136
115
  }
137
116
  deleteSampler(sampler) {
138
- this._glCheckError('deleteSampler');
139
117
  const value = sampler.native;
140
118
  this.native.deleteSampler(value);
141
119
  }
142
120
  deleteSync(sync) {
143
- this._glCheckError('deleteSync');
144
121
  const value = sync.native;
145
122
  this.native.deleteSync(value);
146
123
  }
147
124
  deleteTransformFeedback(transformFeedback) {
148
- this._glCheckError('deleteTransformFeedback');
149
125
  const value = transformFeedback.native;
150
126
  this.native.deleteTransformFeedback(value);
151
127
  }
152
128
  deleteVertexArray(vertexArray) {
153
- this._glCheckError('deleteVertexArray');
154
129
  const value = vertexArray.native;
155
130
  this.native.deleteVertexArray(value);
156
131
  }
157
132
  drawArraysInstanced(mode, first, count, instanceCount) {
158
- this._glCheckError('drawArraysInstanced');
159
133
  this.native.drawArraysInstanced(mode, first, count, instanceCount);
160
134
  }
161
135
  drawBuffers(buffers) {
162
- this._glCheckError('drawBuffers');
163
136
  this._checkArgs('drawBuffers', arguments);
164
137
  this.native.drawBuffers(buffers);
165
138
  }
166
139
  drawElementsInstanced(mode, count, type, offset, instanceCount) {
167
- this._glCheckError('drawElementsInstanced');
168
140
  this.native.drawElementsInstanced(mode, count, type, offset, instanceCount);
169
141
  }
170
142
  drawRangeElements(mode, start, end, count, type, offset) {
171
- this._glCheckError('drawRangeElements');
172
143
  this.native.drawRangeElements(mode, start, end, count, type, offset);
173
144
  }
174
145
  endQuery(target) {
175
- this._glCheckError('endQuery');
176
146
  this.native.endQuery(target);
177
147
  }
178
148
  endTransformFeedback() {
179
- this._glCheckError('endTransformFeedback');
180
149
  this.native.endTransformFeedback();
181
150
  }
182
151
  fenceSync(condition, flags) {
183
- this._glCheckError('fenceSync');
184
152
  return new WebGLSync(this.native.fenceSync(condition, flags));
185
153
  }
186
154
  framebufferTextureLayer(target, attachment, texture, level, layer) {
187
- this._glCheckError('framebufferTextureLayer');
188
155
  const value = texture.native;
189
156
  this.native.framebufferTextureLayer(target, attachment, value, level, layer);
190
157
  }
191
158
  /* Framebuffers and renderbuffers */
192
159
  /* Uniforms */
193
160
  getActiveUniformBlockName(program, uniformBlockIndex) {
194
- this._glCheckError('getActiveUniformBlockName');
195
161
  const value = program.native;
196
162
  return this.native.getActiveUniformBlockName(value, uniformBlockIndex);
197
163
  }
198
164
  getActiveUniformBlockParameter(program, uniformBlockIndex, pname) {
199
- this._glCheckError('getActiveUniformBlockParameter');
200
165
  const value = program.native;
201
166
  return this.native.getActiveUniformBlockParameter(value, uniformBlockIndex, pname);
202
167
  }
203
168
  getActiveUniforms(program, uniformIndices, pname) {
204
- this._glCheckError('getActiveUniforms');
205
169
  const value = program.native;
206
170
  return this.native.getActiveUniforms(value, uniformIndices, pname);
207
171
  }
208
172
  getBufferSubData(target, srcByteOffset, dstData, dstOffset = 0, length = 0) {
209
- this._glCheckError('getBufferSubData');
210
173
  this.native.getBufferSubData(target, srcByteOffset, dstData, dstOffset, length);
211
174
  }
212
175
  getFragDataLocation(program, name) {
213
- this._glCheckError('getFragDataLocation');
214
176
  const value = program.native;
215
177
  const result = this.native.getFragDataLocation(value, name);
216
178
  return result !== -1 ? result : null;
217
179
  }
218
180
  getIndexedParameter(target, index) {
219
- this._glCheckError('getIndexedParameter');
220
181
  const param = this.native.getIndexedParameter(target, index);
221
182
  if (target === this.TRANSFORM_FEEDBACK_BUFFER_BINDING || target === this.UNIFORM_BUFFER_BINDING) {
222
183
  return new WebGLBuffer(param);
@@ -224,11 +185,9 @@ export class WebGL2RenderingContext extends WebGL2RenderingContextBase {
224
185
  return param;
225
186
  }
226
187
  getInternalformatParameter(target, internalformat, pname) {
227
- this._glCheckError('getInternalformatParameter');
228
188
  return this.native.getInternalformatParameter(target, internalformat, pname);
229
189
  }
230
190
  getQueryParameter(query, pname) {
231
- this._glCheckError('getQueryParameter');
232
191
  const value = query.native;
233
192
  const result = this.native.getQueryParameter(value, pname);
234
193
  if (result === 0) {
@@ -238,7 +197,6 @@ export class WebGL2RenderingContext extends WebGL2RenderingContextBase {
238
197
  }
239
198
  //@ts-ignore
240
199
  getParameter(pname) {
241
- this._glCheckError('getParameter');
242
200
  this._checkArgs('getParameter', arguments);
243
201
  const value = this.native.getParameter(pname);
244
202
  switch (pname) {
@@ -258,7 +216,6 @@ export class WebGL2RenderingContext extends WebGL2RenderingContextBase {
258
216
  }
259
217
  }
260
218
  getQuery(target, pname) {
261
- this._glCheckError('getQuery');
262
219
  const query = this.native.getQuery(target, pname);
263
220
  if (query) {
264
221
  return new WebGLQuery(query);
@@ -266,17 +223,14 @@ export class WebGL2RenderingContext extends WebGL2RenderingContextBase {
266
223
  return null;
267
224
  }
268
225
  getSamplerParameter(sampler, pname) {
269
- this._glCheckError('getSamplerParameter');
270
226
  const value = sampler.native;
271
227
  return this.native.getSamplerParameter(value, pname);
272
228
  }
273
229
  getSyncParameter(sync, pname) {
274
- this._glCheckError('getSyncParameter');
275
230
  const value = sync.native;
276
231
  return this.native.getSyncParameter(value, pname);
277
232
  }
278
233
  getTransformFeedbackVarying(program, index) {
279
- this._glCheckError('getTransformFeedbackVarying');
280
234
  const value = program.native;
281
235
  const info = this.native.getTransformFeedbackVarying(value, index);
282
236
  if (info) {
@@ -285,78 +239,62 @@ export class WebGL2RenderingContext extends WebGL2RenderingContextBase {
285
239
  return null;
286
240
  }
287
241
  getUniformBlockIndex(program, uniformBlockName) {
288
- this._glCheckError('getUniformBlockIndex');
289
242
  const value = program.native;
290
243
  return this.native.getUniformBlockIndex(value, uniformBlockName);
291
244
  }
292
245
  getUniformIndices(program, uniformNames) {
293
- this._glCheckError('getUniformIndices');
294
246
  const value = program.native;
295
247
  return this.native.getUniformIndices(value, uniformNames);
296
248
  }
297
249
  invalidateFramebuffer(target, attachments) {
298
- this._glCheckError('invalidateFramebuffer');
299
250
  this.native.invalidateFramebuffer(target, attachments);
300
251
  }
301
252
  invalidateSubFramebuffer(target, attachments, x, y, width, height) {
302
- this._glCheckError('invalidateSubFramebuffer');
303
253
  this.native.invalidateSubFramebuffer(target, attachments, x, y, width, height);
304
254
  }
305
255
  isQuery(query) {
306
- this._glCheckError('isQuery');
307
256
  const value = query.native;
308
257
  return this.native.isQuery(value);
309
258
  }
310
259
  isSampler(sampler) {
311
- this._glCheckError('isSampler');
312
260
  const value = sampler.native;
313
261
  return this.native.isSampler(value);
314
262
  }
315
263
  isSync(sync) {
316
- this._glCheckError('isSync');
317
264
  const value = sync.native;
318
265
  return this.native.isSync(value);
319
266
  }
320
267
  isTransformFeedback(transformFeedback) {
321
- this._glCheckError('isTransformFeedback');
322
268
  const value = transformFeedback.native;
323
269
  return this.native.isTransformFeedback(value);
324
270
  }
325
271
  isVertexArray(vertexArray) {
326
- this._glCheckError('isVertexArray');
327
272
  const value = vertexArray.native;
328
273
  return this.native.isVertexArray(value);
329
274
  }
330
275
  pauseTransformFeedback() {
331
- this._glCheckError('pauseTransformFeedback');
332
276
  this.native.pauseTransformFeedback();
333
277
  }
334
278
  readBuffer(src) {
335
- this._glCheckError('readBuffer');
336
279
  this.native.readBuffer(src);
337
280
  }
338
281
  renderbufferStorageMultisample(target, samples, internalFormat, width, height) {
339
- this._glCheckError('renderbufferStorageMultisample');
340
282
  this.native.renderbufferStorageMultisample(target, samples, internalFormat, width, height);
341
283
  }
342
284
  resumeTransformFeedback() {
343
- this._glCheckError('resumeTransformFeedback');
344
285
  this.native.resumeTransformFeedback();
345
286
  }
346
287
  samplerParameterf(sampler, pname, param) {
347
- this._glCheckError('samplerParameterf');
348
288
  const value = sampler.native;
349
289
  this.native.samplerParameterf(value, pname, param);
350
290
  }
351
291
  /* Uniforms */
352
292
  /* Sync objects */
353
293
  samplerParameteri(sampler, pname, param) {
354
- this._glCheckError('samplerParameteri');
355
294
  const value = sampler.native;
356
295
  this.native.samplerParameteri(value, pname, param);
357
296
  }
358
297
  texImage3D(target, level, internalformat, width, height, depth, border, format, type, source) {
359
- this._glCheckError('texImage3D');
360
298
  if (typeof source === 'number') {
361
299
  this.native.texImage3D(target, level, internalformat, width, height, depth, border, format, type, source);
362
300
  }
@@ -395,15 +333,12 @@ export class WebGL2RenderingContext extends WebGL2RenderingContextBase {
395
333
  }
396
334
  }
397
335
  texStorage2D(target, levels, internalformat, width, height) {
398
- this._glCheckError('texStorage2D');
399
336
  this.native.texStorage2D(target, levels, internalformat, width, height);
400
337
  }
401
338
  texStorage3D(target, levels, internalformat, width, height, depth) {
402
- this._glCheckError('texStorage3D');
403
339
  this.native.texStorage3D(target, levels, internalformat, width, height, depth);
404
340
  }
405
341
  texSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, srcData, srcOffset = 0) {
406
- this._glCheckError('texSubImage3D');
407
342
  if (typeof srcData === 'number') {
408
343
  this.native.texSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, srcData);
409
344
  }
@@ -442,105 +377,84 @@ export class WebGL2RenderingContext extends WebGL2RenderingContextBase {
442
377
  }
443
378
  }
444
379
  transformFeedbackVaryings(program, varyings, bufferMode) {
445
- this._glCheckError('transformFeedbackVaryings');
446
380
  const value = program.native;
447
381
  this.native.transformFeedbackVaryings(value, varyings, bufferMode);
448
382
  }
449
383
  uniform1ui(location, v0) {
450
- this._glCheckError('uniform1ui');
451
384
  const value = location.native;
452
385
  this.native.uniform1ui(value, v0);
453
386
  }
454
387
  uniform1uiv(location, data) {
455
- this._glCheckError('uniform1uiv');
456
388
  const value = location.native;
457
389
  this.native.uniform1uiv(value, data);
458
390
  }
459
391
  uniform2ui(location, v0, v1) {
460
- this._glCheckError('uniform2ui');
461
392
  const value = location.native;
462
393
  this.native.uniform2ui(value, v0, v1);
463
394
  }
464
395
  uniform2uiv(location, data) {
465
- this._glCheckError('uniform2uiv');
466
396
  const value = location.native;
467
397
  this.native.uniform2uiv(value, data);
468
398
  }
469
399
  /* Sync objects */
470
400
  /* Miscellaneous constants */
471
401
  uniform3ui(location, v0, v1, v2) {
472
- this._glCheckError('uniform3ui');
473
402
  const value = location.native;
474
403
  this.native.uniform3ui(value, v0, v1, v2);
475
404
  }
476
405
  uniform3uiv(location, data) {
477
- this._glCheckError('uniform3uiv');
478
406
  const value = location.native;
479
407
  this.native.uniform3uiv(value, data);
480
408
  }
481
409
  uniform4ui(location, v0, v1, v2, v3) {
482
- this._glCheckError('uniform4ui');
483
410
  const value = location.native;
484
411
  this.native.uniform4ui(value, v0, v1, v2, v3);
485
412
  }
486
413
  uniform4uiv(location, data) {
487
- this._glCheckError('uniform4uiv');
488
414
  const value = location.native;
489
415
  this.native.uniform4uiv(value, data);
490
416
  }
491
417
  uniformBlockBinding(program, uniformBlockIndex, uniformBlockBinding) {
492
- this._glCheckError('uniformBlockBinding');
493
418
  const value = program.native;
494
419
  this.native.uniformBlockBinding(value, uniformBlockIndex, uniformBlockBinding);
495
420
  }
496
421
  uniformMatrix2x3fv(location, transpose, data) {
497
- this._glCheckError('uniformMatrix2x3fv');
498
422
  const value = location.native;
499
423
  this.native.uniformMatrix2x3fv(value, transpose, data);
500
424
  }
501
425
  uniformMatrix2x4fv(location, transpose, data) {
502
- this._glCheckError('uniformMatrix2x4fv');
503
426
  const value = location.native;
504
427
  this.native.uniformMatrix2x4fv(value, transpose, data);
505
428
  }
506
429
  uniformMatrix3x2fv(location, transpose, data) {
507
- this._glCheckError('uniformMatrix3x2fv');
508
430
  const value = location.native;
509
431
  this.native.uniformMatrix3x2fv(value, transpose, data);
510
432
  }
511
433
  uniformMatrix3x4fv(location, transpose, data) {
512
- this._glCheckError('uniformMatrix3x4fv');
513
434
  const value = location.native;
514
435
  this.native.uniformMatrix3x4fv(value, transpose, data);
515
436
  }
516
437
  uniformMatrix4x2fv(location, transpose, data) {
517
- this._glCheckError('uniformMatrix4x2fv');
518
438
  const value = location.native;
519
439
  this.native.uniformMatrix4x2fv(value, transpose, data);
520
440
  }
521
441
  uniformMatrix4x3fv(location, transpose, data) {
522
- this._glCheckError('uniformMatrix4x3fv');
523
442
  const value = location.native;
524
443
  this.native.uniformMatrix4x3fv(value, transpose, data);
525
444
  }
526
445
  vertexAttribDivisor(index, divisor) {
527
- this._glCheckError('vertexAttribDivisor');
528
446
  this.native.vertexAttribDivisor(index, divisor);
529
447
  }
530
448
  vertexAttribI4i(index, v0, v1, v2, v3) {
531
- this._glCheckError('vertexAttribI4i');
532
449
  this.native.vertexAttribI4i(index, v0, v1, v2, v3);
533
450
  }
534
451
  vertexAttribI4iv(index, value) {
535
- this._glCheckError('vertexAttribI4iv');
536
452
  this.native.vertexAttribI4iv(index, value);
537
453
  }
538
454
  vertexAttribI4ui(index, v0, v1, v2, v3) {
539
- this._glCheckError('vertexAttribI4ui');
540
455
  this.native.vertexAttribI4ui(index, v0, v1, v2, v3);
541
456
  }
542
457
  vertexAttribI4uiv(index, value) {
543
- this._glCheckError('vertexAttribI4uiv');
544
458
  this.native.vertexAttribI4uiv(index, value);
545
459
  }
546
460
  }