# build()

풀 빌드입니다. UI 의 Build 와 같은 일을 합니다. 빈 씬에서도 되고, 바이패드를 같이 만듭니다. 끝나면 `rig` 를 돌려줍니다. 실패하면 `RuntimeError` 입니다.

### 시그니처
```python
api.build(**params) -> rig
```

많이 쓰는 호출입니다.

```python
rig = api.build(height_cm=170, engine_type="unreal")
```

안 넘긴 값은 아래 기본값입니다.

| 인자 | 기본 | 설명 |
|------|------|------|
| `engine_type` | `"unreal"` | `"unreal"` 또는 `"unity"` |
| `biped_style` | `"human"` | 바이패드 스타일 |
| `height_cm` | `170` | 키, 센티미터. 0 이하면 `ValueError`. `True`/`False` 는 `TypeError` |
| `spine_count` | `3` | 척추 |
| `neck_count` | `1` | 목 |
| `leg_links` | `3` | 다리 링크. `4` 는 역관절. 더블니는 항상 3 |
| `arm_twist_seg` | `3` | 팔 세그 1~5 |
| `leg_twist_seg` | `3` | 다리 세그. 더블니는 2, 3, 5 |
| `fingers` | `5` | 손가락 개수 |
| `finger_links` | `3` | 손가락 마디 |
| `double_knee` | `False` | 더블니. `True` 면 `knee_type` 은 `"None"` |
| `hip_type` | `"None"` | 힙 추가 |
| `tail_type` | `"None"` | 꼬리 |
| `knee_type` | `"None"` | 종아리 보정. 더블니와 같이 켜면 `ValueError` |
| `elbow_type` | `"None"` | 팔꿈치 보정 |
| `upperarm_type` | `"None"` | 위팔 보정 |
| `prop_1` `prop_2` `prop_3` | `False` | 프롭. 반드시 `True`/`False` |
| `create_rig_info` | `True` | INFO 노드 생성 |
| `com` | 없음 | 바이패드가 둘 이상일 때 바이패드 이름 |

켜고 끄는 값은 `True`, `False` 만 됩니다. 표에 없는 이름은 `TypeError` 입니다. 역관절은 `leg_links=4` 입니다. `horse_link` 라는 인자는 없습니다.

### 바이패드가 둘 이상

이미 바이패드가 둘 이상이면 `com="Bip001"` 처럼 이름을 넘기거나, 쓸 바이패드를 선택한 뒤 호출합니다. 둘 다 없으면 `ValueError` 입니다.

### 더블니

```python
rig = api.build(height_cm=170, leg_twist_seg=5, double_knee=True)
```

`leg_twist_seg` 는 2, 3, 5 만 됩니다. 4 는 빌드 중에 멈춥니다.

### 예제
```python
from os_bipedPlus import openAPI

api = openAPI()
rig = api.build(height_cm=165, engine_type="unity", spine_count=4)
print(rig.com)
```

---