마야 워크플로우

2020년 9월 16일

마야 튜토MAYA101마야 워크플로우

마야의 워크플로우(workflow)에 대해 간략하게 설명합니다. 워크플로우를 이해하는 것은, 마야의 작업 진행 과정을 이해 하는 것과 같습니다.

워크플로우

워크플로우는 작업을 하는 순차적인 과정을 말합니다. 마야에서는 일련의 순차적인 과정을 따라서 작업이 진행됩니다. 마치 공장에서 볼 수 있는 컨베이어 벨트와 같습니다. 각 공정별로 분리되어 작업이 진행되며, 이 모든 과정을 통과하면 결과물이 나오게 되는 것입니다.

Andy Beane, 3D Animation Essentials(John Wiley & Sons, 2012), 23p

워크플로우는 작업을 하는 목적, 또는 결과물에 따라서 순서가 변경되고, 필요치 않은 과정이 배제되기도 합니다. 영화, 애니메이션, 게임, 일러스트, 이펙트, 모션그래픽 등 마야를 사용하는 용도와 목적이 모두 다르기 때문입니다. 따라서, 여기서는 가장 일반적인 워크플로우를 이야기해보려고 합니다. 모델링, 텍스쳐링, 리깅, 애니메이션, 라이팅, 이펙트, 랜더링이 마야에서 작업을 진행하는 일반적인 과정에 포함됩니다.

Modeling

디자인이나 스토리 같은, 사전제작(pre-production) 단계가 완료되면, 모델링이 시작됩니다. 모델링은, 3차원으로 구성되는 형태를 만드는 과정입니다. 가상의 3차원 공간에서, 점, 선, 면으로 이루어진 도형을 변형해가면서, 3차원의 입체감 있는 형태를 만들어 가는 것입니다.

마야에서는 이 도형을 폴리곤(polygon)이라 부릅니다. 그리고, 점, 선, 면을 각각 버텍스(vertex), 엣지(edge), 페이스(face) 라고 하며, 폴리곤의 컴포넌트(component)라고 합니다. 이러한 컴포넌트를 이동하거나, 회전하면서 디자인에 맞는 3차원 형태를 만들어 나가는 것이 모델링입니다. 여기서, 폴리곤이라는 오브젝트를 변형해가면서 모델링을 하게 되므로, 이 것을 폴리곤 모델링이라 부르게 됩니다.

참고로, 스컬팅(sculpting) 모델링 방식이 있습니다. CPU의 처리 속도가 빨라지고, 모델링의 기술이 발전하면서 조각하는 방식으로 모델링 하는 것이 가능 해졌습니다. 도구를 이용해 덧붙이거나, 긁어내면서, 마치 점토를 이용해 모델링을 하는 느낌을 가지게 합니다. 기존의 폴리곤 모델링 방식보다 직관적이며, 세밀한 표현이 가능하기 때문에, 이제는 영상이나 게임에서 많이 활용되고 있습니다. 대표적으로 지브러쉬(zbrush), 머드박스(mudbox) 등의 프로그램이 있으며, 마야, 맥스, 블렌더에서도 스컬팅 모델링 방식을 지원하고 있습니다. 그러나, 모델링의 기본은 폴리곤으로 구성되기 때문에, 폴리곤 모델링의 개념을 먼저 이해하는 것이 좋습니다.

Pablo Munoz Gomez, Crab – Sculptris Pro Timelapse by Pablo Munoz Gomez, Pixologic ZBrush, 2013



Texturing

모델링 된 오브젝트는 보통 단색으로 뷰에 나타납니다. 마야에서는 회색으로 기본 색상이 결정되어 있습니다. 그렇기 때문에, 오브젝트에 색상을 표현하기 위해서는 그림을 그려서 모델링 오브젝트의 표면에 나타나도록 해야 합니다. 이 때 사용되는 그림을 텍스쳐(texture)라고 합니다. 그런데, 이 텍스쳐를 모델링에 적용하는 과정에서 문제가 발생합니다. 모델링은 3차원이고, 텍스쳐는 2차원이기 때문입니다. JPG, PNG와 같은 이미지 파일을 떠올려보면 쉽게 이해가 됩니다. 따라서, 3차원의 모델링을 2차원으로 바꾸는 방법으로, 모델링과 텍스쳐를 동일한 차원으로 만들어 매칭시키게 됩니다.

