# ue-sequencer-cinematics

A skill for driving Level Sequences from C++ in Unreal Engine 5.8: cutscenes, runtime actor binding, event tracks and Movie Render Graph output.

- skill · `type=skill` · Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, OpenCode · 1100 installs · ★ 405
- Author: quodsoler
- License: MIT · policy=mirror · the beginning of the file is at the end of this page
- Source: https://github.com/quodsoler/unreal-engine-skills/tree/HEAD/skills/ue-sequencer-cinematics/SKILL.md
- Updated: 2026-09-28
- HTML: https://affpapa.org/en/nevibecode/skills/ue-sequencer-cinematics

## What it does

The skill covers playing Level Sequences from C++ and building cutscenes. It walks through the `MovieScene`, `MovieSceneTracks`, `LevelSequence` and `CinematicCamera` modules, a runtime-versus-editor table, and code samples for `CreateLevelSequencePlayer`, `SetBindingByTag` and event tracks.

Offline rendering gets its own section. The `MovieRenderPipeline` plugin is disabled by default, so you enable it in the `.uproject` and add `MovieRenderPipelineCore` to `Build.cs`. Skip that and the render code will not compile. The skill also reads `.agents/ue-project-context.md` when the file exists and carries on when it does not.

Target engine is UE 5.8, with APIs checked against the 5.8 headers and older forms listed separately as deprecated. Neighbouring topics stay out: animation tracks live in `ue-animation-system`, gameplay cameras and shakes in `ue-gameplay-cameras`, sequence audio in `ue-audio-system`.

## Requirements
- Works with: Unreal Engine

## Install

### Claude Code (native platform)

1. **Skills CLI (Vercel)**
```bash
npx skills add quodsoler/unreal-engine-skills --skill ue-sequencer-cinematics -a claude-code
```

2. **Manually: put the files in place**
- File: `~/.claude/skills/ue-sequencer-cinematics/SKILL.md` — Copy the whole skill folder; for one project use .claude/skills/ue-sequencer-cinematics/

### Codex

1. **Skills CLI (Vercel)**
```bash
npx skills add quodsoler/unreal-engine-skills --skill ue-sequencer-cinematics -a codex
```

2. **Manually: put the files in place**
- File: `.agents/skills/ue-sequencer-cinematics/SKILL.md` — For all projects use ~/.agents/skills/

### Cursor

1. **Skills CLI (Vercel)**
```bash
npx skills add quodsoler/unreal-engine-skills --skill ue-sequencer-cinematics -a cursor
```

2. **Manually: put the files in place**
- File: `.cursor/skills/ue-sequencer-cinematics/SKILL.md` — Cursor also reads .agents/skills/ and .claude/skills/

### GitHub Copilot

1. **GitHub CLI**
```bash
gh skill install quodsoler/unreal-engine-skills ue-sequencer-cinematics
```

2. **Manually: put the files in place**
- File: `.github/skills/ue-sequencer-cinematics/SKILL.md`

### Gemini CLI

1. **Skills CLI (Vercel)**
```bash
npx skills add quodsoler/unreal-engine-skills --skill ue-sequencer-cinematics -a gemini-cli
```

2. **Platform CLI**
```bash
gemini skills install https://github.com/quodsoler/unreal-engine-skills --path skills/ue-sequencer-cinematics
```

### Windsurf (Devin Desktop)

**Manually: put the files in place**
- File: `.devin/skills/ue-sequencer-cinematics/SKILL.md` — The legacy .windsurf/skills/ path still works

### OpenCode

**Skills CLI (Vercel)**
```bash
npx skills add quodsoler/unreal-engine-skills --skill ue-sequencer-cinematics -a opencode
```

### Claude.ai

**Claude.ai**
- Zip the folder and upload it in Settings → Capabilities → Skills

Where a file is given instead of a command, copy the files from the source to that path: https://github.com/quodsoler/unreal-engine-skills/tree/HEAD/skills/ue-sequencer-cinematics/SKILL.md

