@relu-interactives/spatial-ecs 0.2.4 → 0.2.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{System-BTyYvKVH.d.cts → System-CIiWteft.d.cts} +2 -2
- package/dist/{System-BTyYvKVH.d.ts → System-CIiWteft.d.ts} +2 -2
- package/dist/{Video-BWhbvVPg.d.ts → Video-B-qMljTn.d.ts} +147 -75
- package/dist/{Video-D2H5H-K3.d.cts → Video-Dj4KBqQ1.d.cts} +147 -75
- package/dist/{chunk-XWIEEJ7Z.js → chunk-EIC5B3A7.js} +128 -82
- package/dist/chunk-EIC5B3A7.js.map +1 -0
- package/dist/{chunk-AYEF3X2P.js → chunk-FDWNCXU3.js} +3 -3
- package/dist/chunk-FDWNCXU3.js.map +1 -0
- package/dist/{chunk-NFDTIYR4.js → chunk-G2DUXNTQ.js} +18 -2
- package/dist/chunk-G2DUXNTQ.js.map +1 -0
- package/dist/{chunk-P2YDX5DB.js → chunk-NRSUYDBA.js} +275 -5
- package/dist/chunk-NRSUYDBA.js.map +1 -0
- package/dist/{chunk-MAWBTMCG.js → chunk-R5D5PWXV.js} +160 -88
- package/dist/chunk-R5D5PWXV.js.map +1 -0
- package/dist/components/index.cjs +165 -93
- package/dist/components/index.cjs.map +1 -1
- package/dist/components/index.d.cts +2 -2
- package/dist/components/index.d.ts +2 -2
- package/dist/components/index.js +1 -1
- package/dist/factories/index.cjs +221 -105
- package/dist/factories/index.cjs.map +1 -1
- package/dist/factories/index.d.cts +9 -3
- package/dist/factories/index.d.ts +9 -3
- package/dist/factories/index.js +3 -3
- package/dist/{index-KdEzEZox.d.cts → index-B12sx9yF.d.cts} +8 -3
- package/dist/{index-Dm6zF1MY.d.ts → index-Cf-PaKyN.d.ts} +8 -3
- package/dist/index.cjs +627 -179
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +7 -7
- package/dist/index.d.ts +7 -7
- package/dist/index.js +54 -12
- package/dist/index.js.map +1 -1
- package/dist/systems/index.cjs +403 -63
- package/dist/systems/index.cjs.map +1 -1
- package/dist/systems/index.d.cts +27 -3
- package/dist/systems/index.d.ts +27 -3
- package/dist/systems/index.js +3 -3
- package/dist/types.d.cts +1 -1
- package/dist/types.d.ts +1 -1
- package/dist/worldSnapshotUtils.cjs +16 -0
- package/dist/worldSnapshotUtils.cjs.map +1 -1
- package/dist/worldSnapshotUtils.d.cts +1 -1
- package/dist/worldSnapshotUtils.d.ts +1 -1
- package/dist/worldSnapshotUtils.js +1 -1
- package/package.json +1 -1
- package/dist/chunk-AYEF3X2P.js.map +0 -1
- package/dist/chunk-MAWBTMCG.js.map +0 -1
- package/dist/chunk-NFDTIYR4.js.map +0 -1
- package/dist/chunk-P2YDX5DB.js.map +0 -1
- package/dist/chunk-XWIEEJ7Z.js.map +0 -1
package/dist/index.d.cts
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { E as EcsSystem, C as Component, W as WorldEntityView, T as TransformComponent, b as World, c as ComponentClass, d as ParentLookup, e as EcsEntityKind, O as ObjectManagementSystem } from './System-
|
|
2
|
-
export { A as AssetInput, f as CheckboxInput, g as ColorInput, h as ComponentFactory, i as ComponentInput, j as ComponentKind, D as DropdownInput, k as DropdownOption, l as EcsComponentFactoryKind, m as EcsEntityEditorKind, n as EntityId, o as EntityInput, F as FloatInput, I as InputSystem, p as IntersectionResult, K as KeyboardKey, q as KeyboardKeys, M as MouseButton, R as RenderSystem, S as SelectionListener, r as SliderInput, s as TextInput, t as ToggleInput, u as TransformSyncSystem, v as Vec3, w as Vector2Input, x as Vector3Input } from './System-
|
|
1
|
+
import { E as EcsSystem, C as Component, W as WorldEntityView, T as TransformComponent, b as World, c as ComponentClass, d as ParentLookup, e as EcsEntityKind, O as ObjectManagementSystem } from './System-CIiWteft.cjs';
|
|
2
|
+
export { A as AssetInput, f as CheckboxInput, g as ColorInput, h as ComponentFactory, i as ComponentInput, j as ComponentKind, D as DropdownInput, k as DropdownOption, l as EcsComponentFactoryKind, m as EcsEntityEditorKind, n as EntityId, o as EntityInput, F as FloatInput, I as InputSystem, p as IntersectionResult, K as KeyboardKey, q as KeyboardKeys, M as MouseButton, R as RenderSystem, S as SelectionListener, r as SliderInput, s as TextInput, t as ToggleInput, u as TransformSyncSystem, v as Vec3, w as Vector2Input, x as Vector3Input } from './System-CIiWteft.cjs';
|
|
3
3
|
import * as THREE from 'three';
|
|
4
|
-
import {
|
|
5
|
-
export {
|
|
6
|
-
export { i as CoreComponents } from './index-
|
|
7
|
-
export { AnimationSystem, AudioSystem, CameraSyncSystem, EnvironmentSyncSystem, LightSyncSystem, MaterialSyncSystem, MeshGeometrySystem, ObjectVisibilitySystem, PhysicsSyncSystem, PostprocessingSyncSystem, ScriptBehaviourSystem, SelectionContext, VideoSystem } from './systems/index.cjs';
|
|
8
|
-
export { createAnimationComponent, createAudioComponent, createCameraComponent, createEntityTypeComponent, createEnvironmentComponent, createImageComponent, createImageTargetAnchorComponent, createImageTargetComponent, createLightComponent, createMaterialComponent, createMeshComponent, createMeshGeometryComponent, createModelComponent, createNameComponent, createObject3DRefComponent, createParentIdComponent, createPhysicsComponent, createPostprocessingComponent, createScriptComponent, createSelectableComponent, createSelectionTransformStateComponent, createSpriteComponent, createTransformComponent, createVideoComponent, registerDefaultComponentFactories, registerDefaultFactories } from './factories/index.cjs';
|
|
4
|
+
import { U as Object3DRef } from './Video-Dj4KBqQ1.cjs';
|
|
5
|
+
export { ac as AnimationStateCallbacks, ad as AnimationStateMachine, ae as AnimationStateManager, af as StateMachine } from './Video-Dj4KBqQ1.cjs';
|
|
6
|
+
export { i as CoreComponents } from './index-B12sx9yF.cjs';
|
|
7
|
+
export { AnimationSystem, AudioSystem, CameraSyncSystem, EnvironmentSyncSystem, InstancedMeshSystem, LightSyncSystem, MaterialSyncSystem, MeshGeometrySystem, ObjectVisibilitySystem, PhysicsSyncSystem, PostprocessingSyncSystem, ScriptBehaviourSystem, SelectionContext, VideoSystem } from './systems/index.cjs';
|
|
8
|
+
export { createAnimationComponent, createAudioComponent, createCameraComponent, createEntityTypeComponent, createEnvironmentComponent, createImageComponent, createImageTargetAnchorComponent, createImageTargetComponent, createInstancedMeshComponent, createLightComponent, createMaterialComponent, createMeshComponent, createMeshGeometryComponent, createModelComponent, createNameComponent, createObject3DRefComponent, createParentIdComponent, createPhysicsComponent, createPostprocessingComponent, createScriptComponent, createSelectableComponent, createSelectionTransformStateComponent, createSpriteComponent, createTransformComponent, createVideoComponent, registerDefaultComponentFactories, registerDefaultFactories } from './factories/index.cjs';
|
|
9
9
|
import '@dimforge/rapier3d-compat';
|
|
10
10
|
|
|
11
11
|
interface CustomEcsSystem extends EcsSystem {
|
package/dist/index.d.ts
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { E as EcsSystem, C as Component, W as WorldEntityView, T as TransformComponent, b as World, c as ComponentClass, d as ParentLookup, e as EcsEntityKind, O as ObjectManagementSystem } from './System-
|
|
2
|
-
export { A as AssetInput, f as CheckboxInput, g as ColorInput, h as ComponentFactory, i as ComponentInput, j as ComponentKind, D as DropdownInput, k as DropdownOption, l as EcsComponentFactoryKind, m as EcsEntityEditorKind, n as EntityId, o as EntityInput, F as FloatInput, I as InputSystem, p as IntersectionResult, K as KeyboardKey, q as KeyboardKeys, M as MouseButton, R as RenderSystem, S as SelectionListener, r as SliderInput, s as TextInput, t as ToggleInput, u as TransformSyncSystem, v as Vec3, w as Vector2Input, x as Vector3Input } from './System-
|
|
1
|
+
import { E as EcsSystem, C as Component, W as WorldEntityView, T as TransformComponent, b as World, c as ComponentClass, d as ParentLookup, e as EcsEntityKind, O as ObjectManagementSystem } from './System-CIiWteft.js';
|
|
2
|
+
export { A as AssetInput, f as CheckboxInput, g as ColorInput, h as ComponentFactory, i as ComponentInput, j as ComponentKind, D as DropdownInput, k as DropdownOption, l as EcsComponentFactoryKind, m as EcsEntityEditorKind, n as EntityId, o as EntityInput, F as FloatInput, I as InputSystem, p as IntersectionResult, K as KeyboardKey, q as KeyboardKeys, M as MouseButton, R as RenderSystem, S as SelectionListener, r as SliderInput, s as TextInput, t as ToggleInput, u as TransformSyncSystem, v as Vec3, w as Vector2Input, x as Vector3Input } from './System-CIiWteft.js';
|
|
3
3
|
import * as THREE from 'three';
|
|
4
|
-
import {
|
|
5
|
-
export {
|
|
6
|
-
export { i as CoreComponents } from './index-
|
|
7
|
-
export { AnimationSystem, AudioSystem, CameraSyncSystem, EnvironmentSyncSystem, LightSyncSystem, MaterialSyncSystem, MeshGeometrySystem, ObjectVisibilitySystem, PhysicsSyncSystem, PostprocessingSyncSystem, ScriptBehaviourSystem, SelectionContext, VideoSystem } from './systems/index.js';
|
|
8
|
-
export { createAnimationComponent, createAudioComponent, createCameraComponent, createEntityTypeComponent, createEnvironmentComponent, createImageComponent, createImageTargetAnchorComponent, createImageTargetComponent, createLightComponent, createMaterialComponent, createMeshComponent, createMeshGeometryComponent, createModelComponent, createNameComponent, createObject3DRefComponent, createParentIdComponent, createPhysicsComponent, createPostprocessingComponent, createScriptComponent, createSelectableComponent, createSelectionTransformStateComponent, createSpriteComponent, createTransformComponent, createVideoComponent, registerDefaultComponentFactories, registerDefaultFactories } from './factories/index.js';
|
|
4
|
+
import { U as Object3DRef } from './Video-B-qMljTn.js';
|
|
5
|
+
export { ac as AnimationStateCallbacks, ad as AnimationStateMachine, ae as AnimationStateManager, af as StateMachine } from './Video-B-qMljTn.js';
|
|
6
|
+
export { i as CoreComponents } from './index-Cf-PaKyN.js';
|
|
7
|
+
export { AnimationSystem, AudioSystem, CameraSyncSystem, EnvironmentSyncSystem, InstancedMeshSystem, LightSyncSystem, MaterialSyncSystem, MeshGeometrySystem, ObjectVisibilitySystem, PhysicsSyncSystem, PostprocessingSyncSystem, ScriptBehaviourSystem, SelectionContext, VideoSystem } from './systems/index.js';
|
|
8
|
+
export { createAnimationComponent, createAudioComponent, createCameraComponent, createEntityTypeComponent, createEnvironmentComponent, createImageComponent, createImageTargetAnchorComponent, createImageTargetComponent, createInstancedMeshComponent, createLightComponent, createMaterialComponent, createMeshComponent, createMeshGeometryComponent, createModelComponent, createNameComponent, createObject3DRefComponent, createParentIdComponent, createPhysicsComponent, createPostprocessingComponent, createScriptComponent, createSelectableComponent, createSelectionTransformStateComponent, createSpriteComponent, createTransformComponent, createVideoComponent, registerDefaultComponentFactories, registerDefaultFactories } from './factories/index.js';
|
|
9
9
|
import '@dimforge/rapier3d-compat';
|
|
10
10
|
|
|
11
11
|
interface CustomEcsSystem extends EcsSystem {
|
package/dist/index.js
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import { MeshGeometrySystem, EnvironmentSyncSystem, PostprocessingSyncSystem, LightSyncSystem, MaterialSyncSystem, PhysicsSyncSystem, AnimationSystem, AudioSystem, VideoSystem, CameraSyncSystem, TransformSyncSystem, ObjectVisibilitySystem, RenderSystem } from './chunk-
|
|
2
|
-
export { AnimationSystem, AudioSystem, Behaviour, CameraSyncSystem, EnvironmentSyncSystem, InputSystem, KeyboardKeys, LightSyncSystem, MaterialSyncSystem, MeshGeometrySystem, ObjectVisibilitySystem, PhysicsSyncSystem, PostprocessingSyncSystem, RenderSystem, ScriptBehaviourSystem, TransformSyncSystem, VideoSystem } from './chunk-
|
|
3
|
-
import { registerDefaultFactories } from './chunk-
|
|
4
|
-
export { createAnimationComponent, createAudioComponent, createCameraComponent, createEntityTypeComponent, createEnvironmentComponent, createImageComponent, createImageTargetAnchorComponent, createImageTargetComponent, createLightComponent, createMaterialComponent, createMeshComponent, createMeshGeometryComponent, createModelComponent, createNameComponent, createObject3DRefComponent, createParentIdComponent, createPhysicsComponent, createPostprocessingComponent, createScriptComponent, createSelectableComponent, createSelectionTransformStateComponent, createSpriteComponent, createTransformComponent, createVideoComponent, registerDefaultComponentFactories, registerDefaultFactories } from './chunk-
|
|
5
|
-
import { ObjectManagementSystem, applyTransform } from './chunk-
|
|
6
|
-
export { ObjectManagementSystem } from './chunk-
|
|
7
|
-
import { SelectionTransformState, Object3DRef, Name, EntityType, ScriptComponent, AnimationComponent, TransformComponent, ModelComponent, ImageComponent, SpriteComponent, VideoComponent, AudioComponent, CameraComponent, Environment, Postprocessing, ImageTarget, LightComponent, MaterialComponent, MeshGeometryComponent, Selectable, PhysicsComponent } from './chunk-
|
|
8
|
-
export { AnimationStateMachine, AnimationStateManager, components_exports as CoreComponents } from './chunk-
|
|
1
|
+
import { MeshGeometrySystem, InstancedMeshSystem, EnvironmentSyncSystem, PostprocessingSyncSystem, LightSyncSystem, MaterialSyncSystem, PhysicsSyncSystem, AnimationSystem, AudioSystem, VideoSystem, CameraSyncSystem, TransformSyncSystem, ObjectVisibilitySystem, RenderSystem } from './chunk-NRSUYDBA.js';
|
|
2
|
+
export { AnimationSystem, AudioSystem, Behaviour, CameraSyncSystem, EnvironmentSyncSystem, InputSystem, InstancedMeshSystem, KeyboardKeys, LightSyncSystem, MaterialSyncSystem, MeshGeometrySystem, ObjectVisibilitySystem, PhysicsSyncSystem, PostprocessingSyncSystem, RenderSystem, ScriptBehaviourSystem, TransformSyncSystem, VideoSystem } from './chunk-NRSUYDBA.js';
|
|
3
|
+
import { registerDefaultFactories } from './chunk-EIC5B3A7.js';
|
|
4
|
+
export { createAnimationComponent, createAudioComponent, createCameraComponent, createEntityTypeComponent, createEnvironmentComponent, createImageComponent, createImageTargetAnchorComponent, createImageTargetComponent, createInstancedMeshComponent, createLightComponent, createMaterialComponent, createMeshComponent, createMeshGeometryComponent, createModelComponent, createNameComponent, createObject3DRefComponent, createParentIdComponent, createPhysicsComponent, createPostprocessingComponent, createScriptComponent, createSelectableComponent, createSelectionTransformStateComponent, createSpriteComponent, createTransformComponent, createVideoComponent, registerDefaultComponentFactories, registerDefaultFactories } from './chunk-EIC5B3A7.js';
|
|
5
|
+
import { ObjectManagementSystem, applyTransform } from './chunk-FDWNCXU3.js';
|
|
6
|
+
export { ObjectManagementSystem } from './chunk-FDWNCXU3.js';
|
|
7
|
+
import { SelectionTransformState, Object3DRef, Name, EntityType, ScriptComponent, AnimationComponent, TransformComponent, ModelComponent, ImageComponent, SpriteComponent, VideoComponent, AudioComponent, CameraComponent, Environment, Postprocessing, ImageTarget, LightComponent, MaterialComponent, MeshGeometryComponent, Selectable, PhysicsComponent, InstancedMeshComponent } from './chunk-R5D5PWXV.js';
|
|
8
|
+
export { AnimationStateMachine, AnimationStateManager, components_exports as CoreComponents } from './chunk-R5D5PWXV.js';
|
|
9
9
|
import './chunk-QHILSPT4.js';
|
|
10
|
-
import { normalizeDebugValue, DEBUG_CHANGE_IGNORED_SYSTEMS, cloneHistoryValue } from './chunk-
|
|
10
|
+
import { normalizeDebugValue, DEBUG_CHANGE_IGNORED_SYSTEMS, cloneHistoryValue } from './chunk-G2DUXNTQ.js';
|
|
11
11
|
import { __name } from './chunk-OY7ZODZP.js';
|
|
12
12
|
export { Component } from './chunk-OY7ZODZP.js';
|
|
13
13
|
import * as THREE from 'three';
|
|
@@ -348,6 +348,7 @@ var _World = class _World {
|
|
|
348
348
|
isEditor ?? false
|
|
349
349
|
);
|
|
350
350
|
const meshGeometrySystem = new MeshGeometrySystem();
|
|
351
|
+
const instancedMeshSystem = new InstancedMeshSystem();
|
|
351
352
|
const environmentSyncSystem = this.featureFlags.supportSkybox ? new EnvironmentSyncSystem(this.scene) : null;
|
|
352
353
|
const postprocessingSyncSystem = this.featureFlags.supportPostprocessing ? new PostprocessingSyncSystem(this.renderer, this.scene, this.camera) : null;
|
|
353
354
|
const lightSyncSystem = new LightSyncSystem();
|
|
@@ -370,7 +371,8 @@ var _World = class _World {
|
|
|
370
371
|
this.inputSystem = null;
|
|
371
372
|
const coreSystems = [
|
|
372
373
|
objectManagementSystem,
|
|
373
|
-
meshGeometrySystem
|
|
374
|
+
meshGeometrySystem,
|
|
375
|
+
instancedMeshSystem
|
|
374
376
|
];
|
|
375
377
|
if (environmentSyncSystem) {
|
|
376
378
|
coreSystems.push(environmentSyncSystem);
|
|
@@ -927,7 +929,8 @@ function buildComponentValueMaps(snapshot) {
|
|
|
927
929
|
physicsValues: readByComponent(snapshot.components, "PhysicsComponent"),
|
|
928
930
|
animationValues: readByComponent(snapshot.components, "AnimationComponent"),
|
|
929
931
|
imageTargetAnchorValues: readByComponent(snapshot.components, "ImageTargetAnchor"),
|
|
930
|
-
scriptValues: readByComponent(snapshot.components, "ScriptComponent")
|
|
932
|
+
scriptValues: readByComponent(snapshot.components, "ScriptComponent"),
|
|
933
|
+
instancedMeshValues: readByComponent(snapshot.components, "InstancedMeshComponent")
|
|
931
934
|
};
|
|
932
935
|
}
|
|
933
936
|
__name(buildComponentValueMaps, "buildComponentValueMaps");
|
|
@@ -1524,6 +1527,32 @@ function restoreComponentState(world, objectManagementSystem, targetEntityId, so
|
|
|
1524
1527
|
sourceAnimation
|
|
1525
1528
|
);
|
|
1526
1529
|
}
|
|
1530
|
+
const sourceInstancedMesh = asRecord(values.instancedMeshValues.get(sourceEntityId));
|
|
1531
|
+
if (sourceInstancedMesh) {
|
|
1532
|
+
const imComponent = world.getComponent(targetEntityId, InstancedMeshComponent);
|
|
1533
|
+
if (imComponent) {
|
|
1534
|
+
if (typeof sourceInstancedMesh.meshKind === "string") {
|
|
1535
|
+
imComponent.meshKind = sourceInstancedMesh.meshKind;
|
|
1536
|
+
}
|
|
1537
|
+
if (typeof sourceInstancedMesh.modelPath === "string") {
|
|
1538
|
+
imComponent.modelPath = sourceInstancedMesh.modelPath;
|
|
1539
|
+
}
|
|
1540
|
+
const parameters = asRecord(sourceInstancedMesh.meshParameters);
|
|
1541
|
+
if (parameters) {
|
|
1542
|
+
imComponent.meshParameters = parameters;
|
|
1543
|
+
}
|
|
1544
|
+
if (typeof sourceInstancedMesh.castShadow === "boolean") {
|
|
1545
|
+
imComponent.castShadow = sourceInstancedMesh.castShadow;
|
|
1546
|
+
}
|
|
1547
|
+
if (typeof sourceInstancedMesh.receiveShadow === "boolean") {
|
|
1548
|
+
imComponent.receiveShadow = sourceInstancedMesh.receiveShadow;
|
|
1549
|
+
}
|
|
1550
|
+
if (Array.isArray(sourceInstancedMesh.instances)) {
|
|
1551
|
+
imComponent.instances = sourceInstancedMesh.instances;
|
|
1552
|
+
}
|
|
1553
|
+
imComponent.instancedMesh = null;
|
|
1554
|
+
}
|
|
1555
|
+
}
|
|
1527
1556
|
}
|
|
1528
1557
|
__name(restoreComponentState, "restoreComponentState");
|
|
1529
1558
|
|
|
@@ -1546,7 +1575,8 @@ var HYDRATABLE_ENTITY_KINDS = /* @__PURE__ */ new Set([
|
|
|
1546
1575
|
"directionalLight",
|
|
1547
1576
|
"pointLight",
|
|
1548
1577
|
"spotLight",
|
|
1549
|
-
"areaLight"
|
|
1578
|
+
"areaLight",
|
|
1579
|
+
"instancedMesh"
|
|
1550
1580
|
]);
|
|
1551
1581
|
|
|
1552
1582
|
// core/hydration/hydrateWorld.ts
|
|
@@ -1623,6 +1653,18 @@ function buildEntityCreationPayload(sourceEntityId, kind, componentValues) {
|
|
|
1623
1653
|
};
|
|
1624
1654
|
}
|
|
1625
1655
|
}
|
|
1656
|
+
if (kind === "instancedMesh") {
|
|
1657
|
+
const im = asRecord(componentValues.instancedMeshValues.get(sourceEntityId));
|
|
1658
|
+
if (im) {
|
|
1659
|
+
payload.options = {
|
|
1660
|
+
meshKind: typeof im.meshKind === "string" ? im.meshKind : "cube",
|
|
1661
|
+
meshParameters: asRecord(im.meshParameters) ?? void 0,
|
|
1662
|
+
castShadow: typeof im.castShadow === "boolean" ? im.castShadow : false,
|
|
1663
|
+
receiveShadow: typeof im.receiveShadow === "boolean" ? im.receiveShadow : false,
|
|
1664
|
+
instances: Array.isArray(im.instances) ? im.instances : void 0
|
|
1665
|
+
};
|
|
1666
|
+
}
|
|
1667
|
+
}
|
|
1626
1668
|
return payload;
|
|
1627
1669
|
}
|
|
1628
1670
|
__name(buildEntityCreationPayload, "buildEntityCreationPayload");
|