UNPKG

prendy

Version:

Make games with prerendered backdrops using babylonjs and repond

50 lines (49 loc) 2.39 kB
import "@babylonjs/loaders"; import { Globals } from "react-spring"; import { onNextTick } from "repond"; import { initMovers } from "repond-movers"; import loadGoogleFonts from "./helpers/loadGoogleFonts"; import loadStyles from "./helpers/loadStyles"; import { meta } from "./meta"; import { timeStatePath } from "./stores/global/global"; import { initializeKTX2Decoder } from "./initializeKTX2Decoder"; export { DebugFrameRate } from "./components/DebugFrameRate"; export { PrendyApp } from "./components/PrendyApp"; export * from "./declarations"; export { prendyEffectGroups, prendyParamEffectGroups } from "./effects/effects"; export { makePrendyOptions } from "./getPrendyOptions"; export * from "./helpers/babylonjs/vectors"; export * from "./helpers/prendyHelpers/characters"; export * from "./helpers/prendyHelpers/dolls"; export * from "./helpers/prendyHelpers/players"; export * from "./helpers/prendyHelpers/scene"; export * from "./helpers/prendyHelpers/sound"; export * from "./helpers/prendyHelpers/speech"; export * from "./helpers/prendyHelpers/stickers"; export * from "./helpers/prendyRuleMakers/cameras"; export * from "./helpers/prendyRuleMakers/interact"; export * from "./helpers/prendyRuleMakers/pickups"; export * from "./helpers/prendyRuleMakers/places"; export * from "./helpers/prendyRuleMakers/prendyRuleMakers"; export * from "./helpers/prendyRuleMakers/segments"; export * from "./helpers/prendyRuleMakers/touches"; export * from "./helpers/prendyRuleMakers/triggers"; export { isHolding } from "./helpers/prendyUtils/player"; // NOTE update to export all from? export { prendyEventGroups } from "./events/events"; export { loadPrendyState, savePrendyState } from "./helpers/saving"; export { makePrendyStores, prendyStepNames } from "./stores/stores"; export async function initPrendy(assets, KTX2Worker) { // Initialize the KTX2 decoder await initializeKTX2Decoder(KTX2Worker); meta.assets = assets; initMovers(timeStatePath); loadGoogleFonts(meta.assets.fontNames); // Auto-import fonts from google fonts :) loadStyles(); Globals.assign({ frameLoop: "always", requestAnimationFrame: onNextTick }); // for react-spring } export function getDefaultDollOptions(modelNames) { const modelDollOptions = {}; modelNames.forEach((modelName) => (modelDollOptions[modelName] = { model: modelName })); return modelDollOptions; }