Recipes

Blender를 MCP를 통해 Codex에 연결하는 프롬프트 기반 3D 장면 빌더

README 링크에서 발견 · 2 days ago

Games & SimulationsSoftware & DevOps

Blender의 MCP 애드온을 Codex에 연결해 프롬프트로 3D 장면을 만들고 편집하도록 했습니다.

What they did

반복적인 소품을 일일이 모델링하는 대신 자연어로 장면을 설명하고 싶어 했습니다. mcp-for-blender 프로젝트(이전 명칭 blender-mcp)를 사용해 원커맨드 설치 프로그램을 실행했고, 이 프로그램이 uv를 설치하고 MCP 클라이언트를 감지한 뒤 다른 앱들과 함께 Codex도 구성할지 제안했습니다. Codex를 선택하고 스크립트가 Blender 애드온을 설치·활성화하도록 한 다음, AI 앱을 완전히 종료했다가 다시 열어 새 `blender` 서버 항목이 인식되도록 했습니다. Blender를 열어둔 상태에서(애드온은 실행 시 자체 로컬 서버를 시작합니다) 프롬프트를 시작했습니다. 기본 장면을 만들고, 프리미티브를 추가하고, 오브젝트의 위치와 크기를 조정하고, 머티리얼을 적용하고, 조명과 카메라 프레이밍을 조정했습니다. 대화하듯 반복 작업을 이어가며 탁상 배치를 요청한 뒤 오브젝트의 트랜스폼과 색상을 조금씩 조정했고, 각 변경 전에 에이전트로 현재 장면 상태를 확인해 수정이 올바른 오브젝트에 적용되도록 했습니다. 마지막으로 결과를 확인하기 위해 렌더링을 요청한 뒤, 돌아온 결과를 바탕으로 비율과 조명을 다듬었습니다.

How it went

설정은 빠르고 대부분 손이 거의 필요 없었습니다. 설치 명령 하나로 uv, 클라이언트 설정, Blender 애드온이 처리되었고, 건드린 모든 설정 파일에 대해 백업이 작성되었습니다. 프롬프트를 입력하자 수동 모델링 없이도 사용 가능한 블록아웃 장면과 머티리얼/조명 조정이 생성되었는데, 이는 레이아웃 프로토타이핑과 구도 반복 작업에 있어 확실한 속도 향상입니다. 결과물은 초안으로 취급하는 것이 가장 좋습니다. 지오메트리가 단순해서 프로덕션 품질의 에셋으로 만들려면 사람의 정리가 필요합니다.

Worth knowing

이는 공식 Blender 제품이 아닌 서드파티 통합입니다. PyPI 패키지 이름이 blender-mcp에서 mcp-for-blender로 변경되었습니다. 기존 설정은 계속 작동하지만, 새로 설치하는 경우에는 새 이름을 사용해야 합니다. 설정 후에는 AI 앱을 완전히 종료하고 다시 열어야 하며(Windows에서는 시스템 트레이에서 종료), 서버가 응답하려면 Blender가 애드온이 활성화된 상태로 실행 중이어야 합니다. Windows Defender가 설치 스크립트를 차단할 수 있으며, 이 경우 수동 uv 경로를 사용하세요. 복잡하거나 매우 정밀한 모델링은 여전히 수작업이 필요합니다.

Wiring

uv를 설치한 후(brew, curl 설치 프로그램 또는 winget), `uvx mcp-for-blender setup`을 실행합니다. 이 명령은 Codex를 포함한 MCP 클라이언트를 감지하고 `blender` 서버 항목을 추가하며, 수정된 각 설정 파일의 `.bak` 백업을 저장합니다. 또는 수동으로 구성할 수도 있습니다. MCP 클라이언트가 uvx를 통해 실행되는 `mcp-for-blender` 서버를 가리키도록 설정하면 됩니다. Blender 애드온을 설치하고 활성화한 후(setup 명령이 이 작업을 수행합니다), AI 앱을 완전히 재시작합니다. Blender를 실행하면 애드온이 로컬 소켓 서버를 시작하고 MCP 서버가 여기에 연결되므로, 에이전트가 씬 상태를 조회하고 모델링, 머티리얼, 조명, 렌더 명령을 내릴 수 있습니다. 순서가 중요합니다. uv 먼저, 클라이언트 구성 두 번째, 애드온 세 번째, 앱 재시작, 그다음 프롬프트를 입력하기 전에 Blender를 실행합니다.

Try it yourself

# mcp-for-blender를 Codex 클라이언트에 설정하고 Blender 스튜디오 장면 만들기

## 1단계: mcp-for-blender를 Codex 클라이언트에 설정

먼저 mcp-for-blender 서버를 설치하고 Codex 클라이언트에 등록해야 합니다.

