"Hella's Twitch Broadcast"

Sunday, February 2, 2014

[MMD툴 Blender에 드디어 적용]

  몇주전부터 니코동과 유튜브에서 상당히 재미있는 툴을 발견하게되었다.
일명 미쿠미쿠댄스(이하MMD)...
그렇다. 보컬로이드로 전세계 명예를 얻고 계신 분의 이름을 하고 계신 이 프로그램은 보컬로이드 기능은 없지만 프로그램 뒤에 붙어있는 이름과 같이 댄스 즉 댄스 영상을 만들때 상당히 유용한 프로그램이다.

처음에는 그냥 취미삼아 몇번 눈여겨 보았는데 그 중 상당히 눈에 들어오는 것이 있었다.

MMD X Blender

  필자는 블랜더 팬이다. 블랜더를 사랑하는 사람으로서 이런 정보는 놓칠 수 없는 것. 더욱이 이 것을 잘 사용하게 되면 한번 뼈대 설정으로 전세계 사람들의 모션을 이용하여 간단한 매드 무비는 뚝딱만들어 진다는 최대의 장점이 있다고 생각하여 실험 개시.

이틀 걸쳐 알아본 결과를 포스팅해볼련다.

  우선 글에 들어가기 앞서 MMD 프로그램에 대해서는 그렇게 많이 다루지 않을 생각이다. 이 글의 주제는 어디까지나 MMD의 요소들을 블랜더와의 비교시 어디가 이점이고 어디가 그렇지 않은지와 블랜더 랜더링 결과가 이 글의 목적이기 때문에 MMD의 자세한 설명에 대해서는 그리 깊게 들어가지 않겠다.

MMD프로그램의 실행화면

  MMD의 실행 후 사용소감은 블랜더와 비교시 애니메이션 기능과 기본 툰 랜더링에 상당히 강화되있다. 나름 블랜더에서 음악과 애니메이션 싱크를 맞출려고 별난 짓을 다 해보아도 리얼타임 애니메이션 랜더링이 꾀나 느려 음악 싱크를 맞추기 어려운 문제가 있다.
하지만 MMD의 경우 리얼타임 랜더링이 상당히 빠른편이고 프레임 다운현상이 거의 없다.
그러하기 때문에 자신의 작업한 키프레임과 랜더링 영상을 거의 같은 영상이라 볼 수 있기때문에 정말 작업하기 편하다.

MMD는 댄스 영상에 필요한 핵심요소만 가져온 프로그램이라고 볼 수 있겠다.
다만 몇가지 불편한 것도 있는 것이 사실인데...
아직 필자가 익숙하지 않은것인지 프레임키를 전체적으로 흩어보는게 상당히 힘들다.
그 외에 것은 애니메이팅 프로그램으로서는 최적이지 않을까 싶다.

자 그럼 MMD를 다 쓰면되지 굳이 블랜더로 가져와서 작업해야 될 이유는 무엇이냐
이 글을 읽는 독자분들은 생각할 것이다.

쉐이더, 메터리얼 설정이 너무 제한적이다.
제한적인 것이기 때문에 랜더링의 최적화를 이룰 수 있는 것이긴 하다만 좀더 고급 퀄리티를 원하는 사람들로서는 많이 부족한게 현실이다.

애니메이팅 프로그램이기 때문에 매쉬를 만들 수 없다.
만약 새로운 모델이 필요한데 자신이 만들고 싶을때 어떻게 해야하냐? 이 때 새로운 매쉬가 필요한데 MMD는 어디까지나 애니메이션 툴. 매쉬 작성기능이 없다. 즉 다른 툴에서 만들어 불러와야 하는데 이때 가장 호환성이 좋은 것이 블랜더이다.
(인터넷에서 수집한 예기로서는 MMD제작가가 블랜더를 사용하다 그에 필요한 기능을 최적화시켜 만들것이 MMD이기 때문에 둘의 호환성이 상당히 괜찮을 수 밖에 없다고한다.)

이펙트 설정을 할 수가 없다.
이 문제는 굳이 블랜더가 필요하다고 할수는 없다. 요즘 뭐 좋은 편집 프로그램들이 대단히 많기 때문에 단지 프리 소프트웨어 중에서 파티클 및 여러 이펙트 작업이 가능한게 블랜더 이외 더 좋은 프로그램이 있을지 필자는 의문이다.

더 몇개 내놓을 수 있겠지만 크게 따지면 저 3개가 크지 않을까 싶다.

이제 블랜더에다가 어떻게 MMD기능을 사용하냐?
필요한 준비물은 이렇다.


(위에 링크에 들어가면 화면 오른쪽에 Download Zip 버튼으로 다운받는 것이 가능하다.)

