Skip to main content

dissolve()v4.0.465

A presentation that burns through the outgoing scene with a glowing edge, revealing the incoming scene where the burn has progressed past each pixel's luminance threshold.

warning

This presentation is built with HTML-in-canvas and requires Google Chrome with chrome://flags/#canvas-draw-element enabled. It does not work in Firefox or Safari.

Example

DissolveTransition.tsx
import {linearTiming, TransitionSeries} from '@remotion/transitions'; import {dissolve} from '@remotion/transitions/dissolve'; const BasicTransition = () => { return ( <TransitionSeries> <TransitionSeries.Sequence durationInFrames={40}> <Letter color="#0b84f3">A</Letter> </TransitionSeries.Sequence> <TransitionSeries.Transition presentation={dissolve({})} timing={linearTiming({durationInFrames: 30})} /> <TransitionSeries.Sequence durationInFrames={60}> <Letter color="pink">B</Letter> </TransitionSeries.Sequence> </TransitionSeries> ); };

API

Accepts an object with the following options:

lineWidth?

The width of the glowing burn edge in luminance units. Larger values produce a wider transition region.

Defaults to 0.1.

spreadColor?

The color of the outer, cooler edge of the burn as a #rrggbb hex string.

Defaults to '#ff0000' (red).

hotColor?

The color of the inner, hotter core of the burn as a #rrggbb hex string.

Defaults to '#e6e633' (yellow).

pow?

Exponent applied to the burn color to bias it towards bright highlights. Higher values darken the cooler areas while keeping the hot core bright.

Defaults to 5.0.

intensity?

Multiplier applied to the burn color after the power curve. Use values greater than 1 to make the edge glow more.

Defaults to 1.0.

Compatibility

BrowsersServersEnvironments
Chrome
Firefox
Safari
Node.js
Bun
Serverless Functions

For Preview, Chrome with the chrome://flags/#canvas-draw-element flag enabled is required.

Credits

The fragment shader is adapted from the dissolve GL Transition by hjm1fb, licensed under MIT.

See also