feat(film): pillar 1 — storms into pipeline
This commit is contained in:
@@ -1,5 +1,36 @@
|
||||
import { AbsoluteFill, Sequence } from "remotion";
|
||||
import { PillarTitle } from "../components/PillarTitle";
|
||||
import { ScreenFrame } from "../components/ScreenFrame";
|
||||
import { KenBurns } from "../components/KenBurns";
|
||||
import { Cursor } from "../components/Cursor";
|
||||
import { Caption } from "../components/Caption";
|
||||
import { DURATIONS } from "../timing";
|
||||
export const Pillar1Storms: React.FC = () => (
|
||||
<PillarTitle index="①" title="Pillar 1" subtitle="(stub)" startFrame={0} durationInFrames={DURATIONS.pillar1} />
|
||||
|
||||
const D = DURATIONS.pillar1;
|
||||
const TITLE = 75; // 2.5s
|
||||
|
||||
export const Pillar1Storms: React.FC = () => {
|
||||
const afterTitle = D - TITLE;
|
||||
const half = Math.floor(afterTitle / 2);
|
||||
return (
|
||||
<AbsoluteFill>
|
||||
<Sequence durationInFrames={TITLE}>
|
||||
<PillarTitle index="①" title="Turn storms into pipeline" subtitle="See the storm before your competition" startFrame={0} durationInFrames={TITLE} />
|
||||
</Sequence>
|
||||
|
||||
{/* Beat A: Storm Intel — zones light up; cursor assigns a zone */}
|
||||
<Sequence from={TITLE} durationInFrames={half}>
|
||||
<KenBurns durationInFrames={half}><ScreenFrame captureId="storm-intel" /></KenBurns>
|
||||
<Cursor from={{ x: 1400, y: 300 }} to={{ x: 1480, y: 520 }} moveStartFrame={20} clickAtFrame={44} />
|
||||
<Caption text="Storm Intel maps the damage the moment it lands." startFrame={10} durationInFrames={half - 20} />
|
||||
</Sequence>
|
||||
|
||||
{/* Beat B: Lead Verification — verify a lead */}
|
||||
<Sequence from={TITLE + half} durationInFrames={afterTitle - half}>
|
||||
<KenBurns durationInFrames={afterTitle - half}><ScreenFrame captureId="lead-verification" /></KenBurns>
|
||||
<Cursor from={{ x: 900, y: 400 }} to={{ x: 1500, y: 500 }} moveStartFrame={18} clickAtFrame={40} />
|
||||
<Caption text="Every lead is verified before it reaches your pipeline." startFrame={10} durationInFrames={afterTitle - half - 20} />
|
||||
</Sequence>
|
||||
</AbsoluteFill>
|
||||
);
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user