3차원의 모델링을 어떻게 2차원으로 만들까요? 바나나를 예로 들어보겠습니다. 현실에서 바나나는 3차원 물체입니다. 그런데 이 바나나 껍질을 까서, 바닥에 펼쳐 놓으면, 2차원의 형태가 됩니다. 마치 육면체의 전개도를 펼치는 방식으로 3차원의 모델링을 찢어서 펼치게 되면 2차원 평면에 놓이게 됩니다. 이렇게 2차원 평면의 좌표를 UV라고 부르며, 여기서 ‘UV를 편다’는 표현이 나옵니다. 열심히 만든 모델링을 찢을 수는 없으므로, UV 도구 안에서 모델링과 같은 점, 선, 면의 형태를 가진 도형을 찢어, 텍스쳐와 매칭 되도록 만드는 것입니다.

펼쳐진 UV는 3차원 모델링의 2차원 좌표와 같습니다. 이 2차원의 좌표가 2차원의 텍스쳐와 매칭이 됩니다. 그러므로, 이 작업을 ‘지도를 제작한다’ 하여, 매핑(mapping) 이라고 하며, 여기에 사용되는 이미지 파일 등의 텍스쳐를 맵(map)이라고도 합니다.

정리해보겠습니다. 모델링이 끝나면, 일반적으로 모델링의 UV를 펴게 됩니다. 모델링의 원하는 위치에 텍스쳐를 표현하기 위해서입니다. 텍스쳐가 단색이거나, 위치를 맞출 필요가 없다면, 당연히 이 과정은 생략됩니다. 펼쳐진 UV의 이미지는 포토샵 등을 이용해 텍스쳐를 만드는 좌표로 이용되며, 이제 이렇게 만들어진 텍스쳐를 모델링에 적용하면 됩니다. 이 과정이 텍스쳐링 입니다.

Rigging

애니메이션을 하기 전에, 애니메이션을 할 수 있도록 만들어야 합니다. 단순한 소품이나 단일 오브젝트는 간단히 애니메이션 할 수 있지만, 팔, 다리가 달린 캐릭터 모델링은 구부러지는 관절을 표현해야 하기 때문에 애니메이션 하는 것이 쉽지 않습니다. 그래서, 모델링 안에 뼈대(joint)를 만들고, 이 뼈대와 모델링을 연결하는 과정을 진행합니다. 그럼, 뼈대가 움직일 때, 모델링도 움직여지는 방식으로 애니메이션을 할 수 있습니다. 그러나, 이 뼈대를 만드는 것만으로 끝나지는 않습니다. 이 뼈대를 애니메이터가 편리하게 애니메이션을 할 수 있도록 설정해야 합니다. 이 과정은 마치, 마리오네트에 끈을 연결하고, 조종하는 막대를 연결하는 것과 같습니다. 이렇게, 애니메이션을 하기 위해, 뼈대를 만들고, 모델링과 연결하며, 애니메이터를 위한 설정을 하는 모든 과정을 리깅이라고 합니다.

Animation

전통적인 애니메이션은 여러 장의 그림을 그려 빠르게 돌려보는 것이었습니다. 이 방식은 여러 장의 연속적인 그림이 필요했기 때문에, 숙련된 애니메이터의 많은 시간이 필요했습니다. 1초에 30장의 그림이 들어가거나, 적어도 10장 정도의 그림이 들어갔기 때문입니다.

그러나, 마야에서는 하나의 포즈(pose)에서 다른 포즈로의 움직임을 ‘계산’해서 처리해 줍니다. 즉, 고개를 드는 애니메이션을 만든다고 했을 때, 고개를 숙이는 자세와, 고개를 든 자세를 만들게 되면, 마야가 고개를 들어올리는 애니메이션을 만들어 줍니다. 디지털 애니메이션의 큰 장점 중 하나로 볼 수 있습니다.

마야에서의 애니메이션은 포즈와 포즈를 계산해주기 때문에, 인터폴레이션(interpolation)을 그래프로 표현합니다. 점점 느리게, 또는 점점 빠르게 움직이는 애니메이션을 만들어 내기 위해서, 마야 애니메이션에서는 그래프의 이해가 중요합니다.

