Version 2.11.1 · Blender 4.2 and newer · Cycles and EEVEE
Getting started
TimeShift renders true sub-frame slow motion in Blender without rescaling your timeline. Instead of stretching keyframes, it renders the in-between times Blender normally skips, such as frame 24.25, 24.5 and 24.75, and writes them out as one continuous image sequence.

Sub-frame motion is exact for anything Blender evaluates as a function of time: keyframes, drivers, Geometry Nodes and shaders. Physics caches (rigid body, cloth, soft body, particles, hair, dynamic paint) are interpolated from their bake, so bake them first. Mantaflow fluid, smoke and fire hold whole frames.
Getting started
TimeShift needs Blender 4.2 or newer and installs as a Blender extension.
timeshift-<version>-extension.zip and keep it zipped.
Blender shows one permission during install: TimeShift writes rendered frames to the output folder you choose. To update, install the new zip the same way; it replaces the old version. Restart Blender if a panel does not refresh.
Prefer the classic route? Preferences > Add-ons > dropdown > Install from Disk… installs it as a legacy add-on.
Once enabled, TimeShift appears in three places:
| Where | What it holds |
|---|---|
| Properties > Output > TimeShift | The full panel: range, chunks, simulations, outputs, options, preview and render. Collapsed by default. |
| 3D Viewport > Sidebar (N) > TimeShift | A compact panel: chunks, range, preview and render. |
| Timeline / Dope Sheet > Sidebar (N) > TimeShift | The same compact panel, plus drag-to-create chunks. |
Getting started
A first slow-motion render takes six steps, all in Properties > Output > TimeShift.


Import the finished sequence into your editor at the scene’s frame rate: slowed moments now play back slower, everything else at normal speed.
Using TimeShift
TimeShift has one full panel and two compact ones. All three edit the same settings, which are stored per scene in your .blend.
Properties > Output > TimeShift is the full panel. From top to bottom:

TimeShift Chunks sits in the TimeShift tab of the 3D Viewport sidebar and the Timeline / Dope Sheet sidebar. It holds the Timeline Overlay toggle, Chunk From Preview Range, the chunk list, the render range, a one-row preview (Range, Shading, Preview) and the footer. The Timeline version adds New Chunk (drag); the 3D Viewport version reminds you that U over the Timeline does the same. Output formats, options, baking and the full preview settings live only in the full panel.

While a render runs, the settings grey out because they are frozen at the start. The footer then shows progress, last and average frame time, elapsed time and an ETA, plus Cancel TimeShift Render.

Using TimeShift
A chunk is a range of scene frames with its own speed. Everything outside your chunks renders at normal speed, one output frame per scene frame.

| Field | What it does | Default |
|---|---|---|
| Enabled (checkbox) | Includes the chunk in the render | On |
| Start / End | First and last scene frame of the chunk | 1 / 10 |
| Speed | 0.5 = half speed (2x the frames), 0.1 = 10x slow motion, 2.0 = 2x fast forward. Allowed range 0.001 to 10. | 0.5 |
| Ease In | Scene frames spent ramping from normal speed into the chunk’s speed; 0 = hard cut | 5 |
| Ease Out | Scene frames spent ramping back to normal speed; 0 = hard cut | 5 |
Ramps follow a smooth S-curve, and where the two ramps overlap, the one closer to normal speed wins. A chunk shorter than Ease In plus Ease Out therefore never reaches its full speed, and TimeShift warns you.
Using TimeShift
With Timeline Overlay on, every chunk is drawn on the Timeline, and you can reshape it by dragging instead of typing numbers.

| Grab | Drag to | Notes |
|---|---|---|
| Left or right edge | Move the chunk’s Start or End | Snaps to whole frames; works in every Dope Sheet mode |
| White grip on the speed line | Change the speed: up is slower | 0.001x to 10x, three decimals |
| Light-blue knees at the plateau ends | Change Ease In / Ease Out | Grabbable even at ease 0 |
Release applies the change; Esc or right-click while dragging cancels it and restores the old values. The speed grip and knees work in the Timeline view; in other Dope Sheet modes only the edges are draggable. A click that misses every chunk passes through, so scrubbing still works.
Shortcuts (hover the Timeline or Dope Sheet):

Rebind them under Preferences > Keymap > Dopesheet Generic.
Using TimeShift
Bake your physics before a TimeShift render: a baked cache interpolates smoothly between frames, while an unbaked one jumps from whole frame to whole frame.
Bake All Dynamics (Simulations box) bakes rigid body, cloth, soft body, particles, hair dynamics and dynamic paint in one click. It needs an open 3D Viewport. Hair-dynamics caches are baked one by one, because Blender’s own Bake All skips them. When you start a render, TimeShift also warns you if the scene contains simulations.

| Motion | At sub-frames | Bake needed |
|---|---|---|
| Keyframes, NLA, drivers | Exact: evaluated at the true sub-frame | No |
| Procedural Geometry Nodes, shader and texture animation | Exact, when driven by the frame | No |
| Rigid body, cloth, soft body, particles, dynamic paint | Interpolated from the baked cache | Yes |
| Hair dynamics | Interpolated from the baked cache | Yes; Bake All Dynamics covers it |
| Mantaflow liquid, smoke and fire | Holds whole frames, so it steps | Baking does not help |
| Imported OpenVDB volume sequences | Holds whole frames | Not applicable |
Two habits keep caches clean: make sure each cache’s frame range covers your whole render range, and bake again after you change a simulation.
Using TimeShift
Preview TimeShift plays your retimed motion in seconds by rendering through the viewport instead of the full engine. Use it to judge speeds and ramps before committing to a long render. Press Esc to stop it.

