穿过画里那扇亮着灯的窗
远处一栋房子,楼上一扇亮窗,屋里一个伏案写字的人。把三组平面插画接成一条连续的摄像机路线。
最后会做出什么
- 30 fps、12 秒的一个镜头。 前景从镜头两侧经过,窗户逐渐占满画面,最后由房间接住。
- 三组透明底素材: 房子外景、窗户近景、室内。镜头会露出的地方要预先画完整。
- 支持 WebGPU 的浏览器。 使用 3D 图层与双节点摄像机;插画本身仍是一张张平面。
1. 先准备三个距离的画面
把外景分成天空、远山、村庄、房子、花园和近处前景。窗洞必须透明,不能只画一块明黄色来代替,否则会挡住室内。
另备一组窗边墙面和窗帘,以及室内的后墙、书桌、人物和近景。每一组使用共同画布,保留各层相对位置。
按导入素材 (在新标签页打开)导入文件夹,先对照合成参考图确认层序与摆放,再开始动画。
2. 保持构图,排开纵深
新建 1920 × 1080 合成和双节点摄像机。这一镜头的起始位置是 (960, 540, −1500),沿 +Z 看,缩放为 1500。
将图片设为 3D 图层,自动朝向设为面向摄像机。先摆好第一帧外景,再用保持当前构图的纵深移动分开远近,具体入口见3D 图层与摄像机 (在新标签页打开)。
由远到近排列天空、远山、村庄、房子、花园和前景。试着推一小段摄像机:近处应比远处移动得更快,图层之间不能露出空洞。

3. 对齐窗洞,接好房间
让摄像机路线正对外景的窗洞中心。把近景墙面的窗洞对到同一个屏幕位置,放在房子平面略靠前的位置。
到最后一帧摆好室内构图。书桌和坐在桌前的人要处于接近的纵深,否则推近时两者会相互滑开。
慢慢拖过接近窗户的一段。远处的室内先用蒙版限制在房子轮廓内,等房子占满画面再打开,避免室内从屋顶和外墙后露出来,操作见蒙版 (在新标签页打开)。
- 分层与窗户交接

4. 做一条速度看起来均匀的推镜
给摄像机位置打关键帧,从外景一直走到室内。目标点始终放在摄像机前方的同一直线上,让这一段保持推进而不是转头。
先用少量关键帧检查路线,再调整间距,让剩余距离逐渐按比例缩短。长距离推镜如果世界坐标匀速,结尾看起来会突然冲得很快;用图表编辑器 (在新标签页打开)检查画面里的速度。
分别检查开头、窗户交接和最后的构图。这部片子直着穿窗,大幅侧向绕行会让平面插画露出侧边。

5. 把交接藏进窗户里
窗户变大时,让近景墙面逐渐接替远处的房子。只有两处窗洞已经对齐,才开始淡入近景;房子继续留在后面。
室内盖着窗内的暖光淡入,人物稍后出现。本片室内在第 60–130 帧淡入,人物在第 100–160 帧淡入。
镜头即将穿过一张前景前,先把它淡出。逐帧看画面四角和窗帘边缘,消除整屏闪过、裁切边露出和大小突然跳变。
6. 加一点人物动作,再导出
先把推镜做好,再给人物加很小的动作:写字的手、头部轻动、偶尔眨眼。关节处要画出重叠,转动才不会裂开。
整段按正常速度播放,再停在穿窗处检查。预览缩小时看不见的接缝,可能在成片里很明显。
通过导出视频或图片导出第 0–359 帧,格式与质量设置见导出 (在新标签页打开)。打开成片再核对第一帧、穿窗交接和最后一帧。
接着看什么
- 了解窗户为什么要画两次,以及这条推镜路线的边界。 推进一扇亮着灯的窗
- 换一种分层插画的用法:用色相曲线把满山绿林染成秋天。 用色相曲线让山谷染秋