This tutorial demonstrates how to create a slit scan time warping effect using the Time Machine TOP in TouchDesigner. Slit scan is a classic visual effect that creates fluid, warping imagery by sampling different moments in time across different parts of the image.
Understanding the Time Machine TOP
Basic Setup
To get started with the Time Machine TOP:
- Add a Movie File In TOP and load a video file (the tutorial uses “count.mov”)
- Add a Texture 3D TOP - this is required as the first input for the Time Machine
- On the Texture 3D, toggle on the Pre-fill parameter to fill the texture with a fixed set of images
Pre-filling the Texture
The pre-fill technique ensures your sequence always starts at the same image:
- Without pre-fill, clicking pulse starts at a different image each time
- To fix this, change the Movie File In TOP’s Play Mode to “Specify Index”
- Now clicking pre-fill will always start at frame one
How the Time Machine Works
While the Remap TOP allows you to select pixels from UV coordinates, the Time Machine TOP allows you to select pixels from a W coordinate - essentially selecting pixels from a specific time or history in your cache.
The Time Machine requires a second input:
- Add a Constant TOP and connect it to the Time Machine
- Adjust the Color parameter value to scrub through time
- Values from 0 (black) to 1 (white) map to different frames in your cache
Adjusting Cache Size and Black Offset
To access more frames in time:
- Increase the Cache Size on your Texture 3D (e.g., to 100)
- Remember to click Pulse to refill the texture after changing cache size
- Adjust the Black Offset parameter on the Time Machine to define the boundaries of your time offset
- For example, setting Black Offset to -100 allows you to go 100 steps backwards in time
The mapping works as follows:
- White (1) = most recent frame (e.g., frame 100)
- Black (0) = oldest frame in cache (e.g., frame 1)
- Gray values = frames in between
Creating the Slit Scan Effect
Setting Up the Network
- Add a Movie File In TOP with your video
- Add a Texture 3D TOP with cache size set to 100
- Add a Time Machine TOP
- For the Black Offset, create a reference to the Texture 3D’s cache size by dragging the parameter, then add a negative sign (e.g., -100)
Using a Ramp for Time Slicing
To create the slit scan effect:
- Add a Ramp TOP as the second input to the Time Machine
- On the Ramp’s Common page, set the resolution to 9 by 1 (9 horizontal slices)
- Set Viewer Smoothness to “Nearest Pixel” to see each step clearly
- On the Time Machine’s Common page, set Input Smoothness to “Nearest Pixel”
This creates visible slices where each vertical strip shows a different moment in time.
Creating Fluid Warping Movement
For a more dramatic slit scan effect with fluid movement:
- Use a video with people moving - webcam footage works great
- The tutorial demonstrates using the Web Browser component from the Palette (Tools
> Web Browser) to load reference video - Match the resolution: Set the Ramp’s X resolution to match the Texture 3D’s cache size by creating a reference
- Increase the cache size significantly (e.g., 250 or 450) for more slices
Smoothing the Effect
To remove the hard cuts between slices:
- Change Input Smoothness from “Nearest Pixel” back to “Interpolate Pixels”
- This creates a smooth, fluid time-warping effect instead of distinct bands
Key Parameters Summary
| Parameter | Location | Purpose |
|---|---|---|
| Cache Size | Texture 3D | Number of frames stored in history |
| Pre-fill | Texture 3D | Fill cache with initial frames |
| Black Offset | Time Machine | Defines how far back in time you can go |
| Input Smoothness | Time Machine (Common) | Controls interpolation between time slices |
| Viewer Smoothness | Ramp (Common) | Controls visual display of ramp steps |
Key Takeaways
- Texture 3D is essential - It stores the frame history that the Time Machine samples from
- Black Offset should be negative - Set it to the negative of your cache size for full range
- Use references - Link parameters like cache size to black offset and ramp resolution for consistency
- Ramp controls time mapping - The gradient determines which parts of the image show which moments in time
- Input Smoothness - Toggle between “Nearest Pixel” for distinct slices and “Interpolate Pixels” for smooth warping
- Higher cache sizes - More frames in cache means more dramatic time warping effects
- Moving subjects work best - Videos with people or objects in motion create the most interesting slit scan results
This technique creates the quintessential slit scan look - that fluid, warping, time-bending visual effect popular in music videos and experimental film.
本教程演示如何在TouchDesigner中使用Time Machine TOP创建狭缝扫描时间扭曲效果。狭缝扫描是一种经典的视觉效果,通过在图像的不同部分采样不同的时间点来创建流动、扭曲的图像。
理解Time Machine TOP
基本设置
开始使用Time Machine TOP:
- 添加一个Movie File In TOP并加载视频文件(教程使用”count.mov”)
- 添加一个Texture 3D TOP - 这是Time Machine的第一个必需输入
- 在Texture 3D上,开启**Pre-fill(预填充)**参数以用固定的图像集填充纹理
预填充纹理
预填充技术确保您的序列始终从相同的图像开始:
- 没有预填充时,每次点击pulse都会从不同的图像开始
- 要解决这个问题,将Movie File In TOP的**Play Mode(播放模式)**更改为”Specify Index(指定索引)”
- 现在点击预填充将始终从第一帧开始
Time Machine的工作原理
Remap TOP允许您从UV坐标选择像素,而Time Machine TOP允许您从W坐标选择像素 - 本质上是从缓存中的特定时间或历史记录中选择像素。
Time Machine需要第二个输入:
- 添加一个Constant TOP并将其连接到Time Machine
- 调整Color(颜色)参数值以在时间中滚动
- 从0(黑色)到1(白色)的值映射到缓存中的不同帧
调整缓存大小和黑色偏移
要访问更多时间帧:
- 增加Texture 3D上的Cache Size(缓存大小)(例如,增加到100)
- 记住在更改缓存大小后点击Pulse重新填充纹理
- 调整Time Machine上的**Black Offset(黑色偏移)**参数以定义时间偏移的边界
- 例如,将Black Offset设置为-100允许您回溯100步
映射方式如下:
- 白色(1) = 最新帧(例如,第100帧)
- 黑色(0) = 缓存中最旧的帧(例如,第1帧)
- 灰色值 = 中间的帧
创建狭缝扫描效果
设置网络
- 添加一个带有视频的Movie File In TOP
- 添加一个缓存大小设置为100的Texture 3D TOP
- 添加一个Time Machine TOP
- 对于Black Offset,通过拖动参数创建对Texture 3D缓存大小的引用,然后添加负号(例如,-100)
使用渐变进行时间切片
创建狭缝扫描效果:
- 添加一个Ramp TOP作为Time Machine的第二个输入
- 在Ramp的Common(通用)页面,将分辨率设置为9 x 1(9个水平切片)
- 将**Viewer Smoothness(查看器平滑度)**设置为”Nearest Pixel(最近像素)“以清楚地看到每个步骤
- 在Time Machine的Common页面,将**Input Smoothness(输入平滑度)**设置为”Nearest Pixel”
这会创建可见的切片,其中每个垂直条带显示不同的时间点。
创建流动的扭曲运动
要获得更具戏剧性的流动运动狭缝扫描效果:
- 使用有人物移动的视频 - 网络摄像头素材效果很好
- 教程演示使用调色板中的Web Browser组件(Tools
> Web Browser)加载参考视频 - 匹配分辨率:通过创建引用将Ramp的X分辨率设置为与Texture 3D的缓存大小匹配
- 显著增加缓存大小(例如,250或450)以获得更多切片
平滑效果
要消除切片之间的硬切:
- 将Input Smoothness从”Nearest Pixel”改回”Interpolate Pixels(插值像素)”
- 这会创建平滑、流动的时间扭曲效果,而不是明显的条带
关键参数总结
| 参数 | 位置 | 用途 |
|---|---|---|
| Cache Size(缓存大小) | Texture 3D | 存储在历史记录中的帧数 |
| Pre-fill(预填充) | Texture 3D | 用初始帧填充缓存 |
| Black Offset(黑色偏移) | Time Machine | 定义可以回溯多远 |
| Input Smoothness(输入平滑度) | Time Machine(Common) | 控制时间切片之间的插值 |
| Viewer Smoothness(查看器平滑度) | Ramp(Common) | 控制渐变步骤的视觉显示 |
关键要点
- Texture 3D是必需的 - 它存储Time Machine采样的帧历史
- Black Offset应为负值 - 将其设置为缓存大小的负值以获得完整范围
- 使用引用 - 将缓存大小等参数链接到黑色偏移和渐变分辨率以保持一致性
- Ramp控制时间映射 - 渐变决定图像的哪些部分显示哪些时间点
- Input Smoothness - 在”Nearest Pixel”(明显切片)和”Interpolate Pixels”(平滑扭曲)之间切换
- 更高的缓存大小 - 缓存中更多的帧意味着更戏剧性的时间扭曲效果
- 移动的主体效果最好 - 有人物或物体运动的视频会创建最有趣的狭缝扫描结果
这种技术创建了典型的狭缝扫描外观 - 那种在音乐视频和实验电影中流行的流动、扭曲、时间弯曲的视觉效果。