mylingo3d
Version:
Lingo3D is a React/Vue 3d game development framework that ships with a complete visual editor
19 lines • 849 B
JavaScript
import { omit } from "@lincode/utils";
import createObject from "./createObject";
import { nonSerializedProperties } from "./types";
import Loaded from "../../display/core/Loaded";
const nodeToObjectManager = (node, loadedResolvables) => {
if (node.type === "animation" || node.type === "lingo3d")
return;
const object = createObject(node.type);
loadedResolvables &&
object instanceof Loaded &&
loadedResolvables.push(object.loaded);
Object.assign(object, omit(node, nonSerializedProperties));
node.children
?.map((n) => nodeToObjectManager(n, loadedResolvables))
.forEach((c) => c && object.append(c));
return object;
};
export default (graph, loadedResolvables) => graph.map((n) => nodeToObjectManager(n, loadedResolvables));
//# sourceMappingURL=deserialize.js.map