pixelkiln 0.71.0 → 0.72.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/PROVIDERS.md +1 -1
- package/dist/cli.js +27 -14
- package/dist/cli.js.map +1 -1
- package/dist/client/gallery.js +17 -5
- package/dist/index.cjs +27 -14
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +86 -55
- package/dist/index.d.ts +86 -55
- package/dist/index.js +27 -14
- package/dist/index.js.map +1 -1
- package/docs/CHARACTERS.md +13 -0
- package/docs/GENERATORS.md +1 -1
- package/package.json +1 -1
- package/schema/manifest.schema.json +1 -0
- package/skills/pixelkiln/references/pixellab-roadmap.md +6 -0
- package/skills/pixelkiln/references/pixellab.md +8 -1
package/dist/index.d.ts
CHANGED
|
@@ -846,7 +846,15 @@ declare const CharacterProportionsSchema: z.ZodUnion<[z.ZodEnum<["default", "chi
|
|
|
846
846
|
hipWidth?: number | undefined;
|
|
847
847
|
}>]>;
|
|
848
848
|
type CharacterProportions = z.infer<typeof CharacterProportionsSchema>;
|
|
849
|
-
|
|
849
|
+
/**
|
|
850
|
+
* `template`: a PixelLab template drawn frame by frame, 1 generation.
|
|
851
|
+
* `skeleton-v3`: the same template posed onto the character by PixelLab's
|
|
852
|
+
* skeleton video model, which moves the character instead of redrawing it,
|
|
853
|
+
* for steadier identity and colours (2-4 generations and 3-5 minutes per
|
|
854
|
+
* direction; beta, Tier 1 subscriptions and up).
|
|
855
|
+
* `v3`: frames drawn from the action text. `pro`: the sequential engine.
|
|
856
|
+
*/
|
|
857
|
+
declare const CharacterAnimationModeSchema: z.ZodEnum<["template", "skeleton-v3", "v3", "pro"]>;
|
|
850
858
|
type CharacterAnimationMode = z.infer<typeof CharacterAnimationModeSchema>;
|
|
851
859
|
/**
|
|
852
860
|
* A `uiAsset` panel's shape template: precise, labelled regions on a virtual
|
|
@@ -1119,8 +1127,12 @@ declare const CharacterAnimationSchema$1: z.ZodEffects<z.ZodObject<{
|
|
|
1119
1127
|
fps: z.ZodDefault<z.ZodNumber>;
|
|
1120
1128
|
/** v3 only: keep the resting pose as frame 0, so `frames` generated frames land as `frames + 1` files. */
|
|
1121
1129
|
keepFirstFrame: z.ZodDefault<z.ZodBoolean>;
|
|
1122
|
-
/**
|
|
1123
|
-
|
|
1130
|
+
/**
|
|
1131
|
+
* `template` when a template is named, otherwise `v3`; `skeleton-v3`
|
|
1132
|
+
* poses a template with PixelLab's skeleton model instead; `pro` for the
|
|
1133
|
+
* sequential high-quality engine.
|
|
1134
|
+
*/
|
|
1135
|
+
mode: z.ZodOptional<z.ZodEnum<["template", "skeleton-v3", "v3", "pro"]>>;
|
|
1124
1136
|
/**
|
|
1125
1137
|
* v3 only: a manifest-relative image of the pose to start from, instead
|
|
1126
1138
|
* of the character's rotation for this direction. Up to 256px.
|
|
@@ -1148,7 +1160,7 @@ declare const CharacterAnimationSchema$1: z.ZodEffects<z.ZodObject<{
|
|
|
1148
1160
|
frames?: number | undefined;
|
|
1149
1161
|
template?: string | undefined;
|
|
1150
1162
|
directions?: ("south" | "south-east" | "east" | "north-east" | "north" | "north-west" | "west" | "south-west")[] | undefined;
|
|
1151
|
-
mode?: "v3" | "pro" | "template" | undefined;
|
|
1163
|
+
mode?: "v3" | "pro" | "template" | "skeleton-v3" | undefined;
|
|
1152
1164
|
startFrame?: string | undefined;
|
|
1153
1165
|
endFrame?: string | undefined;
|
|
1154
1166
|
subject?: string | undefined;
|
|
@@ -1164,7 +1176,7 @@ declare const CharacterAnimationSchema$1: z.ZodEffects<z.ZodObject<{
|
|
|
1164
1176
|
direction?: "south" | "south-east" | "east" | "north-east" | "north" | "north-west" | "west" | "south-west" | undefined;
|
|
1165
1177
|
directions?: ("south" | "south-east" | "east" | "north-east" | "north" | "north-west" | "west" | "south-west")[] | undefined;
|
|
1166
1178
|
keepFirstFrame?: boolean | undefined;
|
|
1167
|
-
mode?: "v3" | "pro" | "template" | undefined;
|
|
1179
|
+
mode?: "v3" | "pro" | "template" | "skeleton-v3" | undefined;
|
|
1168
1180
|
startFrame?: string | undefined;
|
|
1169
1181
|
endFrame?: string | undefined;
|
|
1170
1182
|
subject?: string | undefined;
|
|
@@ -1180,7 +1192,7 @@ declare const CharacterAnimationSchema$1: z.ZodEffects<z.ZodObject<{
|
|
|
1180
1192
|
frames?: number | undefined;
|
|
1181
1193
|
template?: string | undefined;
|
|
1182
1194
|
directions?: ("south" | "south-east" | "east" | "north-east" | "north" | "north-west" | "west" | "south-west")[] | undefined;
|
|
1183
|
-
mode?: "v3" | "pro" | "template" | undefined;
|
|
1195
|
+
mode?: "v3" | "pro" | "template" | "skeleton-v3" | undefined;
|
|
1184
1196
|
startFrame?: string | undefined;
|
|
1185
1197
|
endFrame?: string | undefined;
|
|
1186
1198
|
subject?: string | undefined;
|
|
@@ -1196,7 +1208,7 @@ declare const CharacterAnimationSchema$1: z.ZodEffects<z.ZodObject<{
|
|
|
1196
1208
|
direction?: "south" | "south-east" | "east" | "north-east" | "north" | "north-west" | "west" | "south-west" | undefined;
|
|
1197
1209
|
directions?: ("south" | "south-east" | "east" | "north-east" | "north" | "north-west" | "west" | "south-west")[] | undefined;
|
|
1198
1210
|
keepFirstFrame?: boolean | undefined;
|
|
1199
|
-
mode?: "v3" | "pro" | "template" | undefined;
|
|
1211
|
+
mode?: "v3" | "pro" | "template" | "skeleton-v3" | undefined;
|
|
1200
1212
|
startFrame?: string | undefined;
|
|
1201
1213
|
endFrame?: string | undefined;
|
|
1202
1214
|
subject?: string | undefined;
|
|
@@ -4176,8 +4188,12 @@ declare const AssetSchema: z.ZodEffects<z.ZodObject<{
|
|
|
4176
4188
|
fps: z.ZodDefault<z.ZodNumber>;
|
|
4177
4189
|
/** v3 only: keep the resting pose as frame 0, so `frames` generated frames land as `frames + 1` files. */
|
|
4178
4190
|
keepFirstFrame: z.ZodDefault<z.ZodBoolean>;
|
|
4179
|
-
/**
|
|
4180
|
-
|
|
4191
|
+
/**
|
|
4192
|
+
* `template` when a template is named, otherwise `v3`; `skeleton-v3`
|
|
4193
|
+
* poses a template with PixelLab's skeleton model instead; `pro` for the
|
|
4194
|
+
* sequential high-quality engine.
|
|
4195
|
+
*/
|
|
4196
|
+
mode: z.ZodOptional<z.ZodEnum<["template", "skeleton-v3", "v3", "pro"]>>;
|
|
4181
4197
|
/**
|
|
4182
4198
|
* v3 only: a manifest-relative image of the pose to start from, instead
|
|
4183
4199
|
* of the character's rotation for this direction. Up to 256px.
|
|
@@ -4205,7 +4221,7 @@ declare const AssetSchema: z.ZodEffects<z.ZodObject<{
|
|
|
4205
4221
|
frames?: number | undefined;
|
|
4206
4222
|
template?: string | undefined;
|
|
4207
4223
|
directions?: ("south" | "south-east" | "east" | "north-east" | "north" | "north-west" | "west" | "south-west")[] | undefined;
|
|
4208
|
-
mode?: "v3" | "pro" | "template" | undefined;
|
|
4224
|
+
mode?: "v3" | "pro" | "template" | "skeleton-v3" | undefined;
|
|
4209
4225
|
startFrame?: string | undefined;
|
|
4210
4226
|
endFrame?: string | undefined;
|
|
4211
4227
|
subject?: string | undefined;
|
|
@@ -4221,7 +4237,7 @@ declare const AssetSchema: z.ZodEffects<z.ZodObject<{
|
|
|
4221
4237
|
direction?: "south" | "south-east" | "east" | "north-east" | "north" | "north-west" | "west" | "south-west" | undefined;
|
|
4222
4238
|
directions?: ("south" | "south-east" | "east" | "north-east" | "north" | "north-west" | "west" | "south-west")[] | undefined;
|
|
4223
4239
|
keepFirstFrame?: boolean | undefined;
|
|
4224
|
-
mode?: "v3" | "pro" | "template" | undefined;
|
|
4240
|
+
mode?: "v3" | "pro" | "template" | "skeleton-v3" | undefined;
|
|
4225
4241
|
startFrame?: string | undefined;
|
|
4226
4242
|
endFrame?: string | undefined;
|
|
4227
4243
|
subject?: string | undefined;
|
|
@@ -4237,7 +4253,7 @@ declare const AssetSchema: z.ZodEffects<z.ZodObject<{
|
|
|
4237
4253
|
frames?: number | undefined;
|
|
4238
4254
|
template?: string | undefined;
|
|
4239
4255
|
directions?: ("south" | "south-east" | "east" | "north-east" | "north" | "north-west" | "west" | "south-west")[] | undefined;
|
|
4240
|
-
mode?: "v3" | "pro" | "template" | undefined;
|
|
4256
|
+
mode?: "v3" | "pro" | "template" | "skeleton-v3" | undefined;
|
|
4241
4257
|
startFrame?: string | undefined;
|
|
4242
4258
|
endFrame?: string | undefined;
|
|
4243
4259
|
subject?: string | undefined;
|
|
@@ -4253,7 +4269,7 @@ declare const AssetSchema: z.ZodEffects<z.ZodObject<{
|
|
|
4253
4269
|
direction?: "south" | "south-east" | "east" | "north-east" | "north" | "north-west" | "west" | "south-west" | undefined;
|
|
4254
4270
|
directions?: ("south" | "south-east" | "east" | "north-east" | "north" | "north-west" | "west" | "south-west")[] | undefined;
|
|
4255
4271
|
keepFirstFrame?: boolean | undefined;
|
|
4256
|
-
mode?: "v3" | "pro" | "template" | undefined;
|
|
4272
|
+
mode?: "v3" | "pro" | "template" | "skeleton-v3" | undefined;
|
|
4257
4273
|
startFrame?: string | undefined;
|
|
4258
4274
|
endFrame?: string | undefined;
|
|
4259
4275
|
subject?: string | undefined;
|
|
@@ -4526,7 +4542,7 @@ declare const AssetSchema: z.ZodEffects<z.ZodObject<{
|
|
|
4526
4542
|
frames?: number | undefined;
|
|
4527
4543
|
template?: string | undefined;
|
|
4528
4544
|
directions?: ("south" | "south-east" | "east" | "north-east" | "north" | "north-west" | "west" | "south-west")[] | undefined;
|
|
4529
|
-
mode?: "v3" | "pro" | "template" | undefined;
|
|
4545
|
+
mode?: "v3" | "pro" | "template" | "skeleton-v3" | undefined;
|
|
4530
4546
|
startFrame?: string | undefined;
|
|
4531
4547
|
endFrame?: string | undefined;
|
|
4532
4548
|
subject?: string | undefined;
|
|
@@ -4642,7 +4658,7 @@ declare const AssetSchema: z.ZodEffects<z.ZodObject<{
|
|
|
4642
4658
|
direction?: "south" | "south-east" | "east" | "north-east" | "north" | "north-west" | "west" | "south-west" | undefined;
|
|
4643
4659
|
directions?: ("south" | "south-east" | "east" | "north-east" | "north" | "north-west" | "west" | "south-west")[] | undefined;
|
|
4644
4660
|
keepFirstFrame?: boolean | undefined;
|
|
4645
|
-
mode?: "v3" | "pro" | "template" | undefined;
|
|
4661
|
+
mode?: "v3" | "pro" | "template" | "skeleton-v3" | undefined;
|
|
4646
4662
|
startFrame?: string | undefined;
|
|
4647
4663
|
endFrame?: string | undefined;
|
|
4648
4664
|
subject?: string | undefined;
|
|
@@ -4768,7 +4784,7 @@ declare const AssetSchema: z.ZodEffects<z.ZodObject<{
|
|
|
4768
4784
|
frames?: number | undefined;
|
|
4769
4785
|
template?: string | undefined;
|
|
4770
4786
|
directions?: ("south" | "south-east" | "east" | "north-east" | "north" | "north-west" | "west" | "south-west")[] | undefined;
|
|
4771
|
-
mode?: "v3" | "pro" | "template" | undefined;
|
|
4787
|
+
mode?: "v3" | "pro" | "template" | "skeleton-v3" | undefined;
|
|
4772
4788
|
startFrame?: string | undefined;
|
|
4773
4789
|
endFrame?: string | undefined;
|
|
4774
4790
|
subject?: string | undefined;
|
|
@@ -4884,7 +4900,7 @@ declare const AssetSchema: z.ZodEffects<z.ZodObject<{
|
|
|
4884
4900
|
direction?: "south" | "south-east" | "east" | "north-east" | "north" | "north-west" | "west" | "south-west" | undefined;
|
|
4885
4901
|
directions?: ("south" | "south-east" | "east" | "north-east" | "north" | "north-west" | "west" | "south-west")[] | undefined;
|
|
4886
4902
|
keepFirstFrame?: boolean | undefined;
|
|
4887
|
-
mode?: "v3" | "pro" | "template" | undefined;
|
|
4903
|
+
mode?: "v3" | "pro" | "template" | "skeleton-v3" | undefined;
|
|
4888
4904
|
startFrame?: string | undefined;
|
|
4889
4905
|
endFrame?: string | undefined;
|
|
4890
4906
|
subject?: string | undefined;
|
|
@@ -6136,8 +6152,12 @@ declare const ManifestSchema: z.ZodObject<{
|
|
|
6136
6152
|
fps: z.ZodDefault<z.ZodNumber>;
|
|
6137
6153
|
/** v3 only: keep the resting pose as frame 0, so `frames` generated frames land as `frames + 1` files. */
|
|
6138
6154
|
keepFirstFrame: z.ZodDefault<z.ZodBoolean>;
|
|
6139
|
-
/**
|
|
6140
|
-
|
|
6155
|
+
/**
|
|
6156
|
+
* `template` when a template is named, otherwise `v3`; `skeleton-v3`
|
|
6157
|
+
* poses a template with PixelLab's skeleton model instead; `pro` for the
|
|
6158
|
+
* sequential high-quality engine.
|
|
6159
|
+
*/
|
|
6160
|
+
mode: z.ZodOptional<z.ZodEnum<["template", "skeleton-v3", "v3", "pro"]>>;
|
|
6141
6161
|
/**
|
|
6142
6162
|
* v3 only: a manifest-relative image of the pose to start from, instead
|
|
6143
6163
|
* of the character's rotation for this direction. Up to 256px.
|
|
@@ -6165,7 +6185,7 @@ declare const ManifestSchema: z.ZodObject<{
|
|
|
6165
6185
|
frames?: number | undefined;
|
|
6166
6186
|
template?: string | undefined;
|
|
6167
6187
|
directions?: ("south" | "south-east" | "east" | "north-east" | "north" | "north-west" | "west" | "south-west")[] | undefined;
|
|
6168
|
-
mode?: "v3" | "pro" | "template" | undefined;
|
|
6188
|
+
mode?: "v3" | "pro" | "template" | "skeleton-v3" | undefined;
|
|
6169
6189
|
startFrame?: string | undefined;
|
|
6170
6190
|
endFrame?: string | undefined;
|
|
6171
6191
|
subject?: string | undefined;
|
|
@@ -6181,7 +6201,7 @@ declare const ManifestSchema: z.ZodObject<{
|
|
|
6181
6201
|
direction?: "south" | "south-east" | "east" | "north-east" | "north" | "north-west" | "west" | "south-west" | undefined;
|
|
6182
6202
|
directions?: ("south" | "south-east" | "east" | "north-east" | "north" | "north-west" | "west" | "south-west")[] | undefined;
|
|
6183
6203
|
keepFirstFrame?: boolean | undefined;
|
|
6184
|
-
mode?: "v3" | "pro" | "template" | undefined;
|
|
6204
|
+
mode?: "v3" | "pro" | "template" | "skeleton-v3" | undefined;
|
|
6185
6205
|
startFrame?: string | undefined;
|
|
6186
6206
|
endFrame?: string | undefined;
|
|
6187
6207
|
subject?: string | undefined;
|
|
@@ -6197,7 +6217,7 @@ declare const ManifestSchema: z.ZodObject<{
|
|
|
6197
6217
|
frames?: number | undefined;
|
|
6198
6218
|
template?: string | undefined;
|
|
6199
6219
|
directions?: ("south" | "south-east" | "east" | "north-east" | "north" | "north-west" | "west" | "south-west")[] | undefined;
|
|
6200
|
-
mode?: "v3" | "pro" | "template" | undefined;
|
|
6220
|
+
mode?: "v3" | "pro" | "template" | "skeleton-v3" | undefined;
|
|
6201
6221
|
startFrame?: string | undefined;
|
|
6202
6222
|
endFrame?: string | undefined;
|
|
6203
6223
|
subject?: string | undefined;
|
|
@@ -6213,7 +6233,7 @@ declare const ManifestSchema: z.ZodObject<{
|
|
|
6213
6233
|
direction?: "south" | "south-east" | "east" | "north-east" | "north" | "north-west" | "west" | "south-west" | undefined;
|
|
6214
6234
|
directions?: ("south" | "south-east" | "east" | "north-east" | "north" | "north-west" | "west" | "south-west")[] | undefined;
|
|
6215
6235
|
keepFirstFrame?: boolean | undefined;
|
|
6216
|
-
mode?: "v3" | "pro" | "template" | undefined;
|
|
6236
|
+
mode?: "v3" | "pro" | "template" | "skeleton-v3" | undefined;
|
|
6217
6237
|
startFrame?: string | undefined;
|
|
6218
6238
|
endFrame?: string | undefined;
|
|
6219
6239
|
subject?: string | undefined;
|
|
@@ -6486,7 +6506,7 @@ declare const ManifestSchema: z.ZodObject<{
|
|
|
6486
6506
|
frames?: number | undefined;
|
|
6487
6507
|
template?: string | undefined;
|
|
6488
6508
|
directions?: ("south" | "south-east" | "east" | "north-east" | "north" | "north-west" | "west" | "south-west")[] | undefined;
|
|
6489
|
-
mode?: "v3" | "pro" | "template" | undefined;
|
|
6509
|
+
mode?: "v3" | "pro" | "template" | "skeleton-v3" | undefined;
|
|
6490
6510
|
startFrame?: string | undefined;
|
|
6491
6511
|
endFrame?: string | undefined;
|
|
6492
6512
|
subject?: string | undefined;
|
|
@@ -6602,7 +6622,7 @@ declare const ManifestSchema: z.ZodObject<{
|
|
|
6602
6622
|
direction?: "south" | "south-east" | "east" | "north-east" | "north" | "north-west" | "west" | "south-west" | undefined;
|
|
6603
6623
|
directions?: ("south" | "south-east" | "east" | "north-east" | "north" | "north-west" | "west" | "south-west")[] | undefined;
|
|
6604
6624
|
keepFirstFrame?: boolean | undefined;
|
|
6605
|
-
mode?: "v3" | "pro" | "template" | undefined;
|
|
6625
|
+
mode?: "v3" | "pro" | "template" | "skeleton-v3" | undefined;
|
|
6606
6626
|
startFrame?: string | undefined;
|
|
6607
6627
|
endFrame?: string | undefined;
|
|
6608
6628
|
subject?: string | undefined;
|
|
@@ -6728,7 +6748,7 @@ declare const ManifestSchema: z.ZodObject<{
|
|
|
6728
6748
|
frames?: number | undefined;
|
|
6729
6749
|
template?: string | undefined;
|
|
6730
6750
|
directions?: ("south" | "south-east" | "east" | "north-east" | "north" | "north-west" | "west" | "south-west")[] | undefined;
|
|
6731
|
-
mode?: "v3" | "pro" | "template" | undefined;
|
|
6751
|
+
mode?: "v3" | "pro" | "template" | "skeleton-v3" | undefined;
|
|
6732
6752
|
startFrame?: string | undefined;
|
|
6733
6753
|
endFrame?: string | undefined;
|
|
6734
6754
|
subject?: string | undefined;
|
|
@@ -6844,7 +6864,7 @@ declare const ManifestSchema: z.ZodObject<{
|
|
|
6844
6864
|
direction?: "south" | "south-east" | "east" | "north-east" | "north" | "north-west" | "west" | "south-west" | undefined;
|
|
6845
6865
|
directions?: ("south" | "south-east" | "east" | "north-east" | "north" | "north-west" | "west" | "south-west")[] | undefined;
|
|
6846
6866
|
keepFirstFrame?: boolean | undefined;
|
|
6847
|
-
mode?: "v3" | "pro" | "template" | undefined;
|
|
6867
|
+
mode?: "v3" | "pro" | "template" | "skeleton-v3" | undefined;
|
|
6848
6868
|
startFrame?: string | undefined;
|
|
6849
6869
|
endFrame?: string | undefined;
|
|
6850
6870
|
subject?: string | undefined;
|
|
@@ -7058,7 +7078,7 @@ declare const ManifestSchema: z.ZodObject<{
|
|
|
7058
7078
|
frames?: number | undefined;
|
|
7059
7079
|
template?: string | undefined;
|
|
7060
7080
|
directions?: ("south" | "south-east" | "east" | "north-east" | "north" | "north-west" | "west" | "south-west")[] | undefined;
|
|
7061
|
-
mode?: "v3" | "pro" | "template" | undefined;
|
|
7081
|
+
mode?: "v3" | "pro" | "template" | "skeleton-v3" | undefined;
|
|
7062
7082
|
startFrame?: string | undefined;
|
|
7063
7083
|
endFrame?: string | undefined;
|
|
7064
7084
|
subject?: string | undefined;
|
|
@@ -7263,7 +7283,7 @@ declare const ManifestSchema: z.ZodObject<{
|
|
|
7263
7283
|
direction?: "south" | "south-east" | "east" | "north-east" | "north" | "north-west" | "west" | "south-west" | undefined;
|
|
7264
7284
|
directions?: ("south" | "south-east" | "east" | "north-east" | "north" | "north-west" | "west" | "south-west")[] | undefined;
|
|
7265
7285
|
keepFirstFrame?: boolean | undefined;
|
|
7266
|
-
mode?: "v3" | "pro" | "template" | undefined;
|
|
7286
|
+
mode?: "v3" | "pro" | "template" | "skeleton-v3" | undefined;
|
|
7267
7287
|
startFrame?: string | undefined;
|
|
7268
7288
|
endFrame?: string | undefined;
|
|
7269
7289
|
subject?: string | undefined;
|
|
@@ -8829,8 +8849,12 @@ declare const ManifestInputSchema: z.ZodObject<{
|
|
|
8829
8849
|
fps: z.ZodDefault<z.ZodNumber>;
|
|
8830
8850
|
/** v3 only: keep the resting pose as frame 0, so `frames` generated frames land as `frames + 1` files. */
|
|
8831
8851
|
keepFirstFrame: z.ZodDefault<z.ZodBoolean>;
|
|
8832
|
-
/**
|
|
8833
|
-
|
|
8852
|
+
/**
|
|
8853
|
+
* `template` when a template is named, otherwise `v3`; `skeleton-v3`
|
|
8854
|
+
* poses a template with PixelLab's skeleton model instead; `pro` for the
|
|
8855
|
+
* sequential high-quality engine.
|
|
8856
|
+
*/
|
|
8857
|
+
mode: z.ZodOptional<z.ZodEnum<["template", "skeleton-v3", "v3", "pro"]>>;
|
|
8834
8858
|
/**
|
|
8835
8859
|
* v3 only: a manifest-relative image of the pose to start from, instead
|
|
8836
8860
|
* of the character's rotation for this direction. Up to 256px.
|
|
@@ -8858,7 +8882,7 @@ declare const ManifestInputSchema: z.ZodObject<{
|
|
|
8858
8882
|
frames?: number | undefined;
|
|
8859
8883
|
template?: string | undefined;
|
|
8860
8884
|
directions?: ("south" | "south-east" | "east" | "north-east" | "north" | "north-west" | "west" | "south-west")[] | undefined;
|
|
8861
|
-
mode?: "v3" | "pro" | "template" | undefined;
|
|
8885
|
+
mode?: "v3" | "pro" | "template" | "skeleton-v3" | undefined;
|
|
8862
8886
|
startFrame?: string | undefined;
|
|
8863
8887
|
endFrame?: string | undefined;
|
|
8864
8888
|
subject?: string | undefined;
|
|
@@ -8874,7 +8898,7 @@ declare const ManifestInputSchema: z.ZodObject<{
|
|
|
8874
8898
|
direction?: "south" | "south-east" | "east" | "north-east" | "north" | "north-west" | "west" | "south-west" | undefined;
|
|
8875
8899
|
directions?: ("south" | "south-east" | "east" | "north-east" | "north" | "north-west" | "west" | "south-west")[] | undefined;
|
|
8876
8900
|
keepFirstFrame?: boolean | undefined;
|
|
8877
|
-
mode?: "v3" | "pro" | "template" | undefined;
|
|
8901
|
+
mode?: "v3" | "pro" | "template" | "skeleton-v3" | undefined;
|
|
8878
8902
|
startFrame?: string | undefined;
|
|
8879
8903
|
endFrame?: string | undefined;
|
|
8880
8904
|
subject?: string | undefined;
|
|
@@ -8890,7 +8914,7 @@ declare const ManifestInputSchema: z.ZodObject<{
|
|
|
8890
8914
|
frames?: number | undefined;
|
|
8891
8915
|
template?: string | undefined;
|
|
8892
8916
|
directions?: ("south" | "south-east" | "east" | "north-east" | "north" | "north-west" | "west" | "south-west")[] | undefined;
|
|
8893
|
-
mode?: "v3" | "pro" | "template" | undefined;
|
|
8917
|
+
mode?: "v3" | "pro" | "template" | "skeleton-v3" | undefined;
|
|
8894
8918
|
startFrame?: string | undefined;
|
|
8895
8919
|
endFrame?: string | undefined;
|
|
8896
8920
|
subject?: string | undefined;
|
|
@@ -8906,7 +8930,7 @@ declare const ManifestInputSchema: z.ZodObject<{
|
|
|
8906
8930
|
direction?: "south" | "south-east" | "east" | "north-east" | "north" | "north-west" | "west" | "south-west" | undefined;
|
|
8907
8931
|
directions?: ("south" | "south-east" | "east" | "north-east" | "north" | "north-west" | "west" | "south-west")[] | undefined;
|
|
8908
8932
|
keepFirstFrame?: boolean | undefined;
|
|
8909
|
-
mode?: "v3" | "pro" | "template" | undefined;
|
|
8933
|
+
mode?: "v3" | "pro" | "template" | "skeleton-v3" | undefined;
|
|
8910
8934
|
startFrame?: string | undefined;
|
|
8911
8935
|
endFrame?: string | undefined;
|
|
8912
8936
|
subject?: string | undefined;
|
|
@@ -9179,7 +9203,7 @@ declare const ManifestInputSchema: z.ZodObject<{
|
|
|
9179
9203
|
frames?: number | undefined;
|
|
9180
9204
|
template?: string | undefined;
|
|
9181
9205
|
directions?: ("south" | "south-east" | "east" | "north-east" | "north" | "north-west" | "west" | "south-west")[] | undefined;
|
|
9182
|
-
mode?: "v3" | "pro" | "template" | undefined;
|
|
9206
|
+
mode?: "v3" | "pro" | "template" | "skeleton-v3" | undefined;
|
|
9183
9207
|
startFrame?: string | undefined;
|
|
9184
9208
|
endFrame?: string | undefined;
|
|
9185
9209
|
subject?: string | undefined;
|
|
@@ -9295,7 +9319,7 @@ declare const ManifestInputSchema: z.ZodObject<{
|
|
|
9295
9319
|
direction?: "south" | "south-east" | "east" | "north-east" | "north" | "north-west" | "west" | "south-west" | undefined;
|
|
9296
9320
|
directions?: ("south" | "south-east" | "east" | "north-east" | "north" | "north-west" | "west" | "south-west")[] | undefined;
|
|
9297
9321
|
keepFirstFrame?: boolean | undefined;
|
|
9298
|
-
mode?: "v3" | "pro" | "template" | undefined;
|
|
9322
|
+
mode?: "v3" | "pro" | "template" | "skeleton-v3" | undefined;
|
|
9299
9323
|
startFrame?: string | undefined;
|
|
9300
9324
|
endFrame?: string | undefined;
|
|
9301
9325
|
subject?: string | undefined;
|
|
@@ -9421,7 +9445,7 @@ declare const ManifestInputSchema: z.ZodObject<{
|
|
|
9421
9445
|
frames?: number | undefined;
|
|
9422
9446
|
template?: string | undefined;
|
|
9423
9447
|
directions?: ("south" | "south-east" | "east" | "north-east" | "north" | "north-west" | "west" | "south-west")[] | undefined;
|
|
9424
|
-
mode?: "v3" | "pro" | "template" | undefined;
|
|
9448
|
+
mode?: "v3" | "pro" | "template" | "skeleton-v3" | undefined;
|
|
9425
9449
|
startFrame?: string | undefined;
|
|
9426
9450
|
endFrame?: string | undefined;
|
|
9427
9451
|
subject?: string | undefined;
|
|
@@ -9537,7 +9561,7 @@ declare const ManifestInputSchema: z.ZodObject<{
|
|
|
9537
9561
|
direction?: "south" | "south-east" | "east" | "north-east" | "north" | "north-west" | "west" | "south-west" | undefined;
|
|
9538
9562
|
directions?: ("south" | "south-east" | "east" | "north-east" | "north" | "north-west" | "west" | "south-west")[] | undefined;
|
|
9539
9563
|
keepFirstFrame?: boolean | undefined;
|
|
9540
|
-
mode?: "v3" | "pro" | "template" | undefined;
|
|
9564
|
+
mode?: "v3" | "pro" | "template" | "skeleton-v3" | undefined;
|
|
9541
9565
|
startFrame?: string | undefined;
|
|
9542
9566
|
endFrame?: string | undefined;
|
|
9543
9567
|
subject?: string | undefined;
|
|
@@ -9835,7 +9859,7 @@ declare const ManifestInputSchema: z.ZodObject<{
|
|
|
9835
9859
|
frames?: number | undefined;
|
|
9836
9860
|
template?: string | undefined;
|
|
9837
9861
|
directions?: ("south" | "south-east" | "east" | "north-east" | "north" | "north-west" | "west" | "south-west")[] | undefined;
|
|
9838
|
-
mode?: "v3" | "pro" | "template" | undefined;
|
|
9862
|
+
mode?: "v3" | "pro" | "template" | "skeleton-v3" | undefined;
|
|
9839
9863
|
startFrame?: string | undefined;
|
|
9840
9864
|
endFrame?: string | undefined;
|
|
9841
9865
|
subject?: string | undefined;
|
|
@@ -10124,7 +10148,7 @@ declare const ManifestInputSchema: z.ZodObject<{
|
|
|
10124
10148
|
direction?: "south" | "south-east" | "east" | "north-east" | "north" | "north-west" | "west" | "south-west" | undefined;
|
|
10125
10149
|
directions?: ("south" | "south-east" | "east" | "north-east" | "north" | "north-west" | "west" | "south-west")[] | undefined;
|
|
10126
10150
|
keepFirstFrame?: boolean | undefined;
|
|
10127
|
-
mode?: "v3" | "pro" | "template" | undefined;
|
|
10151
|
+
mode?: "v3" | "pro" | "template" | "skeleton-v3" | undefined;
|
|
10128
10152
|
startFrame?: string | undefined;
|
|
10129
10153
|
endFrame?: string | undefined;
|
|
10130
10154
|
subject?: string | undefined;
|
|
@@ -13164,15 +13188,22 @@ declare class PixelLabClient {
|
|
|
13164
13188
|
}>;
|
|
13165
13189
|
/**
|
|
13166
13190
|
* One animation of one character. Template mode costs a generation per
|
|
13167
|
-
* direction and fixes the frame count; v3
|
|
13168
|
-
* the
|
|
13191
|
+
* direction and fixes the frame count; skeleton-v3 poses the same template
|
|
13192
|
+
* with the skeleton video model (2-4 generations per direction); v3 draws
|
|
13193
|
+
* `frameCount` frames from the action text; pro is the sequential engine.
|
|
13194
|
+
* One job per direction.
|
|
13195
|
+
*
|
|
13196
|
+
* Every mode but skeleton-v3 goes to `/animate-character`, the path whose
|
|
13197
|
+
* shapes were measured live. skeleton-v3 is documented only on
|
|
13198
|
+
* `/characters/animations`, which takes the same request and answers with
|
|
13199
|
+
* the same job list (plus an `animation_group_id`).
|
|
13169
13200
|
*/
|
|
13170
13201
|
animateCharacter(args: {
|
|
13171
13202
|
characterId: string;
|
|
13172
13203
|
animationName: string;
|
|
13173
13204
|
actionDescription?: string;
|
|
13174
13205
|
template?: string;
|
|
13175
|
-
mode: "template" | "v3" | "pro";
|
|
13206
|
+
mode: "template" | "skeleton-v3" | "v3" | "pro";
|
|
13176
13207
|
frameCount?: number;
|
|
13177
13208
|
keepFirstFrame?: boolean;
|
|
13178
13209
|
directions: string[];
|
|
@@ -19151,7 +19182,7 @@ declare const ManifestEditSchema: z.ZodDiscriminatedUnion<"action", [z.ZodObject
|
|
|
19151
19182
|
direction: z.ZodOptional<z.ZodEnum<["south", "south-east", "east", "north-east", "north", "north-west", "west", "south-west"]>>;
|
|
19152
19183
|
frames: z.ZodOptional<z.ZodNumber>;
|
|
19153
19184
|
fps: z.ZodOptional<z.ZodNumber>;
|
|
19154
|
-
mode: z.ZodOptional<z.ZodEnum<["template", "v3", "pro"]>>;
|
|
19185
|
+
mode: z.ZodOptional<z.ZodEnum<["template", "skeleton-v3", "v3", "pro"]>>;
|
|
19155
19186
|
/** What is being animated, when the parent's own description would mislead the model (`character` only). */
|
|
19156
19187
|
subject: z.ZodOptional<z.ZodString>;
|
|
19157
19188
|
enhancePrompt: z.ZodOptional<z.ZodBoolean>;
|
|
@@ -19161,7 +19192,7 @@ declare const ManifestEditSchema: z.ZodDiscriminatedUnion<"action", [z.ZodObject
|
|
|
19161
19192
|
fps?: number | undefined;
|
|
19162
19193
|
template?: string | undefined;
|
|
19163
19194
|
direction?: "south" | "south-east" | "east" | "north-east" | "north" | "north-west" | "west" | "south-west" | undefined;
|
|
19164
|
-
mode?: "v3" | "pro" | "template" | undefined;
|
|
19195
|
+
mode?: "v3" | "pro" | "template" | "skeleton-v3" | undefined;
|
|
19165
19196
|
subject?: string | undefined;
|
|
19166
19197
|
enhancePrompt?: boolean | undefined;
|
|
19167
19198
|
}, {
|
|
@@ -19170,7 +19201,7 @@ declare const ManifestEditSchema: z.ZodDiscriminatedUnion<"action", [z.ZodObject
|
|
|
19170
19201
|
fps?: number | undefined;
|
|
19171
19202
|
template?: string | undefined;
|
|
19172
19203
|
direction?: "south" | "south-east" | "east" | "north-east" | "north" | "north-west" | "west" | "south-west" | undefined;
|
|
19173
|
-
mode?: "v3" | "pro" | "template" | undefined;
|
|
19204
|
+
mode?: "v3" | "pro" | "template" | "skeleton-v3" | undefined;
|
|
19174
19205
|
subject?: string | undefined;
|
|
19175
19206
|
enhancePrompt?: boolean | undefined;
|
|
19176
19207
|
}>>;
|
|
@@ -19184,7 +19215,7 @@ declare const ManifestEditSchema: z.ZodDiscriminatedUnion<"action", [z.ZodObject
|
|
|
19184
19215
|
fps?: number | undefined;
|
|
19185
19216
|
template?: string | undefined;
|
|
19186
19217
|
direction?: "south" | "south-east" | "east" | "north-east" | "north" | "north-west" | "west" | "south-west" | undefined;
|
|
19187
|
-
mode?: "v3" | "pro" | "template" | undefined;
|
|
19218
|
+
mode?: "v3" | "pro" | "template" | "skeleton-v3" | undefined;
|
|
19188
19219
|
subject?: string | undefined;
|
|
19189
19220
|
enhancePrompt?: boolean | undefined;
|
|
19190
19221
|
} | undefined;
|
|
@@ -19222,7 +19253,7 @@ declare const ManifestEditSchema: z.ZodDiscriminatedUnion<"action", [z.ZodObject
|
|
|
19222
19253
|
fps?: number | undefined;
|
|
19223
19254
|
template?: string | undefined;
|
|
19224
19255
|
direction?: "south" | "south-east" | "east" | "north-east" | "north" | "north-west" | "west" | "south-west" | undefined;
|
|
19225
|
-
mode?: "v3" | "pro" | "template" | undefined;
|
|
19256
|
+
mode?: "v3" | "pro" | "template" | "skeleton-v3" | undefined;
|
|
19226
19257
|
subject?: string | undefined;
|
|
19227
19258
|
enhancePrompt?: boolean | undefined;
|
|
19228
19259
|
} | undefined;
|
|
@@ -19260,7 +19291,7 @@ declare const ManifestEditSchema: z.ZodDiscriminatedUnion<"action", [z.ZodObject
|
|
|
19260
19291
|
fps?: number | undefined;
|
|
19261
19292
|
template?: string | undefined;
|
|
19262
19293
|
direction?: "south" | "south-east" | "east" | "north-east" | "north" | "north-west" | "west" | "south-west" | undefined;
|
|
19263
|
-
mode?: "v3" | "pro" | "template" | undefined;
|
|
19294
|
+
mode?: "v3" | "pro" | "template" | "skeleton-v3" | undefined;
|
|
19264
19295
|
subject?: string | undefined;
|
|
19265
19296
|
enhancePrompt?: boolean | undefined;
|
|
19266
19297
|
} | undefined;
|
|
@@ -19298,7 +19329,7 @@ declare const ManifestEditSchema: z.ZodDiscriminatedUnion<"action", [z.ZodObject
|
|
|
19298
19329
|
fps?: number | undefined;
|
|
19299
19330
|
template?: string | undefined;
|
|
19300
19331
|
direction?: "south" | "south-east" | "east" | "north-east" | "north" | "north-west" | "west" | "south-west" | undefined;
|
|
19301
|
-
mode?: "v3" | "pro" | "template" | undefined;
|
|
19332
|
+
mode?: "v3" | "pro" | "template" | "skeleton-v3" | undefined;
|
|
19302
19333
|
subject?: string | undefined;
|
|
19303
19334
|
enhancePrompt?: boolean | undefined;
|
|
19304
19335
|
} | undefined;
|
|
@@ -19336,7 +19367,7 @@ declare const ManifestEditSchema: z.ZodDiscriminatedUnion<"action", [z.ZodObject
|
|
|
19336
19367
|
fps?: number | undefined;
|
|
19337
19368
|
template?: string | undefined;
|
|
19338
19369
|
direction?: "south" | "south-east" | "east" | "north-east" | "north" | "north-west" | "west" | "south-west" | undefined;
|
|
19339
|
-
mode?: "v3" | "pro" | "template" | undefined;
|
|
19370
|
+
mode?: "v3" | "pro" | "template" | "skeleton-v3" | undefined;
|
|
19340
19371
|
subject?: string | undefined;
|
|
19341
19372
|
enhancePrompt?: boolean | undefined;
|
|
19342
19373
|
} | undefined;
|
|
@@ -19374,7 +19405,7 @@ declare const ManifestEditSchema: z.ZodDiscriminatedUnion<"action", [z.ZodObject
|
|
|
19374
19405
|
fps?: number | undefined;
|
|
19375
19406
|
template?: string | undefined;
|
|
19376
19407
|
direction?: "south" | "south-east" | "east" | "north-east" | "north" | "north-west" | "west" | "south-west" | undefined;
|
|
19377
|
-
mode?: "v3" | "pro" | "template" | undefined;
|
|
19408
|
+
mode?: "v3" | "pro" | "template" | "skeleton-v3" | undefined;
|
|
19378
19409
|
subject?: string | undefined;
|
|
19379
19410
|
enhancePrompt?: boolean | undefined;
|
|
19380
19411
|
} | undefined;
|
|
@@ -19416,7 +19447,7 @@ declare const ManifestEditSchema: z.ZodDiscriminatedUnion<"action", [z.ZodObject
|
|
|
19416
19447
|
fps?: number | undefined;
|
|
19417
19448
|
template?: string | undefined;
|
|
19418
19449
|
direction?: "south" | "south-east" | "east" | "north-east" | "north" | "north-west" | "west" | "south-west" | undefined;
|
|
19419
|
-
mode?: "v3" | "pro" | "template" | undefined;
|
|
19450
|
+
mode?: "v3" | "pro" | "template" | "skeleton-v3" | undefined;
|
|
19420
19451
|
subject?: string | undefined;
|
|
19421
19452
|
enhancePrompt?: boolean | undefined;
|
|
19422
19453
|
} | undefined;
|
|
@@ -19460,7 +19491,7 @@ declare const ManifestEditSchema: z.ZodDiscriminatedUnion<"action", [z.ZodObject
|
|
|
19460
19491
|
fps?: number | undefined;
|
|
19461
19492
|
template?: string | undefined;
|
|
19462
19493
|
direction?: "south" | "south-east" | "east" | "north-east" | "north" | "north-west" | "west" | "south-west" | undefined;
|
|
19463
|
-
mode?: "v3" | "pro" | "template" | undefined;
|
|
19494
|
+
mode?: "v3" | "pro" | "template" | "skeleton-v3" | undefined;
|
|
19464
19495
|
subject?: string | undefined;
|
|
19465
19496
|
enhancePrompt?: boolean | undefined;
|
|
19466
19497
|
} | undefined;
|
package/dist/index.js
CHANGED
|
@@ -125,7 +125,7 @@ var CharacterProportionsSchema = z.union([
|
|
|
125
125
|
hipWidth: z.number().min(0.5).max(2).optional()
|
|
126
126
|
}).strict()
|
|
127
127
|
]);
|
|
128
|
-
var CharacterAnimationModeSchema = z.enum(["template", "v3", "pro"]);
|
|
128
|
+
var CharacterAnimationModeSchema = z.enum(["template", "skeleton-v3", "v3", "pro"]);
|
|
129
129
|
var UiPieceSchema = z.discriminatedUnion("kind", [
|
|
130
130
|
z.object({
|
|
131
131
|
id: z.string().min(1),
|
|
@@ -239,7 +239,11 @@ var CharacterAnimationSchema = z.object({
|
|
|
239
239
|
fps: z.number().int().min(1).max(60).default(8),
|
|
240
240
|
/** v3 only: keep the resting pose as frame 0, so `frames` generated frames land as `frames + 1` files. */
|
|
241
241
|
keepFirstFrame: z.boolean().default(true),
|
|
242
|
-
/**
|
|
242
|
+
/**
|
|
243
|
+
* `template` when a template is named, otherwise `v3`; `skeleton-v3`
|
|
244
|
+
* poses a template with PixelLab's skeleton model instead; `pro` for the
|
|
245
|
+
* sequential high-quality engine.
|
|
246
|
+
*/
|
|
243
247
|
mode: CharacterAnimationModeSchema.optional(),
|
|
244
248
|
/**
|
|
245
249
|
* v3 only: a manifest-relative image of the pose to start from, instead
|
|
@@ -276,7 +280,7 @@ var CharacterAnimationSchema = z.object({
|
|
|
276
280
|
if (animation[key] !== void 0 && mode2 !== "v3") {
|
|
277
281
|
context.addIssue({
|
|
278
282
|
code: z.ZodIssueCode.custom,
|
|
279
|
-
message: `${key} is for v3 loops; a ${mode2} loop ${mode2 === "template" ? "starts from the character's rotation and follows its template" : "takes neither"}`,
|
|
283
|
+
message: `${key} is for v3 loops; a ${mode2} loop ${mode2 === "template" || mode2 === "skeleton-v3" ? "starts from the character's rotation and follows its template" : "takes neither"}`,
|
|
280
284
|
path: [key]
|
|
281
285
|
});
|
|
282
286
|
}
|
|
@@ -286,10 +290,10 @@ var CharacterAnimationSchema = z.object({
|
|
|
286
290
|
context.addIssue({ code: z.ZodIssueCode.custom, message: `${key} overrides apply to template loops only`, path: [key] });
|
|
287
291
|
}
|
|
288
292
|
}
|
|
289
|
-
if (animation.template && animation.mode && animation.mode !== "template") {
|
|
293
|
+
if (animation.template && animation.mode && animation.mode !== "template" && animation.mode !== "skeleton-v3") {
|
|
290
294
|
context.addIssue({
|
|
291
295
|
code: z.ZodIssueCode.custom,
|
|
292
|
-
message: `a template animation cannot use mode "${animation.mode}"`,
|
|
296
|
+
message: `a template animation cannot use mode "${animation.mode}"; use "template" or "skeleton-v3"`,
|
|
293
297
|
path: ["mode"]
|
|
294
298
|
});
|
|
295
299
|
}
|
|
@@ -300,8 +304,8 @@ var CharacterAnimationSchema = z.object({
|
|
|
300
304
|
path: ["frames"]
|
|
301
305
|
});
|
|
302
306
|
}
|
|
303
|
-
if (!animation.template && animation.mode === "template") {
|
|
304
|
-
context.addIssue({ code: z.ZodIssueCode.custom, message:
|
|
307
|
+
if (!animation.template && (animation.mode === "template" || animation.mode === "skeleton-v3")) {
|
|
308
|
+
context.addIssue({ code: z.ZodIssueCode.custom, message: `${animation.mode} mode needs a template`, path: ["template"] });
|
|
305
309
|
}
|
|
306
310
|
});
|
|
307
311
|
var RevisionDitheringSchema = z.enum(["none", "2x2", "4x4", "8x8"]);
|
|
@@ -2235,12 +2239,20 @@ var PixelLabClient = class {
|
|
|
2235
2239
|
}
|
|
2236
2240
|
/**
|
|
2237
2241
|
* One animation of one character. Template mode costs a generation per
|
|
2238
|
-
* direction and fixes the frame count; v3
|
|
2239
|
-
* the
|
|
2242
|
+
* direction and fixes the frame count; skeleton-v3 poses the same template
|
|
2243
|
+
* with the skeleton video model (2-4 generations per direction); v3 draws
|
|
2244
|
+
* `frameCount` frames from the action text; pro is the sequential engine.
|
|
2245
|
+
* One job per direction.
|
|
2246
|
+
*
|
|
2247
|
+
* Every mode but skeleton-v3 goes to `/animate-character`, the path whose
|
|
2248
|
+
* shapes were measured live. skeleton-v3 is documented only on
|
|
2249
|
+
* `/characters/animations`, which takes the same request and answers with
|
|
2250
|
+
* the same job list (plus an `animation_group_id`).
|
|
2240
2251
|
*/
|
|
2241
2252
|
async animateCharacter(args) {
|
|
2242
2253
|
const encode = (image) => ({ type: "base64", base64: image.base64, format: image.format });
|
|
2243
|
-
const
|
|
2254
|
+
const endpoint = args.mode === "skeleton-v3" ? "/characters/animations" : "/animate-character";
|
|
2255
|
+
const raw = await this.request(endpoint, {
|
|
2244
2256
|
method: "POST",
|
|
2245
2257
|
body: JSON.stringify({
|
|
2246
2258
|
character_id: args.characterId,
|
|
@@ -2264,7 +2276,7 @@ var PixelLabClient = class {
|
|
|
2264
2276
|
...args.seed != null ? { seed: args.seed } : {}
|
|
2265
2277
|
})
|
|
2266
2278
|
});
|
|
2267
|
-
return validateResponse(AnimateSubmitSchema, raw,
|
|
2279
|
+
return validateResponse(AnimateSubmitSchema, raw, endpoint.slice(1));
|
|
2268
2280
|
}
|
|
2269
2281
|
/**
|
|
2270
2282
|
* A full-body sprite in, a bust portrait out (or the reverse, unused
|
|
@@ -3557,6 +3569,7 @@ function characterCost(spec) {
|
|
|
3557
3569
|
if (character.kind === "animation") {
|
|
3558
3570
|
const animation = character.animation;
|
|
3559
3571
|
if (animation.mode === "template") return 1;
|
|
3572
|
+
if (animation.mode === "skeleton-v3") return 4;
|
|
3560
3573
|
if (animation.mode === "v3") return Math.max(1, Math.ceil(px * animation.frames / 65536));
|
|
3561
3574
|
return generationCost(spec.width, spec.height, "1dir");
|
|
3562
3575
|
}
|
|
@@ -4149,7 +4162,7 @@ var PixelLabProvider = class _PixelLabProvider {
|
|
|
4149
4162
|
`${spec.styleId}/${spec.assetId} animates "${character.animation.direction}", but its character has ${character.directions} directions: ${allowed.join(", ")}`
|
|
4150
4163
|
);
|
|
4151
4164
|
}
|
|
4152
|
-
if (character.animation.mode !== "template" && !spec.prompt.trim()) {
|
|
4165
|
+
if (character.animation.mode !== "template" && character.animation.mode !== "skeleton-v3" && !spec.prompt.trim()) {
|
|
4153
4166
|
throw new Error(`${spec.styleId}/${spec.assetId} needs a prompt describing the motion, or a template`);
|
|
4154
4167
|
}
|
|
4155
4168
|
}
|
|
@@ -9077,8 +9090,8 @@ async function resolveObjectProShape(assetId, asset, style, kind, files) {
|
|
|
9077
9090
|
);
|
|
9078
9091
|
}
|
|
9079
9092
|
}
|
|
9080
|
-
if (asset.animation.mode === "template") {
|
|
9081
|
-
throw new Error(`assets.${assetId}: objectPro animations have no "
|
|
9093
|
+
if (asset.animation.mode === "template" || asset.animation.mode === "skeleton-v3") {
|
|
9094
|
+
throw new Error(`assets.${assetId}: objectPro animations have no "${asset.animation.mode}" mode; use "v3" or "pro"`);
|
|
9082
9095
|
}
|
|
9083
9096
|
const pose = async (rel, what) => {
|
|
9084
9097
|
const image = await files.load(rel, what);
|