{ "_about": "Moods (the set and light for the hero keyframe, and how the light moves in the video), camera moves, framing by product size, and what has been tested. scripts/build-keyframe-input.mjs and scripts/build-video-input.mjs read this file. See references/reveal-craft.md for when to use each.", "moods": { "dark-luxe": { "name": "dark luxury", "scene": "a low, wide plinth of polished black stone. Deep charcoal background falling off to pure black. A single soft rim light from behind on the left traces the edges of the product; a narrow warm amber strip light on the right adds a thin highlight along one edge; faint haze in the air catches the light; a soft reflection on the plinth top. Low-key, cinematic, rich blacks that still hold detail.", "light_move": "A broad, soft sheen of white light glides slowly across the product from left to right, like a softbox passing by, its reflection travelling across the polished stone. The warm amber edge light glows steadily. Fine haze drifts slowly through the light.", "feel": "Dark, low-key, cinematic, expensive." }, "glass-glow": { "name": "glowing glass", "scene": "a low plinth of dark smoked glass in front of a deep charcoal-to-black gradient background. A strong, soft backlight directly behind the product shines through it so the glass and any liquid inside glow; two thin vertical strip lights at the sides draw clean bright edges down both sides of the product; a faint, soft reflection on the plinth. Low-key, clean, luxurious.", "light_move": "The backlight slowly brightens and drifts from left to right, so the glow and the refractions inside the product shift gently; the two edge lights stay steady and clean. Faint haze drifts behind the product.", "feel": "Dark, glowing, clean, luxurious." }, "bright-clean": { "name": "bright, clean", "scene": "a smooth matte white plinth in a bright white studio cove. A large soft key light from the left like a north window, a gentle soft shadow to the right, a faint cool-grey gradient behind. Crisp and airy, high-key, with full detail in the whites.", "light_move": "Soft daylight drifts gently across the product as if a thin cloud is passing; a broad, clean sheen glides along its surfaces while the soft shadow on the plinth slowly lengthens.", "feel": "Bright, fresh, calm, premium." }, "colour-pop": { "name": "bold colour", "scene": "a glossy plinth in a saturated {{colour}} set with a matching seamless backdrop. Hard graphic light from the top left casts a crisp shadow; a second coloured gel light rims the product from behind. Bold, playful, ad-campaign look.", "light_move": "A broad, crisp sheen slides across the product while the coloured rim light breathes gently brighter and softer; the hard shadow on the plinth turns slowly.", "feel": "Bold, graphic, energetic." } }, "moves": { "push-in": "The camera glides in very slowly on a dolly, a gentle push-in towards the product.", "orbit": "The camera arcs slowly around the product to the right, a smooth 25-degree orbit like a turntable, while easing slightly closer.", "rise": "The camera rises slowly from just above the plinth surface to a three-quarter view, tilting down to keep the product centred.", "locked": "The camera is locked off on a tripod and does not move; only the light moves." }, "keyframe_size": { "16:9": { "width": 1536, "height": 864 }, "9:16": { "width": 864, "height": 1536 }, "1:1": { "width": 1280, "height": 1280 } }, "sizes": { "_about": "How much of the frame the product fills, by product shape. The 16:9 standard text made the preview; there the headphones came out at about 38 percent of the frame width.", "standard": { "16:9": "Wide 16:9 frame, the product centred, about 40 percent of the frame width, with generous negative space around it.", "9:16": "Tall 9:16 frame, the product centred a little below the middle, about 65 percent of the frame width, with empty space above for a title and below for captions.", "1:1": "Square frame, the product centred, about 50 percent of the frame width." }, "tall": { "16:9": "Wide 16:9 frame, the product standing upright in the centre, its full height about 70 percent of the frame height, with generous negative space on both sides.", "9:16": "Tall 9:16 frame, the product standing upright a little below the middle, its full height about 55 percent of the frame height, with empty space above for a title and below for captions.", "1:1": "Square frame, the product standing upright in the centre, its full height about 70 percent of the frame height." }, "tiny": { "16:9": "Wide 16:9 frame shot close with a macro lens, the product centred and about 50 percent of the frame width, shallow depth of field with the plinth edge falling softly out of focus.", "9:16": "Tall 9:16 frame shot close with a macro lens, the product centred a little below the middle and about 75 percent of the frame width, shallow depth of field.", "1:1": "Square frame shot close with a macro lens, the product centred and about 60 percent of the frame width, shallow depth of field." } }, "tested": { "_about": "What has been generated with this Skill, so you know what is proven. Anything marked untested: make a --draft first.", "moods": { "dark-luxe": "keyframe and final video (the preview)", "glass-glow": "draft keyframe only (amber dropper bottle, label held); no video yet", "bright-clean": "draft keyframe only (kraft coffee pouch, label held); no video yet", "colour-pop": "draft keyframe only (sneaker on tangerine orange); no video yet" }, "moves": { "push-in": "final video (the preview)", "locked": "480p draft on Seedance 2.0 mini: product held, only the light moved", "rise": "480p draft on Seedance 2.0 mini: product held, gentle rise", "orbit": "480p draft: the product morphed; avoid on complex shapes" }, "sizes": { "standard": "16:9 and 9:16 keyframes", "tall": "draft keyframes (bottle, pouch)", "tiny": "untested" } } }