@nodaro/prompts 1.7.3 → 1.8.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/index.cjs +5422 -4269
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +1198 -61
- package/dist/index.d.ts +1198 -61
- package/dist/index.js +5336 -4271
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/src/__tests__/b7-person-pack-e2e.test.ts +37 -0
- package/src/__tests__/catalog-funnel-ratchet.test.ts +97 -0
- package/src/__tests__/catalog-packs.test.ts +130 -0
- package/src/__tests__/catalog-sidecar-coverage.test.ts +27 -0
- package/src/__tests__/catalog-terms.test.ts +162 -0
- package/src/__tests__/character-default-role.test.ts +3 -2
- package/src/__tests__/content-free-contract.test.ts +45 -0
- package/src/__tests__/dod-replace-pack-acceptance.test.ts +41 -0
- package/src/__tests__/fixtures/parameter-hint-golden.json +2959 -0
- package/src/__tests__/fixtures/person-sector-pack.ts +27 -0
- package/src/__tests__/i18n-entry-completeness.test.ts +5 -2
- package/src/__tests__/parameter-hint-mode.test.ts +385 -0
- package/src/__tests__/parameter-prompt-hint-pack-fallback.test.ts +25 -0
- package/src/__tests__/person-packs.test.ts +166 -0
- package/src/__tests__/project-all-catalogs.test.ts +26 -0
- package/src/__tests__/prompt-builder.test.ts +53 -0
- package/src/__tests__/registered-catalogs-funnel.test.ts +30 -0
- package/src/__tests__/registered-catalogs-guard.test.ts +11 -0
- package/src/__tests__/term.test.ts +104 -0
- package/src/__tests__/transitions.test.ts +8 -5
- package/src/__tests__/upstream-immutability.test.ts +23 -0
- package/src/action-fx.ts +67 -17
- package/src/aesthetic.ts +54 -6
- package/src/atmosphere.ts +64 -23
- package/src/backdrop.ts +44 -30
- package/src/camera-format.ts +33 -11
- package/src/camera-motions.ts +89 -0
- package/src/catalog-packs.ts +125 -0
- package/src/catalog-sidecar-coverage.ts +36 -0
- package/src/character-fx.ts +112 -39
- package/src/color-look.ts +44 -27
- package/src/composition-effects.ts +21 -7
- package/src/era.ts +24 -0
- package/src/exposure-settings.ts +76 -18
- package/src/framing.ts +100 -0
- package/src/held-prop.ts +125 -63
- package/src/identity-lock.ts +12 -5
- package/src/image-reference-doctrine.ts +55 -0
- package/src/index.ts +5 -0
- package/src/instrumentation.ts +148 -57
- package/src/lens.ts +31 -15
- package/src/lighting.ts +120 -59
- package/src/loop-subject.ts +27 -1
- package/src/materials.ts +123 -69
- package/src/mood.ts +123 -51
- package/src/music-genre.ts +171 -67
- package/src/music-mood.ts +85 -17
- package/src/parameter-prompt-hint.ts +168 -56
- package/src/person-packs.ts +182 -0
- package/src/person.ts +506 -408
- package/src/photo-genre.ts +37 -22
- package/src/photographer.ts +138 -1
- package/src/picker-catalogs.ts +86 -40
- package/src/pose.ts +105 -40
- package/src/post-process-effects.ts +51 -8
- package/src/prompt-builder.ts +16 -1
- package/src/render-quality.ts +25 -7
- package/src/setting.ts +30 -14
- package/src/style.ts +33 -15
- package/src/styling.ts +155 -94
- package/src/temporal.ts +80 -18
- package/src/term.ts +155 -0
- package/src/transitions.ts +73 -26
- package/src/voice-character.ts +190 -90
- package/src/voice-delivery.ts +83 -12
|
@@ -0,0 +1,2959 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$comment": "GENERATED by packages/prompts/scripts/gen-parameter-hint-golden.ts — do not hand-edit. Byte-exact getParameterPromptHint output in full (verbose) hint mode; a diff here means verbose prompt text changed for real users.",
|
|
3
|
+
"cases": [
|
|
4
|
+
{
|
|
5
|
+
"key": "action-fx/id:earthquake-tremor",
|
|
6
|
+
"note": "single-dim catalog id",
|
|
7
|
+
"node": {
|
|
8
|
+
"id": "n1",
|
|
9
|
+
"type": "action-fx",
|
|
10
|
+
"data": {
|
|
11
|
+
"actionFx": "earthquake-tremor"
|
|
12
|
+
}
|
|
13
|
+
},
|
|
14
|
+
"ctx": null,
|
|
15
|
+
"expected": "a mild earthquake tremor rippling through the scene, hanging objects swaying gently and dust shaking loose from surfaces with a faint trembling motion across the frame"
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
"key": "action-fx/id:light-explosion",
|
|
19
|
+
"note": "single-dim catalog id",
|
|
20
|
+
"node": {
|
|
21
|
+
"id": "n1",
|
|
22
|
+
"type": "action-fx",
|
|
23
|
+
"data": {
|
|
24
|
+
"actionFx": "light-explosion"
|
|
25
|
+
}
|
|
26
|
+
},
|
|
27
|
+
"ctx": null,
|
|
28
|
+
"expected": "a brilliant explosion of pure white-gold radiance, divine burst of light radiating outward with rays of beam-light fanning across the scene and motes of golden particles suspended in the afterglow"
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
"key": "action-fx/id:st-elmos-fire",
|
|
32
|
+
"note": "single-dim catalog id",
|
|
33
|
+
"node": {
|
|
34
|
+
"id": "n1",
|
|
35
|
+
"type": "action-fx",
|
|
36
|
+
"data": {
|
|
37
|
+
"actionFx": "st-elmos-fire"
|
|
38
|
+
}
|
|
39
|
+
},
|
|
40
|
+
"ctx": null,
|
|
41
|
+
"expected": "an eerie St. Elmo's Fire phenomenon, soft blue-violet plasma glow flickering along metal extremities and pointed surfaces with a corona-like halo and faint crackling discharge"
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
"key": "action-fx/multi-pick",
|
|
45
|
+
"note": "array of 2 ids on \"actionFx\"",
|
|
46
|
+
"node": {
|
|
47
|
+
"id": "n1",
|
|
48
|
+
"type": "action-fx",
|
|
49
|
+
"data": {
|
|
50
|
+
"actionFx": [
|
|
51
|
+
"earthquake-tremor",
|
|
52
|
+
"earthquake-major"
|
|
53
|
+
]
|
|
54
|
+
}
|
|
55
|
+
},
|
|
56
|
+
"ctx": null,
|
|
57
|
+
"expected": "a mild earthquake tremor rippling through the scene, hanging objects swaying gently and dust shaking loose from surfaces with a faint trembling motion across the frame, a major earthquake violently shaking the scene, ground splitting open with deep cracks radiating outward and chunks of debris tumbling from above as everything trembles"
|
|
58
|
+
},
|
|
59
|
+
{
|
|
60
|
+
"key": "action-fx/pre-post",
|
|
61
|
+
"note": "preText + postText wrap the base fragment",
|
|
62
|
+
"node": {
|
|
63
|
+
"id": "n1",
|
|
64
|
+
"type": "action-fx",
|
|
65
|
+
"data": {
|
|
66
|
+
"actionFx": "earthquake-tremor",
|
|
67
|
+
"preText": "shot on location",
|
|
68
|
+
"postText": "no text overlays"
|
|
69
|
+
}
|
|
70
|
+
},
|
|
71
|
+
"ctx": null,
|
|
72
|
+
"expected": "shot on location, a mild earthquake tremor rippling through the scene, hanging objects swaying gently and dust shaking loose from surfaces with a faint trembling motion across the frame, no text overlays"
|
|
73
|
+
},
|
|
74
|
+
{
|
|
75
|
+
"key": "aesthetic/id:kombuchapunk",
|
|
76
|
+
"note": "single-dim catalog id",
|
|
77
|
+
"node": {
|
|
78
|
+
"id": "n1",
|
|
79
|
+
"type": "aesthetic",
|
|
80
|
+
"data": {
|
|
81
|
+
"aesthetic": "kombuchapunk"
|
|
82
|
+
}
|
|
83
|
+
},
|
|
84
|
+
"ctx": null,
|
|
85
|
+
"expected": "in the kombuchapunk aesthetic — thrifted graphic tees, layered hemp, tarot decks and home-fermented jars in plant-cluttered shared kitchens, with warm earthy color"
|
|
86
|
+
},
|
|
87
|
+
{
|
|
88
|
+
"key": "aesthetic/id:retro-90s",
|
|
89
|
+
"note": "single-dim catalog id",
|
|
90
|
+
"node": {
|
|
91
|
+
"id": "n1",
|
|
92
|
+
"type": "aesthetic",
|
|
93
|
+
"data": {
|
|
94
|
+
"aesthetic": "retro-90s"
|
|
95
|
+
}
|
|
96
|
+
},
|
|
97
|
+
"ctx": null,
|
|
98
|
+
"expected": "in a retro 90s mood — flannel shirts, slip dresses, chokers and platform boots in mall food courts and bedroom posters, with slight VHS-grain and warm Kodachrome color"
|
|
99
|
+
},
|
|
100
|
+
{
|
|
101
|
+
"key": "aesthetic/id:y2k",
|
|
102
|
+
"note": "single-dim catalog id",
|
|
103
|
+
"node": {
|
|
104
|
+
"id": "n1",
|
|
105
|
+
"type": "aesthetic",
|
|
106
|
+
"data": {
|
|
107
|
+
"aesthetic": "y2k"
|
|
108
|
+
}
|
|
109
|
+
},
|
|
110
|
+
"ctx": null,
|
|
111
|
+
"expected": "in the Y2K aesthetic — low-rise denim, baby tees, butterfly clips and chrome accessories, lit with sharp digicam flash and a faint chromatic gloss"
|
|
112
|
+
},
|
|
113
|
+
{
|
|
114
|
+
"key": "aesthetic/pre-post",
|
|
115
|
+
"note": "preText + postText wrap the base fragment",
|
|
116
|
+
"node": {
|
|
117
|
+
"id": "n1",
|
|
118
|
+
"type": "aesthetic",
|
|
119
|
+
"data": {
|
|
120
|
+
"aesthetic": "y2k",
|
|
121
|
+
"preText": "shot on location",
|
|
122
|
+
"postText": "no text overlays"
|
|
123
|
+
}
|
|
124
|
+
},
|
|
125
|
+
"ctx": null,
|
|
126
|
+
"expected": "shot on location, in the Y2K aesthetic — low-rise denim, baby tees, butterfly clips and chrome accessories, lit with sharp digicam flash and a faint chromatic gloss, no text overlays"
|
|
127
|
+
},
|
|
128
|
+
{
|
|
129
|
+
"key": "animal/id:cat-persian",
|
|
130
|
+
"note": "single-dim catalog id",
|
|
131
|
+
"node": {
|
|
132
|
+
"id": "n1",
|
|
133
|
+
"type": "animal",
|
|
134
|
+
"data": {
|
|
135
|
+
"animal": "cat-persian"
|
|
136
|
+
}
|
|
137
|
+
},
|
|
138
|
+
"ctx": null,
|
|
139
|
+
"expected": "featuring a persian cat, Long-haired cat with a flat face, stocky build and luxurious fluffy coat"
|
|
140
|
+
},
|
|
141
|
+
{
|
|
142
|
+
"key": "animal/id:eagle",
|
|
143
|
+
"note": "single-dim catalog id",
|
|
144
|
+
"node": {
|
|
145
|
+
"id": "n1",
|
|
146
|
+
"type": "animal",
|
|
147
|
+
"data": {
|
|
148
|
+
"animal": "eagle"
|
|
149
|
+
}
|
|
150
|
+
},
|
|
151
|
+
"ctx": null,
|
|
152
|
+
"expected": "featuring a eagle, Majestic eagle with a dark brown body, white head and tail, curved yellow beak and sharp talons"
|
|
153
|
+
},
|
|
154
|
+
{
|
|
155
|
+
"key": "animal/id:kraken",
|
|
156
|
+
"note": "single-dim catalog id",
|
|
157
|
+
"node": {
|
|
158
|
+
"id": "n1",
|
|
159
|
+
"type": "animal",
|
|
160
|
+
"data": {
|
|
161
|
+
"animal": "kraken"
|
|
162
|
+
}
|
|
163
|
+
},
|
|
164
|
+
"ctx": null,
|
|
165
|
+
"expected": "featuring a kraken, Colossal sea-beast kraken with a massive head, glowing eyes and enormous suckered tentacles writhing from the deep"
|
|
166
|
+
},
|
|
167
|
+
{
|
|
168
|
+
"key": "animal/pre-post",
|
|
169
|
+
"note": "preText + postText wrap the base fragment",
|
|
170
|
+
"node": {
|
|
171
|
+
"id": "n1",
|
|
172
|
+
"type": "animal",
|
|
173
|
+
"data": {
|
|
174
|
+
"animal": "cat-persian",
|
|
175
|
+
"preText": "shot on location",
|
|
176
|
+
"postText": "no text overlays"
|
|
177
|
+
}
|
|
178
|
+
},
|
|
179
|
+
"ctx": null,
|
|
180
|
+
"expected": "shot on location, featuring a persian cat, Long-haired cat with a flat face, stocky build and luxurious fluffy coat, no text overlays"
|
|
181
|
+
},
|
|
182
|
+
{
|
|
183
|
+
"key": "atmosphere/id:clear",
|
|
184
|
+
"note": "single-dim catalog id",
|
|
185
|
+
"node": {
|
|
186
|
+
"id": "n1",
|
|
187
|
+
"type": "atmosphere",
|
|
188
|
+
"data": {
|
|
189
|
+
"atmosphere": "clear"
|
|
190
|
+
}
|
|
191
|
+
},
|
|
192
|
+
"ctx": null,
|
|
193
|
+
"expected": "clear atmosphere, clean visibility with no fog or particles"
|
|
194
|
+
},
|
|
195
|
+
{
|
|
196
|
+
"key": "atmosphere/id:heat-haze",
|
|
197
|
+
"note": "single-dim catalog id",
|
|
198
|
+
"node": {
|
|
199
|
+
"id": "n1",
|
|
200
|
+
"type": "atmosphere",
|
|
201
|
+
"data": {
|
|
202
|
+
"atmosphere": "heat-haze"
|
|
203
|
+
}
|
|
204
|
+
},
|
|
205
|
+
"ctx": null,
|
|
206
|
+
"expected": "visible heat shimmer rising in the scene, warping and rippling the background with refracted air distortion"
|
|
207
|
+
},
|
|
208
|
+
{
|
|
209
|
+
"key": "atmosphere/id:motion-streaks",
|
|
210
|
+
"note": "single-dim catalog id",
|
|
211
|
+
"node": {
|
|
212
|
+
"id": "n1",
|
|
213
|
+
"type": "atmosphere",
|
|
214
|
+
"data": {
|
|
215
|
+
"atmosphere": "motion-streaks"
|
|
216
|
+
}
|
|
217
|
+
},
|
|
218
|
+
"ctx": null,
|
|
219
|
+
"expected": "speed-line motion-blur streaks slicing across the frame, smeared light trails and directional blur suggesting fast movement through the scene"
|
|
220
|
+
},
|
|
221
|
+
{
|
|
222
|
+
"key": "atmosphere/multi-pick",
|
|
223
|
+
"note": "array of 2 ids on \"atmosphere\"",
|
|
224
|
+
"node": {
|
|
225
|
+
"id": "n1",
|
|
226
|
+
"type": "atmosphere",
|
|
227
|
+
"data": {
|
|
228
|
+
"atmosphere": [
|
|
229
|
+
"clear",
|
|
230
|
+
"cloudy"
|
|
231
|
+
]
|
|
232
|
+
}
|
|
233
|
+
},
|
|
234
|
+
"ctx": null,
|
|
235
|
+
"expected": "clear atmosphere, clean visibility with no fog or particles, cloudy atmosphere, partial cloud cover with mixed direct and diffused light, soft contrast and intermittent shadows"
|
|
236
|
+
},
|
|
237
|
+
{
|
|
238
|
+
"key": "atmosphere/pre-post",
|
|
239
|
+
"note": "preText + postText wrap the base fragment",
|
|
240
|
+
"node": {
|
|
241
|
+
"id": "n1",
|
|
242
|
+
"type": "atmosphere",
|
|
243
|
+
"data": {
|
|
244
|
+
"atmosphere": "clear",
|
|
245
|
+
"preText": "shot on location",
|
|
246
|
+
"postText": "no text overlays"
|
|
247
|
+
}
|
|
248
|
+
},
|
|
249
|
+
"ctx": null,
|
|
250
|
+
"expected": "shot on location, clear atmosphere, clean visibility with no fog or particles, no text overlays"
|
|
251
|
+
},
|
|
252
|
+
{
|
|
253
|
+
"key": "backdrop/id:plastered-wall",
|
|
254
|
+
"note": "single-dim catalog id",
|
|
255
|
+
"node": {
|
|
256
|
+
"id": "n1",
|
|
257
|
+
"type": "backdrop",
|
|
258
|
+
"data": {
|
|
259
|
+
"backdrop": "plastered-wall"
|
|
260
|
+
}
|
|
261
|
+
},
|
|
262
|
+
"ctx": null,
|
|
263
|
+
"expected": "against a hand-troweled plaster wall with soft directional texture and warm cream tones, an artisanal editorial backdrop"
|
|
264
|
+
},
|
|
265
|
+
{
|
|
266
|
+
"key": "backdrop/id:polished-floor",
|
|
267
|
+
"note": "single-dim catalog id",
|
|
268
|
+
"node": {
|
|
269
|
+
"id": "n1",
|
|
270
|
+
"type": "backdrop",
|
|
271
|
+
"data": {
|
|
272
|
+
"backdrop": "polished-floor"
|
|
273
|
+
}
|
|
274
|
+
},
|
|
275
|
+
"ctx": null,
|
|
276
|
+
"expected": "against a glossy polished floor with a soft hint of reflection beneath the subject, a clean architectural editorial backdrop"
|
|
277
|
+
},
|
|
278
|
+
{
|
|
279
|
+
"key": "backdrop/id:white-seamless",
|
|
280
|
+
"note": "single-dim catalog id",
|
|
281
|
+
"node": {
|
|
282
|
+
"id": "n1",
|
|
283
|
+
"type": "backdrop",
|
|
284
|
+
"data": {
|
|
285
|
+
"backdrop": "white-seamless"
|
|
286
|
+
}
|
|
287
|
+
},
|
|
288
|
+
"ctx": null,
|
|
289
|
+
"expected": "against a clean white seamless studio backdrop, evenly lit with soft diffused fill and no environmental detail beyond the subject"
|
|
290
|
+
},
|
|
291
|
+
{
|
|
292
|
+
"key": "backdrop/pre-post",
|
|
293
|
+
"note": "preText + postText wrap the base fragment",
|
|
294
|
+
"node": {
|
|
295
|
+
"id": "n1",
|
|
296
|
+
"type": "backdrop",
|
|
297
|
+
"data": {
|
|
298
|
+
"backdrop": "white-seamless",
|
|
299
|
+
"preText": "shot on location",
|
|
300
|
+
"postText": "no text overlays"
|
|
301
|
+
}
|
|
302
|
+
},
|
|
303
|
+
"ctx": null,
|
|
304
|
+
"expected": "shot on location, against a clean white seamless studio backdrop, evenly lit with soft diffused fill and no environmental detail beyond the subject, no text overlays"
|
|
305
|
+
},
|
|
306
|
+
{
|
|
307
|
+
"key": "camera-format/id:35mm-film",
|
|
308
|
+
"note": "single-dim catalog id",
|
|
309
|
+
"node": {
|
|
310
|
+
"id": "n1",
|
|
311
|
+
"type": "camera-format",
|
|
312
|
+
"data": {
|
|
313
|
+
"cameraFormat": "35mm-film"
|
|
314
|
+
}
|
|
315
|
+
},
|
|
316
|
+
"ctx": null,
|
|
317
|
+
"expected": "shot on 35mm film, classic cinematic grain texture and color science"
|
|
318
|
+
},
|
|
319
|
+
{
|
|
320
|
+
"key": "camera-format/id:iphone",
|
|
321
|
+
"note": "single-dim catalog id",
|
|
322
|
+
"node": {
|
|
323
|
+
"id": "n1",
|
|
324
|
+
"type": "camera-format",
|
|
325
|
+
"data": {
|
|
326
|
+
"cameraFormat": "iphone"
|
|
327
|
+
}
|
|
328
|
+
},
|
|
329
|
+
"ctx": null,
|
|
330
|
+
"expected": "shot on a modern iPhone, computational image processing with sharp clarity, slight HDR look, and characteristic phone-camera color science"
|
|
331
|
+
},
|
|
332
|
+
{
|
|
333
|
+
"key": "camera-format/id:voigtlander",
|
|
334
|
+
"note": "single-dim catalog id",
|
|
335
|
+
"node": {
|
|
336
|
+
"id": "n1",
|
|
337
|
+
"type": "camera-format",
|
|
338
|
+
"data": {
|
|
339
|
+
"cameraFormat": "voigtlander"
|
|
340
|
+
}
|
|
341
|
+
},
|
|
342
|
+
"ctx": null,
|
|
343
|
+
"expected": "shot on a Voigtlander rangefinder, distinctive color rendition with subtle vintage character, slightly muted saturation, and unique micro-contrast signature"
|
|
344
|
+
},
|
|
345
|
+
{
|
|
346
|
+
"key": "camera-format/pre-post",
|
|
347
|
+
"note": "preText + postText wrap the base fragment",
|
|
348
|
+
"node": {
|
|
349
|
+
"id": "n1",
|
|
350
|
+
"type": "camera-format",
|
|
351
|
+
"data": {
|
|
352
|
+
"cameraFormat": "35mm-film",
|
|
353
|
+
"preText": "shot on location",
|
|
354
|
+
"postText": "no text overlays"
|
|
355
|
+
}
|
|
356
|
+
},
|
|
357
|
+
"ctx": null,
|
|
358
|
+
"expected": "shot on location, shot on 35mm film, classic cinematic grain texture and color science, no text overlays"
|
|
359
|
+
},
|
|
360
|
+
{
|
|
361
|
+
"key": "camera-motion/ctx-less",
|
|
362
|
+
"note": "camera-motion with no graph context — bare motion hint",
|
|
363
|
+
"node": {
|
|
364
|
+
"id": "n1",
|
|
365
|
+
"type": "camera-motion",
|
|
366
|
+
"data": {
|
|
367
|
+
"cameraMotion": "static"
|
|
368
|
+
}
|
|
369
|
+
},
|
|
370
|
+
"ctx": null,
|
|
371
|
+
"expected": "locked off static camera, no camera movement"
|
|
372
|
+
},
|
|
373
|
+
{
|
|
374
|
+
"key": "camera-motion/id:arc-left",
|
|
375
|
+
"note": "single-dim catalog id",
|
|
376
|
+
"node": {
|
|
377
|
+
"id": "n1",
|
|
378
|
+
"type": "camera-motion",
|
|
379
|
+
"data": {
|
|
380
|
+
"cameraMotion": "arc-left"
|
|
381
|
+
}
|
|
382
|
+
},
|
|
383
|
+
"ctx": null,
|
|
384
|
+
"expected": "camera arcs to the left around the subject"
|
|
385
|
+
},
|
|
386
|
+
{
|
|
387
|
+
"key": "camera-motion/id:auto",
|
|
388
|
+
"note": "single-dim catalog id",
|
|
389
|
+
"node": {
|
|
390
|
+
"id": "n1",
|
|
391
|
+
"type": "camera-motion",
|
|
392
|
+
"data": {
|
|
393
|
+
"cameraMotion": "auto"
|
|
394
|
+
}
|
|
395
|
+
},
|
|
396
|
+
"ctx": null,
|
|
397
|
+
"expected": ""
|
|
398
|
+
},
|
|
399
|
+
{
|
|
400
|
+
"key": "camera-motion/id:parallax",
|
|
401
|
+
"note": "single-dim catalog id",
|
|
402
|
+
"node": {
|
|
403
|
+
"id": "n1",
|
|
404
|
+
"type": "camera-motion",
|
|
405
|
+
"data": {
|
|
406
|
+
"cameraMotion": "parallax"
|
|
407
|
+
}
|
|
408
|
+
},
|
|
409
|
+
"ctx": null,
|
|
410
|
+
"expected": "parallax camera motion, lateral movement that emphasizes the depth separation between foreground and background elements, foreground objects appearing to move faster than distant ones"
|
|
411
|
+
},
|
|
412
|
+
{
|
|
413
|
+
"key": "camera-motion/pre-post",
|
|
414
|
+
"note": "preText + postText wrap the base fragment",
|
|
415
|
+
"node": {
|
|
416
|
+
"id": "n1",
|
|
417
|
+
"type": "camera-motion",
|
|
418
|
+
"data": {
|
|
419
|
+
"cameraMotion": "static",
|
|
420
|
+
"preText": "shot on location",
|
|
421
|
+
"postText": "no text overlays"
|
|
422
|
+
}
|
|
423
|
+
},
|
|
424
|
+
"ctx": null,
|
|
425
|
+
"expected": "shot on location, locked off static camera, no camera movement, no text overlays"
|
|
426
|
+
},
|
|
427
|
+
{
|
|
428
|
+
"key": "camera-motion/with-ctx",
|
|
429
|
+
"note": "camera-motion composing startState + endState clauses",
|
|
430
|
+
"node": {
|
|
431
|
+
"id": "n1",
|
|
432
|
+
"type": "camera-motion",
|
|
433
|
+
"data": {
|
|
434
|
+
"cameraMotion": "static"
|
|
435
|
+
}
|
|
436
|
+
},
|
|
437
|
+
"ctx": {
|
|
438
|
+
"nodes": [
|
|
439
|
+
{
|
|
440
|
+
"id": "s1",
|
|
441
|
+
"type": "framing",
|
|
442
|
+
"data": {
|
|
443
|
+
"shotSize": "wide-shot"
|
|
444
|
+
}
|
|
445
|
+
},
|
|
446
|
+
{
|
|
447
|
+
"id": "s2",
|
|
448
|
+
"type": "mood",
|
|
449
|
+
"data": {
|
|
450
|
+
"mood": "calm"
|
|
451
|
+
}
|
|
452
|
+
}
|
|
453
|
+
],
|
|
454
|
+
"edges": [
|
|
455
|
+
{
|
|
456
|
+
"source": "s1",
|
|
457
|
+
"target": "n1",
|
|
458
|
+
"sourceHandle": "output",
|
|
459
|
+
"targetHandle": "startState"
|
|
460
|
+
},
|
|
461
|
+
{
|
|
462
|
+
"source": "s2",
|
|
463
|
+
"target": "n1",
|
|
464
|
+
"sourceHandle": "output",
|
|
465
|
+
"targetHandle": "endState"
|
|
466
|
+
}
|
|
467
|
+
]
|
|
468
|
+
},
|
|
469
|
+
"expected": "locked off static camera, no camera movement, beginning with wide shot, full body of the subject with visible surroundings, ending with with a calm, centered expression"
|
|
470
|
+
},
|
|
471
|
+
{
|
|
472
|
+
"key": "camera-motion/with-ctx-pre-post",
|
|
473
|
+
"note": "camera-motion: startState/endState clauses plus preText/postText",
|
|
474
|
+
"node": {
|
|
475
|
+
"id": "n1",
|
|
476
|
+
"type": "camera-motion",
|
|
477
|
+
"data": {
|
|
478
|
+
"cameraMotion": "static",
|
|
479
|
+
"preText": "handheld",
|
|
480
|
+
"postText": "35mm"
|
|
481
|
+
}
|
|
482
|
+
},
|
|
483
|
+
"ctx": {
|
|
484
|
+
"nodes": [
|
|
485
|
+
{
|
|
486
|
+
"id": "s1",
|
|
487
|
+
"type": "framing",
|
|
488
|
+
"data": {
|
|
489
|
+
"shotSize": "wide-shot"
|
|
490
|
+
}
|
|
491
|
+
},
|
|
492
|
+
{
|
|
493
|
+
"id": "s2",
|
|
494
|
+
"type": "mood",
|
|
495
|
+
"data": {
|
|
496
|
+
"mood": "calm"
|
|
497
|
+
}
|
|
498
|
+
}
|
|
499
|
+
],
|
|
500
|
+
"edges": [
|
|
501
|
+
{
|
|
502
|
+
"source": "s1",
|
|
503
|
+
"target": "n1",
|
|
504
|
+
"sourceHandle": "output",
|
|
505
|
+
"targetHandle": "startState"
|
|
506
|
+
},
|
|
507
|
+
{
|
|
508
|
+
"source": "s2",
|
|
509
|
+
"target": "n1",
|
|
510
|
+
"sourceHandle": "output",
|
|
511
|
+
"targetHandle": "endState"
|
|
512
|
+
}
|
|
513
|
+
]
|
|
514
|
+
},
|
|
515
|
+
"expected": "handheld, locked off static camera, no camera movement, beginning with wide shot, full body of the subject with visible surroundings, ending with with a calm, centered expression, 35mm"
|
|
516
|
+
},
|
|
517
|
+
{
|
|
518
|
+
"key": "character-fx/id:auto",
|
|
519
|
+
"note": "single-dim catalog id",
|
|
520
|
+
"node": {
|
|
521
|
+
"id": "n1",
|
|
522
|
+
"type": "character-fx",
|
|
523
|
+
"data": {
|
|
524
|
+
"characterFx": "auto"
|
|
525
|
+
}
|
|
526
|
+
},
|
|
527
|
+
"ctx": null,
|
|
528
|
+
"expected": ""
|
|
529
|
+
},
|
|
530
|
+
{
|
|
531
|
+
"key": "character-fx/id:tail-emerge",
|
|
532
|
+
"note": "single-dim catalog id",
|
|
533
|
+
"node": {
|
|
534
|
+
"id": "n1",
|
|
535
|
+
"type": "character-fx",
|
|
536
|
+
"data": {
|
|
537
|
+
"characterFx": "tail-emerge"
|
|
538
|
+
}
|
|
539
|
+
},
|
|
540
|
+
"ctx": null,
|
|
541
|
+
"expected": "a tail — feline, reptilian, or demonic — extends rapidly from the base of the subject's spine, swishing into motion behind them once fully grown"
|
|
542
|
+
},
|
|
543
|
+
{
|
|
544
|
+
"key": "character-fx/id:tattoo-animation",
|
|
545
|
+
"note": "single-dim catalog id",
|
|
546
|
+
"node": {
|
|
547
|
+
"id": "n1",
|
|
548
|
+
"type": "character-fx",
|
|
549
|
+
"data": {
|
|
550
|
+
"characterFx": "tattoo-animation"
|
|
551
|
+
}
|
|
552
|
+
},
|
|
553
|
+
"ctx": null,
|
|
554
|
+
"expected": "tattoos on the subject's skin begin to glow with internal light and the linework animates in slow motion — scenes within the tattoos visibly moving, ink shifting position across the body"
|
|
555
|
+
},
|
|
556
|
+
{
|
|
557
|
+
"key": "character-fx/multi-pick",
|
|
558
|
+
"note": "array of 2 ids on \"characterFx\"",
|
|
559
|
+
"node": {
|
|
560
|
+
"id": "n1",
|
|
561
|
+
"type": "character-fx",
|
|
562
|
+
"data": {
|
|
563
|
+
"characterFx": [
|
|
564
|
+
"werewolf",
|
|
565
|
+
"vampire"
|
|
566
|
+
]
|
|
567
|
+
}
|
|
568
|
+
},
|
|
569
|
+
"ctx": null,
|
|
570
|
+
"expected": "the subject transforms into a werewolf — fur sprouts across the skin, fangs and claws extend, the snout elongates, eyes glow yellow, body re-shapes with visible muscle and bone movement, clothing tears, and the subject transforms into a vampire — skin pales, fangs extend, eyes shift to crimson, pupils dilate, posture shifts predatory, with a faint mist drifting around the body"
|
|
571
|
+
},
|
|
572
|
+
{
|
|
573
|
+
"key": "character-fx/pre-post",
|
|
574
|
+
"note": "preText + postText wrap the base fragment",
|
|
575
|
+
"node": {
|
|
576
|
+
"id": "n1",
|
|
577
|
+
"type": "character-fx",
|
|
578
|
+
"data": {
|
|
579
|
+
"characterFx": "werewolf",
|
|
580
|
+
"preText": "shot on location",
|
|
581
|
+
"postText": "no text overlays"
|
|
582
|
+
}
|
|
583
|
+
},
|
|
584
|
+
"ctx": null,
|
|
585
|
+
"expected": "shot on location, the subject transforms into a werewolf — fur sprouts across the skin, fangs and claws extend, the snout elongates, eyes glow yellow, body re-shapes with visible muscle and bone movement, clothing tears, no text overlays"
|
|
586
|
+
},
|
|
587
|
+
{
|
|
588
|
+
"key": "character-fx/timing",
|
|
589
|
+
"note": "character-fx with position + duration + intensity, no ctx",
|
|
590
|
+
"node": {
|
|
591
|
+
"id": "n1",
|
|
592
|
+
"type": "character-fx",
|
|
593
|
+
"data": {
|
|
594
|
+
"characterFx": "werewolf",
|
|
595
|
+
"position": "start",
|
|
596
|
+
"duration": "medium",
|
|
597
|
+
"intensity": "crazy"
|
|
598
|
+
}
|
|
599
|
+
},
|
|
600
|
+
"ctx": null,
|
|
601
|
+
"expected": "the subject transforms into a werewolf — fur sprouts across the skin, fangs and claws extend, the snout elongates, eyes glow yellow, body re-shapes with visible muscle and bone movement, clothing tears, the effect occurs at the opening of the clip, manifesting over approximately 2 seconds, with extreme exaggerated energy, wild flourishes, and dramatic distortion"
|
|
602
|
+
},
|
|
603
|
+
{
|
|
604
|
+
"key": "character-fx/with-ctx",
|
|
605
|
+
"note": "character-fx substituting an upstream character-ref name for 'the subject'",
|
|
606
|
+
"node": {
|
|
607
|
+
"id": "n1",
|
|
608
|
+
"type": "character-fx",
|
|
609
|
+
"data": {
|
|
610
|
+
"characterFx": "werewolf"
|
|
611
|
+
}
|
|
612
|
+
},
|
|
613
|
+
"ctx": {
|
|
614
|
+
"nodes": [
|
|
615
|
+
{
|
|
616
|
+
"id": "c1",
|
|
617
|
+
"type": "character-ref",
|
|
618
|
+
"data": {
|
|
619
|
+
"characterName": "Mira"
|
|
620
|
+
}
|
|
621
|
+
}
|
|
622
|
+
],
|
|
623
|
+
"edges": [
|
|
624
|
+
{
|
|
625
|
+
"source": "c1",
|
|
626
|
+
"target": "n1",
|
|
627
|
+
"sourceHandle": "output",
|
|
628
|
+
"targetHandle": "target"
|
|
629
|
+
}
|
|
630
|
+
]
|
|
631
|
+
},
|
|
632
|
+
"expected": "Mira transforms into a werewolf — fur sprouts across the skin, fangs and claws extend, the snout elongates, eyes glow yellow, body re-shapes with visible muscle and bone movement, clothing tears"
|
|
633
|
+
},
|
|
634
|
+
{
|
|
635
|
+
"key": "color-look/id:lifestyle-warm-magazine",
|
|
636
|
+
"note": "single-dim catalog id",
|
|
637
|
+
"node": {
|
|
638
|
+
"id": "n1",
|
|
639
|
+
"type": "color-look",
|
|
640
|
+
"data": {
|
|
641
|
+
"colorLook": "lifestyle-warm-magazine"
|
|
642
|
+
}
|
|
643
|
+
},
|
|
644
|
+
"ctx": null,
|
|
645
|
+
"expected": "modern lifestyle magazine warm-leaning grade, creamy honeyed highlights, gently warmed skin tones, soft golden mids and clean neutral shadows, contemporary editorial commercial aesthetic for fashion and food photography"
|
|
646
|
+
},
|
|
647
|
+
{
|
|
648
|
+
"key": "color-look/id:two-strip-technicolor",
|
|
649
|
+
"note": "single-dim catalog id",
|
|
650
|
+
"node": {
|
|
651
|
+
"id": "n1",
|
|
652
|
+
"type": "color-look",
|
|
653
|
+
"data": {
|
|
654
|
+
"colorLook": "two-strip-technicolor"
|
|
655
|
+
}
|
|
656
|
+
},
|
|
657
|
+
"ctx": null,
|
|
658
|
+
"expected": "two-strip Technicolor emulation, archaic 1920s and 1930s red-and-blue-only color process with limited green range, dusty rose reds against cyan blues, period-piece early-Hollywood feel distinct from later three-strip"
|
|
659
|
+
},
|
|
660
|
+
{
|
|
661
|
+
"key": "color-look/id:warm",
|
|
662
|
+
"note": "single-dim catalog id",
|
|
663
|
+
"node": {
|
|
664
|
+
"id": "n1",
|
|
665
|
+
"type": "color-look",
|
|
666
|
+
"data": {
|
|
667
|
+
"colorLook": "warm"
|
|
668
|
+
}
|
|
669
|
+
},
|
|
670
|
+
"ctx": null,
|
|
671
|
+
"expected": "warm color palette, orange and red tones throughout the image with golden highlights"
|
|
672
|
+
},
|
|
673
|
+
{
|
|
674
|
+
"key": "color-look/pre-post",
|
|
675
|
+
"note": "preText + postText wrap the base fragment",
|
|
676
|
+
"node": {
|
|
677
|
+
"id": "n1",
|
|
678
|
+
"type": "color-look",
|
|
679
|
+
"data": {
|
|
680
|
+
"colorLook": "warm",
|
|
681
|
+
"preText": "shot on location",
|
|
682
|
+
"postText": "no text overlays"
|
|
683
|
+
}
|
|
684
|
+
},
|
|
685
|
+
"ctx": null,
|
|
686
|
+
"expected": "shot on location, warm color palette, orange and red tones throughout the image with golden highlights, no text overlays"
|
|
687
|
+
},
|
|
688
|
+
{
|
|
689
|
+
"key": "composition-effects/id:bursting-through-frame",
|
|
690
|
+
"note": "single-dim catalog id",
|
|
691
|
+
"node": {
|
|
692
|
+
"id": "n1",
|
|
693
|
+
"type": "composition-effects",
|
|
694
|
+
"data": {
|
|
695
|
+
"compositionEffect": "bursting-through-frame"
|
|
696
|
+
}
|
|
697
|
+
},
|
|
698
|
+
"ctx": null,
|
|
699
|
+
"expected": "the subject bursting forward through a torn paper frame in a 3D paper-tear effect, head and shoulders breaking the plane of the canvas with ragged paper edges curling outward"
|
|
700
|
+
},
|
|
701
|
+
{
|
|
702
|
+
"key": "composition-effects/id:doubled-mirror",
|
|
703
|
+
"note": "single-dim catalog id",
|
|
704
|
+
"node": {
|
|
705
|
+
"id": "n1",
|
|
706
|
+
"type": "composition-effects",
|
|
707
|
+
"data": {
|
|
708
|
+
"compositionEffect": "doubled-mirror"
|
|
709
|
+
}
|
|
710
|
+
},
|
|
711
|
+
"ctx": null,
|
|
712
|
+
"expected": "the subject duplicated in mirror reflections, multiplied identity with two or more echoed versions of the figure stitched along an invisible mirror seam"
|
|
713
|
+
},
|
|
714
|
+
{
|
|
715
|
+
"key": "composition-effects/id:prism-flares",
|
|
716
|
+
"note": "single-dim catalog id",
|
|
717
|
+
"node": {
|
|
718
|
+
"id": "n1",
|
|
719
|
+
"type": "composition-effects",
|
|
720
|
+
"data": {
|
|
721
|
+
"compositionEffect": "prism-flares"
|
|
722
|
+
}
|
|
723
|
+
},
|
|
724
|
+
"ctx": null,
|
|
725
|
+
"expected": "crystal prism refracted light flares splitting into spectral bands across the frame, rainbow chromatic streaks fanning outward from highlights with prismatic color separation"
|
|
726
|
+
},
|
|
727
|
+
{
|
|
728
|
+
"key": "composition-effects/pre-post",
|
|
729
|
+
"note": "preText + postText wrap the base fragment",
|
|
730
|
+
"node": {
|
|
731
|
+
"id": "n1",
|
|
732
|
+
"type": "composition-effects",
|
|
733
|
+
"data": {
|
|
734
|
+
"compositionEffect": "bursting-through-frame",
|
|
735
|
+
"preText": "shot on location",
|
|
736
|
+
"postText": "no text overlays"
|
|
737
|
+
}
|
|
738
|
+
},
|
|
739
|
+
"ctx": null,
|
|
740
|
+
"expected": "shot on location, the subject bursting forward through a torn paper frame in a 3D paper-tear effect, head and shoulders breaking the plane of the canvas with ragged paper edges curling outward, no text overlays"
|
|
741
|
+
},
|
|
742
|
+
{
|
|
743
|
+
"key": "era/id:1920s-flapper",
|
|
744
|
+
"note": "single-dim catalog id",
|
|
745
|
+
"node": {
|
|
746
|
+
"id": "n1",
|
|
747
|
+
"type": "era",
|
|
748
|
+
"data": {
|
|
749
|
+
"era": "1920s-flapper"
|
|
750
|
+
}
|
|
751
|
+
},
|
|
752
|
+
"ctx": null,
|
|
753
|
+
"expected": "set in the 1920s flapper era — beaded drop-waist dresses, finger waves, feathered headbands and long pearl ropes in smoky speakeasies, with sepia-toned silver-rich monochrome and soft halation"
|
|
754
|
+
},
|
|
755
|
+
{
|
|
756
|
+
"key": "era/id:edwardian",
|
|
757
|
+
"note": "single-dim catalog id",
|
|
758
|
+
"node": {
|
|
759
|
+
"id": "n1",
|
|
760
|
+
"type": "era",
|
|
761
|
+
"data": {
|
|
762
|
+
"era": "edwardian"
|
|
763
|
+
}
|
|
764
|
+
},
|
|
765
|
+
"ctx": null,
|
|
766
|
+
"expected": "set in the Edwardian era — high-collared tea dresses, parasols, three-piece suits and pocket squares in manicured tea gardens, with soft warm afternoon light and gentle pastel color"
|
|
767
|
+
},
|
|
768
|
+
{
|
|
769
|
+
"key": "era/id:retrofuturism",
|
|
770
|
+
"note": "single-dim catalog id",
|
|
771
|
+
"node": {
|
|
772
|
+
"id": "n1",
|
|
773
|
+
"type": "era",
|
|
774
|
+
"data": {
|
|
775
|
+
"era": "retrofuturism"
|
|
776
|
+
}
|
|
777
|
+
},
|
|
778
|
+
"ctx": null,
|
|
779
|
+
"expected": "set in a retrofuturist tomorrow — silver lame jumpsuits, bubble helmets, aerodynamic furniture and analog spaceport interiors, with optimistic Technicolor saturation and chrome-bright highlights"
|
|
780
|
+
},
|
|
781
|
+
{
|
|
782
|
+
"key": "era/pre-post",
|
|
783
|
+
"note": "preText + postText wrap the base fragment",
|
|
784
|
+
"node": {
|
|
785
|
+
"id": "n1",
|
|
786
|
+
"type": "era",
|
|
787
|
+
"data": {
|
|
788
|
+
"era": "1920s-flapper",
|
|
789
|
+
"preText": "shot on location",
|
|
790
|
+
"postText": "no text overlays"
|
|
791
|
+
}
|
|
792
|
+
},
|
|
793
|
+
"ctx": null,
|
|
794
|
+
"expected": "shot on location, set in the 1920s flapper era — beaded drop-waist dresses, finger waves, feathered headbands and long pearl ropes in smoky speakeasies, with sepia-toned silver-rich monochrome and soft halation, no text overlays"
|
|
795
|
+
},
|
|
796
|
+
{
|
|
797
|
+
"key": "exposure-settings/first-of-each",
|
|
798
|
+
"note": "multi-dim: first-of-each across 3 dimensions",
|
|
799
|
+
"node": {
|
|
800
|
+
"id": "n1",
|
|
801
|
+
"type": "exposure-settings",
|
|
802
|
+
"data": {
|
|
803
|
+
"aperture": "aperture-f1-2",
|
|
804
|
+
"shutterSpeed": "shutter-1-30",
|
|
805
|
+
"isoValue": "iso-100"
|
|
806
|
+
}
|
|
807
|
+
},
|
|
808
|
+
"ctx": null,
|
|
809
|
+
"expected": "shot wide open at f/1.2 — paper-thin depth of field with the subject's eyes in razor focus and everything else dissolving into creamy bokeh, captured at 1/30s — a hint of handheld motion blur on moving subjects, slight camera shake suggesting an in-the-moment documentary feel, ISO 100 — pristinely clean image with virtually no noise, ultra-fine grain structure and rich tonal latitude"
|
|
810
|
+
},
|
|
811
|
+
{
|
|
812
|
+
"key": "exposure-settings/last-of-each",
|
|
813
|
+
"note": "multi-dim: last-of-each across 3 dimensions",
|
|
814
|
+
"node": {
|
|
815
|
+
"id": "n1",
|
|
816
|
+
"type": "exposure-settings",
|
|
817
|
+
"data": {
|
|
818
|
+
"aperture": "aperture-f16",
|
|
819
|
+
"shutterSpeed": "shutter-long-1s",
|
|
820
|
+
"isoValue": "iso-3200"
|
|
821
|
+
}
|
|
822
|
+
},
|
|
823
|
+
"ctx": null,
|
|
824
|
+
"expected": "shot stopped down to f/16 — hyperfocal depth of field with everything sharp, sunlight rendered as crisp diffraction stars on bright highlights, captured with a one-second long exposure — flowing motion rendered as smooth light trails and streaks, static subjects sharp while moving elements paint across the frame, ISO 3200 — heavy push-processed grain, gritty documentary character with elevated shadow noise and a raw, journalistic texture"
|
|
825
|
+
},
|
|
826
|
+
{
|
|
827
|
+
"key": "exposure-settings/mid-of-each",
|
|
828
|
+
"note": "multi-dim: mid-of-each across 3 dimensions",
|
|
829
|
+
"node": {
|
|
830
|
+
"id": "n1",
|
|
831
|
+
"type": "exposure-settings",
|
|
832
|
+
"data": {
|
|
833
|
+
"aperture": "aperture-f4",
|
|
834
|
+
"shutterSpeed": "shutter-1-500",
|
|
835
|
+
"isoValue": "iso-800"
|
|
836
|
+
}
|
|
837
|
+
},
|
|
838
|
+
"ctx": null,
|
|
839
|
+
"expected": "shot at f/4 — balanced depth of field where the subject is fully in focus and the background is suggested rather than detailed, captured at 1/500s — sharp rendering of quick human action, hair and fabric mid-motion frozen with clean edges, ISO 800 — visible but pleasant grain pattern, evening-indoor sensitivity with a touch of analog character"
|
|
840
|
+
},
|
|
841
|
+
{
|
|
842
|
+
"key": "exposure-settings/one-dimension",
|
|
843
|
+
"note": "multi-dim: only \"aperture\" set",
|
|
844
|
+
"node": {
|
|
845
|
+
"id": "n1",
|
|
846
|
+
"type": "exposure-settings",
|
|
847
|
+
"data": {
|
|
848
|
+
"aperture": "aperture-f1-2"
|
|
849
|
+
}
|
|
850
|
+
},
|
|
851
|
+
"ctx": null,
|
|
852
|
+
"expected": "shot wide open at f/1.2 — paper-thin depth of field with the subject's eyes in razor focus and everything else dissolving into creamy bokeh"
|
|
853
|
+
},
|
|
854
|
+
{
|
|
855
|
+
"key": "exposure-settings/pre-post",
|
|
856
|
+
"note": "multi-dim: preText + postText",
|
|
857
|
+
"node": {
|
|
858
|
+
"id": "n1",
|
|
859
|
+
"type": "exposure-settings",
|
|
860
|
+
"data": {
|
|
861
|
+
"aperture": "aperture-f1-2",
|
|
862
|
+
"preText": "shot on location",
|
|
863
|
+
"postText": "no text overlays"
|
|
864
|
+
}
|
|
865
|
+
},
|
|
866
|
+
"ctx": null,
|
|
867
|
+
"expected": "shot on location, shot wide open at f/1.2 — paper-thin depth of field with the subject's eyes in razor focus and everything else dissolving into creamy bokeh, no text overlays"
|
|
868
|
+
},
|
|
869
|
+
{
|
|
870
|
+
"key": "framing/first-of-each",
|
|
871
|
+
"note": "multi-dim: first-of-each across 5 dimensions",
|
|
872
|
+
"node": {
|
|
873
|
+
"id": "n1",
|
|
874
|
+
"type": "framing",
|
|
875
|
+
"data": {
|
|
876
|
+
"shotSize": "extreme-wide-shot",
|
|
877
|
+
"angle": "eye-level",
|
|
878
|
+
"coverage": "single",
|
|
879
|
+
"composition": "rule-of-thirds",
|
|
880
|
+
"vantage": "front-on"
|
|
881
|
+
}
|
|
882
|
+
},
|
|
883
|
+
"ctx": null,
|
|
884
|
+
"expected": "extreme wide shot, subject very small within a vast landscape, environment dominates, eye level shot, camera at the same height as the subject's eyes, neutral perspective, single shot, clean framing of one subject with nothing else in frame, rule of thirds composition, subject placed on a thirds intersection for natural balance, front-on shot, subject facing the camera directly"
|
|
885
|
+
},
|
|
886
|
+
{
|
|
887
|
+
"key": "framing/last-of-each",
|
|
888
|
+
"note": "multi-dim: last-of-each across 5 dimensions",
|
|
889
|
+
"node": {
|
|
890
|
+
"id": "n1",
|
|
891
|
+
"type": "framing",
|
|
892
|
+
"data": {
|
|
893
|
+
"shotSize": "half-body",
|
|
894
|
+
"angle": "slightly-downward",
|
|
895
|
+
"coverage": "dirty-single",
|
|
896
|
+
"composition": "vignette-composition",
|
|
897
|
+
"vantage": "side-back-angle"
|
|
898
|
+
}
|
|
899
|
+
},
|
|
900
|
+
"ctx": null,
|
|
901
|
+
"expected": "half body portrait, subject framed from the waist up with clean portrait composition, slightly downward angle, camera tilted gently down toward the subject from just above their eyeline, the natural angle of a held-out phone, dirty single framing, the shot is on one character but a slice of another character — a shoulder, ear, or back of head — intrudes into the foreground edge of frame, vignette composition, heavy peripheral darkening of the frame edges and corners draws attention inward to the centered subject, the falloff is built into the staging and lighting rather than added in post, side-back angle, three-quarter view from behind one shoulder of the subject, partial face visible in profile, the back and shoulder line dominate the framing"
|
|
902
|
+
},
|
|
903
|
+
{
|
|
904
|
+
"key": "framing/mid-of-each",
|
|
905
|
+
"note": "multi-dim: mid-of-each across 5 dimensions",
|
|
906
|
+
"node": {
|
|
907
|
+
"id": "n1",
|
|
908
|
+
"type": "framing",
|
|
909
|
+
"data": {
|
|
910
|
+
"shotSize": "big-close-up",
|
|
911
|
+
"angle": "worms-eye-angle",
|
|
912
|
+
"coverage": "selfie-framing",
|
|
913
|
+
"composition": "contact-sheet",
|
|
914
|
+
"vantage": "profile-right"
|
|
915
|
+
}
|
|
916
|
+
},
|
|
917
|
+
"ctx": null,
|
|
918
|
+
"expected": "big close-up, tighter than a standard close-up with just the face from chin to forehead, no headroom, worm's eye view, extreme low angle from ground level looking up, selfie framing, subject holding the camera at arm's length to frame themselves, slightly high angle from above, phone-camera perspective with the subject's face and upper body dominant in frame, arm or phone edge sometimes visible, contact sheet layout, multiple sequential thumbnail frames arranged in rows on a black or dark grey background, frame numbers along the edge, mimicking a 35mm film proof sheet, profile shot from the subject's right side"
|
|
919
|
+
},
|
|
920
|
+
{
|
|
921
|
+
"key": "framing/multi-pick",
|
|
922
|
+
"note": "array of 2 ids on the \"composition\" dimension",
|
|
923
|
+
"node": {
|
|
924
|
+
"id": "n1",
|
|
925
|
+
"type": "framing",
|
|
926
|
+
"data": {
|
|
927
|
+
"composition": [
|
|
928
|
+
"rule-of-thirds",
|
|
929
|
+
"centered"
|
|
930
|
+
]
|
|
931
|
+
}
|
|
932
|
+
},
|
|
933
|
+
"ctx": null,
|
|
934
|
+
"expected": "rule of thirds composition, subject placed on a thirds intersection for natural balance, centered composition, subject positioned exactly in the middle of the frame, symmetrical"
|
|
935
|
+
},
|
|
936
|
+
{
|
|
937
|
+
"key": "framing/one-dimension",
|
|
938
|
+
"note": "multi-dim: only \"shotSize\" set",
|
|
939
|
+
"node": {
|
|
940
|
+
"id": "n1",
|
|
941
|
+
"type": "framing",
|
|
942
|
+
"data": {
|
|
943
|
+
"shotSize": "extreme-wide-shot"
|
|
944
|
+
}
|
|
945
|
+
},
|
|
946
|
+
"ctx": null,
|
|
947
|
+
"expected": "extreme wide shot, subject very small within a vast landscape, environment dominates"
|
|
948
|
+
},
|
|
949
|
+
{
|
|
950
|
+
"key": "framing/pre-post",
|
|
951
|
+
"note": "multi-dim: preText + postText",
|
|
952
|
+
"node": {
|
|
953
|
+
"id": "n1",
|
|
954
|
+
"type": "framing",
|
|
955
|
+
"data": {
|
|
956
|
+
"shotSize": "extreme-wide-shot",
|
|
957
|
+
"preText": "shot on location",
|
|
958
|
+
"postText": "no text overlays"
|
|
959
|
+
}
|
|
960
|
+
},
|
|
961
|
+
"ctx": null,
|
|
962
|
+
"expected": "shot on location, extreme wide shot, subject very small within a vast landscape, environment dominates, no text overlays"
|
|
963
|
+
},
|
|
964
|
+
{
|
|
965
|
+
"key": "furniture/id:sofa",
|
|
966
|
+
"note": "single-dim catalog id",
|
|
967
|
+
"node": {
|
|
968
|
+
"id": "n1",
|
|
969
|
+
"type": "furniture",
|
|
970
|
+
"data": {
|
|
971
|
+
"furniture": "sofa"
|
|
972
|
+
}
|
|
973
|
+
},
|
|
974
|
+
"ctx": null,
|
|
975
|
+
"expected": "including a sofa, Three-seater sofa with plush cushioned back and seat, low armrests and upholstery in a neutral tone"
|
|
976
|
+
},
|
|
977
|
+
{
|
|
978
|
+
"key": "furniture/id:towel-rack",
|
|
979
|
+
"note": "single-dim catalog id",
|
|
980
|
+
"node": {
|
|
981
|
+
"id": "n1",
|
|
982
|
+
"type": "furniture",
|
|
983
|
+
"data": {
|
|
984
|
+
"furniture": "towel-rack"
|
|
985
|
+
}
|
|
986
|
+
},
|
|
987
|
+
"ctx": null,
|
|
988
|
+
"expected": "including a towel rack, Wall-mounted heated towel rack with multiple horizontal bars and fluffy folded towels draped over each bar"
|
|
989
|
+
},
|
|
990
|
+
{
|
|
991
|
+
"key": "furniture/id:tv-stand",
|
|
992
|
+
"note": "single-dim catalog id",
|
|
993
|
+
"node": {
|
|
994
|
+
"id": "n1",
|
|
995
|
+
"type": "furniture",
|
|
996
|
+
"data": {
|
|
997
|
+
"furniture": "tv-stand"
|
|
998
|
+
}
|
|
999
|
+
},
|
|
1000
|
+
"ctx": null,
|
|
1001
|
+
"expected": "including a tv stand, Low entertainment TV stand with open shelves, glass-fronted cabinet doors and cable pass-throughs"
|
|
1002
|
+
},
|
|
1003
|
+
{
|
|
1004
|
+
"key": "furniture/pre-post",
|
|
1005
|
+
"note": "preText + postText wrap the base fragment",
|
|
1006
|
+
"node": {
|
|
1007
|
+
"id": "n1",
|
|
1008
|
+
"type": "furniture",
|
|
1009
|
+
"data": {
|
|
1010
|
+
"furniture": "sofa",
|
|
1011
|
+
"preText": "shot on location",
|
|
1012
|
+
"postText": "no text overlays"
|
|
1013
|
+
}
|
|
1014
|
+
},
|
|
1015
|
+
"ctx": null,
|
|
1016
|
+
"expected": "shot on location, including a sofa, Three-seater sofa with plush cushioned back and seat, low armrests and upholstery in a neutral tone, no text overlays"
|
|
1017
|
+
},
|
|
1018
|
+
{
|
|
1019
|
+
"key": "held-prop/id:chalk",
|
|
1020
|
+
"note": "single-dim catalog id",
|
|
1021
|
+
"node": {
|
|
1022
|
+
"id": "n1",
|
|
1023
|
+
"type": "held-prop",
|
|
1024
|
+
"data": {
|
|
1025
|
+
"heldProp": "chalk"
|
|
1026
|
+
}
|
|
1027
|
+
},
|
|
1028
|
+
"ctx": null,
|
|
1029
|
+
"expected": "holding a short stick of white chalk between thumb and forefinger, faint chalk dust drifting from the tip as if mid-stroke"
|
|
1030
|
+
},
|
|
1031
|
+
{
|
|
1032
|
+
"key": "held-prop/id:shield",
|
|
1033
|
+
"note": "single-dim catalog id",
|
|
1034
|
+
"node": {
|
|
1035
|
+
"id": "n1",
|
|
1036
|
+
"type": "held-prop",
|
|
1037
|
+
"data": {
|
|
1038
|
+
"heldProp": "shield"
|
|
1039
|
+
}
|
|
1040
|
+
},
|
|
1041
|
+
"ctx": null,
|
|
1042
|
+
"expected": "holding a medieval shield raised across the body with one arm strapped through the back, the front face angled forward in a defensive stance"
|
|
1043
|
+
},
|
|
1044
|
+
{
|
|
1045
|
+
"key": "held-prop/id:smartphone",
|
|
1046
|
+
"note": "single-dim catalog id",
|
|
1047
|
+
"node": {
|
|
1048
|
+
"id": "n1",
|
|
1049
|
+
"type": "held-prop",
|
|
1050
|
+
"data": {
|
|
1051
|
+
"heldProp": "smartphone"
|
|
1052
|
+
}
|
|
1053
|
+
},
|
|
1054
|
+
"ctx": null,
|
|
1055
|
+
"expected": "holding a modern smartphone in one hand, screen lightly catching the ambient light, fingers wrapped naturally around the device"
|
|
1056
|
+
},
|
|
1057
|
+
{
|
|
1058
|
+
"key": "held-prop/multi-pick",
|
|
1059
|
+
"note": "array of 2 ids on \"heldProp\"",
|
|
1060
|
+
"node": {
|
|
1061
|
+
"id": "n1",
|
|
1062
|
+
"type": "held-prop",
|
|
1063
|
+
"data": {
|
|
1064
|
+
"heldProp": [
|
|
1065
|
+
"smartphone",
|
|
1066
|
+
"smartphone-raised"
|
|
1067
|
+
]
|
|
1068
|
+
}
|
|
1069
|
+
},
|
|
1070
|
+
"ctx": null,
|
|
1071
|
+
"expected": "holding a modern smartphone in one hand, screen lightly catching the ambient light, fingers wrapped naturally around the device, holding a smartphone raised at arm's length toward the camera as if mid-photo, both the phone and the gesture clearly visible"
|
|
1072
|
+
},
|
|
1073
|
+
{
|
|
1074
|
+
"key": "held-prop/pre-post",
|
|
1075
|
+
"note": "preText + postText wrap the base fragment",
|
|
1076
|
+
"node": {
|
|
1077
|
+
"id": "n1",
|
|
1078
|
+
"type": "held-prop",
|
|
1079
|
+
"data": {
|
|
1080
|
+
"heldProp": "smartphone",
|
|
1081
|
+
"preText": "shot on location",
|
|
1082
|
+
"postText": "no text overlays"
|
|
1083
|
+
}
|
|
1084
|
+
},
|
|
1085
|
+
"ctx": null,
|
|
1086
|
+
"expected": "shot on location, holding a modern smartphone in one hand, screen lightly catching the ambient light, fingers wrapped naturally around the device, no text overlays"
|
|
1087
|
+
},
|
|
1088
|
+
{
|
|
1089
|
+
"key": "instrumentation/first-of-each",
|
|
1090
|
+
"note": "multi-dim: first-of-each across 4 dimensions",
|
|
1091
|
+
"node": {
|
|
1092
|
+
"id": "n1",
|
|
1093
|
+
"type": "instrumentation",
|
|
1094
|
+
"data": {
|
|
1095
|
+
"instruments": [
|
|
1096
|
+
"drums"
|
|
1097
|
+
],
|
|
1098
|
+
"production": "polished",
|
|
1099
|
+
"vocalPresence": "instrumental",
|
|
1100
|
+
"singingStyle": "pop-singing"
|
|
1101
|
+
}
|
|
1102
|
+
},
|
|
1103
|
+
"ctx": null,
|
|
1104
|
+
"expected": "polished production drums with instrumental, no vocals in pop singing style"
|
|
1105
|
+
},
|
|
1106
|
+
{
|
|
1107
|
+
"key": "instrumentation/last-of-each",
|
|
1108
|
+
"note": "multi-dim: last-of-each across 4 dimensions",
|
|
1109
|
+
"node": {
|
|
1110
|
+
"id": "n1",
|
|
1111
|
+
"type": "instrumentation",
|
|
1112
|
+
"data": {
|
|
1113
|
+
"instruments": [
|
|
1114
|
+
"santur"
|
|
1115
|
+
],
|
|
1116
|
+
"production": "8-bit-retro",
|
|
1117
|
+
"vocalPresence": "mixed",
|
|
1118
|
+
"singingStyle": "chant"
|
|
1119
|
+
}
|
|
1120
|
+
},
|
|
1121
|
+
"ctx": null,
|
|
1122
|
+
"expected": "8-bit retro production santur with mixed lead vocals in chanted vocals style"
|
|
1123
|
+
},
|
|
1124
|
+
{
|
|
1125
|
+
"key": "instrumentation/mid-of-each",
|
|
1126
|
+
"note": "multi-dim: mid-of-each across 4 dimensions",
|
|
1127
|
+
"node": {
|
|
1128
|
+
"id": "n1",
|
|
1129
|
+
"type": "instrumentation",
|
|
1130
|
+
"data": {
|
|
1131
|
+
"instruments": [
|
|
1132
|
+
"ukulele"
|
|
1133
|
+
],
|
|
1134
|
+
"production": "ambient",
|
|
1135
|
+
"vocalPresence": "gospel-choir",
|
|
1136
|
+
"singingStyle": "belting"
|
|
1137
|
+
}
|
|
1138
|
+
},
|
|
1139
|
+
"ctx": null,
|
|
1140
|
+
"expected": "ambient production ukulele with gospel choir in belting style"
|
|
1141
|
+
},
|
|
1142
|
+
{
|
|
1143
|
+
"key": "instrumentation/one-dimension",
|
|
1144
|
+
"note": "multi-dim: only \"instruments\" set",
|
|
1145
|
+
"node": {
|
|
1146
|
+
"id": "n1",
|
|
1147
|
+
"type": "instrumentation",
|
|
1148
|
+
"data": {
|
|
1149
|
+
"instruments": [
|
|
1150
|
+
"drums"
|
|
1151
|
+
]
|
|
1152
|
+
}
|
|
1153
|
+
},
|
|
1154
|
+
"ctx": null,
|
|
1155
|
+
"expected": "drums"
|
|
1156
|
+
},
|
|
1157
|
+
{
|
|
1158
|
+
"key": "instrumentation/pre-post",
|
|
1159
|
+
"note": "multi-dim: preText + postText",
|
|
1160
|
+
"node": {
|
|
1161
|
+
"id": "n1",
|
|
1162
|
+
"type": "instrumentation",
|
|
1163
|
+
"data": {
|
|
1164
|
+
"instruments": [
|
|
1165
|
+
"drums"
|
|
1166
|
+
],
|
|
1167
|
+
"preText": "shot on location",
|
|
1168
|
+
"postText": "no text overlays"
|
|
1169
|
+
}
|
|
1170
|
+
},
|
|
1171
|
+
"ctx": null,
|
|
1172
|
+
"expected": "shot on location, drums, no text overlays"
|
|
1173
|
+
},
|
|
1174
|
+
{
|
|
1175
|
+
"key": "lens/id:macro",
|
|
1176
|
+
"note": "single-dim catalog id",
|
|
1177
|
+
"node": {
|
|
1178
|
+
"id": "n1",
|
|
1179
|
+
"type": "lens",
|
|
1180
|
+
"data": {
|
|
1181
|
+
"lens": "macro"
|
|
1182
|
+
}
|
|
1183
|
+
},
|
|
1184
|
+
"ctx": null,
|
|
1185
|
+
"expected": "macro lens, extreme close-up revealing fine detail with shallow depth of field"
|
|
1186
|
+
},
|
|
1187
|
+
{
|
|
1188
|
+
"key": "lens/id:petzval",
|
|
1189
|
+
"note": "single-dim catalog id",
|
|
1190
|
+
"node": {
|
|
1191
|
+
"id": "n1",
|
|
1192
|
+
"type": "lens",
|
|
1193
|
+
"data": {
|
|
1194
|
+
"lens": "petzval"
|
|
1195
|
+
}
|
|
1196
|
+
},
|
|
1197
|
+
"ctx": null,
|
|
1198
|
+
"expected": "shot on an ultra-vintage Petzval portrait lens, sharp central focus that falls off rapidly into a swirling, painterly bokeh, dramatic vignetting and a 19th-century daguerreotype-era softness at the edges"
|
|
1199
|
+
},
|
|
1200
|
+
{
|
|
1201
|
+
"key": "lens/id:ultra-wide-14mm",
|
|
1202
|
+
"note": "single-dim catalog id",
|
|
1203
|
+
"node": {
|
|
1204
|
+
"id": "n1",
|
|
1205
|
+
"type": "lens",
|
|
1206
|
+
"data": {
|
|
1207
|
+
"lens": "ultra-wide-14mm"
|
|
1208
|
+
}
|
|
1209
|
+
},
|
|
1210
|
+
"ctx": null,
|
|
1211
|
+
"expected": "shot on ultra-wide 14mm lens, exaggerated perspective with strong barrel distortion"
|
|
1212
|
+
},
|
|
1213
|
+
{
|
|
1214
|
+
"key": "lens/pre-post",
|
|
1215
|
+
"note": "preText + postText wrap the base fragment",
|
|
1216
|
+
"node": {
|
|
1217
|
+
"id": "n1",
|
|
1218
|
+
"type": "lens",
|
|
1219
|
+
"data": {
|
|
1220
|
+
"lens": "ultra-wide-14mm",
|
|
1221
|
+
"preText": "shot on location",
|
|
1222
|
+
"postText": "no text overlays"
|
|
1223
|
+
}
|
|
1224
|
+
},
|
|
1225
|
+
"ctx": null,
|
|
1226
|
+
"expected": "shot on location, shot on ultra-wide 14mm lens, exaggerated perspective with strong barrel distortion, no text overlays"
|
|
1227
|
+
},
|
|
1228
|
+
{
|
|
1229
|
+
"key": "lighting/first-of-each",
|
|
1230
|
+
"note": "multi-dim: first-of-each across 5 dimensions",
|
|
1231
|
+
"node": {
|
|
1232
|
+
"id": "n1",
|
|
1233
|
+
"type": "lighting",
|
|
1234
|
+
"data": {
|
|
1235
|
+
"timeOfDay": "dawn",
|
|
1236
|
+
"lightingStyle": "three-point",
|
|
1237
|
+
"lightingDirection": "front",
|
|
1238
|
+
"lightingRatio": "ratio-1-1",
|
|
1239
|
+
"colorTemperature": "temp-2700k"
|
|
1240
|
+
}
|
|
1241
|
+
},
|
|
1242
|
+
"ctx": null,
|
|
1243
|
+
"expected": "dawn lighting, the pre-sunrise pale glow with deep blue ambient tones transitioning to soft pink and orange at the horizon, low contrast, cool ambient, three-point lighting setup, balanced key light with fill and rim back-light, classical studio look, front lighting, light coming from the camera direction, flat even illumination across the subject, 1:1 lighting ratio, flat even illumination across the subject with no contrast between key and fill, beauty and catalog look that flattens dimension, 2700K warm candle and low-tungsten color temperature, deep amber and orange cast across the scene, intimate and cozy mood with rich golden highlights"
|
|
1244
|
+
},
|
|
1245
|
+
{
|
|
1246
|
+
"key": "lighting/last-of-each",
|
|
1247
|
+
"note": "multi-dim: last-of-each across 5 dimensions",
|
|
1248
|
+
"node": {
|
|
1249
|
+
"id": "n1",
|
|
1250
|
+
"type": "lighting",
|
|
1251
|
+
"data": {
|
|
1252
|
+
"timeOfDay": "neon-night",
|
|
1253
|
+
"lightingStyle": "bioluminescence",
|
|
1254
|
+
"lightingDirection": "window",
|
|
1255
|
+
"lightingRatio": "ratio-1-16",
|
|
1256
|
+
"colorTemperature": "temp-9000k"
|
|
1257
|
+
}
|
|
1258
|
+
},
|
|
1259
|
+
"ctx": null,
|
|
1260
|
+
"expected": "neon night lighting, saturated magenta and cyan neon glow against deep night ambient, urban cyberpunk feel, bioluminescence lighting, cool eerie cyan-green glow emanating from biological sources, soft self-illuminated highlights against deep ambient darkness, otherworldly atmosphere, window lighting, soft directional light from a single window source with natural falloff, 1:16 lighting ratio, single-source key against pitch-black shadow side, theatrical film-noir falloff with no fill and crushed unlit detail, 9000K open-shade color temperature, distinctly cool blue cast found in deep shade and cloud-shadowed mountain air, chilled and atmospheric"
|
|
1261
|
+
},
|
|
1262
|
+
{
|
|
1263
|
+
"key": "lighting/mid-of-each",
|
|
1264
|
+
"note": "multi-dim: mid-of-each across 5 dimensions",
|
|
1265
|
+
"node": {
|
|
1266
|
+
"id": "n1",
|
|
1267
|
+
"type": "lighting",
|
|
1268
|
+
"data": {
|
|
1269
|
+
"timeOfDay": "golden-hour",
|
|
1270
|
+
"lightingStyle": "selfie-natural",
|
|
1271
|
+
"lightingDirection": "silhouette-backlight",
|
|
1272
|
+
"lightingRatio": "ratio-1-4",
|
|
1273
|
+
"colorTemperature": "temp-5600k"
|
|
1274
|
+
}
|
|
1275
|
+
},
|
|
1276
|
+
"ctx": null,
|
|
1277
|
+
"expected": "golden hour lighting, warm sunset glow with soft directional sunlight and saturated golden tones, window-light selfie aesthetic, soft natural daylight from a single window with casual handheld framing, silhouette backlight, strong light source directly behind the subject rendering them as a dark shape with a luminous halo edge and bright background bloom, dramatic contour against the sky or window, 1:4 lighting ratio, strong contrast with deepening shadows on the unlit side, dramatic editorial feel with sculpted form and minimal shadow detail, 5600K daylight-balanced color temperature, neutral midday white sun with accurate color rendering and no warm or cool bias"
|
|
1278
|
+
},
|
|
1279
|
+
{
|
|
1280
|
+
"key": "lighting/multi-pick",
|
|
1281
|
+
"note": "array of 2 ids on the \"lightingStyle\" dimension",
|
|
1282
|
+
"node": {
|
|
1283
|
+
"id": "n1",
|
|
1284
|
+
"type": "lighting",
|
|
1285
|
+
"data": {
|
|
1286
|
+
"lightingStyle": [
|
|
1287
|
+
"three-point",
|
|
1288
|
+
"rembrandt"
|
|
1289
|
+
]
|
|
1290
|
+
}
|
|
1291
|
+
},
|
|
1292
|
+
"ctx": null,
|
|
1293
|
+
"expected": "three-point lighting setup, balanced key light with fill and rim back-light, classical studio look, Rembrandt lighting, distinctive triangle of light on the shadow-side cheek, painterly chiaroscuro"
|
|
1294
|
+
},
|
|
1295
|
+
{
|
|
1296
|
+
"key": "lighting/one-dimension",
|
|
1297
|
+
"note": "multi-dim: only \"timeOfDay\" set",
|
|
1298
|
+
"node": {
|
|
1299
|
+
"id": "n1",
|
|
1300
|
+
"type": "lighting",
|
|
1301
|
+
"data": {
|
|
1302
|
+
"timeOfDay": "dawn"
|
|
1303
|
+
}
|
|
1304
|
+
},
|
|
1305
|
+
"ctx": null,
|
|
1306
|
+
"expected": "dawn lighting, the pre-sunrise pale glow with deep blue ambient tones transitioning to soft pink and orange at the horizon, low contrast, cool ambient"
|
|
1307
|
+
},
|
|
1308
|
+
{
|
|
1309
|
+
"key": "lighting/pre-post",
|
|
1310
|
+
"note": "multi-dim: preText + postText",
|
|
1311
|
+
"node": {
|
|
1312
|
+
"id": "n1",
|
|
1313
|
+
"type": "lighting",
|
|
1314
|
+
"data": {
|
|
1315
|
+
"timeOfDay": "dawn",
|
|
1316
|
+
"preText": "shot on location",
|
|
1317
|
+
"postText": "no text overlays"
|
|
1318
|
+
}
|
|
1319
|
+
},
|
|
1320
|
+
"ctx": null,
|
|
1321
|
+
"expected": "shot on location, dawn lighting, the pre-sunrise pale glow with deep blue ambient tones transitioning to soft pink and orange at the horizon, low contrast, cool ambient, no text overlays"
|
|
1322
|
+
},
|
|
1323
|
+
{
|
|
1324
|
+
"key": "loop-subject/id:aurora",
|
|
1325
|
+
"note": "single-dim catalog id",
|
|
1326
|
+
"node": {
|
|
1327
|
+
"id": "n1",
|
|
1328
|
+
"type": "loop-subject",
|
|
1329
|
+
"data": {
|
|
1330
|
+
"loopSubject": "aurora"
|
|
1331
|
+
}
|
|
1332
|
+
},
|
|
1333
|
+
"ctx": null,
|
|
1334
|
+
"expected": "aurora borealis ribbons in green and violet over a snowy mountain horizon, wide centered framing, low ambient starlight, deep cosmic backdrop, no foreground subject"
|
|
1335
|
+
},
|
|
1336
|
+
{
|
|
1337
|
+
"key": "loop-subject/id:geometric-morph",
|
|
1338
|
+
"note": "single-dim catalog id",
|
|
1339
|
+
"node": {
|
|
1340
|
+
"id": "n1",
|
|
1341
|
+
"type": "loop-subject",
|
|
1342
|
+
"data": {
|
|
1343
|
+
"loopSubject": "geometric-morph"
|
|
1344
|
+
}
|
|
1345
|
+
},
|
|
1346
|
+
"ctx": null,
|
|
1347
|
+
"expected": "abstract array of glowing neon platonic solid wireframes morphing through self-similar fractal subdivisions, centered radial symmetric composition, deep dark backdrop, electric rim lighting, no foreground subject"
|
|
1348
|
+
},
|
|
1349
|
+
{
|
|
1350
|
+
"key": "loop-subject/id:tunnel-clean",
|
|
1351
|
+
"note": "single-dim catalog id",
|
|
1352
|
+
"node": {
|
|
1353
|
+
"id": "n1",
|
|
1354
|
+
"type": "loop-subject",
|
|
1355
|
+
"data": {
|
|
1356
|
+
"loopSubject": "tunnel-clean"
|
|
1357
|
+
}
|
|
1358
|
+
},
|
|
1359
|
+
"ctx": null,
|
|
1360
|
+
"expected": "infinite fractal tunnel of glowing neon geometric filaments, self-similar repeating depth that recurses to infinity, centered symmetric composition, deep volumetric light, dark void background, no foreground subject"
|
|
1361
|
+
},
|
|
1362
|
+
{
|
|
1363
|
+
"key": "loop-subject/pre-post",
|
|
1364
|
+
"note": "preText + postText wrap the base fragment",
|
|
1365
|
+
"node": {
|
|
1366
|
+
"id": "n1",
|
|
1367
|
+
"type": "loop-subject",
|
|
1368
|
+
"data": {
|
|
1369
|
+
"loopSubject": "aurora",
|
|
1370
|
+
"preText": "shot on location",
|
|
1371
|
+
"postText": "no text overlays"
|
|
1372
|
+
}
|
|
1373
|
+
},
|
|
1374
|
+
"ctx": null,
|
|
1375
|
+
"expected": "shot on location, aurora borealis ribbons in green and violet over a snowy mountain horizon, wide centered framing, low ambient starlight, deep cosmic backdrop, no foreground subject, no text overlays"
|
|
1376
|
+
},
|
|
1377
|
+
{
|
|
1378
|
+
"key": "material/id:concrete",
|
|
1379
|
+
"note": "single-dim catalog id",
|
|
1380
|
+
"node": {
|
|
1381
|
+
"id": "n1",
|
|
1382
|
+
"type": "material",
|
|
1383
|
+
"data": {
|
|
1384
|
+
"material": "concrete"
|
|
1385
|
+
}
|
|
1386
|
+
},
|
|
1387
|
+
"ctx": null,
|
|
1388
|
+
"expected": "made of cast concrete with a rough grey surface, visible formwork lines, scattered aggregate and an industrial brutalist feel"
|
|
1389
|
+
},
|
|
1390
|
+
{
|
|
1391
|
+
"key": "material/id:holographic-film",
|
|
1392
|
+
"note": "single-dim catalog id",
|
|
1393
|
+
"node": {
|
|
1394
|
+
"id": "n1",
|
|
1395
|
+
"type": "material",
|
|
1396
|
+
"data": {
|
|
1397
|
+
"material": "holographic-film"
|
|
1398
|
+
}
|
|
1399
|
+
},
|
|
1400
|
+
"ctx": null,
|
|
1401
|
+
"expected": "made of light-refracting holographic film with a thin reflective sheet surface, prismatic rainbow shimmer and shifting spectral highlights as the angle changes"
|
|
1402
|
+
},
|
|
1403
|
+
{
|
|
1404
|
+
"key": "material/id:silk",
|
|
1405
|
+
"note": "single-dim catalog id",
|
|
1406
|
+
"node": {
|
|
1407
|
+
"id": "n1",
|
|
1408
|
+
"type": "material",
|
|
1409
|
+
"data": {
|
|
1410
|
+
"material": "silk"
|
|
1411
|
+
}
|
|
1412
|
+
},
|
|
1413
|
+
"ctx": null,
|
|
1414
|
+
"expected": "made of smooth glossy silk with a subtle natural sheen and delicate fluid drape"
|
|
1415
|
+
},
|
|
1416
|
+
{
|
|
1417
|
+
"key": "material/multi-pick",
|
|
1418
|
+
"note": "array of 2 ids on \"material\"",
|
|
1419
|
+
"node": {
|
|
1420
|
+
"id": "n1",
|
|
1421
|
+
"type": "material",
|
|
1422
|
+
"data": {
|
|
1423
|
+
"material": [
|
|
1424
|
+
"silk",
|
|
1425
|
+
"cotton"
|
|
1426
|
+
]
|
|
1427
|
+
}
|
|
1428
|
+
},
|
|
1429
|
+
"ctx": null,
|
|
1430
|
+
"expected": "made of silk and cotton"
|
|
1431
|
+
},
|
|
1432
|
+
{
|
|
1433
|
+
"key": "material/pre-post",
|
|
1434
|
+
"note": "preText + postText wrap the base fragment",
|
|
1435
|
+
"node": {
|
|
1436
|
+
"id": "n1",
|
|
1437
|
+
"type": "material",
|
|
1438
|
+
"data": {
|
|
1439
|
+
"material": "silk",
|
|
1440
|
+
"preText": "shot on location",
|
|
1441
|
+
"postText": "no text overlays"
|
|
1442
|
+
}
|
|
1443
|
+
},
|
|
1444
|
+
"ctx": null,
|
|
1445
|
+
"expected": "shot on location, made of smooth glossy silk with a subtle natural sheen and delicate fluid drape, no text overlays"
|
|
1446
|
+
},
|
|
1447
|
+
{
|
|
1448
|
+
"key": "mood/id:bewildered",
|
|
1449
|
+
"note": "single-dim catalog id",
|
|
1450
|
+
"node": {
|
|
1451
|
+
"id": "n1",
|
|
1452
|
+
"type": "mood",
|
|
1453
|
+
"data": {
|
|
1454
|
+
"mood": "bewildered"
|
|
1455
|
+
}
|
|
1456
|
+
},
|
|
1457
|
+
"ctx": null,
|
|
1458
|
+
"expected": "with a bewildered, confused expression, brow furrowed and eyes wide"
|
|
1459
|
+
},
|
|
1460
|
+
{
|
|
1461
|
+
"key": "mood/id:conflicted",
|
|
1462
|
+
"note": "single-dim catalog id",
|
|
1463
|
+
"node": {
|
|
1464
|
+
"id": "n1",
|
|
1465
|
+
"type": "mood",
|
|
1466
|
+
"data": {
|
|
1467
|
+
"mood": "conflicted"
|
|
1468
|
+
}
|
|
1469
|
+
},
|
|
1470
|
+
"ctx": null,
|
|
1471
|
+
"expected": "with a conflicted expression of visible internal struggle, brow furrowed and gaze unfocused, caught between two impulses"
|
|
1472
|
+
},
|
|
1473
|
+
{
|
|
1474
|
+
"key": "mood/id:happy",
|
|
1475
|
+
"note": "single-dim catalog id",
|
|
1476
|
+
"node": {
|
|
1477
|
+
"id": "n1",
|
|
1478
|
+
"type": "mood",
|
|
1479
|
+
"data": {
|
|
1480
|
+
"mood": "happy"
|
|
1481
|
+
}
|
|
1482
|
+
},
|
|
1483
|
+
"ctx": null,
|
|
1484
|
+
"expected": "with a warm, happy expression and a genuine smile"
|
|
1485
|
+
},
|
|
1486
|
+
{
|
|
1487
|
+
"key": "mood/multi-pick",
|
|
1488
|
+
"note": "array of 2 ids on \"mood\"",
|
|
1489
|
+
"node": {
|
|
1490
|
+
"id": "n1",
|
|
1491
|
+
"type": "mood",
|
|
1492
|
+
"data": {
|
|
1493
|
+
"mood": [
|
|
1494
|
+
"happy",
|
|
1495
|
+
"joyful"
|
|
1496
|
+
]
|
|
1497
|
+
}
|
|
1498
|
+
},
|
|
1499
|
+
"ctx": null,
|
|
1500
|
+
"expected": "with a happy and joyful expression"
|
|
1501
|
+
},
|
|
1502
|
+
{
|
|
1503
|
+
"key": "mood/pre-post",
|
|
1504
|
+
"note": "preText + postText wrap the base fragment",
|
|
1505
|
+
"node": {
|
|
1506
|
+
"id": "n1",
|
|
1507
|
+
"type": "mood",
|
|
1508
|
+
"data": {
|
|
1509
|
+
"mood": "happy",
|
|
1510
|
+
"preText": "shot on location",
|
|
1511
|
+
"postText": "no text overlays"
|
|
1512
|
+
}
|
|
1513
|
+
},
|
|
1514
|
+
"ctx": null,
|
|
1515
|
+
"expected": "shot on location, with a warm, happy expression and a genuine smile, no text overlays"
|
|
1516
|
+
},
|
|
1517
|
+
{
|
|
1518
|
+
"key": "music-genre/first-of-each",
|
|
1519
|
+
"note": "multi-dim: first-of-each across 3 dimensions",
|
|
1520
|
+
"node": {
|
|
1521
|
+
"id": "n1",
|
|
1522
|
+
"type": "music-genre",
|
|
1523
|
+
"data": {
|
|
1524
|
+
"genre": "hip-hop",
|
|
1525
|
+
"subgenre": "trap",
|
|
1526
|
+
"era": "1920s"
|
|
1527
|
+
}
|
|
1528
|
+
},
|
|
1529
|
+
"ctx": null,
|
|
1530
|
+
"expected": "1920s trap"
|
|
1531
|
+
},
|
|
1532
|
+
{
|
|
1533
|
+
"key": "music-genre/last-of-each",
|
|
1534
|
+
"note": "multi-dim: last-of-each across 3 dimensions",
|
|
1535
|
+
"node": {
|
|
1536
|
+
"id": "n1",
|
|
1537
|
+
"type": "music-genre",
|
|
1538
|
+
"data": {
|
|
1539
|
+
"genre": "children",
|
|
1540
|
+
"subgenre": "kids-pop",
|
|
1541
|
+
"era": "futurist"
|
|
1542
|
+
}
|
|
1543
|
+
},
|
|
1544
|
+
"ctx": null,
|
|
1545
|
+
"expected": "futuristic kids pop"
|
|
1546
|
+
},
|
|
1547
|
+
{
|
|
1548
|
+
"key": "music-genre/mid-of-each",
|
|
1549
|
+
"note": "multi-dim: mid-of-each across 3 dimensions",
|
|
1550
|
+
"node": {
|
|
1551
|
+
"id": "n1",
|
|
1552
|
+
"type": "music-genre",
|
|
1553
|
+
"data": {
|
|
1554
|
+
"genre": "punk",
|
|
1555
|
+
"subgenre": "emo",
|
|
1556
|
+
"era": "1980s"
|
|
1557
|
+
}
|
|
1558
|
+
},
|
|
1559
|
+
"ctx": null,
|
|
1560
|
+
"expected": "1980s punk"
|
|
1561
|
+
},
|
|
1562
|
+
{
|
|
1563
|
+
"key": "music-genre/one-dimension",
|
|
1564
|
+
"note": "multi-dim: only \"genre\" set",
|
|
1565
|
+
"node": {
|
|
1566
|
+
"id": "n1",
|
|
1567
|
+
"type": "music-genre",
|
|
1568
|
+
"data": {
|
|
1569
|
+
"genre": "hip-hop"
|
|
1570
|
+
}
|
|
1571
|
+
},
|
|
1572
|
+
"ctx": null,
|
|
1573
|
+
"expected": "hip hop"
|
|
1574
|
+
},
|
|
1575
|
+
{
|
|
1576
|
+
"key": "music-genre/pre-post",
|
|
1577
|
+
"note": "multi-dim: preText + postText",
|
|
1578
|
+
"node": {
|
|
1579
|
+
"id": "n1",
|
|
1580
|
+
"type": "music-genre",
|
|
1581
|
+
"data": {
|
|
1582
|
+
"genre": "hip-hop",
|
|
1583
|
+
"preText": "shot on location",
|
|
1584
|
+
"postText": "no text overlays"
|
|
1585
|
+
}
|
|
1586
|
+
},
|
|
1587
|
+
"ctx": null,
|
|
1588
|
+
"expected": "shot on location, hip hop, no text overlays"
|
|
1589
|
+
},
|
|
1590
|
+
{
|
|
1591
|
+
"key": "music-mood/first-of-each",
|
|
1592
|
+
"note": "multi-dim: first-of-each across 3 dimensions",
|
|
1593
|
+
"node": {
|
|
1594
|
+
"id": "n1",
|
|
1595
|
+
"type": "music-mood",
|
|
1596
|
+
"data": {
|
|
1597
|
+
"energy": "low",
|
|
1598
|
+
"emotion": "happy",
|
|
1599
|
+
"vibe": "cinematic"
|
|
1600
|
+
}
|
|
1601
|
+
},
|
|
1602
|
+
"ctx": null,
|
|
1603
|
+
"expected": "low-energy happy cinematic"
|
|
1604
|
+
},
|
|
1605
|
+
{
|
|
1606
|
+
"key": "music-mood/last-of-each",
|
|
1607
|
+
"note": "multi-dim: last-of-each across 3 dimensions",
|
|
1608
|
+
"node": {
|
|
1609
|
+
"id": "n1",
|
|
1610
|
+
"type": "music-mood",
|
|
1611
|
+
"data": {
|
|
1612
|
+
"energy": "ferocious",
|
|
1613
|
+
"emotion": "awe",
|
|
1614
|
+
"vibe": "clandestine"
|
|
1615
|
+
}
|
|
1616
|
+
},
|
|
1617
|
+
"ctx": null,
|
|
1618
|
+
"expected": "ferocious awe-inspiring clandestine"
|
|
1619
|
+
},
|
|
1620
|
+
{
|
|
1621
|
+
"key": "music-mood/mid-of-each",
|
|
1622
|
+
"note": "multi-dim: mid-of-each across 3 dimensions",
|
|
1623
|
+
"node": {
|
|
1624
|
+
"id": "n1",
|
|
1625
|
+
"type": "music-mood",
|
|
1626
|
+
"data": {
|
|
1627
|
+
"energy": "high",
|
|
1628
|
+
"emotion": "mysterious",
|
|
1629
|
+
"vibe": "uplifting"
|
|
1630
|
+
}
|
|
1631
|
+
},
|
|
1632
|
+
"ctx": null,
|
|
1633
|
+
"expected": "high-energy mysterious uplifting"
|
|
1634
|
+
},
|
|
1635
|
+
{
|
|
1636
|
+
"key": "music-mood/one-dimension",
|
|
1637
|
+
"note": "multi-dim: only \"energy\" set",
|
|
1638
|
+
"node": {
|
|
1639
|
+
"id": "n1",
|
|
1640
|
+
"type": "music-mood",
|
|
1641
|
+
"data": {
|
|
1642
|
+
"energy": "low"
|
|
1643
|
+
}
|
|
1644
|
+
},
|
|
1645
|
+
"ctx": null,
|
|
1646
|
+
"expected": "low-energy"
|
|
1647
|
+
},
|
|
1648
|
+
{
|
|
1649
|
+
"key": "music-mood/pre-post",
|
|
1650
|
+
"note": "multi-dim: preText + postText",
|
|
1651
|
+
"node": {
|
|
1652
|
+
"id": "n1",
|
|
1653
|
+
"type": "music-mood",
|
|
1654
|
+
"data": {
|
|
1655
|
+
"energy": "low",
|
|
1656
|
+
"preText": "shot on location",
|
|
1657
|
+
"postText": "no text overlays"
|
|
1658
|
+
}
|
|
1659
|
+
},
|
|
1660
|
+
"ctx": null,
|
|
1661
|
+
"expected": "shot on location, low-energy, no text overlays"
|
|
1662
|
+
},
|
|
1663
|
+
{
|
|
1664
|
+
"key": "person/first-of-each",
|
|
1665
|
+
"note": "multi-dim: first-of-each across 33 dimensions",
|
|
1666
|
+
"node": {
|
|
1667
|
+
"id": "n1",
|
|
1668
|
+
"type": "person",
|
|
1669
|
+
"data": {
|
|
1670
|
+
"type": "man",
|
|
1671
|
+
"age": "age-baby",
|
|
1672
|
+
"ethnicity": "asian-any",
|
|
1673
|
+
"regionalAesthetic": "cali-beach",
|
|
1674
|
+
"frame": "frame-petite",
|
|
1675
|
+
"bodyMass": "mass-lean",
|
|
1676
|
+
"bust": "bust-small",
|
|
1677
|
+
"waist": "waist-defined",
|
|
1678
|
+
"hips": "hips-narrow",
|
|
1679
|
+
"silhouette": "silhouette-hourglass",
|
|
1680
|
+
"faceShape": "face-oval",
|
|
1681
|
+
"jawline": "jaw-strong",
|
|
1682
|
+
"cheekbones": "cheekbones-average",
|
|
1683
|
+
"facialFullness": "facial-fullness-average",
|
|
1684
|
+
"eyeShape": "eye-almond",
|
|
1685
|
+
"eyelidType": "eyelid-standard",
|
|
1686
|
+
"canthalTilt": "canthal-neutral",
|
|
1687
|
+
"eyeSpacing": "eye-spacing-average",
|
|
1688
|
+
"eyeSetBrow": "eyeset-average",
|
|
1689
|
+
"nose": "nose-straight",
|
|
1690
|
+
"noseTip": "nose-tip-natural",
|
|
1691
|
+
"lipFullness": "lips-thin",
|
|
1692
|
+
"lipShape": "lips-natural",
|
|
1693
|
+
"lipState": "lip-state-chapped",
|
|
1694
|
+
"hairBase": "base-bald",
|
|
1695
|
+
"hairColor": "hair-platinum",
|
|
1696
|
+
"eyebrows": "brows-natural",
|
|
1697
|
+
"skinTone": "skin-very-fair",
|
|
1698
|
+
"skinTexture": "texture-smooth",
|
|
1699
|
+
"eyeColor": "eyes-brown",
|
|
1700
|
+
"eyeState": "eye-state-closed",
|
|
1701
|
+
"facialHair": "face-clean-shaven",
|
|
1702
|
+
"distinctiveFeature": "feature-glasses"
|
|
1703
|
+
}
|
|
1704
|
+
},
|
|
1705
|
+
"ctx": null,
|
|
1706
|
+
"expected": "a man, a baby under 1 year old, of Asian descent, a California beach aesthetic — laid-back beach-town vibe, golden-hour sun-warmed energy, easy carefree mood, petite, lean build, small bust, defined waist, narrow hips, hourglass silhouette, an oval face shape, a strong, sharply defined jawline, almond-shaped eyes, a straight nose, thin lips, with chapped, cracked, weather-worn dry lips, a shaved bald head, platinum blonde hair, very pale and icy, natural eyebrows, very fair pale skin, with flawless, silky smooth skin, brown eyes, with eyes fully closed in a peaceful expression, clean-shaven, wearing glasses"
|
|
1707
|
+
},
|
|
1708
|
+
{
|
|
1709
|
+
"key": "person/last-of-each",
|
|
1710
|
+
"note": "multi-dim: last-of-each across 33 dimensions",
|
|
1711
|
+
"node": {
|
|
1712
|
+
"id": "n1",
|
|
1713
|
+
"type": "person",
|
|
1714
|
+
"data": {
|
|
1715
|
+
"type": "grim-reaper",
|
|
1716
|
+
"age": "age-custom",
|
|
1717
|
+
"ethnicity": "mixed",
|
|
1718
|
+
"regionalAesthetic": "auckland-coastal",
|
|
1719
|
+
"frame": "frame-broad",
|
|
1720
|
+
"bodyMass": "mass-heavy",
|
|
1721
|
+
"bust": "bust-very-full",
|
|
1722
|
+
"waist": "waist-straight",
|
|
1723
|
+
"hips": "hips-wide",
|
|
1724
|
+
"silhouette": "silhouette-athletic",
|
|
1725
|
+
"faceShape": "face-triangular",
|
|
1726
|
+
"jawline": "jaw-double",
|
|
1727
|
+
"cheekbones": "cheekbones-wide",
|
|
1728
|
+
"facialFullness": "facial-fullness-round",
|
|
1729
|
+
"eyeShape": "eye-narrow",
|
|
1730
|
+
"eyelidType": "eye-deep-set",
|
|
1731
|
+
"canthalTilt": "eye-downturned",
|
|
1732
|
+
"eyeSpacing": "eye-wide-set",
|
|
1733
|
+
"eyeSetBrow": "eyeset-high",
|
|
1734
|
+
"nose": "nose-hooked",
|
|
1735
|
+
"noseTip": "nose-tip-drooping",
|
|
1736
|
+
"lipFullness": "lips-full-lower",
|
|
1737
|
+
"lipShape": "lips-small",
|
|
1738
|
+
"lipState": "lip-state-pouting",
|
|
1739
|
+
"hairBase": "base-wet",
|
|
1740
|
+
"hairColor": "hair-rainbow",
|
|
1741
|
+
"eyebrows": "brows-unibrow",
|
|
1742
|
+
"skinTone": "skin-very-dark",
|
|
1743
|
+
"skinTexture": "texture-acne-scarred",
|
|
1744
|
+
"eyeColor": "eyes-black",
|
|
1745
|
+
"eyeState": "eye-state-glassy",
|
|
1746
|
+
"facialHair": "face-five-oclock-shadow",
|
|
1747
|
+
"distinctiveFeature": "feature-fangs"
|
|
1748
|
+
}
|
|
1749
|
+
},
|
|
1750
|
+
"ctx": null,
|
|
1751
|
+
"expected": "the Grim Reaper — tall hooded skeletal figure in a tattered black robe, bony hands gripping a long wooden scythe, face hidden in shadow, of mixed heritage, an Auckland coastal aesthetic — New Zealand harbor-city vibe, considered Pacific polish, broad-framed, heavy-set build, very full bust, straight waistline, wide hips, athletic silhouette, a triangular face shape with a narrow forehead and wide jaw, a visible double chin, wide, prominent cheekbones, a round face with soft, rounded cheeks, narrow, elongated eyes, deep-set eyes, downturned eyes with the outer corners angled down, negative canthal tilt, wide-set eyes spaced widely apart, eyes set well below the brow with generous brow-to-eye distance, doe eyes, a hooked nose with a strongly curved tip, a slightly drooping, downward-pointing nose tip, full lips with a noticeably fuller lower lip, a small petite mouth, with a full pouting expression, wet, slick hair, rainbow hair with streaks of multiple bright dyed colors, a connected unibrow, very dark ebony skin, the deepest skin tone, with visible acne scarring, healed pitted-skin texture and uneven surface from past breakouts, jet-black eyes with a truly black iris, deeper than brown, with glassy, tear-glazed wet eyes, a five-o'clock shadow, daily growth heavier than light stubble, with visible fangs at the canines, character / vampire archetype"
|
|
1752
|
+
},
|
|
1753
|
+
{
|
|
1754
|
+
"key": "person/mid-of-each",
|
|
1755
|
+
"note": "multi-dim: mid-of-each across 33 dimensions",
|
|
1756
|
+
"node": {
|
|
1757
|
+
"id": "n1",
|
|
1758
|
+
"type": "person",
|
|
1759
|
+
"data": {
|
|
1760
|
+
"type": "crusader",
|
|
1761
|
+
"age": "age-early-20s",
|
|
1762
|
+
"ethnicity": "norwegian",
|
|
1763
|
+
"regionalAesthetic": "ginza-office",
|
|
1764
|
+
"frame": "frame-average",
|
|
1765
|
+
"bodyMass": "mass-full",
|
|
1766
|
+
"bust": "bust-full",
|
|
1767
|
+
"waist": "waist-average",
|
|
1768
|
+
"hips": "hips-balanced",
|
|
1769
|
+
"silhouette": "silhouette-pear",
|
|
1770
|
+
"faceShape": "face-heart",
|
|
1771
|
+
"jawline": "jaw-pointed",
|
|
1772
|
+
"cheekbones": "cheekbones-high-defined",
|
|
1773
|
+
"facialFullness": "facial-fullness-lean",
|
|
1774
|
+
"eyeShape": "eye-double-eyelid",
|
|
1775
|
+
"eyelidType": "eye-droopy",
|
|
1776
|
+
"canthalTilt": "eye-upturned",
|
|
1777
|
+
"eyeSpacing": "eye-close-set",
|
|
1778
|
+
"eyeSetBrow": "eyeset-low",
|
|
1779
|
+
"nose": "nose-button",
|
|
1780
|
+
"noseTip": "nose-tip-upturned",
|
|
1781
|
+
"lipFullness": "lips-full",
|
|
1782
|
+
"lipShape": "lips-wide",
|
|
1783
|
+
"lipState": "lip-state-pursed",
|
|
1784
|
+
"hairBase": "base-long-straight",
|
|
1785
|
+
"hairColor": "hair-gray",
|
|
1786
|
+
"eyebrows": "brows-bold",
|
|
1787
|
+
"skinTone": "skin-tan",
|
|
1788
|
+
"skinTexture": "texture-tan-lines",
|
|
1789
|
+
"eyeColor": "eyes-violet",
|
|
1790
|
+
"eyeState": "eye-state-gazing-away",
|
|
1791
|
+
"facialHair": "face-goatee",
|
|
1792
|
+
"distinctiveFeature": "feature-face-tattoo"
|
|
1793
|
+
}
|
|
1794
|
+
},
|
|
1795
|
+
"ctx": null,
|
|
1796
|
+
"expected": "a Crusader knight — chainmail hauberk under a white surcoat with a red cross emblem, conical helm, longsword and kite shield, devout warrior bearing, in their early 20s, around 21 years old, of Norwegian descent, a Ginza Tokyo office aesthetic — buttoned-up Japanese corporate-elegant vibe, full-figured, full bust, pear-shaped silhouette, a heart-shaped face with a wide forehead and pointed chin, a pointed chin with a narrow jawline, high, defined cheekbones, a lean face with low facial fat and subtle hollowing beneath the cheekbones, double-eyelid eyes with a clearly defined upper crease, droopy eyes with the upper lids sitting low for a soft, sleepy gaze, upturned eyes with the outer corners lifted, positive canthal tilt, close-set eyes set close together, eyes set close beneath the brow with little brow-to-eye distance, hunter eyes, a small button nose with a rounded tip, a slightly upturned nose tip, full plump lips, a wide mouth, with lips pursed, pressed and pushed forward, long straight hair, gray hair, bold defined dark full eyebrows, tan skin, with visible swimwear tan lines on the skin, rare violet eyes with a deep purple iris, gazing off-camera with a contemplative expression, a goatee, with a small face tattoo near the eye or cheekbone"
|
|
1797
|
+
},
|
|
1798
|
+
{
|
|
1799
|
+
"key": "person/one-dimension",
|
|
1800
|
+
"note": "multi-dim: only \"type\" set",
|
|
1801
|
+
"node": {
|
|
1802
|
+
"id": "n1",
|
|
1803
|
+
"type": "person",
|
|
1804
|
+
"data": {
|
|
1805
|
+
"type": "man"
|
|
1806
|
+
}
|
|
1807
|
+
},
|
|
1808
|
+
"ctx": null,
|
|
1809
|
+
"expected": "a man"
|
|
1810
|
+
},
|
|
1811
|
+
{
|
|
1812
|
+
"key": "person/pre-post",
|
|
1813
|
+
"note": "multi-dim: preText + postText",
|
|
1814
|
+
"node": {
|
|
1815
|
+
"id": "n1",
|
|
1816
|
+
"type": "person",
|
|
1817
|
+
"data": {
|
|
1818
|
+
"type": "man",
|
|
1819
|
+
"preText": "shot on location",
|
|
1820
|
+
"postText": "no text overlays"
|
|
1821
|
+
}
|
|
1822
|
+
},
|
|
1823
|
+
"ctx": null,
|
|
1824
|
+
"expected": "shot on location, a man, no text overlays"
|
|
1825
|
+
},
|
|
1826
|
+
{
|
|
1827
|
+
"key": "photo-genre/id:fashion-editorial",
|
|
1828
|
+
"note": "single-dim catalog id",
|
|
1829
|
+
"node": {
|
|
1830
|
+
"id": "n1",
|
|
1831
|
+
"type": "photo-genre",
|
|
1832
|
+
"data": {
|
|
1833
|
+
"photoGenre": "fashion-editorial"
|
|
1834
|
+
}
|
|
1835
|
+
},
|
|
1836
|
+
"ctx": null,
|
|
1837
|
+
"expected": "shot as a high-fashion magazine editorial, polished studio lighting, deliberate posing, designer wardrobe, full-bleed composition with strong color blocking and a glossy print-ready finish"
|
|
1838
|
+
},
|
|
1839
|
+
{
|
|
1840
|
+
"key": "photo-genre/id:id-passport",
|
|
1841
|
+
"note": "single-dim catalog id",
|
|
1842
|
+
"node": {
|
|
1843
|
+
"id": "n1",
|
|
1844
|
+
"type": "photo-genre",
|
|
1845
|
+
"data": {
|
|
1846
|
+
"photoGenre": "id-passport"
|
|
1847
|
+
}
|
|
1848
|
+
},
|
|
1849
|
+
"ctx": null,
|
|
1850
|
+
"expected": "shot as a regulation passport photograph, dead-center face, neutral expression, plain off-white backdrop, even flat front lighting and no shadows under the chin"
|
|
1851
|
+
},
|
|
1852
|
+
{
|
|
1853
|
+
"key": "photo-genre/id:product-shot",
|
|
1854
|
+
"note": "single-dim catalog id",
|
|
1855
|
+
"node": {
|
|
1856
|
+
"id": "n1",
|
|
1857
|
+
"type": "photo-genre",
|
|
1858
|
+
"data": {
|
|
1859
|
+
"photoGenre": "product-shot"
|
|
1860
|
+
}
|
|
1861
|
+
},
|
|
1862
|
+
"ctx": null,
|
|
1863
|
+
"expected": "shot as a clean e-commerce product photograph, the subject isolated on a neutral seamless background, even shadowless studio lighting and a sharp catalog-ready composition"
|
|
1864
|
+
},
|
|
1865
|
+
{
|
|
1866
|
+
"key": "photo-genre/pre-post",
|
|
1867
|
+
"note": "preText + postText wrap the base fragment",
|
|
1868
|
+
"node": {
|
|
1869
|
+
"id": "n1",
|
|
1870
|
+
"type": "photo-genre",
|
|
1871
|
+
"data": {
|
|
1872
|
+
"photoGenre": "fashion-editorial",
|
|
1873
|
+
"preText": "shot on location",
|
|
1874
|
+
"postText": "no text overlays"
|
|
1875
|
+
}
|
|
1876
|
+
},
|
|
1877
|
+
"ctx": null,
|
|
1878
|
+
"expected": "shot on location, shot as a high-fashion magazine editorial, polished studio lighting, deliberate posing, designer wardrobe, full-bleed composition with strong color blocking and a glossy print-ready finish, no text overlays"
|
|
1879
|
+
},
|
|
1880
|
+
{
|
|
1881
|
+
"key": "photographer/id:guido-van-helten",
|
|
1882
|
+
"note": "single-dim catalog id",
|
|
1883
|
+
"node": {
|
|
1884
|
+
"id": "n1",
|
|
1885
|
+
"type": "photographer",
|
|
1886
|
+
"data": {
|
|
1887
|
+
"photographer": "guido-van-helten"
|
|
1888
|
+
}
|
|
1889
|
+
},
|
|
1890
|
+
"ctx": null,
|
|
1891
|
+
"expected": "in the style of Guido van Helten, monumental muralist portraiture with weathered concrete texture and quiet grayscale tonality"
|
|
1892
|
+
},
|
|
1893
|
+
{
|
|
1894
|
+
"key": "photographer/id:henri-cartier-bresson",
|
|
1895
|
+
"note": "single-dim catalog id",
|
|
1896
|
+
"node": {
|
|
1897
|
+
"id": "n1",
|
|
1898
|
+
"type": "photographer",
|
|
1899
|
+
"data": {
|
|
1900
|
+
"photographer": "henri-cartier-bresson"
|
|
1901
|
+
}
|
|
1902
|
+
},
|
|
1903
|
+
"ctx": null,
|
|
1904
|
+
"expected": "in the style of Henri Cartier-Bresson, decisive-moment black-and-white street photography with geometric framing and natural light"
|
|
1905
|
+
},
|
|
1906
|
+
{
|
|
1907
|
+
"key": "photographer/id:tim-walker",
|
|
1908
|
+
"note": "single-dim catalog id",
|
|
1909
|
+
"node": {
|
|
1910
|
+
"id": "n1",
|
|
1911
|
+
"type": "photographer",
|
|
1912
|
+
"data": {
|
|
1913
|
+
"photographer": "tim-walker"
|
|
1914
|
+
}
|
|
1915
|
+
},
|
|
1916
|
+
"ctx": null,
|
|
1917
|
+
"expected": "in the style of Tim Walker, painterly fairytale fashion staging with elaborate hand-built sets and a soft pastel palette"
|
|
1918
|
+
},
|
|
1919
|
+
{
|
|
1920
|
+
"key": "photographer/pre-post",
|
|
1921
|
+
"note": "preText + postText wrap the base fragment",
|
|
1922
|
+
"node": {
|
|
1923
|
+
"id": "n1",
|
|
1924
|
+
"type": "photographer",
|
|
1925
|
+
"data": {
|
|
1926
|
+
"photographer": "tim-walker",
|
|
1927
|
+
"preText": "shot on location",
|
|
1928
|
+
"postText": "no text overlays"
|
|
1929
|
+
}
|
|
1930
|
+
},
|
|
1931
|
+
"ctx": null,
|
|
1932
|
+
"expected": "shot on location, in the style of Tim Walker, painterly fairytale fashion staging with elaborate hand-built sets and a soft pastel palette, no text overlays"
|
|
1933
|
+
},
|
|
1934
|
+
{
|
|
1935
|
+
"key": "pose/id:activity-driving",
|
|
1936
|
+
"note": "single-dim catalog id",
|
|
1937
|
+
"node": {
|
|
1938
|
+
"id": "n1",
|
|
1939
|
+
"type": "pose",
|
|
1940
|
+
"data": {
|
|
1941
|
+
"pose": "activity-driving"
|
|
1942
|
+
}
|
|
1943
|
+
},
|
|
1944
|
+
"ctx": null,
|
|
1945
|
+
"expected": "behind the wheel of a vehicle, both hands on the steering wheel, gaze fixed on the road ahead"
|
|
1946
|
+
},
|
|
1947
|
+
{
|
|
1948
|
+
"key": "pose/id:standing-upright",
|
|
1949
|
+
"note": "single-dim catalog id",
|
|
1950
|
+
"node": {
|
|
1951
|
+
"id": "n1",
|
|
1952
|
+
"type": "pose",
|
|
1953
|
+
"data": {
|
|
1954
|
+
"pose": "standing-upright"
|
|
1955
|
+
}
|
|
1956
|
+
},
|
|
1957
|
+
"ctx": null,
|
|
1958
|
+
"expected": "standing upright in a relaxed natural posture"
|
|
1959
|
+
},
|
|
1960
|
+
{
|
|
1961
|
+
"key": "pose/id:thinking",
|
|
1962
|
+
"note": "single-dim catalog id",
|
|
1963
|
+
"node": {
|
|
1964
|
+
"id": "n1",
|
|
1965
|
+
"type": "pose",
|
|
1966
|
+
"data": {
|
|
1967
|
+
"pose": "thinking"
|
|
1968
|
+
}
|
|
1969
|
+
},
|
|
1970
|
+
"ctx": null,
|
|
1971
|
+
"expected": "in a thinking pose with hand on chin, gaze contemplative"
|
|
1972
|
+
},
|
|
1973
|
+
{
|
|
1974
|
+
"key": "pose/pre-post",
|
|
1975
|
+
"note": "preText + postText wrap the base fragment",
|
|
1976
|
+
"node": {
|
|
1977
|
+
"id": "n1",
|
|
1978
|
+
"type": "pose",
|
|
1979
|
+
"data": {
|
|
1980
|
+
"pose": "standing-upright",
|
|
1981
|
+
"preText": "shot on location",
|
|
1982
|
+
"postText": "no text overlays"
|
|
1983
|
+
}
|
|
1984
|
+
},
|
|
1985
|
+
"ctx": null,
|
|
1986
|
+
"expected": "shot on location, standing upright in a relaxed natural posture, no text overlays"
|
|
1987
|
+
},
|
|
1988
|
+
{
|
|
1989
|
+
"key": "post-process-effects/id:film-burn",
|
|
1990
|
+
"note": "single-dim catalog id",
|
|
1991
|
+
"node": {
|
|
1992
|
+
"id": "n1",
|
|
1993
|
+
"type": "post-process-effects",
|
|
1994
|
+
"data": {
|
|
1995
|
+
"postProcess": "film-burn"
|
|
1996
|
+
}
|
|
1997
|
+
},
|
|
1998
|
+
"ctx": null,
|
|
1999
|
+
"expected": "film burn flare in the corner with a vintage Super-8 aesthetic, charred edge bleeding orange and white light into the frame"
|
|
2000
|
+
},
|
|
2001
|
+
{
|
|
2002
|
+
"key": "post-process-effects/id:lift-gamma-gain",
|
|
2003
|
+
"note": "single-dim catalog id",
|
|
2004
|
+
"node": {
|
|
2005
|
+
"id": "n1",
|
|
2006
|
+
"type": "post-process-effects",
|
|
2007
|
+
"data": {
|
|
2008
|
+
"postProcess": "lift-gamma-gain"
|
|
2009
|
+
}
|
|
2010
|
+
},
|
|
2011
|
+
"ctx": null,
|
|
2012
|
+
"expected": "three-way color grading with lift-gamma-gain wheels shaping shadow lift, midtone gamma and highlight gain independently, professional colorist-grade tonal sculpting"
|
|
2013
|
+
},
|
|
2014
|
+
{
|
|
2015
|
+
"key": "post-process-effects/id:vignette-soft",
|
|
2016
|
+
"note": "single-dim catalog id",
|
|
2017
|
+
"node": {
|
|
2018
|
+
"id": "n1",
|
|
2019
|
+
"type": "post-process-effects",
|
|
2020
|
+
"data": {
|
|
2021
|
+
"postProcess": "vignette-soft"
|
|
2022
|
+
}
|
|
2023
|
+
},
|
|
2024
|
+
"ctx": null,
|
|
2025
|
+
"expected": "soft dark vignette gently darkening the corners of the frame, drawing the eye toward the center without calling attention to itself"
|
|
2026
|
+
},
|
|
2027
|
+
{
|
|
2028
|
+
"key": "post-process-effects/multi-pick",
|
|
2029
|
+
"note": "array of 2 ids on \"postProcess\"",
|
|
2030
|
+
"node": {
|
|
2031
|
+
"id": "n1",
|
|
2032
|
+
"type": "post-process-effects",
|
|
2033
|
+
"data": {
|
|
2034
|
+
"postProcess": [
|
|
2035
|
+
"vignette-soft",
|
|
2036
|
+
"vignette-heavy"
|
|
2037
|
+
]
|
|
2038
|
+
}
|
|
2039
|
+
},
|
|
2040
|
+
"ctx": null,
|
|
2041
|
+
"expected": "soft dark vignette gently darkening the corners of the frame, drawing the eye toward the center without calling attention to itself, heavy black vignette circumscribing the subject in a dramatic dark oval, deep falloff at the edges that nearly crushes to black"
|
|
2042
|
+
},
|
|
2043
|
+
{
|
|
2044
|
+
"key": "post-process-effects/pre-post",
|
|
2045
|
+
"note": "preText + postText wrap the base fragment",
|
|
2046
|
+
"node": {
|
|
2047
|
+
"id": "n1",
|
|
2048
|
+
"type": "post-process-effects",
|
|
2049
|
+
"data": {
|
|
2050
|
+
"postProcess": "vignette-soft",
|
|
2051
|
+
"preText": "shot on location",
|
|
2052
|
+
"postText": "no text overlays"
|
|
2053
|
+
}
|
|
2054
|
+
},
|
|
2055
|
+
"ctx": null,
|
|
2056
|
+
"expected": "shot on location, soft dark vignette gently darkening the corners of the frame, drawing the eye toward the center without calling attention to itself, no text overlays"
|
|
2057
|
+
},
|
|
2058
|
+
{
|
|
2059
|
+
"key": "render-quality/id:denoised",
|
|
2060
|
+
"note": "single-dim catalog id",
|
|
2061
|
+
"node": {
|
|
2062
|
+
"id": "n1",
|
|
2063
|
+
"type": "render-quality",
|
|
2064
|
+
"data": {
|
|
2065
|
+
"renderQuality": "denoised"
|
|
2066
|
+
}
|
|
2067
|
+
},
|
|
2068
|
+
"ctx": null,
|
|
2069
|
+
"expected": "clean denoised rendering with noise removed entirely, pristine smooth surfaces and zero grain or speckle across shadows and midtones"
|
|
2070
|
+
},
|
|
2071
|
+
{
|
|
2072
|
+
"key": "render-quality/id:lumen-reflections",
|
|
2073
|
+
"note": "single-dim catalog id",
|
|
2074
|
+
"node": {
|
|
2075
|
+
"id": "n1",
|
|
2076
|
+
"type": "render-quality",
|
|
2077
|
+
"data": {
|
|
2078
|
+
"renderQuality": "lumen-reflections"
|
|
2079
|
+
}
|
|
2080
|
+
},
|
|
2081
|
+
"ctx": null,
|
|
2082
|
+
"expected": "Lumen-style real-time dynamic global illumination with crisp screen-space reflections, soft contact shadows and beautifully lit indirect bounces"
|
|
2083
|
+
},
|
|
2084
|
+
{
|
|
2085
|
+
"key": "render-quality/id:unreal-engine-5",
|
|
2086
|
+
"note": "single-dim catalog id",
|
|
2087
|
+
"node": {
|
|
2088
|
+
"id": "n1",
|
|
2089
|
+
"type": "render-quality",
|
|
2090
|
+
"data": {
|
|
2091
|
+
"renderQuality": "unreal-engine-5"
|
|
2092
|
+
}
|
|
2093
|
+
},
|
|
2094
|
+
"ctx": null,
|
|
2095
|
+
"expected": "rendered in Unreal Engine 5, real-time path-traced lighting with Lumen reflections, Nanite-grade micro-detail and cinematic post-processing"
|
|
2096
|
+
},
|
|
2097
|
+
{
|
|
2098
|
+
"key": "render-quality/pre-post",
|
|
2099
|
+
"note": "preText + postText wrap the base fragment",
|
|
2100
|
+
"node": {
|
|
2101
|
+
"id": "n1",
|
|
2102
|
+
"type": "render-quality",
|
|
2103
|
+
"data": {
|
|
2104
|
+
"renderQuality": "unreal-engine-5",
|
|
2105
|
+
"preText": "shot on location",
|
|
2106
|
+
"postText": "no text overlays"
|
|
2107
|
+
}
|
|
2108
|
+
},
|
|
2109
|
+
"ctx": null,
|
|
2110
|
+
"expected": "shot on location, rendered in Unreal Engine 5, real-time path-traced lighting with Lumen reflections, Nanite-grade micro-detail and cinematic post-processing, no text overlays"
|
|
2111
|
+
},
|
|
2112
|
+
{
|
|
2113
|
+
"key": "setting/empty-data",
|
|
2114
|
+
"note": "no value selected injects nothing",
|
|
2115
|
+
"node": {
|
|
2116
|
+
"id": "n1",
|
|
2117
|
+
"type": "setting",
|
|
2118
|
+
"data": {}
|
|
2119
|
+
},
|
|
2120
|
+
"ctx": null,
|
|
2121
|
+
"expected": ""
|
|
2122
|
+
},
|
|
2123
|
+
{
|
|
2124
|
+
"key": "setting/id:coffee-shop",
|
|
2125
|
+
"note": "single-dim catalog id",
|
|
2126
|
+
"node": {
|
|
2127
|
+
"id": "n1",
|
|
2128
|
+
"type": "setting",
|
|
2129
|
+
"data": {
|
|
2130
|
+
"setting": "coffee-shop"
|
|
2131
|
+
}
|
|
2132
|
+
},
|
|
2133
|
+
"ctx": null,
|
|
2134
|
+
"expected": "set in a cozy coffee shop interior with warm pendant lights, exposed brick walls and steam drifting over espresso machines"
|
|
2135
|
+
},
|
|
2136
|
+
{
|
|
2137
|
+
"key": "setting/id:neon-alley",
|
|
2138
|
+
"note": "single-dim catalog id",
|
|
2139
|
+
"node": {
|
|
2140
|
+
"id": "n1",
|
|
2141
|
+
"type": "setting",
|
|
2142
|
+
"data": {
|
|
2143
|
+
"setting": "neon-alley"
|
|
2144
|
+
}
|
|
2145
|
+
},
|
|
2146
|
+
"ctx": null,
|
|
2147
|
+
"expected": "set in a rain-soaked neon-lit alley in a Tokyo-style nightlife district with glowing kanji signs, steam vents and reflective puddles"
|
|
2148
|
+
},
|
|
2149
|
+
{
|
|
2150
|
+
"key": "setting/id:wasteland",
|
|
2151
|
+
"note": "single-dim catalog id",
|
|
2152
|
+
"node": {
|
|
2153
|
+
"id": "n1",
|
|
2154
|
+
"type": "setting",
|
|
2155
|
+
"data": {
|
|
2156
|
+
"setting": "wasteland"
|
|
2157
|
+
}
|
|
2158
|
+
},
|
|
2159
|
+
"ctx": null,
|
|
2160
|
+
"expected": "set in a bleak post-apocalyptic wasteland with rusted vehicles, broken overpasses, grey ash drifts and a perpetually overcast sky"
|
|
2161
|
+
},
|
|
2162
|
+
{
|
|
2163
|
+
"key": "setting/pre-post",
|
|
2164
|
+
"note": "preText + postText wrap the base fragment",
|
|
2165
|
+
"node": {
|
|
2166
|
+
"id": "n1",
|
|
2167
|
+
"type": "setting",
|
|
2168
|
+
"data": {
|
|
2169
|
+
"setting": "coffee-shop",
|
|
2170
|
+
"preText": "shot on location",
|
|
2171
|
+
"postText": "no text overlays"
|
|
2172
|
+
}
|
|
2173
|
+
},
|
|
2174
|
+
"ctx": null,
|
|
2175
|
+
"expected": "shot on location, set in a cozy coffee shop interior with warm pendant lights, exposed brick walls and steam drifting over espresso machines, no text overlays"
|
|
2176
|
+
},
|
|
2177
|
+
{
|
|
2178
|
+
"key": "setting/unknown-id",
|
|
2179
|
+
"note": "an unknown catalog id injects nothing",
|
|
2180
|
+
"node": {
|
|
2181
|
+
"id": "n1",
|
|
2182
|
+
"type": "setting",
|
|
2183
|
+
"data": {
|
|
2184
|
+
"setting": "does-not-exist"
|
|
2185
|
+
}
|
|
2186
|
+
},
|
|
2187
|
+
"ctx": null,
|
|
2188
|
+
"expected": ""
|
|
2189
|
+
},
|
|
2190
|
+
{
|
|
2191
|
+
"key": "style-guide/text",
|
|
2192
|
+
"note": "free-text node — style guide text passes through verbatim",
|
|
2193
|
+
"node": {
|
|
2194
|
+
"id": "n1",
|
|
2195
|
+
"type": "style-guide",
|
|
2196
|
+
"data": {
|
|
2197
|
+
"text": "Always warm, never neon."
|
|
2198
|
+
}
|
|
2199
|
+
},
|
|
2200
|
+
"ctx": null,
|
|
2201
|
+
"expected": "Always warm, never neon."
|
|
2202
|
+
},
|
|
2203
|
+
{
|
|
2204
|
+
"key": "style/id:3d-render",
|
|
2205
|
+
"note": "single-dim catalog id",
|
|
2206
|
+
"node": {
|
|
2207
|
+
"id": "n1",
|
|
2208
|
+
"type": "style",
|
|
2209
|
+
"data": {
|
|
2210
|
+
"style": "3d-render"
|
|
2211
|
+
}
|
|
2212
|
+
},
|
|
2213
|
+
"ctx": null,
|
|
2214
|
+
"expected": "3D rendered style, modern CGI aesthetic with clean shading, subtle ambient occlusion and crisp materials"
|
|
2215
|
+
},
|
|
2216
|
+
{
|
|
2217
|
+
"key": "style/id:isometric",
|
|
2218
|
+
"note": "single-dim catalog id",
|
|
2219
|
+
"node": {
|
|
2220
|
+
"id": "n1",
|
|
2221
|
+
"type": "style",
|
|
2222
|
+
"data": {
|
|
2223
|
+
"style": "isometric"
|
|
2224
|
+
}
|
|
2225
|
+
},
|
|
2226
|
+
"ctx": null,
|
|
2227
|
+
"expected": "isometric style, 3/4 axonometric projection with clean geometric forms, bright saturated flat colors and uniform lighting like a tile-based game or architectural diagram"
|
|
2228
|
+
},
|
|
2229
|
+
{
|
|
2230
|
+
"key": "style/id:manga",
|
|
2231
|
+
"note": "single-dim catalog id",
|
|
2232
|
+
"node": {
|
|
2233
|
+
"id": "n1",
|
|
2234
|
+
"type": "style",
|
|
2235
|
+
"data": {
|
|
2236
|
+
"style": "manga"
|
|
2237
|
+
}
|
|
2238
|
+
},
|
|
2239
|
+
"ctx": null,
|
|
2240
|
+
"expected": "rendered as inked manga panel art, crisp black ink on white with confident line weight variation, screen-tone dot patterns for shading, dramatic speed lines and the distinctly Japanese black-and-white comic aesthetic — separate from full-color anime"
|
|
2241
|
+
},
|
|
2242
|
+
{
|
|
2243
|
+
"key": "style/pre-post",
|
|
2244
|
+
"note": "preText + postText wrap the base fragment",
|
|
2245
|
+
"node": {
|
|
2246
|
+
"id": "n1",
|
|
2247
|
+
"type": "style",
|
|
2248
|
+
"data": {
|
|
2249
|
+
"style": "3d-render",
|
|
2250
|
+
"preText": "shot on location",
|
|
2251
|
+
"postText": "no text overlays"
|
|
2252
|
+
}
|
|
2253
|
+
},
|
|
2254
|
+
"ctx": null,
|
|
2255
|
+
"expected": "shot on location, 3D rendered style, modern CGI aesthetic with clean shading, subtle ambient occlusion and crisp materials, no text overlays"
|
|
2256
|
+
},
|
|
2257
|
+
{
|
|
2258
|
+
"key": "styling/first-of-each",
|
|
2259
|
+
"note": "multi-dim: first-of-each across 17 dimensions",
|
|
2260
|
+
"node": {
|
|
2261
|
+
"id": "n1",
|
|
2262
|
+
"type": "styling",
|
|
2263
|
+
"data": {
|
|
2264
|
+
"makeup": "makeup-natural",
|
|
2265
|
+
"hairCut": "cut-pixie",
|
|
2266
|
+
"hairTreatment": "treatment-babylights",
|
|
2267
|
+
"hairState": "hair-wet",
|
|
2268
|
+
"eyewear": "eyewear-sunglasses",
|
|
2269
|
+
"headwear": "headwear-beanie",
|
|
2270
|
+
"jewelry": "jewelry-subtle",
|
|
2271
|
+
"nails": "nails-polished",
|
|
2272
|
+
"facePaint": "face-paint-subtle",
|
|
2273
|
+
"outfit": "outfit-school-uniform",
|
|
2274
|
+
"top": "top-tshirt",
|
|
2275
|
+
"bottom": "bottom-jeans",
|
|
2276
|
+
"outerwear": "outerwear-leather-jacket",
|
|
2277
|
+
"legwear": "legwear-bare",
|
|
2278
|
+
"footwear": "footwear-sneakers",
|
|
2279
|
+
"fabric": "fabric-silk",
|
|
2280
|
+
"wardrobeState": "state-oversized"
|
|
2281
|
+
}
|
|
2282
|
+
},
|
|
2283
|
+
"ctx": null,
|
|
2284
|
+
"expected": "with natural, subtle no-makeup makeup, styled in a short pixie cut, with babylights — ultra-fine, delicate highlights that mimic natural sun-kissed hair, with hair soaked and wet, strands clinging together and dripping water, wearing sunglasses, wearing a knit beanie, wearing subtle, minimal jewelry, with polished nude nails, with subtle body paint accents on the skin, dressed in a classic school uniform — collared blouse, pleated skirt and knee-high socks, wearing a fitted plain crewneck t-shirt with short sleeves, in classic five-pocket blue jeans with a straight leg cut, wearing a slim-fit black leather jacket with a fitted collar and zip front, with bare legs, no hosiery, in clean white low-top sneakers, wearing smooth glossy silk with a subtle sheen and fluid drape, the clothing loose and oversized, draping freely well past the body"
|
|
2285
|
+
},
|
|
2286
|
+
{
|
|
2287
|
+
"key": "styling/last-of-each",
|
|
2288
|
+
"note": "multi-dim: last-of-each across 17 dimensions",
|
|
2289
|
+
"node": {
|
|
2290
|
+
"id": "n1",
|
|
2291
|
+
"type": "styling",
|
|
2292
|
+
"data": {
|
|
2293
|
+
"makeup": "makeup-dewy",
|
|
2294
|
+
"hairCut": "cut-sisterlocks",
|
|
2295
|
+
"hairTreatment": "treatment-rooted",
|
|
2296
|
+
"hairState": "hair-flowing",
|
|
2297
|
+
"eyewear": "eyewear-sport",
|
|
2298
|
+
"headwear": "headwear-cowboy-hat",
|
|
2299
|
+
"jewelry": "jewelry-body-chain",
|
|
2300
|
+
"nails": "nails-french",
|
|
2301
|
+
"facePaint": "face-paint-warpaint",
|
|
2302
|
+
"outfit": "outfit-pharaoh",
|
|
2303
|
+
"top": "top-bandeau",
|
|
2304
|
+
"bottom": "bottom-bike-shorts",
|
|
2305
|
+
"outerwear": "outerwear-fur-coat",
|
|
2306
|
+
"legwear": "legwear-leg-warmers",
|
|
2307
|
+
"footwear": "footwear-espadrilles",
|
|
2308
|
+
"fabric": "fabric-latex",
|
|
2309
|
+
"wardrobeState": "state-layered"
|
|
2310
|
+
}
|
|
2311
|
+
},
|
|
2312
|
+
"ctx": null,
|
|
2313
|
+
"expected": "with dewy makeup, glowing fresh skin and minimal coverage, in thin neat sisterlocks, with a rooted look — visible darker roots blending into lighter lengths, with hair flowing freely, strands cascading and rippling with subtle movement, wearing wraparound sport sunglasses, wearing a wide-brim Western cowboy hat with a creased crown, wearing a thin metallic body chain draped across the torso, with classic French tip manicure, with warrior war paint streaked across the face, wearing ancient Egyptian pharaoh regalia — a broad beaded usekh collar, a jeweled falcon pectoral, and a pleated linen shendyt kilt with golden arm cuffs, wearing a strapless bandeau top wrapped across the chest, in fitted lycra bike shorts ending mid-thigh, wearing a plush fur coat with a deep textured pile, with bunched knit leg warmers stacked over the calves, in woven jute-sole espadrilles with a canvas upper, a casual summer shoe, wearing glossy latex with a high-shine liquid look clinging to the body, the outfit composed of multiple stacked layers, each piece visible at the edges"
|
|
2314
|
+
},
|
|
2315
|
+
{
|
|
2316
|
+
"key": "styling/mid-of-each",
|
|
2317
|
+
"note": "multi-dim: mid-of-each across 17 dimensions",
|
|
2318
|
+
"node": {
|
|
2319
|
+
"id": "n1",
|
|
2320
|
+
"type": "styling",
|
|
2321
|
+
"data": {
|
|
2322
|
+
"makeup": "makeup-bold-lips",
|
|
2323
|
+
"hairCut": "cut-side-swept",
|
|
2324
|
+
"hairTreatment": "treatment-sombre",
|
|
2325
|
+
"hairState": "hair-voluminous",
|
|
2326
|
+
"eyewear": "eyewear-round",
|
|
2327
|
+
"headwear": "headwear-nemes",
|
|
2328
|
+
"jewelry": "jewelry-choker-leather",
|
|
2329
|
+
"nails": "nails-dark",
|
|
2330
|
+
"facePaint": "face-paint-tribal",
|
|
2331
|
+
"outfit": "outfit-pajamas",
|
|
2332
|
+
"top": "top-camisole",
|
|
2333
|
+
"bottom": "bottom-shorts",
|
|
2334
|
+
"outerwear": "outerwear-puffer",
|
|
2335
|
+
"legwear": "legwear-lace-top-stockings",
|
|
2336
|
+
"footwear": "footwear-loafers",
|
|
2337
|
+
"fabric": "fabric-wool",
|
|
2338
|
+
"wardrobeState": "state-tucked-in"
|
|
2339
|
+
}
|
|
2340
|
+
},
|
|
2341
|
+
"ctx": null,
|
|
2342
|
+
"expected": "with bold lips, a strong red or dark lipstick as the focal point, side-swept across the face with strands falling over one eye, with sombré — a subtle, soft ombré gradient, with hair full of volume, blown out and bouncy with body and lift at the roots, wearing round wire-frame glasses, John Lennon style, wearing a striped pharaonic nemes headdress with a golden uraeus cobra at the brow, wearing a black leather choker fitted close around the throat, with dark black nail polish, with tribal-inspired face markings, in a soft cotton pajama set — a button-up top and matching pants, wearing a thin satin camisole with delicate spaghetti straps, in casual mid-thigh shorts, wearing a quilted puffer jacket with horizontal baffles and a stand-up collar, with lace-topped thigh-high stockings cinched mid-thigh, in polished leather penny loafers, wearing warm woven wool with a soft matte surface and visible fibers, the top neatly tucked into the bottom"
|
|
2343
|
+
},
|
|
2344
|
+
{
|
|
2345
|
+
"key": "styling/one-dimension",
|
|
2346
|
+
"note": "multi-dim: only \"makeup\" set",
|
|
2347
|
+
"node": {
|
|
2348
|
+
"id": "n1",
|
|
2349
|
+
"type": "styling",
|
|
2350
|
+
"data": {
|
|
2351
|
+
"makeup": "makeup-natural"
|
|
2352
|
+
}
|
|
2353
|
+
},
|
|
2354
|
+
"ctx": null,
|
|
2355
|
+
"expected": "with natural, subtle no-makeup makeup"
|
|
2356
|
+
},
|
|
2357
|
+
{
|
|
2358
|
+
"key": "styling/pre-post",
|
|
2359
|
+
"note": "multi-dim: preText + postText",
|
|
2360
|
+
"node": {
|
|
2361
|
+
"id": "n1",
|
|
2362
|
+
"type": "styling",
|
|
2363
|
+
"data": {
|
|
2364
|
+
"makeup": "makeup-natural",
|
|
2365
|
+
"preText": "shot on location",
|
|
2366
|
+
"postText": "no text overlays"
|
|
2367
|
+
}
|
|
2368
|
+
},
|
|
2369
|
+
"ctx": null,
|
|
2370
|
+
"expected": "shot on location, with natural, subtle no-makeup makeup, no text overlays"
|
|
2371
|
+
},
|
|
2372
|
+
{
|
|
2373
|
+
"key": "temporal/first-of-each",
|
|
2374
|
+
"note": "multi-dim: first-of-each across 4 dimensions",
|
|
2375
|
+
"node": {
|
|
2376
|
+
"id": "n1",
|
|
2377
|
+
"type": "temporal",
|
|
2378
|
+
"data": {
|
|
2379
|
+
"temporalSpeed": "real-time",
|
|
2380
|
+
"temporalFreeze": "full-freeze",
|
|
2381
|
+
"temporalDirection": "forward",
|
|
2382
|
+
"temporalShutter": "long-exposure"
|
|
2383
|
+
}
|
|
2384
|
+
},
|
|
2385
|
+
"ctx": null,
|
|
2386
|
+
"expected": "real-time playback, normal speed, full freeze-frame, all motion in the scene completely frozen like a photograph, forward playback, time moving forward in the natural direction, long exposure effect, motion trails and light streaks from slow shutter speed"
|
|
2387
|
+
},
|
|
2388
|
+
{
|
|
2389
|
+
"key": "temporal/last-of-each",
|
|
2390
|
+
"note": "multi-dim: last-of-each across 4 dimensions",
|
|
2391
|
+
"node": {
|
|
2392
|
+
"id": "n1",
|
|
2393
|
+
"type": "temporal",
|
|
2394
|
+
"data": {
|
|
2395
|
+
"temporalSpeed": "speed-ramp",
|
|
2396
|
+
"temporalFreeze": "moving-subject",
|
|
2397
|
+
"temporalDirection": "loop-boomerang",
|
|
2398
|
+
"temporalShutter": "stop-motion"
|
|
2399
|
+
}
|
|
2400
|
+
},
|
|
2401
|
+
"ctx": null,
|
|
2402
|
+
"expected": "speed ramp, dynamic speed change within the shot from slow motion to real-time or faster, moving subject with frozen world, subject continues in motion while everything else in the scene is completely frozen, boomerang loop, playing forward then reversing back, creating a looping motion, stop-motion animation style, stepped frame-by-frame motion with characteristic discrete movement"
|
|
2403
|
+
},
|
|
2404
|
+
{
|
|
2405
|
+
"key": "temporal/mid-of-each",
|
|
2406
|
+
"note": "multi-dim: mid-of-each across 4 dimensions",
|
|
2407
|
+
"node": {
|
|
2408
|
+
"id": "n1",
|
|
2409
|
+
"type": "temporal",
|
|
2410
|
+
"data": {
|
|
2411
|
+
"temporalSpeed": "time-lapse",
|
|
2412
|
+
"temporalFreeze": "frozen-subject",
|
|
2413
|
+
"temporalDirection": "reverse",
|
|
2414
|
+
"temporalShutter": "motion-blur"
|
|
2415
|
+
}
|
|
2416
|
+
},
|
|
2417
|
+
"ctx": null,
|
|
2418
|
+
"expected": "time-lapse, highly compressed time showing hours or days passing in seconds, frozen subject with moving world, subject remains completely still while the environment continues in motion, reverse playback, time and motion running backwards, pronounced motion blur, moving subjects blur directionally from slower-than-normal shutter speed"
|
|
2419
|
+
},
|
|
2420
|
+
{
|
|
2421
|
+
"key": "temporal/one-dimension",
|
|
2422
|
+
"note": "multi-dim: only \"temporalSpeed\" set",
|
|
2423
|
+
"node": {
|
|
2424
|
+
"id": "n1",
|
|
2425
|
+
"type": "temporal",
|
|
2426
|
+
"data": {
|
|
2427
|
+
"temporalSpeed": "real-time"
|
|
2428
|
+
}
|
|
2429
|
+
},
|
|
2430
|
+
"ctx": null,
|
|
2431
|
+
"expected": "real-time playback, normal speed"
|
|
2432
|
+
},
|
|
2433
|
+
{
|
|
2434
|
+
"key": "temporal/pre-post",
|
|
2435
|
+
"note": "multi-dim: preText + postText",
|
|
2436
|
+
"node": {
|
|
2437
|
+
"id": "n1",
|
|
2438
|
+
"type": "temporal",
|
|
2439
|
+
"data": {
|
|
2440
|
+
"temporalSpeed": "real-time",
|
|
2441
|
+
"preText": "shot on location",
|
|
2442
|
+
"postText": "no text overlays"
|
|
2443
|
+
}
|
|
2444
|
+
},
|
|
2445
|
+
"ctx": null,
|
|
2446
|
+
"expected": "shot on location, real-time playback, normal speed, no text overlays"
|
|
2447
|
+
},
|
|
2448
|
+
{
|
|
2449
|
+
"key": "text-prompt/text",
|
|
2450
|
+
"note": "free-text node — text passes through verbatim",
|
|
2451
|
+
"node": {
|
|
2452
|
+
"id": "n1",
|
|
2453
|
+
"type": "text-prompt",
|
|
2454
|
+
"data": {
|
|
2455
|
+
"text": " a lighthouse at dusk "
|
|
2456
|
+
}
|
|
2457
|
+
},
|
|
2458
|
+
"ctx": null,
|
|
2459
|
+
"expected": "a lighthouse at dusk"
|
|
2460
|
+
},
|
|
2461
|
+
{
|
|
2462
|
+
"key": "tone/text",
|
|
2463
|
+
"note": "free-text node — tone passes through verbatim",
|
|
2464
|
+
"node": {
|
|
2465
|
+
"id": "n1",
|
|
2466
|
+
"type": "tone",
|
|
2467
|
+
"data": {
|
|
2468
|
+
"tone": "wry and understated"
|
|
2469
|
+
}
|
|
2470
|
+
},
|
|
2471
|
+
"ctx": null,
|
|
2472
|
+
"expected": "wry and understated"
|
|
2473
|
+
},
|
|
2474
|
+
{
|
|
2475
|
+
"key": "transition/ctx-less",
|
|
2476
|
+
"note": "transition with no graph context",
|
|
2477
|
+
"node": {
|
|
2478
|
+
"id": "n1",
|
|
2479
|
+
"type": "transition",
|
|
2480
|
+
"data": {
|
|
2481
|
+
"transition": "none"
|
|
2482
|
+
}
|
|
2483
|
+
},
|
|
2484
|
+
"ctx": null,
|
|
2485
|
+
"expected": "no transition, hard cut, instantaneous switch from first shot to second shot"
|
|
2486
|
+
},
|
|
2487
|
+
{
|
|
2488
|
+
"key": "transition/id:auto",
|
|
2489
|
+
"note": "single-dim catalog id",
|
|
2490
|
+
"node": {
|
|
2491
|
+
"id": "n1",
|
|
2492
|
+
"type": "transition",
|
|
2493
|
+
"data": {
|
|
2494
|
+
"transition": "auto"
|
|
2495
|
+
}
|
|
2496
|
+
},
|
|
2497
|
+
"ctx": null,
|
|
2498
|
+
"expected": ""
|
|
2499
|
+
},
|
|
2500
|
+
{
|
|
2501
|
+
"key": "transition/id:double-exposure",
|
|
2502
|
+
"note": "single-dim catalog id",
|
|
2503
|
+
"node": {
|
|
2504
|
+
"id": "n1",
|
|
2505
|
+
"type": "transition",
|
|
2506
|
+
"data": {
|
|
2507
|
+
"transition": "double-exposure"
|
|
2508
|
+
}
|
|
2509
|
+
},
|
|
2510
|
+
"ctx": null,
|
|
2511
|
+
"expected": "the first and second scenes blend as a translucent double exposure where both images coexist semi-transparently on the frame, the first image then gradually fades out leaving the second image fully resolved"
|
|
2512
|
+
},
|
|
2513
|
+
{
|
|
2514
|
+
"key": "transition/id:wireframe-morph",
|
|
2515
|
+
"note": "single-dim catalog id",
|
|
2516
|
+
"node": {
|
|
2517
|
+
"id": "n1",
|
|
2518
|
+
"type": "transition",
|
|
2519
|
+
"data": {
|
|
2520
|
+
"transition": "wireframe-morph"
|
|
2521
|
+
}
|
|
2522
|
+
},
|
|
2523
|
+
"ctx": null,
|
|
2524
|
+
"expected": "the first subject's surface peels away to reveal a glowing geometric wireframe of polygons and edges, the wireframe flexes and re-tessellates into the topology of the new subject, then the new surface skins over the wireframe"
|
|
2525
|
+
},
|
|
2526
|
+
{
|
|
2527
|
+
"key": "transition/multi-pick",
|
|
2528
|
+
"note": "array of 2 ids on \"transition\"",
|
|
2529
|
+
"node": {
|
|
2530
|
+
"id": "n1",
|
|
2531
|
+
"type": "transition",
|
|
2532
|
+
"data": {
|
|
2533
|
+
"transition": [
|
|
2534
|
+
"none",
|
|
2535
|
+
"cross-dissolve"
|
|
2536
|
+
]
|
|
2537
|
+
}
|
|
2538
|
+
},
|
|
2539
|
+
"ctx": null,
|
|
2540
|
+
"expected": "no transition, hard cut, instantaneous switch from first shot to second shot, and smooth cross-dissolve transition where the first shot gradually fades out as the second shot fades in"
|
|
2541
|
+
},
|
|
2542
|
+
{
|
|
2543
|
+
"key": "transition/pre-post",
|
|
2544
|
+
"note": "preText + postText wrap the base fragment",
|
|
2545
|
+
"node": {
|
|
2546
|
+
"id": "n1",
|
|
2547
|
+
"type": "transition",
|
|
2548
|
+
"data": {
|
|
2549
|
+
"transition": "none",
|
|
2550
|
+
"preText": "shot on location",
|
|
2551
|
+
"postText": "no text overlays"
|
|
2552
|
+
}
|
|
2553
|
+
},
|
|
2554
|
+
"ctx": null,
|
|
2555
|
+
"expected": "shot on location, no transition, hard cut, instantaneous switch from first shot to second shot, no text overlays"
|
|
2556
|
+
},
|
|
2557
|
+
{
|
|
2558
|
+
"key": "transition/timing",
|
|
2559
|
+
"note": "transition with position + duration + intensity, no ctx",
|
|
2560
|
+
"node": {
|
|
2561
|
+
"id": "n1",
|
|
2562
|
+
"type": "transition",
|
|
2563
|
+
"data": {
|
|
2564
|
+
"transition": "none",
|
|
2565
|
+
"position": "middle",
|
|
2566
|
+
"duration": "short",
|
|
2567
|
+
"intensity": "dynamic"
|
|
2568
|
+
}
|
|
2569
|
+
},
|
|
2570
|
+
"ctx": null,
|
|
2571
|
+
"expected": "no transition, hard cut, instantaneous switch from first shot to second shot, the transition occurs in the middle of the clip, lasting approximately 1 second, with dynamic energy and assertive flourish"
|
|
2572
|
+
},
|
|
2573
|
+
{
|
|
2574
|
+
"key": "transition/timing-auto",
|
|
2575
|
+
"note": "transition whose timing fields are all \"auto\" — no timing clauses",
|
|
2576
|
+
"node": {
|
|
2577
|
+
"id": "n1",
|
|
2578
|
+
"type": "transition",
|
|
2579
|
+
"data": {
|
|
2580
|
+
"transition": "none",
|
|
2581
|
+
"position": "auto",
|
|
2582
|
+
"duration": "auto",
|
|
2583
|
+
"intensity": "auto"
|
|
2584
|
+
}
|
|
2585
|
+
},
|
|
2586
|
+
"ctx": null,
|
|
2587
|
+
"expected": "no transition, hard cut, instantaneous switch from first shot to second shot"
|
|
2588
|
+
},
|
|
2589
|
+
{
|
|
2590
|
+
"key": "transition/with-ctx",
|
|
2591
|
+
"note": "transition composing startState + endState clauses",
|
|
2592
|
+
"node": {
|
|
2593
|
+
"id": "n1",
|
|
2594
|
+
"type": "transition",
|
|
2595
|
+
"data": {
|
|
2596
|
+
"transition": "none"
|
|
2597
|
+
}
|
|
2598
|
+
},
|
|
2599
|
+
"ctx": {
|
|
2600
|
+
"nodes": [
|
|
2601
|
+
{
|
|
2602
|
+
"id": "s1",
|
|
2603
|
+
"type": "framing",
|
|
2604
|
+
"data": {
|
|
2605
|
+
"shotSize": "wide-shot"
|
|
2606
|
+
}
|
|
2607
|
+
},
|
|
2608
|
+
{
|
|
2609
|
+
"id": "s2",
|
|
2610
|
+
"type": "mood",
|
|
2611
|
+
"data": {
|
|
2612
|
+
"mood": "calm"
|
|
2613
|
+
}
|
|
2614
|
+
}
|
|
2615
|
+
],
|
|
2616
|
+
"edges": [
|
|
2617
|
+
{
|
|
2618
|
+
"source": "s1",
|
|
2619
|
+
"target": "n1",
|
|
2620
|
+
"sourceHandle": "output",
|
|
2621
|
+
"targetHandle": "startState"
|
|
2622
|
+
},
|
|
2623
|
+
{
|
|
2624
|
+
"source": "s2",
|
|
2625
|
+
"target": "n1",
|
|
2626
|
+
"sourceHandle": "output",
|
|
2627
|
+
"targetHandle": "endState"
|
|
2628
|
+
}
|
|
2629
|
+
]
|
|
2630
|
+
},
|
|
2631
|
+
"expected": "no transition, hard cut, instantaneous switch from first shot to second shot, starting from wide shot, full body of the subject with visible surroundings, ending at with a calm, centered expression"
|
|
2632
|
+
},
|
|
2633
|
+
{
|
|
2634
|
+
"key": "transition/with-ctx-timing-multi-pick",
|
|
2635
|
+
"note": "transition: 2 ids + full timing + startState/endState + preText/postText",
|
|
2636
|
+
"node": {
|
|
2637
|
+
"id": "n1",
|
|
2638
|
+
"type": "transition",
|
|
2639
|
+
"data": {
|
|
2640
|
+
"transition": [
|
|
2641
|
+
"none",
|
|
2642
|
+
"cross-dissolve"
|
|
2643
|
+
],
|
|
2644
|
+
"position": "end",
|
|
2645
|
+
"duration": "long",
|
|
2646
|
+
"intensity": "subtle",
|
|
2647
|
+
"preText": "on the beat",
|
|
2648
|
+
"postText": "hold the last frame"
|
|
2649
|
+
}
|
|
2650
|
+
},
|
|
2651
|
+
"ctx": {
|
|
2652
|
+
"nodes": [
|
|
2653
|
+
{
|
|
2654
|
+
"id": "s1",
|
|
2655
|
+
"type": "framing",
|
|
2656
|
+
"data": {
|
|
2657
|
+
"shotSize": "wide-shot"
|
|
2658
|
+
}
|
|
2659
|
+
},
|
|
2660
|
+
{
|
|
2661
|
+
"id": "s2",
|
|
2662
|
+
"type": "mood",
|
|
2663
|
+
"data": {
|
|
2664
|
+
"mood": "calm"
|
|
2665
|
+
}
|
|
2666
|
+
}
|
|
2667
|
+
],
|
|
2668
|
+
"edges": [
|
|
2669
|
+
{
|
|
2670
|
+
"source": "s1",
|
|
2671
|
+
"target": "n1",
|
|
2672
|
+
"sourceHandle": "output",
|
|
2673
|
+
"targetHandle": "startState"
|
|
2674
|
+
},
|
|
2675
|
+
{
|
|
2676
|
+
"source": "s2",
|
|
2677
|
+
"target": "n1",
|
|
2678
|
+
"sourceHandle": "output",
|
|
2679
|
+
"targetHandle": "endState"
|
|
2680
|
+
}
|
|
2681
|
+
]
|
|
2682
|
+
},
|
|
2683
|
+
"expected": "on the beat, no transition, hard cut, instantaneous switch from first shot to second shot, and smooth cross-dissolve transition where the first shot gradually fades out as the second shot fades in, the transition occurs at the end of the clip, lasting approximately 3 seconds, with subtle restrained energy and minimal flourish, starting from wide shot, full body of the subject with visible surroundings, ending at with a calm, centered expression, hold the last frame"
|
|
2684
|
+
},
|
|
2685
|
+
{
|
|
2686
|
+
"key": "unknown/type",
|
|
2687
|
+
"note": "an unregistered node type injects nothing",
|
|
2688
|
+
"node": {
|
|
2689
|
+
"id": "n1",
|
|
2690
|
+
"type": "definitely-not-a-parameter-node",
|
|
2691
|
+
"data": {
|
|
2692
|
+
"whatever": "x"
|
|
2693
|
+
}
|
|
2694
|
+
},
|
|
2695
|
+
"ctx": null,
|
|
2696
|
+
"expected": ""
|
|
2697
|
+
},
|
|
2698
|
+
{
|
|
2699
|
+
"key": "vehicle/id:coach-bus",
|
|
2700
|
+
"note": "single-dim catalog id",
|
|
2701
|
+
"node": {
|
|
2702
|
+
"id": "n1",
|
|
2703
|
+
"type": "vehicle",
|
|
2704
|
+
"data": {
|
|
2705
|
+
"vehicle": "coach-bus"
|
|
2706
|
+
}
|
|
2707
|
+
},
|
|
2708
|
+
"ctx": null,
|
|
2709
|
+
"expected": "featuring a coach bus, Long-distance coach bus with tinted panoramic windows, luggage bays underneath and streamlined bodywork"
|
|
2710
|
+
},
|
|
2711
|
+
{
|
|
2712
|
+
"key": "vehicle/id:hoverboard",
|
|
2713
|
+
"note": "single-dim catalog id",
|
|
2714
|
+
"node": {
|
|
2715
|
+
"id": "n1",
|
|
2716
|
+
"type": "vehicle",
|
|
2717
|
+
"data": {
|
|
2718
|
+
"vehicle": "hoverboard"
|
|
2719
|
+
}
|
|
2720
|
+
},
|
|
2721
|
+
"ctx": null,
|
|
2722
|
+
"expected": "featuring a hoverboard, Futuristic hoverboard floating inches above the ground with glowing underside jets and a sleek single-plank body"
|
|
2723
|
+
},
|
|
2724
|
+
{
|
|
2725
|
+
"key": "vehicle/id:muscle-car",
|
|
2726
|
+
"note": "single-dim catalog id",
|
|
2727
|
+
"node": {
|
|
2728
|
+
"id": "n1",
|
|
2729
|
+
"type": "vehicle",
|
|
2730
|
+
"data": {
|
|
2731
|
+
"vehicle": "muscle-car"
|
|
2732
|
+
}
|
|
2733
|
+
},
|
|
2734
|
+
"ctx": null,
|
|
2735
|
+
"expected": "featuring a muscle car, Aggressive American muscle car with a long hood, wide stance, dual chrome exhausts and a deep throaty V8 presence"
|
|
2736
|
+
},
|
|
2737
|
+
{
|
|
2738
|
+
"key": "vehicle/pre-post",
|
|
2739
|
+
"note": "preText + postText wrap the base fragment",
|
|
2740
|
+
"node": {
|
|
2741
|
+
"id": "n1",
|
|
2742
|
+
"type": "vehicle",
|
|
2743
|
+
"data": {
|
|
2744
|
+
"vehicle": "muscle-car",
|
|
2745
|
+
"preText": "shot on location",
|
|
2746
|
+
"postText": "no text overlays"
|
|
2747
|
+
}
|
|
2748
|
+
},
|
|
2749
|
+
"ctx": null,
|
|
2750
|
+
"expected": "shot on location, featuring a muscle car, Aggressive American muscle car with a long hood, wide stance, dual chrome exhausts and a deep throaty V8 presence, no text overlays"
|
|
2751
|
+
},
|
|
2752
|
+
{
|
|
2753
|
+
"key": "voice-character/first-of-each",
|
|
2754
|
+
"note": "multi-dim: first-of-each across 5 dimensions",
|
|
2755
|
+
"node": {
|
|
2756
|
+
"id": "n1",
|
|
2757
|
+
"type": "voice-character",
|
|
2758
|
+
"data": {
|
|
2759
|
+
"age": "infant",
|
|
2760
|
+
"gender": "male",
|
|
2761
|
+
"language": "english",
|
|
2762
|
+
"accent": "general-american",
|
|
2763
|
+
"timbre": "warm"
|
|
2764
|
+
}
|
|
2765
|
+
},
|
|
2766
|
+
"ctx": null,
|
|
2767
|
+
"expected": "English-speaking infant male voice with warm timbre and general American accent"
|
|
2768
|
+
},
|
|
2769
|
+
{
|
|
2770
|
+
"key": "voice-character/last-of-each",
|
|
2771
|
+
"note": "multi-dim: last-of-each across 5 dimensions",
|
|
2772
|
+
"node": {
|
|
2773
|
+
"id": "n1",
|
|
2774
|
+
"type": "voice-character",
|
|
2775
|
+
"data": {
|
|
2776
|
+
"age": "elderly",
|
|
2777
|
+
"gender": "androgynous",
|
|
2778
|
+
"language": "yoruba",
|
|
2779
|
+
"accent": "transatlantic",
|
|
2780
|
+
"timbre": "polished"
|
|
2781
|
+
}
|
|
2782
|
+
},
|
|
2783
|
+
"ctx": null,
|
|
2784
|
+
"expected": "Yoruba-speaking elderly androgynous voice with polished timbre and transatlantic accent"
|
|
2785
|
+
},
|
|
2786
|
+
{
|
|
2787
|
+
"key": "voice-character/mid-of-each",
|
|
2788
|
+
"note": "multi-dim: mid-of-each across 5 dimensions",
|
|
2789
|
+
"node": {
|
|
2790
|
+
"id": "n1",
|
|
2791
|
+
"type": "voice-character",
|
|
2792
|
+
"data": {
|
|
2793
|
+
"age": "young-adult",
|
|
2794
|
+
"gender": "female",
|
|
2795
|
+
"language": "arabic",
|
|
2796
|
+
"accent": "jamaican",
|
|
2797
|
+
"timbre": "twangy"
|
|
2798
|
+
}
|
|
2799
|
+
},
|
|
2800
|
+
"ctx": null,
|
|
2801
|
+
"expected": "Arabic-speaking young adult female voice with twangy timbre and Jamaican accent"
|
|
2802
|
+
},
|
|
2803
|
+
{
|
|
2804
|
+
"key": "voice-character/one-dimension",
|
|
2805
|
+
"note": "multi-dim: only \"age\" set",
|
|
2806
|
+
"node": {
|
|
2807
|
+
"id": "n1",
|
|
2808
|
+
"type": "voice-character",
|
|
2809
|
+
"data": {
|
|
2810
|
+
"age": "infant"
|
|
2811
|
+
}
|
|
2812
|
+
},
|
|
2813
|
+
"ctx": null,
|
|
2814
|
+
"expected": "infant voice"
|
|
2815
|
+
},
|
|
2816
|
+
{
|
|
2817
|
+
"key": "voice-character/pre-post",
|
|
2818
|
+
"note": "multi-dim: preText + postText",
|
|
2819
|
+
"node": {
|
|
2820
|
+
"id": "n1",
|
|
2821
|
+
"type": "voice-character",
|
|
2822
|
+
"data": {
|
|
2823
|
+
"age": "infant",
|
|
2824
|
+
"preText": "shot on location",
|
|
2825
|
+
"postText": "no text overlays"
|
|
2826
|
+
}
|
|
2827
|
+
},
|
|
2828
|
+
"ctx": null,
|
|
2829
|
+
"expected": "shot on location, infant voice, no text overlays"
|
|
2830
|
+
},
|
|
2831
|
+
{
|
|
2832
|
+
"key": "voice-delivery/first-of-each",
|
|
2833
|
+
"note": "multi-dim: first-of-each across 3 dimensions",
|
|
2834
|
+
"node": {
|
|
2835
|
+
"id": "n1",
|
|
2836
|
+
"type": "voice-delivery",
|
|
2837
|
+
"data": {
|
|
2838
|
+
"pace": "very-slow",
|
|
2839
|
+
"emotion": "neutral",
|
|
2840
|
+
"archetype": "newscaster"
|
|
2841
|
+
}
|
|
2842
|
+
},
|
|
2843
|
+
"ctx": null,
|
|
2844
|
+
"expected": "very slow newscaster-style delivery, neutral tone"
|
|
2845
|
+
},
|
|
2846
|
+
{
|
|
2847
|
+
"key": "voice-delivery/last-of-each",
|
|
2848
|
+
"note": "multi-dim: last-of-each across 3 dimensions",
|
|
2849
|
+
"node": {
|
|
2850
|
+
"id": "n1",
|
|
2851
|
+
"type": "voice-delivery",
|
|
2852
|
+
"data": {
|
|
2853
|
+
"pace": "halting",
|
|
2854
|
+
"emotion": "seductive",
|
|
2855
|
+
"archetype": "siri-style"
|
|
2856
|
+
}
|
|
2857
|
+
},
|
|
2858
|
+
"ctx": null,
|
|
2859
|
+
"expected": "halting virtual assistant-style delivery, seductive tone"
|
|
2860
|
+
},
|
|
2861
|
+
{
|
|
2862
|
+
"key": "voice-delivery/mid-of-each",
|
|
2863
|
+
"note": "multi-dim: mid-of-each across 3 dimensions",
|
|
2864
|
+
"node": {
|
|
2865
|
+
"id": "n1",
|
|
2866
|
+
"type": "voice-delivery",
|
|
2867
|
+
"data": {
|
|
2868
|
+
"pace": "punchy",
|
|
2869
|
+
"emotion": "excited",
|
|
2870
|
+
"archetype": "infomercial"
|
|
2871
|
+
}
|
|
2872
|
+
},
|
|
2873
|
+
"ctx": null,
|
|
2874
|
+
"expected": "punchy infomercial-style delivery, excited tone"
|
|
2875
|
+
},
|
|
2876
|
+
{
|
|
2877
|
+
"key": "voice-delivery/one-dimension",
|
|
2878
|
+
"note": "multi-dim: only \"pace\" set",
|
|
2879
|
+
"node": {
|
|
2880
|
+
"id": "n1",
|
|
2881
|
+
"type": "voice-delivery",
|
|
2882
|
+
"data": {
|
|
2883
|
+
"pace": "very-slow"
|
|
2884
|
+
}
|
|
2885
|
+
},
|
|
2886
|
+
"ctx": null,
|
|
2887
|
+
"expected": "very slow pace"
|
|
2888
|
+
},
|
|
2889
|
+
{
|
|
2890
|
+
"key": "voice-delivery/pre-post",
|
|
2891
|
+
"note": "multi-dim: preText + postText",
|
|
2892
|
+
"node": {
|
|
2893
|
+
"id": "n1",
|
|
2894
|
+
"type": "voice-delivery",
|
|
2895
|
+
"data": {
|
|
2896
|
+
"pace": "very-slow",
|
|
2897
|
+
"preText": "shot on location",
|
|
2898
|
+
"postText": "no text overlays"
|
|
2899
|
+
}
|
|
2900
|
+
},
|
|
2901
|
+
"ctx": null,
|
|
2902
|
+
"expected": "shot on location, very slow pace, no text overlays"
|
|
2903
|
+
},
|
|
2904
|
+
{
|
|
2905
|
+
"key": "weapon/id:katana",
|
|
2906
|
+
"note": "single-dim catalog id",
|
|
2907
|
+
"node": {
|
|
2908
|
+
"id": "n1",
|
|
2909
|
+
"type": "weapon",
|
|
2910
|
+
"data": {
|
|
2911
|
+
"weapon": "katana"
|
|
2912
|
+
}
|
|
2913
|
+
},
|
|
2914
|
+
"ctx": null,
|
|
2915
|
+
"expected": "with a katana, Japanese katana with a single-edged gently curved blade, wrapped rayskin handle, disc-shaped tsuba guard and a polished mirror finish"
|
|
2916
|
+
},
|
|
2917
|
+
{
|
|
2918
|
+
"key": "weapon/id:shuriken",
|
|
2919
|
+
"note": "single-dim catalog id",
|
|
2920
|
+
"node": {
|
|
2921
|
+
"id": "n1",
|
|
2922
|
+
"type": "weapon",
|
|
2923
|
+
"data": {
|
|
2924
|
+
"weapon": "shuriken"
|
|
2925
|
+
}
|
|
2926
|
+
},
|
|
2927
|
+
"ctx": null,
|
|
2928
|
+
"expected": "with a shuriken, Metal throwing star with multiple razor-sharp points radiating from a central hub and a blackened steel finish"
|
|
2929
|
+
},
|
|
2930
|
+
{
|
|
2931
|
+
"key": "weapon/id:sorcerer-orb",
|
|
2932
|
+
"note": "single-dim catalog id",
|
|
2933
|
+
"node": {
|
|
2934
|
+
"id": "n1",
|
|
2935
|
+
"type": "weapon",
|
|
2936
|
+
"data": {
|
|
2937
|
+
"weapon": "sorcerer-orb"
|
|
2938
|
+
}
|
|
2939
|
+
},
|
|
2940
|
+
"ctx": null,
|
|
2941
|
+
"expected": "with a sorcerer's orb, Crystal sorcerer's orb held in a twisted silver claw-stand with swirling arcane mist suspended inside the glass sphere"
|
|
2942
|
+
},
|
|
2943
|
+
{
|
|
2944
|
+
"key": "weapon/pre-post",
|
|
2945
|
+
"note": "preText + postText wrap the base fragment",
|
|
2946
|
+
"node": {
|
|
2947
|
+
"id": "n1",
|
|
2948
|
+
"type": "weapon",
|
|
2949
|
+
"data": {
|
|
2950
|
+
"weapon": "katana",
|
|
2951
|
+
"preText": "shot on location",
|
|
2952
|
+
"postText": "no text overlays"
|
|
2953
|
+
}
|
|
2954
|
+
},
|
|
2955
|
+
"ctx": null,
|
|
2956
|
+
"expected": "shot on location, with a katana, Japanese katana with a single-edged gently curved blade, wrapped rayskin handle, disc-shaped tsuba guard and a polished mirror finish, no text overlays"
|
|
2957
|
+
}
|
|
2958
|
+
]
|
|
2959
|
+
}
|