**설치 (일반적인 방법):**
```bash
# 저장소 클론 및 의존성 설치
git clone https://github.com/ahujasid/blender-mcp.git
cd blender-mcp
pip install -r requirements.txt
```

**Codex 클라이언트 설정 파일에 MCP 서버 등록** (예: `~/.codex/config.toml` 또는 해당 클라이언트의 MCP 설정):
```toml
[mcp_servers.blender]
command = "python"
args = ["/path/to/blender-mcp/src/blender_mcp_server.py"]
```

**Blender 쪽 준비:**
1. Blender 실행 → `Edit > Preferences > Add-ons`에서 `blender-mcp` 애드온 설치/활성화
2. 3D 뷰포트에서 `N` 패널 열기 → **BlenderMCP** 탭 → **Connect to MCP server** 클릭
3. Codex 클라이언트 재시작 후 MCP 도구가 노출되는지 확인

> 참고: 실제 저장소 경로/패키지명은 사용 중인 mcp-for-blender 배포판에 따라 다를 수 있으니, 설치 후 `blender-mcp` 애드온이 정상 연결되는지 먼저 확인하세요.

---

## 2단계: Blender 장면 구축 계획

요청하신 작업을 순서대로 진행하며, **각 변경 전후로 오브젝트 목록을 보여드리고**, 모든 오브젝트는 **`Studio` 컬렉션**에 넣겠습니다.

### 초기 상태 (변경 전)
```
Scene Collection
└── (비어 있음 또는 기본 Cube/Camera/Light)
```

### 변경 1: `Studio` 컬렉션 생성
- **전:** 위 초기 상태
- **후:**
```
Scene Collection
└── Studio (빈 컬렉션)
```

### 변경 2: 둥근 테이블 상판 (rounded tabletop)
- Bevel modifier로 모서리를 둥글린 원통형/박스형 상판 생성
- **전:** `Studio` (비어 있음)
- **후:**
```
Studio
└── Tabletop_Rounded
```

### 변경 3: 세라믹 머그 3개 (약간씩 다른 크기)
- `Mug_Small`, `Mug_Medium`, `Mug_Large` — 각각 실린더 + 손잡이(Torus/Curve) + Bevel/Subdivision
- **전:** `Studio > Tabletop_Rounded`
- **후:**
```
Studio
├── Tabletop_Rounded
├── Mug_Small
├── Mug_Medium
└── Mug_Large
```

### 변경 4: 소프트 키 라이트 (soft key light)
- Area Light, 큰 사이즈 + 낮은 강도로 부드러운 그림자
- **전:** 위 4개 오브젝트
- **후:**
```
Studio
├── Tabletop_Rounded
├── Mug_Small
├── Mug_Medium
├── Mug_Large
└── KeyLight_Soft (Area)
```

### 변경 5: 중립 배경 (neutral backdrop)
- 곡면 스윕(seamless sweep) 형태의 배경 메시 또는 월드 배경을 중립 회색으로
- **전:** 위 5개 오브젝트
- **후:**
```
Studio
├── Tabletop_Rounded
├── Mug_Small
├── Mug_Medium
├── Mug_Large
├── KeyLight_Soft (Area)
└── Backdrop_Neutral
```

### 변경 6: 카메라 및 1080p 렌더
- 카메라 추가(프레이밍 확인용), 해상도 1920×1080 설정
- **전:** 위 6개 오브젝트
- **후:**
```
Studio
├── Tabletop_Rounded
├── Mug_Small
├── Mug_Medium
├── Mug_Large
├── KeyLight_Soft (Area)
├── Backdrop_Neutral
└── Camera_Main
```
- 렌더 설정: `1920 x 1080`, 엔진(Eevee/Cycles) 선택, 샘플 조정
- 출력: `//renders/studio_review_1080p.png`

---

## 3단계: 실행 시 확인할 점

MCP 도구를 통해 위 단계를 순차 실행하면, **각 단계마다 `bpy.data.objects` 목록을 조회해 전후 비교**를 출력하겠습니다. 렌더 완료 후:

- **프레이밍**: 머그 3개가 화면에서 적절히 분산되고 테이블 상판 가장자리가 잘리지 않는지
- **조명**: 키 라이트로 인한 부드러운 그림자와 하이라이트가 세라믹 질감을 살리는지
- **배경**: 중립 회색이 머그 색과 대비되어 피사체가 분리되어 보이는지

렌더 결과를 확인하신 뒤 프레이밍/조명 조정이 필요하면 카메라 위치나 Area Light 크기·강도를 조정해 재렌더하겠습니다.

---

**다음 단계로 진행하려면** MCP 연결이 정상인지(Codex에서 Blender 도구 호출 가능 여부) 확인해 주세요. 연결되면 위 순서대로 장면을 구축하고 각 단계의 오브젝트 목록과 최종 1080p 렌더를 제공하겠습니다.

Source

English

Tools in this stack