Lighting

모델링은 마야의 가상 공간에 덩그러니 놓여 있는 것입니다. 이 가상 공간은 한 줄기 빛이 없는 어둠 속과 같습니다. 그래서, 여기에 가상의 태양을 만들거나, 조명을 만들어 설치해야 합니다. 사진을 촬영하는 스튜디오에서 좋은 결과물을 얻기 위해, 많은 조명들이 설치 된 것을 본 적이 있을 것입니다. 마야에서도 원하는 결과물을 강조하거나, 특정한 분위기를 연출하기 위해 조명을 만들게 됩니다.

Arnold for Maya User Guide, Arnold for Maya User Guide

그리고 이 조명을 설정하는 단계에서, 모델링의 쉐이딩(shading)이 진행됩니다. 쉐이딩은 모델링 표면의 재질을 표현하는 과정이라고 볼 수 있습니다. 빛의 반사를 조절하거나, 텍스쳐의 설정을 추가해서 모델링의 표면을 표현하게 됩니다. 투명한 유리, 콘크리트, 나무 등의 수많은 재질을 설정할 수 있습니다. 이 과정은 텍스쳐링 단계에서 진행할 수도 있지만, 대부분 조명이 적용되는 상태에서 진행합니다. 쉐이딩은 조명과 랜더러의 영향을 받기 때문입니다.

Arnold for Maya User Guide, Arnold for Maya User Guide

FX

이펙트는 특수효과처럼 이해하기 쉽지만, 마야에서는 모델링이나, 애니메이션으로 표현하기 어려운 것을 만들어내는 과정이라고 볼 수 있습니다. 불이나 물과 같은 자연물부터, 사람의 머리카락이나 의상을 표현하는 것입니다. 이 과정은 랜더링 전에 진행되기도 하고, 랜더링이 끝난 이후에 합성으로 처리되기도 합니다. 또한 캐릭터의 리깅이나, 애니메이션 과정에서 진행될 수도 있습니다. 딱히 정해진 순서 없이, 목적에 따라 사용된다고 할 수 있겠습니다. 마야 내부의 도구 이외에도, 이펙트를 표현하는 외부 플러그인(plug-in)이 많이 있습니다.

참고로, 마야 기초 연재에서는 이펙트 과정을 다루지 않습니다.

Introducing Bifrost for Maya(Autodesk, 2019)

Rendering

랜더링은 앞서 진행했던 모든 과정들을 하나의 장면에 담아 출력하는 것입니다. 모델링, 텍스쳐, 리깅, 애니메이션, 그리고 설정된 조명 등을 계산해서 하나의 이미지로 출력합니다. 이러한 계산을 담당하는 것을 랜더러(renderer)라고 합니다.

랜더러는 다양한 회사의, 다양한 랜더러 중에서 선택해서 사용하게 됩니다. 랜더러에 따라, 최종 출력물의 결과가 다르며, 계산 시간도 다른 경우가 있습니다. 랜더러마다 각각의 특징과 장점이 있으므로, 작업을 진행하기 전에 랜더러를 결정해 놓는 것이 좋습니다.

Arnold for Maya User Guide, Arnold for Maya User Guide

마야는 아놀드(Arnold) 랜더러를 기본 탑재하고 있습니다. 아놀드 랜더러는 상업 영화나 애니메이션에서도 사용되는 랜더러입니다.

모든 과정은 연결되어 있습니다

마야의 워크플로우에 대해 간략하게 알아보았습니다. 마야를 이용해, 혼자서 프로젝트를 진행하게 된다면, 위의 과정대로 진행하게 될 것입니다. 그러나, 각 과정마다 알아야 하는 도구들이 많고, 높은 전문성을 요구합니다. 그래서, 산업 현장에서는 각 단계 별로 부서가 나뉘어지게 되고, 협업을 통해 효율을 높이려고 합니다. 그러나, 마야를 배워나가는 단계에서는, 하나의 과정만 깊게 알아가는 것보다, 모든 과정을 경험해 보는 것이 좋습니다. 모든 과정이 연결되어, 서로 영향을 끼치기 때문에, 더 깊은 이해를 할 수가 있게 됩니다.

0 Comments

Submit a Comment

이름이 없으면 익명으로 표시됩니다