(이 글에서 사용할 모델)
원래 유료였던 모델이지만 2012년 4월 30일날 이후로부터 무료 다운로드가 가능하게되었다.
Tda님께 감사한 마음뿐이다..

  MMD_Tool은 추가기능이라고 보면되겠다.
블랜더는 자신이 주요 3D프로그램으로 사용할 계획이 없다면 인스톨형식이 아닌 ZIP파일 형식을 풀어 사용하길 적극 권장한다. 어느쪽이라도 상관없지만 그 쪽이 지웠다 깔기에는 상당히 간단하기 때문이다.

  필요한 재료들이 전부 준비가 되었으면 이제 MMD_Tool의 압축을 풀자.
그럼 그 안에 MMD_Tool폴더가 있는데 그 폴더는 블랜더 폴더 안에 있는 아래 그림에 보이는 경로에다가 붙여넣기 해버리자.
(필자는 인스톨형식으로 하여 Program Files 폴더안에 블랜더가 인스톨 된것이다. 압축을 푸는 형식일 경우 압축 풀은 폴더 안에 2.69폴더가 보일것이다.)


\2.69\scripts\addons

이걸로 인스톨 완료.
이제 위에 MMD_Tool을 불러오기 전에 블랜더에서 세팅해줘야 할 것 이 있는데 MMD_Tool의 개발자는 일본인이다. 그래서 블랜더에서 MMD관련 파일을 불러왔을때 언어적으로 꼬일 수 있는 문제가 있다. 이 문제를 해결하기 위한 것은 참으로 간단하다.

블랜더를 실행하여 위에 File->User Preferences(혹은 Ctrl+Alt+U)를 누룬다.
Blender User Preferences창이 뜨는데 맨 마지막 SYSTEM을 상큼히 클릭해주자.


 너무 성급한 마음으로 창을 닫지 말자. 마지막으로 한가지 작업을 더 해줘야 하기 때문이다.
Blender User Preferences창에서 이번에는 상단에 보이는 Addons를 클릭해주자.

눌러주면 이거는 뭐하는 물건인고 하는 리스트가 굉장히 많이 보이는데 다른건 다 필요 없고 왼쪽 돋보기창에다가 MMD라고만 상큼히 써주자.

위에 보이는 필자 세팅처럼 체크박스에 체크를 해준 후 Save User Settings버튼을 눌러 모든 변경사항을 저장시켜주자. 이걸 안해주면 프로그램 킬때마다 언어설정 다시 해주고 다시 체크박스 해줘야 하는 그런 바보같은 수고를 매번 하는 사람은 없을 것이다.

그럼 모든 설정이 다 끝난것이다.

이제 어떻게 사용하냐가 남았는데 외외로 상당히 간단하다.

만약 Object Tools창이 위와 같이 뜨지 않는다면 키보드 T버튼을 누루면 나올 것이다.

  그림에서 말하는 바와 같이 기능은 엄청 간단하다. 모델 불러오기 모션 불러오기.
MMD의 기본적인 기능과 똑같다. 거기에 단지 블랜더에서 지원하는 GLSL랜더링과 Cycles랜더링이 추가된 것이다. 초록색칸으로 된 기능들은 언제 사용하냐가 궁금할텐데 모델을 불러온 후 모델을 클릭 후 필요한 쉐이딩 항목을 선택해주면 자동으로 그 랜더링에 대해 텍스쳐를 입혀준다.

기본지식을 알리자면 블랜더에서는 메뉴같은 곳에서는 마우스 왼쪽버튼이 선택이나 3D View(화면에 미쿠가 보이는 공간)에서는 마우스 오른쪽버튼이 선택이된다.

쉐이딩을 Shadeless를 눌러준 결과
MDD세팅과 비슷한 쉐이딩이 되었다.


  문제는 가장 중요한 여기이다.
필자가 Tda님께서 미쿠에서만 발생하는 문제인지 어떤지는 모르겠지만 제작사도 불러올때 아래 그림과 1번 항목을 체크하도록 권장하고 있다. 모델 불러오기에는 이상이 없지만 필자의 경우 이 체크를 안넣어주고 모션을 넣었을때 모델 뼈대들이 이상하게 움직이는 경우가 있었다. 삽질 하기 싫으면 넣어주자.

2014/2/2)수정사항
아래 그림의 1번사항은 무시하여야 된다. 이 체크의 역활은 머리카락과 스커트의 움직임을 좀더 자연스럽게 해줄때 꼭 필요한 매쉬들을 불러와주는 것이다. 이게 체크 안되있으면..머리카락 움직임과 스커트 움직임이 제대로 안움직이므로 체크를 넣지 말자!

  이제 모션만 넣어주면 모든 설정은 끝이 난다.
