목차
개요
지난번 게시글에서는 Game Rig와 Control Rig의 개념과 게임 엔진에 넘길 수 있는 Rig의 종류에 대해 알아보고, Game Rig를 제작하는 과정까지 진행했었습니다. 오늘은 지난번에 이어 Control Rig를 만들고, Game Rig의 개별 뼈에 Control Rig를 Constraint 로 추가해보겠습니다.
Control Rig 만들기
Hierarchy 창에서 Armature 오브젝트를 더블클릭해 이름을 Game Rig로 바꿔주고, Shift+D(복제 단축키)를 눌러 복제한다.
복제한 리그의 이름을 Control Rig로 수정해준다. (이때, 위치값은 건드리지 않고 Shift+D만 눌러주면 된다)
** 지난번 파일을 못찾아서 다른 캐릭터를 리깅해왔다.
Constraint 추가하기
Game Rig 선택 후 Ctrl+Tab을 눌러 Pose 모드로 바꿔준다. 그리고 원하는 뼈를 선택한 뒤 우측 하단 Properties 패널에서 Bone Constraints 선택 > Copy Transform 을 누른다.
그리고 Target을 Control Rig(Control Rig 뼈들의 움직임으로 Game Rig를 제어할 거니까)로 설정한 뒤,
Bone에서 선택한 뼈와 동일한 이름의 뼈를 선택해준다.
나머지 뼈들에도 모두 동일한 방식으로 Constraint를 추가해 주면 된다.
각 뼈들에 Constraint를 추가할 때에는 두 가지 방법으로 할 수 있다.
Constraint 추가하기 : 손으로 Bone 변경
이 캐릭터처럼 리깅하는 뼈의 개수가 적을 경우, 다른 뼈들에도 Constraint를 복제해서 Bone 부분만 바꿔 준다.
뼈에 일일이 Constraint를 추가하고, Target을 지정하는 게 번거로우니
A를 눌러 전체 선택 후, Copy Transform 우측의 ∨ 버튼을 눌러 Copy To Selected를 해주고 나서
각 뼈마다 이름에 맞는 Control Rig의 Bone을 지정해주면 편하다.
나머지 뼈들도 전부 각 뼈 이름에 맞게 Constraint에서 Bone을 변경해준다.
Constraint 추가하기 : Script 사용
캐릭터 리깅에 사용된 뼈의 개수가 많으면 일일이 뼈를 선택하고 Bone 부분을 바꾸는 데 시간이 오래 걸릴 수 있다.
이 경우에는 Script를 사용해 Constraint를 추가해줄 수 있다.
먼저 아까 추가한 Constraint에서 Bone 부분을 삭제하고, A를 눌러 모든 뼈를 선택해준 뒤, Copy to Selected를 눌러 Constraint를 복사해 준다.
그 다음 Text Editor 패널을 열고, New를 눌러 새로운 텍스트 데이터 블록을 생성한 뒤,
아래 스크립트를 복사+붙여넣기 해준다.
import bpy
#Switch to Pose Mode.
sel = bpy.context.selected_pose_bones
for bone in sel:
name = bone.name
bpy.context.object.pose.bones[name].constraints["Copy Transforms"].subtarget = name
- 이 스크립트를 실행하기 전에 Pose Mode에 있어야 한다
- 이 스크립트는 Game Rig와 Control Rig 안의 뼈 이름이 같기 때문에 작동한다. 만약 둘의 뼈 이름이 다를 경우 Script를 변형해서 사용해야 한다
텍스트를 넣고 나면 이런 모습이다.
이제 Text 패널에서 재생버튼을 눌러 스크립트를 실행시키면, Bone에 Control Rig와 같은 뼈들이 추가된 것을 확인할 수 있다.
이제 Object 모드로 전환하고, Text 패널을 닫아준다.
Control Rig 선택 후, Pose Mode에서 뼈를 움직여 보면, Game Rig도 따라 움직이는 걸 확인할 수 있다.
'BLENDER > STUDY' 카테고리의 다른 글
[Blender] UV Unwrap하기② - 응용도형 Unwrap하기 (1) | 2023.10.18 |
---|---|
[Blender] UV Unwrap하기① - UV 기초, 기본도형 Unwrap하기 (0) | 2023.10.13 |
[Addon] 게임 엔진을 위한 리깅 스터디④ - Game Rig Tools (0) | 2023.08.30 |
[Blender] 게임 엔진을 위한 리깅 스터디③ - Control Rig 변형하기 (0) | 2023.08.22 |
[Blender] 게임 엔진을 위한 리깅 스터디① - 개요, 기본 리깅 (0) | 2023.08.04 |