@sketch-hq/sketch-web-renderer 14.4.2 → 14.5.0

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.
@@ -3012,77 +3012,6 @@ var WebRendererWasmFactory = (() => {
3012
3012
  // unfortunately not allowed even in current browsers (e.g. FF Nightly 75).
3013
3013
  _emscripten_get_now = () => performance.now();
3014
3014
  ;
3015
- var _emscripten_request_animation_frame = (cb, userData) => requestAnimationFrame(timeStamp => getWasmTableEntry(cb)(timeStamp, userData));
3016
- var getHeapMax = () =>
3017
- // Stay one Wasm page short of 4GB: while e.g. Chrome is able to allocate
3018
- // full 4GB Wasm memories, the size will wrap back to 0 bytes in Wasm side
3019
- // for any code that deals with heap sizes, which would require special
3020
- // casing all heap size related code to treat 0 specially.
3021
- 2147483648;
3022
- var growMemory = size => {
3023
- var b = wasmMemory.buffer;
3024
- var pages = (size - b.byteLength + 65535) / 65536;
3025
- try {
3026
- // round size grow request up to wasm page size (fixed 64KB per spec)
3027
- wasmMemory.grow(pages); // .grow() takes a delta compared to the previous size
3028
- updateMemoryViews();
3029
- return 1 /*success*/;
3030
- } catch (e) {
3031
- err("growMemory: Attempted to grow heap from ".concat(b.byteLength, " bytes to ").concat(size, " bytes, but got error: ").concat(e));
3032
- }
3033
- // implicit 0 return to save code size (caller will cast "undefined" into 0
3034
- // anyhow)
3035
- };
3036
- var _emscripten_resize_heap = requestedSize => {
3037
- var oldSize = HEAPU8.length;
3038
- // With CAN_ADDRESS_2GB or MEMORY64, pointers are already unsigned.
3039
- requestedSize >>>= 0;
3040
- // With multithreaded builds, races can happen (another thread might increase the size
3041
- // in between), so return a failure, and let the caller retry.
3042
- assert(requestedSize > oldSize);
3043
-
3044
- // Memory resize rules:
3045
- // 1. Always increase heap size to at least the requested size, rounded up
3046
- // to next page multiple.
3047
- // 2a. If MEMORY_GROWTH_LINEAR_STEP == -1, excessively resize the heap
3048
- // geometrically: increase the heap size according to
3049
- // MEMORY_GROWTH_GEOMETRIC_STEP factor (default +20%), At most
3050
- // overreserve by MEMORY_GROWTH_GEOMETRIC_CAP bytes (default 96MB).
3051
- // 2b. If MEMORY_GROWTH_LINEAR_STEP != -1, excessively resize the heap
3052
- // linearly: increase the heap size by at least
3053
- // MEMORY_GROWTH_LINEAR_STEP bytes.
3054
- // 3. Max size for the heap is capped at 2048MB-WASM_PAGE_SIZE, or by
3055
- // MAXIMUM_MEMORY, or by ASAN limit, depending on which is smallest
3056
- // 4. If we were unable to allocate as much memory, it may be due to
3057
- // over-eager decision to excessively reserve due to (3) above.
3058
- // Hence if an allocation fails, cut down on the amount of excess
3059
- // growth, in an attempt to succeed to perform a smaller allocation.
3060
-
3061
- // A limit is set for how much we can grow. We should not exceed that
3062
- // (the wasm binary specifies it, so if we tried, we'd fail anyhow).
3063
- var maxHeapSize = getHeapMax();
3064
- if (requestedSize > maxHeapSize) {
3065
- err("Cannot enlarge memory, requested ".concat(requestedSize, " bytes, but the limit is ").concat(maxHeapSize, " bytes!"));
3066
- return false;
3067
- }
3068
- var alignUp = (x, multiple) => x + (multiple - x % multiple) % multiple;
3069
-
3070
- // Loop through potential heap size increases. If we attempt a too eager
3071
- // reservation that fails, cut down on the attempted size and reserve a
3072
- // smaller bump instead. (max 3 times, chosen somewhat arbitrarily)
3073
- for (var cutDown = 1; cutDown <= 4; cutDown *= 2) {
3074
- var overGrownHeapSize = oldSize * (1 + 0.2 / cutDown); // ensure geometric growth
3075
- // but limit overreserving (default to capping at +96MB overgrowth at most)
3076
- overGrownHeapSize = Math.min(overGrownHeapSize, requestedSize + 100663296);
3077
- var newSize = Math.min(maxHeapSize, alignUp(Math.max(requestedSize, overGrownHeapSize), 65536));
3078
- var replacement = growMemory(newSize);
3079
- if (replacement) {
3080
- return true;
3081
- }
3082
- }
3083
- err("Failed to grow the heap from ".concat(oldSize, " bytes to ").concat(newSize, " bytes, not enough memory!"));
3084
- return false;
3085
- };
3086
3015
  var webgl_enable_ANGLE_instanced_arrays = ctx => {
3087
3016
  // Extension available in WebGL 1 from Firefox 26 and Google Chrome 30 onwards. Core feature in WebGL 2.
3088
3017
  var ext = ctx.getExtension('ANGLE_instanced_arrays');
@@ -3303,148 +3232,35 @@ var WebRendererWasmFactory = (() => {
3303
3232
  });
3304
3233
  }
3305
3234
  };
3306
- var _emscripten_webgl_make_context_current = contextHandle => {
3307
- var success = GL.makeContextCurrent(contextHandle);
3308
- return success ? 0 : -5;
3309
- };
3310
- var ENV = {};
3311
- var getExecutableName = () => {
3312
- return thisProgram || './this.program';
3313
- };
3314
- var getEnvStrings = () => {
3315
- if (!getEnvStrings.strings) {
3316
- // Default values.
3317
- // Browser language detection #8751
3318
- var lang = (typeof navigator == 'object' && navigator.languages && navigator.languages[0] || 'C').replace('-', '_') + '.UTF-8';
3319
- var env = {
3320
- 'USER': 'web_user',
3321
- 'LOGNAME': 'web_user',
3322
- 'PATH': '/',
3323
- 'PWD': '/',
3324
- 'HOME': '/home/web_user',
3325
- 'LANG': lang,
3326
- '_': getExecutableName()
3327
- };
3328
- // Apply the user-provided values, if any.
3329
- for (var x in ENV) {
3330
- // x is a key in ENV; if ENV[x] is undefined, that means it was
3331
- // explicitly set to be so. We allow user code to do that to
3332
- // force variables with default values to remain unset.
3333
- if (ENV[x] === undefined) delete env[x];else env[x] = ENV[x];
3334
- }
3335
- var strings = [];
3336
- for (var x in env) {
3337
- strings.push("".concat(x, "=").concat(env[x]));
3338
- }
3339
- getEnvStrings.strings = strings;
3340
- }
3341
- return getEnvStrings.strings;
3342
- };
3343
- var stringToAscii = (str, buffer) => {
3344
- for (var i = 0; i < str.length; ++i) {
3345
- assert(str.charCodeAt(i) === (str.charCodeAt(i) & 0xff));
3346
- HEAP8[buffer++] = str.charCodeAt(i);
3347
- }
3348
- // Null-terminate the string
3349
- HEAP8[buffer] = 0;
3350
- };
3351
- var _environ_get = (__environ, environ_buf) => {
3352
- var bufSize = 0;
3353
- getEnvStrings().forEach((string, i) => {
3354
- var ptr = environ_buf + bufSize;
3355
- HEAPU32[__environ + i * 4 >> 2] = ptr;
3356
- stringToAscii(string, ptr);
3357
- bufSize += string.length + 1;
3358
- });
3359
- return 0;
3360
- };
3361
- var _environ_sizes_get = (penviron_count, penviron_buf_size) => {
3362
- var strings = getEnvStrings();
3363
- HEAPU32[penviron_count >> 2] = strings.length;
3364
- var bufSize = 0;
3365
- strings.forEach(string => bufSize += string.length + 1);
3366
- HEAPU32[penviron_buf_size >> 2] = bufSize;
3367
- return 0;
3368
- };
3369
- var runtimeKeepaliveCounter = 0;
3370
- var keepRuntimeAlive = () => noExitRuntime || runtimeKeepaliveCounter > 0;
3371
- var _proc_exit = code => {
3372
- EXITSTATUS = code;
3373
- if (!keepRuntimeAlive()) {
3374
- ABORT = true;
3375
- }
3376
- quit_(code, new ExitStatus(code));
3377
- };
3378
-
3379
3235
  /** @suppress {duplicate } */
3380
- /** @param {boolean|number=} implicit */
3381
- var exitJS = (status, implicit) => {
3382
- EXITSTATUS = status;
3383
- checkUnflushedContent();
3384
-
3385
- // if exit() was called explicitly, warn the user if the runtime isn't actually being shut down
3386
- if (keepRuntimeAlive() && !implicit) {
3387
- var msg = "program exited (with status: ".concat(status, "), but keepRuntimeAlive() is set (counter=").concat(runtimeKeepaliveCounter, ") due to an async operation, so halting execution but not exiting the runtime or preventing further async execution (you can use emscripten_force_exit, if you want to force a true shutdown)");
3388
- readyPromiseReject(msg);
3389
- err(msg);
3390
- }
3391
- _proc_exit(status);
3392
- };
3393
- var _exit = exitJS;
3394
- var SYSCALLS = {
3395
- varargs: undefined,
3396
- getStr(ptr) {
3397
- var ret = UTF8ToString(ptr);
3398
- return ret;
3399
- }
3400
- };
3401
- var _fd_close = fd => {
3402
- abort('fd_close called without SYSCALLS_REQUIRE_FILESYSTEM');
3403
- };
3404
- function _fd_seek(fd, offset, whence, newOffset) {
3405
- offset = bigintToI53Checked(offset);
3406
- return 70;
3407
- ;
3408
- }
3409
- var printCharBuffers = [null, [], []];
3410
- var printChar = (stream, curr) => {
3411
- var buffer = printCharBuffers[stream];
3412
- assert(buffer);
3413
- if (curr === 0 || curr === 10) {
3414
- (stream === 1 ? out : err)(UTF8ArrayToString(buffer, 0));
3415
- buffer.length = 0;
3416
- } else {
3417
- buffer.push(curr);
3418
- }
3419
- };
3420
- var flush_NO_FILESYSTEM = () => {
3421
- // flush anything remaining in the buffers during shutdown
3422
- _fflush(0);
3423
- if (printCharBuffers[1].length) printChar(1, 10);
3424
- if (printCharBuffers[2].length) printChar(2, 10);
3425
- };
3426
- var _fd_write = (fd, iov, iovcnt, pnum) => {
3427
- // hack to support printf in SYSCALLS_REQUIRE_FILESYSTEM=0
3428
- var num = 0;
3429
- for (var i = 0; i < iovcnt; i++) {
3430
- var ptr = HEAPU32[iov >> 2];
3431
- var len = HEAPU32[iov + 4 >> 2];
3432
- iov += 8;
3433
- for (var j = 0; j < len; j++) {
3434
- printChar(fd, HEAPU8[ptr + j]);
3435
- }
3436
- num += len;
3437
- }
3438
- HEAPU32[pnum >> 2] = num;
3439
- return 0;
3440
- };
3441
3236
  var _glActiveTexture = x0 => GLctx.activeTexture(x0);
3237
+ var _emscripten_glActiveTexture = _glActiveTexture;
3238
+
3239
+ /** @suppress {duplicate } */
3442
3240
  var _glAttachShader = (program, shader) => {
3443
3241
  GLctx.attachShader(GL.programs[program], GL.shaders[shader]);
3444
3242
  };
3243
+ var _emscripten_glAttachShader = _glAttachShader;
3244
+
3245
+ /** @suppress {duplicate } */
3246
+ var _glBeginQuery = (target, id) => {
3247
+ GLctx.beginQuery(target, GL.queries[id]);
3248
+ };
3249
+ var _emscripten_glBeginQuery = _glBeginQuery;
3250
+
3251
+ /** @suppress {duplicate } */
3252
+ var _glBeginQueryEXT = (target, id) => {
3253
+ GLctx.disjointTimerQueryExt['beginQueryEXT'](target, GL.queries[id]);
3254
+ };
3255
+ var _emscripten_glBeginQueryEXT = _glBeginQueryEXT;
3256
+
3257
+ /** @suppress {duplicate } */
3445
3258
  var _glBindAttribLocation = (program, index, name) => {
3446
3259
  GLctx.bindAttribLocation(GL.programs[program], index, UTF8ToString(name));
3447
3260
  };
3261
+ var _emscripten_glBindAttribLocation = _glBindAttribLocation;
3262
+
3263
+ /** @suppress {duplicate } */
3448
3264
  var _glBindBuffer = (target, buffer) => {
3449
3265
  if (target == 0x88EB /*GL_PIXEL_PACK_BUFFER*/) {
3450
3266
  // In WebGL 2 glReadPixels entry point, we need to use a different WebGL 2
@@ -3463,26 +3279,59 @@ var WebRendererWasmFactory = (() => {
3463
3279
  }
3464
3280
  GLctx.bindBuffer(target, GL.buffers[buffer]);
3465
3281
  };
3282
+ var _emscripten_glBindBuffer = _glBindBuffer;
3283
+
3284
+ /** @suppress {duplicate } */
3466
3285
  var _glBindFramebuffer = (target, framebuffer) => {
3467
3286
  GLctx.bindFramebuffer(target, GL.framebuffers[framebuffer]);
3468
3287
  };
3288
+ var _emscripten_glBindFramebuffer = _glBindFramebuffer;
3289
+
3290
+ /** @suppress {duplicate } */
3469
3291
  var _glBindRenderbuffer = (target, renderbuffer) => {
3470
3292
  GLctx.bindRenderbuffer(target, GL.renderbuffers[renderbuffer]);
3471
3293
  };
3294
+ var _emscripten_glBindRenderbuffer = _glBindRenderbuffer;
3295
+
3296
+ /** @suppress {duplicate } */
3472
3297
  var _glBindSampler = (unit, sampler) => {
3473
3298
  GLctx.bindSampler(unit, GL.samplers[sampler]);
3474
3299
  };
3300
+ var _emscripten_glBindSampler = _glBindSampler;
3301
+
3302
+ /** @suppress {duplicate } */
3475
3303
  var _glBindTexture = (target, texture) => {
3476
3304
  GLctx.bindTexture(target, GL.textures[texture]);
3477
3305
  };
3306
+ var _emscripten_glBindTexture = _glBindTexture;
3307
+
3308
+ /** @suppress {duplicate } */
3478
3309
  var _glBindVertexArray = vao => {
3479
3310
  GLctx.bindVertexArray(GL.vaos[vao]);
3480
3311
  };
3312
+ var _emscripten_glBindVertexArray = _glBindVertexArray;
3313
+
3314
+ /** @suppress {duplicate } */
3481
3315
  var _glBindVertexArrayOES = _glBindVertexArray;
3316
+ var _emscripten_glBindVertexArrayOES = _glBindVertexArrayOES;
3317
+
3318
+ /** @suppress {duplicate } */
3482
3319
  var _glBlendColor = (x0, x1, x2, x3) => GLctx.blendColor(x0, x1, x2, x3);
3320
+ var _emscripten_glBlendColor = _glBlendColor;
3321
+
3322
+ /** @suppress {duplicate } */
3483
3323
  var _glBlendEquation = x0 => GLctx.blendEquation(x0);
3324
+ var _emscripten_glBlendEquation = _glBlendEquation;
3325
+
3326
+ /** @suppress {duplicate } */
3484
3327
  var _glBlendFunc = (x0, x1) => GLctx.blendFunc(x0, x1);
3328
+ var _emscripten_glBlendFunc = _glBlendFunc;
3329
+
3330
+ /** @suppress {duplicate } */
3485
3331
  var _glBlitFramebuffer = (x0, x1, x2, x3, x4, x5, x6, x7, x8, x9) => GLctx.blitFramebuffer(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9);
3332
+ var _emscripten_glBlitFramebuffer = _glBlitFramebuffer;
3333
+
3334
+ /** @suppress {duplicate } */
3486
3335
  var _glBufferData = (target, size, data, usage) => {
3487
3336
  if (GL.currentContext.version >= 2) {
3488
3337
  // If size is zero, WebGL would interpret uploading the whole input
@@ -3502,6 +3351,9 @@ var WebRendererWasmFactory = (() => {
3502
3351
  // engine JIT issues.
3503
3352
  GLctx.bufferData(target, data ? HEAPU8.subarray(data, data + size) : size, usage);
3504
3353
  };
3354
+ var _emscripten_glBufferData = _glBufferData;
3355
+
3356
+ /** @suppress {duplicate } */
3505
3357
  var _glBufferSubData = (target, offset, size, data) => {
3506
3358
  if (GL.currentContext.version >= 2) {
3507
3359
  size && GLctx.bufferSubData(target, offset, HEAPU8, data, size);
@@ -3509,10 +3361,25 @@ var WebRendererWasmFactory = (() => {
3509
3361
  }
3510
3362
  GLctx.bufferSubData(target, offset, HEAPU8.subarray(data, data + size));
3511
3363
  };
3364
+ var _emscripten_glBufferSubData = _glBufferSubData;
3365
+
3366
+ /** @suppress {duplicate } */
3512
3367
  var _glCheckFramebufferStatus = x0 => GLctx.checkFramebufferStatus(x0);
3368
+ var _emscripten_glCheckFramebufferStatus = _glCheckFramebufferStatus;
3369
+
3370
+ /** @suppress {duplicate } */
3513
3371
  var _glClear = x0 => GLctx.clear(x0);
3372
+ var _emscripten_glClear = _glClear;
3373
+
3374
+ /** @suppress {duplicate } */
3514
3375
  var _glClearColor = (x0, x1, x2, x3) => GLctx.clearColor(x0, x1, x2, x3);
3376
+ var _emscripten_glClearColor = _glClearColor;
3377
+
3378
+ /** @suppress {duplicate } */
3515
3379
  var _glClearStencil = x0 => GLctx.clearStencil(x0);
3380
+ var _emscripten_glClearStencil = _glClearStencil;
3381
+
3382
+ /** @suppress {duplicate } */
3516
3383
  var _glClientWaitSync = (sync, flags, timeout) => {
3517
3384
  // WebGL2 vs GLES3 differences: in GLES3, the timeout parameter is a uint64, where 0xFFFFFFFFFFFFFFFFULL means GL_TIMEOUT_IGNORED.
3518
3385
  // In JS, there's no 64-bit value types, so instead timeout is taken to be signed, and GL_TIMEOUT_IGNORED is given value -1.
@@ -3521,13 +3388,22 @@ var WebRendererWasmFactory = (() => {
3521
3388
  timeout = Number(timeout);
3522
3389
  return GLctx.clientWaitSync(GL.syncs[sync], flags, timeout);
3523
3390
  };
3391
+ var _emscripten_glClientWaitSync = _glClientWaitSync;
3392
+
3393
+ /** @suppress {duplicate } */
3524
3394
  var _glColorMask = (red, green, blue, alpha) => {
3525
3395
  GLctx.colorMask(!!red, !!green, !!blue, !!alpha);
3526
3396
  };
3397
+ var _emscripten_glColorMask = _glColorMask;
3398
+
3399
+ /** @suppress {duplicate } */
3527
3400
  var _glCompileShader = shader => {
3528
3401
  GLctx.compileShader(GL.shaders[shader]);
3529
3402
  };
3530
- var _glCompressedTexImage2D = (target, level, internalFormat, width, height, border, imageSize, data) => {
3403
+ var _emscripten_glCompileShader = _glCompileShader;
3404
+
3405
+ /** @suppress {duplicate } */
3406
+ var _glCompressedTexImage2D = (target, level, internalFormat, width, height, border, imageSize, data) => {
3531
3407
  if (GL.currentContext.version >= 2) {
3532
3408
  if (GLctx.currentPixelUnpackBufferBinding || !imageSize) {
3533
3409
  GLctx.compressedTexImage2D(target, level, internalFormat, width, height, border, imageSize, data);
@@ -3538,6 +3414,9 @@ var WebRendererWasmFactory = (() => {
3538
3414
  }
3539
3415
  GLctx.compressedTexImage2D(target, level, internalFormat, width, height, border, data ? HEAPU8.subarray(data, data + imageSize) : null);
3540
3416
  };
3417
+ var _emscripten_glCompressedTexImage2D = _glCompressedTexImage2D;
3418
+
3419
+ /** @suppress {duplicate } */
3541
3420
  var _glCompressedTexSubImage2D = (target, level, xoffset, yoffset, width, height, format, imageSize, data) => {
3542
3421
  if (GL.currentContext.version >= 2) {
3543
3422
  if (GLctx.currentPixelUnpackBufferBinding || !imageSize) {
@@ -3549,8 +3428,17 @@ var WebRendererWasmFactory = (() => {
3549
3428
  }
3550
3429
  GLctx.compressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, data ? HEAPU8.subarray(data, data + imageSize) : null);
3551
3430
  };
3431
+ var _emscripten_glCompressedTexSubImage2D = _glCompressedTexSubImage2D;
3432
+
3433
+ /** @suppress {duplicate } */
3552
3434
  var _glCopyBufferSubData = (x0, x1, x2, x3, x4) => GLctx.copyBufferSubData(x0, x1, x2, x3, x4);
3435
+ var _emscripten_glCopyBufferSubData = _glCopyBufferSubData;
3436
+
3437
+ /** @suppress {duplicate } */
3553
3438
  var _glCopyTexSubImage2D = (x0, x1, x2, x3, x4, x5, x6, x7) => GLctx.copyTexSubImage2D(x0, x1, x2, x3, x4, x5, x6, x7);
3439
+ var _emscripten_glCopyTexSubImage2D = _glCopyTexSubImage2D;
3440
+
3441
+ /** @suppress {duplicate } */
3554
3442
  var _glCreateProgram = () => {
3555
3443
  var id = GL.getNewId(GL.programs);
3556
3444
  var program = GLctx.createProgram();
@@ -3563,12 +3451,21 @@ var WebRendererWasmFactory = (() => {
3563
3451
  GL.programs[id] = program;
3564
3452
  return id;
3565
3453
  };
3454
+ var _emscripten_glCreateProgram = _glCreateProgram;
3455
+
3456
+ /** @suppress {duplicate } */
3566
3457
  var _glCreateShader = shaderType => {
3567
3458
  var id = GL.getNewId(GL.shaders);
3568
3459
  GL.shaders[id] = GLctx.createShader(shaderType);
3569
3460
  return id;
3570
3461
  };
3462
+ var _emscripten_glCreateShader = _glCreateShader;
3463
+
3464
+ /** @suppress {duplicate } */
3571
3465
  var _glCullFace = x0 => GLctx.cullFace(x0);
3466
+ var _emscripten_glCullFace = _glCullFace;
3467
+
3468
+ /** @suppress {duplicate } */
3572
3469
  var _glDeleteBuffers = (n, buffers) => {
3573
3470
  for (var i = 0; i < n; i++) {
3574
3471
  var id = HEAP32[buffers + i * 4 >> 2];
@@ -3584,6 +3481,9 @@ var WebRendererWasmFactory = (() => {
3584
3481
  if (id == GLctx.currentPixelUnpackBufferBinding) GLctx.currentPixelUnpackBufferBinding = 0;
3585
3482
  }
3586
3483
  };
3484
+ var _emscripten_glDeleteBuffers = _glDeleteBuffers;
3485
+
3486
+ /** @suppress {duplicate } */
3587
3487
  var _glDeleteFramebuffers = (n, framebuffers) => {
3588
3488
  for (var i = 0; i < n; ++i) {
3589
3489
  var id = HEAP32[framebuffers + i * 4 >> 2];
@@ -3594,6 +3494,9 @@ var WebRendererWasmFactory = (() => {
3594
3494
  GL.framebuffers[id] = null;
3595
3495
  }
3596
3496
  };
3497
+ var _emscripten_glDeleteFramebuffers = _glDeleteFramebuffers;
3498
+
3499
+ /** @suppress {duplicate } */
3597
3500
  var _glDeleteProgram = id => {
3598
3501
  if (!id) return;
3599
3502
  var program = GL.programs[id];
@@ -3607,6 +3510,33 @@ var WebRendererWasmFactory = (() => {
3607
3510
  program.name = 0;
3608
3511
  GL.programs[id] = null;
3609
3512
  };
3513
+ var _emscripten_glDeleteProgram = _glDeleteProgram;
3514
+
3515
+ /** @suppress {duplicate } */
3516
+ var _glDeleteQueries = (n, ids) => {
3517
+ for (var i = 0; i < n; i++) {
3518
+ var id = HEAP32[ids + i * 4 >> 2];
3519
+ var query = GL.queries[id];
3520
+ if (!query) continue; // GL spec: "unused names in ids are ignored, as is the name zero."
3521
+ GLctx.deleteQuery(query);
3522
+ GL.queries[id] = null;
3523
+ }
3524
+ };
3525
+ var _emscripten_glDeleteQueries = _glDeleteQueries;
3526
+
3527
+ /** @suppress {duplicate } */
3528
+ var _glDeleteQueriesEXT = (n, ids) => {
3529
+ for (var i = 0; i < n; i++) {
3530
+ var id = HEAP32[ids + i * 4 >> 2];
3531
+ var query = GL.queries[id];
3532
+ if (!query) continue; // GL spec: "unused names in ids are ignored, as is the name zero."
3533
+ GLctx.disjointTimerQueryExt['deleteQueryEXT'](query);
3534
+ GL.queries[id] = null;
3535
+ }
3536
+ };
3537
+ var _emscripten_glDeleteQueriesEXT = _glDeleteQueriesEXT;
3538
+
3539
+ /** @suppress {duplicate } */
3610
3540
  var _glDeleteRenderbuffers = (n, renderbuffers) => {
3611
3541
  for (var i = 0; i < n; i++) {
3612
3542
  var id = HEAP32[renderbuffers + i * 4 >> 2];
@@ -3617,6 +3547,9 @@ var WebRendererWasmFactory = (() => {
3617
3547
  GL.renderbuffers[id] = null;
3618
3548
  }
3619
3549
  };
3550
+ var _emscripten_glDeleteRenderbuffers = _glDeleteRenderbuffers;
3551
+
3552
+ /** @suppress {duplicate } */
3620
3553
  var _glDeleteSamplers = (n, samplers) => {
3621
3554
  for (var i = 0; i < n; i++) {
3622
3555
  var id = HEAP32[samplers + i * 4 >> 2];
@@ -3627,6 +3560,9 @@ var WebRendererWasmFactory = (() => {
3627
3560
  GL.samplers[id] = null;
3628
3561
  }
3629
3562
  };
3563
+ var _emscripten_glDeleteSamplers = _glDeleteSamplers;
3564
+
3565
+ /** @suppress {duplicate } */
3630
3566
  var _glDeleteShader = id => {
3631
3567
  if (!id) return;
3632
3568
  var shader = GL.shaders[id];
@@ -3639,6 +3575,9 @@ var WebRendererWasmFactory = (() => {
3639
3575
  GLctx.deleteShader(shader);
3640
3576
  GL.shaders[id] = null;
3641
3577
  };
3578
+ var _emscripten_glDeleteShader = _glDeleteShader;
3579
+
3580
+ /** @suppress {duplicate } */
3642
3581
  var _glDeleteSync = id => {
3643
3582
  if (!id) return;
3644
3583
  var sync = GL.syncs[id];
@@ -3651,6 +3590,9 @@ var WebRendererWasmFactory = (() => {
3651
3590
  sync.name = 0;
3652
3591
  GL.syncs[id] = null;
3653
3592
  };
3593
+ var _emscripten_glDeleteSync = _glDeleteSync;
3594
+
3595
+ /** @suppress {duplicate } */
3654
3596
  var _glDeleteTextures = (n, textures) => {
3655
3597
  for (var i = 0; i < n; i++) {
3656
3598
  var id = HEAP32[textures + i * 4 >> 2];
@@ -3663,6 +3605,9 @@ var WebRendererWasmFactory = (() => {
3663
3605
  GL.textures[id] = null;
3664
3606
  }
3665
3607
  };
3608
+ var _emscripten_glDeleteTextures = _glDeleteTextures;
3609
+
3610
+ /** @suppress {duplicate } */
3666
3611
  var _glDeleteVertexArrays = (n, vaos) => {
3667
3612
  for (var i = 0; i < n; i++) {
3668
3613
  var id = HEAP32[vaos + i * 4 >> 2];
@@ -3670,24 +3615,48 @@ var WebRendererWasmFactory = (() => {
3670
3615
  GL.vaos[id] = null;
3671
3616
  }
3672
3617
  };
3618
+ var _emscripten_glDeleteVertexArrays = _glDeleteVertexArrays;
3619
+
3620
+ /** @suppress {duplicate } */
3673
3621
  var _glDeleteVertexArraysOES = _glDeleteVertexArrays;
3622
+ var _emscripten_glDeleteVertexArraysOES = _glDeleteVertexArraysOES;
3623
+
3624
+ /** @suppress {duplicate } */
3674
3625
  var _glDepthMask = flag => {
3675
3626
  GLctx.depthMask(!!flag);
3676
3627
  };
3628
+ var _emscripten_glDepthMask = _glDepthMask;
3629
+
3630
+ /** @suppress {duplicate } */
3677
3631
  var _glDisable = x0 => GLctx.disable(x0);
3632
+ var _emscripten_glDisable = _glDisable;
3633
+
3634
+ /** @suppress {duplicate } */
3678
3635
  var _glDisableVertexAttribArray = index => {
3679
3636
  GLctx.disableVertexAttribArray(index);
3680
3637
  };
3638
+ var _emscripten_glDisableVertexAttribArray = _glDisableVertexAttribArray;
3639
+
3640
+ /** @suppress {duplicate } */
3681
3641
  var _glDrawArrays = (mode, first, count) => {
3682
3642
  GLctx.drawArrays(mode, first, count);
3683
3643
  };
3644
+ var _emscripten_glDrawArrays = _glDrawArrays;
3645
+
3646
+ /** @suppress {duplicate } */
3684
3647
  var _glDrawArraysInstanced = (mode, first, count, primcount) => {
3685
3648
  GLctx.drawArraysInstanced(mode, first, count, primcount);
3686
3649
  };
3650
+ var _emscripten_glDrawArraysInstanced = _glDrawArraysInstanced;
3651
+
3652
+ /** @suppress {duplicate } */
3687
3653
  var _glDrawArraysInstancedBaseInstanceWEBGL = (mode, first, count, instanceCount, baseInstance) => {
3688
3654
  GLctx.dibvbi['drawArraysInstancedBaseInstanceWEBGL'](mode, first, count, instanceCount, baseInstance);
3689
3655
  };
3656
+ var _emscripten_glDrawArraysInstancedBaseInstanceWEBGL = _glDrawArraysInstancedBaseInstanceWEBGL;
3690
3657
  var tempFixedLengthArray = [];
3658
+
3659
+ /** @suppress {duplicate } */
3691
3660
  var _glDrawBuffers = (n, bufs) => {
3692
3661
  var bufArray = tempFixedLengthArray[n];
3693
3662
  for (var i = 0; i < n; i++) {
@@ -3695,15 +3664,27 @@ var WebRendererWasmFactory = (() => {
3695
3664
  }
3696
3665
  GLctx.drawBuffers(bufArray);
3697
3666
  };
3667
+ var _emscripten_glDrawBuffers = _glDrawBuffers;
3668
+
3669
+ /** @suppress {duplicate } */
3698
3670
  var _glDrawElements = (mode, count, type, indices) => {
3699
3671
  GLctx.drawElements(mode, count, type, indices);
3700
3672
  };
3673
+ var _emscripten_glDrawElements = _glDrawElements;
3674
+
3675
+ /** @suppress {duplicate } */
3701
3676
  var _glDrawElementsInstanced = (mode, count, type, indices, primcount) => {
3702
3677
  GLctx.drawElementsInstanced(mode, count, type, indices, primcount);
3703
3678
  };
3679
+ var _emscripten_glDrawElementsInstanced = _glDrawElementsInstanced;
3680
+
3681
+ /** @suppress {duplicate } */
3704
3682
  var _glDrawElementsInstancedBaseVertexBaseInstanceWEBGL = (mode, count, type, offset, instanceCount, baseVertex, baseinstance) => {
3705
3683
  GLctx.dibvbi['drawElementsInstancedBaseVertexBaseInstanceWEBGL'](mode, count, type, offset, instanceCount, baseVertex, baseinstance);
3706
3684
  };
3685
+ var _emscripten_glDrawElementsInstancedBaseVertexBaseInstanceWEBGL = _glDrawElementsInstancedBaseVertexBaseInstanceWEBGL;
3686
+
3687
+ /** @suppress {duplicate } */
3707
3688
  var _glDrawRangeElements = (mode, start, end, count, type, indices) => {
3708
3689
  // TODO: This should be a trivial pass-though function registered at the bottom of this page as
3709
3690
  // glFuncs[6][1] += ' drawRangeElements';
@@ -3711,10 +3692,29 @@ var WebRendererWasmFactory = (() => {
3711
3692
  // we work around by ignoring the range.
3712
3693
  _glDrawElements(mode, count, type, indices);
3713
3694
  };
3695
+ var _emscripten_glDrawRangeElements = _glDrawRangeElements;
3696
+
3697
+ /** @suppress {duplicate } */
3714
3698
  var _glEnable = x0 => GLctx.enable(x0);
3699
+ var _emscripten_glEnable = _glEnable;
3700
+
3701
+ /** @suppress {duplicate } */
3715
3702
  var _glEnableVertexAttribArray = index => {
3716
3703
  GLctx.enableVertexAttribArray(index);
3717
3704
  };
3705
+ var _emscripten_glEnableVertexAttribArray = _glEnableVertexAttribArray;
3706
+
3707
+ /** @suppress {duplicate } */
3708
+ var _glEndQuery = x0 => GLctx.endQuery(x0);
3709
+ var _emscripten_glEndQuery = _glEndQuery;
3710
+
3711
+ /** @suppress {duplicate } */
3712
+ var _glEndQueryEXT = target => {
3713
+ GLctx.disjointTimerQueryExt['endQueryEXT'](target);
3714
+ };
3715
+ var _emscripten_glEndQueryEXT = _glEndQueryEXT;
3716
+
3717
+ /** @suppress {duplicate } */
3718
3718
  var _glFenceSync = (condition, flags) => {
3719
3719
  var sync = GLctx.fenceSync(condition, flags);
3720
3720
  if (sync) {
@@ -3725,35 +3725,100 @@ var WebRendererWasmFactory = (() => {
3725
3725
  }
3726
3726
  return 0; // Failed to create a sync object
3727
3727
  };
3728
+ var _emscripten_glFenceSync = _glFenceSync;
3729
+
3730
+ /** @suppress {duplicate } */
3728
3731
  var _glFinish = () => GLctx.finish();
3732
+ var _emscripten_glFinish = _glFinish;
3733
+
3734
+ /** @suppress {duplicate } */
3729
3735
  var _glFlush = () => GLctx.flush();
3736
+ var _emscripten_glFlush = _glFlush;
3737
+
3738
+ /** @suppress {duplicate } */
3730
3739
  var _glFramebufferRenderbuffer = (target, attachment, renderbuffertarget, renderbuffer) => {
3731
3740
  GLctx.framebufferRenderbuffer(target, attachment, renderbuffertarget, GL.renderbuffers[renderbuffer]);
3732
3741
  };
3742
+ var _emscripten_glFramebufferRenderbuffer = _glFramebufferRenderbuffer;
3743
+
3744
+ /** @suppress {duplicate } */
3733
3745
  var _glFramebufferTexture2D = (target, attachment, textarget, texture, level) => {
3734
3746
  GLctx.framebufferTexture2D(target, attachment, textarget, GL.textures[texture], level);
3735
3747
  };
3748
+ var _emscripten_glFramebufferTexture2D = _glFramebufferTexture2D;
3749
+
3750
+ /** @suppress {duplicate } */
3736
3751
  var _glFrontFace = x0 => GLctx.frontFace(x0);
3752
+ var _emscripten_glFrontFace = _glFrontFace;
3753
+
3754
+ /** @suppress {duplicate } */
3737
3755
  var _glGenBuffers = (n, buffers) => {
3738
3756
  GL.genObject(n, buffers, 'createBuffer', GL.buffers);
3739
3757
  };
3758
+ var _emscripten_glGenBuffers = _glGenBuffers;
3759
+
3760
+ /** @suppress {duplicate } */
3740
3761
  var _glGenFramebuffers = (n, ids) => {
3741
3762
  GL.genObject(n, ids, 'createFramebuffer', GL.framebuffers);
3742
3763
  };
3764
+ var _emscripten_glGenFramebuffers = _glGenFramebuffers;
3765
+
3766
+ /** @suppress {duplicate } */
3767
+ var _glGenQueries = (n, ids) => {
3768
+ GL.genObject(n, ids, 'createQuery', GL.queries);
3769
+ };
3770
+ var _emscripten_glGenQueries = _glGenQueries;
3771
+
3772
+ /** @suppress {duplicate } */
3773
+ var _glGenQueriesEXT = (n, ids) => {
3774
+ for (var i = 0; i < n; i++) {
3775
+ var query = GLctx.disjointTimerQueryExt['createQueryEXT']();
3776
+ if (!query) {
3777
+ GL.recordError(0x502 /* GL_INVALID_OPERATION */);
3778
+ while (i < n) HEAP32[ids + i++ * 4 >> 2] = 0;
3779
+ return;
3780
+ }
3781
+ var id = GL.getNewId(GL.queries);
3782
+ query.name = id;
3783
+ GL.queries[id] = query;
3784
+ HEAP32[ids + i * 4 >> 2] = id;
3785
+ }
3786
+ };
3787
+ var _emscripten_glGenQueriesEXT = _glGenQueriesEXT;
3788
+
3789
+ /** @suppress {duplicate } */
3743
3790
  var _glGenRenderbuffers = (n, renderbuffers) => {
3744
3791
  GL.genObject(n, renderbuffers, 'createRenderbuffer', GL.renderbuffers);
3745
3792
  };
3793
+ var _emscripten_glGenRenderbuffers = _glGenRenderbuffers;
3794
+
3795
+ /** @suppress {duplicate } */
3746
3796
  var _glGenSamplers = (n, samplers) => {
3747
3797
  GL.genObject(n, samplers, 'createSampler', GL.samplers);
3748
3798
  };
3799
+ var _emscripten_glGenSamplers = _glGenSamplers;
3800
+
3801
+ /** @suppress {duplicate } */
3749
3802
  var _glGenTextures = (n, textures) => {
3750
3803
  GL.genObject(n, textures, 'createTexture', GL.textures);
3751
3804
  };
3805
+ var _emscripten_glGenTextures = _glGenTextures;
3806
+
3807
+ /** @suppress {duplicate } */
3752
3808
  var _glGenVertexArrays = (n, arrays) => {
3753
3809
  GL.genObject(n, arrays, 'createVertexArray', GL.vaos);
3754
3810
  };
3811
+ var _emscripten_glGenVertexArrays = _glGenVertexArrays;
3812
+
3813
+ /** @suppress {duplicate } */
3755
3814
  var _glGenVertexArraysOES = _glGenVertexArrays;
3815
+ var _emscripten_glGenVertexArraysOES = _glGenVertexArraysOES;
3816
+
3817
+ /** @suppress {duplicate } */
3756
3818
  var _glGenerateMipmap = x0 => GLctx.generateMipmap(x0);
3819
+ var _emscripten_glGenerateMipmap = _glGenerateMipmap;
3820
+
3821
+ /** @suppress {duplicate } */
3757
3822
  var _glGetBufferParameteriv = (target, value, data) => {
3758
3823
  if (!data) {
3759
3824
  // GLES2 specification does not specify how to behave if data is a null
@@ -3764,11 +3829,15 @@ var WebRendererWasmFactory = (() => {
3764
3829
  }
3765
3830
  HEAP32[data >> 2] = GLctx.getBufferParameter(target, value);
3766
3831
  };
3832
+ var _emscripten_glGetBufferParameteriv = _glGetBufferParameteriv;
3833
+
3834
+ /** @suppress {duplicate } */
3767
3835
  var _glGetError = () => {
3768
3836
  var error = GLctx.getError() || GL.lastError;
3769
3837
  GL.lastError = 0 /*GL_NO_ERROR*/;
3770
3838
  return error;
3771
3839
  };
3840
+ var _emscripten_glGetError = _glGetError;
3772
3841
  var readI53FromI64 = ptr => {
3773
3842
  return HEAPU32[ptr >> 2] + HEAP32[ptr + 4 >> 2] * 4294967296;
3774
3843
  };
@@ -3940,7 +4009,12 @@ var WebRendererWasmFactory = (() => {
3940
4009
  break;
3941
4010
  }
3942
4011
  };
4012
+
4013
+ /** @suppress {duplicate } */
3943
4014
  var _glGetFloatv = (name_, p) => emscriptenWebGLGet(name_, p, 2);
4015
+ var _emscripten_glGetFloatv = _glGetFloatv;
4016
+
4017
+ /** @suppress {duplicate } */
3944
4018
  var _glGetFramebufferAttachmentParameteriv = (target, attachment, pname, params) => {
3945
4019
  var result = GLctx.getFramebufferAttachmentParameter(target, attachment, pname);
3946
4020
  if (result instanceof WebGLRenderbuffer || result instanceof WebGLTexture) {
@@ -3948,13 +4022,22 @@ var WebRendererWasmFactory = (() => {
3948
4022
  }
3949
4023
  HEAP32[params >> 2] = result;
3950
4024
  };
4025
+ var _emscripten_glGetFramebufferAttachmentParameteriv = _glGetFramebufferAttachmentParameteriv;
4026
+
4027
+ /** @suppress {duplicate } */
3951
4028
  var _glGetIntegerv = (name_, p) => emscriptenWebGLGet(name_, p, 0);
4029
+ var _emscripten_glGetIntegerv = _glGetIntegerv;
4030
+
4031
+ /** @suppress {duplicate } */
3952
4032
  var _glGetProgramInfoLog = (program, maxLength, length, infoLog) => {
3953
4033
  var log = GLctx.getProgramInfoLog(GL.programs[program]);
3954
4034
  if (log === null) log = '(unknown error)';
3955
4035
  var numBytesWrittenExclNull = maxLength > 0 && infoLog ? stringToUTF8(log, infoLog, maxLength) : 0;
3956
4036
  if (length) HEAP32[length >> 2] = numBytesWrittenExclNull;
3957
4037
  };
4038
+ var _emscripten_glGetProgramInfoLog = _glGetProgramInfoLog;
4039
+
4040
+ /** @suppress {duplicate } */
3958
4041
  var _glGetProgramiv = (program, pname, p) => {
3959
4042
  if (!p) {
3960
4043
  // GLES2 specification does not specify how to behave if p is a null
@@ -3998,6 +4081,104 @@ var WebRendererWasmFactory = (() => {
3998
4081
  HEAP32[p >> 2] = GLctx.getProgramParameter(program, pname);
3999
4082
  }
4000
4083
  };
4084
+ var _emscripten_glGetProgramiv = _glGetProgramiv;
4085
+
4086
+ /** @suppress {duplicate } */
4087
+ var _glGetQueryObjecti64vEXT = (id, pname, params) => {
4088
+ if (!params) {
4089
+ // GLES2 specification does not specify how to behave if params is a null pointer. Since calling this function does not make sense
4090
+ // if p == null, issue a GL error to notify user about it.
4091
+ GL.recordError(0x501 /* GL_INVALID_VALUE */);
4092
+ return;
4093
+ }
4094
+ var query = GL.queries[id];
4095
+ var param;
4096
+ if (GL.currentContext.version < 2) {
4097
+ param = GLctx.disjointTimerQueryExt['getQueryObjectEXT'](query, pname);
4098
+ } else {
4099
+ param = GLctx.getQueryParameter(query, pname);
4100
+ }
4101
+ var ret;
4102
+ if (typeof param == 'boolean') {
4103
+ ret = param ? 1 : 0;
4104
+ } else {
4105
+ ret = param;
4106
+ }
4107
+ writeI53ToI64(params, ret);
4108
+ };
4109
+ var _emscripten_glGetQueryObjecti64vEXT = _glGetQueryObjecti64vEXT;
4110
+
4111
+ /** @suppress {duplicate } */
4112
+ var _glGetQueryObjectui64vEXT = _glGetQueryObjecti64vEXT;
4113
+ var _emscripten_glGetQueryObjectui64vEXT = _glGetQueryObjectui64vEXT;
4114
+
4115
+ /** @suppress {duplicate } */
4116
+ var _glGetQueryObjectuiv = (id, pname, params) => {
4117
+ if (!params) {
4118
+ // GLES2 specification does not specify how to behave if params is a null pointer. Since calling this function does not make sense
4119
+ // if p == null, issue a GL error to notify user about it.
4120
+ GL.recordError(0x501 /* GL_INVALID_VALUE */);
4121
+ return;
4122
+ }
4123
+ var query = GL.queries[id];
4124
+ var param = GLctx.getQueryParameter(query, pname);
4125
+ var ret;
4126
+ if (typeof param == 'boolean') {
4127
+ ret = param ? 1 : 0;
4128
+ } else {
4129
+ ret = param;
4130
+ }
4131
+ HEAP32[params >> 2] = ret;
4132
+ };
4133
+ var _emscripten_glGetQueryObjectuiv = _glGetQueryObjectuiv;
4134
+
4135
+ /** @suppress {duplicate } */
4136
+ var _glGetQueryObjectivEXT = (id, pname, params) => {
4137
+ if (!params) {
4138
+ // GLES2 specification does not specify how to behave if params is a null pointer. Since calling this function does not make sense
4139
+ // if p == null, issue a GL error to notify user about it.
4140
+ GL.recordError(0x501 /* GL_INVALID_VALUE */);
4141
+ return;
4142
+ }
4143
+ var query = GL.queries[id];
4144
+ var param = GLctx.disjointTimerQueryExt['getQueryObjectEXT'](query, pname);
4145
+ var ret;
4146
+ if (typeof param == 'boolean') {
4147
+ ret = param ? 1 : 0;
4148
+ } else {
4149
+ ret = param;
4150
+ }
4151
+ HEAP32[params >> 2] = ret;
4152
+ };
4153
+ /** @suppress {duplicate } */
4154
+ var _glGetQueryObjectuivEXT = _glGetQueryObjectivEXT;
4155
+ var _emscripten_glGetQueryObjectuivEXT = _glGetQueryObjectuivEXT;
4156
+
4157
+ /** @suppress {duplicate } */
4158
+ var _glGetQueryiv = (target, pname, params) => {
4159
+ if (!params) {
4160
+ // GLES2 specification does not specify how to behave if params is a null pointer. Since calling this function does not make sense
4161
+ // if p == null, issue a GL error to notify user about it.
4162
+ GL.recordError(0x501 /* GL_INVALID_VALUE */);
4163
+ return;
4164
+ }
4165
+ HEAP32[params >> 2] = GLctx.getQuery(target, pname);
4166
+ };
4167
+ var _emscripten_glGetQueryiv = _glGetQueryiv;
4168
+
4169
+ /** @suppress {duplicate } */
4170
+ var _glGetQueryivEXT = (target, pname, params) => {
4171
+ if (!params) {
4172
+ // GLES2 specification does not specify how to behave if params is a null pointer. Since calling this function does not make sense
4173
+ // if p == null, issue a GL error to notify user about it.
4174
+ GL.recordError(0x501 /* GL_INVALID_VALUE */);
4175
+ return;
4176
+ }
4177
+ HEAP32[params >> 2] = GLctx.disjointTimerQueryExt['getQueryEXT'](target, pname);
4178
+ };
4179
+ var _emscripten_glGetQueryivEXT = _glGetQueryivEXT;
4180
+
4181
+ /** @suppress {duplicate } */
4001
4182
  var _glGetRenderbufferParameteriv = (target, pname, params) => {
4002
4183
  if (!params) {
4003
4184
  // GLES2 specification does not specify how to behave if params is a null pointer. Since calling this function does not make sense
@@ -4007,18 +4188,27 @@ var WebRendererWasmFactory = (() => {
4007
4188
  }
4008
4189
  HEAP32[params >> 2] = GLctx.getRenderbufferParameter(target, pname);
4009
4190
  };
4191
+ var _emscripten_glGetRenderbufferParameteriv = _glGetRenderbufferParameteriv;
4192
+
4193
+ /** @suppress {duplicate } */
4010
4194
  var _glGetShaderInfoLog = (shader, maxLength, length, infoLog) => {
4011
4195
  var log = GLctx.getShaderInfoLog(GL.shaders[shader]);
4012
4196
  if (log === null) log = '(unknown error)';
4013
4197
  var numBytesWrittenExclNull = maxLength > 0 && infoLog ? stringToUTF8(log, infoLog, maxLength) : 0;
4014
4198
  if (length) HEAP32[length >> 2] = numBytesWrittenExclNull;
4015
4199
  };
4200
+ var _emscripten_glGetShaderInfoLog = _glGetShaderInfoLog;
4201
+
4202
+ /** @suppress {duplicate } */
4016
4203
  var _glGetShaderPrecisionFormat = (shaderType, precisionType, range, precision) => {
4017
4204
  var result = GLctx.getShaderPrecisionFormat(shaderType, precisionType);
4018
4205
  HEAP32[range >> 2] = result.rangeMin;
4019
4206
  HEAP32[range + 4 >> 2] = result.rangeMax;
4020
4207
  HEAP32[precision >> 2] = result.precision;
4021
4208
  };
4209
+ var _emscripten_glGetShaderPrecisionFormat = _glGetShaderPrecisionFormat;
4210
+
4211
+ /** @suppress {duplicate } */
4022
4212
  var _glGetShaderiv = (shader, pname, p) => {
4023
4213
  if (!p) {
4024
4214
  // GLES2 specification does not specify how to behave if p is a null
@@ -4048,12 +4238,15 @@ var WebRendererWasmFactory = (() => {
4048
4238
  HEAP32[p >> 2] = GLctx.getShaderParameter(GL.shaders[shader], pname);
4049
4239
  }
4050
4240
  };
4241
+ var _emscripten_glGetShaderiv = _glGetShaderiv;
4051
4242
  var stringToNewUTF8 = str => {
4052
4243
  var size = lengthBytesUTF8(str) + 1;
4053
4244
  var ret = _malloc(size);
4054
4245
  if (ret) stringToUTF8(str, ret, size);
4055
4246
  return ret;
4056
4247
  };
4248
+
4249
+ /** @suppress {duplicate } */
4057
4250
  var _glGetString = name_ => {
4058
4251
  var ret = GL.stringCache[name_];
4059
4252
  if (!ret) {
@@ -4098,6 +4291,9 @@ var WebRendererWasmFactory = (() => {
4098
4291
  }
4099
4292
  return ret;
4100
4293
  };
4294
+ var _emscripten_glGetString = _glGetString;
4295
+
4296
+ /** @suppress {duplicate } */
4101
4297
  var _glGetStringi = (name, index) => {
4102
4298
  if (GL.currentContext.version < 2) {
4103
4299
  GL.recordError(0x502 /* GL_INVALID_OPERATION */); // Calling GLES3/WebGL2 function with a GLES2/WebGL1 context
@@ -4125,6 +4321,7 @@ var WebRendererWasmFactory = (() => {
4125
4321
  return 0;
4126
4322
  }
4127
4323
  };
4324
+ var _emscripten_glGetStringi = _glGetStringi;
4128
4325
 
4129
4326
  /** @suppress {checkTypes} */
4130
4327
  var jstoi_q = str => parseInt(str);
@@ -4172,6 +4369,8 @@ var WebRendererWasmFactory = (() => {
4172
4369
  }
4173
4370
  }
4174
4371
  };
4372
+
4373
+ /** @suppress {duplicate } */
4175
4374
  var _glGetUniformLocation = (program, name) => {
4176
4375
  name = UTF8ToString(name);
4177
4376
  if (program = GL.programs[program]) {
@@ -4217,6 +4416,9 @@ var WebRendererWasmFactory = (() => {
4217
4416
  }
4218
4417
  return -1;
4219
4418
  };
4419
+ var _emscripten_glGetUniformLocation = _glGetUniformLocation;
4420
+
4421
+ /** @suppress {duplicate } */
4220
4422
  var _glInvalidateFramebuffer = (target, numAttachments, attachments) => {
4221
4423
  var list = tempFixedLengthArray[numAttachments];
4222
4424
  for (var i = 0; i < numAttachments; i++) {
@@ -4224,6 +4426,9 @@ var WebRendererWasmFactory = (() => {
4224
4426
  }
4225
4427
  GLctx.invalidateFramebuffer(target, list);
4226
4428
  };
4429
+ var _emscripten_glInvalidateFramebuffer = _glInvalidateFramebuffer;
4430
+
4431
+ /** @suppress {duplicate } */
4227
4432
  var _glInvalidateSubFramebuffer = (target, numAttachments, attachments, x, y, width, height) => {
4228
4433
  var list = tempFixedLengthArray[numAttachments];
4229
4434
  for (var i = 0; i < numAttachments; i++) {
@@ -4231,13 +4436,25 @@ var WebRendererWasmFactory = (() => {
4231
4436
  }
4232
4437
  GLctx.invalidateSubFramebuffer(target, list, x, y, width, height);
4233
4438
  };
4439
+ var _emscripten_glInvalidateSubFramebuffer = _glInvalidateSubFramebuffer;
4440
+
4441
+ /** @suppress {duplicate } */
4234
4442
  var _glIsSync = sync => GLctx.isSync(GL.syncs[sync]);
4443
+ var _emscripten_glIsSync = _glIsSync;
4444
+
4445
+ /** @suppress {duplicate } */
4235
4446
  var _glIsTexture = id => {
4236
4447
  var texture = GL.textures[id];
4237
4448
  if (!texture) return 0;
4238
4449
  return GLctx.isTexture(texture);
4239
4450
  };
4451
+ var _emscripten_glIsTexture = _glIsTexture;
4452
+
4453
+ /** @suppress {duplicate } */
4240
4454
  var _glLineWidth = x0 => GLctx.lineWidth(x0);
4455
+ var _emscripten_glLineWidth = _glLineWidth;
4456
+
4457
+ /** @suppress {duplicate } */
4241
4458
  var _glLinkProgram = program => {
4242
4459
  program = GL.programs[program];
4243
4460
  GLctx.linkProgram(program);
@@ -4245,19 +4462,38 @@ var WebRendererWasmFactory = (() => {
4245
4462
  program.uniformLocsById = 0; // Mark as null-like so that glGetUniformLocation() knows to populate this again.
4246
4463
  program.uniformSizeAndIdsByName = {};
4247
4464
  };
4465
+ var _emscripten_glLinkProgram = _glLinkProgram;
4466
+
4467
+ /** @suppress {duplicate } */
4248
4468
  var _glMultiDrawArraysInstancedBaseInstanceWEBGL = (mode, firsts, counts, instanceCounts, baseInstances, drawCount) => {
4249
4469
  GLctx.mdibvbi['multiDrawArraysInstancedBaseInstanceWEBGL'](mode, HEAP32, firsts >> 2, HEAP32, counts >> 2, HEAP32, instanceCounts >> 2, HEAPU32, baseInstances >> 2, drawCount);
4250
4470
  };
4471
+ var _emscripten_glMultiDrawArraysInstancedBaseInstanceWEBGL = _glMultiDrawArraysInstancedBaseInstanceWEBGL;
4472
+
4473
+ /** @suppress {duplicate } */
4251
4474
  var _glMultiDrawElementsInstancedBaseVertexBaseInstanceWEBGL = (mode, counts, type, offsets, instanceCounts, baseVertices, baseInstances, drawCount) => {
4252
4475
  GLctx.mdibvbi['multiDrawElementsInstancedBaseVertexBaseInstanceWEBGL'](mode, HEAP32, counts >> 2, type, HEAP32, offsets >> 2, HEAP32, instanceCounts >> 2, HEAP32, baseVertices >> 2, HEAPU32, baseInstances >> 2, drawCount);
4253
4476
  };
4477
+ var _emscripten_glMultiDrawElementsInstancedBaseVertexBaseInstanceWEBGL = _glMultiDrawElementsInstancedBaseVertexBaseInstanceWEBGL;
4478
+
4479
+ /** @suppress {duplicate } */
4254
4480
  var _glPixelStorei = (pname, param) => {
4255
4481
  if (pname == 0xCF5 /* GL_UNPACK_ALIGNMENT */) {
4256
4482
  GL.unpackAlignment = param;
4257
4483
  }
4258
4484
  GLctx.pixelStorei(pname, param);
4259
4485
  };
4486
+ var _emscripten_glPixelStorei = _glPixelStorei;
4487
+
4488
+ /** @suppress {duplicate } */
4489
+ var _glQueryCounterEXT = (id, target) => {
4490
+ GLctx.disjointTimerQueryExt['queryCounterEXT'](GL.queries[id], target);
4491
+ };
4492
+ var _emscripten_glQueryCounterEXT = _glQueryCounterEXT;
4493
+
4494
+ /** @suppress {duplicate } */
4260
4495
  var _glReadBuffer = x0 => GLctx.readBuffer(x0);
4496
+ var _emscripten_glReadBuffer = _glReadBuffer;
4261
4497
  var computeUnpackAlignedImageSize = (width, height, sizePerPixel, alignment) => {
4262
4498
  function roundedToNextMultipleOf(x, y) {
4263
4499
  return x + y - 1 & -y;
@@ -4310,6 +4546,8 @@ var WebRendererWasmFactory = (() => {
4310
4546
  var bytes = computeUnpackAlignedImageSize(width, height, sizePerPixel, GL.unpackAlignment);
4311
4547
  return heap.subarray(toTypedArrayIndex(pixels, heap), toTypedArrayIndex(pixels + bytes, heap));
4312
4548
  };
4549
+
4550
+ /** @suppress {duplicate } */
4313
4551
  var _glReadPixels = (x, y, width, height, format, type, pixels) => {
4314
4552
  if (GL.currentContext.version >= 2) {
4315
4553
  if (GLctx.currentPixelPackBufferBinding) {
@@ -4328,29 +4566,71 @@ var WebRendererWasmFactory = (() => {
4328
4566
  }
4329
4567
  GLctx.readPixels(x, y, width, height, format, type, pixelData);
4330
4568
  };
4569
+ var _emscripten_glReadPixels = _glReadPixels;
4570
+
4571
+ /** @suppress {duplicate } */
4331
4572
  var _glRenderbufferStorage = (x0, x1, x2, x3) => GLctx.renderbufferStorage(x0, x1, x2, x3);
4573
+ var _emscripten_glRenderbufferStorage = _glRenderbufferStorage;
4574
+
4575
+ /** @suppress {duplicate } */
4332
4576
  var _glRenderbufferStorageMultisample = (x0, x1, x2, x3, x4) => GLctx.renderbufferStorageMultisample(x0, x1, x2, x3, x4);
4577
+ var _emscripten_glRenderbufferStorageMultisample = _glRenderbufferStorageMultisample;
4578
+
4579
+ /** @suppress {duplicate } */
4333
4580
  var _glSamplerParameterf = (sampler, pname, param) => {
4334
4581
  GLctx.samplerParameterf(GL.samplers[sampler], pname, param);
4335
4582
  };
4583
+ var _emscripten_glSamplerParameterf = _glSamplerParameterf;
4584
+
4585
+ /** @suppress {duplicate } */
4336
4586
  var _glSamplerParameteri = (sampler, pname, param) => {
4337
4587
  GLctx.samplerParameteri(GL.samplers[sampler], pname, param);
4338
4588
  };
4589
+ var _emscripten_glSamplerParameteri = _glSamplerParameteri;
4590
+
4591
+ /** @suppress {duplicate } */
4339
4592
  var _glSamplerParameteriv = (sampler, pname, params) => {
4340
4593
  var param = HEAP32[params >> 2];
4341
4594
  GLctx.samplerParameteri(GL.samplers[sampler], pname, param);
4342
4595
  };
4596
+ var _emscripten_glSamplerParameteriv = _glSamplerParameteriv;
4597
+
4598
+ /** @suppress {duplicate } */
4343
4599
  var _glScissor = (x0, x1, x2, x3) => GLctx.scissor(x0, x1, x2, x3);
4600
+ var _emscripten_glScissor = _glScissor;
4601
+
4602
+ /** @suppress {duplicate } */
4344
4603
  var _glShaderSource = (shader, count, string, length) => {
4345
4604
  var source = GL.getSource(shader, count, string, length);
4346
4605
  GLctx.shaderSource(GL.shaders[shader], source);
4347
4606
  };
4607
+ var _emscripten_glShaderSource = _glShaderSource;
4608
+
4609
+ /** @suppress {duplicate } */
4348
4610
  var _glStencilFunc = (x0, x1, x2) => GLctx.stencilFunc(x0, x1, x2);
4611
+ var _emscripten_glStencilFunc = _glStencilFunc;
4612
+
4613
+ /** @suppress {duplicate } */
4349
4614
  var _glStencilFuncSeparate = (x0, x1, x2, x3) => GLctx.stencilFuncSeparate(x0, x1, x2, x3);
4615
+ var _emscripten_glStencilFuncSeparate = _glStencilFuncSeparate;
4616
+
4617
+ /** @suppress {duplicate } */
4350
4618
  var _glStencilMask = x0 => GLctx.stencilMask(x0);
4619
+ var _emscripten_glStencilMask = _glStencilMask;
4620
+
4621
+ /** @suppress {duplicate } */
4351
4622
  var _glStencilMaskSeparate = (x0, x1) => GLctx.stencilMaskSeparate(x0, x1);
4623
+ var _emscripten_glStencilMaskSeparate = _glStencilMaskSeparate;
4624
+
4625
+ /** @suppress {duplicate } */
4352
4626
  var _glStencilOp = (x0, x1, x2) => GLctx.stencilOp(x0, x1, x2);
4627
+ var _emscripten_glStencilOp = _glStencilOp;
4628
+
4629
+ /** @suppress {duplicate } */
4353
4630
  var _glStencilOpSeparate = (x0, x1, x2, x3) => GLctx.stencilOpSeparate(x0, x1, x2, x3);
4631
+ var _emscripten_glStencilOpSeparate = _glStencilOpSeparate;
4632
+
4633
+ /** @suppress {duplicate } */
4354
4634
  var _glTexImage2D = (target, level, internalFormat, width, height, border, format, type, pixels) => {
4355
4635
  if (GL.currentContext.version >= 2) {
4356
4636
  if (GLctx.currentPixelUnpackBufferBinding) {
@@ -4367,17 +4647,35 @@ var WebRendererWasmFactory = (() => {
4367
4647
  var pixelData = pixels ? emscriptenWebGLGetTexPixelData(type, format, width, height, pixels, internalFormat) : null;
4368
4648
  GLctx.texImage2D(target, level, internalFormat, width, height, border, format, type, pixelData);
4369
4649
  };
4650
+ var _emscripten_glTexImage2D = _glTexImage2D;
4651
+
4652
+ /** @suppress {duplicate } */
4370
4653
  var _glTexParameterf = (x0, x1, x2) => GLctx.texParameterf(x0, x1, x2);
4654
+ var _emscripten_glTexParameterf = _glTexParameterf;
4655
+
4656
+ /** @suppress {duplicate } */
4371
4657
  var _glTexParameterfv = (target, pname, params) => {
4372
4658
  var param = HEAPF32[params >> 2];
4373
4659
  GLctx.texParameterf(target, pname, param);
4374
4660
  };
4661
+ var _emscripten_glTexParameterfv = _glTexParameterfv;
4662
+
4663
+ /** @suppress {duplicate } */
4375
4664
  var _glTexParameteri = (x0, x1, x2) => GLctx.texParameteri(x0, x1, x2);
4665
+ var _emscripten_glTexParameteri = _glTexParameteri;
4666
+
4667
+ /** @suppress {duplicate } */
4376
4668
  var _glTexParameteriv = (target, pname, params) => {
4377
4669
  var param = HEAP32[params >> 2];
4378
4670
  GLctx.texParameteri(target, pname, param);
4379
4671
  };
4672
+ var _emscripten_glTexParameteriv = _glTexParameteriv;
4673
+
4674
+ /** @suppress {duplicate } */
4380
4675
  var _glTexStorage2D = (x0, x1, x2, x3, x4) => GLctx.texStorage2D(x0, x1, x2, x3, x4);
4676
+ var _emscripten_glTexStorage2D = _glTexStorage2D;
4677
+
4678
+ /** @suppress {duplicate } */
4381
4679
  var _glTexSubImage2D = (target, level, xoffset, yoffset, width, height, format, type, pixels) => {
4382
4680
  if (GL.currentContext.version >= 2) {
4383
4681
  if (GLctx.currentPixelUnpackBufferBinding) {
@@ -4393,6 +4691,7 @@ var WebRendererWasmFactory = (() => {
4393
4691
  var pixelData = pixels ? emscriptenWebGLGetTexPixelData(type, format, width, height, pixels, 0) : null;
4394
4692
  GLctx.texSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixelData);
4395
4693
  };
4694
+ var _emscripten_glTexSubImage2D = _glTexSubImage2D;
4396
4695
  var webglGetUniformLocation = location => {
4397
4696
  var p = GLctx.currentProgram;
4398
4697
  if (p) {
@@ -4410,10 +4709,15 @@ var WebRendererWasmFactory = (() => {
4410
4709
  GL.recordError(0x502 /*GL_INVALID_OPERATION*/);
4411
4710
  }
4412
4711
  };
4712
+
4713
+ /** @suppress {duplicate } */
4413
4714
  var _glUniform1f = (location, v0) => {
4414
4715
  GLctx.uniform1f(webglGetUniformLocation(location), v0);
4415
4716
  };
4717
+ var _emscripten_glUniform1f = _glUniform1f;
4416
4718
  var miniTempWebGLFloatBuffers = [];
4719
+
4720
+ /** @suppress {duplicate } */
4417
4721
  var _glUniform1fv = (location, count, value) => {
4418
4722
  if (GL.currentContext.version >= 2) {
4419
4723
  count && GLctx.uniform1fv(webglGetUniformLocation(location), HEAPF32, value >> 2, count);
@@ -4430,10 +4734,16 @@ var WebRendererWasmFactory = (() => {
4430
4734
  }
4431
4735
  GLctx.uniform1fv(webglGetUniformLocation(location), view);
4432
4736
  };
4737
+ var _emscripten_glUniform1fv = _glUniform1fv;
4738
+
4739
+ /** @suppress {duplicate } */
4433
4740
  var _glUniform1i = (location, v0) => {
4434
4741
  GLctx.uniform1i(webglGetUniformLocation(location), v0);
4435
4742
  };
4743
+ var _emscripten_glUniform1i = _glUniform1i;
4436
4744
  var miniTempWebGLIntBuffers = [];
4745
+
4746
+ /** @suppress {duplicate } */
4437
4747
  var _glUniform1iv = (location, count, value) => {
4438
4748
  if (GL.currentContext.version >= 2) {
4439
4749
  count && GLctx.uniform1iv(webglGetUniformLocation(location), HEAP32, value >> 2, count);
@@ -4450,9 +4760,15 @@ var WebRendererWasmFactory = (() => {
4450
4760
  }
4451
4761
  GLctx.uniform1iv(webglGetUniformLocation(location), view);
4452
4762
  };
4763
+ var _emscripten_glUniform1iv = _glUniform1iv;
4764
+
4765
+ /** @suppress {duplicate } */
4453
4766
  var _glUniform2f = (location, v0, v1) => {
4454
4767
  GLctx.uniform2f(webglGetUniformLocation(location), v0, v1);
4455
4768
  };
4769
+ var _emscripten_glUniform2f = _glUniform2f;
4770
+
4771
+ /** @suppress {duplicate } */
4456
4772
  var _glUniform2fv = (location, count, value) => {
4457
4773
  if (GL.currentContext.version >= 2) {
4458
4774
  count && GLctx.uniform2fv(webglGetUniformLocation(location), HEAPF32, value >> 2, count * 2);
@@ -4470,9 +4786,15 @@ var WebRendererWasmFactory = (() => {
4470
4786
  }
4471
4787
  GLctx.uniform2fv(webglGetUniformLocation(location), view);
4472
4788
  };
4789
+ var _emscripten_glUniform2fv = _glUniform2fv;
4790
+
4791
+ /** @suppress {duplicate } */
4473
4792
  var _glUniform2i = (location, v0, v1) => {
4474
4793
  GLctx.uniform2i(webglGetUniformLocation(location), v0, v1);
4475
4794
  };
4795
+ var _emscripten_glUniform2i = _glUniform2i;
4796
+
4797
+ /** @suppress {duplicate } */
4476
4798
  var _glUniform2iv = (location, count, value) => {
4477
4799
  if (GL.currentContext.version >= 2) {
4478
4800
  count && GLctx.uniform2iv(webglGetUniformLocation(location), HEAP32, value >> 2, count * 2);
@@ -4490,9 +4812,15 @@ var WebRendererWasmFactory = (() => {
4490
4812
  }
4491
4813
  GLctx.uniform2iv(webglGetUniformLocation(location), view);
4492
4814
  };
4815
+ var _emscripten_glUniform2iv = _glUniform2iv;
4816
+
4817
+ /** @suppress {duplicate } */
4493
4818
  var _glUniform3f = (location, v0, v1, v2) => {
4494
4819
  GLctx.uniform3f(webglGetUniformLocation(location), v0, v1, v2);
4495
4820
  };
4821
+ var _emscripten_glUniform3f = _glUniform3f;
4822
+
4823
+ /** @suppress {duplicate } */
4496
4824
  var _glUniform3fv = (location, count, value) => {
4497
4825
  if (GL.currentContext.version >= 2) {
4498
4826
  count && GLctx.uniform3fv(webglGetUniformLocation(location), HEAPF32, value >> 2, count * 3);
@@ -4511,9 +4839,15 @@ var WebRendererWasmFactory = (() => {
4511
4839
  }
4512
4840
  GLctx.uniform3fv(webglGetUniformLocation(location), view);
4513
4841
  };
4842
+ var _emscripten_glUniform3fv = _glUniform3fv;
4843
+
4844
+ /** @suppress {duplicate } */
4514
4845
  var _glUniform3i = (location, v0, v1, v2) => {
4515
4846
  GLctx.uniform3i(webglGetUniformLocation(location), v0, v1, v2);
4516
4847
  };
4848
+ var _emscripten_glUniform3i = _glUniform3i;
4849
+
4850
+ /** @suppress {duplicate } */
4517
4851
  var _glUniform3iv = (location, count, value) => {
4518
4852
  if (GL.currentContext.version >= 2) {
4519
4853
  count && GLctx.uniform3iv(webglGetUniformLocation(location), HEAP32, value >> 2, count * 3);
@@ -4532,9 +4866,15 @@ var WebRendererWasmFactory = (() => {
4532
4866
  }
4533
4867
  GLctx.uniform3iv(webglGetUniformLocation(location), view);
4534
4868
  };
4869
+ var _emscripten_glUniform3iv = _glUniform3iv;
4870
+
4871
+ /** @suppress {duplicate } */
4535
4872
  var _glUniform4f = (location, v0, v1, v2, v3) => {
4536
4873
  GLctx.uniform4f(webglGetUniformLocation(location), v0, v1, v2, v3);
4537
4874
  };
4875
+ var _emscripten_glUniform4f = _glUniform4f;
4876
+
4877
+ /** @suppress {duplicate } */
4538
4878
  var _glUniform4fv = (location, count, value) => {
4539
4879
  if (GL.currentContext.version >= 2) {
4540
4880
  count && GLctx.uniform4fv(webglGetUniformLocation(location), HEAPF32, value >> 2, count * 4);
@@ -4558,9 +4898,15 @@ var WebRendererWasmFactory = (() => {
4558
4898
  }
4559
4899
  GLctx.uniform4fv(webglGetUniformLocation(location), view);
4560
4900
  };
4901
+ var _emscripten_glUniform4fv = _glUniform4fv;
4902
+
4903
+ /** @suppress {duplicate } */
4561
4904
  var _glUniform4i = (location, v0, v1, v2, v3) => {
4562
4905
  GLctx.uniform4i(webglGetUniformLocation(location), v0, v1, v2, v3);
4563
4906
  };
4907
+ var _emscripten_glUniform4i = _glUniform4i;
4908
+
4909
+ /** @suppress {duplicate } */
4564
4910
  var _glUniform4iv = (location, count, value) => {
4565
4911
  if (GL.currentContext.version >= 2) {
4566
4912
  count && GLctx.uniform4iv(webglGetUniformLocation(location), HEAP32, value >> 2, count * 4);
@@ -4580,6 +4926,9 @@ var WebRendererWasmFactory = (() => {
4580
4926
  }
4581
4927
  GLctx.uniform4iv(webglGetUniformLocation(location), view);
4582
4928
  };
4929
+ var _emscripten_glUniform4iv = _glUniform4iv;
4930
+
4931
+ /** @suppress {duplicate } */
4583
4932
  var _glUniformMatrix2fv = (location, count, transpose, value) => {
4584
4933
  if (GL.currentContext.version >= 2) {
4585
4934
  count && GLctx.uniformMatrix2fv(webglGetUniformLocation(location), !!transpose, HEAPF32, value >> 2, count * 4);
@@ -4594,101 +4943,344 @@ var WebRendererWasmFactory = (() => {
4594
4943
  view[i + 2] = HEAPF32[value + (4 * i + 8) >> 2];
4595
4944
  view[i + 3] = HEAPF32[value + (4 * i + 12) >> 2];
4596
4945
  }
4597
- } else {
4598
- var view = HEAPF32.subarray(value >> 2, value + count * 16 >> 2);
4599
- }
4600
- GLctx.uniformMatrix2fv(webglGetUniformLocation(location), !!transpose, view);
4601
- };
4602
- var _glUniformMatrix3fv = (location, count, transpose, value) => {
4603
- if (GL.currentContext.version >= 2) {
4604
- count && GLctx.uniformMatrix3fv(webglGetUniformLocation(location), !!transpose, HEAPF32, value >> 2, count * 9);
4605
- return;
4606
- }
4607
- if (count <= 32) {
4608
- // avoid allocation when uploading few enough uniforms
4609
- var view = miniTempWebGLFloatBuffers[9 * count];
4610
- for (var i = 0; i < 9 * count; i += 9) {
4611
- view[i] = HEAPF32[value + 4 * i >> 2];
4612
- view[i + 1] = HEAPF32[value + (4 * i + 4) >> 2];
4613
- view[i + 2] = HEAPF32[value + (4 * i + 8) >> 2];
4614
- view[i + 3] = HEAPF32[value + (4 * i + 12) >> 2];
4615
- view[i + 4] = HEAPF32[value + (4 * i + 16) >> 2];
4616
- view[i + 5] = HEAPF32[value + (4 * i + 20) >> 2];
4617
- view[i + 6] = HEAPF32[value + (4 * i + 24) >> 2];
4618
- view[i + 7] = HEAPF32[value + (4 * i + 28) >> 2];
4619
- view[i + 8] = HEAPF32[value + (4 * i + 32) >> 2];
4946
+ } else {
4947
+ var view = HEAPF32.subarray(value >> 2, value + count * 16 >> 2);
4948
+ }
4949
+ GLctx.uniformMatrix2fv(webglGetUniformLocation(location), !!transpose, view);
4950
+ };
4951
+ var _emscripten_glUniformMatrix2fv = _glUniformMatrix2fv;
4952
+
4953
+ /** @suppress {duplicate } */
4954
+ var _glUniformMatrix3fv = (location, count, transpose, value) => {
4955
+ if (GL.currentContext.version >= 2) {
4956
+ count && GLctx.uniformMatrix3fv(webglGetUniformLocation(location), !!transpose, HEAPF32, value >> 2, count * 9);
4957
+ return;
4958
+ }
4959
+ if (count <= 32) {
4960
+ // avoid allocation when uploading few enough uniforms
4961
+ var view = miniTempWebGLFloatBuffers[9 * count];
4962
+ for (var i = 0; i < 9 * count; i += 9) {
4963
+ view[i] = HEAPF32[value + 4 * i >> 2];
4964
+ view[i + 1] = HEAPF32[value + (4 * i + 4) >> 2];
4965
+ view[i + 2] = HEAPF32[value + (4 * i + 8) >> 2];
4966
+ view[i + 3] = HEAPF32[value + (4 * i + 12) >> 2];
4967
+ view[i + 4] = HEAPF32[value + (4 * i + 16) >> 2];
4968
+ view[i + 5] = HEAPF32[value + (4 * i + 20) >> 2];
4969
+ view[i + 6] = HEAPF32[value + (4 * i + 24) >> 2];
4970
+ view[i + 7] = HEAPF32[value + (4 * i + 28) >> 2];
4971
+ view[i + 8] = HEAPF32[value + (4 * i + 32) >> 2];
4972
+ }
4973
+ } else {
4974
+ var view = HEAPF32.subarray(value >> 2, value + count * 36 >> 2);
4975
+ }
4976
+ GLctx.uniformMatrix3fv(webglGetUniformLocation(location), !!transpose, view);
4977
+ };
4978
+ var _emscripten_glUniformMatrix3fv = _glUniformMatrix3fv;
4979
+
4980
+ /** @suppress {duplicate } */
4981
+ var _glUniformMatrix4fv = (location, count, transpose, value) => {
4982
+ if (GL.currentContext.version >= 2) {
4983
+ count && GLctx.uniformMatrix4fv(webglGetUniformLocation(location), !!transpose, HEAPF32, value >> 2, count * 16);
4984
+ return;
4985
+ }
4986
+ if (count <= 18) {
4987
+ // avoid allocation when uploading few enough uniforms
4988
+ var view = miniTempWebGLFloatBuffers[16 * count];
4989
+ // hoist the heap out of the loop for size and for pthreads+growth.
4990
+ var heap = HEAPF32;
4991
+ value = value >> 2;
4992
+ for (var i = 0; i < 16 * count; i += 16) {
4993
+ var dst = value + i;
4994
+ view[i] = heap[dst];
4995
+ view[i + 1] = heap[dst + 1];
4996
+ view[i + 2] = heap[dst + 2];
4997
+ view[i + 3] = heap[dst + 3];
4998
+ view[i + 4] = heap[dst + 4];
4999
+ view[i + 5] = heap[dst + 5];
5000
+ view[i + 6] = heap[dst + 6];
5001
+ view[i + 7] = heap[dst + 7];
5002
+ view[i + 8] = heap[dst + 8];
5003
+ view[i + 9] = heap[dst + 9];
5004
+ view[i + 10] = heap[dst + 10];
5005
+ view[i + 11] = heap[dst + 11];
5006
+ view[i + 12] = heap[dst + 12];
5007
+ view[i + 13] = heap[dst + 13];
5008
+ view[i + 14] = heap[dst + 14];
5009
+ view[i + 15] = heap[dst + 15];
5010
+ }
5011
+ } else {
5012
+ var view = HEAPF32.subarray(value >> 2, value + count * 64 >> 2);
5013
+ }
5014
+ GLctx.uniformMatrix4fv(webglGetUniformLocation(location), !!transpose, view);
5015
+ };
5016
+ var _emscripten_glUniformMatrix4fv = _glUniformMatrix4fv;
5017
+
5018
+ /** @suppress {duplicate } */
5019
+ var _glUseProgram = program => {
5020
+ program = GL.programs[program];
5021
+ GLctx.useProgram(program);
5022
+ // Record the currently active program so that we can access the uniform
5023
+ // mapping table of that program.
5024
+ GLctx.currentProgram = program;
5025
+ };
5026
+ var _emscripten_glUseProgram = _glUseProgram;
5027
+
5028
+ /** @suppress {duplicate } */
5029
+ var _glVertexAttrib1f = (x0, x1) => GLctx.vertexAttrib1f(x0, x1);
5030
+ var _emscripten_glVertexAttrib1f = _glVertexAttrib1f;
5031
+
5032
+ /** @suppress {duplicate } */
5033
+ var _glVertexAttrib2fv = (index, v) => {
5034
+ GLctx.vertexAttrib2f(index, HEAPF32[v >> 2], HEAPF32[v + 4 >> 2]);
5035
+ };
5036
+ var _emscripten_glVertexAttrib2fv = _glVertexAttrib2fv;
5037
+
5038
+ /** @suppress {duplicate } */
5039
+ var _glVertexAttrib3fv = (index, v) => {
5040
+ GLctx.vertexAttrib3f(index, HEAPF32[v >> 2], HEAPF32[v + 4 >> 2], HEAPF32[v + 8 >> 2]);
5041
+ };
5042
+ var _emscripten_glVertexAttrib3fv = _glVertexAttrib3fv;
5043
+
5044
+ /** @suppress {duplicate } */
5045
+ var _glVertexAttrib4fv = (index, v) => {
5046
+ GLctx.vertexAttrib4f(index, HEAPF32[v >> 2], HEAPF32[v + 4 >> 2], HEAPF32[v + 8 >> 2], HEAPF32[v + 12 >> 2]);
5047
+ };
5048
+ var _emscripten_glVertexAttrib4fv = _glVertexAttrib4fv;
5049
+
5050
+ /** @suppress {duplicate } */
5051
+ var _glVertexAttribDivisor = (index, divisor) => {
5052
+ GLctx.vertexAttribDivisor(index, divisor);
5053
+ };
5054
+ var _emscripten_glVertexAttribDivisor = _glVertexAttribDivisor;
5055
+
5056
+ /** @suppress {duplicate } */
5057
+ var _glVertexAttribIPointer = (index, size, type, stride, ptr) => {
5058
+ GLctx.vertexAttribIPointer(index, size, type, stride, ptr);
5059
+ };
5060
+ var _emscripten_glVertexAttribIPointer = _glVertexAttribIPointer;
5061
+
5062
+ /** @suppress {duplicate } */
5063
+ var _glVertexAttribPointer = (index, size, type, normalized, stride, ptr) => {
5064
+ GLctx.vertexAttribPointer(index, size, type, !!normalized, stride, ptr);
5065
+ };
5066
+ var _emscripten_glVertexAttribPointer = _glVertexAttribPointer;
5067
+
5068
+ /** @suppress {duplicate } */
5069
+ var _glViewport = (x0, x1, x2, x3) => GLctx.viewport(x0, x1, x2, x3);
5070
+ var _emscripten_glViewport = _glViewport;
5071
+
5072
+ /** @suppress {duplicate } */
5073
+ var _glWaitSync = (sync, flags, timeout) => {
5074
+ // See WebGL2 vs GLES3 difference on GL_TIMEOUT_IGNORED above (https://www.khronos.org/registry/webgl/specs/latest/2.0/#5.15)
5075
+ timeout = Number(timeout);
5076
+ GLctx.waitSync(GL.syncs[sync], flags, timeout);
5077
+ };
5078
+ var _emscripten_glWaitSync = _glWaitSync;
5079
+ var _emscripten_request_animation_frame = (cb, userData) => requestAnimationFrame(timeStamp => getWasmTableEntry(cb)(timeStamp, userData));
5080
+ var getHeapMax = () =>
5081
+ // Stay one Wasm page short of 4GB: while e.g. Chrome is able to allocate
5082
+ // full 4GB Wasm memories, the size will wrap back to 0 bytes in Wasm side
5083
+ // for any code that deals with heap sizes, which would require special
5084
+ // casing all heap size related code to treat 0 specially.
5085
+ 2147483648;
5086
+ var growMemory = size => {
5087
+ var b = wasmMemory.buffer;
5088
+ var pages = (size - b.byteLength + 65535) / 65536;
5089
+ try {
5090
+ // round size grow request up to wasm page size (fixed 64KB per spec)
5091
+ wasmMemory.grow(pages); // .grow() takes a delta compared to the previous size
5092
+ updateMemoryViews();
5093
+ return 1 /*success*/;
5094
+ } catch (e) {
5095
+ err("growMemory: Attempted to grow heap from ".concat(b.byteLength, " bytes to ").concat(size, " bytes, but got error: ").concat(e));
5096
+ }
5097
+ // implicit 0 return to save code size (caller will cast "undefined" into 0
5098
+ // anyhow)
5099
+ };
5100
+ var _emscripten_resize_heap = requestedSize => {
5101
+ var oldSize = HEAPU8.length;
5102
+ // With CAN_ADDRESS_2GB or MEMORY64, pointers are already unsigned.
5103
+ requestedSize >>>= 0;
5104
+ // With multithreaded builds, races can happen (another thread might increase the size
5105
+ // in between), so return a failure, and let the caller retry.
5106
+ assert(requestedSize > oldSize);
5107
+
5108
+ // Memory resize rules:
5109
+ // 1. Always increase heap size to at least the requested size, rounded up
5110
+ // to next page multiple.
5111
+ // 2a. If MEMORY_GROWTH_LINEAR_STEP == -1, excessively resize the heap
5112
+ // geometrically: increase the heap size according to
5113
+ // MEMORY_GROWTH_GEOMETRIC_STEP factor (default +20%), At most
5114
+ // overreserve by MEMORY_GROWTH_GEOMETRIC_CAP bytes (default 96MB).
5115
+ // 2b. If MEMORY_GROWTH_LINEAR_STEP != -1, excessively resize the heap
5116
+ // linearly: increase the heap size by at least
5117
+ // MEMORY_GROWTH_LINEAR_STEP bytes.
5118
+ // 3. Max size for the heap is capped at 2048MB-WASM_PAGE_SIZE, or by
5119
+ // MAXIMUM_MEMORY, or by ASAN limit, depending on which is smallest
5120
+ // 4. If we were unable to allocate as much memory, it may be due to
5121
+ // over-eager decision to excessively reserve due to (3) above.
5122
+ // Hence if an allocation fails, cut down on the amount of excess
5123
+ // growth, in an attempt to succeed to perform a smaller allocation.
5124
+
5125
+ // A limit is set for how much we can grow. We should not exceed that
5126
+ // (the wasm binary specifies it, so if we tried, we'd fail anyhow).
5127
+ var maxHeapSize = getHeapMax();
5128
+ if (requestedSize > maxHeapSize) {
5129
+ err("Cannot enlarge memory, requested ".concat(requestedSize, " bytes, but the limit is ").concat(maxHeapSize, " bytes!"));
5130
+ return false;
5131
+ }
5132
+ var alignUp = (x, multiple) => x + (multiple - x % multiple) % multiple;
5133
+
5134
+ // Loop through potential heap size increases. If we attempt a too eager
5135
+ // reservation that fails, cut down on the attempted size and reserve a
5136
+ // smaller bump instead. (max 3 times, chosen somewhat arbitrarily)
5137
+ for (var cutDown = 1; cutDown <= 4; cutDown *= 2) {
5138
+ var overGrownHeapSize = oldSize * (1 + 0.2 / cutDown); // ensure geometric growth
5139
+ // but limit overreserving (default to capping at +96MB overgrowth at most)
5140
+ overGrownHeapSize = Math.min(overGrownHeapSize, requestedSize + 100663296);
5141
+ var newSize = Math.min(maxHeapSize, alignUp(Math.max(requestedSize, overGrownHeapSize), 65536));
5142
+ var replacement = growMemory(newSize);
5143
+ if (replacement) {
5144
+ return true;
5145
+ }
5146
+ }
5147
+ err("Failed to grow the heap from ".concat(oldSize, " bytes to ").concat(newSize, " bytes, not enough memory!"));
5148
+ return false;
5149
+ };
5150
+ var _emscripten_webgl_make_context_current = contextHandle => {
5151
+ var success = GL.makeContextCurrent(contextHandle);
5152
+ return success ? 0 : -5;
5153
+ };
5154
+ var ENV = {};
5155
+ var getExecutableName = () => {
5156
+ return thisProgram || './this.program';
5157
+ };
5158
+ var getEnvStrings = () => {
5159
+ if (!getEnvStrings.strings) {
5160
+ // Default values.
5161
+ // Browser language detection #8751
5162
+ var lang = (typeof navigator == 'object' && navigator.languages && navigator.languages[0] || 'C').replace('-', '_') + '.UTF-8';
5163
+ var env = {
5164
+ 'USER': 'web_user',
5165
+ 'LOGNAME': 'web_user',
5166
+ 'PATH': '/',
5167
+ 'PWD': '/',
5168
+ 'HOME': '/home/web_user',
5169
+ 'LANG': lang,
5170
+ '_': getExecutableName()
5171
+ };
5172
+ // Apply the user-provided values, if any.
5173
+ for (var x in ENV) {
5174
+ // x is a key in ENV; if ENV[x] is undefined, that means it was
5175
+ // explicitly set to be so. We allow user code to do that to
5176
+ // force variables with default values to remain unset.
5177
+ if (ENV[x] === undefined) delete env[x];else env[x] = ENV[x];
5178
+ }
5179
+ var strings = [];
5180
+ for (var x in env) {
5181
+ strings.push("".concat(x, "=").concat(env[x]));
4620
5182
  }
4621
- } else {
4622
- var view = HEAPF32.subarray(value >> 2, value + count * 36 >> 2);
5183
+ getEnvStrings.strings = strings;
4623
5184
  }
4624
- GLctx.uniformMatrix3fv(webglGetUniformLocation(location), !!transpose, view);
5185
+ return getEnvStrings.strings;
4625
5186
  };
4626
- var _glUniformMatrix4fv = (location, count, transpose, value) => {
4627
- if (GL.currentContext.version >= 2) {
4628
- count && GLctx.uniformMatrix4fv(webglGetUniformLocation(location), !!transpose, HEAPF32, value >> 2, count * 16);
4629
- return;
4630
- }
4631
- if (count <= 18) {
4632
- // avoid allocation when uploading few enough uniforms
4633
- var view = miniTempWebGLFloatBuffers[16 * count];
4634
- // hoist the heap out of the loop for size and for pthreads+growth.
4635
- var heap = HEAPF32;
4636
- value = value >> 2;
4637
- for (var i = 0; i < 16 * count; i += 16) {
4638
- var dst = value + i;
4639
- view[i] = heap[dst];
4640
- view[i + 1] = heap[dst + 1];
4641
- view[i + 2] = heap[dst + 2];
4642
- view[i + 3] = heap[dst + 3];
4643
- view[i + 4] = heap[dst + 4];
4644
- view[i + 5] = heap[dst + 5];
4645
- view[i + 6] = heap[dst + 6];
4646
- view[i + 7] = heap[dst + 7];
4647
- view[i + 8] = heap[dst + 8];
4648
- view[i + 9] = heap[dst + 9];
4649
- view[i + 10] = heap[dst + 10];
4650
- view[i + 11] = heap[dst + 11];
4651
- view[i + 12] = heap[dst + 12];
4652
- view[i + 13] = heap[dst + 13];
4653
- view[i + 14] = heap[dst + 14];
4654
- view[i + 15] = heap[dst + 15];
4655
- }
4656
- } else {
4657
- var view = HEAPF32.subarray(value >> 2, value + count * 64 >> 2);
5187
+ var stringToAscii = (str, buffer) => {
5188
+ for (var i = 0; i < str.length; ++i) {
5189
+ assert(str.charCodeAt(i) === (str.charCodeAt(i) & 0xff));
5190
+ HEAP8[buffer++] = str.charCodeAt(i);
4658
5191
  }
4659
- GLctx.uniformMatrix4fv(webglGetUniformLocation(location), !!transpose, view);
5192
+ // Null-terminate the string
5193
+ HEAP8[buffer] = 0;
4660
5194
  };
4661
- var _glUseProgram = program => {
4662
- program = GL.programs[program];
4663
- GLctx.useProgram(program);
4664
- // Record the currently active program so that we can access the uniform
4665
- // mapping table of that program.
4666
- GLctx.currentProgram = program;
5195
+ var _environ_get = (__environ, environ_buf) => {
5196
+ var bufSize = 0;
5197
+ getEnvStrings().forEach((string, i) => {
5198
+ var ptr = environ_buf + bufSize;
5199
+ HEAPU32[__environ + i * 4 >> 2] = ptr;
5200
+ stringToAscii(string, ptr);
5201
+ bufSize += string.length + 1;
5202
+ });
5203
+ return 0;
4667
5204
  };
4668
- var _glVertexAttrib1f = (x0, x1) => GLctx.vertexAttrib1f(x0, x1);
4669
- var _glVertexAttrib2fv = (index, v) => {
4670
- GLctx.vertexAttrib2f(index, HEAPF32[v >> 2], HEAPF32[v + 4 >> 2]);
5205
+ var _environ_sizes_get = (penviron_count, penviron_buf_size) => {
5206
+ var strings = getEnvStrings();
5207
+ HEAPU32[penviron_count >> 2] = strings.length;
5208
+ var bufSize = 0;
5209
+ strings.forEach(string => bufSize += string.length + 1);
5210
+ HEAPU32[penviron_buf_size >> 2] = bufSize;
5211
+ return 0;
4671
5212
  };
4672
- var _glVertexAttrib3fv = (index, v) => {
4673
- GLctx.vertexAttrib3f(index, HEAPF32[v >> 2], HEAPF32[v + 4 >> 2], HEAPF32[v + 8 >> 2]);
5213
+ var runtimeKeepaliveCounter = 0;
5214
+ var keepRuntimeAlive = () => noExitRuntime || runtimeKeepaliveCounter > 0;
5215
+ var _proc_exit = code => {
5216
+ EXITSTATUS = code;
5217
+ if (!keepRuntimeAlive()) {
5218
+ ABORT = true;
5219
+ }
5220
+ quit_(code, new ExitStatus(code));
4674
5221
  };
4675
- var _glVertexAttrib4fv = (index, v) => {
4676
- GLctx.vertexAttrib4f(index, HEAPF32[v >> 2], HEAPF32[v + 4 >> 2], HEAPF32[v + 8 >> 2], HEAPF32[v + 12 >> 2]);
5222
+
5223
+ /** @suppress {duplicate } */
5224
+ /** @param {boolean|number=} implicit */
5225
+ var exitJS = (status, implicit) => {
5226
+ EXITSTATUS = status;
5227
+ checkUnflushedContent();
5228
+
5229
+ // if exit() was called explicitly, warn the user if the runtime isn't actually being shut down
5230
+ if (keepRuntimeAlive() && !implicit) {
5231
+ var msg = "program exited (with status: ".concat(status, "), but keepRuntimeAlive() is set (counter=").concat(runtimeKeepaliveCounter, ") due to an async operation, so halting execution but not exiting the runtime or preventing further async execution (you can use emscripten_force_exit, if you want to force a true shutdown)");
5232
+ readyPromiseReject(msg);
5233
+ err(msg);
5234
+ }
5235
+ _proc_exit(status);
4677
5236
  };
4678
- var _glVertexAttribDivisor = (index, divisor) => {
4679
- GLctx.vertexAttribDivisor(index, divisor);
5237
+ var _exit = exitJS;
5238
+ var SYSCALLS = {
5239
+ varargs: undefined,
5240
+ getStr(ptr) {
5241
+ var ret = UTF8ToString(ptr);
5242
+ return ret;
5243
+ }
4680
5244
  };
4681
- var _glVertexAttribIPointer = (index, size, type, stride, ptr) => {
4682
- GLctx.vertexAttribIPointer(index, size, type, stride, ptr);
5245
+ var _fd_close = fd => {
5246
+ abort('fd_close called without SYSCALLS_REQUIRE_FILESYSTEM');
4683
5247
  };
4684
- var _glVertexAttribPointer = (index, size, type, normalized, stride, ptr) => {
4685
- GLctx.vertexAttribPointer(index, size, type, !!normalized, stride, ptr);
5248
+ function _fd_seek(fd, offset, whence, newOffset) {
5249
+ offset = bigintToI53Checked(offset);
5250
+ return 70;
5251
+ ;
5252
+ }
5253
+ var printCharBuffers = [null, [], []];
5254
+ var printChar = (stream, curr) => {
5255
+ var buffer = printCharBuffers[stream];
5256
+ assert(buffer);
5257
+ if (curr === 0 || curr === 10) {
5258
+ (stream === 1 ? out : err)(UTF8ArrayToString(buffer, 0));
5259
+ buffer.length = 0;
5260
+ } else {
5261
+ buffer.push(curr);
5262
+ }
4686
5263
  };
4687
- var _glViewport = (x0, x1, x2, x3) => GLctx.viewport(x0, x1, x2, x3);
4688
- var _glWaitSync = (sync, flags, timeout) => {
4689
- // See WebGL2 vs GLES3 difference on GL_TIMEOUT_IGNORED above (https://www.khronos.org/registry/webgl/specs/latest/2.0/#5.15)
4690
- timeout = Number(timeout);
4691
- GLctx.waitSync(GL.syncs[sync], flags, timeout);
5264
+ var flush_NO_FILESYSTEM = () => {
5265
+ // flush anything remaining in the buffers during shutdown
5266
+ _fflush(0);
5267
+ if (printCharBuffers[1].length) printChar(1, 10);
5268
+ if (printCharBuffers[2].length) printChar(2, 10);
5269
+ };
5270
+ var _fd_write = (fd, iov, iovcnt, pnum) => {
5271
+ // hack to support printf in SYSCALLS_REQUIRE_FILESYSTEM=0
5272
+ var num = 0;
5273
+ for (var i = 0; i < iovcnt; i++) {
5274
+ var ptr = HEAPU32[iov >> 2];
5275
+ var len = HEAPU32[iov + 4 >> 2];
5276
+ iov += 8;
5277
+ for (var j = 0; j < len; j++) {
5278
+ printChar(fd, HEAPU8[ptr + j]);
5279
+ }
5280
+ num += len;
5281
+ }
5282
+ HEAPU32[pnum >> 2] = num;
5283
+ return 0;
4692
5284
  };
4693
5285
  var isLeapYear = year => year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0);
4694
5286
  var arraySum = (array, index) => {
@@ -5177,305 +5769,349 @@ var WebRendererWasmFactory = (() => {
5177
5769
  /** @export */
5178
5770
  emscripten_get_now: _emscripten_get_now,
5179
5771
  /** @export */
5180
- emscripten_request_animation_frame: _emscripten_request_animation_frame,
5772
+ emscripten_glActiveTexture: _emscripten_glActiveTexture,
5181
5773
  /** @export */
5182
- emscripten_resize_heap: _emscripten_resize_heap,
5774
+ emscripten_glAttachShader: _emscripten_glAttachShader,
5183
5775
  /** @export */
5184
- emscripten_webgl_make_context_current: _emscripten_webgl_make_context_current,
5776
+ emscripten_glBeginQuery: _emscripten_glBeginQuery,
5185
5777
  /** @export */
5186
- environ_get: _environ_get,
5778
+ emscripten_glBeginQueryEXT: _emscripten_glBeginQueryEXT,
5187
5779
  /** @export */
5188
- environ_sizes_get: _environ_sizes_get,
5780
+ emscripten_glBindAttribLocation: _emscripten_glBindAttribLocation,
5189
5781
  /** @export */
5190
- exit: _exit,
5782
+ emscripten_glBindBuffer: _emscripten_glBindBuffer,
5191
5783
  /** @export */
5192
- fd_close: _fd_close,
5784
+ emscripten_glBindFramebuffer: _emscripten_glBindFramebuffer,
5193
5785
  /** @export */
5194
- fd_seek: _fd_seek,
5786
+ emscripten_glBindRenderbuffer: _emscripten_glBindRenderbuffer,
5195
5787
  /** @export */
5196
- fd_write: _fd_write,
5788
+ emscripten_glBindSampler: _emscripten_glBindSampler,
5197
5789
  /** @export */
5198
- glActiveTexture: _glActiveTexture,
5790
+ emscripten_glBindTexture: _emscripten_glBindTexture,
5199
5791
  /** @export */
5200
- glAttachShader: _glAttachShader,
5792
+ emscripten_glBindVertexArray: _emscripten_glBindVertexArray,
5201
5793
  /** @export */
5202
- glBindAttribLocation: _glBindAttribLocation,
5794
+ emscripten_glBindVertexArrayOES: _emscripten_glBindVertexArrayOES,
5203
5795
  /** @export */
5204
- glBindBuffer: _glBindBuffer,
5796
+ emscripten_glBlendColor: _emscripten_glBlendColor,
5205
5797
  /** @export */
5206
- glBindFramebuffer: _glBindFramebuffer,
5798
+ emscripten_glBlendEquation: _emscripten_glBlendEquation,
5207
5799
  /** @export */
5208
- glBindRenderbuffer: _glBindRenderbuffer,
5800
+ emscripten_glBlendFunc: _emscripten_glBlendFunc,
5209
5801
  /** @export */
5210
- glBindSampler: _glBindSampler,
5802
+ emscripten_glBlitFramebuffer: _emscripten_glBlitFramebuffer,
5211
5803
  /** @export */
5212
- glBindTexture: _glBindTexture,
5804
+ emscripten_glBufferData: _emscripten_glBufferData,
5213
5805
  /** @export */
5214
- glBindVertexArray: _glBindVertexArray,
5806
+ emscripten_glBufferSubData: _emscripten_glBufferSubData,
5215
5807
  /** @export */
5216
- glBindVertexArrayOES: _glBindVertexArrayOES,
5808
+ emscripten_glCheckFramebufferStatus: _emscripten_glCheckFramebufferStatus,
5217
5809
  /** @export */
5218
- glBlendColor: _glBlendColor,
5810
+ emscripten_glClear: _emscripten_glClear,
5219
5811
  /** @export */
5220
- glBlendEquation: _glBlendEquation,
5812
+ emscripten_glClearColor: _emscripten_glClearColor,
5221
5813
  /** @export */
5222
- glBlendFunc: _glBlendFunc,
5814
+ emscripten_glClearStencil: _emscripten_glClearStencil,
5223
5815
  /** @export */
5224
- glBlitFramebuffer: _glBlitFramebuffer,
5816
+ emscripten_glClientWaitSync: _emscripten_glClientWaitSync,
5225
5817
  /** @export */
5226
- glBufferData: _glBufferData,
5818
+ emscripten_glColorMask: _emscripten_glColorMask,
5227
5819
  /** @export */
5228
- glBufferSubData: _glBufferSubData,
5820
+ emscripten_glCompileShader: _emscripten_glCompileShader,
5229
5821
  /** @export */
5230
- glCheckFramebufferStatus: _glCheckFramebufferStatus,
5822
+ emscripten_glCompressedTexImage2D: _emscripten_glCompressedTexImage2D,
5231
5823
  /** @export */
5232
- glClear: _glClear,
5824
+ emscripten_glCompressedTexSubImage2D: _emscripten_glCompressedTexSubImage2D,
5233
5825
  /** @export */
5234
- glClearColor: _glClearColor,
5826
+ emscripten_glCopyBufferSubData: _emscripten_glCopyBufferSubData,
5235
5827
  /** @export */
5236
- glClearStencil: _glClearStencil,
5828
+ emscripten_glCopyTexSubImage2D: _emscripten_glCopyTexSubImage2D,
5237
5829
  /** @export */
5238
- glClientWaitSync: _glClientWaitSync,
5830
+ emscripten_glCreateProgram: _emscripten_glCreateProgram,
5239
5831
  /** @export */
5240
- glColorMask: _glColorMask,
5832
+ emscripten_glCreateShader: _emscripten_glCreateShader,
5241
5833
  /** @export */
5242
- glCompileShader: _glCompileShader,
5834
+ emscripten_glCullFace: _emscripten_glCullFace,
5243
5835
  /** @export */
5244
- glCompressedTexImage2D: _glCompressedTexImage2D,
5836
+ emscripten_glDeleteBuffers: _emscripten_glDeleteBuffers,
5245
5837
  /** @export */
5246
- glCompressedTexSubImage2D: _glCompressedTexSubImage2D,
5838
+ emscripten_glDeleteFramebuffers: _emscripten_glDeleteFramebuffers,
5247
5839
  /** @export */
5248
- glCopyBufferSubData: _glCopyBufferSubData,
5840
+ emscripten_glDeleteProgram: _emscripten_glDeleteProgram,
5249
5841
  /** @export */
5250
- glCopyTexSubImage2D: _glCopyTexSubImage2D,
5842
+ emscripten_glDeleteQueries: _emscripten_glDeleteQueries,
5251
5843
  /** @export */
5252
- glCreateProgram: _glCreateProgram,
5844
+ emscripten_glDeleteQueriesEXT: _emscripten_glDeleteQueriesEXT,
5253
5845
  /** @export */
5254
- glCreateShader: _glCreateShader,
5846
+ emscripten_glDeleteRenderbuffers: _emscripten_glDeleteRenderbuffers,
5255
5847
  /** @export */
5256
- glCullFace: _glCullFace,
5848
+ emscripten_glDeleteSamplers: _emscripten_glDeleteSamplers,
5257
5849
  /** @export */
5258
- glDeleteBuffers: _glDeleteBuffers,
5850
+ emscripten_glDeleteShader: _emscripten_glDeleteShader,
5259
5851
  /** @export */
5260
- glDeleteFramebuffers: _glDeleteFramebuffers,
5852
+ emscripten_glDeleteSync: _emscripten_glDeleteSync,
5261
5853
  /** @export */
5262
- glDeleteProgram: _glDeleteProgram,
5854
+ emscripten_glDeleteTextures: _emscripten_glDeleteTextures,
5263
5855
  /** @export */
5264
- glDeleteRenderbuffers: _glDeleteRenderbuffers,
5856
+ emscripten_glDeleteVertexArrays: _emscripten_glDeleteVertexArrays,
5265
5857
  /** @export */
5266
- glDeleteSamplers: _glDeleteSamplers,
5858
+ emscripten_glDeleteVertexArraysOES: _emscripten_glDeleteVertexArraysOES,
5267
5859
  /** @export */
5268
- glDeleteShader: _glDeleteShader,
5860
+ emscripten_glDepthMask: _emscripten_glDepthMask,
5269
5861
  /** @export */
5270
- glDeleteSync: _glDeleteSync,
5862
+ emscripten_glDisable: _emscripten_glDisable,
5271
5863
  /** @export */
5272
- glDeleteTextures: _glDeleteTextures,
5864
+ emscripten_glDisableVertexAttribArray: _emscripten_glDisableVertexAttribArray,
5273
5865
  /** @export */
5274
- glDeleteVertexArrays: _glDeleteVertexArrays,
5866
+ emscripten_glDrawArrays: _emscripten_glDrawArrays,
5275
5867
  /** @export */
5276
- glDeleteVertexArraysOES: _glDeleteVertexArraysOES,
5868
+ emscripten_glDrawArraysInstanced: _emscripten_glDrawArraysInstanced,
5277
5869
  /** @export */
5278
- glDepthMask: _glDepthMask,
5870
+ emscripten_glDrawArraysInstancedBaseInstanceWEBGL: _emscripten_glDrawArraysInstancedBaseInstanceWEBGL,
5279
5871
  /** @export */
5280
- glDisable: _glDisable,
5872
+ emscripten_glDrawBuffers: _emscripten_glDrawBuffers,
5281
5873
  /** @export */
5282
- glDisableVertexAttribArray: _glDisableVertexAttribArray,
5874
+ emscripten_glDrawElements: _emscripten_glDrawElements,
5283
5875
  /** @export */
5284
- glDrawArrays: _glDrawArrays,
5876
+ emscripten_glDrawElementsInstanced: _emscripten_glDrawElementsInstanced,
5285
5877
  /** @export */
5286
- glDrawArraysInstanced: _glDrawArraysInstanced,
5878
+ emscripten_glDrawElementsInstancedBaseVertexBaseInstanceWEBGL: _emscripten_glDrawElementsInstancedBaseVertexBaseInstanceWEBGL,
5287
5879
  /** @export */
5288
- glDrawArraysInstancedBaseInstanceWEBGL: _glDrawArraysInstancedBaseInstanceWEBGL,
5880
+ emscripten_glDrawRangeElements: _emscripten_glDrawRangeElements,
5289
5881
  /** @export */
5290
- glDrawBuffers: _glDrawBuffers,
5882
+ emscripten_glEnable: _emscripten_glEnable,
5291
5883
  /** @export */
5292
- glDrawElements: _glDrawElements,
5884
+ emscripten_glEnableVertexAttribArray: _emscripten_glEnableVertexAttribArray,
5293
5885
  /** @export */
5294
- glDrawElementsInstanced: _glDrawElementsInstanced,
5886
+ emscripten_glEndQuery: _emscripten_glEndQuery,
5295
5887
  /** @export */
5296
- glDrawElementsInstancedBaseVertexBaseInstanceWEBGL: _glDrawElementsInstancedBaseVertexBaseInstanceWEBGL,
5888
+ emscripten_glEndQueryEXT: _emscripten_glEndQueryEXT,
5297
5889
  /** @export */
5298
- glDrawRangeElements: _glDrawRangeElements,
5890
+ emscripten_glFenceSync: _emscripten_glFenceSync,
5299
5891
  /** @export */
5300
- glEnable: _glEnable,
5892
+ emscripten_glFinish: _emscripten_glFinish,
5301
5893
  /** @export */
5302
- glEnableVertexAttribArray: _glEnableVertexAttribArray,
5894
+ emscripten_glFlush: _emscripten_glFlush,
5303
5895
  /** @export */
5304
- glFenceSync: _glFenceSync,
5896
+ emscripten_glFramebufferRenderbuffer: _emscripten_glFramebufferRenderbuffer,
5305
5897
  /** @export */
5306
- glFinish: _glFinish,
5898
+ emscripten_glFramebufferTexture2D: _emscripten_glFramebufferTexture2D,
5307
5899
  /** @export */
5308
- glFlush: _glFlush,
5900
+ emscripten_glFrontFace: _emscripten_glFrontFace,
5309
5901
  /** @export */
5310
- glFramebufferRenderbuffer: _glFramebufferRenderbuffer,
5902
+ emscripten_glGenBuffers: _emscripten_glGenBuffers,
5311
5903
  /** @export */
5312
- glFramebufferTexture2D: _glFramebufferTexture2D,
5904
+ emscripten_glGenFramebuffers: _emscripten_glGenFramebuffers,
5313
5905
  /** @export */
5314
- glFrontFace: _glFrontFace,
5906
+ emscripten_glGenQueries: _emscripten_glGenQueries,
5315
5907
  /** @export */
5316
- glGenBuffers: _glGenBuffers,
5908
+ emscripten_glGenQueriesEXT: _emscripten_glGenQueriesEXT,
5317
5909
  /** @export */
5318
- glGenFramebuffers: _glGenFramebuffers,
5910
+ emscripten_glGenRenderbuffers: _emscripten_glGenRenderbuffers,
5319
5911
  /** @export */
5320
- glGenRenderbuffers: _glGenRenderbuffers,
5912
+ emscripten_glGenSamplers: _emscripten_glGenSamplers,
5321
5913
  /** @export */
5322
- glGenSamplers: _glGenSamplers,
5914
+ emscripten_glGenTextures: _emscripten_glGenTextures,
5323
5915
  /** @export */
5324
- glGenTextures: _glGenTextures,
5916
+ emscripten_glGenVertexArrays: _emscripten_glGenVertexArrays,
5325
5917
  /** @export */
5326
- glGenVertexArrays: _glGenVertexArrays,
5918
+ emscripten_glGenVertexArraysOES: _emscripten_glGenVertexArraysOES,
5327
5919
  /** @export */
5328
- glGenVertexArraysOES: _glGenVertexArraysOES,
5920
+ emscripten_glGenerateMipmap: _emscripten_glGenerateMipmap,
5329
5921
  /** @export */
5330
- glGenerateMipmap: _glGenerateMipmap,
5922
+ emscripten_glGetBufferParameteriv: _emscripten_glGetBufferParameteriv,
5331
5923
  /** @export */
5332
- glGetBufferParameteriv: _glGetBufferParameteriv,
5924
+ emscripten_glGetError: _emscripten_glGetError,
5333
5925
  /** @export */
5334
- glGetError: _glGetError,
5926
+ emscripten_glGetFloatv: _emscripten_glGetFloatv,
5335
5927
  /** @export */
5336
- glGetFloatv: _glGetFloatv,
5928
+ emscripten_glGetFramebufferAttachmentParameteriv: _emscripten_glGetFramebufferAttachmentParameteriv,
5337
5929
  /** @export */
5338
- glGetFramebufferAttachmentParameteriv: _glGetFramebufferAttachmentParameteriv,
5930
+ emscripten_glGetIntegerv: _emscripten_glGetIntegerv,
5339
5931
  /** @export */
5340
- glGetIntegerv: _glGetIntegerv,
5932
+ emscripten_glGetProgramInfoLog: _emscripten_glGetProgramInfoLog,
5341
5933
  /** @export */
5342
- glGetProgramInfoLog: _glGetProgramInfoLog,
5934
+ emscripten_glGetProgramiv: _emscripten_glGetProgramiv,
5343
5935
  /** @export */
5344
- glGetProgramiv: _glGetProgramiv,
5936
+ emscripten_glGetQueryObjecti64vEXT: _emscripten_glGetQueryObjecti64vEXT,
5345
5937
  /** @export */
5346
- glGetRenderbufferParameteriv: _glGetRenderbufferParameteriv,
5938
+ emscripten_glGetQueryObjectui64vEXT: _emscripten_glGetQueryObjectui64vEXT,
5347
5939
  /** @export */
5348
- glGetShaderInfoLog: _glGetShaderInfoLog,
5940
+ emscripten_glGetQueryObjectuiv: _emscripten_glGetQueryObjectuiv,
5349
5941
  /** @export */
5350
- glGetShaderPrecisionFormat: _glGetShaderPrecisionFormat,
5942
+ emscripten_glGetQueryObjectuivEXT: _emscripten_glGetQueryObjectuivEXT,
5351
5943
  /** @export */
5352
- glGetShaderiv: _glGetShaderiv,
5944
+ emscripten_glGetQueryiv: _emscripten_glGetQueryiv,
5353
5945
  /** @export */
5354
- glGetString: _glGetString,
5946
+ emscripten_glGetQueryivEXT: _emscripten_glGetQueryivEXT,
5355
5947
  /** @export */
5356
- glGetStringi: _glGetStringi,
5948
+ emscripten_glGetRenderbufferParameteriv: _emscripten_glGetRenderbufferParameteriv,
5949
+ /** @export */
5950
+ emscripten_glGetShaderInfoLog: _emscripten_glGetShaderInfoLog,
5951
+ /** @export */
5952
+ emscripten_glGetShaderPrecisionFormat: _emscripten_glGetShaderPrecisionFormat,
5953
+ /** @export */
5954
+ emscripten_glGetShaderiv: _emscripten_glGetShaderiv,
5955
+ /** @export */
5956
+ emscripten_glGetString: _emscripten_glGetString,
5957
+ /** @export */
5958
+ emscripten_glGetStringi: _emscripten_glGetStringi,
5959
+ /** @export */
5960
+ emscripten_glGetUniformLocation: _emscripten_glGetUniformLocation,
5961
+ /** @export */
5962
+ emscripten_glInvalidateFramebuffer: _emscripten_glInvalidateFramebuffer,
5963
+ /** @export */
5964
+ emscripten_glInvalidateSubFramebuffer: _emscripten_glInvalidateSubFramebuffer,
5965
+ /** @export */
5966
+ emscripten_glIsSync: _emscripten_glIsSync,
5967
+ /** @export */
5968
+ emscripten_glIsTexture: _emscripten_glIsTexture,
5969
+ /** @export */
5970
+ emscripten_glLineWidth: _emscripten_glLineWidth,
5971
+ /** @export */
5972
+ emscripten_glLinkProgram: _emscripten_glLinkProgram,
5357
5973
  /** @export */
5358
- glGetUniformLocation: _glGetUniformLocation,
5974
+ emscripten_glMultiDrawArraysInstancedBaseInstanceWEBGL: _emscripten_glMultiDrawArraysInstancedBaseInstanceWEBGL,
5359
5975
  /** @export */
5360
- glInvalidateFramebuffer: _glInvalidateFramebuffer,
5976
+ emscripten_glMultiDrawElementsInstancedBaseVertexBaseInstanceWEBGL: _emscripten_glMultiDrawElementsInstancedBaseVertexBaseInstanceWEBGL,
5361
5977
  /** @export */
5362
- glInvalidateSubFramebuffer: _glInvalidateSubFramebuffer,
5978
+ emscripten_glPixelStorei: _emscripten_glPixelStorei,
5363
5979
  /** @export */
5364
- glIsSync: _glIsSync,
5980
+ emscripten_glQueryCounterEXT: _emscripten_glQueryCounterEXT,
5365
5981
  /** @export */
5366
- glIsTexture: _glIsTexture,
5982
+ emscripten_glReadBuffer: _emscripten_glReadBuffer,
5367
5983
  /** @export */
5368
- glLineWidth: _glLineWidth,
5984
+ emscripten_glReadPixels: _emscripten_glReadPixels,
5369
5985
  /** @export */
5370
- glLinkProgram: _glLinkProgram,
5986
+ emscripten_glRenderbufferStorage: _emscripten_glRenderbufferStorage,
5371
5987
  /** @export */
5372
- glMultiDrawArraysInstancedBaseInstanceWEBGL: _glMultiDrawArraysInstancedBaseInstanceWEBGL,
5988
+ emscripten_glRenderbufferStorageMultisample: _emscripten_glRenderbufferStorageMultisample,
5373
5989
  /** @export */
5374
- glMultiDrawElementsInstancedBaseVertexBaseInstanceWEBGL: _glMultiDrawElementsInstancedBaseVertexBaseInstanceWEBGL,
5990
+ emscripten_glSamplerParameterf: _emscripten_glSamplerParameterf,
5375
5991
  /** @export */
5376
- glPixelStorei: _glPixelStorei,
5992
+ emscripten_glSamplerParameteri: _emscripten_glSamplerParameteri,
5377
5993
  /** @export */
5378
- glReadBuffer: _glReadBuffer,
5994
+ emscripten_glSamplerParameteriv: _emscripten_glSamplerParameteriv,
5379
5995
  /** @export */
5380
- glReadPixels: _glReadPixels,
5996
+ emscripten_glScissor: _emscripten_glScissor,
5381
5997
  /** @export */
5382
- glRenderbufferStorage: _glRenderbufferStorage,
5998
+ emscripten_glShaderSource: _emscripten_glShaderSource,
5383
5999
  /** @export */
5384
- glRenderbufferStorageMultisample: _glRenderbufferStorageMultisample,
6000
+ emscripten_glStencilFunc: _emscripten_glStencilFunc,
5385
6001
  /** @export */
5386
- glSamplerParameterf: _glSamplerParameterf,
6002
+ emscripten_glStencilFuncSeparate: _emscripten_glStencilFuncSeparate,
5387
6003
  /** @export */
5388
- glSamplerParameteri: _glSamplerParameteri,
6004
+ emscripten_glStencilMask: _emscripten_glStencilMask,
5389
6005
  /** @export */
5390
- glSamplerParameteriv: _glSamplerParameteriv,
6006
+ emscripten_glStencilMaskSeparate: _emscripten_glStencilMaskSeparate,
5391
6007
  /** @export */
5392
- glScissor: _glScissor,
6008
+ emscripten_glStencilOp: _emscripten_glStencilOp,
5393
6009
  /** @export */
5394
- glShaderSource: _glShaderSource,
6010
+ emscripten_glStencilOpSeparate: _emscripten_glStencilOpSeparate,
5395
6011
  /** @export */
5396
- glStencilFunc: _glStencilFunc,
6012
+ emscripten_glTexImage2D: _emscripten_glTexImage2D,
5397
6013
  /** @export */
5398
- glStencilFuncSeparate: _glStencilFuncSeparate,
6014
+ emscripten_glTexParameterf: _emscripten_glTexParameterf,
5399
6015
  /** @export */
5400
- glStencilMask: _glStencilMask,
6016
+ emscripten_glTexParameterfv: _emscripten_glTexParameterfv,
5401
6017
  /** @export */
5402
- glStencilMaskSeparate: _glStencilMaskSeparate,
6018
+ emscripten_glTexParameteri: _emscripten_glTexParameteri,
5403
6019
  /** @export */
5404
- glStencilOp: _glStencilOp,
6020
+ emscripten_glTexParameteriv: _emscripten_glTexParameteriv,
5405
6021
  /** @export */
5406
- glStencilOpSeparate: _glStencilOpSeparate,
6022
+ emscripten_glTexStorage2D: _emscripten_glTexStorage2D,
5407
6023
  /** @export */
5408
- glTexImage2D: _glTexImage2D,
6024
+ emscripten_glTexSubImage2D: _emscripten_glTexSubImage2D,
5409
6025
  /** @export */
5410
- glTexParameterf: _glTexParameterf,
6026
+ emscripten_glUniform1f: _emscripten_glUniform1f,
5411
6027
  /** @export */
5412
- glTexParameterfv: _glTexParameterfv,
6028
+ emscripten_glUniform1fv: _emscripten_glUniform1fv,
5413
6029
  /** @export */
5414
- glTexParameteri: _glTexParameteri,
6030
+ emscripten_glUniform1i: _emscripten_glUniform1i,
5415
6031
  /** @export */
5416
- glTexParameteriv: _glTexParameteriv,
6032
+ emscripten_glUniform1iv: _emscripten_glUniform1iv,
5417
6033
  /** @export */
5418
- glTexStorage2D: _glTexStorage2D,
6034
+ emscripten_glUniform2f: _emscripten_glUniform2f,
5419
6035
  /** @export */
5420
- glTexSubImage2D: _glTexSubImage2D,
6036
+ emscripten_glUniform2fv: _emscripten_glUniform2fv,
5421
6037
  /** @export */
5422
- glUniform1f: _glUniform1f,
6038
+ emscripten_glUniform2i: _emscripten_glUniform2i,
5423
6039
  /** @export */
5424
- glUniform1fv: _glUniform1fv,
6040
+ emscripten_glUniform2iv: _emscripten_glUniform2iv,
5425
6041
  /** @export */
5426
- glUniform1i: _glUniform1i,
6042
+ emscripten_glUniform3f: _emscripten_glUniform3f,
5427
6043
  /** @export */
5428
- glUniform1iv: _glUniform1iv,
6044
+ emscripten_glUniform3fv: _emscripten_glUniform3fv,
5429
6045
  /** @export */
5430
- glUniform2f: _glUniform2f,
6046
+ emscripten_glUniform3i: _emscripten_glUniform3i,
5431
6047
  /** @export */
5432
- glUniform2fv: _glUniform2fv,
6048
+ emscripten_glUniform3iv: _emscripten_glUniform3iv,
5433
6049
  /** @export */
5434
- glUniform2i: _glUniform2i,
6050
+ emscripten_glUniform4f: _emscripten_glUniform4f,
5435
6051
  /** @export */
5436
- glUniform2iv: _glUniform2iv,
6052
+ emscripten_glUniform4fv: _emscripten_glUniform4fv,
5437
6053
  /** @export */
5438
- glUniform3f: _glUniform3f,
6054
+ emscripten_glUniform4i: _emscripten_glUniform4i,
5439
6055
  /** @export */
5440
- glUniform3fv: _glUniform3fv,
6056
+ emscripten_glUniform4iv: _emscripten_glUniform4iv,
5441
6057
  /** @export */
5442
- glUniform3i: _glUniform3i,
6058
+ emscripten_glUniformMatrix2fv: _emscripten_glUniformMatrix2fv,
5443
6059
  /** @export */
5444
- glUniform3iv: _glUniform3iv,
6060
+ emscripten_glUniformMatrix3fv: _emscripten_glUniformMatrix3fv,
5445
6061
  /** @export */
5446
- glUniform4f: _glUniform4f,
6062
+ emscripten_glUniformMatrix4fv: _emscripten_glUniformMatrix4fv,
5447
6063
  /** @export */
5448
- glUniform4fv: _glUniform4fv,
6064
+ emscripten_glUseProgram: _emscripten_glUseProgram,
5449
6065
  /** @export */
5450
- glUniform4i: _glUniform4i,
6066
+ emscripten_glVertexAttrib1f: _emscripten_glVertexAttrib1f,
5451
6067
  /** @export */
5452
- glUniform4iv: _glUniform4iv,
6068
+ emscripten_glVertexAttrib2fv: _emscripten_glVertexAttrib2fv,
5453
6069
  /** @export */
5454
- glUniformMatrix2fv: _glUniformMatrix2fv,
6070
+ emscripten_glVertexAttrib3fv: _emscripten_glVertexAttrib3fv,
5455
6071
  /** @export */
5456
- glUniformMatrix3fv: _glUniformMatrix3fv,
6072
+ emscripten_glVertexAttrib4fv: _emscripten_glVertexAttrib4fv,
5457
6073
  /** @export */
5458
- glUniformMatrix4fv: _glUniformMatrix4fv,
6074
+ emscripten_glVertexAttribDivisor: _emscripten_glVertexAttribDivisor,
6075
+ /** @export */
6076
+ emscripten_glVertexAttribIPointer: _emscripten_glVertexAttribIPointer,
6077
+ /** @export */
6078
+ emscripten_glVertexAttribPointer: _emscripten_glVertexAttribPointer,
6079
+ /** @export */
6080
+ emscripten_glViewport: _emscripten_glViewport,
6081
+ /** @export */
6082
+ emscripten_glWaitSync: _emscripten_glWaitSync,
6083
+ /** @export */
6084
+ emscripten_request_animation_frame: _emscripten_request_animation_frame,
6085
+ /** @export */
6086
+ emscripten_resize_heap: _emscripten_resize_heap,
6087
+ /** @export */
6088
+ emscripten_webgl_make_context_current: _emscripten_webgl_make_context_current,
6089
+ /** @export */
6090
+ environ_get: _environ_get,
6091
+ /** @export */
6092
+ environ_sizes_get: _environ_sizes_get,
6093
+ /** @export */
6094
+ exit: _exit,
5459
6095
  /** @export */
5460
- glUseProgram: _glUseProgram,
6096
+ fd_close: _fd_close,
5461
6097
  /** @export */
5462
- glVertexAttrib1f: _glVertexAttrib1f,
6098
+ fd_seek: _fd_seek,
5463
6099
  /** @export */
5464
- glVertexAttrib2fv: _glVertexAttrib2fv,
6100
+ fd_write: _fd_write,
5465
6101
  /** @export */
5466
- glVertexAttrib3fv: _glVertexAttrib3fv,
6102
+ glBindFramebuffer: _glBindFramebuffer,
5467
6103
  /** @export */
5468
- glVertexAttrib4fv: _glVertexAttrib4fv,
6104
+ glClear: _glClear,
5469
6105
  /** @export */
5470
- glVertexAttribDivisor: _glVertexAttribDivisor,
6106
+ glClearColor: _glClearColor,
5471
6107
  /** @export */
5472
- glVertexAttribIPointer: _glVertexAttribIPointer,
6108
+ glClearStencil: _glClearStencil,
5473
6109
  /** @export */
5474
- glVertexAttribPointer: _glVertexAttribPointer,
6110
+ glGetIntegerv: _glGetIntegerv,
5475
6111
  /** @export */
5476
- glViewport: _glViewport,
6112
+ glGetString: _glGetString,
5477
6113
  /** @export */
5478
- glWaitSync: _glWaitSync,
6114
+ glGetStringi: _glGetStringi,
5479
6115
  /** @export */
5480
6116
  invoke_ii,
5481
6117
  /** @export */
@@ -5489,6 +6125,8 @@ var WebRendererWasmFactory = (() => {
5489
6125
  /** @export */
5490
6126
  invoke_iiiiiii,
5491
6127
  /** @export */
6128
+ invoke_iiiiiiii,
6129
+ /** @export */
5492
6130
  invoke_v,
5493
6131
  /** @export */
5494
6132
  invoke_vi,
@@ -5499,8 +6137,6 @@ var WebRendererWasmFactory = (() => {
5499
6137
  /** @export */
5500
6138
  invoke_viiii,
5501
6139
  /** @export */
5502
- invoke_viiiii,
5503
- /** @export */
5504
6140
  invoke_viiiiii,
5505
6141
  /** @export */
5506
6142
  invoke_viiiiiiiii,
@@ -5601,60 +6237,60 @@ var WebRendererWasmFactory = (() => {
5601
6237
  _setThrew(1, 0);
5602
6238
  }
5603
6239
  }
5604
- function invoke_viiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) {
6240
+ function invoke_v(index) {
5605
6241
  var sp = stackSave();
5606
6242
  try {
5607
- getWasmTableEntry(index)(a1, a2, a3, a4, a5, a6, a7, a8, a9);
6243
+ getWasmTableEntry(index)();
5608
6244
  } catch (e) {
5609
6245
  stackRestore(sp);
5610
6246
  if (e !== e + 0) throw e;
5611
6247
  _setThrew(1, 0);
5612
6248
  }
5613
6249
  }
5614
- function invoke_v(index) {
6250
+ function invoke_iiiiiii(index, a1, a2, a3, a4, a5, a6) {
5615
6251
  var sp = stackSave();
5616
6252
  try {
5617
- getWasmTableEntry(index)();
6253
+ return getWasmTableEntry(index)(a1, a2, a3, a4, a5, a6);
5618
6254
  } catch (e) {
5619
6255
  stackRestore(sp);
5620
6256
  if (e !== e + 0) throw e;
5621
6257
  _setThrew(1, 0);
5622
6258
  }
5623
6259
  }
5624
- function invoke_viiiiii(index, a1, a2, a3, a4, a5, a6) {
6260
+ function invoke_viiiiiiiii(index, a1, a2, a3, a4, a5, a6, a7, a8, a9) {
5625
6261
  var sp = stackSave();
5626
6262
  try {
5627
- getWasmTableEntry(index)(a1, a2, a3, a4, a5, a6);
6263
+ getWasmTableEntry(index)(a1, a2, a3, a4, a5, a6, a7, a8, a9);
5628
6264
  } catch (e) {
5629
6265
  stackRestore(sp);
5630
6266
  if (e !== e + 0) throw e;
5631
6267
  _setThrew(1, 0);
5632
6268
  }
5633
6269
  }
5634
- function invoke_iiiiii(index, a1, a2, a3, a4, a5) {
6270
+ function invoke_viiiiii(index, a1, a2, a3, a4, a5, a6) {
5635
6271
  var sp = stackSave();
5636
6272
  try {
5637
- return getWasmTableEntry(index)(a1, a2, a3, a4, a5);
6273
+ getWasmTableEntry(index)(a1, a2, a3, a4, a5, a6);
5638
6274
  } catch (e) {
5639
6275
  stackRestore(sp);
5640
6276
  if (e !== e + 0) throw e;
5641
6277
  _setThrew(1, 0);
5642
6278
  }
5643
6279
  }
5644
- function invoke_iiiiiii(index, a1, a2, a3, a4, a5, a6) {
6280
+ function invoke_iiiiii(index, a1, a2, a3, a4, a5) {
5645
6281
  var sp = stackSave();
5646
6282
  try {
5647
- return getWasmTableEntry(index)(a1, a2, a3, a4, a5, a6);
6283
+ return getWasmTableEntry(index)(a1, a2, a3, a4, a5);
5648
6284
  } catch (e) {
5649
6285
  stackRestore(sp);
5650
6286
  if (e !== e + 0) throw e;
5651
6287
  _setThrew(1, 0);
5652
6288
  }
5653
6289
  }
5654
- function invoke_viiiii(index, a1, a2, a3, a4, a5) {
6290
+ function invoke_iiiiiiii(index, a1, a2, a3, a4, a5, a6, a7) {
5655
6291
  var sp = stackSave();
5656
6292
  try {
5657
- getWasmTableEntry(index)(a1, a2, a3, a4, a5);
6293
+ return getWasmTableEntry(index)(a1, a2, a3, a4, a5, a6, a7);
5658
6294
  } catch (e) {
5659
6295
  stackRestore(sp);
5660
6296
  if (e !== e + 0) throw e;