スローズームカメラアニメーション
カメラが広角のエスタブリッシングショットから、ヒーロー的なディテール(ロゴ、テクスチャ、特徴)のタイトなクローズアップへとゆっくりと押し込まれます。焦点距離のシフトによる微妙なドリーズーム効果も含まれ、シネマティックな圧縮感を生み出します。
使用するタイミング
- 「リビール」や「ヒーローショット」をユーザーが望んでいる場合
- 「ズームイン」「押し込み」「ロゴのクローズアップ」「シネマティックリビール」とユーザーが言った場合
- プロダクト上の特定のディテールや特徴を強調したい場合
前提条件
- Blender MCP: 接続済み
- 3Dモデル: すでにBlenderシーンにインポート済み
- 出力フォルダ:
~/Desktop/Blender Videos/ - ffmpeg: インストール済み
パラメータ
| パラメータ | デフォルト値 | 説明 |
|---|---|---|
duration | 5 | 動画の長さ(秒) |
fps | 24 | フレームレート(フレーム/秒) |
start_distance | 4.0 | 開始時のカメラ距離 |
end_distance | 1.8 | 終了時のカメラ距離(クローズアップ) |
start_height | 3.0 | 開始時のカメラ高さ |
end_height | 1.2 | 終了時のカメラ高さ |
start_lens | 35 | 開始時の焦点距離(広角) |
end_lens | 65 | 終了時の焦点距離(望遠) |
focus_point | (0,0,0.1) | ズームのターゲット位置(例:ロゴの中心) |
transparent_bg | true | 透過背景 |
フロー
ステップ 1: フォーカスポイントの特定
ユーザーにどのディテールにズームインするかを尋ねるか、デフォルトでオブジェクトの中心を使用します。不明な場合はAskUserQuestionを使用します。
ステップ 2: カメラのセットアップ
import bpy, math
# フォーカスターゲット
bpy.ops.object.empty_add(type='PLAIN_AXES', location=FOCUS_POINT)
tgt = bpy.context.active_object
tgt.name = 'ZoomTarget'
# カメラ
bpy.ops.object.camera_add(location=(START_X, -START_DISTANCE, START_HEIGHT))
cam = bpy.context.active_object
cam.name = 'SlowZoomCam'
cam.data.lens = START_LENS
track = cam.constraints.new(type='TRACK_TO')
track.target = tgt
track.track_axis = 'TRACK_NEGATIVE_Z'
track.up_axis = 'UP_Y'
bpy.context.scene.camera = cam
ステップ 3: 押し込みアニメーションの設定
import bpy
TOTAL_FRAMES = DURATION * FPS
scene = bpy.context.scene
scene.frame_start = 1
scene.frame_end = TOTAL_FRAMES
scene.render.fps = FPS
# 開始位置(広角)
cam.location = (1.5, -START_DISTANCE, START_HEIGHT)
cam.keyframe_insert(data_path='location', frame=1)
cam.data.lens = START_LENS
cam.data.keyframe_insert(data_path='lens', frame=1)
# 終了位置(望遠)
cam.location = (0.3, -END_DISTANCE, END_HEIGHT)
cam.keyframe_insert(data_path='location', frame=TOTAL_FRAMES)
cam.data.lens = END_LENS
cam.data.keyframe_insert(data_path='lens', frame=TOTAL_FRAMES)
# デフォルトのBEZIER補間を維持し、スムーズなイージングを実現
ステップ 4: ライティング + レンダリング
ターンテーブルスキルと同じゴールデンアワーのライティングセットアップを使用します。CyclesでPNGシーケンスとしてレンダリングし、ffmpegでProRes 4444にエンコードします。
ffmpeg -y -framerate 24 \
-i "~/Desktop/Blender Videos/slowzoom_frames/%04d.png" \
-c:v prores_ks -profile:v 4444 -pix_fmt yuva444p10le \
"~/Desktop/Blender Videos/slow_zoom.mov"
ヒント
- 焦点距離のシフト(35mm→65mm)により、微妙なドリーズーム/ヒッチコック効果が生まれます
- BEZIER補間はスムーズなイージングイン/アウトを実現します — このアニメーションにはLINEARを使用しないでください
- 開始位置をX方向に少しオフセット(例:1.5)することで、よりシネマティックな斜めアプローチが可能になります