****** 아래 사항중 한가지라도 맞지 않으면 정상적으로 Export 되지 않습니다 *****
4. 페이셜 메쉬연결 부분에서 advanced 를 체크하여 Choose Head Joint를 언리얼의 head로 설정하고 Skin Cluster도 Face의 SkinCluster로 연결해 줍니다.
5. 그 상태에서 아래 페이셜 조인트 전체 설정 후..
6. Build~
7. 빌드 후 Convert FaceSetup 실행
Convert FaceSetup을 반드시 진행해야만 언리얼로 익스포트가 됩니다.
기존 원본 데이터는 거의 영상용이라 생각하면 되고, 영상용으로 된것을 게임용으로 변경시켜 준다고 생각하면 됩니다. 전체 블렌드 쉐잎으로 되어 있던 데이터가 간단한 BlendShape 정보와 간략화된 본으로 변환 구성됩니다.
8. 스킨에 이상없는지 체크
변환 후에는 스킨에 이상이 없는지 반드시 체크가 필요합니다. 입이 벌어지지 않는다든지.. 눈이 깜빡이지 않는다든지.. 그런 경우는 스킨이 제대로 안되어 있는 경우 이므로 아래 그림처럼 스킨을 다시 설정해 줍니다. 입이 벌어지지 않을 경우는 JawJoint_M의 스킨이 제대로 되어 있지 않은 경우입니다. 굉장히 빈번히 발생하므로 반드시 체크가 필요합니다.
9. 각종 연결사항에 이상이 없는지 체크
위 4번에서 확인한 헤드본과 스킨 클러스트등의 정보와 더불어 Faceup 실행 후에는 언리얼 Export의 head 본 하위에 Face_M이라는 페이셜 용 본이 생성이 되어야 정상 익스포트됩니다.
10. 그 다음 익스포트할 메쉬와 언리얼본과 Group -> Main -> DeformationSystem 선택후 익스포트!
여기서 체크사항! 익스포트할 메시는 반드시 최상위로 해줘야 언리얼 임포트시 문제가 발생하지 않습니다.
11. 익스포트할때 반드시 Blend Shape을 포함해서 익스포트해야 합니다.
12. 언리얼로 임포트할 때도 Morph Target을 반드시 체크합니다.
언리얼에 모핑 정보가 담겨서 임포트됩니다.
- 위 과정중 한가지라도 잘못될 경우 데이터가 제대로 넘어오지 않습니다. 확인! 또 확인!
페이셜 셋팅은 경험이 많치 않을경우 많은 문제들이 수반됩니다. 아래사항을 중간중간 꼭 체크하여 문제가 발생하는지 점검해 주셔야 합니다.
문제가 생기는 경우
Symmetry가 안되었거나..(좌우대칭 메시가 아니거나..)
Edge나 Vertex가 끊어져 있거나..
Pivot이 0,0,0이 아니거나..
모델등록이 잘못되었거나..
Head 조인트가 잘못되었거나..
영역을 선택한 후에 메시를 수정했거나..(메시를 수정했을 경우엔 반드시 재 셋업을 해줘야 합니다.)
등등등.. 위 조건중 하나만 잘못되도 빌드중 크래시가 나거나 오류가 발생합니다.
Create Face FitSkeleton Node
헤드의 높이 사이즈를 맞춰줍니다. 포지션을 변경하게 되면 에러가 발생하므로 스케일만 조정해서 머리크기를 맞춰 줍니다. 다시한번 강조하지만 포지션 절대 변경 하지 말것!
Choose Geometry
머리, 눈, 이빨, 혀를 각 섹션별로 넣어줍니다. 오브젝트 선택후 해당 버튼을 누르면 넣을 수 있습니다.
오브젝트를 넣을 때 아래와 같은 메시지가 뜰 수 있는데, 기존 스킨을 사용할 것인지 헤드 조인트에 스킨을 다시할 건지 묻는 내용입니다.
스킨이 없을경우에는 스킨을 할지 묻게 되고, 지정된 헤드 본에 웨이트1로 스킨이 됩니다.
EyeBall - 눈알 위치를 맞춰줍니다.
EyeLidOuter - Edge로 영역을 선택하고 해당 버튼을 누르면 선택부위를 보여주는 메시가 생성됩니다.
Enable 체크를 Disable 하게 되면 삭제가 됩니다.
EyeLidMain
EyeLidInner - 눈 주변 폴리만 남기고 나머지는 하이드 시켜 안쪽에서 엣지를 선택해 준다. 선택된 Poly외에 하이드 하는 방법은 Poly를 선택하고 Alt + h 버튼을 누르면 선택된 폴리만 남고 나머지는 하이드 된다. 다시 언하이드 하려면 Shift + h
툴에서는 assist를 활용해 메쉬를 위로 들어올려 하도록 도와주긴 하지만.. 왠지 모르게 더 헷갈림..;;
눈 주변 최종 정리 - 정상적으로 처리가 되면 빨간색으로 영역이 선택되며 마무리됩니다. 아래 처럼 나오지 않을경우 빌드시 문제가 터지므로, 모델을 재점검 해주세요. 엣지가 연결되어 있는지, 시메트리인지, 월드좌표가 0,0,0인지등등..
LipOuter
LipMain
LipInner - 눈과 마찬가지로 입주변 Poly만 남기고 나머지는 하이드 시켜 처리
assist를 사용하게 되면 입술이 앞으로 툭 튀어나옴~
입주변 선택이 완료되면 눈과 마찬가지로 빨간색으로 영역이 선택되어 집니다.
아래 처럼 나오지 않을경우 빌드시 문제가 터지므로, 모델을 재점검 해주세요. 엣지가 연결되어 있는지, 시메트리인지, 월드좌표가 0,0,0인지등등..
눈썹 처리 - 세 부위를 Vertex를 선택하여 활성화 시켜 줍니다.
ForeHead - 위에서 선택한 눈썹이 중앙쯤에 위치하도록 Vertex 3 지점을 선택하고 해당버튼을 눌러 생성해줍니다.
여기서 중간점검
눈 주위와 입 주위 연결이 잘 됐는지 중간점검. 반드시 아래 그림처럼 ForeHead는 녹색으로 눈주변과 입주변은 빨간색으로 영역이 생성되어 있어야합니다. 여기까지 가장 문제가 많이 생기니 특별히 신경써 주세요. 눈 엣지와 입술 엣지 선택에 따라 결과물이 완전 달라짐!!
아닐 경우 빌드시 문제가 발생하므로 모델을 점검하여 완성시켜주세요.
Jaw
Throat
나머지 부위별 연결 - 모델의 Vertex를 선택하여 영역을 생성합니다.
코 연결 - 모델의 Vertex를 선택하여 위치를 생성합니다.
턱 라인 생성 - 생성된 버텍스 영역들에 맞게 Wire가 생성되며 Wire의 버텍스를 이용하여 모양 편집이 가능합니다. 턱라인에 맞게 이쁘게 가공해 줍니다.
모든 부위의 Facial Joint 생성이 완료되었습니다. 아래 그림처럼 되면 빌드준비가 완료된 것입니다.
** 아래도 ForeHead생성은 완벽하게 되지 않았습니다. 와이어 프레임에 조금 문제가 있다는 뜻이지요..(모델링 탓..)
이정도 오류는 빌드시 크게 문제가 되진 않습니다. 단, 결과물에 퀄리티는 다소 떨어질 수 있습니다. 와이어가 중요함!
준비가 다 되었다면 아래 빌드 버튼을 눌러주세요~
빌드는 25단계에 의해 이루어지는 방식은 자동으로 전부하는 Build Advanced 모드와 과 수동으로 25단계를 진행하는 두가지가 있습니다.
일괄 빌드 버튼 - 25단계 빌드 단계를 자동으로 진행합니다.
수동 빌드 버튼 - 각 단계별로 세부한 사항을 편집하며 각각 빌드합니다.
각 버텍스 별 영역이나 강도등을 전부 수정할 수 있습니다.
빌드가 완료되면 아래 화면처럼 페이스 컨트롤러가 생성되며 마무리 됩니다.
개별 컨트롤러들과 메인 컨트롤러를 움직여 다양한 표정을 지을 수 있게 됩니다.
컨트롤 제어 영상
추가 작업.
* EyeLash 추가 (속눈썹 추가)
속눈썹 메시를 따로 선택하여 Attach를 시켜주면 얼굴의 와이어프레임에 맞게 블렌드 쉐잎을 처리해 줍니다.
기본 메뉴 간단 구성 (1) FitSkeletons : 뼈대 구성 설정. 인간형인지, 4족인지 몬스터인지 종류별로 사용이 가능합니다
(2) Create : 기본 Fit에 추가로 Joint를 만들수 있고, Joint 사이의 갯수를 수정할 수 있습니다.
(3) Label : 네이밍과 구조 관련. ?를 눌러 이미지 참고
(4) Attribute : 뼈의 트위스트 특성을 정합니다. ?를 눌러 이미지 참고 (5) Display: 뼈의 크기와 실제 뼈 모양을 디스플레이 할 수 있고, 무릎 방향과 각 조인트의 방향을 설정할 수 있습니다. (6) Placement : 뼈를 중아으로 정렬합니다. ?를 눌러 이미지 참고 (7) Auto-Orient : 뼈의 축을 부모에 맞게 자동 정렬 하며 업데이트 해줍니다.
위 과정을 거친후 빌드를 하게 되고, 스킨을 맞추게 됩니다.
FitSkeleton 세부 설명
- 주인공의 체형에 맞는 바이패드를 불러올 수 있습니다. Advanced 에서 기본 제공하는 체형을 사용하면 체형 구성이나 트위스트 블렌드 등이 쉽게 구성됩니다.
- 기본 제공하는 뼈대에는 인간, 4족, 몬스터, 새, 드래곤, 물고기등 게임에서 주로 사용되는 모든 뼈들이 제공됩니다.
- import를 누르면 자동으로 불러지고, 위치를 이동하여 몸에 맞게 조인트를 구성해 주면 됩니다.
Create 상세 설명
아이콘을 누르면 그림처럼 Joint를 만들수 있습니다.
Resample을 사용하여 씬에 있는 뼈들을 선택하여 중간 조인트 수를 조절할 수 있습니다. 이때 반드시 중간에서 다른 트리 구조가 없어야만 합니다.
다른 트리구조가 껴 있을경우 전부 Remove 됩니다. 가령 가슴에서 목본을 조절할 때 중간에 어깨 본이 껴있으면 전부 삭제 됩니다.
아래 그림처럼 중간본의 갯수가 달라집니다.
->
Display 상세설명
조인트를 시각화 하여 좀더 직관적으로 셋업하도록 도와 줍니다.
PoleVector를 시각화하여 무릎의 방향을 맞춰주는 작업은 반드시 필요함.
이 부분이 잘못 셋팅 될 경우 무릎의 방향이 잘못되어 셋팅을 다시해야 하는 경우가 발생합니다.
Joint Axis를 활성화하게 되면 각 관절의 축을 시각화 해줍니다.
Auto Orient 상세설명
FitMode를 키고 조인트 구조를 맞추면 자동으로 축정렬을 해주면서 스켈레톤을 맞추게 됩니다.
FitMode를 안하고 Update Now를 누르면 수동으로 축정을 진행하게 됩니다. 최종 빌드전에 반드시 해주어야 합니다.
Build Skeleton
Pre 과정을 모두 마치고 나면 Build Skeleton을 통해 애니메이션 가능한 조인트 셋팅이 이루어집니다.
기본적으로 IK/FK 하이브리드 조인트 세팅으로 제작되어 집니다.
Build가 끝나고 나면 Advanced Skeleton에서 제공하는 Picker를 사용할 수 있게 됩니다.
Picker에 대한 상세 내용은 Animation 가이드에서 설명됩니다.
*** 4족이나 다른 것 들은 네이밍이 달라 Picker에서 정상 작동하지 않는 문제가 있습니다.***
Deform 작업(Skin Weight)
빌드가 된 조인트를 캐릭터에 스키닝 하는 작업으로 최종 마무리됩니다.
스킨 작업은 4가지의 옵션으로 이루어 지며 각 옵션별 특징을 설명하자면
(1) Deform (option1) : 마야에서 제공하는 기본 스킨 웨이트 작업입니다.
(2) Deform (option2) : 캐릭터 몸에 맞게 박스 영역을 설정하여 스킨을 진행하도록 도와 줍니다. 오브젝트는 모두 Unbind인채로 진행해야 합니다.
Create로 만들고..
네모 컨트롤러로 사이즈를 조절하여 캐릭터사이즈와 맞춰 줍니다.
스킨웨이트를 입힐 오브젝트를 선택후 Copy Weight를 눌러주면 스킨이 입혀 집니다.
(3) Deform(option3) : Option2를 좀더 정교하게 스킨할 수 있도록 Sub Wrab을 생성하며 좀더 Smooth한 스킨 작업을 도와주게 됩니다. 작업 방식은 Option2와 비슷하며 Option2에서 생성된 컬리더가 있어야 실행됩니다.
원본 스키닝에 포장지를 하나 더 씌워 좀더 매끄러운 결과를 얻기 위한 추가 작업이라 보시면 됩니다. Option2와 3는 셋트로 움직입니다. Copy등이 모두 한 셋트로 움직입니다.
인박스와 아웃박스에 존재하는데 인박스는 사람몸안에 최대한 들어가도록 하고 아웃박스는 포장지같은 느낌으로 감싸주면 좋습니다.
(4) Deform(Option4) : 옵션2,4과는 별개로 작동하는 옵션이며, 오브젝트의 Edge와 FK 컨트롤러를 같이 선택하여 스킨 영역을 설정해 주는 방식입니다. 최초설정이 오래 걸리는 대신 좋은 결과물을 얻는데 좋은 방식입니다.
엣지와 FK 컨트롤러를 선택후 Create New SkinLoop를 눌러주면 새 그룹이 생기며 영역을 설정하게 됩니다.
FK 콘트롤러를 화면에 나오게 하기 위해서는 파란색 + 버튼을 눌러 FKIKBlend를 0으로 해주면 화면에 나오게 됩니다.
오브젝트 선택후 바인드 버튼을 누르면 스킨이 진행됩니다.
** 이 방식은 FK와 wire 위치가 절묘하게 잘 맞아 떨어질 경우에는 상당히 좋은 결과를 보지만, 아닐경우는 오히려 더 안 좋을수도 있습니다.