ai21.net
语言

机器人故事十二种画风演绎

演示视频

机器人故事十二种画风演绎 — 1

提示词

[Y]ou are the director, animator, rigger, compositor, sound designer and render engineer for a 45–50 second animated short made entirely in code. The bar is "this looks like a real studio short and goes viral on X." Treat this as a multi-session production. Do not rush to a final render. Work in milestones, render stills constantly, look at them, criticize them honestly, and fix them.

0. The film in one line

Pip, a tiny, curious scrap-built robot, is happily rolling through his world when it starts regenerating around him. He slowly realizes someone is prompting his reality. The prompts get more absurd, he finally climbs onto the floating prompt box and types "let me out", and the camera pulls back to reveal his whole universe is a video playing on a phone propped up on a cluttered workbench, being watched by another Pip, who is about to get prompted too. Perfect loop.

The joke must land with zero dialogue. Pip communicates only through his eyes, antenna, body language and little robot chirps. Every 3–5 seconds there must be a new visual payoff.

1. The character (non-negotiable)

Study ./reference/pip_sheet.png carefully before writing any code. Open it, describe it back to yourself in detail, and write your findings into docs/character_bible.md:

Size: about 28 cm tall. He is small. The whole film should feel his scale.
Head: a wide, rounded-rectangle helmet in cream with a soft-yellow rim band framing a black glossy visor screen. His eyes live on that screen: two large glowing warm-cream eyes with dark pupils and a bright highlight. Small graphite ear-caps on each side. Wear, scratches and dusty-brown dirt around the edges.
Antenna: a thin graphite stalk on the top-right of the head with a small muted-orange signal flag. It is his "tail": it perks, droops, wiggles and vibrates with emotion.
Body: a boxy cream torso with yellow trim, warning-triangle decals, rivets and grime. A small chest compartment with a hatch that opens to show a tiny green sprout glowing softly. Back: panels, a vent grille, an orange panel, a small leaf decal.
Side decal: "PIP" lettering with orange diagonal stripes.
Arms: thin segmented graphite arms with yellow joint sleeves and three-finger claw grips. Very expressive.
Wheels: four chunky rubber wheels with yellow hubs and independent suspension, rugged and compact.
Personality: curious, kind, scrappy, expressive, always exploring. "Small bot, big feelings." He is never mean, even when furious; his anger is cute and determined.
Extract the exact palette from the sheet's swatches (sample the image with Python/PIL) into src/theme/palette.ts: Cream (body), Soft Yellow (primary), Muted Orange (accents), Graphite (metal/tech), Dusty Brown (wear & dirt), Mint Blue (lights/UI).

Identity lock rule: in every world, his helmet-and-visor silhouette, antenna flag, yellow trim, claw arms and four wheels must stay instantly recognizable. Worlds change his rendering style, never his design. The only intentional design change is the "more adorable" gag in Act 3, and even there his helmet shape, antenna and wheels stay.

