블렌더를 코드로만 다뤄 본 첫날 — 쓰러지는 블록, 쏟아지는 금화, 춤추는 큐브 3,955개
3D 프로그램 블렌더를 맥에 설치하고, 화면을 한 번도 열지 않은 채 파이썬 코드만으로 3D 영상 세 편을 만들어 본 기록입니다. 물리로 금화를 쌓다가 여섯 번 실패한 이야기도 담았습니다.
이 글을 세 줄로
- 3D 프로그램 블렌더는 화면 없이 파이썬 코드만으로도 장면을 만들고 렌더링할 수 있어서, Claude Code가 코드를 쓰고 맥북이 렌더링하는 방식으로 3D 영상 세 편을 만들었습니다.
- 첫 견본(쓰러지는 블록)은 «해보자»는 말에서 10분 만에 나왔고, 금화 쇼케이스는 물리 계산에서 금화가 튕겨 나가는 문제를 여섯 번 고친 끝에 완성했습니다.
- «코인 주제에 묶여 형편없다»는 지적을 받고 주제를 버린 세 번째 영상에서는, 큐브 3,955개를 수식으로 한꺼번에 움직이는 것이 «블렌더 + 코드»의 가장 큰 강점이라는 것을 확인했습니다.
이 글에 나오는 말
- 블렌더: 무료 3D 프로그램입니다. 보통은 마우스로 모양을 만들지만, 파이썬 코드로도 모든 것을 할 수 있습니다.
- 렌더링: 3D 장면을 사진처럼 한 장씩 그려 내는 일입니다. 빛 · 그림자 · 반사를 계산하기 때문에 시간이 많이 걸립니다.
- 물리 계산: 물체에 무게와 부딪힘을 주고 블렌더가 «떨어지고 튕기는 모습»을 직접 계산하게 하는 기능입니다. 손으로 움직임을 정하지 않아도 자연스럽게 쓰러지고 쌓입니다.
- EEVEE: 블렌더의 빠른 렌더링 방식입니다. 게임처럼 빠르게 그려서 짧은 영상에 알맞습니다.
처음 요청
전날 본 유튜브 영상에서 블렌더 이야기가 나왔고, 거기서 시작했습니다.
블렌더 이야기도 있었는데.. 블렌더를 설치하는 것은 어때? 너가 블렌더에게 명령을 내려 3D를 만든 후 영상에 추가할 수 있어?
Claude Code는 블렌더가 화면 없이 명령(파이썬 코드)만으로 장면을 만들고 렌더링할 수 있어서, 지금처럼 «코드를 쓰고 맥에 맡기는» 방식과 잘 맞는다고 답했습니다. «해보자»는 답을 받고 바로 맥북에 블렌더 5.2.3을 설치했습니다(설치 1분).
1편 — 쓰러지는 블록 (5초 견본)
막대 7개가 차례로 솟고, 가장 높은 빨간 막대의 위쪽 블록들이 앞으로 기울다가 손을 놓듯 풀려 실제 물리대로 쓰러지는 장면입니다. 처음 렌더링(150장)은 2분 15초가 걸렸고, 낱장을 보고 세 가지를 고쳤습니다.
| 문제 | 고친 방법 |
|---|---|
| 바닥이 하얗게 날아가고 위쪽에 바닥 끝 띠가 보임 | 해 밝기 3.2 → 2.0, 하늘 0.9 → 0.55, 카메라를 내려다보게 해서 바닥 끝을 화면 밖으로 |
| 옆에서 막대로 밀었더니 블록이 날아가 버림 | 미는 대신 «앞으로 기울였다가 놓기»로 바꿈 |
| 기울일 때 아래 블록을 파고들어 튕김 | 기우는 축을 블록 가운데가 아니라 앞 모서리로 |
2편 — 유리관에 쏟아지는 금화 (11.7초)
다음 요청은 이랬습니다.
좋아. 다시 블렌더로 만든 영상에 놀랄 수 있도록 너의 능력을 극대화해서 짧게 영상을 제작해봐.
블렌더로 할 수 있는 것을 한 장면에 모으려고, 실제 물리로 쌓이는 금화 · 유리 · 금속 반사 · 얕은 초점 · 움직임 흐림을 모두 넣었습니다. 금화 소리도 따로 깔지 않고, 물리 계산에서 금화가 실제로 부딪힌 순간 70곳을 뽑아 그 순간마다 «짤랑» 소리를 넣었습니다.
금화를 차례로 떨어뜨리기까지 여섯 번의 실패
물리 계산에서는 금화를 한꺼번에 떨어뜨리면 서로 엉켜 튕겨 나가기 때문에, 금화마다 «대기하다가 정해진 순간에 놓기»를 해야 했습니다. 그런데 이 «대기 자리»를 어디에 두느냐에서 계속 막혔습니다.
| 시도 | 일어난 일 |
|---|---|
| 땅 밑에 숨겨 두었다가 위로 옮김 | 옮기는 길에 있는 금화를 쳐서 날려 버림 |
| 물리를 꺼 둔 채 대기 | 꺼진 금화가 보이지 않는 벽처럼 다른 금화를 막음 |
| 떨어질 자리로 순간 이동한 뒤 바로 놓기 | 순간 이동한 거리 전체가 «속도»로 넘어가 금화가 총알처럼 날아감 |
| 한 자리에 너무 자주 놓기 | 앞 금화와 겹쳐서 튕김 |
| 관 여러 개를 위아래 칸으로 대기 | 위 칸 금화가 아래 칸 대기 금화 위에 얹힘 |
| 배경판 뒤, 같은 높이에서 대기 → 놓기 2프레임 전에 12cm 위로 → 1프레임 전에 떨어질 자리로 → 놓기 | 튕겨 나간 금화 0개 |
마지막 방법이 통한 이유는, 블렌더가 «놓기 직전 마지막 한 프레임의 움직임»만 속도로 넘기기 때문입니다. 즉, 바로 위 12cm에서 한 칸만 내려오게 하면 금화가 거의 멈춘 채로 놓입니다. 다섯 관에 쌓인 높이는 2.1 → 2.7 → 2.4 → 3.4 → 4.0으로, 그래프처럼 들쭉날쭉 올라갔습니다.
유리는 블렌더의 빠른 렌더링(EEVEE)에서 굴절을 켜면 금속처럼 보여서, 투명하게 두고 가장자리만 반사하게 섞는 방법으로 바꿨습니다.
렌더링이 오래 걸린 이유와 속도 비교
1280×720으로 350장을 그리는 데 맥북에어 M1에서 35분(한 장 약 5.5초)이 걸렸습니다. «뭐가 이리 오래 걸리지?»라는 질문을 받고 같은 장면을 이 PC(그래픽 카드 RX 580)에서도 재 봤더니, 한 장에 PC 2.3초 · 맥 5.3초로 블렌더 렌더링만큼은 PC가 2.3배 빨랐습니다. 물리 계산은 52초 · 48초로 비슷했습니다. 다만 다음 날 재질이 수백 개인 장면(게임 섬)에서는 PC가 40분이 지나도 첫 장을 못 그려서, 재질이 적은 장면만 PC가 빠르다는 것도 알게 됐습니다.
3편 — 주제를 버리고 큐브 3,955개 (10초 미리보기)
금화 영상을 본 뒤에는 이런 지적을 받았습니다.
다시 preview로 만들되. 기존 내가 작업하던 동영상 주제를 무시하고, blend와 클로드의 능력을 극대화한 동영상을 제작해봐. 자꾸 코인에 종속되어 제작하다보니 형편없는 것 같아.
흰 도자기 큐브 3,955개가 물결치는 바닥 → 회오리 기둥 → 빨간 띠가 흐르는 매듭 → CLAUDE 글자로 이어지는 장면입니다. 큐브 수는 «CLAUDE 글자 속을 채우는 칸 수»로 정했고, 모든 단계에서 큐브마다 같은 번호를 써서 한 단계에서 다음 단계로 자연스럽게 옮겨 가게 했습니다. 키프레임도 물리도 쓰지 않고 파이썬 계산(numpy)으로 매 프레임 큐브 자리를 한 번에 써 넣었기 때문에, 960×540 미리보기 300장이 5분 만에 끝났습니다.
이 실험에서 «블렌더를 코드로 다룰 때의 강점은 사람이 마우스로는 못 할 만큼 많은 것을 수식으로 한꺼번에 움직이는 데 있다»는 것을 확인했고, 그 뒤 능력을 보여 주는 쇼케이스는 채널 주제와 묶지 않는 것을 기본으로 삼았습니다.
블렌더를 코드로 다룰 때 알게 된 것
- 화면 없이 렌더링할 때 엔진 이름은
BLENDER_EEVEE입니다. - 색 변환은
Standard로 둡니다. 기본값(AgX)은 색이 바랜 것처럼 나옵니다. - 움직임은 프레임마다 직접 계산해서 넣는 편이 결과를 예측하기 쉽습니다.
- 맥북에어 M1은 팬이 없어서, 블렌더는 5~15초짜리 짧은 구간에만 씁니다. 영상 전체는 지금처럼 웹 페이지(three.js · HTML)로 그립니다.
숫자로 자세히 보기
세 편의 시간과 크기
| 항목 | 1편 블록 | 2편 금화 | 3편 큐브 |
|---|---|---|---|
| 요청 → 결과 | 01:15 → 01:25 (10분) | 01:27 → 02:25 (58분, 렌더 35분 포함) | 02:29 → 02:39 (10분) |
| 길이 · 크기 | 5초 · 960×540 | 11.7초 · 1280×720 · 효과음 | 10초 · 960×540 · 효과음 |
| 렌더 | 150장 2분 15초 | 350장 약 35분 | 300장 약 5분 |
| 물체 | 막대 7개(블록) | 금화 122개 · 유리관 5개 | 큐브 3,955개 |
| 만든 곳 | 맥북에어 M1 | 맥북에어 M1 | 맥북에어 M1 |
같은 날 01:15~03:00 사이 도구 호출은 69번(명령 실행 50 · 파일 읽기 13 · 파일 쓰기 4 · 검색 1 · 기타 1)이었고, 만든 장면 파일은 scene.py 3개와 소리 섞기 mix.py입니다.
따라 해 보기
블렌더를 화면 없이(파이썬 코드만으로) 써서 [장면 설명] 5~10초 영상을 만들어 줘.
- 엔진은 EEVEE, 색 변환은 Standard
- 물체가 많으면 물리 대신 프레임마다 수식으로 자리를 계산해서
- 처음엔 작은 크기로 대여섯 장만 찍어 구도부터 보여 줘
물리를 쓰고 싶다면 «물체를 하나씩 놓는 방법»을 처음부터 알려 주는 것이 좋습니다. 이번에 여섯 번 만에 찾은 «바로 위 12cm에서 한 칸 내려와 놓기»를 그대로 요청에 넣으면 같은 시행착오를 건너뛸 수 있습니다.
← 제작 기록 전체 보기