링크된 문서
Blender
Blender
Blender MCP 서버는 강력한 오픈소스 3D 제작 소프트웨어인 Blender와의 통합을 제공합니다. 이 서버를 통해 LLM은 자연어 프롬프트를 사용하여 3D 장면 생성, 모델링 및 조작이 가능해집니다. 복잡한 3D 작업에 대한 접근성을 높이고, 보다 직관적인 3D 콘텐츠 제작 워크플로우를 구현할 수 있습니다.
특징
- 프롬프트 지원 모델링: 자연어 명령을 통해 3D 모델 생성 및 조작
- 장면 구성: 객체 배치, 카메라 설정, 조명 구성 등 장면 구축 기능
- 텍스처링 및 재질 작업: 재질 속성 변경, 텍스처 적용 및 수정
- 애니메이션 제어: 키프레임 생성, 타이밍 조정, 모션 설정
- 렌더링 옵션: 다양한 렌더링 설정 조정 및 출력 제어
- Python API 연동: Blender의 강력한 Python API와 연결하여 확장된 기능 지원
API
도구
기본 모델링 도구
- create_primitive: 기본 3D 프리미티브 생성
- 입력: 프리미티브 유형(큐브, 구체, 실린더 등), 크기, 위치 파라미터
-
출력: 생성된 객체 ID 및 상태 정보
-
modify_object: 객체 속성 수정
- 입력: 객체 ID, 수정할 속성(위치, 회전, 크기 등), 값
-
출력: 수정 성공 여부 및 업데이트된 상태
-
apply_material: 재질 적용
- 입력: 객체 ID, 재질 유형, 재질 속성(색상, 반사율, 거칠기 등)
- 출력: 적용 결과 상태
장면 관리 도구
- create_scene: 새 장면 생성
- 입력: 장면 이름, 기본 설정
-
출력: 생성된 장면 ID 및 상태
-
setup_camera: 카메라 설정
- 입력: 위치, 방향, 초점 거리 등 카메라 파라미터
-
출력: 설정 결과 및 프리뷰 정보
-
setup_lighting: 조명 설정
- 입력: 조명 유형, 강도, 색상, 위치
- 출력: 적용된 조명 정보
애니메이션 도구
- create_animation: 애니메이션 시퀀스 생성
- 입력: 객체 ID, 키프레임 정보, 시간 설정
-
출력: 애니메이션 설정 결과
-
render_animation: 애니메이션 렌더링
- 입력: 출력 형식, 해상도, 프레임 범위
- 출력: 렌더링 진행 상황 및 완료 알림
유틸리티 도구
- export_model: 모델 내보내기
- 입력: 파일 형식(obj, fbx, gltf 등), 경로, 옵션
-
출력: 내보내기 상태 및 파일 정보
-
import_model: 외부 모델 가져오기
- 입력: 파일 경로, 가져오기 옵션
-
출력: 가져온 객체 정보
-
execute_script: Python 스크립트 실행
- 입력: Blender Python API 스크립트
- 출력: 스크립트 실행 결과
사용 방법
설치
# npm을 통한 설치
npm install -g blender-mcp-server
# 또는 GitHub 저장소에서 직접 설치
git clone https://github.com/author/blender-mcp-server
cd blender-mcp-server
npm install
필요 조건
- Blender 3.0 이상이 로컬에 설치되어 있어야 합니다.
- Python 3.7 이상 및 관련 의존성 패키지
구성
Claude Desktop에서 이 서버를 사용하려면 다음과 같이 설정할 수 있습니다:
{
"mcpServers": {
"blender": {
"command": "npx",
"args": ["-y", "blender-mcp-server"],
"env": {
"BLENDER_PATH": "/path/to/blender",
"OUTPUT_DIRECTORY": "/path/to/output"
}
}
}
}
사용 예시
// 기본 큐브 생성
const cube = await create_primitive({
type: "cube",
size: 2.0,
location: [0, 0, 0]
});
// 재질 적용
await apply_material({
object_id: cube.id,
material_type: "principled",
properties: {
color: [0.8, 0.2, 0.2, 1.0],
metallic: 0.7,
roughness: 0.2
}
});
// 카메라 설정 및 렌더링
await setup_camera({
location: [5, -5, 3],
look_at: [0, 0, 0]
});
await render_scene({
output_file: "render_result.png",
resolution: [1920, 1080]
});
연결된 구성 요소
- Image Generation - 이미지 생성 기능을 통한 텍스처 및 참조 자료 생성
- Video Editor - 렌더링된 애니메이션과 비디오 에디터 통합
- JavaFX - 2D 그래픽과 3D 모델링의 통합 가능성