HandheldDrift
手持ちカメラのような小さな揺れを、ゆっくり加えます。
import { useMemo } from 'react'
import { useVideoConfig } from 'remotion'
import { SceneLayer, SceneStage, secondsToFrameRange } from 'framoo/core'
import { handheldDrift } from 'framoo/camera/effects'
export const HandheldDriftPreview = () => {
const { fps } = useVideoConfig()
const camera = useMemo(
() => ({
effects: [
handheldDrift({
...secondsToFrameRange(0, 4.87, fps),
intensity: 7,
rotation: 0.55,
frequencyHz: 1.15,
}),
],
}),
[fps],
)
return (
<SceneStage camera={camera}>
<SceneLayer followsCamera>
{null /* 背景画像など、カメラと一緒に動かすレイヤーを置く */}
</SceneLayer>
</SceneStage>
)
}API Reference
| Prop | Type | Default | Description |
|---|---|---|---|
from |
number |
— | 揺れを始めるフレーム。 |
durationInFrames |
number |
— | 揺れの長さ。前後の端で弱まる。 |
intensity |
number |
1.4 |
水平方向の移動量。ピクセル単位。 |
rotation |
number |
0.12 |
回転の揺れ幅。角度を度単位で指定。 |
frequencyHz |
number |
1.1 |
1秒あたりの揺れの周期数。0で動きを止める。 |