整套流程
Pappu Express 一开始只是一句话,最后变成了一部被观看数百万次的片子,而这一切都在 Morphic 里完成。它分八个阶段完成,而让整件事保持在正轨上的那个习惯很简单:在开始下一个阶段之前先完成当前阶段,因为每一步都依赖于前一步。下面就是我们的做法,每个阶段都附上一个示例提示词,展示我们给出的那种指引。

1.
剧本
一切都从故事开始,所以我们也从这里开始。我们用一句话把设定交给 Copilot,请它把整个故事写出来。返回的是一份正经的剧本,分幕、分场,还有逐拍的动作,而这份剧本就成了我们之后要生成的每个镜头的地图。

2.
风格锁定
在画出任何一个角色之前,我们先定下画面感。我们描述了想要的那个世界,让 Copilot 用一些临时的对象生成几帧,这样我们只是在对风格本身做出反应,别无其他。一旦有几帧感觉对了,它们就成了后续一切都会遵循的参考。
用这种美术风格生成图像:
风格化 3D 动画质感,夸张的比例,体积造型上有绘画感的纹理,饱和的色彩配可见的笔触,墨点似的眼睛,温暖的轮廓光,背景虚化,鲜明的印度动画质感,黄金时刻的补光。仅作风格参考,新角色和新场景。

3.
角色设定
画面感锁定之后,我们就把角色请进来。我们把那些风格帧作为参考再喂回去,请它做完整的角色设定,即同一个角色的多个角度,这样一张脸从一个镜头到下一个镜头都还是同一张脸。我们在体型、服装和那些小细节上越具体,之后每个镜头就越一致。
生成一张风格化 3D 卡通印度人力车夫的角色设定,大圆头,小身子,细四肢,又大又扁的黑色八字胡,墨点似的眼睛,一颗金牙。藏红色波点 lungi,沾了污渍的白色背心,绿色布缠头,左右不成对的 chappals。放松的歪头姿势,温暖的轮廓光,绘画感的街道,全身正面视图。

4.
场景视觉
场景的做法完全一样:同样的风格参考,新的对象。我们描述了需要的每个地方,颜色、光线、纹理,并指回那个参考,让它处在和角色相同的世界里。这些就成了角色将要穿行其中的布景,而让它们用同一个参考,正是让成片感觉像是同一个地方、而不是十几张互不相关的图像的原因。
黄金时刻手绘的 Old Delhi 小巷,绘画感的笔触纹理。芥末黄、赤陶色、粉色和青色的破旧殖民时期建筑,印地语招牌,头顶纠缠的电线,晾着的衣物,神像壁画,一座挂满万寿菊的庙宇,冒着热气的小吃摊。温暖的路灯灯光积聚在冷调的黄昏阴影之上,前景虚化,发光的尘雾,饱和的色板,富有表现力的动画静帧质感,8K。用图 1 作风格参考。

5.
生成关键帧
既然有了角色和世界,我们就开始做关键帧,即每个镜头那张定调的单帧画面。我们把角色设定和场景一起附上,然后描述那个时刻:谁在画面里、他们在哪里、正在发生什么。我们在做任何动画之前就为每一拍都这么做,所以等到开始让画面动起来时,我们已经清楚知道每个镜头该是什么样子。
图 1 是角色参考设定。图 2 是整体场景参考。
两个角色在一家印度 paan 摊。左侧角色:一位乐呵呵的年长 paanwala,秃头戴白色 Gandhi topi,浓密的白色八字翘胡和粗白眉,圆形金属框眼镜,正在他的柜台后干活。右侧角色:Pappu 探身过来点单。黄金时刻光线,绘画感动画风格,16:9。

6.
为镜头做动画
到这里静帧开始动起来。我们把一张做好的关键帧交给 Copilot,描述想要的运动,动作、节奏、运镜,然后让它生成。我们总是为每个镜头多要几个版本,因为最好的那一条几乎从来都不是第一条。我们从每一批里保留能用的那个版本,然后继续往下。
dabba wala 大叔不慌不忙地蹬着他的自行车,突然 Pappu Express 以不可思议的速度从左侧冲进画面。时间放慢,tiffin 饭盒从自行车上向上弹起,又迅速以完美的顺序落回原位。
总共生成 5 个视频。

7.
声音设计
一场追逐戏的好坏取决于它的声音,所以这个阶段我们下了真功夫。在 Canvas 里我们生成了需要的音乐、音效和零碎的人声。配乐我们就用大白话描述,类型、乐器、速度、情绪,然后反复重新生成,直到它和画面对上。声音是让喜剧效果落地的关键。
快节奏的喜剧印度器乐,每一拍都有突出的 tabla,活泼跳跃的 sarangi/harmonium 旋律,dholak 加花,长笛颤音,闹剧式追逐的劲头,大调,约 150 BPM,无人声,俏皮又癫狂。

8.
剪辑
最后,一切在 Compose 里汇到一起。我们把素材拖到时间线上,逐一修剪,按故事顺序排好,再把音乐和音效铺在底下。这最后一道工序,正是把一堆各自独立的生成结果变成真正能当作一部片子来看的东西的环节,值得你慢慢打磨。

观看成片
这就是整套流程,从一句话的想法到一部完成的短片。下面就是它最终的样子。它已经被观看超过 1100 万次,收获 9,000+ 个赞,而且还在增长。

