@fungi.computer/sprite-zdog 0.0.0-stage → 0.0.1
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/LICENSE +21 -0
- package/README.md +125 -2
- package/dist/agent-proof/moth.d.ts +50 -0
- package/dist/agent-proof/moth.js +52 -0
- package/dist/author.d.ts +217 -0
- package/dist/author.js +372 -0
- package/dist/avatar.d.ts +69 -0
- package/dist/avatar.js +40 -0
- package/dist/builtins/base-face.d.ts +290 -0
- package/dist/builtins/base-face.js +615 -0
- package/dist/builtins/base.d.ts +331 -0
- package/dist/builtins/base.js +579 -0
- package/dist/builtins/burger-input.d.ts +310 -0
- package/dist/builtins/burger-input.js +517 -0
- package/dist/builtins/burger.d.ts +305 -0
- package/dist/builtins/burger.js +4 -0
- package/dist/builtins/cat-input.d.ts +316 -0
- package/dist/builtins/cat-input.js +255 -0
- package/dist/builtins/cat.d.ts +311 -0
- package/dist/builtins/cat.js +4 -0
- package/dist/builtins/index.d.ts +4 -0
- package/dist/builtins/index.js +4 -0
- package/dist/builtins/mushroom-input.d.ts +314 -0
- package/dist/builtins/mushroom-input.js +94 -0
- package/dist/builtins/mushroom.d.ts +310 -0
- package/dist/builtins/mushroom.js +4 -0
- package/dist/burger.d.ts +9 -0
- package/dist/burger.js +15 -0
- package/dist/cat.d.ts +9 -0
- package/dist/cat.js +15 -0
- package/dist/catalog.d.ts +3 -0
- package/dist/catalog.js +63 -0
- package/dist/document.d.ts +444 -0
- package/dist/document.js +204 -0
- package/dist/index.d.ts +10 -0
- package/dist/index.js +10 -0
- package/dist/internal.d.ts +41 -0
- package/dist/internal.js +21 -0
- package/dist/mushroom.character.json +1930 -0
- package/dist/mushroom.d.ts +4 -0
- package/dist/mushroom.js +9 -0
- package/dist/palette.d.ts +3 -0
- package/dist/palette.js +5 -0
- package/dist/portable.d.ts +4 -0
- package/dist/portable.js +61 -0
- package/dist/renderer.d.ts +4 -0
- package/dist/renderer.js +106 -0
- package/dist/zdog-runtime.d.ts +21 -0
- package/dist/zdog-runtime.js +622 -0
- package/package.json +112 -3
|
@@ -0,0 +1,314 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The mushroom's authoring input, kept apart from its `defineSprite` call so
|
|
3
|
+
* the avatar catalog can import it without building the scene at module
|
|
4
|
+
* evaluation (a Worker cold-start cost). `./mushroom.js` is the definition.
|
|
5
|
+
*/
|
|
6
|
+
export declare const mushroomInput: {
|
|
7
|
+
apiVersion: 1;
|
|
8
|
+
name: string;
|
|
9
|
+
palette: {
|
|
10
|
+
body: string;
|
|
11
|
+
cap: string;
|
|
12
|
+
capSpot: string;
|
|
13
|
+
eye: string;
|
|
14
|
+
mouth: string;
|
|
15
|
+
blush: string;
|
|
16
|
+
dead: string;
|
|
17
|
+
deadTongue: string;
|
|
18
|
+
tongue: string;
|
|
19
|
+
sweat: string;
|
|
20
|
+
white: string;
|
|
21
|
+
};
|
|
22
|
+
build({ scene, color }: import("../author.js").AuthorContext): {
|
|
23
|
+
root: import("../author.js").SceneNode;
|
|
24
|
+
variants: {
|
|
25
|
+
eyes: Record<string, import("../author.js").SceneNode>;
|
|
26
|
+
mouth: Record<string, import("../author.js").SceneNode>;
|
|
27
|
+
blush: Record<string, import("../author.js").SceneNode>;
|
|
28
|
+
};
|
|
29
|
+
};
|
|
30
|
+
expressions: {
|
|
31
|
+
readonly angry: {
|
|
32
|
+
readonly variants: {
|
|
33
|
+
readonly eyes: "angry";
|
|
34
|
+
readonly mouth: "angry";
|
|
35
|
+
readonly blush: "off";
|
|
36
|
+
};
|
|
37
|
+
readonly motion: {
|
|
38
|
+
readonly target: "root";
|
|
39
|
+
readonly translate: {
|
|
40
|
+
readonly x: 1;
|
|
41
|
+
readonly y: 0;
|
|
42
|
+
};
|
|
43
|
+
readonly durationMs: 150;
|
|
44
|
+
readonly repeat: "none";
|
|
45
|
+
};
|
|
46
|
+
};
|
|
47
|
+
readonly confused: {
|
|
48
|
+
readonly variants: {
|
|
49
|
+
readonly eyes: "confused";
|
|
50
|
+
readonly mouth: "normal";
|
|
51
|
+
readonly blush: "off";
|
|
52
|
+
};
|
|
53
|
+
readonly motion: {
|
|
54
|
+
readonly target: "root";
|
|
55
|
+
readonly translate: {
|
|
56
|
+
readonly x: 0;
|
|
57
|
+
readonly y: 0.5;
|
|
58
|
+
};
|
|
59
|
+
readonly durationMs: 150;
|
|
60
|
+
readonly repeat: "none";
|
|
61
|
+
};
|
|
62
|
+
};
|
|
63
|
+
readonly cute: {
|
|
64
|
+
readonly variants: {
|
|
65
|
+
readonly eyes: "cute";
|
|
66
|
+
readonly mouth: "happy";
|
|
67
|
+
readonly blush: "big";
|
|
68
|
+
};
|
|
69
|
+
readonly motion: {
|
|
70
|
+
readonly target: "root";
|
|
71
|
+
readonly translate: {
|
|
72
|
+
readonly x: 0;
|
|
73
|
+
readonly y: -2.5;
|
|
74
|
+
};
|
|
75
|
+
readonly durationMs: 150;
|
|
76
|
+
readonly repeat: "none";
|
|
77
|
+
};
|
|
78
|
+
};
|
|
79
|
+
readonly dead: {
|
|
80
|
+
readonly variants: {
|
|
81
|
+
readonly eyes: "dead";
|
|
82
|
+
readonly mouth: "dead";
|
|
83
|
+
readonly blush: "off";
|
|
84
|
+
};
|
|
85
|
+
};
|
|
86
|
+
readonly happy: {
|
|
87
|
+
readonly variants: {
|
|
88
|
+
readonly eyes: "happy";
|
|
89
|
+
readonly mouth: "happy";
|
|
90
|
+
readonly blush: "medium";
|
|
91
|
+
};
|
|
92
|
+
readonly motion: {
|
|
93
|
+
readonly target: "root";
|
|
94
|
+
readonly translate: {
|
|
95
|
+
readonly x: 0;
|
|
96
|
+
readonly y: -2;
|
|
97
|
+
};
|
|
98
|
+
readonly durationMs: 150;
|
|
99
|
+
readonly repeat: "none";
|
|
100
|
+
};
|
|
101
|
+
};
|
|
102
|
+
readonly nervous: {
|
|
103
|
+
readonly variants: {
|
|
104
|
+
readonly eyes: "nervous";
|
|
105
|
+
readonly mouth: "worried";
|
|
106
|
+
readonly blush: "off";
|
|
107
|
+
};
|
|
108
|
+
readonly motion: {
|
|
109
|
+
readonly target: "root";
|
|
110
|
+
readonly translate: {
|
|
111
|
+
readonly x: -0.5;
|
|
112
|
+
readonly y: -1;
|
|
113
|
+
};
|
|
114
|
+
readonly durationMs: 150;
|
|
115
|
+
readonly repeat: "none";
|
|
116
|
+
};
|
|
117
|
+
};
|
|
118
|
+
readonly normal: {
|
|
119
|
+
readonly variants: {
|
|
120
|
+
readonly eyes: "normal";
|
|
121
|
+
readonly mouth: "normal";
|
|
122
|
+
readonly blush: "off";
|
|
123
|
+
};
|
|
124
|
+
readonly motion: {
|
|
125
|
+
readonly target: "root";
|
|
126
|
+
readonly translate: {
|
|
127
|
+
readonly x: 0;
|
|
128
|
+
readonly y: 1;
|
|
129
|
+
};
|
|
130
|
+
readonly durationMs: 150;
|
|
131
|
+
readonly repeat: "none";
|
|
132
|
+
};
|
|
133
|
+
};
|
|
134
|
+
readonly pleading: {
|
|
135
|
+
readonly variants: {
|
|
136
|
+
readonly eyes: "cute";
|
|
137
|
+
readonly mouth: "pout";
|
|
138
|
+
readonly blush: "medium";
|
|
139
|
+
};
|
|
140
|
+
readonly motion: {
|
|
141
|
+
readonly target: "root";
|
|
142
|
+
readonly translate: {
|
|
143
|
+
readonly x: 0;
|
|
144
|
+
readonly y: -1;
|
|
145
|
+
};
|
|
146
|
+
readonly durationMs: 150;
|
|
147
|
+
readonly repeat: "none";
|
|
148
|
+
};
|
|
149
|
+
};
|
|
150
|
+
readonly sad: {
|
|
151
|
+
readonly variants: {
|
|
152
|
+
readonly eyes: "sad";
|
|
153
|
+
readonly mouth: "sad";
|
|
154
|
+
readonly blush: "off";
|
|
155
|
+
};
|
|
156
|
+
readonly motion: {
|
|
157
|
+
readonly target: "root";
|
|
158
|
+
readonly translate: {
|
|
159
|
+
readonly x: 0;
|
|
160
|
+
readonly y: 2;
|
|
161
|
+
};
|
|
162
|
+
readonly durationMs: 150;
|
|
163
|
+
readonly repeat: "none";
|
|
164
|
+
};
|
|
165
|
+
};
|
|
166
|
+
readonly shy: {
|
|
167
|
+
readonly variants: {
|
|
168
|
+
readonly eyes: "shy";
|
|
169
|
+
readonly mouth: "small";
|
|
170
|
+
readonly blush: "small";
|
|
171
|
+
};
|
|
172
|
+
readonly motion: {
|
|
173
|
+
readonly target: "root";
|
|
174
|
+
readonly translate: {
|
|
175
|
+
readonly x: 0;
|
|
176
|
+
readonly y: 1.5;
|
|
177
|
+
};
|
|
178
|
+
readonly durationMs: 150;
|
|
179
|
+
readonly repeat: "none";
|
|
180
|
+
};
|
|
181
|
+
};
|
|
182
|
+
readonly sleepy: {
|
|
183
|
+
readonly variants: {
|
|
184
|
+
readonly eyes: "sleepy";
|
|
185
|
+
readonly mouth: "small";
|
|
186
|
+
readonly blush: "off";
|
|
187
|
+
};
|
|
188
|
+
readonly motion: {
|
|
189
|
+
readonly target: "root";
|
|
190
|
+
readonly translate: {
|
|
191
|
+
readonly x: 0;
|
|
192
|
+
readonly y: 2;
|
|
193
|
+
};
|
|
194
|
+
readonly durationMs: 150;
|
|
195
|
+
readonly repeat: "none";
|
|
196
|
+
};
|
|
197
|
+
};
|
|
198
|
+
readonly surprised: {
|
|
199
|
+
readonly variants: {
|
|
200
|
+
readonly eyes: "surprised";
|
|
201
|
+
readonly mouth: "surprised";
|
|
202
|
+
readonly blush: "off";
|
|
203
|
+
};
|
|
204
|
+
readonly motion: {
|
|
205
|
+
readonly target: "root";
|
|
206
|
+
readonly translate: {
|
|
207
|
+
readonly x: 0;
|
|
208
|
+
readonly y: -3;
|
|
209
|
+
};
|
|
210
|
+
readonly durationMs: 150;
|
|
211
|
+
readonly repeat: "none";
|
|
212
|
+
};
|
|
213
|
+
};
|
|
214
|
+
readonly wink: {
|
|
215
|
+
readonly variants: {
|
|
216
|
+
readonly mouth: "happy";
|
|
217
|
+
readonly blush: "small";
|
|
218
|
+
};
|
|
219
|
+
readonly variantChoices: {
|
|
220
|
+
readonly eyes: readonly ["wink.left", "wink.right"];
|
|
221
|
+
};
|
|
222
|
+
readonly motion: {
|
|
223
|
+
readonly target: "root";
|
|
224
|
+
readonly translate: {
|
|
225
|
+
readonly x: 0;
|
|
226
|
+
readonly y: -1.5;
|
|
227
|
+
};
|
|
228
|
+
readonly durationMs: 150;
|
|
229
|
+
readonly repeat: "none";
|
|
230
|
+
};
|
|
231
|
+
};
|
|
232
|
+
};
|
|
233
|
+
activities: {
|
|
234
|
+
error: {
|
|
235
|
+
geometry: {
|
|
236
|
+
eyes: string;
|
|
237
|
+
mouth: string;
|
|
238
|
+
};
|
|
239
|
+
motion: {
|
|
240
|
+
target: string;
|
|
241
|
+
rotate: {
|
|
242
|
+
x: number;
|
|
243
|
+
};
|
|
244
|
+
durationMs: number;
|
|
245
|
+
repeat: "none";
|
|
246
|
+
};
|
|
247
|
+
mouseInfluence: number;
|
|
248
|
+
};
|
|
249
|
+
idle: {
|
|
250
|
+
readonly motion: {
|
|
251
|
+
readonly target: "root";
|
|
252
|
+
readonly translate: {
|
|
253
|
+
readonly y: 0.5;
|
|
254
|
+
};
|
|
255
|
+
readonly durationMs: 2000;
|
|
256
|
+
readonly repeat: "yoyo";
|
|
257
|
+
};
|
|
258
|
+
readonly mouseInfluence: 1;
|
|
259
|
+
};
|
|
260
|
+
listening: {
|
|
261
|
+
readonly motion: {
|
|
262
|
+
readonly target: "root";
|
|
263
|
+
readonly rotate: {
|
|
264
|
+
readonly x: -0.2;
|
|
265
|
+
};
|
|
266
|
+
readonly durationMs: 300;
|
|
267
|
+
readonly repeat: "yoyo";
|
|
268
|
+
};
|
|
269
|
+
readonly mouseInfluence: 0.3;
|
|
270
|
+
};
|
|
271
|
+
processing: {
|
|
272
|
+
readonly mouseInfluence: 0.2;
|
|
273
|
+
};
|
|
274
|
+
speaking: {
|
|
275
|
+
readonly motion: {
|
|
276
|
+
readonly target: "root";
|
|
277
|
+
readonly translate: {
|
|
278
|
+
readonly y: 0.5;
|
|
279
|
+
};
|
|
280
|
+
readonly durationMs: 1500;
|
|
281
|
+
readonly repeat: "yoyo";
|
|
282
|
+
};
|
|
283
|
+
readonly mouseInfluence: 0;
|
|
284
|
+
readonly mouthCycle: readonly [{
|
|
285
|
+
readonly durationMs: 100;
|
|
286
|
+
readonly mouth: "open";
|
|
287
|
+
}, {
|
|
288
|
+
readonly durationMs: 150;
|
|
289
|
+
readonly mouth: "base";
|
|
290
|
+
}, {
|
|
291
|
+
readonly durationMs: 100;
|
|
292
|
+
readonly mouth: "open";
|
|
293
|
+
}, {
|
|
294
|
+
readonly durationMs: 200;
|
|
295
|
+
readonly mouth: "base";
|
|
296
|
+
}];
|
|
297
|
+
};
|
|
298
|
+
thinking: {
|
|
299
|
+
readonly motion: {
|
|
300
|
+
readonly target: "root";
|
|
301
|
+
readonly rotate: {
|
|
302
|
+
readonly z: 0.1;
|
|
303
|
+
};
|
|
304
|
+
readonly durationMs: 800;
|
|
305
|
+
readonly repeat: "yoyo";
|
|
306
|
+
};
|
|
307
|
+
readonly mouseInfluence: 0;
|
|
308
|
+
};
|
|
309
|
+
};
|
|
310
|
+
defaultPresentation: {
|
|
311
|
+
activity: string;
|
|
312
|
+
expression: string;
|
|
313
|
+
};
|
|
314
|
+
};
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import { baseActivities, baseExpressions, buildBaseFace } from "./base-face.js";
|
|
2
|
+
/**
|
|
3
|
+
* The mushroom's authoring input, kept apart from its `defineSprite` call so
|
|
4
|
+
* the avatar catalog can import it without building the scene at module
|
|
5
|
+
* evaluation (a Worker cold-start cost). `./mushroom.js` is the definition.
|
|
6
|
+
*/
|
|
7
|
+
export const mushroomInput = {
|
|
8
|
+
apiVersion: 1,
|
|
9
|
+
name: "mushroom",
|
|
10
|
+
palette: {
|
|
11
|
+
body: "#fff7e4",
|
|
12
|
+
cap: "#f98284",
|
|
13
|
+
capSpot: "#ffe6c6",
|
|
14
|
+
eye: "#28282e",
|
|
15
|
+
mouth: "#28282e",
|
|
16
|
+
blush: "#feaae4",
|
|
17
|
+
dead: "#6c5671",
|
|
18
|
+
deadTongue: "#d9c8bf",
|
|
19
|
+
tongue: "#f98284",
|
|
20
|
+
sweat: "#accce4",
|
|
21
|
+
white: "#ffffff",
|
|
22
|
+
},
|
|
23
|
+
build({ scene, color }) {
|
|
24
|
+
const root = scene.group({ name: "root" });
|
|
25
|
+
const body = scene.group({ parent: root, name: "body", updateSort: true });
|
|
26
|
+
scene.hemisphere({
|
|
27
|
+
parent: body,
|
|
28
|
+
name: "body.hemisphere",
|
|
29
|
+
backface: color("cap"),
|
|
30
|
+
color: color("body"),
|
|
31
|
+
diameter: 32,
|
|
32
|
+
rotate: { x: (3 * Math.PI) / 2 },
|
|
33
|
+
stroke: false,
|
|
34
|
+
translate: { y: 2 },
|
|
35
|
+
});
|
|
36
|
+
const cap = scene.hemisphere({
|
|
37
|
+
parent: body,
|
|
38
|
+
name: "cap.hemisphere",
|
|
39
|
+
backface: color("capSpot"),
|
|
40
|
+
color: color("cap"),
|
|
41
|
+
diameter: 42,
|
|
42
|
+
rotate: { x: Math.PI / 2 },
|
|
43
|
+
stroke: false,
|
|
44
|
+
translate: { y: 2 },
|
|
45
|
+
});
|
|
46
|
+
scene.path({
|
|
47
|
+
parent: cap,
|
|
48
|
+
name: "cap.spot.front",
|
|
49
|
+
path: [{ x: 0, y: 0 }],
|
|
50
|
+
color: color("capSpot"),
|
|
51
|
+
stroke: 12,
|
|
52
|
+
translate: { x: -8, y: 8, z: 12 },
|
|
53
|
+
});
|
|
54
|
+
scene.path({
|
|
55
|
+
parent: cap,
|
|
56
|
+
name: "cap.spot.top",
|
|
57
|
+
path: [{ x: 0, y: 0 }],
|
|
58
|
+
color: color("capSpot"),
|
|
59
|
+
stroke: 18,
|
|
60
|
+
translate: { x: 8, y: -4, z: 13 },
|
|
61
|
+
});
|
|
62
|
+
const face = scene.group({
|
|
63
|
+
parent: body,
|
|
64
|
+
name: "face",
|
|
65
|
+
translate: { y: 7, z: 8 },
|
|
66
|
+
});
|
|
67
|
+
const variants = buildBaseFace(scene, color, face, {
|
|
68
|
+
blushMode: "medium-alias",
|
|
69
|
+
});
|
|
70
|
+
return {
|
|
71
|
+
root,
|
|
72
|
+
variants: {
|
|
73
|
+
eyes: variants.eyes,
|
|
74
|
+
mouth: variants.mouth,
|
|
75
|
+
blush: variants.blush,
|
|
76
|
+
},
|
|
77
|
+
};
|
|
78
|
+
},
|
|
79
|
+
expressions: baseExpressions,
|
|
80
|
+
activities: {
|
|
81
|
+
...baseActivities,
|
|
82
|
+
error: {
|
|
83
|
+
geometry: { eyes: "dead", mouth: "dead" },
|
|
84
|
+
motion: {
|
|
85
|
+
target: "root",
|
|
86
|
+
rotate: { x: 0.9 },
|
|
87
|
+
durationMs: 600,
|
|
88
|
+
repeat: "none",
|
|
89
|
+
},
|
|
90
|
+
mouseInfluence: 0.1,
|
|
91
|
+
},
|
|
92
|
+
},
|
|
93
|
+
defaultPresentation: { activity: "idle", expression: "sleepy" },
|
|
94
|
+
};
|
|
@@ -0,0 +1,310 @@
|
|
|
1
|
+
declare const mushroom: Readonly<{
|
|
2
|
+
apiVersion: 1;
|
|
3
|
+
name: string;
|
|
4
|
+
palette: {
|
|
5
|
+
body: string;
|
|
6
|
+
cap: string;
|
|
7
|
+
capSpot: string;
|
|
8
|
+
eye: string;
|
|
9
|
+
mouth: string;
|
|
10
|
+
blush: string;
|
|
11
|
+
dead: string;
|
|
12
|
+
deadTongue: string;
|
|
13
|
+
tongue: string;
|
|
14
|
+
sweat: string;
|
|
15
|
+
white: string;
|
|
16
|
+
};
|
|
17
|
+
build({ scene, color }: import("../author.js").AuthorContext): {
|
|
18
|
+
root: import("../author.js").SceneNode;
|
|
19
|
+
variants: {
|
|
20
|
+
eyes: Record<string, import("../author.js").SceneNode>;
|
|
21
|
+
mouth: Record<string, import("../author.js").SceneNode>;
|
|
22
|
+
blush: Record<string, import("../author.js").SceneNode>;
|
|
23
|
+
};
|
|
24
|
+
};
|
|
25
|
+
expressions: {
|
|
26
|
+
readonly angry: {
|
|
27
|
+
readonly variants: {
|
|
28
|
+
readonly eyes: "angry";
|
|
29
|
+
readonly mouth: "angry";
|
|
30
|
+
readonly blush: "off";
|
|
31
|
+
};
|
|
32
|
+
readonly motion: {
|
|
33
|
+
readonly target: "root";
|
|
34
|
+
readonly translate: {
|
|
35
|
+
readonly x: 1;
|
|
36
|
+
readonly y: 0;
|
|
37
|
+
};
|
|
38
|
+
readonly durationMs: 150;
|
|
39
|
+
readonly repeat: "none";
|
|
40
|
+
};
|
|
41
|
+
};
|
|
42
|
+
readonly confused: {
|
|
43
|
+
readonly variants: {
|
|
44
|
+
readonly eyes: "confused";
|
|
45
|
+
readonly mouth: "normal";
|
|
46
|
+
readonly blush: "off";
|
|
47
|
+
};
|
|
48
|
+
readonly motion: {
|
|
49
|
+
readonly target: "root";
|
|
50
|
+
readonly translate: {
|
|
51
|
+
readonly x: 0;
|
|
52
|
+
readonly y: 0.5;
|
|
53
|
+
};
|
|
54
|
+
readonly durationMs: 150;
|
|
55
|
+
readonly repeat: "none";
|
|
56
|
+
};
|
|
57
|
+
};
|
|
58
|
+
readonly cute: {
|
|
59
|
+
readonly variants: {
|
|
60
|
+
readonly eyes: "cute";
|
|
61
|
+
readonly mouth: "happy";
|
|
62
|
+
readonly blush: "big";
|
|
63
|
+
};
|
|
64
|
+
readonly motion: {
|
|
65
|
+
readonly target: "root";
|
|
66
|
+
readonly translate: {
|
|
67
|
+
readonly x: 0;
|
|
68
|
+
readonly y: -2.5;
|
|
69
|
+
};
|
|
70
|
+
readonly durationMs: 150;
|
|
71
|
+
readonly repeat: "none";
|
|
72
|
+
};
|
|
73
|
+
};
|
|
74
|
+
readonly dead: {
|
|
75
|
+
readonly variants: {
|
|
76
|
+
readonly eyes: "dead";
|
|
77
|
+
readonly mouth: "dead";
|
|
78
|
+
readonly blush: "off";
|
|
79
|
+
};
|
|
80
|
+
};
|
|
81
|
+
readonly happy: {
|
|
82
|
+
readonly variants: {
|
|
83
|
+
readonly eyes: "happy";
|
|
84
|
+
readonly mouth: "happy";
|
|
85
|
+
readonly blush: "medium";
|
|
86
|
+
};
|
|
87
|
+
readonly motion: {
|
|
88
|
+
readonly target: "root";
|
|
89
|
+
readonly translate: {
|
|
90
|
+
readonly x: 0;
|
|
91
|
+
readonly y: -2;
|
|
92
|
+
};
|
|
93
|
+
readonly durationMs: 150;
|
|
94
|
+
readonly repeat: "none";
|
|
95
|
+
};
|
|
96
|
+
};
|
|
97
|
+
readonly nervous: {
|
|
98
|
+
readonly variants: {
|
|
99
|
+
readonly eyes: "nervous";
|
|
100
|
+
readonly mouth: "worried";
|
|
101
|
+
readonly blush: "off";
|
|
102
|
+
};
|
|
103
|
+
readonly motion: {
|
|
104
|
+
readonly target: "root";
|
|
105
|
+
readonly translate: {
|
|
106
|
+
readonly x: -0.5;
|
|
107
|
+
readonly y: -1;
|
|
108
|
+
};
|
|
109
|
+
readonly durationMs: 150;
|
|
110
|
+
readonly repeat: "none";
|
|
111
|
+
};
|
|
112
|
+
};
|
|
113
|
+
readonly normal: {
|
|
114
|
+
readonly variants: {
|
|
115
|
+
readonly eyes: "normal";
|
|
116
|
+
readonly mouth: "normal";
|
|
117
|
+
readonly blush: "off";
|
|
118
|
+
};
|
|
119
|
+
readonly motion: {
|
|
120
|
+
readonly target: "root";
|
|
121
|
+
readonly translate: {
|
|
122
|
+
readonly x: 0;
|
|
123
|
+
readonly y: 1;
|
|
124
|
+
};
|
|
125
|
+
readonly durationMs: 150;
|
|
126
|
+
readonly repeat: "none";
|
|
127
|
+
};
|
|
128
|
+
};
|
|
129
|
+
readonly pleading: {
|
|
130
|
+
readonly variants: {
|
|
131
|
+
readonly eyes: "cute";
|
|
132
|
+
readonly mouth: "pout";
|
|
133
|
+
readonly blush: "medium";
|
|
134
|
+
};
|
|
135
|
+
readonly motion: {
|
|
136
|
+
readonly target: "root";
|
|
137
|
+
readonly translate: {
|
|
138
|
+
readonly x: 0;
|
|
139
|
+
readonly y: -1;
|
|
140
|
+
};
|
|
141
|
+
readonly durationMs: 150;
|
|
142
|
+
readonly repeat: "none";
|
|
143
|
+
};
|
|
144
|
+
};
|
|
145
|
+
readonly sad: {
|
|
146
|
+
readonly variants: {
|
|
147
|
+
readonly eyes: "sad";
|
|
148
|
+
readonly mouth: "sad";
|
|
149
|
+
readonly blush: "off";
|
|
150
|
+
};
|
|
151
|
+
readonly motion: {
|
|
152
|
+
readonly target: "root";
|
|
153
|
+
readonly translate: {
|
|
154
|
+
readonly x: 0;
|
|
155
|
+
readonly y: 2;
|
|
156
|
+
};
|
|
157
|
+
readonly durationMs: 150;
|
|
158
|
+
readonly repeat: "none";
|
|
159
|
+
};
|
|
160
|
+
};
|
|
161
|
+
readonly shy: {
|
|
162
|
+
readonly variants: {
|
|
163
|
+
readonly eyes: "shy";
|
|
164
|
+
readonly mouth: "small";
|
|
165
|
+
readonly blush: "small";
|
|
166
|
+
};
|
|
167
|
+
readonly motion: {
|
|
168
|
+
readonly target: "root";
|
|
169
|
+
readonly translate: {
|
|
170
|
+
readonly x: 0;
|
|
171
|
+
readonly y: 1.5;
|
|
172
|
+
};
|
|
173
|
+
readonly durationMs: 150;
|
|
174
|
+
readonly repeat: "none";
|
|
175
|
+
};
|
|
176
|
+
};
|
|
177
|
+
readonly sleepy: {
|
|
178
|
+
readonly variants: {
|
|
179
|
+
readonly eyes: "sleepy";
|
|
180
|
+
readonly mouth: "small";
|
|
181
|
+
readonly blush: "off";
|
|
182
|
+
};
|
|
183
|
+
readonly motion: {
|
|
184
|
+
readonly target: "root";
|
|
185
|
+
readonly translate: {
|
|
186
|
+
readonly x: 0;
|
|
187
|
+
readonly y: 2;
|
|
188
|
+
};
|
|
189
|
+
readonly durationMs: 150;
|
|
190
|
+
readonly repeat: "none";
|
|
191
|
+
};
|
|
192
|
+
};
|
|
193
|
+
readonly surprised: {
|
|
194
|
+
readonly variants: {
|
|
195
|
+
readonly eyes: "surprised";
|
|
196
|
+
readonly mouth: "surprised";
|
|
197
|
+
readonly blush: "off";
|
|
198
|
+
};
|
|
199
|
+
readonly motion: {
|
|
200
|
+
readonly target: "root";
|
|
201
|
+
readonly translate: {
|
|
202
|
+
readonly x: 0;
|
|
203
|
+
readonly y: -3;
|
|
204
|
+
};
|
|
205
|
+
readonly durationMs: 150;
|
|
206
|
+
readonly repeat: "none";
|
|
207
|
+
};
|
|
208
|
+
};
|
|
209
|
+
readonly wink: {
|
|
210
|
+
readonly variants: {
|
|
211
|
+
readonly mouth: "happy";
|
|
212
|
+
readonly blush: "small";
|
|
213
|
+
};
|
|
214
|
+
readonly variantChoices: {
|
|
215
|
+
readonly eyes: readonly ["wink.left", "wink.right"];
|
|
216
|
+
};
|
|
217
|
+
readonly motion: {
|
|
218
|
+
readonly target: "root";
|
|
219
|
+
readonly translate: {
|
|
220
|
+
readonly x: 0;
|
|
221
|
+
readonly y: -1.5;
|
|
222
|
+
};
|
|
223
|
+
readonly durationMs: 150;
|
|
224
|
+
readonly repeat: "none";
|
|
225
|
+
};
|
|
226
|
+
};
|
|
227
|
+
};
|
|
228
|
+
activities: {
|
|
229
|
+
error: {
|
|
230
|
+
geometry: {
|
|
231
|
+
eyes: string;
|
|
232
|
+
mouth: string;
|
|
233
|
+
};
|
|
234
|
+
motion: {
|
|
235
|
+
target: string;
|
|
236
|
+
rotate: {
|
|
237
|
+
x: number;
|
|
238
|
+
};
|
|
239
|
+
durationMs: number;
|
|
240
|
+
repeat: "none";
|
|
241
|
+
};
|
|
242
|
+
mouseInfluence: number;
|
|
243
|
+
};
|
|
244
|
+
idle: {
|
|
245
|
+
readonly motion: {
|
|
246
|
+
readonly target: "root";
|
|
247
|
+
readonly translate: {
|
|
248
|
+
readonly y: 0.5;
|
|
249
|
+
};
|
|
250
|
+
readonly durationMs: 2000;
|
|
251
|
+
readonly repeat: "yoyo";
|
|
252
|
+
};
|
|
253
|
+
readonly mouseInfluence: 1;
|
|
254
|
+
};
|
|
255
|
+
listening: {
|
|
256
|
+
readonly motion: {
|
|
257
|
+
readonly target: "root";
|
|
258
|
+
readonly rotate: {
|
|
259
|
+
readonly x: -0.2;
|
|
260
|
+
};
|
|
261
|
+
readonly durationMs: 300;
|
|
262
|
+
readonly repeat: "yoyo";
|
|
263
|
+
};
|
|
264
|
+
readonly mouseInfluence: 0.3;
|
|
265
|
+
};
|
|
266
|
+
processing: {
|
|
267
|
+
readonly mouseInfluence: 0.2;
|
|
268
|
+
};
|
|
269
|
+
speaking: {
|
|
270
|
+
readonly motion: {
|
|
271
|
+
readonly target: "root";
|
|
272
|
+
readonly translate: {
|
|
273
|
+
readonly y: 0.5;
|
|
274
|
+
};
|
|
275
|
+
readonly durationMs: 1500;
|
|
276
|
+
readonly repeat: "yoyo";
|
|
277
|
+
};
|
|
278
|
+
readonly mouseInfluence: 0;
|
|
279
|
+
readonly mouthCycle: readonly [{
|
|
280
|
+
readonly durationMs: 100;
|
|
281
|
+
readonly mouth: "open";
|
|
282
|
+
}, {
|
|
283
|
+
readonly durationMs: 150;
|
|
284
|
+
readonly mouth: "base";
|
|
285
|
+
}, {
|
|
286
|
+
readonly durationMs: 100;
|
|
287
|
+
readonly mouth: "open";
|
|
288
|
+
}, {
|
|
289
|
+
readonly durationMs: 200;
|
|
290
|
+
readonly mouth: "base";
|
|
291
|
+
}];
|
|
292
|
+
};
|
|
293
|
+
thinking: {
|
|
294
|
+
readonly motion: {
|
|
295
|
+
readonly target: "root";
|
|
296
|
+
readonly rotate: {
|
|
297
|
+
readonly z: 0.1;
|
|
298
|
+
};
|
|
299
|
+
readonly durationMs: 800;
|
|
300
|
+
readonly repeat: "yoyo";
|
|
301
|
+
};
|
|
302
|
+
readonly mouseInfluence: 0;
|
|
303
|
+
};
|
|
304
|
+
};
|
|
305
|
+
defaultPresentation: {
|
|
306
|
+
activity: string;
|
|
307
|
+
expression: string;
|
|
308
|
+
};
|
|
309
|
+
}>;
|
|
310
|
+
export default mushroom;
|