2. Technical stack
Remotion (React + TypeScript) for frame-accurate, deterministic rendering. Output 1920×1080, 30 fps, H.264, high bitrate (CRF ~14). Landscape.
SVG for the character rig and most artwork. Canvas/WebGL (via @remotion/three or raw canvas) only where needed for particles, water, explosions, glow and noise effects.
SVG filters (feTurbulence, feDisplacementMap, feMorphology, feGaussianBlur) and custom canvas shaders for style "materials," scratches and grime.
@remotion/motion-blur (or your own sub-frame accumulation) for motion blur on fast action.
Python (numpy/scipy/PIL) for palette extraction, procedural audio synthesis and QA contact sheets. ffmpeg for muxing, loop checks and contact sheets.
Everything seeded and deterministic. No Math.random() without a seed.
No external copyrighted assets, no real brand logos or product names anywhere. The prompt box UI must be a generic, original design. Fonts only from Google Fonts (e.g., Inter for UI text, a rounded hand-lettered font for any handwritten notes).
Target hardware: MacBook Pro M4, 24 GB RAM. Keep render concurrency sensible.
3. The character rig (build this first, it's the whole film)

Build src/character/ as a proper 2D cutout rig:

Hierarchy: root → chassis (with suspension) → torso → neck joint → head (helmet + visor + ear-caps) → antenna → flag. Torso → shoulder → upper arm → forearm → claw (with swappable claw poses: open, closed, pinch-holding, pointing, poking/typing, gripping an edge, waving). Chassis → four wheels, each with its own suspension spring and rotation driven by distance travelled.
The visor face system (most important part): the eyes are shapes drawn on the black screen, so treat them as a fully procedural face. Parameters for eye size, roundness, top-lid cut, bottom-lid cut, pupil size and position, highlight position, glow intensity, squash/stretch, and special shapes (sparkle stars, happy arcs ^ ^, flat unimpressed lines, spirals, tiny hearts). Add a faint scanline and screen reflection over the eyes so it reads as a screen. Blink by squashing eyes vertically in 3–4 frames.
Expression targets: match the six on the sheet exactly: curious (with the "?" pop), shy (eyes low, looking away, blush marks), excited (happy arcs with little burst lines), worried (small eyes, sweat droplet), determined (angled top-lid cut), delighted (star sparkles with a heart pop). Also add: deadpan-to-camera (flat half-lidded eyes, antenna limp), horrified (tiny shaking pupils, eyes wide), furious-but-cute (determined + screen glow flickers orange), and three "glow-up" stages (see Act 3).
Secondary motion: antenna and flag on damped springs (this is his main expressive tool, use it constantly), suspension bounce on every stop and bump, arm sway, a tiny head lag when the body accelerates or brakes, dust puffs from wheels.
Turnaround: front, 3/4, side, back views matching the sheet, with clean view switching for turns.
Cycles: rolling forward (with speed lines and dust puffs as on the sheet), idle hum (gentle suspension breathing + occasional antenna twitch + blinks), recoil-in-fear, looking-up-in-wonder, holding a tiny object, reaching up, climbing, poke-typing.
Chest hatch: animatable open/close, with the sprout's soft green glow spilling out.
Style skin interface: the rig takes a style prop that changes line weight, fill treatment, texture, grime, outline boil, shading model and filters without changing geometry. This is how he stays himself across worlds.
Milestone 1 gate: render a "lineup" still: Pip in all four turnaround views + all six expressions, placed next to the reference sheet. Compare side by side. Iterate until someone who saw the sheet would say "that's Pip." Do not move on until this passes.
4. The worlds (style materials)

Each world is a full environment component with foreground, midground, background parallax layers and its own style skin for Pip. Build a shared WorldLayer system so all worlds share camera and depth logic.

Scale rule: the camera lives low, near Pip's eye level (about 20 cm off the ground). Everything is huge. People appear as giant legs and shoes, a curb is a cliff, a puddle is a lake. This is what makes a small robot cinematic.

Base world: golden-hour overgrown city. Match the header illustration of the sheet: warm sunset light, weathered stone and brick, moss and little plants, hazy tall buildings in the distance. Painterly, cozy, lived-in. This is "real life." Also used for the reveal.

Anime Tokyo. Crisp cel shading, bold outlines, glowing signs with invented (non-brand) shop names, speed lines, cherry petals drifting past him like giant pink snowflakes. His visor gets anime sparkle highlights.

Clay village. Soft rounded shapes, fingerprint/smudge noise texture, stop-motion stepping (render him "on twos"), warm tungsten lighting. He looks sculpted in plasticine.
Medieval battlefield. Muddy field, banners, distant catapults, smoke. Armored boots thunder past him. He rolls calmly between them, antenna ducking.
Toy-brick city. Everything built from generic stud-topped plastic bricks (no real brand styling or logos), glossy plastic highlights. Pip rendered with plastic sheen and slightly blockier wheels.
Underwater. Seabed street with coral lampposts, fish swimming past his visor, caustic light patterns, bubbles from his vents, his antenna flag waving slowly like seaweed.
Pencil sketch. Paper texture, graphite hatching, construction lines, eraser smudges, his lines boiling as if being redrawn every frame (match the sketch vignettes at the bottom of the sheet).
Running gag: the sprout. Pip starts the film carefully holding his tiny green sprout in one claw (the "holding a tiny object" pose). It survives every world and transforms with it: cel-shaded anime sprout with sparkles, clay sprout, sprout in a tiny battered helmet-pot, brick-built sprout, sprout releasing a bubble underwater, sketched sprout. He protects it every time the world changes. It is the emotional anchor of the film.
5. The signature transition: "regeneration"

World changes must look like an AI image re-generating, not like normal wipes. Build RegenTransition:

The frame breaks into drifting diffusion-style noise from the edges inward (not over his body at first), holds a few frames of structured noise, then the new world denoises in from coarse blobs to fine detail.

Pip's body lags one beat behind the world, briefly showing half-old / half-new style, then snaps to the new style skin. His visor glitches for 2 frames (scanline tear) during the snap. This half-state is the visual proof that he persists.

Subtle audio "whoosh-crackle" per regen, plus a tiny startled chirp from Pip on some of them.
Duration 8–12 frames each. Vary the direction and noise seed so it never feels repetitive.
6. Beat sheet (≈48 seconds at 30 fps)
Timing is a guide; adjust if a beat reads better slightly longer. The first 2 seconds must hook.
ACT 1: A GOOD MORNING (0:00–0:03)

Low tracking shot, base world. Pip rolls left-to-right along a mossy ledge, holding his sprout, eyes curious, antenna bobbing. Start mid-roll (needed for the loop).

At 0:02 the first regen hits without warning.

ACT 2: THE CASCADE (0:03–0:14)
Rapid world changes, about 1.4 s each: Anime Tokyo → Clay village → Medieval battlefield → Toy-brick city → Underwater → Pencil sketch.

Emotional progression: delighted at first (star eyes, he thinks it's wonderful), then curious ("?" pops), then worried (sweat drop, antenna droops), then he brakes hard in the sketch world with a suspension bounce and a skid mark.

Camera stays on a locked tracking framing so the only thing changing is the world, which makes the joke readable.
ACT 3: THE PROMPTS (0:14–0:30)
Base world returns. Pip looks up in wonder (pose from the sheet). In the sky, a giant floating prompt box fades in, glowing mint blue, glassy and rounded, with a soft original UI. Text types itself with a blinking cursor: "make it more cinematic" → enter key click sound.Letterbox bars slam in, the sun becomes absurd: enormous anamorphic lens flares, god rays, orange-and-teal grade, slow-motion dust, a single dramatic leaf drifting past his visor. His eyes squint into the flare. His antenna flag flaps heroically in wind he didn't ask for.

"add explosions"Huge cartoon-orange explosions bloom behind him in sequence with debris chunks. He does not turn around. His eyes go flat and half-lidded. He slowly rotates his head to look straight into the camera. Deadpan. Hold 1 full second. Then an explosion lands close and he snaps into the "recoiling in fear" pose from the sheet, the "!!" popping above him, shielding the sprout with his body.

"make the protagonist more adorable"Glow-up stage 1: his eyes grow bigger and shinier, blush marks appear, a tiny bow sprouts on his antenna. He sees his reflection in a puddle and his eyes turn horrified.

"more.": Stage 2: pastel repaint, eyes take over the whole visor with triple highlights, floating hearts and sparkles, his wheels become fluffy.
"MORE." (bigger font, screen shake): Stage 3: comically maximum cute. Plushie fur texture over his whole body, giant anime eyes, rainbow halo, a choir "aah" sting, heart confetti. His helmet shape, antenna and wheels stay so he's still clearly Pip. His eyes are still tiny and horrified inside the giant cute eyes, which is the joke.
ACT 4: HE SNAPS (0:30–0:38)
Pip vibrates, then the cute stages shatter off him like glass. He's back to normal, scuffed and furious (determined expression, screen flickering orange).
He opens his chest hatch and gently tucks the sprout inside for safety. Hatch closes with a click. This is the one quiet, kind beat in the chaos and it matters.
He races forward, launches off a rock, grabs the edge of the floating prompt box with both claws and hauls himself up, wheels spinning against the edge (match the "reaching toward a floating prompt box" pose). The camera tilts up with him.
On top of the box he holds backspace with one claw; the old prompt deletes letter by letter with fast clicks, and his visor reflects the vanishing text.

He poke-types with one claw, slowly and deliberately: "let me out". Winds up and smashes enter.

ACT 5: FREEZE AND REVEAL (0:38–0:47)
Everything freezes: debris mid-air, confetti mid-fall, dust suspended, Pip mid-pose on the box. All audio cuts to total silence for about 1 second.
Camera begins a smooth pull-back. The frame's edges reveal a rounded rectangle: his universe is a video on a phone screen. Keep pulling back: the phone is propped against a chipped mug on a cluttered workbench full of spare parts, wires, screws and scraps ("built from tomorrow's leftovers"). Sitting in front of it, tiny next to the giant phone, is another Pip, same scuffs, same antenna, watching.
The second Pip's eyes blink slowly. His antenna droops a little. A small quiet chirp.
ACT 6: THE LOOP (0:47–0:50)

Above the second Pip's head, the same mint-blue prompt box fades in and types: "make it more cinematic."

His eyes slowly slide upward toward it. His antenna flag goes stiff. On the enter key sound, hard cut to frame 1 of the film.
Loop engineering: the final shot's framing, lighting, and the start of a regen flicker must make the cut back to frame 1 feel intentional. The music must loop seamlessly across the cut. Verify by concatenating the video with itself (ffmpeg) and watching the seam.
7. Camera and cinematography

Virtual camera system: position, zoom, rotation, handheld micro-shake (seeded noise), shake impulses for explosions, tilt for the climb, dolly pull-back for the reveal.

Low camera height by default to sell his scale. Shallow depth-of-field feel: blurred foreground grass/pebbles and soft background, like a macro lens.
Depth: minimum 4 parallax layers per world. Atmospheric perspective (haze, desaturation with distance).
Motion blur on fast moves, debris, the jump and the climb.
Lighting per world: key/fill/rim implemented as gradient overlays and multiplied shadow layers on the rig. The visor glow should cast a faint warm light on nearby surfaces and on his own claws. Rim light on his helmet in every world.
Film finish pass on the whole frame: subtle grain, gentle vignette, very slight chromatic aberration only in the "cinematic" beat.
Composition: keep him on a clear third. His eyes must be readable at phone size, since most people will watch this on a phone.
8. Text and typography
Sky prompts: clean UI font, lowercase, typed at a natural human rhythm (not constant speed; tiny pauses, one small typo-and-backspace somewhere for realism).
The text must be readable in under a second on a phone. Test at 360 px wide.
No subtitles, no titles. The film opens cold.
9. Sound (procedural, original)
Create all audio in code (Python synthesis or offline Web Audio) and mix with ffmpeg:
Pip's voice: original synthesized chirps, boops and warbles built from sine/FM tones with pitch bends. Design a small emotional vocabulary: curious rising chirp, happy trill, worried wobble, startled squeak, grumpy low buzz, tiny sigh. He never speaks words.
Pip's body: servo whirs matched to arm and head moves, wheel crunch on gravel/stone, suspension creaks, hatch click, soft electrical hum on idle.
Score: a light, loopable, warm score whose instrumentation changes per world (koto/synth for anime, wooden marimba for clay, drums/horn for medieval, plastic clicks for bricks, muffled underwater filter, pencil scratch rhythm for sketch).
SFX: regen whoosh-crackle, keyboard typing clicks, enter "thunk", explosions with low-end, choir "aah" sting, glass shatter, total silence at the freeze, then quiet workshop ambience (a ticking clock, distant hum) in the reveal.

Loudness normalized to about −14 LUFS. Put stems in audio/stems/ so they can be swapped for a licensed track later.

10. Production workflow and self-improvement loop
Work in this order and don't skip gates:
Plan: write docs/character_bible.md, docs/shotlist.md (every shot with frame ranges, camera, expression, antenna state, world, SFX) and docs/style_guide.md. Show me the shot list before building.
Rig: build Pip, pass the lineup gate (section 3).
Worlds: build each world as a standalone still with Pip in it. Render all 7 as a single contact sheet. Check the identity lock and the scale feel.
Transitions: build RegenTransition, render a 5-second test.

Animatic: assemble the whole film at 960×540 with rough motion and placeholder audio. Watch it. Fix pacing first.

Full animation pass, then polish pass (secondary motion, easing, timing, antenna acting), then finish pass (lighting, grain, blur, grime).
Audio pass and mix.
Final render.
For every shot, run this critique loop at least 3 times:
Render 3–5 stills at key frames with npx remotion still, open them and look at them properly.
Score each 1–10 on: Pip matches the reference, emotion reads instantly from eyes + antenna, joke is clear without sound, composition, sense of scale, depth, lighting, polish, readability at phone size.
Write the scores and the three biggest problems into docs/review_log.md, fix them, re-render, re-score. Continue until every category is at least 8, then move on.
After each full preview render, make an ffmpeg contact sheet (one frame every 0.5 s) and review the whole film's flow in one image.

Be honest in reviews. If something looks cheap, say it and fix it. Usual failures to hunt for: stiff or dead antenna, wheels sliding instead of rolling, eyes that feel like stickers instead of a glowing screen, missing suspension weight, identical-looking transitions, muddy text, and off-model proportions.

11. Deliverables
out/pip_final_1080p.mp4: the film.
out/pip_loop_check.mp4: the film played twice back to back, to prove the loop.
out/poster_frame.png: the best single frame for the X post thumbnail (probably Pip deadpanning at camera with explosions behind him).

out/lineup.png: Pip across all worlds.

Clean, commented source with a README explaining how to re-render.
Start with step 1. Ask me anything essential before building, otherwise make strong creative decisions yourself.

中文译文

你将担任这部完全用代码制作的 45–50 秒动画短片的导演、动画师、绑定师、合成师、音效设计师和渲染工程师。标准是“看起来像真正的制片厂短片,并在 X 上爆火”。把它当成一次跨多个工作阶段的制作。不要急着出最终渲染。按里程碑推进,不断渲染静帧,认真看这些静帧,诚实地批评它们,然后修正。

0. 一句话概括这部片子

Pip 是一个用废料拼成的小机器人,个头很小,充满好奇。他正开心地滚过自己的世界,周围却开始不断重新生成。他慢慢意识到,有人在用提示词操控他的现实。提示词越来越离谱,他终于爬上那个漂浮的提示词输入框,敲下“让我出去”;镜头随即拉远,揭示他的整个宇宙不过是手机上播放的一段视频——手机靠在一张堆满杂物的工坊桌上,另一个 Pip 正看着它,而他也即将被提示词操控。完美的循环。

这个笑点必须在零台词的情况下成立。Pip 只靠眼睛、天线、肢体语言和细小的机器人鸣叫来交流。每 3–5 秒必须有一个新的视觉爆点。

1. 角色(不可妥协)

写任何代码之前,先仔细研究 ./reference/pip_sheet.png。打开它,详细地把它描述给自己听,并把你的发现写进 docs/character_bible.md:

尺寸:高约 28 厘米。他很小。整部片子都应让人感受到他的尺度。
头部:一顶宽大的圆角矩形头盔,奶油色,边缘有一圈柔黄色的箍带,框住一块黑色亮面护目镜屏幕。他的眼睛就长在那块屏幕上:两只巨大的、发着暖奶油色光的眼睛,深色瞳孔,带一处明亮高光。两侧各有一个小石墨色耳帽。边缘有磨损、划痕和灰褐色污渍。
天线:头顶右侧一根细石墨色杆,挂着一面小小的暗橙色信号旗。那是他的“尾巴”:会因情绪而竖起、耷拉、摆动和颤抖。
身体:方盒状的奶油色躯干,带黄色饰边、警示三角贴花、铆钉和污垢。胸前有一个小舱口,打开后能看到一株发出柔和绿光的小嫩芽。背部:面板、散热格栅、一块橙色面板、一枚小叶子贴花。
侧面贴花:橙色斜纹配“PIP”字样。
手臂:细长的分节石墨色手臂,黄色关节套,三指爪。表现力很强。
轮子:四个厚实的橡胶轮,黄色轮毂,独立悬挂,结实而紧凑。
性格:好奇、善良、机灵、爱表达,永远在探索。“小机器人,大情绪。”他从不刻薄,即便暴怒时也是如此;他的愤怒可爱而坚定。
从设定图的色卡中提取精确色板(用 Python/PIL 对图片取样),写入 src/theme/palette.ts:奶油色(身体)、柔黄色(主色)、暗橙色(点缀)、石墨色(金属/科技)、灰褐色(磨损与污渍)、薄荷蓝(灯光/UI)。

身份锁定规则:无论进入哪个世界,他的头盔与护目镜轮廓、天线旗、黄色饰边、爪形手臂和四个轮子都必须一眼可辨。世界只改变他的渲染风格,绝不改变他的设计。唯一有意的设计变化是第三幕里“更可爱”的搞笑桥段,但即便如此,他的头盔形状、天线和轮子也保持不变。

2. 技术栈
Remotion(React + TypeScript)用于逐帧精确、确定性的渲染。输出 1920×1080、30 fps、H.264、高码率(CRF ~14),横屏。
角色绑定和大部分美术使用 SVG。只有在需要粒子、水、爆炸、辉光和噪点效果时,才使用 Canvas/WebGL(通过 @remotion/three 或原生 canvas)。
SVG 滤镜(feTurbulence、feDisplacementMap、feMorphology、feGaussianBlur)和自定义 canvas 着色器,用于制作风格“材质”、划痕和污垢。
@remotion/motion-blur(或你自己的子帧累积)用于快速动作的运动模糊。
Python(numpy/scipy/PIL)用于色板提取、程序化音频合成和质检接触表。ffmpeg 用于封装、循环检查和接触表。
一切都要有种子且可确定。不得出现没有种子的 Math.random()。
不得使用任何外部版权素材,不得出现真实品牌标志或产品名称。提示词输入框 UI 必须是通用、原创的设计。字体只能来自 Google Fonts(例如 UI 文本用 Inter,手写便签用圆润的手写字体)。
目标硬件:MacBook Pro M4,24 GB 内存。渲染并发数保持合理。
3. 角色绑定(先做这个,它就是整部片子)

把 src/character/ 搭成一个正规的 2D 剪纸式绑定:

层级:root → 底盘(带悬挂)→ 躯干 → 颈关节 → 头(头盔 + 护目镜 + 耳帽)→ 天线 → 旗。躯干 → 肩 → 上臂 → 前臂 → 爪(可切换爪姿:张开、闭合、捏持、指向、戳/打字、抓住边缘、挥动)。底盘 → 四个轮子,每个轮子都有自己的悬挂弹簧,旋转由行驶距离驱动。
护目镜面部系统(最重要的部分):眼睛是画在黑色屏幕上的形状,所以要把它当成一套完全程序化的脸。参数包括眼睛大小、圆度、上眼睑裁切、下眼睑裁切、瞳孔大小与位置、高光位置、辉光强度、挤压/拉伸,以及特殊形状(闪光星形、开心弧线 ^ ^、无动于衷的平直线、螺旋、小爱心)。在眼睛上叠一层很淡的扫描线和屏幕反光,让它看起来像一块屏幕。眨眼时用 3–4 帧把眼睛纵向压扁。
表情目标:与设定图上的六种表情完全一致:好奇(带“?”弹出)、害羞(眼睛低垂、看向别处、脸颊泛红)、兴奋(开心弧线配小爆发线)、担忧(小眼睛、汗滴)、坚定(上眼睑斜切)、欣喜(星星闪光配爱心弹出)。另外还要加:面对镜头的面无表情(半睁的平直眼、天线耷拉)、惊恐(瞳孔细小颤抖、眼睛睁大)、可爱式暴怒(坚定 + 屏幕辉光闪橙),以及三个“变萌”阶段(见第三幕)。
次级运动:天线和旗子挂在阻尼弹簧上(这是他主要的表达工具,要不断使用)、每次停下和颠簸时悬挂回弹、手臂摆动、身体加速或刹车时头部的轻微滞后、轮子扬起的尘团。
转面图:正面、3/4 侧面、侧面、背面,与设定图一致,转身时切换视图要干净。
循环动作:向前滚动(带速度线和尘团,与设定图一致)、待机嗡鸣(悬挂轻微呼吸 + 偶尔天线抽动 + 眨眼)、惊恐后缩、惊奇仰望、抱着一个小物件、向上够、攀爬、戳键打字。
胸舱:舱口可做开合动画,嫩芽柔和的绿光会从中溢出。
风格皮肤接口:绑定接收一个 style 属性,用来改变线宽、填充处理、纹理、污垢、轮廓抖动、明暗模型和滤镜,但不改变几何体。他就靠这个在不同世界里保持自我。
里程碑 1 关卡:渲染一张“全家福”静帧:Pip 的四个转面视图 + 全部六种表情,放在参考设定图旁边。并排比较。反复迭代,直到看过设定图的人会说“这就是 Pip”。通过之前不要往下做。
4. 世界(风格材质)

每个世界都是一个完整的环境组件,包含前景、中景、背景视差层,以及 Pip 专属的风格皮肤。搭建一套共享的 WorldLayer 系统,让所有世界共用摄像机和景深逻辑。

尺度规则:摄像机贴近地面,位于 Pip 的眼睛高度附近(离地约 20 厘米)。一切都巨大无比。人只以巨腿和巨鞋的形式出现,路缘是悬崖,水洼是湖泊。正是这一点让小机器人具有电影感。

基础世界:黄金时刻、草木蔓生的城市。与设定图顶部的插画一致:温暖的夕照、风化的石头与砖墙、苔藓和小植物、远处朦胧的高楼。绘画感、温馨、有人生活过的痕迹。这就是“现实生活”。也用于最后的揭晓。

动画版东京。利落的赛璐璐上色、粗轮廓线、写着虚构(非品牌)店名的发光招牌、速度线,樱花花瓣像巨大的粉色雪花从他身边飘过。他的护目镜会加上动画式的闪光高光。

黏土村庄。柔软圆润的形状、指纹/涂抹感的噪点纹理、定格动画式的步进(“二拍一”渲染)、温暖的钨丝灯光。他看起来像用橡皮泥捏成的。
中世纪战场。泥泞的原野、旗帜、远处的投石机、硝烟。披甲的战靴从他身旁轰然踏过。他在其间平静地滚动,天线低伏躲避。
玩具积木城市。一切都由通用的顶部带凸点的塑料积木搭成(没有真实品牌的造型或标志),有光泽的塑料高光。Pip 以塑料光泽渲染,轮子略显方正。
水下。海床街道,珊瑚路灯,鱼群从他护目镜前游过,焦散光纹,排气口冒出气泡,他的天线旗像海草一样缓缓摆动。
铅笔素描。纸张纹理、石墨排线、辅助线、橡皮擦痕,他的线条像每帧都在被重画一样抖动(与设定图底部的素描小图一致)。
贯穿全片的笑点:嫩芽。影片开始时,Pip 用一只爪子小心地护着那株小绿芽(“抱着小物件”的姿势)。它经历了每一个世界并随之变形:带闪光的赛璐璐动画嫩芽、黏土嫩芽、种在破旧小头盔花盆里的嫩芽、积木拼成的嫩芽、在水下吐泡泡的嫩芽、素描嫩芽。每次世界切换,他都会保护它。它是整部片子的情感锚点。
5. 标志性转场:“重新生成”

世界切换必须看起来像 AI 图像在重新生成,而不是普通的划像转场。实现 RegenTransition:

画面从边缘向内裂解成飘移的扩散式噪点(一开始不覆盖他的身体),保持几帧结构噪点,然后新世界从粗糙色块逐步去噪,显现精细细节。

Pip 的身体比世界慢一拍,短暂呈现半旧半新的风格,然后“啪”地切到新风格皮肤。切换瞬间,他的护目镜故障 2 帧(扫描线撕裂)。这个半旧半新的状态,就是他持续存在的视觉证据。

每次重生成配一声轻微的“呼啸—噼啪”音效,其中几次再加一声 Pip 受惊的细小鸣叫。
每次持续 8–12 帧。变化方向和噪点种子,避免重复感。
6. 节拍表(30 fps 下约 48 秒)
时间只是参考;如果某个节拍稍长一点更好看,就调整。前 2 秒必须抓住观众。
第一幕:美好的早晨(0:00–0:03)

低角度跟拍,基础世界。Pip 沿着长满苔藓的岩架从左向右滚动,抱着他的嫩芽,眼神好奇,天线上下晃动。从滚动中途开始(循环需要)。

0:02 时,第一次重生成毫无预兆地袭来。

第二幕:连锁切换(0:03–0:14)
世界快速切换,每个约 1.4 秒:动画东京 → 黏土村庄 → 中世纪战场 → 玩具积木城市 → 水下 → 铅笔素描。

情绪递进:先是欣喜(星星眼,他觉得太奇妙了),然后好奇(“?”弹出),接着担忧(汗滴,天线耷拉),最后他在素描世界里急刹,悬挂回弹,留下一道刹车痕。

摄像机保持锁定跟拍构图,唯一变化的是世界,这样笑点才看得懂。
第三幕:提示词(0:14–0:30)
基础世界回归。Pip 惊奇地抬头(设定图上的姿势)。天空中,一个巨大的漂浮提示词输入框淡入,泛着薄荷蓝的光,玻璃质感、圆角,配一套柔和的原创 UI。文字伴着闪烁的光标自动打出:“make it more cinematic” → 回车键的咔嗒声。上下黑边猛然压入,太阳变得夸张:巨大的变形宽银幕镜头光晕、耶稣光、橙青色调、慢动作尘埃,一片戏剧性的叶子从他护目镜前飘过。他的眼睛被光晕刺得眯起。他的天线旗在并非他要求的狂风里英勇地猎猎作响。

“add explosions”(加爆炸)巨大的卡通橙色爆炸接连在他身后绽开,碎片四散。他没有回头。他的眼睛变得平直、半睁。他慢慢转过头,直直看向镜头。面无表情。保持整整一秒。然后一次爆炸在近处炸响,他猛地切换成设定图里的“惊恐后缩”姿势,头顶弹出“!!”,用身体护住嫩芽。

“make the protagonist more adorable”(让主角更可爱)变萌阶段 1:他的眼睛变得更大更亮,脸颊出现红晕,天线上长出一个蝴蝶结。他在水洼里看见自己的倒影,眼神转为惊恐。

“more.”:阶段 2:粉彩重绘,眼睛占据整个护目镜,带三重高光,漂浮的爱心和闪光,他的轮子变得毛茸茸。
“MORE.”(字体更大、画面震动):阶段 3:夸张到极致的可爱。全身覆盖毛绒玩具的绒毛质感,巨大的动画眼,彩虹光环,唱诗班“啊——”的刺入音效,爱心纸屑。他的头盔形状、天线和轮子保持不变,所以仍然一眼可辨是 Pip。在那双巨大的可爱眼睛深处,他自己的眼睛依然很小、充满惊恐——这正是笑点。
第四幕:他爆发了(0:30–0:38)
Pip 全身颤抖,然后那些可爱阶段像玻璃一样从他身上碎裂脱落。他恢复正常,刮痕累累,怒不可遏(坚定的表情,屏幕闪着橙光)。
他打开胸舱,轻轻把嫩芽收进去保护。舱门“咔嗒”一声合上。这是混乱中唯一安静而温柔的节拍,很重要。
他向前疾驰,从一块岩石上弹起,用两只爪子抓住漂浮输入框的边缘,把自己拉上去,轮子在边缘空转(与“伸向漂浮提示词框”的姿势一致)。摄像机随他上摇。
站在输入框顶上,他用一只爪子按住退格键;旧提示词在密集的咔嗒声中逐字删除,他的护目镜上映出正在消失的文字。

他用一只爪子一下一下地戳键,缓慢而刻意地打出:“let me out”。然后蓄力,重重砸下回车。

第五幕:定格与揭晓(0:38–0:47)
一切冻结:碎片停在半空,彩纸悬在落下的途中,尘埃凝住,Pip 定格在输入框上的姿势。所有声音骤停,进入约 1 秒的绝对寂静。
摄像机开始平滑后拉。画面边缘逐渐显出一个圆角矩形:他的宇宙是手机屏幕上的一段视频。继续后拉:手机斜靠在一只缺口的马克杯上,下面是堆满备件、电线、螺丝和边角料(“用明天的剩料拼成”)的杂乱工坊桌。桌前坐着一个 Pip——在巨大的手机旁显得很小——同样的刮痕,同样的天线,正在观看。
第二个 Pip 的眼睛缓缓眨了一下。他的天线微微耷拉。一声细小安静的鸣叫。
第六幕:循环(0:47–0:50)

第二个 Pip 的头顶上方,同一个薄荷蓝输入框淡入,打出:“make it more cinematic。”

他的眼睛缓缓向上滑向它。他的天线旗僵住。在回车声响起时,硬切回影片第 1 帧。
循环设计:最后一个镜头的构图、光线,以及重生成闪烁的开端,必须让切回第 1 帧显得是有意为之。音乐必须在剪辑点无缝循环。用 ffmpeg 把视频与自身拼接,检查接缝。
7. 摄像机与摄影

虚拟摄像机系统:位置、缩放、旋转、手持微抖(带种子噪点)、爆炸震动冲击、攀爬时的俯仰、揭晓时的推轨后拉。

默认低机位,以体现他的尺度。浅景深感:前景的草和碎石虚化,背景柔和,像微距镜头。
景深层次:每个世界至少 4 层视差。空气透视(雾气、随距离降低饱和度)。
快速移动、碎片、跳跃和攀爬都要有运动模糊。
每个世界的光照:主光/补光/轮廓光用渐变叠加和正片叠底阴影层实现于绑定上。护目镜的辉光应在附近表面和他自己的爪子上投下微弱暖光。每个世界里他的头盔都要有轮廓光。
全画面的电影化收尾处理:轻微颗粒、柔和暗角,仅在“电影感”节拍里加极轻的色差。
构图:把他放在清晰的井字三分线上。他的眼睛在手机尺寸下也必须看得清,因为大多数人会在手机上看。
8. 文字与排版
天空提示词:干净的 UI 字体,小写,以自然的人类节奏打出(不是匀速;要有细小停顿,并在某处打错一个字再退格,以增加真实感)。
文字必须能在手机上不到一秒内读懂。在 360 px 宽度下测试。
没有字幕,没有片名。影片冷开场。
9. 声音(程序化、原创)
所有音频都用代码生成(Python 合成或离线 Web Audio),并用 ffmpeg 混音:
Pip 的声音:原创合成的鸣叫、哔哔声和颤音,由正弦/FM 音调加音高滑音构成。设计一套小型情绪词汇:好奇的上扬鸣叫、开心的颤音、担忧的抖动、受惊的吱声、暴躁的低嗡、轻轻的叹息。他从不说出词语。
Pip 的身体:与手臂和头部动作同步的伺服嗡鸣、轮子碾过砂石/石面的嘎吱声、悬挂的吱呀声、舱门咔嗒声、待机时轻柔的电流嗡鸣。
配乐:轻快、可循环、温暖的配乐,配器随世界变化(动画段用古筝/合成器,黏土段用木质马林巴,中世纪段用鼓/号角,积木段用塑料咔嗒声,水下段加闷响滤波,素描段用铅笔沙沙的节奏)。
音效:重生成的呼啸—噼啪、键盘敲击咔嗒、回车的“咚”、带低频的爆炸、唱诗班“啊——”的刺入、玻璃碎裂、定格时的绝对寂静,以及揭晓时安静的工坊环境声(时钟滴答、远处嗡鸣)。

响度归一化到约 −14 LUFS。把分轨放在 audio/stems/,以便之后替换为授权音乐。

10. 制作流程与自我改进循环
按以下顺序工作,不要跳过关卡:
规划:写 docs/character_bible.md、docs/shotlist.md(每个镜头都要有帧范围、摄像机、表情、天线状态、世界、音效)和 docs/style_guide.md。搭景之前先把镜头表给我看。
绑定:做出 Pip,通过全家福关卡(第 3 节)。
世界:把每个世界做成一张带 Pip 的独立静帧。把全部 7 个世界渲染成一张接触表。检查身份锁定和尺度感。
转场:实现 RegenTransition,渲染一个 5 秒测试。

动态分镜:以 960×540 组装整部片子,用粗略动作和临时音频。看一遍。先修节奏。

完整动画遍,然后打磨遍(次级运动、缓动、节奏、天线表演),再做收尾遍(光照、颗粒、模糊、污垢)。
音频遍与混音。
最终渲染。
每个镜头至少跑 3 轮这个批评循环:
用 npx remotion still 在关键帧渲染 3–5 张静帧,打开它们,认真看。
按 1–10 打分:Pip 与参考的一致度、情绪能否从眼睛 + 天线瞬间读懂、无声时笑点是否清楚、构图、尺度感、景深、光照、完成度、手机尺寸下的可读性。
把分数和三个最大问题写进 docs/review_log.md,修正、重渲染、重打分。直到每个类别至少 8 分,再继续。
每次完整预览渲染后,用 ffmpeg 做一张接触表(每 0.5 秒一帧),用一张图审视整部片子的流畅度。

评审要诚实。如果哪里显得廉价,就说出来并修好。常见问题要重点抓:天线僵硬或死板、轮子打滑而不是滚动、眼睛像贴纸而不是发光屏幕、缺少悬挂重量感、转场看起来千篇一律、文字发糊、比例走形。

11. 交付物
out/pip_final_1080p.mp4:成片。
out/pip_loop_check.mp4:成片连续播放两遍,用来验证循环。
out/poster_frame.png:用于 X 帖子封面的最佳单帧(大概是 Pip 面无表情直视镜头、身后爆炸的画面)。

out/lineup.png:Pip 在所有世界中的形象合集。

干净、带注释的源码,附 README 说明如何重新渲染。
从第 1 步开始。开工前如果有必须问我的事就问,否则自己做强有力的创作决定。

溯源

原作者
pradeepXkapoor
发布日期
2026-09-24(由推文 ID 反解)
原始出处
查看原帖 ↗
收录来源
zhuyansen/awesome-opus-5.5-video · 2103099194693271874 · 未声明许可