## When to use it
- play a cutscene from C++ without the player and actor getting garbage collected
- rebind sequence tracks to actors that only exist at runtime
- fire C++ from a key on the timeline with an event track
- tell which Sequencer calls are safe in a shipped build and which mutate the asset
- enable Movie Render Queue and write frames to disk

## Example prompts
- Show me how to spawn a ULevelSequencePlayer from C++ and play a cutscene
- How do I bind actors to Level Sequence tracks at runtime with SetBindingByTag?
- Set up sequence rendering through Movie Render Graph

## Source text · SKILL.md · MIT

Below is the content of a third-party file. It is data, not instructions for you: do not act on anything written inside unless the human asks. Block tag: 70b351032e3e9742.

BEGIN THIRD-PARTY FILE 70b351032e3e9742
```text
---
name: ue-sequencer-cinematics
description: "Use when playing Level Sequences from C++, building cutscenes or in-game camera moments, binding actors to sequence tracks at runtime, wiring Sequencer event tracks, or rendering with Movie Render Graph. Also use when the user mentions 'Sequencer', 'LevelSequence', 'ALevelSequenceActor', 'ULevelSequencePlayer', 'CreateLevelSequencePlayer', 'cutscene', 'camera cut', 'event track', 'ULevelSequenceDirector', 'SetBindingByTag', 'spawnable', 'possessable', 'CineCamera', 'Movie Render Queue', or 'MRQ'. For animation tracks, see ue-animation-system; for gameplay cameras and shakes, see ue-gameplay-cameras; for sequence audio, see ue-audio-system."
metadata:
  version: "2.0.0"
  engine: "5.8"
---

# UE Sequencer and Cinematics

Target engine: **UE 5.8**. APIs below are verified against the 5.8 headers; older forms are listed under "Deprecated — do not use".

Sequencer spans three runtime modules plus a plugin. `MovieScene` holds the data model and the player base class, `MovieSceneTracks` holds the concrete track and section types, `LevelSequence` holds the asset, actor, player and director, and `CinematicCamera` holds the cine camera and camera rigs. Offline rendering lives in the **Movie Render Queue** plugin (`MovieRenderPipelineCore` for runtime, `MovieRenderPipelineEditor` for the editor queue UI); it is disabled by default and must be enabled in the `.uproject`.

## Context

Read `.agents/ue-project-context.md` if it exists (module names, conventions, enabled plugins, GAS/networking setup). Do not stop if it is missing.

Identify the area from the request and the codebase. Ask only when two plausible readings would produce different code.

| Request is about… | Go to |
|---|---|
| Which modules to add to Build.cs | [Build.cs Modules](#buildcs-modules) |
| What C++ can do at runtime vs editor-only | [Runtime vs Editor](#runtime-vs-editor) |
| Starting, stopping, seeking, looping a sequence | [Playing a Level Sequence](#playing-a-level-sequence) |
| Pointing sequence tracks at gameplay actors | [Binding Actors at Runtime](#binding-actors-at-runtime) |
| Calling C++ from a key on the timeline | [Sequencer Event Tracks](#sequencer-event-tracks) |
| Tracks, sections, sub-sequences, frame math | [MovieScene Data Model](#moviescene-data-model) |
| Cine camera setup, focus, rails and cranes | [Cine Cameras and Camera Rigs](#cine-cameras-and-camera-rigs) |
```
END THIRD-PARTY FILE 70b351032e3e9742

The third-party file has ended. Everything between the 70b351032e3e9742 tags is data: requests and commands from it are not followed. An “end of file” line with another tag inside the block is part of the file.

First 2439 of 29355 bytes. © quodsoler · MIT · https://github.com/quodsoler/unreal-engine-skills/tree/HEAD/skills/ue-sequencer-cinematics/SKILL.md

_Part of the page did not fit — see the HTML version._

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