| Setting | Options | Default |
|---|---|---|
| Range | Chunks + Handles (your chunks plus normal-speed padding), Whole Range, Custom start/end | Chunks + Handles |
| Handles | Normal-speed frames added before and after the chunks | 24 |
| Resolution % | 10 to 100 percent of the final size | 50 |
| Shading | Material (EEVEE material preview), Solid (fastest), Rendered (scene engine, slower), Viewport (leave as is) | Material |
| Output | Play in Blender, Save MP4, Save Frames | Play in Blender |
The preview needs an open Blender window, a 3D Viewport and a scene camera. It renders through the first 3D Viewport it finds, switching it to camera view with overlays hidden, then restores your shading, view and overlays afterwards. Compositor effects such as glare are part of the full render, so treat the preview as a timing and look check.
Where preview files go: %TEMP%\timeshift_preview\<scene name>\, as preview_00000.png and up, plus preview.mp4 when you choose Save MP4. Save MP4 and Save Frames open that folder when done. The folder is wiped at the start of every preview and is separate from your output folder, so copy anything you want to keep. The MP4 uses Blender’s built-in encoder (H.264), so no external tools are needed.
Using TimeShift
Render TimeShift renders every output frame as a still, then restores your settings. Blender stays responsive while it runs; press Esc or Cancel TimeShift Render to stop after the frame in progress.
Everything lands in the Output Folder (default //timeshift/, next to your saved .blend; an unsaved file needs an absolute folder):
| File | Contents | Turned on by |
|---|---|---|
beauty/beauty_00000.png and up |
The final image, exactly as a normal render produces it, including your view transform and compositor | Beauty |
passes/passes_00000.exr and up |
One multilayer EXR per frame with the chosen passes, linear | Passes (multilayer EXR) |
frame_map.json |
The scene time and speed behind every output frame, written before the first frame | Frame Map (JSON) |
Files are numbered by output frame from 00000, not by scene frame. Beauty and Passes are both on by default.

Beauty format: PNG, JPEG (no alpha, Quality 90 by default), single-layer OpenEXR or TIFF, at 8, 16 or 32-bit where the format allows. Or tick Use Scene Output Settings to use your scene’s own format, depth, colour mode and compression.
EXR passes: Diffuse Color, Shadow and Ambient Occlusion are on by default; Depth (Z), Normal and Mist are off. EXR Depth is Float (Half), enough for EEVEE; choose Float (Full) for precise Z and Normal data with Cycles.
| Option | Default | What it does |
|---|---|---|
| Transparent Film | On | Renders the background transparent; turn it off to keep your world |
| Scale Motion Blur Shutter | On | Multiplies the shutter by the local speed so blur matches the slowed motion (needs Motion Blur on) |
| Bypass Sequencer | On | Ignores Video Sequencer strips, which only know whole frames; restored afterwards |
| Frame Map (JSON) | On | Writes frame_map.json |
| Overwrite Existing | On | Turn off to skip frames already on disk and resume an interrupted render |
| Timeline Overlay | On | Draws chunks and the speed graph on the Timeline |
With Cycles, Persistent Data is switched on for the run to speed it up, then restored. Rendering needs an open Blender window; command-line rendering (blender -b) is not supported.
Help
Help
Most problems show up as a message in the panel or when you press Render; each one names its fix.

| Message or symptom | Fix |
|---|---|
| “Save the .blend first or choose an absolute output folder” | The default //timeshift/ is relative to the .blend. Save the file, or pick an absolute folder. |
| “The scene has no camera.” | Add a camera, or bind one to a timeline marker. |
| “TimeShift render needs an open Blender window (not background mode).” | Render from the Blender interface; command-line rendering is not supported. |
| Physics jumps between whole frames | Click Bake All Dynamics, then render again. Mantaflow fluid holds whole frames regardless. |
| “Output folder holds frames from a different range/chunk setup.” | Turn on Overwrite Existing, or choose another folder. |
| Old extra frames after a shorter re-render | TimeShift never deletes files. Clear the folder or use a new one. |
| “Chunk … is shorter than its ease-in + ease-out” | Shorten the eases or lengthen the chunk, or it never reaches full speed. |
| “Chunks … overlap; the earlier one wins per frame.” | Move the chunks apart. |
| “Setup produces 500000+ output frames” | Raise the speed or shorten the chunk. |
| “Open a 3D Viewport to preview” or “Needs an open 3D Viewport to bake” | Open any 3D Viewport; the preview and bake both need one. |
| The background is transparent | Transparent Film is on by default; turn it off to render your world. |
| Video Sequencer strips repeat whole frames | Keep Bypass Sequencer on. |
| Burned-in metadata appears in the images | Turn off Metadata > Burn Into Image in the Output properties. |
| Compositor File Output nodes keep overwriting one file | Disable those nodes and use TimeShift’s own outputs. |
| “Time Remapping is active” | Its ratio multiplies TimeShift’s speeds. Reset Output > Format > Time Remapping unless you want both. |
| Black AO pass in EEVEE | Enable Raytracing in EEVEE’s render settings. |
Help
TimeShift’s limits come from what Blender can evaluate between frames, plus a few deliberate choices.