Communitygithub.com

kevinbadi/blender-skills

제품의 주요 디테일을 향한 영화 같은 슬로우 푸시인 줌. 리빌 효과를 만듭니다.

blender-skills란 무엇인가요?

이 스킬은 Blender MCP를 사용하여 제품의 주요 디테일(로고, 텍스처, 기능)을 향해 카메라가 천천히 다가오는 영화 같은 슬로우 줌 애니메이션을 생성합니다. 사용자가 '리빌', '히어로 샷', '줌 인', '클로즈업'과 같은 요청을 할 때 트리거되며, focal length 변경을 통해 도리 줌/히치콕 효과를 구현합니다. Claude Code, Cursor, Codex 등 AI 에이전트가 Blender MCP와 통신하여 3D 장면에 카메라를 설정하고, 시작 및 종료 위치, 렌즈 초점 거리, 지속 시간, FPS 등을 파라미터로 제어할 수 있습니다. 최종 출력은 Cycles 엔진으로 렌더링된 PNG 시퀀스를 ffmpeg로 ProRes 4444 동영상으로 인코딩하며, 투명 배경을 지원하여 후반 작업에 유용합니다.

지원 대상~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/kevinbadi/blender-skills/tree/HEAD/slow-zoom

즐겨 사용하는 AI에게 물어보기

이 에이전트 스킬이 미리 로드된 새 채팅을 엽니다.

문서

슬로우 줌 카메라 애니메이션

카메라가 와이드 셋업 샷에서 주요 디테일(로고, 텍스처, 기능)의 타이트 클로즈업으로 천천히 다가옵니다. 영화 같은 압축감을 위한 미묘한 도리 줌(초점 거리 변경)을 포함합니다.

사용 시기

  • 사용자가 '리빌' 또는 '히어로 샷'을 원할 때
  • 사용자가 '줌 인', '푸시 인', '로고 위로 클로즈업', '영화 같은 리빌'이라고 말할 때
  • 제품의 특정 디테일이나 기능을 강조하고 싶을 때

전제 조건

  • Blender MCP: 연결됨
  • 3D 모델: Blender 장면에 이미 임포트됨
  • 출력 폴더: ~/Desktop/Blender Videos/
  • ffmpeg: 설치됨

파라미터

파라미터기본값설명
duration5동영상 길이(초)
fps24초당 프레임 수
start_distance4.0시작 카메라 거리
end_distance1.8종료 카메라 거리(클로즈업)
start_height3.0시작 카메라 높이
end_height1.2종료 카메라 높이
start_lens35시작 초점 거리(와이드)
end_lens65종료 초점 거리(타이트)
focus_point(0,0,0.1)확대할 지점(예: 로고 중심)
transparent_bgtrue투명 배경 사용

흐름

단계 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)

# 부드러운 ease in/out을 위해 기본 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 보간은 부드러운 ease in/out을 제공합니다 — 이 애니메이션에는 LINEAR를 사용하지 마십시오
  • 시작 위치를 X축으로 약간 오프셋(예: 1.5)하면 더 영화 같은 대각선 접근이 가능합니다

관련 스킬