jolt-physics
Version:
A WebAssembly port of JoltPhysics, a rigid body physics and collision detection library, suitable for games and VR applications
778 lines (776 loc) • 11.1 MB
JavaScript
// 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 targetting 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 moduleRtn;
(function() {
function a(d) {
d = d.split("-")[0];
for (d = d.split(".").slice(0, 3); 3 > d.length;) {
d.push("00");
}
d = d.map(l => l.padStart(2, "0"));
return d.join("");
}
var c = "undefined" !== typeof process && process.versions?.node ? a(process.versions.node) : 2147483647;
if (160000 > c) {
throw Error(`This emscripten-generated code requires node v${"16.0.0"} (detected v${[c / 10000 | 0, (c / 100 | 0) % 100, c % 100].join(".")})`);
}
if (c = "undefined" !== typeof navigator && navigator.userAgent) {
var h = c.includes("Safari/") && !c.includes("Chrome/") && c.match(/Version\/(\d+\.?\d*\.?\d*)/) ? a(c.match(/Version\/(\d+\.?\d*\.?\d*)/)[1]) : 2147483647;
if (150000 > h) {
throw Error(`This emscripten-generated code requires Safari v${"15.0.0"} (detected v${h})`);
}
h = c.match(/Firefox\/(\d+(?:\.\d+)?)/) ? parseFloat(c.match(/Firefox\/(\d+(?:\.\d+)?)/)[1]) : 2147483647;
if (79 > h) {
throw Error(`This emscripten-generated code requires Firefox v79 (detected v${h})`);
}
c = c.match(/Chrome\/(\d+(?:\.\d+)?)/) ? parseFloat(c.match(/Chrome\/(\d+(?:\.\d+)?)/)[1]) : 2147483647;
if (85 > c) {
throw Error(`This emscripten-generated code requires Chrome v85 (detected v${c})`);
}
}
})();
var b = moduleArg, aa = !!globalThis.window, ba = !!globalThis.WorkerGlobalScope, ca = globalThis.process?.versions?.node && "renderer" != globalThis.process?.type, da = !aa && !ca && !ba;
if (ca) {
const {createRequire:a} = await import("module");
var require = a(import.meta.url);
}
var ea = "./this.program", fa = import.meta.url;
if (ca) {
if (!globalThis.process?.versions?.node || "renderer" == globalThis.process?.type) {
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?)");
}
var fs = require("fs");
fa.startsWith("file:") && require("path").dirname(require("url").fileURLToPath(fa));
1 < process.argv.length && (ea = process.argv[1].replace(/\\/g, "/"));
process.argv.slice(2);
} else if (!da) {
if (aa || ba) {
try {
new URL(".", fa);
} 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 ha = console.log.bind(console), ia = console.error.bind(console);
e(!da, "shell environment detected but not enabled at build time. Add `shell` to `-sENVIRONMENT` to enable.");
globalThis.WebAssembly || ia("no native wasm support detected");
var ja = !1;
function e(a, c) {
a || ka("Assertion failed" + (c ? ": " + c : ""));
}
var aaa = a => a.startsWith("file://");
function baa() {
var a = la();
e(0 == (a & 3));
0 == a && (a += 4);
ma[a >> 2] = 34821223;
ma[a + 4 >> 2] = 2310721022;
ma[0] = 1668509029;
}
function na() {
if (!ja) {
var a = la();
0 == a && (a += 4);
var c = ma[a >> 2], h = ma[a + 4 >> 2];
34821223 == c && 2310721022 == h || ka(`Stack overflow! Stack cookie has been overwritten at ${oa(a)}, expected hex dwords 0x89BACDFE and 0x2135467, but received ${oa(h)} ${oa(c)}`);
1668509029 != ma[0] && ka("Runtime error: The application has corrupted its heap memory area (address zero)!");
}
}
var qa = new Int16Array(1), ra = new Int8Array(qa.buffer);
qa[0] = 25459;
115 === ra[0] && 99 === ra[1] || ka("Runtime error: expected the system to be little-endian! (Run with -sSUPPORT_BIG_ENDIAN to bypass)");
function sa(a) {
Object.getOwnPropertyDescriptor(b, a) || Object.defineProperty(b, a, {configurable:!0, set() {
ka(`Attempt to set \`Module.${a}\` after it has already been processed. This can happen, for example, when code is injected via '--post-js' rather than '--pre-js'`);
}});
}
function f(a) {
return () => e(!1, `call to '${a}' via reference taken before Wasm module initialization`);
}
function ta(a) {
Object.getOwnPropertyDescriptor(b, a) || Object.defineProperty(b, a, {configurable:!0, get() {
var c = `'${a}' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the Emscripten FAQ)`;
"FS_createPath" !== a && "FS_createDataFile" !== a && "FS_createPreloadedFile" !== a && "FS_preloadFile" !== a && "FS_unlink" !== a && "addRunDependency" !== a && "FS_createLazyFile" !== a && "FS_createDevice" !== a && "removeRunDependency" !== a || (c += ". Alternatively, forcing filesystem support (-sFORCE_FILESYSTEM) can export this for you");
ka(c);
}});
}
function caa(a) {
for (var c = 0, h = a.length, d = new Uint8Array(h), l; c < h; ++c) {
l = a.charCodeAt(c), d[c] = ~l >> 8 & l;
}
return d;
}
var ua, va, wa, xa, ya, ma, za, Aa = !1;
e(globalThis.Int32Array && globalThis.Float64Array && Int32Array.prototype.subarray && Int32Array.prototype.set, "JS engine does not provide full typed array support");
function ka(a) {
b.onAbort?.(a);
a = "Aborted(" + a + ")";
ia(a);
ja = !0;
a = new WebAssembly.RuntimeError(a);
va?.(a);
throw a;
}
function Ba() {
ka("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 g(a, c) {
return (...h) => {
e(Aa, `native function \`${a}\` called before runtime initialization`);
var d = Ca[a];
e(d, `exported native function \`${a}\` not found`);
e(h.length <= c, `native function \`${a}\` called with ${h.length} args but expects ${c}`);
return d(...h);
};
}
var Da;
async function daa(a) {
return a;
}
async function eaa(a) {
var c = Da;
try {
var h = await daa(c);
return await WebAssembly.instantiate(h, a);
} catch (d) {
ia(`failed to asynchronously prepare wasm: ${d}`), aaa(c) && ia(`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`), ka(d);
}
}
async function faa(a) {
return eaa(a);
}
for (var Ea, Fa, Ga = a => {
for (; 0 < a.length;) {
a.shift()(b);
}
}, Ha = [], Ia = [], gaa = () => {
var a = b.preRun.shift();
Ia.push(a);
}, oa = a => {
e("number" === typeof a, `ptrToString expects a number, got ${typeof a}`);
return "0x" + (a >>> 0).toString(16).padStart(8, "0");
}, Ja = a => {
Ja.jf || (Ja.jf = {});
Ja.jf[a] || (Ja.jf[a] = 1, ca && (a = "warning: " + a), ia(a));
}, Ka = (a, c, h, d) => {
e("string" === typeof a, `stringToUTF8Array expects a string (got ${typeof a})`);
if (!(0 < d)) {
return 0;
}
var l = h;
d = h + d - 1;
for (var n = 0; n < a.length; ++n) {
var w = a.codePointAt(n);
if (127 >= w) {
if (h >= d) {
break;
}
c[h++] = w;
} else if (2047 >= w) {
if (h + 1 >= d) {
break;
}
c[h++] = 192 | w >> 6;
c[h++] = 128 | w & 63;
} else if (65535 >= w) {
if (h + 2 >= d) {
break;
}
c[h++] = 224 | w >> 12;
c[h++] = 128 | w >> 6 & 63;
c[h++] = 128 | w & 63;
} else {
if (h + 3 >= d) {
break;
}
1114111 < w && Ja("Invalid Unicode code point " + oa(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[h++] = 240 | w >> 18;
c[h++] = 128 | w >> 12 & 63;
c[h++] = 128 | w >> 6 & 63;
c[h++] = 128 | w & 63;
n++;
}
}
c[h] = 0;
return h - l;
}, La = (a, c, h) => {
e("number" == typeof h, "stringToUTF8(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!");
return Ka(a, xa, c, h);
}, Ma = a => {
for (var c = 0, h = 0; h < a.length; ++h) {
var d = a.charCodeAt(h);
127 >= d ? c++ : 2047 >= d ? c += 2 : 55296 <= d && 57343 >= d ? (c += 4, ++h) : c += 3;
}
return c;
}, Na = [], Pa = (a, c, h) => {
e(Array.isArray(Na));
e(0 == h % 16);
Na.length = 0;
for (var d; d = xa[c++];) {
var l = String.fromCharCode(d), n = ["d", "f", "i", "p"];
e(n.includes(l), `Invalid character ${d}("${l}") in readEmAsmArgs! Use only [${n}], and do not specify "v" for void return argument.`);
l = 105 != d;
l &= 112 != d;
h += l && h % 8 ? 4 : 0;
Na.push(112 == d ? ma[h >> 2] : 105 == d ? ya[h >> 2] : za[h >> 3]);
h += l ? 8 : 4;
}
e(Oa.hasOwnProperty(a), `No EM_ASM constant found at address ${a}. The loaded WebAssembly file is likely out of sync with the generated JavaScript.`);
return Oa[a](...Na);
}, Qa = {}, Sa = () => {
if (!Ra) {
var a = {USER:"web_user", LOGNAME:"web_user", PATH:"/", PWD:"/", HOME:"/home/web_user", LANG:(globalThis.navigator?.language ?? "C").replace("-", "_") + ".UTF-8", _:ea || "./this.program"}, c;
for (c in Qa) {
void 0 === Qa[c] ? delete a[c] : a[c] = Qa[c];
}
var h = [];
for (c in a) {
h.push(`${c}=${a[c]}`);
}
Ra = h;
}
return Ra;
}, Ra, Ta = globalThis.TextDecoder && new TextDecoder(), Ua = (a, c = 0) => {
var h = c;
for (var d = h + void 0; a[h] && !(h >= d);) {
++h;
}
if (16 < h - c && a.buffer && Ta) {
return Ta.decode(a.subarray(c, h));
}
for (d = ""; c < h;) {
var l = a[c++];
if (l & 128) {
var n = a[c++] & 63;
if (192 == (l & 224)) {
d += String.fromCharCode((l & 31) << 6 | n);
} else {
var w = a[c++] & 63;
224 == (l & 240) ? l = (l & 15) << 12 | n << 6 | w : (240 != (l & 248) && Ja("Invalid UTF-8 leading byte " + oa(l) + " encountered when deserializing a UTF-8 string in wasm memory to a JS string!"), l = (l & 7) << 18 | n << 12 | w << 6 | a[c++] & 63);
65536 > l ? d += String.fromCharCode(l) : (l -= 65536, d += String.fromCharCode(55296 | l >> 10, 56320 | l & 1023));
}
} else {
d += String.fromCharCode(l);
}
}
return d;
}, haa = [null, [], []], Va = [], Wa = new Uint8Array(123), Xa = 25; 0 <= Xa; --Xa) {
Wa[48 + Xa] = 52 + Xa, Wa[65 + Xa] = Xa, Wa[97 + Xa] = 26 + Xa;
}
Wa[43] = 62;
Wa[47] = 63;
b.print && (ha = b.print);
b.printErr && (ia = b.printErr);
b.FS_createDataFile = function() {
Ba();
};
b.FS_createPreloadedFile = function() {
Ba();
};
Object.getOwnPropertyDescriptor(b, "fetchSettings") && ka("`Module.fetchSettings` was supplied but `fetchSettings` not included in INCOMING_MODULE_JS_API");
b.thisProgram && (ea = b.thisProgram);
e("undefined" == typeof b.memoryInitializerPrefixURL, "Module.memoryInitializerPrefixURL option was removed, use Module.locateFile instead");
e("undefined" == typeof b.pthreadMainPrefixURL, "Module.pthreadMainPrefixURL option was removed, use Module.locateFile instead");
e("undefined" == typeof b.cdInitializerPrefixURL, "Module.cdInitializerPrefixURL option was removed, use Module.locateFile instead");
e("undefined" == typeof b.filePackagePrefixURL, "Module.filePackagePrefixURL option was removed, use Module.locateFile instead");
e("undefined" == typeof b.read, "Module.read option was removed");
e("undefined" == typeof b.readAsync, "Module.readAsync option was removed (modify readAsync in JS)");
e("undefined" == typeof b.readBinary, "Module.readBinary option was removed (modify readBinary in JS)");
e("undefined" == typeof b.setWindowTitle, "Module.setWindowTitle option was removed (modify emscripten_set_window_title in JS)");
e("undefined" == typeof b.TOTAL_MEMORY, "Module.TOTAL_MEMORY has been renamed Module.INITIAL_MEMORY");
e("undefined" == typeof b.ENVIRONMENT, "Module.ENVIRONMENT has been deprecated. To force the environment, use the ENVIRONMENT compile-time option (for example, -sENVIRONMENT=web or -sENVIRONMENT=node)");
e("undefined" == typeof b.STACK_SIZE, "STACK_SIZE can no longer be set at runtime. Use -sSTACK_SIZE at link time");
e("undefined" == typeof b.wasmMemory, "Use of `wasmMemory` detected. Use -sIMPORTED_MEMORY to define wasmMemory externally");
e("undefined" == typeof b.INITIAL_MEMORY, "Detected runtime INITIAL_MEMORY setting. Use -sIMPORTED_MEMORY to define wasmMemory dynamically");
if (b.preInit) {
for ("function" == typeof b.preInit && (b.preInit = [b.preInit]); 0 < b.preInit.length;) {
b.preInit.shift()();
}
}
sa("preInit");
"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 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 webglGetUniformLocation webglPrepareUniformLocationsBeforeFirstUse webglGetLeftBracePos emscriptenWebGLGetVertexAttrib __glGetActiveAttribOrUniform writeGLArray registerWebGlEventCallback runAndAbortIfError ALLOC_NORMAL ALLOC_STACK allocate writeStringToMemory writeAsciiToMemory allocateUTF8 allocateUTF8OnStack demangle stackTrace getNativeTypeSize".split(" ").forEach(function(a) {
ta(a);
});
"run out err callMain abort wasmExports HEAP64 HEAPU64 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 UTF8ToString 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 base64Decode SYSCALLS tempFixedLengthArray miniTempWebGLFloatBuffers miniTempWebGLIntBuffers GL AL GLUT EGL GLEW IDBStore SDL SDL_gfx print printErr jstoi_s".split(" ").forEach(ta);
var Oa = {1159578:a => {
a = b.getCache(b.PathConstraintPathJS)[a];
if (!a.hasOwnProperty("GetPathMaxFraction")) {
throw "a JSImplementation must implement all functions, you forgot PathConstraintPathJS::GetPathMaxFraction.";
}
return a.GetPathMaxFraction();
}, 1159845:(a, c, h) => {
a = b.getCache(b.PathConstraintPathJS)[a];
if (!a.hasOwnProperty("GetClosestPoint")) {
throw "a JSImplementation must implement all functions, you forgot PathConstraintPathJS::GetClosestPoint.";
}
return a.GetClosestPoint(c, h);
}, 1160108:(a, c, h, d, l, n) => {
a = b.getCache(b.PathConstraintPathJS)[a];
if (!a.hasOwnProperty("GetPointOnPath")) {
throw "a JSImplementation must implement all functions, you forgot PathConstraintPathJS::GetPointOnPath.";
}
a.GetPointOnPath(c, h, d, l, n);
}, 1160370:(a, c, h) => {
a = b.getCache(b.GroupFilterJS)[a];
if (!a.hasOwnProperty("CanCollide")) {
throw "a JSImplementation must implement all functions, you forgot GroupFilterJS::CanCollide.";
}
return a.CanCollide(c, h);
}, 1160604:(a, c) => {
a = b.getCache(b.StateRecorderFilterJS)[a];
if (!a.hasOwnProperty("ShouldSaveBody")) {
throw "a JSImplementation must implement all functions, you forgot StateRecorderFilterJS::ShouldSaveBody.";
}
return a.ShouldSaveBody(c);
}, 1160863:(a, c) => {
a = b.getCache(b.StateRecorderFilterJS)[a];
if (!a.hasOwnProperty("ShouldSaveConstraint")) {
throw "a JSImplementation must implement all functions, you forgot StateRecorderFilterJS::ShouldSaveConstraint.";
}
return a.ShouldSaveConstraint(c);
}, 1161140:(a, c, h) => {
a = b.getCache(b.StateRecorderFilterJS)[a];
if (!a.hasOwnProperty("ShouldSaveContact")) {
throw "a JSImplementation must implement all functions, you forgot StateRecorderFilterJS::ShouldSaveContact.";
}
return a.ShouldSaveContact(c, h);
}, 1161411:(a, c, h) => {
a = b.getCache(b.StateRecorderFilterJS)[a];
if (!a.hasOwnProperty("ShouldRestoreContact")) {
throw "a JSImplementation must implement all functions, you forgot StateRecorderFilterJS::ShouldRestoreContact.";
}
return a.ShouldRestoreContact(c, h);
}, 1161691:a => {
a = b.getCache(b.StateRecorderJS)[a];
if (!a.hasOwnProperty("IsEOF")) {
throw "a JSImplementation must implement all functions, you forgot StateRecorderJS::IsEOF.";
}
return a.IsEOF();
}, 1161909:a => {
a = b.getCache(b.StateRecorderJS)[a];
if (!a.hasOwnProperty("IsFailed")) {
throw "a JSImplementation must implement all functions, you forgot StateRecorderJS::IsFailed.";
}
return a.IsFailed();
}, 1162136:(a, c, h) => {
a = b.getCache(b.StateRecorderJS)[a];
if (!a.hasOwnProperty("WriteBytes")) {
throw "a JSImplementation must implement all functions, you forgot StateRecorderJS::WriteBytes.";
}
a.WriteBytes(c, h);
}, 1162367:(a, c, h) => {
a = b.getCache(b.StateRecorderJS)[a];
if (!a.hasOwnProperty("ReadBytes")) {
throw "a JSImplementation must implement all functions, you forgot StateRecorderJS::ReadBytes.";
}
a.ReadBytes(c, h);
}, 1162595:(a, c, h, d, l) => {
a = b.getCache(b.ContactListenerJS)[a];
if (!a.hasOwnProperty("OnContactAdded")) {
throw "a JSImplementation must implement all functions, you forgot ContactListenerJS::OnContactAdded.";
}
a.OnContactAdded(c, h, d, l);
}, 1162848:(a, c, h, d, l) => {
a = b.getCache(b.ContactListenerJS)[a];
if (!a.hasOwnProperty("OnContactPersisted")) {
throw "a JSImplementation must implement all functions, you forgot ContactListenerJS::OnContactPersisted.";
}
a.OnContactPersisted(c, h, d, l);
}, 1163113:(a, c) => {
a = b.getCache(b.ContactListenerJS)[a];
if (!a.hasOwnProperty("OnContactRemoved")) {
throw "a JSImplementation must implement all functions, you forgot ContactListenerJS::OnContactRemoved.";
}
a.OnContactRemoved(c);
}, 1163363:(a, c, h, d, l) => {
a = b.getCache(b.ContactListenerJS)[a];
if (!a.hasOwnProperty("OnContactValidate")) {
throw "a JSImplementation must implement all functions, you forgot ContactListenerJS::OnContactValidate.";
}
return a.OnContactValidate(c, h, d, l);
}, 1163632:(a, c, h) => {
a = b.getCache(b.SoftBodyContactListenerJS)[a];
if (!a.hasOwnProperty("OnSoftBodyContactAdded")) {
throw "a JSImplementation must implement all functions, you forgot SoftBodyContactListenerJS::OnSoftBodyContactAdded.";
}
a.OnSoftBodyContactAdded(c, h);
}, 1163919:(a, c, h, d) => {
a = b.getCache(b.SoftBodyContactListenerJS)[a];
if (!a.hasOwnProperty("OnSoftBodyContactValidate")) {
throw "a JSImplementation must implement all functions, you forgot SoftBodyContactListenerJS::OnSoftBodyContactValidate.";
}
return a.OnSoftBodyContactValidate(c, h, d);
}, 1164225:a => {
a = b.getCache(b.RayCastBodyCollectorJS)[a];
if (!a.hasOwnProperty("Reset")) {
throw "a JSImplementation must implement all functions, you forgot RayCastBodyCollectorJS::Reset.";
}
a.Reset();
}, 1164450:(a, c) => {
a = b.getCache(b.RayCastBodyCollectorJS)[a];
if (!a.hasOwnProperty("AddHit")) {
throw "a JSImplementation must implement all functions, you forgot RayCastBodyCollectorJS::AddHit.";
}
a.AddHit(c);
}, 1164680:a => {
a = b.getCache(b.CollideShapeBodyCollectorJS)[a];
if (!a.hasOwnProperty("Reset")) {
throw "a JSImplementation must implement all functions, you forgot CollideShapeBodyCollectorJS::Reset.";
}
a.Reset();
}, 1164915:(a, c) => {
a = b.getCache(b.CollideShapeBodyCollectorJS)[a];
if (!a.hasOwnProperty("AddHit")) {
throw "a JSImplementation must implement all functions, you forgot CollideShapeBodyCollectorJS::AddHit.";
}
a.AddHit(c);
}, 1165155:a => {
a = b.getCache(b.CastShapeBodyCollectorJS)[a];
if (!a.hasOwnProperty("Reset")) {
throw "a JSImplementation must implement all functions, you forgot CastShapeBodyCollectorJS::Reset.";
}
a.Reset();
}, 1165384:(a, c) => {
a = b.getCache(b.CastShapeBodyCollectorJS)[a];
if (!a.hasOwnProperty("AddHit")) {
throw "a JSImplementation must implement all functions, you forgot CastShapeBodyCollectorJS::AddHit.";
}
a.AddHit(c);
}, 1165618:a => {
a = b.getCache(b.CastRayCollectorJS)[a];
if (!a.hasOwnProperty("Reset")) {
throw "a JSImplementation must implement all functions, you forgot CastRayCollectorJS::Reset.";
}
a.Reset();
}, 1165835:(a, c) => {
a = b.getCache(b.CastRayCollectorJS)[a];
if (!a.hasOwnProperty("OnBody")) {
throw "a JSImplementation must implement all functions, you forgot CastRayCollectorJS::OnBody.";
}
a.OnBody(c);
}, 1166057:(a, c) => {
a = b.getCache(b.CastRayCollectorJS)[a];
if (!a.hasOwnProperty("AddHit")) {
throw "a JSImplementation must implement all functions, you forgot CastRayCollectorJS::AddHit.";
}
a.AddHit(c);
}, 1166279:a => {
a = b.getCache(b.CollidePointCollectorJS)[a];
if (!a.hasOwnProperty("Reset")) {
throw "a JSImplementation must implement all functions, you forgot CollidePointCollectorJS::Reset.";
}
a.Reset();
}, 1166506:(a, c) => {
a = b.getCache(b.CollidePointCollectorJS)[a];
if (!a.hasOwnProperty("OnBody")) {
throw "a JSImplementation must implement all functions, you forgot CollidePointCollectorJS::OnBody.";
}
a.OnBody(c);
}, 1166738:(a, c) => {
a = b.getCache(b.CollidePointCollectorJS)[a];
if (!a.hasOwnProperty("AddHit")) {
throw "a JSImplementation must implement all functions, you forgot CollidePointCollectorJS::AddHit.";
}
a.AddHit(c);
}, 1166970:a => {
a = b.getCache(b.CollideShapeCollectorJS)[a];
if (!a.hasOwnProperty("Reset")) {
throw "a JSImplementation must implement all functions, you forgot CollideShapeCollectorJS::Reset.";
}
a.Reset();
}, 1167197:(a, c) => {
a = b.getCache(b.CollideShapeCollectorJS)[a];
if (!a.hasOwnProperty("OnBody")) {
throw "a JSImplementation must implement all functions, you forgot CollideShapeCollectorJS::OnBody.";
}
a.OnBody(c);
}, 1167429:(a, c) => {
a = b.getCache(b.CollideShapeCollectorJS)[a];
if (!a.hasOwnProperty("AddHit")) {
throw "a JSImplementation must implement all functions, you forgot CollideShapeCollectorJS::AddHit.";
}
a.AddHit(c);
}, 1167661:a => {
a = b.getCache(b.CastShapeCollectorJS)[a];
if (!a.hasOwnProperty("Reset")) {
throw "a JSImplementation must implement all functions, you forgot CastShapeCollectorJS::Reset.";
}
a.Reset();
}, 1167882:(a, c) => {
a = b.getCache(b.CastShapeCollectorJS)[a];
if (!a.hasOwnProperty("OnBody")) {
throw "a JSImplementation must implement all functions, you forgot CastShapeCollectorJS::OnBody.";
}
a.OnBody(c);
}, 1168108:(a, c) => {
a = b.getCache(b.CastShapeCollectorJS)[a];
if (!a.hasOwnProperty("AddHit")) {
throw "a JSImplementation must implement all functions, you forgot CastShapeCollectorJS::AddHit.";
}
a.AddHit(c);
}, 1168334:a => {
a = b.getCache(b.TransformedShapeCollectorJS)[a];
if (!a.hasOwnProperty("Reset")) {
throw "a JSImplementation must implement all functions, you forgot TransformedShapeCollectorJS::Reset.";
}
a.Reset();
}, 1168569:(a, c) => {
a = b.getCache(b.TransformedShapeCollectorJS)[a];
if (!a.hasOwnProperty("OnBody")) {
throw "a JSImplementation must implement all functions, you forgot TransformedShapeCollectorJS::OnBody.";
}
a.OnBody(c);
}, 1168809:(a, c) => {
a = b.getCache(b.TransformedShapeCollectorJS)[a];
if (!a.hasOwnProperty("AddHit")) {
throw "a JSImplementation must implement all functions, you forgot TransformedShapeCollectorJS::AddHit.";
}
a.AddHit(c);
}, 1169049:(a, c) => {
a = b.getCache(b.PhysicsStepListenerJS)[a];
if (!a.hasOwnProperty("OnStep")) {
throw "a JSImplementation must implement all functions, you forgot PhysicsStepListenerJS::OnStep.";
}
a.OnStep(c);
}, 1169277:(a, c, h) => {
a = b.getCache(b.BodyActivationListenerJS)[a];
if (!a.hasOwnProperty("OnBodyActivated")) {
throw "a JSImplementation must implement all functions, you forgot BodyActivationListenerJS::OnBodyActivated.";
}
a.OnBodyActivated(c, h);
}, 1169541:(a, c, h) => {
a = b.getCache(b.BodyActivationListenerJS)[a];
if (!a.hasOwnProperty("OnBodyDeactivated")) {
throw "a JSImplementation must implement all functions, you forgot BodyActivationListenerJS::OnBodyDeactivated.";
}
a.OnBodyDeactivated(c, h);
}, 1169811:(a, c, h, d, l) => {
a = b.getCache(b.CharacterContactListenerJS)[a];
if (!a.hasOwnProperty("OnAdjustBodyVelocity")) {
throw "a JSImplementation must implement all functions, you forgot CharacterContactListenerJS::OnAdjustBodyVelocity.";
}
a.OnAdjustBodyVelocity(c, h, d, l);
}, 1170100:(a, c, h, d) => {
a = b.getCache(b.CharacterContactListenerJS)[a];
if (!a.hasOwnProperty("OnContactValidate")) {
throw "a JSImplementation must implement all functions, you forgot CharacterContactListenerJS::OnContactValidate.";
}
return a.OnContactValidate(c, h, d);
}, 1170384:(a, c, h, d) => {
a = b.getCache(b.CharacterContactListenerJS)[a];
if (!a.hasOwnProperty("OnCharacterContactValidate")) {
throw "a JSImplementation must implement all functions, you forgot CharacterContactListenerJS::OnCharacterContactValidate.";
}
return a.OnCharacterContactValidate(c, h, d);
}, 1170695:(a, c, h, d) => {
a = b.getCache(b.CharacterContactListenerJS)[a];
if (!a.hasOwnProperty("OnContactRemoved")) {
throw "a JSImplementation must implement all functions, you forgot CharacterContactListenerJS::OnContactRemoved.";
}
a.OnContactRemoved(c, h, d);
}, 1170969:(a, c, h, d) => {
a = b.getCache(b.CharacterContactListenerJS)[a];
if (!a.hasOwnProperty("OnCharacterContactRemoved")) {
throw "a JSImplementation must implement all functions, you forgot CharacterContactListenerJS::OnCharacterContactRemoved.";
}
a.OnCharacterContactRemoved(c, h, d);
}, 1171270:(a, c, h, d, l, n, w) => {
a = b.getCache(b.CharacterContactListenerJS)[a];
if (!a.hasOwnProperty("OnContactAdded")) {
throw "a JSImplementation must implement all functions, you forgot CharacterContactListenerJS::OnContactAdded.";
}
a.OnContactAdded(c, h, d, l, n, w);
}, 1171547:(a, c, h, d, l, n, w) => {
a = b.getCache(b.CharacterContactListenerJS)[a];
if (!a.hasOwnProperty("OnContactPersisted")) {
throw "a JSImplementation must implement all functions, you forgot CharacterContactListenerJS::OnContactPersisted.";
}
a.OnContactPersisted(c, h, d, l, n, w);
}, 1171836:(a, c, h, d, l, n, w) => {
a = b.getCache(b.CharacterContactListenerJS)[a];
if (!a.hasOwnProperty("OnCharacterContactAdded")) {
throw "a JSImplementation must implement all functions, you forgot CharacterContactListenerJS::OnCharacterContactAdded.";
}
a.OnCharacterContactAdded(c, h, d, l, n, w);
}, 1172140:(a, c, h, d, l, n, w) => {
a = b.getCache(b.CharacterContactListenerJS)[a];
if (!a.hasOwnProperty("OnCharacterContactPersisted")) {
throw "a JSImplementation must implement all functions, you forgot CharacterContactListenerJS::OnCharacterContactPersisted.";
}
a.OnCharacterContactPersisted(c, h, d, l, n, w);
}, 1172456:(a, c, h, d, l, n, w, O, pa, Zb) => {
a = b.getCache(b.CharacterContactListenerJS)[a];
if (!a.hasOwnProperty("OnContactSolve")) {
throw "a JSImplementation must implement all functions, you forgot CharacterContactListenerJS::OnContactSolve.";
}
a.OnContactSolve(c, h, d, l, n, w, O, pa, Zb);
}, 1172742:(a, c, h, d, l, n, w, O, pa, Zb) => {
a = b.getCache(b.CharacterContactListenerJS)[a];
if (!a.hasOwnProperty("OnCharacterContactSolve")) {
throw "a JSImplementation must implement all functions, you forgot CharacterContactListenerJS::OnCharacterContactSolve.";
}
a.OnCharacterContactSolve(c, h, d, l, n, w, O, pa, Zb);
}, 1173055:(a, c, h) => {
a = b.getCache(b.ObjectVsBroadPhaseLayerFilterJS)[a];
if (!a.hasOwnProperty("ShouldCollide")) {
throw "a JSImplementation must implement all functions, you forgot ObjectVsBroadPhaseLayerFilterJS::ShouldCollide.";
}
return a.ShouldCollide(c, h);
}, 1173334:(a, c) => {
a = b.getCache(b.ObjectLayerFilterJS)[a];
if (!a.hasOwnProperty("ShouldCollide")) {
throw "a JSImplementation must implement all functions, you forgot ObjectLayerFilterJS::ShouldCollide.";
}
return a.ShouldCollide(c);
}, 1173586:(a, c, h) => {
a = b.getCache(b.ObjectLayerPairFilterJS)[a];
if (!a.hasOwnProperty("ShouldCollide")) {
throw "a JSImplementation must implement all functions, you forgot ObjectLayerPairFilterJS::ShouldCollide.";
}
return a.ShouldCollide(c, h);
}, 1173849:(a, c) => {
a = b.getCache(b.BodyFilterJS)[a];
if (!a.hasOwnProperty("ShouldCollide")) {
throw "a JSImplementation must implement all functions, you forgot BodyFilterJS::ShouldCollide.";
}
return a.ShouldCollide(c);
}, 1174087:(a, c) => {
a = b.getCache(b.BodyFilterJS)[a];
if (!a.hasOwnProperty("ShouldCollideLocked")) {
throw "a JSImplementation must implement all functions, you forgot BodyFilterJS::ShouldCollideLocked.";
}
return a.ShouldCollideLocked(c);
}, 1174343:(a, c, h) => {
a = b.getCache(b.ShapeFilterJS)[a];
if (!a.hasOwnProperty("ShouldCollide")) {
throw "a JSImplementation must implement all functions, you forgot ShapeFilterJS::ShouldCollide.";
}
return a.ShouldCollide(c, h);
}, 1174586:(a, c, h, d, l) => {
a = b.getCache(b.ShapeFilterJS2)[a];
if (!a.hasOwnProperty("ShouldCollide")) {
throw "a JSImplementation must implement all functions, you forgot ShapeFilterJS2::ShouldCollide.";
}
return a.ShouldCollide(c, h, d, l);
}, 1174837:(a, c, h, d, l, n, w) => {
a = b.getCache(b.SimShapeFilterJS)[a];
if (!a.hasOwnProperty("ShouldCollide")) {
throw "a JSImplementation must implement all functions, you forgot SimShapeFilterJS::ShouldCollide.";
}
return a.ShouldCollide(c, h, d, l, n, w);
}, 1175098:(a, c, h, d, l, n) => {
a = b.getCache(b.VehicleConstraintCallbacksJS)[a];
if (!a.hasOwnProperty("GetCombinedFriction")) {
throw "a JSImplementation must implement all functions, you forgot VehicleConstraintCallbacksJS::GetCombinedFriction.";
}
return a.GetCombinedFriction(c, h, d, l, n);
}, 1175398:(a, c, h) => {
a = b.getCache(b.VehicleConstraintCallbacksJS)[a];
if (!a.hasOwnProperty("OnPreStepCallback")) {
throw "a JSImplementation must implement all functions, you forgot VehicleConstraintCallbacksJS::OnPreStepCallback.";
}
a.OnPreStepCallback(c, h);
}, 1175676:(a, c, h) => {
a = b.getCache(b.VehicleConstraintCallbacksJS)[a];
if (!a.hasOwnProperty("OnPostCollideCallback")) {
throw "a JSImplementation must implement all functions, you forgot VehicleConstraintCallbacksJS::OnPostCollideCallback.";
}
a.OnPostCollideCallback(c, h);
}, 1175966:(a, c, h) => {
a = b.getCache(b.VehicleConstraintCallbacksJS)[a];
if (!a.hasOwnProperty("OnPostStepCallback")) {
throw "a JSImplementation must implement all functions, you forgot VehicleConstraintCallbacksJS::OnPostStepCallback.";
}
a.OnPostStepCallback(c, h);
}, 1176247:(a, c, h, d, l, n, w, O, pa) => {
a = b.getCache(b.WheeledVehicleControllerCallbacksJS)[a];
if (!a.hasOwnProperty("OnTireMaxImpulseCallback")) {
throw "a JSImplementation must implement all functions, you forgot WheeledVehicleControllerCallbacksJS::OnTireMaxImpulseCallback.";
}
a.OnTireMaxImpulseCallback(c, h, d, l, n, w, O, pa);
}, 1176578:a => {
a = b.getCache(b.BroadPhaseLayerInterfaceJS)[a];
if (!a.hasOwnProperty("GetNumBroadPhaseLayers")) {
throw "a JSImplementation must implement all functions, you forgot BroadPhaseLayerInterfaceJS::GetNumBroadPhaseLayers.";
}
return a.GetNumBroadPhaseLayers();
}, 1176869:(a, c) => {
a = b.getCache(b.BroadPhaseLayerInterfaceJS)[a];
if (!a.hasOwnProperty("GetBPLayer")) {
throw "a JSImplementation must implement all functions, you forgot BroadPhaseLayerInterfaceJS::GetBPLayer.";
}
return a.GetBPLayer(c);
}, 1177126:() => wa.length, 1177146:(a, c, h, d) => {
a = b.getCache(b.DebugRendererJS)[a];
if (!a.hasOwnProperty("DrawLine")) {
throw "a JSImplementation must implement all functions, you forgot DebugRendererJS::DrawLine.";
}
a.DrawLine(c, h, d);
}, 1177374:(a, c, h, d, l, n) => {
a = b.getCache(b.DebugRendererJS)[a];
if (!a.hasOwnProperty("DrawTriangle")) {
throw "a JSImplementation must implement all functions, you forgot DebugRendererJS::DrawTriangle.";
}
a.DrawTriangle(c, h, d, l, n);
}, 1177620:(a, c, h, d, l, n) => {
a = b.getCache(b.DebugRendererJS)[a];
if (!a.hasOwnProperty("DrawText3D")) {
throw "a JSImplementation must implement all functions, you forgot DebugRendererJS::DrawText3D.";
}
a.DrawText3D(c, h, d, l, n);
}, 1177860:(a, c, h) => {
a = b.getCache(b.DebugRendererJS)[a];
if (!a.hasOwnProperty("CreateTriangleBatchID")) {
throw "a JSImplementation must implement all functions, you forgot DebugRendererJS::CreateTriangleBatchID.";
}
return a.CreateTriangleBatchID(c, h);
}, 1178131:(a, c, h, d, l) => {
a = b.getCache(b.DebugRendererJS)[a];
if (!a.hasOwnProperty("CreateTriangleBatchIDWithIndex")) {
throw "a JSImplementation must implement all functions, you forgot DebugRendererJS::CreateTriangleBatchIDWithIndex.";
}
return a.CreateTriangleBatchIDWithIndex(c, h, d, l);
}, 1178435:(a, c, h, d, l, n, w, O, pa) => {
a = b.getCache(b.DebugRendererJS)[a];
if (!a.hasOwnProperty("DrawGeometryWithID")) {
throw "a JSImplementation must implement all functions, you forgot DebugRendererJS::DrawGeometryWithID.";
}
a.DrawGeometryWithID(c, h, d, l, n, w, O, pa);
}};
b._webidl_free = f("_webidl_free");
b._webidl_malloc = f("_webidl_malloc");
var Ya = b._emscripten_bind_ShapeSettings_GetRefCount_0 = f("_emscripten_bind_ShapeSettings_GetRefCount_0"), Za = b._emscripten_bind_ShapeSettings_AddRef_0 = f("_emscripten_bind_ShapeSettings_AddRef_0"), $a = b._emscripten_bind_ShapeSettings_Release_0 = f("_emscripten_bind_ShapeSettings_Release_0"), ab = b._emscripten_bind_ShapeSettings_Create_0 = f("_emscripten_bind_ShapeSettings_Create_0"), bb = b._emscripten_bind_ShapeSettings_ClearCachedResult_0 = f("_emscripten_bind_ShapeSettings_ClearCachedResult_0"),
cb = b._emscripten_bind_ShapeSettings_get_mUserData_0 = f("_emscripten_bind_ShapeSettings_get_mUserData_0"), db = b._emscripten_bind_ShapeSettings_set_mUserData_1 = f("_emscripten_bind_ShapeSettings_set_mUserData_1"), eb = b._emscripten_bind_ShapeSettings___destroy___0 = f("_emscripten_bind_ShapeSettings___destroy___0"), fb = b._emscripten_bind_Shape_GetRefCount_0 = f("_emscripten_bind_Shape_GetRefCount_0"), gb = b._emscripten_bind_Shape_AddRef_0 = f("_emscripten_bind_Shape_AddRef_0"), hb = b._emscripten_bind_Shape_Release_0 =
f("_emscripten_bind_Shape_Release_0"), ib = b._emscripten_bind_Shape_GetType_0 = f("_emscripten_bind_Shape_GetType_0"), jb = b._emscripten_bind_Shape_GetSubType_0 = f("_emscripten_bind_Shape_GetSubType_0"), kb = b._emscripten_bind_Shape_MustBeStatic_0 = f("_emscripten_bind_Shape_MustBeStatic_0"), lb = b._emscripten_bind_Shape_GetLocalBounds_0 = f("_emscripten_bind_Shape_GetLocalBounds_0"), mb = b._emscripten_bind_Shape_GetWorldSpaceBounds_2 = f("_emscripten_bind_Shape_GetWorldSpaceBounds_2"), nb =
b._emscripten_bind_Shape_GetCenterOfMass_0 = f("_emscripten_bind_Shape_GetCenterOfMass_0"), ob = b._emscripten_bind_Shape_GetUserData_0 = f("_emscripten_bind_Shape_GetUserData_0"), pb = b._emscripten_bind_Shape_SetUserData_1 = f("_emscripten_bind_Shape_SetUserData_1"), qb = b._emscripten_bind_Shape_GetSubShapeIDBitsRecursive_0 = f("_emscripten_bind_Shape_GetSubShapeIDBitsRecursive_0"), rb = b._emscripten_bind_Shape_GetInnerRadius_0 = f("_emscripten_bind_Shape_GetInnerRadius_0"), sb = b._emscripten_bind_Shape_GetMassProperties_0 =
f("_emscripten_bind_Shape_GetMassProperties_0"), tb = b._emscripten_bind_Shape_GetLeafShape_2 = f("_emscripten_bind_Shape_GetLeafShape_2"), ub = b._emscripten_bind_Shape_GetMaterial_1 = f("_emscripten_bind_Shape_GetMaterial_1"), vb = b._emscripten_bind_Shape_GetSurfaceNormal_2 = f("_emscripten_bind_Shape_GetSurfaceNormal_2"), wb = b._emscripten_bind_Shape_GetSubShapeUserData_1 = f("_emscripten_bind_Shape_GetSubShapeUserData_1"), xb = b._emscripten_bind_Shape_GetSubShapeTransformedShape_5 = f("_emscripten_bind_Shape_GetSubShapeTransformedShape_5"),
yb = b._emscripten_bind_Shape_GetVolume_0 = f("_emscripten_bind_Shape_GetVolume_0"), zb = b._emscripten_bind_Shape_IsValidScale_1 = f("_emscripten_bind_Shape_IsValidScale_1"), Ab = b._emscripten_bind_Shape_MakeScaleValid_1 = f("_emscripten_bind_Shape_MakeScaleValid_1"), Bb = b._emscripten_bind_Shape_ScaleShape_1 = f("_emscripten_bind_Shape_ScaleShape_1"), Cb = b._emscripten_bind_Shape___destroy___0 = f("_emscripten_bind_Shape___destroy___0"), Db = b._emscripten_bind_ConstraintSettings_GetRefCount_0 =
f("_emscripten_bind_ConstraintSettings_GetRefCount_0"), Eb = b._emscripten_bind_ConstraintSettings_AddRef_0 = f("_emscripten_bind_ConstraintSettings_AddRef_0"), Fb = b._emscripten_bind_ConstraintSettings_Release_0 = f("_emscripten_bind_ConstraintSettings_Release_0"), Gb = b._emscripten_bind_ConstraintSettings_get_mEnabled_0 = f("_emscripten_bind_ConstraintSettings_get_mEnabled_0"), Hb = b._emscripten_bind_ConstraintSettings_set_mEnabled_1 = f("_emscripten_bind_ConstraintSettings_set_mEnabled_1"),
Ib = b._emscripten_bind_ConstraintSettings_get_mNumVelocityStepsOverride_0 = f("_emscripten_bind_ConstraintSettings_get_mNumVelocityStepsOverride_0"), Jb = b._emscripten_bind_ConstraintSettings_set_mNumVelocityStepsOverride_1 = f("_emscripten_bind_ConstraintSettings_set_mNumVelocityStepsOverride_1"), Kb = b._emscripten_bind_ConstraintSettings_get_mNumPositionStepsOverride_0 = f("_emscripten_bind_ConstraintSettings_get_mNumPositionStepsOverride_0"), Lb = b._emscripten_bind_ConstraintSettings_set_mNumPositionStepsOverride_1 =
f("_emscripten_bind_ConstraintSettings_set_mNumPositionStepsOverride_1"), Mb = b._emscripten_bind_ConstraintSettings___destroy___0 = f("_emscripten_bind_ConstraintSettings___destroy___0"), Nb = b._emscripten_bind_Constraint_GetRefCount_0 = f("_emscripten_bind_Constraint_GetRefCount_0"), Ob = b._emscripten_bind_Constraint_AddRef_0 = f("_emscripten_bind_Constraint_AddRef_0"), Pb = b._emscripten_bind_Constraint_Release_0 = f("_emscripten_bind_Constraint_Release_0"), Qb = b._emscripten_bind_Constraint_GetType_0 =
f("_emscripten_bind_Constraint_GetType_0"), Rb = b._emscripten_bind_Constraint_GetSubType_0 = f("_emscripten_bind_Constraint_GetSubType_0"), Sb = b._emscripten_bind_Constraint_GetConstraintPriority_0 = f("_emscripten_bind_Constraint_GetConstraintPriority_0"), Tb = b._emscripten_bind_Constraint_SetConstraintPriority_1 = f("_emscripten_bind_Constraint_SetConstraintPriority_1"), Ub = b._emscripten_bind_Constraint_SetNumVelocityStepsOverride_1 = f("_emscripten_bind_Constraint_SetNumVelocityStepsOverride_1"),
Vb = b._emscripten_bind_Constraint_GetNumVelocityStepsOverride_0 = f("_emscripten_bind_Constraint_GetNumVelocityStepsOverride_0"), Wb = b._emscripten_bind_Constraint_SetNumPositionStepsOverride_1 = f("_emscripten_bind_Constraint_SetNumPositionStepsOverride_1"), Xb = b._emscripten_bind_Constraint_GetNumPositionStepsOverride_0 = f("_emscripten_bind_Constraint_GetNumPositionStepsOverride_0"), Yb = b._emscripten_bind_Constraint_SetEnabled_1 = f("_emscripten_bind_Constraint_SetEnabled_1"), $b = b._emscripten_bind_Constraint_GetEnabled_0 =
f("_emscripten_bind_Constraint_GetEnabled_0"), ac = b._emscripten_bind_Constraint_IsActive_0 = f("_emscripten_bind_Constraint_IsActive_0"), bc = b._emscripten_bind_Constraint_GetUserData_0 = f("_emscripten_bind_Constraint_GetUserData_0"), cc = b._emscripten_bind_Constraint_SetUserData_1 = f("_emscripten_bind_Constraint_SetUserData_1"), dc = b._emscripten_bind_Constraint_ResetWarmStart_0 = f("_emscripten_bind_Constraint_ResetWarmStart_0"), ec = b._emscripten_bind_Constraint_SaveState_1 = f("_emscripten_bind_Constraint_SaveState_1"),
fc = b._emscripten_bind_Constraint_RestoreState_1 = f("_emscripten_bind_Constraint_RestoreState_1"), gc = b._emscripten_bind_Constraint___destroy___0 = f("_emscripten_bind_Constraint___destroy___0"), hc = b._emscripten_bind_PathConstraintPath_IsLooping_0 = f("_emscripten_bind_PathConstraintPath_IsLooping_0"), ic = b._emscripten_bind_PathConstraintPath_SetIsLooping_1 = f("_emscripten_bind_PathConstraintPath_SetIsLooping_1"), jc = b._emscripten_bind_PathConstraintPath_GetRefCount_0 = f("_emscripten_bind_PathConstraintPath_GetRefCount_0"),
kc = b._emscripten_bind_PathConstraintPath_AddRef_0 = f("_emscripten_bind_PathConstraintPath_AddRef_0"), lc = b._emscripten_bind_PathConstraintPath_Release_0 = f("_emscripten_bind_PathConstraintPath_Release_0"), mc = b._emscripten_bind_PathConstraintPath___destroy___0 = f("_emscripten_bind_PathConstraintPath___destroy___0"), nc = b._emscripten_bind_StateRecorder_SetValidating_1 = f("_emscripten_bind_StateRecorder_SetValidating_1"), oc = b._emscripten_bind_StateRecorder_IsValidating_0 = f("_emscripten_bind_StateRecorder_IsValidating_0"),
pc = b._emscripten_bind_StateRecorder_SetIsLastPart_1 = f("_emscripten_bind_StateRecorder_SetIsLastPart_1"), qc = b._emscripten_bind_StateRecorder_IsLastPart_0 = f("_emscripten_bind_StateRecorder_IsLastPart_0"), rc = b._emscripten_bind_StateRecorder___destroy___0 = f("_emscripten_bind_StateRecorder___destroy___0"), sc = b._emscripten_bind_ContactListener___destroy___0 = f("_emscripten_bind_ContactListener___destroy___0"), tc = b._emscripten_bind_SoftBodyContactListener___destroy___0 = f("_emscripten_bind_SoftBodyContactListener___destroy___0"),
uc = b._emscripten_bind_BodyActivationListener___destroy___0 = f("_emscripten_bind_BodyActivationListener___destroy___0"), vc = b._emscripten_bind_CharacterContactListener___destroy___0 = f("_emscripten_bind_CharacterContactListener___destroy___0"), wc = b._emscripten_bind_ObjectVsBroadPhaseLayerFilter_ObjectVsBroadPhaseLayerFilter_0 = f("_emscripten_bind_ObjectVsBroadPhaseLayerFilter_ObjectVsBroadPhaseLayerFilter_0"), xc = b._emscripten_bind_ObjectVsBroadPhaseLayerFilter___destroy___0 = f("_emscripten_bind_ObjectVsBroadPhaseLayerFilter___destroy___0"),
yc = b._emscripten_bind_VehicleControllerSettings___destroy___0 = f("_emscripten_bind_VehicleControllerSettings___destroy___0"), zc = b._emscripten_bind_VehicleController_GetConstraint_0 = f("_emscripten_bind_VehicleController_GetConstraint_0"), Ac = b._emscripten_bind_VehicleController___destroy___0 = f("_emscripten_bind_VehicleController___destroy___0"), Bc = b._emscripten_bind_BroadPhaseLayerInterface_GetNumBroadPhaseLayers_0 = f("_emscripten_bind_BroadPhaseLayerInterface_GetNumBroadPhaseLayers_0"),
Cc = b._emscripten_bind_BroadPhaseLayerInterface___destroy___0 = f("_emscripten_bind_BroadPhaseLayerInterface___destroy___0"), Dc = b._emscripten_bind_BroadPhaseCastResult_BroadPhaseCastResult_0 = f("_emscripten_bind_BroadPhaseCastResult_BroadPhaseCastResult_0"), Ec = b._emscripten_bind_BroadPhaseCastResult_Reset_0 = f("_emscripten_bind_BroadPhaseCastResult_Reset_0"), Fc = b._emscripten_bind_BroadPhaseCastResult_get_mBodyID_0 = f("_emscripten_bind_BroadPhaseCastResult_get_mBodyID_0"), Gc = b._emscripten_bind_BroadPhaseCastResult_set_mBodyID_1 =
f("_emscripten_bind_BroadPhaseCastResult_set_mBodyID_1"), Hc = b._emscripten_bind_BroadPhaseCastResult_get_mFraction_0 = f("_emscripten_bind_BroadPhaseCastResult_get_mFraction_0"), Ic = b._emscripten_bind_BroadPhaseCastResult_set_mFraction_1 = f("_emscripten_bind_BroadPhaseCastResult_set_mFraction_1"), Jc = b._emscripten_bind_BroadPhaseCastResult___destroy___0 = f("_emscripten_bind_BroadPhaseCastResult___destroy___0"), Kc = b._emscripten_bind_ConvexShapeSettings_GetRefCount_0 = f("_emscripten_bind_ConvexShapeSettings_GetRefCount_0"),
Lc = b._emscripten_bind_ConvexShapeSettings_AddRef_0 = f("_emscripten_bind_ConvexShapeSettings_AddRef_0"), Mc = b._emscripten_bind_ConvexShapeSettings_Release_0 = f("_emscripten_bind_ConvexShapeSettings_Release_0"), Nc = b._emscripten_bind_ConvexShapeSettings_Create_0 = f("_emscripten_bind_ConvexShapeSettings_Create_0"), Oc = b._emscripten_bind_ConvexShapeSettings_ClearCachedResult_0 = f("_emscripten_bind_ConvexShapeSettings_ClearCachedResult_0"), Pc = b._emscripten_bind_ConvexShapeSettings_get_mMaterial_0 =
f("_emscripten_bind_ConvexShapeSettings_get_mMaterial_0"), Qc = b._emscripten_bind_ConvexShapeSettings_set_mMaterial_1 = f("_emscripten_bind_ConvexShapeSettings_set_mMaterial_1"), Rc = b._emscripten_bind_ConvexShapeSettings_get_mDensity_0 = f("_emscripten_bind_ConvexShapeSettings_get_mDensity_0"), Sc = b._emscripten_bind_ConvexShapeSettings_set_mDensity_1 = f("_emscripten_bind_ConvexShapeSettings_set_mDensity_1"), Tc = b._emscripten_bind_ConvexShapeSettings_get_mUserData_0 = f("_emscripten_bind_ConvexShapeSettings_get_mUserData_0"),
Uc = b._emscripten_bind_ConvexShapeSettings_set_mUserData_1 = f("_emscripten_bind_ConvexShapeSettings_set_mUserData_1"), Vc = b._emscripten_bind_ConvexShapeSettings___destroy___0 = f("_emscripten_bind_ConvexShapeSettings___destroy___0"), Wc = b._emscripten_bind_ConvexShape_SetMaterial_1 = f("_emscripten_bind_ConvexShape_SetMaterial_1"), Xc = b._emscripten_bind_ConvexShape_GetDensity_0 = f("_emscripten_bind_ConvexShape_GetDensity_0"), Yc = b._emscripten_bind_ConvexShape_SetDensity_1 = f("_emscripten_bind_ConvexShape_SetDensity_1"),
Zc = b._emscripten_bind_ConvexShape_GetRefCount_0 = f("_emscripten_bind_ConvexShape_GetRefCount_0"), $c = b._emscripten_bind_ConvexShape_AddRef_0 = f("_emscripten_bind_ConvexShape_AddRef_0"), ad = b._emscripten_bind_ConvexShape_Release_0 = f("_emscripten_bind_ConvexShape_Release_0"), bd = b._emscripten_bind_ConvexShape_GetType_0 = f("_emscripten_bind_ConvexShape_GetType_0"), cd = b._emscripten_bind_ConvexShape_GetSubType_0 = f("_emscripten_bind_ConvexShape_GetSubType_0"), dd = b._emscripten_bind_ConvexShape_MustBeStatic_0 =
f("_emscripten_bind_ConvexShape_MustBeStatic_0"), ed = b._emscripten_bind_ConvexShape_GetLocalBounds_0 = f("_emscripten_bind_ConvexShape_GetLocalBounds_0"), fd = b._emscripten_bind_ConvexShape_GetWorldSpaceBounds_2 = f("_emscripten_bind_ConvexShape_GetWorldSpaceBounds_2"), gd = b._emscripten_bind_ConvexShape_GetCenterOfMass_0 = f("_emscripten_bind_ConvexShape_GetCenterOfMass_0"), hd = b._emscripten_bind_ConvexShape_GetUserData_0 = f("_emscripten_bind_ConvexShape_GetUserData_0"), jd = b._emscripten_bind_ConvexShape_Set