@dreamcomposer/engine-types 0.0.15 → 0.0.17

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.
@@ -0,0 +1,38 @@
1
+ /**
2
+ * State of a single skeleton
3
+ */
4
+ export interface SkeletonState {
5
+ /**
6
+ * The states of all bones inside the skeleton
7
+ * Missing bone states or empty value will result in default (rest-pose) values
8
+ */
9
+ boneStates?: BoneState[];
10
+ }
11
+
12
+ export interface BoneState {
13
+ /**
14
+ * The index of the bone inside the skeleton definition
15
+ */
16
+ boneIndex: number;
17
+ /**
18
+ * The local position of the bone. If empty the default (rest-pose) values is taken
19
+ */
20
+ localPosition?: [number, number, number];
21
+ /**
22
+ * The local rotation of the bone in euler angles or as an angle axis representation
23
+ */
24
+ localRotation?: EulerAngles | AngleAxisRotation;
25
+ }
26
+
27
+ export interface EulerAngles {
28
+ x: number;
29
+ y: number;
30
+ z: number;
31
+ }
32
+
33
+ export interface AngleAxisRotation {
34
+ /** Normalized rotation axis */
35
+ axis: [number, number, number];
36
+ /** Angle in degree */
37
+ angle: number;
38
+ }
@@ -0,0 +1,9 @@
1
+ import { FromEngineMessage } from "../post-messages";
2
+
3
+ /**
4
+ * Sent whenever the loading ui should be displayed.
5
+ */
6
+ export interface DisplayLoadingUiMessage
7
+ extends FromEngineMessage<"display-loading-ui"> {
8
+ payload: {};
9
+ }
@@ -0,0 +1,9 @@
1
+ import { FromEngineMessage } from "../post-messages";
2
+
3
+ /**
4
+ * Sent whenever the loading ui should be hidden.
5
+ */
6
+ export interface HideLoadingUiMessage
7
+ extends FromEngineMessage<"hide-loading-ui"> {
8
+ payload: {};
9
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dreamcomposer/engine-types",
3
- "version": "0.0.15",
3
+ "version": "0.0.17",
4
4
  "description": "The type definitions for messages from and to the engine",
5
5
  "license": "UNLICENSED",
6
6
  "private": false,
@@ -35,6 +35,11 @@ import { ToggleVrMessage } from "./to-engine/ToggleVrMessage";
35
35
  import { PointerEventMessage } from "./from-engine/PointerEventMessage";
36
36
  import { HideGuiMessage } from "./from-engine/HideGuiMessage";
37
37
  import { SetUseFramingAnimation } from "./to-engine/SetUseFramingAnimation";
38
+ import { SetSkeletonStatesMessage } from "./to-engine/SetSkeletonStatesMessage";
39
+ import { RecenterSkeletonObjectsMessage } from "./to-engine/RecenterSkeletonObjectsMessage";
40
+ import { SetShadowPlaneVisibilityMessage } from "./to-engine/SetShadowPlaneVisibilityMessage";
41
+ import { DisplayLoadingUiMessage } from "./from-engine/DisplayLoadingUiMessage";
42
+ import { HideLoadingUiMessage } from "./from-engine/HideLoadingUiMessage";
38
43
 
39
44
  /**
40
45
  * A message sent from the engine to the embedder.
@@ -60,8 +65,10 @@ export interface ToEngineMessage<Channel> {
60
65
  export type FromEnginePostMessage =
61
66
  | AckMessage
62
67
  | CanvasImageUrlMessage
68
+ | DisplayLoadingUiMessage
63
69
  | EngineReadyMessage
64
70
  | HideGuiMessage
71
+ | HideLoadingUiMessage
65
72
  | KeyDownMessage
66
73
  | PointerEventMessage
67
74
  | SetEffectsSettingsAckMessage
@@ -96,6 +103,9 @@ export type ToEnginePostMessage =
96
103
  | ToggleFullscreenMessage
97
104
  | ToggleInspectorMessage
98
105
  | ToggleVrMessage
99
- | UnhighlightLayerMessage;
106
+ | UnhighlightLayerMessage
107
+ | RecenterSkeletonObjectsMessage
108
+ | SetSkeletonStatesMessage
109
+ | SetShadowPlaneVisibilityMessage;
100
110
 
101
111
  export type PostMessage = FromEnginePostMessage | ToEnginePostMessage;
@@ -0,0 +1,9 @@
1
+ import { ToEngineMessage } from "../post-messages";
2
+
3
+ /**
4
+ * A message to set the mesh skeleton states
5
+ */
6
+ export interface RecenterSkeletonObjectsMessage
7
+ extends ToEngineMessage<"recenter-skeleton-objects"> {
8
+ payload: void;
9
+ }
@@ -0,0 +1,6 @@
1
+ import { ToEngineMessage } from "../post-messages";
2
+
3
+ export interface SetGeometryAngles
4
+ extends ToEngineMessage<"set-geometry-angles"> {
5
+ payload: number[];
6
+ }
@@ -0,0 +1,9 @@
1
+ import { ToEngineMessage } from "../post-messages";
2
+
3
+ /**
4
+ * A message to toggle the visibility of the grid.
5
+ */
6
+ export interface SetShadowPlaneVisibilityMessage
7
+ extends ToEngineMessage<"set-shadowplane-visible"> {
8
+ payload: boolean;
9
+ }
@@ -0,0 +1,15 @@
1
+ import { SkeletonState } from "../SkeletonState";
2
+ import { ToEngineMessage } from "../post-messages";
3
+
4
+ /**
5
+ * A message to set the mesh skeleton states
6
+ */
7
+ export interface SetSkeletonStatesMessage
8
+ extends ToEngineMessage<"set-skeleton-states"> {
9
+ payload: {
10
+ /**
11
+ * The skeleton states. The key is the name of the skeleton from the mesh.
12
+ */
13
+ [skeletonName: string]: SkeletonState;
14
+ };
15
+ }