@aura3d/animation 1.3.2 → 1.4.0
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/library/performanceStateGraph.d.ts +11 -3
- package/dist/library/performanceStateGraph.d.ts.map +1 -1
- package/dist/library/performanceStateGraph.js +61 -5
- package/dist/library/performanceStateGraph.js.map +1 -1
- package/dist/library/standardHumanoidClips.d.ts +3 -3
- package/dist/library/standardHumanoidClips.d.ts.map +1 -1
- package/dist/library/standardHumanoidClips.js +179 -4
- package/dist/library/standardHumanoidClips.js.map +1 -1
- package/package.json +2 -2
- package/src/library/performanceStateGraph.ts +61 -5
- package/src/library/standardHumanoidClips.ts +221 -4
|
@@ -18,20 +18,28 @@ export declare const PERFORMANCE_GRAPH_PARAMETERS: {
|
|
|
18
18
|
readonly gesture: "gesture";
|
|
19
19
|
readonly point: "point";
|
|
20
20
|
readonly nod: "nod";
|
|
21
|
+
readonly wave: "wave";
|
|
21
22
|
readonly react: "react";
|
|
22
23
|
readonly walk: "isMoving";
|
|
23
24
|
readonly run: "isRunning";
|
|
25
|
+
readonly sit: "sit";
|
|
26
|
+
readonly shrug: "shrug";
|
|
27
|
+
readonly cross_arms: "crossArms";
|
|
28
|
+
readonly salute: "salute";
|
|
29
|
+
readonly shake_head: "shakeHead";
|
|
24
30
|
};
|
|
25
31
|
/**
|
|
26
|
-
* State graph over the
|
|
32
|
+
* State graph over the 14 standard performance clip ids ({@link STANDARD_CLIP_IDS}) with `idle` as the
|
|
27
33
|
* default state. The studio requests a state per beat and the machine crossfades via the inertialized
|
|
28
34
|
* {@link AnimationStateMachine.stateBlend}.
|
|
29
35
|
*
|
|
30
36
|
* Topology:
|
|
31
|
-
* - `idle` (default) can go to
|
|
37
|
+
* - `idle` (default) can go to any performance or locomotion state.
|
|
32
38
|
* - `talk` is a held loop (while `isSpeaking`) that returns to idle when the flag clears; from talk
|
|
33
39
|
* you can still fire one-shots and start moving.
|
|
34
|
-
* - `gesture` / `point` / `nod` / `react`
|
|
40
|
+
* - `gesture` / `point` / `nod` / `wave` / `react` / `shrug` / `salute` / `shake_head` are one-shots
|
|
41
|
+
* that auto-return to idle on completion.
|
|
42
|
+
* - `sit` and `cross_arms` are held loops that return to idle when their flag clears.
|
|
35
43
|
* - `walk` <-> `run` <-> `idle` form the locomotion blend (`isMoving` / `isRunning`).
|
|
36
44
|
*
|
|
37
45
|
* Priorities: locomotion-stop/one-shots take precedence so a requested beat wins over the held loop.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"performanceStateGraph.d.ts","sourceRoot":"","sources":["../../../../../packages/animation/src/library/performanceStateGraph.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAA6C,MAAM,6BAA6B,CAAC;AAC/G,OAAO,EAAqB,KAAK,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAEpF,MAAM,WAAW,4BAA4B;IAC3C,4FAA4F;IAC5F,QAAQ,CAAC,SAAS,CAAC,EAAE,cAAc,CAAC;IACpC,6FAA6F;IAC7F,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;CACnC;AAED;;;;;;GAMG;AACH,eAAO,MAAM,4BAA4B
|
|
1
|
+
{"version":3,"file":"performanceStateGraph.d.ts","sourceRoot":"","sources":["../../../../../packages/animation/src/library/performanceStateGraph.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAA6C,MAAM,6BAA6B,CAAC;AAC/G,OAAO,EAAqB,KAAK,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAEpF,MAAM,WAAW,4BAA4B;IAC3C,4FAA4F;IAC5F,QAAQ,CAAC,SAAS,CAAC,EAAE,cAAc,CAAC;IACpC,6FAA6F;IAC7F,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;CACnC;AAED;;;;;;GAMG;AACH,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;CAcmB,CAAC;AA6B7D;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,2BAA2B,CAAC,OAAO,GAAE,4BAAiC,GAAG,qBAAqB,CA6F7G;AAED,uGAAuG;AACvG,eAAO,MAAM,wBAAwB,EAAE,SAAS,cAAc,EAAsB,CAAC"}
|
|
@@ -12,9 +12,15 @@ export const PERFORMANCE_GRAPH_PARAMETERS = {
|
|
|
12
12
|
gesture: "gesture",
|
|
13
13
|
point: "point",
|
|
14
14
|
nod: "nod",
|
|
15
|
+
wave: "wave",
|
|
15
16
|
react: "react",
|
|
16
17
|
walk: "isMoving",
|
|
17
|
-
run: "isRunning"
|
|
18
|
+
run: "isRunning",
|
|
19
|
+
sit: "sit",
|
|
20
|
+
shrug: "shrug",
|
|
21
|
+
cross_arms: "crossArms",
|
|
22
|
+
salute: "salute",
|
|
23
|
+
shake_head: "shakeHead"
|
|
18
24
|
};
|
|
19
25
|
function trigger(to, parameter, priority, consume = false, expected = true) {
|
|
20
26
|
return {
|
|
@@ -40,15 +46,17 @@ function truthy(value) {
|
|
|
40
46
|
return false;
|
|
41
47
|
}
|
|
42
48
|
/**
|
|
43
|
-
* State graph over the
|
|
49
|
+
* State graph over the 14 standard performance clip ids ({@link STANDARD_CLIP_IDS}) with `idle` as the
|
|
44
50
|
* default state. The studio requests a state per beat and the machine crossfades via the inertialized
|
|
45
51
|
* {@link AnimationStateMachine.stateBlend}.
|
|
46
52
|
*
|
|
47
53
|
* Topology:
|
|
48
|
-
* - `idle` (default) can go to
|
|
54
|
+
* - `idle` (default) can go to any performance or locomotion state.
|
|
49
55
|
* - `talk` is a held loop (while `isSpeaking`) that returns to idle when the flag clears; from talk
|
|
50
56
|
* you can still fire one-shots and start moving.
|
|
51
|
-
* - `gesture` / `point` / `nod` / `react`
|
|
57
|
+
* - `gesture` / `point` / `nod` / `wave` / `react` / `shrug` / `salute` / `shake_head` are one-shots
|
|
58
|
+
* that auto-return to idle on completion.
|
|
59
|
+
* - `sit` and `cross_arms` are held loops that return to idle when their flag clears.
|
|
52
60
|
* - `walk` <-> `run` <-> `idle` form the locomotion blend (`isMoving` / `isRunning`).
|
|
53
61
|
*
|
|
54
62
|
* Priorities: locomotion-stop/one-shots take precedence so a requested beat wins over the held loop.
|
|
@@ -63,19 +71,29 @@ export function createPerformanceStateGraph(options = {}) {
|
|
|
63
71
|
const toGesture = trigger("gesture", P.gesture, 80, true);
|
|
64
72
|
const toPoint = trigger("point", P.point, 80, true);
|
|
65
73
|
const toNod = trigger("nod", P.nod, 80, true);
|
|
74
|
+
const toWave = trigger("wave", P.wave, 80, true);
|
|
66
75
|
const toReact = trigger("react", P.react, 90, true);
|
|
76
|
+
const toShrug = trigger("shrug", P.shrug, 80, true);
|
|
77
|
+
const toSalute = trigger("salute", P.salute, 80, true);
|
|
78
|
+
const toShakeHead = trigger("shake_head", P.shake_head, 80, true);
|
|
79
|
+
const toSit = trigger("sit", P.sit, 35);
|
|
80
|
+
const toCrossArms = trigger("cross_arms", P.cross_arms, 35);
|
|
67
81
|
const states = [
|
|
68
82
|
{
|
|
69
83
|
name: idle,
|
|
70
|
-
transitions: [toReact, toGesture, toPoint, toNod, toRun, toWalk, toTalk]
|
|
84
|
+
transitions: [toReact, toShakeHead, toSalute, toShrug, toGesture, toPoint, toNod, toWave, toCrossArms, toSit, toRun, toWalk, toTalk]
|
|
71
85
|
},
|
|
72
86
|
{
|
|
73
87
|
name: "talk",
|
|
74
88
|
transitions: [
|
|
75
89
|
toReact,
|
|
90
|
+
toShakeHead,
|
|
91
|
+
toSalute,
|
|
92
|
+
toShrug,
|
|
76
93
|
toGesture,
|
|
77
94
|
toPoint,
|
|
78
95
|
toNod,
|
|
96
|
+
toWave,
|
|
79
97
|
toRun,
|
|
80
98
|
toWalk,
|
|
81
99
|
trigger(idle, P.talk, 0, false, false)
|
|
@@ -84,7 +102,45 @@ export function createPerformanceStateGraph(options = {}) {
|
|
|
84
102
|
{ name: "gesture", duration: oneShot, oneShot: true, onComplete: idle },
|
|
85
103
|
{ name: "point", duration: oneShot, oneShot: true, onComplete: idle },
|
|
86
104
|
{ name: "nod", duration: oneShot, oneShot: true, onComplete: idle },
|
|
105
|
+
{ name: "wave", duration: oneShot, oneShot: true, onComplete: idle },
|
|
87
106
|
{ name: "react", duration: oneShot, oneShot: true, onComplete: idle },
|
|
107
|
+
{ name: "shrug", duration: oneShot, oneShot: true, onComplete: idle },
|
|
108
|
+
{ name: "salute", duration: oneShot, oneShot: true, onComplete: idle },
|
|
109
|
+
{ name: "shake_head", duration: oneShot, oneShot: true, onComplete: idle },
|
|
110
|
+
// Held loops: stay in the state while the flag is truthy, return to idle when it
|
|
111
|
+
// clears. One-shots/locomotion keep higher priority so a requested beat wins.
|
|
112
|
+
{
|
|
113
|
+
name: "sit",
|
|
114
|
+
transitions: [
|
|
115
|
+
toReact,
|
|
116
|
+
toShakeHead,
|
|
117
|
+
toSalute,
|
|
118
|
+
toShrug,
|
|
119
|
+
toGesture,
|
|
120
|
+
toPoint,
|
|
121
|
+
toNod,
|
|
122
|
+
toWave,
|
|
123
|
+
toRun,
|
|
124
|
+
toWalk,
|
|
125
|
+
trigger(idle, P.sit, 0, false, false)
|
|
126
|
+
]
|
|
127
|
+
},
|
|
128
|
+
{
|
|
129
|
+
name: "cross_arms",
|
|
130
|
+
transitions: [
|
|
131
|
+
toReact,
|
|
132
|
+
toShakeHead,
|
|
133
|
+
toSalute,
|
|
134
|
+
toShrug,
|
|
135
|
+
toGesture,
|
|
136
|
+
toPoint,
|
|
137
|
+
toNod,
|
|
138
|
+
toWave,
|
|
139
|
+
toRun,
|
|
140
|
+
toWalk,
|
|
141
|
+
trigger(idle, P.cross_arms, 0, false, false)
|
|
142
|
+
]
|
|
143
|
+
},
|
|
88
144
|
{
|
|
89
145
|
name: "walk",
|
|
90
146
|
transitions: [toRun, trigger(idle, P.walk, 0, false, false)]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"performanceStateGraph.js","sourceRoot":"","sources":["../../../../../packages/animation/src/library/performanceStateGraph.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAA6C,MAAM,6BAA6B,CAAC;AAC/G,OAAO,EAAE,iBAAiB,EAAuB,MAAM,4BAA4B,CAAC;AASpF;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAG;IAC1C,IAAI,EAAE,YAAY;IAClB,OAAO,EAAE,SAAS;IAClB,KAAK,EAAE,OAAO;IACd,GAAG,EAAE,KAAK;IACV,KAAK,EAAE,OAAO;IACd,IAAI,EAAE,UAAU;IAChB,GAAG,EAAE,WAAW;
|
|
1
|
+
{"version":3,"file":"performanceStateGraph.js","sourceRoot":"","sources":["../../../../../packages/animation/src/library/performanceStateGraph.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { AnimationClipRegistry, type AnimationClipDefinition } from "../AnimationClipRegistry.js";
|
|
2
2
|
import { type HumanoidRigDefinition } from "../HumanoidRetargeting.js";
|
|
3
3
|
/**
|
|
4
|
-
* The STANDARD performance vocabulary (Phase 2.4). These
|
|
4
|
+
* The STANDARD performance vocabulary (Phase 2.4). These 14 ids are the contract the Animation
|
|
5
5
|
* Studio drives — every shared library, retarget target, and state graph speaks exactly these.
|
|
6
6
|
*/
|
|
7
|
-
export declare const STANDARD_CLIP_IDS: readonly ["idle", "talk", "gesture", "point", "nod", "walk", "run", "react"];
|
|
7
|
+
export declare const STANDARD_CLIP_IDS: readonly ["idle", "talk", "gesture", "point", "nod", "wave", "walk", "run", "react", "sit", "shrug", "cross_arms", "salute", "shake_head"];
|
|
8
8
|
export type StandardClipId = typeof STANDARD_CLIP_IDS[number];
|
|
9
9
|
/** Locomotion subset of the vocabulary (used by the locomotion blend / studio clip-map check). */
|
|
10
10
|
export declare const STANDARD_LOCOMOTION_CLIP_IDS: readonly ["idle", "walk", "run"];
|
|
@@ -17,7 +17,7 @@ export declare const STANDARD_LIBRARY_RIG: HumanoidRigDefinition;
|
|
|
17
17
|
/** Ordered list of all standard library clip definitions (idle first). */
|
|
18
18
|
export declare function createStandardHumanoidClipDefinitions(): readonly AnimationClipDefinition<StandardClipId>[];
|
|
19
19
|
/**
|
|
20
|
-
* Shared, rig-neutral {@link AnimationClipRegistry} populated with the
|
|
20
|
+
* Shared, rig-neutral {@link AnimationClipRegistry} populated with the 14 standard performance clips
|
|
21
21
|
* authored on {@link STANDARD_LIBRARY_RIG} (canonical {@link HUMANOID_BONES}). The clips are COMPACT
|
|
22
22
|
* procedural keyframe loops/one-shots — real, samplable {@link AnimationTrack} data, not mocap and
|
|
23
23
|
* not placeholders. They give the studio a guaranteed, retargetable performance vocabulary even when
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"standardHumanoidClips.d.ts","sourceRoot":"","sources":["../../../../../packages/animation/src/library/standardHumanoidClips.ts"],"names":[],"mappings":"AACA,OAAO,EACL,qBAAqB,EAErB,KAAK,uBAAuB,EAC7B,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAyC,KAAK,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAE9G;;;GAGG;AACH,eAAO,MAAM,iBAAiB,
|
|
1
|
+
{"version":3,"file":"standardHumanoidClips.d.ts","sourceRoot":"","sources":["../../../../../packages/animation/src/library/standardHumanoidClips.ts"],"names":[],"mappings":"AACA,OAAO,EACL,qBAAqB,EAErB,KAAK,uBAAuB,EAC7B,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAyC,KAAK,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAE9G;;;GAGG;AACH,eAAO,MAAM,iBAAiB,4IAIpB,CAAC;AACX,MAAM,MAAM,cAAc,GAAG,OAAO,iBAAiB,CAAC,MAAM,CAAC,CAAC;AAE9D,kGAAkG;AAClG,eAAO,MAAM,4BAA4B,kCAAmC,CAAC;AAO7E;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,EAAE,qBAalC,CAAC;AAwkBF,0EAA0E;AAC1E,wBAAgB,qCAAqC,IAAI,SAAS,uBAAuB,CAAC,cAAc,CAAC,EAAE,CAiB1G;AAED;;;;;;GAMG;AACH,wBAAgB,kCAAkC,IAAI,qBAAqB,CAAC,cAAc,CAAC,CAE1F"}
|
|
@@ -2,10 +2,14 @@ import { AnimationTrack } from "../AnimationTrack.js";
|
|
|
2
2
|
import { AnimationClipRegistry, createAnimationClipRegistry } from "../AnimationClipRegistry.js";
|
|
3
3
|
import { HUMANOID_BONES } from "../HumanoidRetargeting.js";
|
|
4
4
|
/**
|
|
5
|
-
* The STANDARD performance vocabulary (Phase 2.4). These
|
|
5
|
+
* The STANDARD performance vocabulary (Phase 2.4). These 14 ids are the contract the Animation
|
|
6
6
|
* Studio drives — every shared library, retarget target, and state graph speaks exactly these.
|
|
7
7
|
*/
|
|
8
|
-
export const STANDARD_CLIP_IDS = [
|
|
8
|
+
export const STANDARD_CLIP_IDS = [
|
|
9
|
+
"idle", "talk", "gesture", "point", "nod", "wave",
|
|
10
|
+
"walk", "run", "react",
|
|
11
|
+
"sit", "shrug", "cross_arms", "salute", "shake_head"
|
|
12
|
+
];
|
|
9
13
|
/** Locomotion subset of the vocabulary (used by the locomotion blend / studio clip-map check). */
|
|
10
14
|
export const STANDARD_LOCOMOTION_CLIP_IDS = ["idle", "walk", "run"];
|
|
11
15
|
const FRAME_RATE = 30;
|
|
@@ -331,6 +335,171 @@ function walkClip() {
|
|
|
331
335
|
function runClip() {
|
|
332
336
|
return legCycle("run", 0.6, 0.9, 1.1, 0.07);
|
|
333
337
|
}
|
|
338
|
+
// --- wave: one-shot greeting wave (right arm) ---------------------------------------------------
|
|
339
|
+
function waveClip() {
|
|
340
|
+
const d = 1.2;
|
|
341
|
+
return clip("wave", d, [
|
|
342
|
+
rotationTrack("rightUpperArm", d, [
|
|
343
|
+
{ t: 0, e: [0, 0, -0.2] },
|
|
344
|
+
{ t: 0.3, e: [0.5, -0.2, -1.4] },
|
|
345
|
+
{ t: 0.5, e: [0.6, -0.1, -1.55] },
|
|
346
|
+
{ t: 0.7, e: [0.5, -0.2, -1.4] },
|
|
347
|
+
{ t: 0.9, e: [0.6, -0.1, -1.55] },
|
|
348
|
+
{ t: 1.1, e: [0.4, -0.15, -1.3] }
|
|
349
|
+
]),
|
|
350
|
+
rotationTrack("rightLowerArm", d, [
|
|
351
|
+
{ t: 0, e: [0, 0, -0.3] },
|
|
352
|
+
{ t: 0.3, e: [0, -0.3, -0.8] },
|
|
353
|
+
{ t: 0.5, e: [0, -0.2, -0.9] },
|
|
354
|
+
{ t: 0.7, e: [0, -0.3, -0.8] },
|
|
355
|
+
{ t: 0.9, e: [0, -0.2, -0.9] },
|
|
356
|
+
{ t: 1.1, e: [0, -0.25, -0.7] }
|
|
357
|
+
]),
|
|
358
|
+
rotationTrack("head", d, [
|
|
359
|
+
{ t: 0, e: [0, 0, 0] },
|
|
360
|
+
{ t: 0.3, e: [0.05, 0.12, 0] },
|
|
361
|
+
{ t: 1.1, e: [0, 0.08, 0] }
|
|
362
|
+
])
|
|
363
|
+
], false, ["wave", "performance", "one-shot", "upper-body"]);
|
|
364
|
+
}
|
|
365
|
+
// --- sit: seated resting pose loop ---------------------------------------------------------------
|
|
366
|
+
function sitClip() {
|
|
367
|
+
const d = 3;
|
|
368
|
+
return clip("sit", d, [
|
|
369
|
+
translationTrack("hips", d, [
|
|
370
|
+
{ t: 0, p: [0, -0.45, 0] },
|
|
371
|
+
{ t: 1.5, p: [0, -0.42, 0] },
|
|
372
|
+
{ t: 3, p: [0, -0.45, 0] }
|
|
373
|
+
]),
|
|
374
|
+
rotationTrack("hips", d, [
|
|
375
|
+
{ t: 0, e: [0.35, 0, 0] },
|
|
376
|
+
{ t: 1.5, e: [0.38, 0, 0] },
|
|
377
|
+
{ t: 3, e: [0.35, 0, 0] }
|
|
378
|
+
]),
|
|
379
|
+
rotationTrack("leftUpperLeg", d, [
|
|
380
|
+
{ t: 0, e: [-1.1, 0, 0] },
|
|
381
|
+
{ t: 1.5, e: [-1.05, 0, 0] },
|
|
382
|
+
{ t: 3, e: [-1.1, 0, 0] }
|
|
383
|
+
]),
|
|
384
|
+
rotationTrack("rightUpperLeg", d, [
|
|
385
|
+
{ t: 0, e: [-1.1, 0, 0] },
|
|
386
|
+
{ t: 1.5, e: [-1.15, 0, 0] },
|
|
387
|
+
{ t: 3, e: [-1.1, 0, 0] }
|
|
388
|
+
]),
|
|
389
|
+
rotationTrack("leftLowerLeg", d, [
|
|
390
|
+
{ t: 0, e: [1.6, 0, 0] },
|
|
391
|
+
{ t: 1.5, e: [1.55, 0, 0] },
|
|
392
|
+
{ t: 3, e: [1.6, 0, 0] }
|
|
393
|
+
]),
|
|
394
|
+
rotationTrack("rightLowerLeg", d, [
|
|
395
|
+
{ t: 0, e: [1.6, 0, 0] },
|
|
396
|
+
{ t: 1.5, e: [1.65, 0, 0] },
|
|
397
|
+
{ t: 3, e: [1.6, 0, 0] }
|
|
398
|
+
]),
|
|
399
|
+
rotationTrack("spine", d, [
|
|
400
|
+
{ t: 0, e: [0.18, 0, 0] },
|
|
401
|
+
{ t: 1.5, e: [0.0, 0, 0] },
|
|
402
|
+
{ t: 3, e: [0.18, 0, 0] }
|
|
403
|
+
]),
|
|
404
|
+
rotationTrack("leftUpperArm", d, [
|
|
405
|
+
{ t: 0, e: [0.15, 0, 0.1] },
|
|
406
|
+
{ t: 1.5, e: [0.12, 0, 0.08] },
|
|
407
|
+
{ t: 3, e: [0.15, 0, 0.1] }
|
|
408
|
+
])
|
|
409
|
+
], true, ["sit", "performance", "loop", "full-body"]);
|
|
410
|
+
}
|
|
411
|
+
// --- shrug: one-shot shoulder shrug -------------------------------------------------------------
|
|
412
|
+
function shrugClip() {
|
|
413
|
+
const d = 0.9;
|
|
414
|
+
return clip("shrug", d, [
|
|
415
|
+
rotationTrack("leftUpperArm", d, [
|
|
416
|
+
{ t: 0, e: [0, 0, 0.2] },
|
|
417
|
+
{ t: 0.3, e: [0, 0, 0.9] },
|
|
418
|
+
{ t: 0.6, e: [0, 0, 0.3] }
|
|
419
|
+
]),
|
|
420
|
+
rotationTrack("rightUpperArm", d, [
|
|
421
|
+
{ t: 0, e: [0, 0, -0.2] },
|
|
422
|
+
{ t: 0.3, e: [0, 0, -0.9] },
|
|
423
|
+
{ t: 0.6, e: [0, 0, -0.3] }
|
|
424
|
+
]),
|
|
425
|
+
rotationTrack("spine", d, [
|
|
426
|
+
{ t: 0, e: [0, 0, 0] },
|
|
427
|
+
{ t: 0.3, e: [0.06, 0, 0] },
|
|
428
|
+
{ t: 0.6, e: [0, 0, 0] }
|
|
429
|
+
])
|
|
430
|
+
], false, ["shrug", "performance", "one-shot", "upper-body"]);
|
|
431
|
+
}
|
|
432
|
+
// --- cross_arms: standing arms-crossed pose loop ------------------------------------------------
|
|
433
|
+
function crossArmsClip() {
|
|
434
|
+
const d = 3;
|
|
435
|
+
return clip("cross_arms", d, [
|
|
436
|
+
rotationTrack("leftUpperArm", d, [
|
|
437
|
+
{ t: 0, e: [0, 0, 0.5] },
|
|
438
|
+
{ t: 1.5, e: [0, 0, 0.7] },
|
|
439
|
+
{ t: 3, e: [0, 0, 0.5] }
|
|
440
|
+
]),
|
|
441
|
+
rotationTrack("leftLowerArm", d, [
|
|
442
|
+
{ t: 0, e: [0, 0, 1.35] },
|
|
443
|
+
{ t: 1.5, e: [0, 0, 1.6] },
|
|
444
|
+
{ t: 3, e: [0, 0, 1.35] }
|
|
445
|
+
]),
|
|
446
|
+
rotationTrack("rightUpperArm", d, [
|
|
447
|
+
{ t: 0, e: [0, 0, -0.5] },
|
|
448
|
+
{ t: 1.5, e: [0, 0, -0.7] },
|
|
449
|
+
{ t: 3, e: [0, 0, -0.5] }
|
|
450
|
+
]),
|
|
451
|
+
rotationTrack("rightLowerArm", d, [
|
|
452
|
+
{ t: 0, e: [0, 0, -1.35] },
|
|
453
|
+
{ t: 1.5, e: [0, 0, -1.6] },
|
|
454
|
+
{ t: 3, e: [0, 0, -1.35] }
|
|
455
|
+
])
|
|
456
|
+
], true, ["cross_arms", "performance", "loop", "upper-body"]);
|
|
457
|
+
}
|
|
458
|
+
// --- salute: one-shot hand-to-forehead ----------------------------------------------------------
|
|
459
|
+
function saluteClip() {
|
|
460
|
+
const d = 1;
|
|
461
|
+
return clip("salute", d, [
|
|
462
|
+
rotationTrack("rightUpperArm", d, [
|
|
463
|
+
{ t: 0, e: [0, 0, -0.2] },
|
|
464
|
+
{ t: 0.35, e: [1.3, -0.5, -1.2] },
|
|
465
|
+
{ t: 0.7, e: [1.3, -0.5, -1.2] },
|
|
466
|
+
{ t: 1, e: [0.4, -0.2, -0.8] }
|
|
467
|
+
]),
|
|
468
|
+
rotationTrack("rightLowerArm", d, [
|
|
469
|
+
{ t: 0, e: [0, 0, -0.3] },
|
|
470
|
+
{ t: 0.35, e: [0, -0.4, -1.3] },
|
|
471
|
+
{ t: 0.7, e: [0, -0.4, -1.3] },
|
|
472
|
+
{ t: 1, e: [0, -0.2, -0.7] }
|
|
473
|
+
]),
|
|
474
|
+
rotationTrack("head", d, [
|
|
475
|
+
{ t: 0, e: [0, 0, 0] },
|
|
476
|
+
{ t: 0.35, e: [0.08, -0.1, 0] },
|
|
477
|
+
{ t: 1, e: [0, 0, 0] }
|
|
478
|
+
])
|
|
479
|
+
], false, ["salute", "performance", "one-shot", "upper-body"]);
|
|
480
|
+
}
|
|
481
|
+
// --- shake_head: one-shot side-to-side "no" -----------------------------------------------------
|
|
482
|
+
function shakeHeadClip() {
|
|
483
|
+
const d = 0.8;
|
|
484
|
+
return clip("shake_head", d, [
|
|
485
|
+
rotationTrack("head", d, [
|
|
486
|
+
{ t: 0, e: [0, 0, 0] },
|
|
487
|
+
{ t: 0.15, e: [0, -0.45, 0] },
|
|
488
|
+
{ t: 0.3, e: [0, 0.45, 0] },
|
|
489
|
+
{ t: 0.45, e: [0, -0.45, 0] },
|
|
490
|
+
{ t: 0.6, e: [0, 0.45, 0] },
|
|
491
|
+
{ t: 0.75, e: [0, 0, 0] }
|
|
492
|
+
]),
|
|
493
|
+
rotationTrack("neck", d, [
|
|
494
|
+
{ t: 0, e: [0, 0, 0] },
|
|
495
|
+
{ t: 0.15, e: [0, -0.25, 0] },
|
|
496
|
+
{ t: 0.3, e: [0, 0.25, 0] },
|
|
497
|
+
{ t: 0.45, e: [0, -0.25, 0] },
|
|
498
|
+
{ t: 0.6, e: [0, 0.25, 0] },
|
|
499
|
+
{ t: 0.75, e: [0, 0, 0] }
|
|
500
|
+
])
|
|
501
|
+
], false, ["shake_head", "performance", "one-shot"]);
|
|
502
|
+
}
|
|
334
503
|
/** Ordered list of all standard library clip definitions (idle first). */
|
|
335
504
|
export function createStandardHumanoidClipDefinitions() {
|
|
336
505
|
return [
|
|
@@ -339,13 +508,19 @@ export function createStandardHumanoidClipDefinitions() {
|
|
|
339
508
|
gestureClip(),
|
|
340
509
|
pointClip(),
|
|
341
510
|
nodClip(),
|
|
511
|
+
waveClip(),
|
|
342
512
|
walkClip(),
|
|
343
513
|
runClip(),
|
|
344
|
-
reactClip()
|
|
514
|
+
reactClip(),
|
|
515
|
+
sitClip(),
|
|
516
|
+
shrugClip(),
|
|
517
|
+
crossArmsClip(),
|
|
518
|
+
saluteClip(),
|
|
519
|
+
shakeHeadClip()
|
|
345
520
|
];
|
|
346
521
|
}
|
|
347
522
|
/**
|
|
348
|
-
* Shared, rig-neutral {@link AnimationClipRegistry} populated with the
|
|
523
|
+
* Shared, rig-neutral {@link AnimationClipRegistry} populated with the 14 standard performance clips
|
|
349
524
|
* authored on {@link STANDARD_LIBRARY_RIG} (canonical {@link HUMANOID_BONES}). The clips are COMPACT
|
|
350
525
|
* procedural keyframe loops/one-shots — real, samplable {@link AnimationTrack} data, not mocap and
|
|
351
526
|
* not placeholders. They give the studio a guaranteed, retargetable performance vocabulary even when
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"standardHumanoidClips.js","sourceRoot":"","sources":["../../../../../packages/animation/src/library/standardHumanoidClips.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"standardHumanoidClips.js","sourceRoot":"","sources":["../../../../../packages/animation/src/library/standardHumanoidClips.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aura3d/animation",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.4.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"types": "./dist/index.d.ts",
|
|
@@ -12,6 +12,6 @@
|
|
|
12
12
|
}
|
|
13
13
|
},
|
|
14
14
|
"dependencies": {
|
|
15
|
-
"@aura3d/math": "1.
|
|
15
|
+
"@aura3d/math": "1.4.0"
|
|
16
16
|
}
|
|
17
17
|
}
|
|
@@ -20,9 +20,15 @@ export const PERFORMANCE_GRAPH_PARAMETERS = {
|
|
|
20
20
|
gesture: "gesture",
|
|
21
21
|
point: "point",
|
|
22
22
|
nod: "nod",
|
|
23
|
+
wave: "wave",
|
|
23
24
|
react: "react",
|
|
24
25
|
walk: "isMoving",
|
|
25
|
-
run: "isRunning"
|
|
26
|
+
run: "isRunning",
|
|
27
|
+
sit: "sit",
|
|
28
|
+
shrug: "shrug",
|
|
29
|
+
cross_arms: "crossArms",
|
|
30
|
+
salute: "salute",
|
|
31
|
+
shake_head: "shakeHead"
|
|
26
32
|
} as const satisfies Partial<Record<StandardClipId, string>>;
|
|
27
33
|
|
|
28
34
|
function trigger(
|
|
@@ -53,15 +59,17 @@ function truthy(value: number | boolean | string | undefined): boolean {
|
|
|
53
59
|
}
|
|
54
60
|
|
|
55
61
|
/**
|
|
56
|
-
* State graph over the
|
|
62
|
+
* State graph over the 14 standard performance clip ids ({@link STANDARD_CLIP_IDS}) with `idle` as the
|
|
57
63
|
* default state. The studio requests a state per beat and the machine crossfades via the inertialized
|
|
58
64
|
* {@link AnimationStateMachine.stateBlend}.
|
|
59
65
|
*
|
|
60
66
|
* Topology:
|
|
61
|
-
* - `idle` (default) can go to
|
|
67
|
+
* - `idle` (default) can go to any performance or locomotion state.
|
|
62
68
|
* - `talk` is a held loop (while `isSpeaking`) that returns to idle when the flag clears; from talk
|
|
63
69
|
* you can still fire one-shots and start moving.
|
|
64
|
-
* - `gesture` / `point` / `nod` / `react`
|
|
70
|
+
* - `gesture` / `point` / `nod` / `wave` / `react` / `shrug` / `salute` / `shake_head` are one-shots
|
|
71
|
+
* that auto-return to idle on completion.
|
|
72
|
+
* - `sit` and `cross_arms` are held loops that return to idle when their flag clears.
|
|
65
73
|
* - `walk` <-> `run` <-> `idle` form the locomotion blend (`isMoving` / `isRunning`).
|
|
66
74
|
*
|
|
67
75
|
* Priorities: locomotion-stop/one-shots take precedence so a requested beat wins over the held loop.
|
|
@@ -77,20 +85,30 @@ export function createPerformanceStateGraph(options: PerformanceStateGraphOption
|
|
|
77
85
|
const toGesture = trigger("gesture", P.gesture, 80, true);
|
|
78
86
|
const toPoint = trigger("point", P.point, 80, true);
|
|
79
87
|
const toNod = trigger("nod", P.nod, 80, true);
|
|
88
|
+
const toWave = trigger("wave", P.wave, 80, true);
|
|
80
89
|
const toReact = trigger("react", P.react, 90, true);
|
|
90
|
+
const toShrug = trigger("shrug", P.shrug, 80, true);
|
|
91
|
+
const toSalute = trigger("salute", P.salute, 80, true);
|
|
92
|
+
const toShakeHead = trigger("shake_head", P.shake_head, 80, true);
|
|
93
|
+
const toSit = trigger("sit", P.sit, 35);
|
|
94
|
+
const toCrossArms = trigger("cross_arms", P.cross_arms, 35);
|
|
81
95
|
|
|
82
96
|
const states: readonly AnimationState[] = [
|
|
83
97
|
{
|
|
84
98
|
name: idle,
|
|
85
|
-
transitions: [toReact, toGesture, toPoint, toNod, toRun, toWalk, toTalk]
|
|
99
|
+
transitions: [toReact, toShakeHead, toSalute, toShrug, toGesture, toPoint, toNod, toWave, toCrossArms, toSit, toRun, toWalk, toTalk]
|
|
86
100
|
},
|
|
87
101
|
{
|
|
88
102
|
name: "talk",
|
|
89
103
|
transitions: [
|
|
90
104
|
toReact,
|
|
105
|
+
toShakeHead,
|
|
106
|
+
toSalute,
|
|
107
|
+
toShrug,
|
|
91
108
|
toGesture,
|
|
92
109
|
toPoint,
|
|
93
110
|
toNod,
|
|
111
|
+
toWave,
|
|
94
112
|
toRun,
|
|
95
113
|
toWalk,
|
|
96
114
|
trigger(idle, P.talk, 0, false, false)
|
|
@@ -99,7 +117,45 @@ export function createPerformanceStateGraph(options: PerformanceStateGraphOption
|
|
|
99
117
|
{ name: "gesture", duration: oneShot, oneShot: true, onComplete: idle },
|
|
100
118
|
{ name: "point", duration: oneShot, oneShot: true, onComplete: idle },
|
|
101
119
|
{ name: "nod", duration: oneShot, oneShot: true, onComplete: idle },
|
|
120
|
+
{ name: "wave", duration: oneShot, oneShot: true, onComplete: idle },
|
|
102
121
|
{ name: "react", duration: oneShot, oneShot: true, onComplete: idle },
|
|
122
|
+
{ name: "shrug", duration: oneShot, oneShot: true, onComplete: idle },
|
|
123
|
+
{ name: "salute", duration: oneShot, oneShot: true, onComplete: idle },
|
|
124
|
+
{ name: "shake_head", duration: oneShot, oneShot: true, onComplete: idle },
|
|
125
|
+
// Held loops: stay in the state while the flag is truthy, return to idle when it
|
|
126
|
+
// clears. One-shots/locomotion keep higher priority so a requested beat wins.
|
|
127
|
+
{
|
|
128
|
+
name: "sit",
|
|
129
|
+
transitions: [
|
|
130
|
+
toReact,
|
|
131
|
+
toShakeHead,
|
|
132
|
+
toSalute,
|
|
133
|
+
toShrug,
|
|
134
|
+
toGesture,
|
|
135
|
+
toPoint,
|
|
136
|
+
toNod,
|
|
137
|
+
toWave,
|
|
138
|
+
toRun,
|
|
139
|
+
toWalk,
|
|
140
|
+
trigger(idle, P.sit, 0, false, false)
|
|
141
|
+
]
|
|
142
|
+
},
|
|
143
|
+
{
|
|
144
|
+
name: "cross_arms",
|
|
145
|
+
transitions: [
|
|
146
|
+
toReact,
|
|
147
|
+
toShakeHead,
|
|
148
|
+
toSalute,
|
|
149
|
+
toShrug,
|
|
150
|
+
toGesture,
|
|
151
|
+
toPoint,
|
|
152
|
+
toNod,
|
|
153
|
+
toWave,
|
|
154
|
+
toRun,
|
|
155
|
+
toWalk,
|
|
156
|
+
trigger(idle, P.cross_arms, 0, false, false)
|
|
157
|
+
]
|
|
158
|
+
},
|
|
103
159
|
{
|
|
104
160
|
name: "walk",
|
|
105
161
|
transitions: [toRun, trigger(idle, P.walk, 0, false, false)]
|
|
@@ -7,10 +7,14 @@ import {
|
|
|
7
7
|
import { HUMANOID_BONES, type HumanoidBoneName, type HumanoidRigDefinition } from "../HumanoidRetargeting.js";
|
|
8
8
|
|
|
9
9
|
/**
|
|
10
|
-
* The STANDARD performance vocabulary (Phase 2.4). These
|
|
10
|
+
* The STANDARD performance vocabulary (Phase 2.4). These 14 ids are the contract the Animation
|
|
11
11
|
* Studio drives — every shared library, retarget target, and state graph speaks exactly these.
|
|
12
12
|
*/
|
|
13
|
-
export const STANDARD_CLIP_IDS = [
|
|
13
|
+
export const STANDARD_CLIP_IDS = [
|
|
14
|
+
"idle", "talk", "gesture", "point", "nod", "wave",
|
|
15
|
+
"walk", "run", "react",
|
|
16
|
+
"sit", "shrug", "cross_arms", "salute", "shake_head"
|
|
17
|
+
] as const;
|
|
14
18
|
export type StandardClipId = typeof STANDARD_CLIP_IDS[number];
|
|
15
19
|
|
|
16
20
|
/** Locomotion subset of the vocabulary (used by the locomotion blend / studio clip-map check). */
|
|
@@ -416,6 +420,213 @@ function runClip(): AnimationClipDefinition<StandardClipId> {
|
|
|
416
420
|
return legCycle("run", 0.6, 0.9, 1.1, 0.07);
|
|
417
421
|
}
|
|
418
422
|
|
|
423
|
+
// --- wave: one-shot greeting wave (right arm) ---------------------------------------------------
|
|
424
|
+
function waveClip(): AnimationClipDefinition<StandardClipId> {
|
|
425
|
+
const d = 1.2;
|
|
426
|
+
return clip(
|
|
427
|
+
"wave",
|
|
428
|
+
d,
|
|
429
|
+
[
|
|
430
|
+
rotationTrack("rightUpperArm", d, [
|
|
431
|
+
{ t: 0, e: [0, 0, -0.2] },
|
|
432
|
+
{ t: 0.3, e: [0.5, -0.2, -1.4] },
|
|
433
|
+
{ t: 0.5, e: [0.6, -0.1, -1.55] },
|
|
434
|
+
{ t: 0.7, e: [0.5, -0.2, -1.4] },
|
|
435
|
+
{ t: 0.9, e: [0.6, -0.1, -1.55] },
|
|
436
|
+
{ t: 1.1, e: [0.4, -0.15, -1.3] }
|
|
437
|
+
]),
|
|
438
|
+
rotationTrack("rightLowerArm", d, [
|
|
439
|
+
{ t: 0, e: [0, 0, -0.3] },
|
|
440
|
+
{ t: 0.3, e: [0, -0.3, -0.8] },
|
|
441
|
+
{ t: 0.5, e: [0, -0.2, -0.9] },
|
|
442
|
+
{ t: 0.7, e: [0, -0.3, -0.8] },
|
|
443
|
+
{ t: 0.9, e: [0, -0.2, -0.9] },
|
|
444
|
+
{ t: 1.1, e: [0, -0.25, -0.7] }
|
|
445
|
+
]),
|
|
446
|
+
rotationTrack("head", d, [
|
|
447
|
+
{ t: 0, e: [0, 0, 0] },
|
|
448
|
+
{ t: 0.3, e: [0.05, 0.12, 0] },
|
|
449
|
+
{ t: 1.1, e: [0, 0.08, 0] }
|
|
450
|
+
])
|
|
451
|
+
],
|
|
452
|
+
false,
|
|
453
|
+
["wave", "performance", "one-shot", "upper-body"]
|
|
454
|
+
);
|
|
455
|
+
}
|
|
456
|
+
|
|
457
|
+
// --- sit: seated resting pose loop ---------------------------------------------------------------
|
|
458
|
+
function sitClip(): AnimationClipDefinition<StandardClipId> {
|
|
459
|
+
const d = 3;
|
|
460
|
+
return clip(
|
|
461
|
+
"sit",
|
|
462
|
+
d,
|
|
463
|
+
[
|
|
464
|
+
translationTrack("hips", d, [
|
|
465
|
+
{ t: 0, p: [0, -0.45, 0] },
|
|
466
|
+
{ t: 1.5, p: [0, -0.42, 0] },
|
|
467
|
+
{ t: 3, p: [0, -0.45, 0] }
|
|
468
|
+
]),
|
|
469
|
+
rotationTrack("hips", d, [
|
|
470
|
+
{ t: 0, e: [0.35, 0, 0] },
|
|
471
|
+
{ t: 1.5, e: [0.38, 0, 0] },
|
|
472
|
+
{ t: 3, e: [0.35, 0, 0] }
|
|
473
|
+
]),
|
|
474
|
+
rotationTrack("leftUpperLeg", d, [
|
|
475
|
+
{ t: 0, e: [-1.1, 0, 0] },
|
|
476
|
+
{ t: 1.5, e: [-1.05, 0, 0] },
|
|
477
|
+
{ t: 3, e: [-1.1, 0, 0] }
|
|
478
|
+
]),
|
|
479
|
+
rotationTrack("rightUpperLeg", d, [
|
|
480
|
+
{ t: 0, e: [-1.1, 0, 0] },
|
|
481
|
+
{ t: 1.5, e: [-1.15, 0, 0] },
|
|
482
|
+
{ t: 3, e: [-1.1, 0, 0] }
|
|
483
|
+
]),
|
|
484
|
+
rotationTrack("leftLowerLeg", d, [
|
|
485
|
+
{ t: 0, e: [1.6, 0, 0] },
|
|
486
|
+
{ t: 1.5, e: [1.55, 0, 0] },
|
|
487
|
+
{ t: 3, e: [1.6, 0, 0] }
|
|
488
|
+
]),
|
|
489
|
+
rotationTrack("rightLowerLeg", d, [
|
|
490
|
+
{ t: 0, e: [1.6, 0, 0] },
|
|
491
|
+
{ t: 1.5, e: [1.65, 0, 0] },
|
|
492
|
+
{ t: 3, e: [1.6, 0, 0] }
|
|
493
|
+
]),
|
|
494
|
+
rotationTrack("spine", d, [
|
|
495
|
+
{ t: 0, e: [0.18, 0, 0] },
|
|
496
|
+
{ t: 1.5, e: [0.0, 0, 0] },
|
|
497
|
+
{ t: 3, e: [0.18, 0, 0] }
|
|
498
|
+
]),
|
|
499
|
+
rotationTrack("leftUpperArm", d, [
|
|
500
|
+
{ t: 0, e: [0.15, 0, 0.1] },
|
|
501
|
+
{ t: 1.5, e: [0.12, 0, 0.08] },
|
|
502
|
+
{ t: 3, e: [0.15, 0, 0.1] }
|
|
503
|
+
])
|
|
504
|
+
],
|
|
505
|
+
true,
|
|
506
|
+
["sit", "performance", "loop", "full-body"]
|
|
507
|
+
);
|
|
508
|
+
}
|
|
509
|
+
|
|
510
|
+
// --- shrug: one-shot shoulder shrug -------------------------------------------------------------
|
|
511
|
+
function shrugClip(): AnimationClipDefinition<StandardClipId> {
|
|
512
|
+
const d = 0.9;
|
|
513
|
+
return clip(
|
|
514
|
+
"shrug",
|
|
515
|
+
d,
|
|
516
|
+
[
|
|
517
|
+
rotationTrack("leftUpperArm", d, [
|
|
518
|
+
{ t: 0, e: [0, 0, 0.2] },
|
|
519
|
+
{ t: 0.3, e: [0, 0, 0.9] },
|
|
520
|
+
{ t: 0.6, e: [0, 0, 0.3] }
|
|
521
|
+
]),
|
|
522
|
+
rotationTrack("rightUpperArm", d, [
|
|
523
|
+
{ t: 0, e: [0, 0, -0.2] },
|
|
524
|
+
{ t: 0.3, e: [0, 0, -0.9] },
|
|
525
|
+
{ t: 0.6, e: [0, 0, -0.3] }
|
|
526
|
+
]),
|
|
527
|
+
rotationTrack("spine", d, [
|
|
528
|
+
{ t: 0, e: [0, 0, 0] },
|
|
529
|
+
{ t: 0.3, e: [0.06, 0, 0] },
|
|
530
|
+
{ t: 0.6, e: [0, 0, 0] }
|
|
531
|
+
])
|
|
532
|
+
],
|
|
533
|
+
false,
|
|
534
|
+
["shrug", "performance", "one-shot", "upper-body"]
|
|
535
|
+
);
|
|
536
|
+
}
|
|
537
|
+
|
|
538
|
+
// --- cross_arms: standing arms-crossed pose loop ------------------------------------------------
|
|
539
|
+
function crossArmsClip(): AnimationClipDefinition<StandardClipId> {
|
|
540
|
+
const d = 3;
|
|
541
|
+
return clip(
|
|
542
|
+
"cross_arms",
|
|
543
|
+
d,
|
|
544
|
+
[
|
|
545
|
+
rotationTrack("leftUpperArm", d, [
|
|
546
|
+
{ t: 0, e: [0, 0, 0.5] },
|
|
547
|
+
{ t: 1.5, e: [0, 0, 0.7] },
|
|
548
|
+
{ t: 3, e: [0, 0, 0.5] }
|
|
549
|
+
]),
|
|
550
|
+
rotationTrack("leftLowerArm", d, [
|
|
551
|
+
{ t: 0, e: [0, 0, 1.35] },
|
|
552
|
+
{ t: 1.5, e: [0, 0, 1.6] },
|
|
553
|
+
{ t: 3, e: [0, 0, 1.35] }
|
|
554
|
+
]),
|
|
555
|
+
rotationTrack("rightUpperArm", d, [
|
|
556
|
+
{ t: 0, e: [0, 0, -0.5] },
|
|
557
|
+
{ t: 1.5, e: [0, 0, -0.7] },
|
|
558
|
+
{ t: 3, e: [0, 0, -0.5] }
|
|
559
|
+
]),
|
|
560
|
+
rotationTrack("rightLowerArm", d, [
|
|
561
|
+
{ t: 0, e: [0, 0, -1.35] },
|
|
562
|
+
{ t: 1.5, e: [0, 0, -1.6] },
|
|
563
|
+
{ t: 3, e: [0, 0, -1.35] }
|
|
564
|
+
])
|
|
565
|
+
],
|
|
566
|
+
true,
|
|
567
|
+
["cross_arms", "performance", "loop", "upper-body"]
|
|
568
|
+
);
|
|
569
|
+
}
|
|
570
|
+
|
|
571
|
+
// --- salute: one-shot hand-to-forehead ----------------------------------------------------------
|
|
572
|
+
function saluteClip(): AnimationClipDefinition<StandardClipId> {
|
|
573
|
+
const d = 1;
|
|
574
|
+
return clip(
|
|
575
|
+
"salute",
|
|
576
|
+
d,
|
|
577
|
+
[
|
|
578
|
+
rotationTrack("rightUpperArm", d, [
|
|
579
|
+
{ t: 0, e: [0, 0, -0.2] },
|
|
580
|
+
{ t: 0.35, e: [1.3, -0.5, -1.2] },
|
|
581
|
+
{ t: 0.7, e: [1.3, -0.5, -1.2] },
|
|
582
|
+
{ t: 1, e: [0.4, -0.2, -0.8] }
|
|
583
|
+
]),
|
|
584
|
+
rotationTrack("rightLowerArm", d, [
|
|
585
|
+
{ t: 0, e: [0, 0, -0.3] },
|
|
586
|
+
{ t: 0.35, e: [0, -0.4, -1.3] },
|
|
587
|
+
{ t: 0.7, e: [0, -0.4, -1.3] },
|
|
588
|
+
{ t: 1, e: [0, -0.2, -0.7] }
|
|
589
|
+
]),
|
|
590
|
+
rotationTrack("head", d, [
|
|
591
|
+
{ t: 0, e: [0, 0, 0] },
|
|
592
|
+
{ t: 0.35, e: [0.08, -0.1, 0] },
|
|
593
|
+
{ t: 1, e: [0, 0, 0] }
|
|
594
|
+
])
|
|
595
|
+
],
|
|
596
|
+
false,
|
|
597
|
+
["salute", "performance", "one-shot", "upper-body"]
|
|
598
|
+
);
|
|
599
|
+
}
|
|
600
|
+
|
|
601
|
+
// --- shake_head: one-shot side-to-side "no" -----------------------------------------------------
|
|
602
|
+
function shakeHeadClip(): AnimationClipDefinition<StandardClipId> {
|
|
603
|
+
const d = 0.8;
|
|
604
|
+
return clip(
|
|
605
|
+
"shake_head",
|
|
606
|
+
d,
|
|
607
|
+
[
|
|
608
|
+
rotationTrack("head", d, [
|
|
609
|
+
{ t: 0, e: [0, 0, 0] },
|
|
610
|
+
{ t: 0.15, e: [0, -0.45, 0] },
|
|
611
|
+
{ t: 0.3, e: [0, 0.45, 0] },
|
|
612
|
+
{ t: 0.45, e: [0, -0.45, 0] },
|
|
613
|
+
{ t: 0.6, e: [0, 0.45, 0] },
|
|
614
|
+
{ t: 0.75, e: [0, 0, 0] }
|
|
615
|
+
]),
|
|
616
|
+
rotationTrack("neck", d, [
|
|
617
|
+
{ t: 0, e: [0, 0, 0] },
|
|
618
|
+
{ t: 0.15, e: [0, -0.25, 0] },
|
|
619
|
+
{ t: 0.3, e: [0, 0.25, 0] },
|
|
620
|
+
{ t: 0.45, e: [0, -0.25, 0] },
|
|
621
|
+
{ t: 0.6, e: [0, 0.25, 0] },
|
|
622
|
+
{ t: 0.75, e: [0, 0, 0] }
|
|
623
|
+
])
|
|
624
|
+
],
|
|
625
|
+
false,
|
|
626
|
+
["shake_head", "performance", "one-shot"]
|
|
627
|
+
);
|
|
628
|
+
}
|
|
629
|
+
|
|
419
630
|
/** Ordered list of all standard library clip definitions (idle first). */
|
|
420
631
|
export function createStandardHumanoidClipDefinitions(): readonly AnimationClipDefinition<StandardClipId>[] {
|
|
421
632
|
return [
|
|
@@ -424,14 +635,20 @@ export function createStandardHumanoidClipDefinitions(): readonly AnimationClipD
|
|
|
424
635
|
gestureClip(),
|
|
425
636
|
pointClip(),
|
|
426
637
|
nodClip(),
|
|
638
|
+
waveClip(),
|
|
427
639
|
walkClip(),
|
|
428
640
|
runClip(),
|
|
429
|
-
reactClip()
|
|
641
|
+
reactClip(),
|
|
642
|
+
sitClip(),
|
|
643
|
+
shrugClip(),
|
|
644
|
+
crossArmsClip(),
|
|
645
|
+
saluteClip(),
|
|
646
|
+
shakeHeadClip()
|
|
430
647
|
];
|
|
431
648
|
}
|
|
432
649
|
|
|
433
650
|
/**
|
|
434
|
-
* Shared, rig-neutral {@link AnimationClipRegistry} populated with the
|
|
651
|
+
* Shared, rig-neutral {@link AnimationClipRegistry} populated with the 14 standard performance clips
|
|
435
652
|
* authored on {@link STANDARD_LIBRARY_RIG} (canonical {@link HUMANOID_BONES}). The clips are COMPACT
|
|
436
653
|
* procedural keyframe loops/one-shots — real, samplable {@link AnimationTrack} data, not mocap and
|
|
437
654
|
* not placeholders. They give the studio a guaranteed, retargetable performance vocabulary even when
|