Blender 그레이박스 영상으로 MiniMax H3의 카메라를 지시하면 무엇이 전달되나

카메라 움직임만 담은 Blender 프리비즈를 H3 Ref2VA의 참조 영상으로 넣고, 참조 영상을 뺀 대조군과 시드 3개로 비교했습니다. 타임코드는 프롬프트가, 프레이밍과 주시의 안정성은 참조 영상이 만들었고, 좌우 궤도는 전달되지 않았습니다.

Blender로 카메라 무브만 담은 회색 프리비즈 클립을 만들어 MiniMax H3 Ref2VA의 참조 영상으로 넣으면 카메라 연출을 지시할 수 있다는 기법이 소개됐습니다. 이를 직접 재현하고, 참조 영상을 뺀 대조군과 비교해 참조 영상이 실제로 무엇을 바꾸는지 나눠 봤습니다.

결론은 셋입니다. 지정한 시각에 클로즈업이 오는 것 같은 타이밍은 프롬프트의 타임코드가 만들었습니다. 프레이밍과 시선, 끝부분의 정지 같은 안정성은 참조 영상이 만들었습니다. 좌우로 도는 카메라 궤도는 전달되지 않았습니다.

필요한 것

새 노드는 필요 없습니다. 원래 기법은 ComfyUI의 기본 템플릿(MiniMaxH3ReferenceToVideo, comfy-core 0.37.2)을 그대로 썼고 커스텀 노드가 없었습니다. 샘플러 res_multistep, 스케줄러 simple, 프레임 수 규칙(17n+5)까지 일반 R2V 구성과 같습니다. 프리비즈 클립만 만들면 됩니다.

속도는 원래 글이 RTX 5070 Ti, 0.6MP, 20스텝에서 샘플링에만 17분 40초였습니다. RTX Pro 6000에서는 같은 20스텝이 1344x768 기준 203초였고, 아래 실험은 터보 8스텝(1024x768, 5초)으로 한 건에 약 100초였습니다.

프리비즈 만들기

Blender 5.1.2를 헤드리스로 썼습니다.

  • 출력은 1024x768, 24fps, 124프레임으로 생성 길이(17n+5)와 정확히 맞춥니다. 참조 영상은 목표 길이에 맞춰 잘리므로, 길이가 어긋나면 연출 타이밍이 밀립니다.
  • 회색 프리미티브 마네킹, 체커보드 바닥, 회색 배경만 둡니다. 머리에 TRACK_TO 제약을 걸어 렌즈를 따라 보게 하고 몸은 고정합니다.
  • 키프레임은 (프레임, 방위각, 고도, 거리, 주시 높이) 표로 정의하고 BEZIER/EASE_IN_OUT으로 잇습니다. 빠르게 움직이고 짧게 멈추는 리듬이 핵심이고, 마지막 키를 첫 키와 같게 두면 루프가 닫힙니다.
  • Blender 5.x에서 API가 바뀐 곳이 두 군데 있습니다. action.fcurves가 없어져 action.layers[].strips[].channelbags[].fcurves로 접근해야 하고, image_settings.file_format='FFMPEG'도 없어져 media_type='VIDEO'를 먼저 설정해야 합니다.

프롬프트

프롬프트는 네 덩어리(참조의 역할과 우선순위, 첫 프레임, 카메라 시퀀스, 움직임과 마무리)로 썼고, 두 가지가 결정적이었습니다.

첫째, 참조 영상의 역할을 좁히는 부정 지시입니다. "<Video 1> defines CAMERA MOVEMENT AND TIMING ONLY. Do not copy its mannequin, checkerboard floor, grey background or lighting." 이렇게 쓰자 결과에 마네킹이나 체커보드가 한 번도 나오지 않았습니다.

둘째, 타임코드로 쓴 연출입니다. "2.9~3.0초 부감 35°", "3.7~4.0초 유일한 클로즈업", "5.0초에 오프닝과 정합" 같은 식입니다.

대조군 비교

같은 시드와 같은 프롬프트에서 <Video 1> 문단만 뺀 대조군을 만들었습니다. 시드는 3개(4410992, 5520011, 8830077), 터보 8스텝, 1024x768, 5초입니다. 움직임은 프레임을 64x48 흑백으로 줄인 뒤 이웃 프레임 간 평균 절대 차이로 쟀습니다.

참조 영상 사용 대조군(프롬프트만) 프리비즈 원본
프리비즈 움직임 곡선과의 상관 (중앙값) +0.561 +0.496
끝부분 정지 구간(4.2~5.2초) 움직임 (중앙값) 3.19 7.06 1.02

움직임 곡선의 상관은 시드 3개 모두 참조 영상 쪽이 높았지만 차이는 0.06으로 작았습니다. 반면 끝부분 정지 구간은 시드 3개 모두 참조 영상 쪽이 두 배 넘게 안정적이었습니다.

눈으로 본 차이는 더 컸습니다.

  • 프레이밍: 참조 영상 쪽은 허리 위 구도를 유지했습니다. 대조군은 시드 3개 모두 전신이나 원경으로 넓어졌습니다.
  • 시선: 대조군에서는 중간에 인물이 뒤돌아서는 컷이 나왔고, 참조 영상 쪽은 정면을 보고 있었습니다.
  • 클로즈업: 양쪽 모두 지정한 시각에 왔습니다. 이 타이밍은 프롬프트 타임코드가 만든 것입니다. 다만 대조군은 크기가 들쭉날쭉했고, 눈만 잡힐 만큼 과하게 들어가는 컷도 있었습니다.

한계: 좌우 궤도는 전달되지 않았다

프리비즈는 방위각 ±42°를 돌았는데, 결과는 시드 3개 모두 대체로 정면을 유지했습니다. 부감이나 로우 같은 높이 변화, 밀고 당기는 움직임은 약하게나마 따라왔지만 좌우로 도는 폭은 사라졌습니다. 원래 글의 댓글에도 부드러운 이동은 샷으로 읽지만 빠른 시차는 뭉갠다는 이야기가 있었습니다. 정확한 카메라 궤적이 필요한 작업에는 아직 쓰기 어렵습니다.

카메라 파라미터를 다루는 별도 도구(Camera H3)도 살펴봤는데, 이 도구는 카메라 값을 텍스트 프롬프트로 바꿔 주는 것이고 기하학적으로 카메라를 제어하지는 않습니다. 프리비즈 쪽이 더 직접적인 수단이었습니다.