단 MDD와 달리 블랜더에서는 모션을 두번 불러와줘야 하는 수고가 있는데 어려운 예기를 간단히 풀어 예기하면 블랜더에서는 얼굴 표현 모션과 몸체 모션이 따로 나눠져 있다고 예기하는게 그나마 쉬울 것 같다. MDD에서는 이 두가지를 같이 불러오는 반면 블랜더에서는 각각 설정해줘야한다.


모션 불러오는 창에 대해서는 모델 불러오는 창과 비슷하고 다른 설정이 필요 없기 때문에 참고 그림은 넣지 않겠다. 단 MMD Tool에서 불러올 수 있는 모션의 확장자는 vmd여야 하며 그 이외는 불러올 수 없으니 참고.

2014/2/2)추가사항
모션을 불러왔으면 3D View화면에서 스페이스바를 눌러 Bake All Physics를 검색하여 눌러주자. 이 역활은 위에서 추가사항으로 적어놨던 머리카락 물리 움직임을 자연스럽게 해주는 것이다.

이 것으로 MMD Tool의 설치방법에 대해서 마치겠다..MMD Tool의 강점은 무엇보다 전세계에서 만든 MMD 공개 모델과 모션을 넣어서 랜더링 할 수 있다는게 무엇보다 최대 강점이 되겠다.
필자는 여기 뼈대를 보며 애니메이션  공부할 생각으로 설치해서 넣긴 넣었다만...
각자 뼈대 설정을 보니 상당히 머리가 아프게 해부해봐야 할 것 같다.

 중요한 포인트를 써 넣는 것을 잊고 있었는데 MMD Tool에서 카메라 모션 버그가 있는 모양인지 제대로 좌표를 불러오지 못하는 현상이 있다. 필자 역시 여기저기 정보를 찾아다니긴 하였지만 제대로 된 정보를 찾지 못했다... 혹시 해결책을 아는 독자가 있으면 꼭 댓글 부탁바란다.

  MMD Toolでカメラモーションバグがあるようだがどうしても解決策が見えない。。
モーションをロードしたら一定座標がおかしくなる。この状態を治す方法を知っているユーザーがいるならぜひコメントお願いする。


이제 중요한 랜더 타임 테스트 할 시간인데..
이 포스팅의 가장 중요한 포인트는 바로 여기일 듯 싶다.
MMD와 블랜더의 랜더링 속도 테스트이다.

같은 환경을 위해 블랜더에서도 같은 쉐이더 느낌을 사용하였으며 라이팅도 되도록 비슷하게 줄려고 하였다. 해상도는 MMD에서 제시한 해상도 그대로 블랜더에서 사용하였다.

[MMD]
MJPEG Render
Render Time : 44 Sec

[Blender]
MPEG Render
Render Time 14 Min 44 Sec


결과는 MMD가 시간대비 더 효율적인게 보인다. 다만 MMD의 최대의 단점은 AVI 해상도 변경 불가인것 같다.(혹은 필자가 못찾는 거일지도..) 아무리 찾아도 해상도 변경이 보이지 않고 무엇보다 코덱을 바꾸게 되면 해상도가 일그러져 버리는 현상도 있다...

블랜더의 경우는 랜더링에 대해서는 정말 실망..스러울 수 밖에 없다...
어디까지나 기본 랜더에 대해서 비교를 할때는 정말 실망스럽다. 또한 MMD는 기본으로 머리카락과 스커트에 Physics 기능이 들어간 것에 비해 Blender는 어떤 모델은 자동설정이 되고 어떤 모델은 손수 다시 All Physics Bake를 해줘야되는 불편함을 겪어야 된다.

그 예가 위에 블랜더 랜더링이 그 예인데... 머리카락에 Physics설정이 제대로 되어있지 않아 MMD처럼 움직이지 않는다......정말 걸린 시간에 비해..한숨이 많이 나오는 결과물이다..

그럼에도 불구하고 Blender의 랜더링 시스템을 사용할 수 밖에 없는 이유는...



GLSL(上), Shadeless(下) 여러가지 있지만...
그 중 극 실사체 랜더링인 Cycles랜더링이 아닐까 싶다...



문제는 더럽게 무거워서....이걸로 된 영상결과물을 블로그에 포스팅하고 싶었지만
도저히 5시간이내로 랜더링 할 그런 것들이 아니라.... 올릴 수가 없었다.

이번 실험으로 MMD 세계를 어떻게 활용해야 될지 머리에 정리가 되었고
무엇보다 앞으로의 뼈대 및 모델링을 어떻게 하면 이뻐보일지 귀중한 참고 자료들이 대단히 많이 늘어 기쁘기도 하다.
크리에이티브 커먼즈 라이선스