UNPKG

jolt-physics

Version:

A WebAssembly port of JoltPhysics, a rigid body physics and collision detection library, suitable for games and VR applications

833 lines (832 loc) 12.1 MB
// SPDX-FileCopyrightText: 2022-2024 Jorrit Rouwe // SPDX-License-Identifier: MIT // This is Web Assembly version of Jolt Physics, see: https://github.com/jrouwe/JoltPhysics.js // This code implements the `-sMODULARIZE` settings by taking the generated // JS program code (INNER_JS_CODE) and wrapping it in a factory function. // When targeting node and ES6 we use `await import ..` in the generated code // so the outer function needs to be marked as async. async function Jolt(moduleArg = {}) { var Module = moduleArg; (function() { function a(k) { k = k.split("-")[0]; for (k = k.split(".").slice(0, 3); k.length < 3;) { k.push("00"); } k = k.map(b => b.padStart(2, "0")); return k.join(""); } var c = typeof process !== "undefined" && process.versions?.node ? a(process.versions.node) : 2147483647; if (c < 180300) { throw Error(`This emscripten-generated code requires node v18.3.0 (detected v${[c / 10000 | 0, (c / 100 | 0) % 100, c % 100].join(".")})`); } if (c = typeof navigator !== "undefined" && navigator.userAgent) { var g = c.includes("Safari/") && !c.includes("Chrome/") && c.match(/Version\/(\d+\.?\d*\.?\d*)/) ? a(c.match(/Version\/(\d+\.?\d*\.?\d*)/)[1]) : 2147483647; if (g < 150000) { throw Error(`This emscripten-generated code requires Safari v15.0.0 (detected v${g})`); } g = c.match(/Firefox\/(\d+(?:\.\d+)?)/) ? parseFloat(c.match(/Firefox\/(\d+(?:\.\d+)?)/)[1]) : 2147483647; if (g < 79) { throw Error(`This emscripten-generated code requires Firefox v79 (detected v${g})`); } c = c.match(/Chrome\/(\d+(?:\.\d+)?)/) ? parseFloat(c.match(/Chrome\/(\d+(?:\.\d+)?)/)[1]) : 2147483647; if (c < 85) { throw Error(`This emscripten-generated code requires Chrome v85 (detected v${c})`); } } })(); var aa = !!globalThis.window, ba = !!globalThis.WorkerGlobalScope, ca = globalThis.process?.versions?.node && globalThis.process?.type != "renderer", da = !aa && !ca && !ba; if (ca) { let {createRequire:a} = await import("node:module"); var ea = a(import.meta.url); } var fa = "./this.program", ha = import.meta.url; if (ca) { if (!globalThis.process?.versions?.node || globalThis.process?.type == "renderer") { throw Error("not compiled for this environment (did you build to HTML and try to run it not on the web, or set ENVIRONMENT to something - like node - and run it someplace else - like on the web?)"); } ea("node:fs"); ha.startsWith("file:") && ea("node:path").dirname(ea("node:url").fileURLToPath(ha)); process.argv.length > 1 && (fa = process.argv[1].replace(/\\/g, "/")); process.argv.slice(2); } else if (!da) { if (aa || ba) { try { new URL(".", ha); } catch { } if (!globalThis.window && !globalThis.WorkerGlobalScope) { throw Error("not compiled for this environment (did you build to HTML and try to run it not on the web, or set ENVIRONMENT to something - like node - and run it someplace else - like on the web?)"); } } else { throw Error("environment detection error"); } } var ia = console.log.bind(console), ja = console.error.bind(console); d(!da, "shell environment detected but not enabled at build time (add `shell` to `-sENVIRONMENT` to enable)"); globalThis.WebAssembly || ja("no native wasm support detected"); var ka = !1; function d(a, c) { a || la("Assertion failed" + (c ? ": " + c : "")); } var aaa = a => a.startsWith("file://"); function baa() { var a = ma(); d((a & 3) == 0); a == 0 && (a += 4); na[a >> 2] = 34821223; na[a + 4 >> 2] = 2310721022; na[0] = 1668509029; } function oa() { if (!ka) { var a = ma(); a == 0 && (a += 4); var c = na[a >> 2], g = na[a + 4 >> 2]; c == 34821223 && g == 2310721022 || la(`Stack overflow! Stack cookie has been overwritten at ${pa(a)}, expected hex dwords 0x89BACDFE and 0x2135467, but received ${pa(g)} ${pa(c)}`); na[0] != 1668509029 && la("Runtime error: The application has corrupted its heap memory area (address zero)!"); } } var qa = new Int16Array(1), sa = new Int8Array(qa.buffer); qa[0] = 25459; sa[0] === 115 && sa[1] === 99 || la("Runtime error: expected the system to be little-endian! (Run with -sSUPPORT_BIG_ENDIAN to bypass)"); function ta(a) { var c = Module[a], g = `Attempt to modify \`Module.${a}\` after it has already been processed. This can happen, for example, when code is injected via '--post-js' rather than '--pre-js'`; Array.isArray(c) && (c = new Proxy(c, {set() { la(g); return !1; }, defineProperty() { la(g); return !1; }, deleteProperty() { la(g); return !1; }})); Object.defineProperty(Module, a, {configurable:!0, get() { return c; }, set() { la(g); }}); } function e(a) { return () => d(!1, `call to '${a}' via reference taken before Wasm module initialization`); } function ua(a) { Object.getOwnPropertyDescriptor(Module, a) && la(`\`Module.${a}\` was supplied but \`${a}\` not included in INCOMING_MODULE_JS_API`); } function va(a) { Object.getOwnPropertyDescriptor(Module, a) || Object.defineProperty(Module, a, {configurable:!0, get() { var c = `'${a}' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the Emscripten FAQ)`; a !== "FS_createPath" && a !== "FS_createDataFile" && a !== "FS_createPreloadedFile" && a !== "FS_preloadFile" && a !== "FS_unlink" && a !== "addRunDependency" && a !== "FS_createLazyFile" && a !== "FS_createDevice" && a !== "removeRunDependency" || (c += ". Alternatively, forcing filesystem support (-sFORCE_FILESYSTEM) can export this for you"); la(c); }}); } function caa(a) { for (var c = 0, g = a.length, k = new Uint8Array(g), b; c < g; ++c) { b = a.charCodeAt(c), k[c] = ~b >> 8 & b; } return k; } var wa = !1; d(globalThis.Int32Array && globalThis.Float64Array && Int32Array.prototype.subarray && Int32Array.prototype.set, "JS engine does not provide full typed array support"); function daa() { var a = Module.preRun; a && (typeof a == "function" && (a = [a]), xa.push(...a)); ta("preRun"); ya(xa); } function eaa() { oa(); var a = Module.postRun; a && (typeof a == "function" && (a = [a]), za.push(...a)); ta("postRun"); ya(za); } function la(a) { Module.onAbort?.(a); a = `Aborted(${a})`; ja(a); ka = !0; throw new WebAssembly.RuntimeError(a); } function Aa() { la("Filesystem support (FS) was not included. The problem is that you are using files from JS, but files were not used from C/C++, so filesystem support was not auto-included. You can force-include filesystem support with -sFORCE_FILESYSTEM"); } function f(a, c, g) { d(c); return (...k) => { d(wa, `native function \`${a}\` called before runtime initialization`); d(k.length <= g, `native function \`${a}\` called with ${k.length} args but expects ${g}`); return c(...k); }; } var Ba; async function faa(a) { return a; } async function gaa(a) { var c = Ba; try { var g = await faa(c); return await WebAssembly.instantiate(g, a); } catch (k) { ja(`failed to asynchronously prepare wasm: ${k}`), aaa(c) && ja(`warning: Loading from a file URI (${c}) is not supported in most browsers. See https://emscripten.org/docs/getting_started/FAQ.html#how-do-i-run-a-local-webserver-for-testing-why-does-my-program-stall-in-downloading-or-preparing`), la(k); } } async function haa(a) { return gaa(a); } var Ca, Da, Ea, Fa, Ga, na, Ha, ya = a => { for (; a.length > 0;) { a.shift()(Module); } }, za = [], xa = []; function pa(a) { d(typeof a === "number", `ptrToString expects a number, got ${typeof a}`); return "0x" + (a >>> 0).toString(16).padStart(8, "0"); } var Ia = a => { Ia.qf || (Ia.qf = {}); Ia.qf[a] || (Ia.qf[a] = 1, ca && (a = "warning: " + a), ja(a)); }, Ja = (a, c, g, k) => { d(typeof a === "string", `stringToUTF8Array expects a string (got ${typeof a})`); if (!(k > 0)) { return 0; } var b = g; k = g + k - 1; for (var m = 0; m < a.length; ++m) { var w = a.codePointAt(m); if (w <= 127) { if (g >= k) { break; } c[g++] = w; } else if (w <= 2047) { if (g + 1 >= k) { break; } c[g++] = 192 | w >> 6; c[g++] = 128 | w & 63; } else if (w <= 65535) { if (g + 2 >= k) { break; } c[g++] = 224 | w >> 12; c[g++] = 128 | w >> 6 & 63; c[g++] = 128 | w & 63; } else { if (g + 3 >= k) { break; } w > 1114111 && Ia(`Invalid Unicode code point ${pa(w)} encountered when serializing a JS string to a UTF-8 string in wasm memory! (Valid unicode code points should be in range 0-0x10FFFF).`); c[g++] = 240 | w >> 18; c[g++] = 128 | w >> 12 & 63; c[g++] = 128 | w >> 6 & 63; c[g++] = 128 | w & 63; m++; } } c[g] = 0; return g - b; }, Ka = (a, c, g) => { d(typeof g == "number", "stringToUTF8 requires a third parameter that specifies the length of the output buffer"); return Ja(a, Ha, c, g); }, La = a => { for (var c = 0, g = 0; g < a.length; ++g) { var k = a.charCodeAt(g); k <= 127 ? c++ : k <= 2047 ? c += 2 : k >= 55296 && k <= 57343 ? (c += 4, ++g) : c += 3; } return c; }, Ma = [], Oa = (a, c, g) => { d(Array.isArray(Ma)); d(g % 16 == 0); Ma.length = 0; for (var k; k = Ha[c++];) { var b = String.fromCharCode(k), m = ["d", "f", "i", "p"]; d(m.includes(b), `Invalid character ${k}("${b}") in readEmAsmArgs! Use only [${m}], and do not specify "v" for void return argument.`); b = k != 105; b &= k != 112; g += b && g % 8 ? 4 : 0; Ma.push(k == 112 ? na[g >> 2] : k == 105 ? Ea[g >> 2] : Ga[g >> 3]); g += b ? 8 : 4; } d(Na.hasOwnProperty(a), `No EM_ASM constant found at address ${a}. The loaded WebAssembly file is likely out of sync with the generated JavaScript.`); return Na[a](...Ma); }, Pa = {}, Ra = () => { if (!Qa) { var a = {USER:"web_user", LOGNAME:"web_user", PATH:"/", PWD:"/", HOME:"/home/web_user", LANG:(globalThis.navigator?.language ?? "C").replace("-", "_") + ".UTF-8", _:fa}, c; for (c in Pa) { Pa[c] === void 0 ? delete a[c] : a[c] = Pa[c]; } var g = []; for (c in a) { g.push(`${c}=${a[c]}`); } Qa = g; } return Qa; }, Qa, Sa = globalThis.TextDecoder && new TextDecoder(), Ta = (a, c = 0, g, k) => { var b = c; g = b + g; if (k) { k = g; } else { for (; a[b] && !(b >= g);) { ++b; } k = b; } if (k - c > 16 && a.buffer && Sa) { return Sa.decode(a.subarray(c, k)); } for (b = ""; c < k;) { if (g = a[c++], g & 128) { var m = a[c++] & 63; if ((g & 224) == 192) { b += String.fromCharCode((g & 31) << 6 | m); } else { var w = a[c++] & 63; (g & 240) == 224 ? g = (g & 15) << 12 | m << 6 | w : ((g & 248) != 240 && Ia(`Invalid UTF-8 leading byte ${pa(g)} encountered when deserializing a UTF-8 string in wasm memory to a JS string!`), g = (g & 7) << 18 | m << 12 | w << 6 | a[c++] & 63); g < 65536 ? b += String.fromCharCode(g) : (g -= 65536, b += String.fromCharCode(55296 | g >> 10, 56320 | g & 1023)); } } else { b += String.fromCharCode(g); } } return b; }, Ua = (a, c, g) => { d(typeof a == "number", `UTF8ToString expects a number (got ${typeof a})`); return a ? Ta(Ha, a, c, g) : ""; }, iaa = [null, [], []], Va = []; Module.print && (ia = Module.print); Module.printErr && (ja = Module.printErr); Module.FS_createDataFile = Aa; Module.FS_createPreloadedFile = Aa; ua("fetchSettings"); ua("logReadFiles"); ua("loadSplitModule"); ua("onMalloc"); ua("onRealloc"); ua("onFree"); ua("onSbrkGrow"); ua("onCOSCacheHit"); ua("onCOSCacheMiss"); ua("onCOSStore"); ua("GL_MAX_TEXTURE_IMAGE_UNITS"); ua("SDL_canPlayWithWebAudio"); ua("SDL_numSimultaneouslyQueuedBuffers"); ua("freePreloadedMediaOnUse"); ua("preinitializedWebGLContext"); ua("keyboardListeningElement"); ua("doNotCaptureKeyboard"); ua("extraStackTrace"); ua("preloadPlugins"); ua("preMainLoop"); ua("postMainLoop"); ua("forcedAspectRatio"); ua("mainScriptUrlOrBlob"); ua("onFullScreen"); ua("INITIAL_MEMORY"); ua("wasmMemory"); ua("wasmBinary"); Module.thisProgram && (fa = Module.thisProgram); d(typeof Module.memoryInitializerPrefixURL == "undefined", "Module.memoryInitializerPrefixURL option was removed, use Module.locateFile instead"); d(typeof Module.pthreadMainPrefixURL == "undefined", "Module.pthreadMainPrefixURL option was removed, use Module.locateFile instead"); d(typeof Module.cdInitializerPrefixURL == "undefined", "Module.cdInitializerPrefixURL option was removed, use Module.locateFile instead"); d(typeof Module.filePackagePrefixURL == "undefined", "Module.filePackagePrefixURL option was removed, use Module.locateFile instead"); d(typeof Module.read == "undefined", "Module.read option was removed"); d(typeof Module.readAsync == "undefined", "Module.readAsync option was removed (modify readAsync in JS)"); d(typeof Module.readBinary == "undefined", "Module.readBinary option was removed (modify readBinary in JS)"); d(typeof Module.setWindowTitle == "undefined", "Module.setWindowTitle option was removed (modify emscripten_set_window_title in JS)"); d(typeof Module.TOTAL_MEMORY == "undefined", "Module.TOTAL_MEMORY has been renamed Module.INITIAL_MEMORY"); d(typeof Module.ENVIRONMENT == "undefined", "Module.ENVIRONMENT has been deprecated. To force the environment, use the ENVIRONMENT compile-time option (for example, -sENVIRONMENT=web or -sENVIRONMENT=node)"); d(typeof Module.STACK_SIZE == "undefined", "STACK_SIZE can no longer be set at runtime. Use -sSTACK_SIZE at link time"); d(typeof Module.wasmMemory == "undefined", "Use of `wasmMemory` detected. Use -sIMPORTED_MEMORY to define wasmMemory externally"); d(typeof Module.INITIAL_MEMORY == "undefined", "Detected runtime INITIAL_MEMORY setting. Use -sIMPORTED_MEMORY to define wasmMemory dynamically"); var Wa = Module.preInit; if (Wa) { for (typeof Wa == "function" && (Module.preInit = Wa = [Wa]); Wa.length > 0;) { Wa.shift()(); } } ta("preInit"); Module.UTF8ToString = Ua; "writeI53ToI64 writeI53ToI64Clamped writeI53ToI64Signaling writeI53ToU64Clamped writeI53ToU64Signaling readI53FromI64 readI53FromU64 convertI32PairToI53 convertU32PairToI53 stackAlloc getTempRet0 setTempRet0 createNamedFunction zeroMemory exitJS growMemory withStackSave strError inetPton4 inetNtop4 inetPton6 inetNtop6 readSockaddr writeSockaddr runMainThreadEmAsm jstoi_q autoResumeAudioContext dynCallLegacy getDynCaller dynCall handleException keepRuntimeAlive runtimeKeepalivePush runtimeKeepalivePop callUserCallback maybeExit asyncLoad asmjsMangle mmapAlloc HandleAllocator getUniqueRunDependency addRunDependency removeRunDependency addOnPostCtor addOnPreMain addOnExit STACK_SIZE STACK_ALIGN POINTER_SIZE ASSERTIONS ccall cwrap convertJsFunctionToWasm getEmptyTableSlot updateTableMap getFunctionAddress addFunction removeFunction intArrayToString AsciiToString stringToAscii UTF16ToString stringToUTF16 lengthBytesUTF16 UTF32ToString stringToUTF32 lengthBytesUTF32 stringToNewUTF8 stringToUTF8OnStack writeArrayToMemory registerKeyEventCallback maybeCStringToJsString findEventTarget getBoundingClientRect fillMouseEventData registerMouseEventCallback registerWheelEventCallback registerUiEventCallback registerFocusEventCallback fillDeviceOrientationEventData registerDeviceOrientationEventCallback fillDeviceMotionEventData registerDeviceMotionEventCallback screenOrientation fillOrientationChangeEventData registerOrientationChangeEventCallback fillFullscreenChangeEventData registerFullscreenChangeEventCallback JSEvents_requestFullscreen JSEvents_resizeCanvasForFullscreen registerRestoreOldStyle hideEverythingExceptGivenElement restoreHiddenElements setLetterbox softFullscreenResizeWebGLRenderTarget doRequestFullscreen fillPointerlockChangeEventData registerPointerlockChangeEventCallback registerPointerlockErrorEventCallback requestPointerLock fillVisibilityChangeEventData registerVisibilityChangeEventCallback registerTouchEventCallback fillGamepadEventData registerGamepadEventCallback registerBeforeUnloadEventCallback fillBatteryEventData registerBatteryEventCallback setCanvasElementSize getCanvasElementSize jsStackTrace getCallstack convertPCtoSourceLocation wasiRightsToMuslOFlags wasiOFlagsToMuslOFlags initRandomFill randomFill safeSetTimeout setImmediateWrapped safeRequestAnimationFrame clearImmediateWrapped registerPostMainLoop registerPreMainLoop getPromise makePromise addPromise idsToPromises makePromiseCallback Browser_asyncPrepareDataCounter isLeapYear ydayFromDate arraySum addDays getSocketFromFD getSocketAddress heapObjectForWebGLType toTypedArrayIndex webgl_enable_ANGLE_instanced_arrays webgl_enable_OES_vertex_array_object webgl_enable_WEBGL_draw_buffers webgl_enable_WEBGL_multi_draw webgl_enable_EXT_polygon_offset_clamp webgl_enable_EXT_clip_control webgl_enable_WEBGL_polygon_mode emscriptenWebGLGet computeUnpackAlignedImageSize colorChannelsInGlTextureFormat emscriptenWebGLGetTexPixelData emscriptenWebGLGetUniform webglGetProgramUniformLocation webglGetUniformLocation webglPrepareUniformLocationsBeforeFirstUse webglGetLeftBracePos emscriptenWebGLGetVertexAttrib __glGetActiveAttribOrUniform writeGLArray registerWebGlEventCallback runAndAbortIfError ALLOC_NORMAL ALLOC_STACK allocate writeStringToMemory writeAsciiToMemory allocateUTF8 allocateUTF8OnStack demangle stackTrace getNativeTypeSize".split(" ").forEach(function(a) { va(a); }); "run out err callMain abort wasmExports writeStackCookie checkStackCookie convertI32PairToI53Checked stackSave stackRestore ptrToString getHeapMax abortOnCannotGrowMemory ENV ERRNO_CODES DNS Protocols Sockets timers warnOnce readEmAsmArgsArray readEmAsmArgs runEmAsmFunction getExecutableName alignMemory wasmTable wasmMemory noExitRuntime addOnPreRun addOnInit addOnPostRun freeTableIndexes functionsInTableMap setValue getValue PATH PATH_FS UTF8Decoder UTF8ArrayToString stringToUTF8Array stringToUTF8 lengthBytesUTF8 intArrayFromString UTF16Decoder JSEvents specialHTMLTargets findCanvasEventTarget currentFullscreenStrategy restoreOldWindowedStyle UNWIND_CACHE ExitStatus getEnvStrings checkWasiClock flush_NO_FILESYSTEM emSetImmediate emClearImmediate_deps emClearImmediate promiseMap Browser requestFullscreen requestFullScreen setCanvasSize getUserMedia createContext getPreloadedImageData__data wget MONTH_DAYS_REGULAR MONTH_DAYS_LEAP MONTH_DAYS_REGULAR_CUMULATIVE MONTH_DAYS_LEAP_CUMULATIVE SYSCALLS tempFixedLengthArray miniTempWebGLFloatBuffers miniTempWebGLIntBuffers GL AL GLUT EGL GLEW IDBStore SDL SDL_gfx print printErr jstoi_s".split(" ").forEach(va); var Na = {1157938:a => { a = Module.getCache(Module.PathConstraintPathJS)[a]; if (!a.hasOwnProperty("GetPathMaxFraction")) { throw "a JSImplementation must implement all functions, you forgot PathConstraintPathJS::GetPathMaxFraction."; } return a.GetPathMaxFraction(); }, 1158205:(a, c, g) => { a = Module.getCache(Module.PathConstraintPathJS)[a]; if (!a.hasOwnProperty("GetClosestPoint")) { throw "a JSImplementation must implement all functions, you forgot PathConstraintPathJS::GetClosestPoint."; } return a.GetClosestPoint(c, g); }, 1158468:(a, c, g, k, b, m) => { a = Module.getCache(Module.PathConstraintPathJS)[a]; if (!a.hasOwnProperty("GetPointOnPath")) { throw "a JSImplementation must implement all functions, you forgot PathConstraintPathJS::GetPointOnPath."; } a.GetPointOnPath(c, g, k, b, m); }, 1158730:(a, c, g) => { a = Module.getCache(Module.GroupFilterJS)[a]; if (!a.hasOwnProperty("CanCollide")) { throw "a JSImplementation must implement all functions, you forgot GroupFilterJS::CanCollide."; } return a.CanCollide(c, g); }, 1158964:(a, c) => { a = Module.getCache(Module.StateRecorderFilterJS)[a]; if (!a.hasOwnProperty("ShouldSaveBody")) { throw "a JSImplementation must implement all functions, you forgot StateRecorderFilterJS::ShouldSaveBody."; } return a.ShouldSaveBody(c); }, 1159223:(a, c) => { a = Module.getCache(Module.StateRecorderFilterJS)[a]; if (!a.hasOwnProperty("ShouldSaveConstraint")) { throw "a JSImplementation must implement all functions, you forgot StateRecorderFilterJS::ShouldSaveConstraint."; } return a.ShouldSaveConstraint(c); }, 1159500:(a, c, g) => { a = Module.getCache(Module.StateRecorderFilterJS)[a]; if (!a.hasOwnProperty("ShouldSaveContact")) { throw "a JSImplementation must implement all functions, you forgot StateRecorderFilterJS::ShouldSaveContact."; } return a.ShouldSaveContact(c, g); }, 1159771:(a, c, g) => { a = Module.getCache(Module.StateRecorderFilterJS)[a]; if (!a.hasOwnProperty("ShouldRestoreContact")) { throw "a JSImplementation must implement all functions, you forgot StateRecorderFilterJS::ShouldRestoreContact."; } return a.ShouldRestoreContact(c, g); }, 1160051:a => { a = Module.getCache(Module.StateRecorderJS)[a]; if (!a.hasOwnProperty("IsEOF")) { throw "a JSImplementation must implement all functions, you forgot StateRecorderJS::IsEOF."; } return a.IsEOF(); }, 1160269:a => { a = Module.getCache(Module.StateRecorderJS)[a]; if (!a.hasOwnProperty("IsFailed")) { throw "a JSImplementation must implement all functions, you forgot StateRecorderJS::IsFailed."; } return a.IsFailed(); }, 1160496:(a, c, g) => { a = Module.getCache(Module.StateRecorderJS)[a]; if (!a.hasOwnProperty("WriteBytes")) { throw "a JSImplementation must implement all functions, you forgot StateRecorderJS::WriteBytes."; } a.WriteBytes(c, g); }, 1160727:(a, c, g) => { a = Module.getCache(Module.StateRecorderJS)[a]; if (!a.hasOwnProperty("ReadBytes")) { throw "a JSImplementation must implement all functions, you forgot StateRecorderJS::ReadBytes."; } a.ReadBytes(c, g); }, 1160955:(a, c, g, k, b) => { a = Module.getCache(Module.ContactListenerJS)[a]; if (!a.hasOwnProperty("OnContactAdded")) { throw "a JSImplementation must implement all functions, you forgot ContactListenerJS::OnContactAdded."; } a.OnContactAdded(c, g, k, b); }, 1161208:(a, c, g, k, b) => { a = Module.getCache(Module.ContactListenerJS)[a]; if (!a.hasOwnProperty("OnContactPersisted")) { throw "a JSImplementation must implement all functions, you forgot ContactListenerJS::OnContactPersisted."; } a.OnContactPersisted(c, g, k, b); }, 1161473:(a, c) => { a = Module.getCache(Module.ContactListenerJS)[a]; if (!a.hasOwnProperty("OnContactRemoved")) { throw "a JSImplementation must implement all functions, you forgot ContactListenerJS::OnContactRemoved."; } a.OnContactRemoved(c); }, 1161723:(a, c, g, k, b) => { a = Module.getCache(Module.ContactListenerJS)[a]; if (!a.hasOwnProperty("OnContactValidate")) { throw "a JSImplementation must implement all functions, you forgot ContactListenerJS::OnContactValidate."; } return a.OnContactValidate(c, g, k, b); }, 1161992:(a, c, g) => { a = Module.getCache(Module.SoftBodyContactListenerJS)[a]; if (!a.hasOwnProperty("OnSoftBodyContactAdded")) { throw "a JSImplementation must implement all functions, you forgot SoftBodyContactListenerJS::OnSoftBodyContactAdded."; } a.OnSoftBodyContactAdded(c, g); }, 1162279:(a, c, g, k) => { a = Module.getCache(Module.SoftBodyContactListenerJS)[a]; if (!a.hasOwnProperty("OnSoftBodyContactValidate")) { throw "a JSImplementation must implement all functions, you forgot SoftBodyContactListenerJS::OnSoftBodyContactValidate."; } return a.OnSoftBodyContactValidate(c, g, k); }, 1162585:a => { a = Module.getCache(Module.RayCastBodyCollectorJS)[a]; if (!a.hasOwnProperty("Reset")) { throw "a JSImplementation must implement all functions, you forgot RayCastBodyCollectorJS::Reset."; } a.Reset(); }, 1162810:(a, c) => { a = Module.getCache(Module.RayCastBodyCollectorJS)[a]; if (!a.hasOwnProperty("AddHit")) { throw "a JSImplementation must implement all functions, you forgot RayCastBodyCollectorJS::AddHit."; } a.AddHit(c); }, 1163040:a => { a = Module.getCache(Module.CollideShapeBodyCollectorJS)[a]; if (!a.hasOwnProperty("Reset")) { throw "a JSImplementation must implement all functions, you forgot CollideShapeBodyCollectorJS::Reset."; } a.Reset(); }, 1163275:(a, c) => { a = Module.getCache(Module.CollideShapeBodyCollectorJS)[a]; if (!a.hasOwnProperty("AddHit")) { throw "a JSImplementation must implement all functions, you forgot CollideShapeBodyCollectorJS::AddHit."; } a.AddHit(c); }, 1163515:a => { a = Module.getCache(Module.CastShapeBodyCollectorJS)[a]; if (!a.hasOwnProperty("Reset")) { throw "a JSImplementation must implement all functions, you forgot CastShapeBodyCollectorJS::Reset."; } a.Reset(); }, 1163744:(a, c) => { a = Module.getCache(Module.CastShapeBodyCollectorJS)[a]; if (!a.hasOwnProperty("AddHit")) { throw "a JSImplementation must implement all functions, you forgot CastShapeBodyCollectorJS::AddHit."; } a.AddHit(c); }, 1163978:a => { a = Module.getCache(Module.CastRayCollectorJS)[a]; if (!a.hasOwnProperty("Reset")) { throw "a JSImplementation must implement all functions, you forgot CastRayCollectorJS::Reset."; } a.Reset(); }, 1164195:(a, c) => { a = Module.getCache(Module.CastRayCollectorJS)[a]; if (!a.hasOwnProperty("OnBody")) { throw "a JSImplementation must implement all functions, you forgot CastRayCollectorJS::OnBody."; } a.OnBody(c); }, 1164417:(a, c) => { a = Module.getCache(Module.CastRayCollectorJS)[a]; if (!a.hasOwnProperty("AddHit")) { throw "a JSImplementation must implement all functions, you forgot CastRayCollectorJS::AddHit."; } a.AddHit(c); }, 1164639:a => { a = Module.getCache(Module.CollidePointCollectorJS)[a]; if (!a.hasOwnProperty("Reset")) { throw "a JSImplementation must implement all functions, you forgot CollidePointCollectorJS::Reset."; } a.Reset(); }, 1164866:(a, c) => { a = Module.getCache(Module.CollidePointCollectorJS)[a]; if (!a.hasOwnProperty("OnBody")) { throw "a JSImplementation must implement all functions, you forgot CollidePointCollectorJS::OnBody."; } a.OnBody(c); }, 1165098:(a, c) => { a = Module.getCache(Module.CollidePointCollectorJS)[a]; if (!a.hasOwnProperty("AddHit")) { throw "a JSImplementation must implement all functions, you forgot CollidePointCollectorJS::AddHit."; } a.AddHit(c); }, 1165330:a => { a = Module.getCache(Module.CollideShapeCollectorJS)[a]; if (!a.hasOwnProperty("Reset")) { throw "a JSImplementation must implement all functions, you forgot CollideShapeCollectorJS::Reset."; } a.Reset(); }, 1165557:(a, c) => { a = Module.getCache(Module.CollideShapeCollectorJS)[a]; if (!a.hasOwnProperty("OnBody")) { throw "a JSImplementation must implement all functions, you forgot CollideShapeCollectorJS::OnBody."; } a.OnBody(c); }, 1165789:(a, c) => { a = Module.getCache(Module.CollideShapeCollectorJS)[a]; if (!a.hasOwnProperty("AddHit")) { throw "a JSImplementation must implement all functions, you forgot CollideShapeCollectorJS::AddHit."; } a.AddHit(c); }, 1166021:a => { a = Module.getCache(Module.CastShapeCollectorJS)[a]; if (!a.hasOwnProperty("Reset")) { throw "a JSImplementation must implement all functions, you forgot CastShapeCollectorJS::Reset."; } a.Reset(); }, 1166242:(a, c) => { a = Module.getCache(Module.CastShapeCollectorJS)[a]; if (!a.hasOwnProperty("OnBody")) { throw "a JSImplementation must implement all functions, you forgot CastShapeCollectorJS::OnBody."; } a.OnBody(c); }, 1166468:(a, c) => { a = Module.getCache(Module.CastShapeCollectorJS)[a]; if (!a.hasOwnProperty("AddHit")) { throw "a JSImplementation must implement all functions, you forgot CastShapeCollectorJS::AddHit."; } a.AddHit(c); }, 1166694:a => { a = Module.getCache(Module.TransformedShapeCollectorJS)[a]; if (!a.hasOwnProperty("Reset")) { throw "a JSImplementation must implement all functions, you forgot TransformedShapeCollectorJS::Reset."; } a.Reset(); }, 1166929:(a, c) => { a = Module.getCache(Module.TransformedShapeCollectorJS)[a]; if (!a.hasOwnProperty("OnBody")) { throw "a JSImplementation must implement all functions, you forgot TransformedShapeCollectorJS::OnBody."; } a.OnBody(c); }, 1167169:(a, c) => { a = Module.getCache(Module.TransformedShapeCollectorJS)[a]; if (!a.hasOwnProperty("AddHit")) { throw "a JSImplementation must implement all functions, you forgot TransformedShapeCollectorJS::AddHit."; } a.AddHit(c); }, 1167409:(a, c) => { a = Module.getCache(Module.PhysicsStepListenerJS)[a]; if (!a.hasOwnProperty("OnStep")) { throw "a JSImplementation must implement all functions, you forgot PhysicsStepListenerJS::OnStep."; } a.OnStep(c); }, 1167637:(a, c, g) => { a = Module.getCache(Module.BodyActivationListenerJS)[a]; if (!a.hasOwnProperty("OnBodyActivated")) { throw "a JSImplementation must implement all functions, you forgot BodyActivationListenerJS::OnBodyActivated."; } a.OnBodyActivated(c, g); }, 1167901:(a, c, g) => { a = Module.getCache(Module.BodyActivationListenerJS)[a]; if (!a.hasOwnProperty("OnBodyDeactivated")) { throw "a JSImplementation must implement all functions, you forgot BodyActivationListenerJS::OnBodyDeactivated."; } a.OnBodyDeactivated(c, g); }, 1168171:(a, c, g, k, b) => { a = Module.getCache(Module.CharacterContactListenerJS)[a]; if (!a.hasOwnProperty("OnAdjustBodyVelocity")) { throw "a JSImplementation must implement all functions, you forgot CharacterContactListenerJS::OnAdjustBodyVelocity."; } a.OnAdjustBodyVelocity(c, g, k, b); }, 1168460:(a, c, g, k) => { a = Module.getCache(Module.CharacterContactListenerJS)[a]; if (!a.hasOwnProperty("OnContactRemoved")) { throw "a JSImplementation must implement all functions, you forgot CharacterContactListenerJS::OnContactRemoved."; } a.OnContactRemoved(c, g, k); }, 1168734:(a, c, g, k) => { a = Module.getCache(Module.CharacterContactListenerJS)[a]; if (!a.hasOwnProperty("OnCharacterContactRemoved")) { throw "a JSImplementation must implement all functions, you forgot CharacterContactListenerJS::OnCharacterContactRemoved."; } a.OnCharacterContactRemoved(c, g, k); }, 1169035:(a, c, g, k) => { a = Module.getCache(Module.CharacterContactListenerJS)[a]; if (!a.hasOwnProperty("OnContactValidate")) { throw "a JSImplementation must implement all functions, you forgot CharacterContactListenerJS::OnContactValidate."; } return a.OnContactValidate(c, g, k); }, 1169319:(a, c, g, k) => { a = Module.getCache(Module.CharacterContactListenerJS)[a]; if (!a.hasOwnProperty("OnCharacterContactValidate")) { throw "a JSImplementation must implement all functions, you forgot CharacterContactListenerJS::OnCharacterContactValidate."; } return a.OnCharacterContactValidate(c, g, k); }, 1169630:(a, c, g, k, b, m, w) => { a = Module.getCache(Module.CharacterContactListenerJS)[a]; if (!a.hasOwnProperty("OnContactAdded")) { throw "a JSImplementation must implement all functions, you forgot CharacterContactListenerJS::OnContactAdded."; } a.OnContactAdded(c, g, k, b, m, w); }, 1169907:(a, c, g, k, b, m, w) => { a = Module.getCache(Module.CharacterContactListenerJS)[a]; if (!a.hasOwnProperty("OnContactPersisted")) { throw "a JSImplementation must implement all functions, you forgot CharacterContactListenerJS::OnContactPersisted."; } a.OnContactPersisted(c, g, k, b, m, w); }, 1170196:(a, c, g, k, b, m, w) => { a = Module.getCache(Module.CharacterContactListenerJS)[a]; if (!a.hasOwnProperty("OnCharacterContactAdded")) { throw "a JSImplementation must implement all functions, you forgot CharacterContactListenerJS::OnCharacterContactAdded."; } a.OnCharacterContactAdded(c, g, k, b, m, w); }, 1170500:(a, c, g, k, b, m, w) => { a = Module.getCache(Module.CharacterContactListenerJS)[a]; if (!a.hasOwnProperty("OnCharacterContactPersisted")) { throw "a JSImplementation must implement all functions, you forgot CharacterContactListenerJS::OnCharacterContactPersisted."; } a.OnCharacterContactPersisted(c, g, k, b, m, w); }, 1170816:(a, c, g, k, b, m, w, O, ra, $b) => { a = Module.getCache(Module.CharacterContactListenerJS)[a]; if (!a.hasOwnProperty("OnContactSolve")) { throw "a JSImplementation must implement all functions, you forgot CharacterContactListenerJS::OnContactSolve."; } a.OnContactSolve(c, g, k, b, m, w, O, ra, $b); }, 1171102:(a, c, g, k, b, m, w, O, ra, $b) => { a = Module.getCache(Module.CharacterContactListenerJS)[a]; if (!a.hasOwnProperty("OnCharacterContactSolve")) { throw "a JSImplementation must implement all functions, you forgot CharacterContactListenerJS::OnCharacterContactSolve."; } a.OnCharacterContactSolve(c, g, k, b, m, w, O, ra, $b); }, 1171415:(a, c, g) => { a = Module.getCache(Module.ObjectVsBroadPhaseLayerFilterJS)[a]; if (!a.hasOwnProperty("ShouldCollide")) { throw "a JSImplementation must implement all functions, you forgot ObjectVsBroadPhaseLayerFilterJS::ShouldCollide."; } return a.ShouldCollide(c, g); }, 1171694:(a, c) => { a = Module.getCache(Module.ObjectLayerFilterJS)[a]; if (!a.hasOwnProperty("ShouldCollide")) { throw "a JSImplementation must implement all functions, you forgot ObjectLayerFilterJS::ShouldCollide."; } return a.ShouldCollide(c); }, 1171946:(a, c, g) => { a = Module.getCache(Module.ObjectLayerPairFilterJS)[a]; if (!a.hasOwnProperty("ShouldCollide")) { throw "a JSImplementation must implement all functions, you forgot ObjectLayerPairFilterJS::ShouldCollide."; } return a.ShouldCollide(c, g); }, 1172209:(a, c) => { a = Module.getCache(Module.BodyFilterJS)[a]; if (!a.hasOwnProperty("ShouldCollide")) { throw "a JSImplementation must implement all functions, you forgot BodyFilterJS::ShouldCollide."; } return a.ShouldCollide(c); }, 1172447:(a, c) => { a = Module.getCache(Module.BodyFilterJS)[a]; if (!a.hasOwnProperty("ShouldCollideLocked")) { throw "a JSImplementation must implement all functions, you forgot BodyFilterJS::ShouldCollideLocked."; } return a.ShouldCollideLocked(c); }, 1172703:(a, c, g) => { a = Module.getCache(Module.ShapeFilterJS)[a]; if (!a.hasOwnProperty("ShouldCollide")) { throw "a JSImplementation must implement all functions, you forgot ShapeFilterJS::ShouldCollide."; } return a.ShouldCollide(c, g); }, 1172946:(a, c, g, k, b) => { a = Module.getCache(Module.ShapeFilterJS2)[a]; if (!a.hasOwnProperty("ShouldCollide")) { throw "a JSImplementation must implement all functions, you forgot ShapeFilterJS2::ShouldCollide."; } return a.ShouldCollide(c, g, k, b); }, 1173197:(a, c, g, k, b, m, w) => { a = Module.getCache(Module.SimShapeFilterJS)[a]; if (!a.hasOwnProperty("ShouldCollide")) { throw "a JSImplementation must implement all functions, you forgot SimShapeFilterJS::ShouldCollide."; } return a.ShouldCollide(c, g, k, b, m, w); }, 1173458:(a, c, g, k, b, m) => { a = Module.getCache(Module.VehicleConstraintCallbacksJS)[a]; if (!a.hasOwnProperty("GetCombinedFriction")) { throw "a JSImplementation must implement all functions, you forgot VehicleConstraintCallbacksJS::GetCombinedFriction."; } return a.GetCombinedFriction(c, g, k, b, m); }, 1173758:(a, c, g) => { a = Module.getCache(Module.VehicleConstraintCallbacksJS)[a]; if (!a.hasOwnProperty("OnPreStepCallback")) { throw "a JSImplementation must implement all functions, you forgot VehicleConstraintCallbacksJS::OnPreStepCallback."; } a.OnPreStepCallback(c, g); }, 1174036:(a, c, g) => { a = Module.getCache(Module.VehicleConstraintCallbacksJS)[a]; if (!a.hasOwnProperty("OnPostCollideCallback")) { throw "a JSImplementation must implement all functions, you forgot VehicleConstraintCallbacksJS::OnPostCollideCallback."; } a.OnPostCollideCallback(c, g); }, 1174326:(a, c, g) => { a = Module.getCache(Module.VehicleConstraintCallbacksJS)[a]; if (!a.hasOwnProperty("OnPostStepCallback")) { throw "a JSImplementation must implement all functions, you forgot VehicleConstraintCallbacksJS::OnPostStepCallback."; } a.OnPostStepCallback(c, g); }, 1174607:(a, c, g, k, b, m, w, O, ra) => { a = Module.getCache(Module.WheeledVehicleControllerCallbacksJS)[a]; if (!a.hasOwnProperty("OnTireMaxImpulseCallback")) { throw "a JSImplementation must implement all functions, you forgot WheeledVehicleControllerCallbacksJS::OnTireMaxImpulseCallback."; } a.OnTireMaxImpulseCallback(c, g, k, b, m, w, O, ra); }, 1174938:a => { a = Module.getCache(Module.BroadPhaseLayerInterfaceJS)[a]; if (!a.hasOwnProperty("GetNumBroadPhaseLayers")) { throw "a JSImplementation must implement all functions, you forgot BroadPhaseLayerInterfaceJS::GetNumBroadPhaseLayers."; } return a.GetNumBroadPhaseLayers(); }, 1175229:(a, c) => { a = Module.getCache(Module.BroadPhaseLayerInterfaceJS)[a]; if (!a.hasOwnProperty("GetBPLayer")) { throw "a JSImplementation must implement all functions, you forgot BroadPhaseLayerInterfaceJS::GetBPLayer."; } return a.GetBPLayer(c); }, 1175486:(a, c, g, k, b) => { a = Module.getCache(Module.AssertFailedHandlerJS)[a]; if (!a.hasOwnProperty("OnAssertFailed")) { throw "a JSImplementation must implement all functions, you forgot AssertFailedHandlerJS::OnAssertFailed."; } a.OnAssertFailed(c, g, k, b); }, 1175747:() => Fa.length, 1175767:(a, c, g, k) => { a = Module.getCache(Module.DebugRendererJS)[a]; if (!a.hasOwnProperty("DrawLine")) { throw "a JSImplementation must implement all functions, you forgot DebugRendererJS::DrawLine."; } a.DrawLine(c, g, k); }, 1175995:(a, c, g, k, b, m) => { a = Module.getCache(Module.DebugRendererJS)[a]; if (!a.hasOwnProperty("DrawTriangle")) { throw "a JSImplementation must implement all functions, you forgot DebugRendererJS::DrawTriangle."; } a.DrawTriangle(c, g, k, b, m); }, 1176241:(a, c, g, k, b, m) => { a = Module.getCache(Module.DebugRendererJS)[a]; if (!a.hasOwnProperty("DrawText3D")) { throw "a JSImplementation must implement all functions, you forgot DebugRendererJS::DrawText3D."; } a.DrawText3D(c, g, k, b, m); }, 1176481:(a, c, g) => { a = Module.getCache(Module.DebugRendererJS)[a]; if (!a.hasOwnProperty("CreateTriangleBatchID")) { throw "a JSImplementation must implement all functions, you forgot DebugRendererJS::CreateTriangleBatchID."; } return a.CreateTriangleBatchID(c, g); }, 1176752:(a, c, g, k, b) => { a = Module.getCache(Module.DebugRendererJS)[a]; if (!a.hasOwnProperty("CreateTriangleBatchIDWithIndex")) { throw "a JSImplementation must implement all functions, you forgot DebugRendererJS::CreateTriangleBatchIDWithIndex."; } return a.CreateTriangleBatchIDWithIndex(c, g, k, b); }, 1177056:(a, c, g, k, b, m, w, O, ra) => { a = Module.getCache(Module.DebugRendererJS)[a]; if (!a.hasOwnProperty("DrawGeometryWithID")) { throw "a JSImplementation must implement all functions, you forgot DebugRendererJS::DrawGeometryWithID."; } a.DrawGeometryWithID(c, g, k, b, m, w, O, ra); }}; Module._webidl_free = e("_webidl_free"); Module._webidl_malloc = e("_webidl_malloc"); var Xa = Module._emscripten_bind_ShapeSettings_GetRefCount_0 = e("_emscripten_bind_ShapeSettings_GetRefCount_0"), Ya = Module._emscripten_bind_ShapeSettings_AddRef_0 = e("_emscripten_bind_ShapeSettings_AddRef_0"), Za = Module._emscripten_bind_ShapeSettings_Release_0 = e("_emscripten_bind_ShapeSettings_Release_0"), $a = Module._emscripten_bind_ShapeSettings_Create_0 = e("_emscripten_bind_ShapeSettings_Create_0"), ab = Module._emscripten_bind_ShapeSettings_ClearCachedResult_0 = e("_emscripten_bind_ShapeSettings_ClearCachedResult_0"), bb = Module._emscripten_bind_ShapeSettings_get_mUserData_0 = e("_emscripten_bind_ShapeSettings_get_mUserData_0"), cb = Module._emscripten_bind_ShapeSettings_set_mUserData_1 = e("_emscripten_bind_ShapeSettings_set_mUserData_1"), db = Module._emscripten_bind_ShapeSettings___destroy___0 = e("_emscripten_bind_ShapeSettings___destroy___0"), eb = Module._emscripten_bind_Shape_GetRefCount_0 = e("_emscripten_bind_Shape_GetRefCount_0"), fb = Module._emscripten_bind_Shape_AddRef_0 = e("_emscripten_bind_Shape_AddRef_0"), gb = Module._emscripten_bind_Shape_Release_0 = e("_emscripten_bind_Shape_Release_0"), hb = Module._emscripten_bind_Shape_GetType_0 = e("_emscripten_bind_Shape_GetType_0"), ib = Module._emscripten_bind_Shape_GetSubType_0 = e("_emscripten_bind_Shape_GetSubType_0"), jb = Module._emscripten_bind_Shape_MustBeStatic_0 = e("_emscripten_bind_Shape_MustBeStatic_0"), kb = Module._emscripten_bind_Shape_GetLocalBounds_0 = e("_emscripten_bind_Shape_GetLocalBounds_0"), lb = Module._emscripten_bind_Shape_GetWorldSpaceBounds_2 = e("_emscripten_bind_Shape_GetWorldSpaceBounds_2"), mb = Module._emscripten_bind_Shape_GetCenterOfMass_0 = e("_emscripten_bind_Shape_GetCenterOfMass_0"), nb = Module._emscripten_bind_Shape_GetUserData_0 = e("_emscripten_bind_Shape_GetUserData_0"), ob = Module._emscripten_bind_Shape_SetUserData_1 = e("_emscripten_bind_Shape_SetUserData_1"), pb = Module._emscripten_bind_Shape_GetSubShapeIDBitsRecursive_0 = e("_emscripten_bind_Shape_GetSubShapeIDBitsRecursive_0"), qb = Module._emscripten_bind_Shape_GetInnerRadius_0 = e("_emscripten_bind_Shape_GetInnerRadius_0"), rb = Module._emscripten_bind_Shape_GetMassProperties_0 = e("_emscripten_bind_Shape_GetMassProperties_0"), sb = Module._emscripten_bind_Shape_GetLeafShape_2 = e("_emscripten_bind_Shape_GetLeafShape_2"), tb = Module._emscripten_bind_Shape_GetMaterial_1 = e("_emscripten_bind_Shape_GetMaterial_1"), ub = Module._emscripten_bind_Shape_GetSurfaceNormal_2 = e("_emscripten_bind_Shape_GetSurfaceNormal_2"), vb = Module._emscripten_bind_Shape_GetSubShapeUserData_1 = e("_emscripten_bind_Shape_GetSubShapeUserData_1"), wb = Module._emscripten_bind_Shape_GetSubShapeTransformedShape_5 = e("_emscripten_bind_Shape_GetSubShapeTransformedShape_5"), xb = Module._emscripten_bind_Shape_GetVolume_0 = e("_emscripten_bind_Shape_GetVolume_0"), yb = Module._emscripten_bind_Shape_IsValidScale_1 = e("_emscripten_bind_Shape_IsValidScale_1"), zb = Module._emscripten_bind_Shape_MakeScaleValid_1 = e("_emscripten_bind_Shape_MakeScaleValid_1"), Ab = Module._emscripten_bind_Shape_ScaleShape_1 = e("_emscripten_bind_Shape_ScaleShape_1"), Bb = Module._emscripten_bind_Shape___destroy___0 = e("_emscripten_bind_Shape___destroy___0"), Cb = Module._emscripten_bind_ConstraintSettings_GetRefCount_0 = e("_emscripten_bind_ConstraintSettings_GetRefCount_0"), Db = Module._emscripten_bind_ConstraintSettings_AddRef_0 = e("_emscripten_bind_ConstraintSettings_AddRef_0"), Eb = Module._emscripten_bind_ConstraintSettings_Release_0 = e("_emscripten_bind_ConstraintSettings_Release_0"), Fb = Module._emscripten_bind_ConstraintSettings_get_mEnabled_0 = e("_emscripten_bind_ConstraintSettings_get_mEnabled_0"), Gb = Module._emscripten_bind_ConstraintSettings_set_mEnabled_1 = e("_emscripten_bind_ConstraintSettings_set_mEnabled_1"), Hb = Module._emscripten_bind_ConstraintSettings_get_mNumVelocityStepsOverride_0 = e("_emscripten_bind_ConstraintSettings_get_mNumVelocityStepsOverride_0"), Ib = Module._emscripten_bind_ConstraintSettings_set_mNumVelocityStepsOverride_1 = e("_emscripten_bind_ConstraintSettings_set_mNumVelocityStepsOverride_1"), Jb = Module._emscripten_bind_ConstraintSettings_get_mNumPositionStepsOverride_0 = e("_emscripten_bind_ConstraintSettings_get_mNumPositionStepsOverride_0"), Kb = Module._emscripten_bind_ConstraintSettings_set_mNumPositionStepsOverride_1 = e("_emscripten_bind_ConstraintSettings_set_mNumPositionStepsOverride_1"), Lb = Module._emscripten_bind_ConstraintSettings___destroy___0 = e("_emscripten_bind_ConstraintSettings___destroy___0"), Mb = Module._emscripten_bind_Constraint_GetRefCount_0 = e("_emscripten_bind_Constraint_GetRefCount_0"), Nb = Module._emscripten_bind_Constraint_AddRef_0 = e("_emscripten_bind_Constraint_AddRef_0"), Ob = Module._emscripten_bind_Constraint_Release_0 = e("_emscripten_bind_Constraint_Release_0"), Pb = Module._emscripten_bind_Constraint_GetType_0 = e("_emscripten_bind_Constraint_GetType_0"), Qb = Module._emscripten_bind_Constraint_GetSubType_0 = e("_emscripten_bind_Constraint_GetSubType_0"), Rb = Module._emscripten_bind_Constraint_GetConstraintPriority_0 = e("_emscripten_bind_Constraint_GetConstraintPriority_0"), Sb = Module._emscripten_bind_Constraint_SetConstraintPriority_1 = e("_emscripten_bind_Constraint_SetConstraintPriority_1"), Tb = Module._emscripten_bind_Constraint_SetNumVelocityStepsOverride_1 = e("_emscripten_bind_Constraint_SetNumVelocityStepsOverride_1"), Ub = Module._emscripten_bind_Constraint_GetNumVelocityStepsOverride_0 = e("_emscripten_bind_Constraint_GetNumVelocityStepsOverride_0"), Vb = Module._emscripten_bind_Constraint_SetNumPositionStepsOverride_1 = e("_emscripten_bind_Constraint_SetNumPositionStepsOverride_1"), Wb = Module._emscripten_bind_Constraint_GetNumPositionStepsOverride_0 = e("_emscripten_bind_Constraint_GetNumPositionStepsOverride_0"), Xb = Module._emscripten_bind_Constraint_SetEnabled_1 = e("_emscripten_bind_Constraint_SetEnabled_1"), Yb = Module._emscripten_bind_Constraint_GetEnabled_0 = e("_emscripten_bind_Constraint_GetEnabled_0"), Zb = Module._emscripten_bind_Constraint_IsActive_0 = e("_emscripten_bind_Constraint_IsActive_0"), ac = Module._emscripten_bind_Constraint_GetUserData_0 = e("_emscripten_bind_Constraint_GetUserData_0"), bc = Module._emscripten_bind_Constraint_SetUserData_1 = e("_emscripten_bind_Constraint_SetUserData_1"), cc = Module._emscripten_bind_Constraint_ResetWarmStart_0 = e("_emscripten_bind_Constraint_ResetWarmStart_0"), dc = Module._emscripten_bind_Constraint_SaveState_1 = e("_emscripten_bind_Constraint_SaveState_1"), ec = Module._emscripten_bind_Constraint_RestoreState_1 = e("_emscripten_bind_Constraint_RestoreState_1"), fc = Module._emscripten_bind_Constraint___destroy___0 = e("_emscripten_bind_Constraint___destroy___0"), hc = Module._emscripten_bind_PathConstraintPath_IsLooping_0 = e("_emscripten_bind_PathConstraintPath_IsLooping_0"), ic = Module._emscripten_bind_PathConstraintPath_SetIsLooping_1 = e("_emscripten_bind_PathConstraintPath_SetIsLooping_1"), jc = Module._emscripten_bind_PathConstraintPath_GetRefCount_0 = e("_emscripten_bind_PathConstraintPath_GetRefCount_0"), kc = Module._emscripten_bind_PathConstraintPath_AddRef_0 = e("_emscripten_bind_PathConstraintPath_AddRef_0"), lc = Module._emscripten_bind_PathConstraintPath_Release_0 = e("_emscripten_bind_PathConstraintPath_Release_0"), mc = Module._emscripten_bind_PathConstraintPath___destroy___0 = e("_emscripten_bind_PathConstraintPath___destroy___0"), nc = Module._emscripten_bind_StateRecorder_SetValidating_1 = e("_emscripten_bind_StateRecorder_SetValidating_1"), oc = Module._emscripten_bind_StateRecorder_IsValidating_0 = e("_emscripten_bind_StateRecorder_IsValidating_0"), pc = Module._emscripten_bind_StateRecorder_SetIsLastPart_1 = e("_emscripten_bind_StateRecorder_SetIsLastPart_1"), qc = Module._emscripten_bind_StateRecorder_IsLastPart_0 = e("_emscripten_bind_StateRecorder_IsLastPart_0"), rc = Module._emscripten_bind_StateRecorder___destroy___0 = e("_emscripten_bind_StateRecorder___destroy___0"), sc = Module._emscripten_bind_ContactListener___destroy___0 = e("_emscripten_bind_ContactListener___destroy___0"), tc = Module._emscripten_bind_SoftBodyContactListener___destroy___0 = e("_emscripten_bind_SoftBodyContactListener___destroy___0"), uc = Module._emscripten_bind_BodyActivationListener___destroy___0 = e("_emscripten_bind_BodyActivationListener___destroy___0"), vc = Module._emscripten_bind_CharacterContactListener___destroy___0 = e("_emscripten_bind_CharacterContactListener___destroy___0"), wc = Module._emscripten_bind_ObjectVsBroadPhaseLayerFilter_ObjectVsBroadPhaseLayerFilter_0 = e("_emscripten_bind_ObjectVsBroadPhaseLayerFilter_ObjectVsBroadPhaseLayerFilter_0"), xc = Module._emscripten_bind_ObjectVsBroadPhaseLayerFilter___destroy___0 = e("_emscripten_bind_ObjectVsBroadPhaseLayerFilter___destroy___0"), yc = Module._emscripten_bind_VehicleControllerSettings___destroy___0 = e("_emscripten_bind_VehicleControllerSettings___destroy___0"), zc = Module._emscripten_bind_VehicleController_GetConstraint_0 = e("_emscripten_bind_VehicleController_GetConstraint_0"), Ac = Module._emscripten_bind_VehicleController___destroy___0 = e("_emscripten_bind_VehicleController___destroy___0"), Bc = Module._emscripten_bind_BroadPhaseLayerInterface_GetNumBroadPhaseLayers_0 = e("_emscripten_bind_BroadPhaseLayerInterface_GetNumBroadPhaseLayers_0"), Cc = Module._emscripten_bind_BroadPhaseLayerInterface___destroy___0 = e("_emscripten_bind_BroadPhaseLayerInterface___destroy___0"), Dc = Module._emscripten_bind_BroadPhaseCastResult_BroadPhaseCastResult_0 = e("_emscripten_bind_BroadPhaseCastResult_BroadPhaseCastResult_0"), Ec = Module._emscripten_bind_BroadPhaseCastResult_Reset_0 = e("_emscripten_bind_BroadPhaseCastResult_Reset_0"), Fc = Module._emscripten_bind_BroadPhaseCastResult_get_mBodyID_0 = e("_emscripten_bind_BroadPhaseCastResult_get_mBodyID_0"), Gc = Module._emscripten_bind_BroadPhaseCastResult_set_mBodyID_1 = e("_emscripten_bind_BroadPhaseCastResult_set_mBodyID_1"), Hc = Module._emscripten_bind_BroadPhaseCastResult_get_mFraction_0 = e("_emscripten_bind_BroadPhaseCastResult_get_mFraction_0"), Ic = Module._emscripten_bind_BroadPhaseCastResult_set_mFraction_1 = e("_emscripten_bind_BroadPhaseCastResult_set_mFraction_1"), Jc = Module._emscripten_bind_BroadPhaseCastResult___destroy___0 = e("_emscripten_bind_BroadPhaseCastResult___destroy___0"), Kc = Module._emscripten_bind_ConvexShapeSettings_GetRefCount_0 = e("_emscripten_bind_ConvexShapeSettings_GetRefCount_0"), Lc = Module._emscripten_bind_ConvexShapeSettings_AddRef_0 = e("_emscripten_bind_ConvexShapeSettings_AddRef_0"), Mc = Module._emscripten_bind_Con