전체 글329

[Maya] Mash (11) -Mesh ID 노드 - 2- Mash(11) -Mesh ID 노드[2] 지난 포스팅에 이어 Mesh ID노드 (2)를 진행해보자. Mesh ID노드를 추가하고, distribute에서 initial state설정까지 마치고, signal노드를 추가했었다. 1 배경 MASH추가 글씨 주변에 날아다닐 수 있는 폴리곤을 import하고, MASH를 적용한다. 그리고 signal노드를 추가해서, 노이즈를 설정한다. 2 merge노드 추가 글씨에 적용된 MASH를 선택하고, merge노드를 추가한다. merge노드는 특정 MASH 오브젝트들을 서로 결합하는 기능을 한다. merge노드의 child Node에 MASH2를 드래그로 넣어준다. 글자들이 모두 틀니에 종속된다. random strength 수치를 1로 설정하면, 아무런 영향을 받지..
[Maya] Mash (10) -Mesh ID 노드 - 1- Mash(10) -Mesh ID 노드[1] Mesh ID노드는 여러개의 폴리곤 덩어리들로 결합된 그룹이나 개체를 개별적으로 모션그래픽할 때 유용하다. 광고에서 어떠한 제품이 순차적으로 완성되는 형태가 대표적인 Mesh ID의 주용도이다. 1 텍스트 생성하기 Type 기능으로 텍스트를 생성해보자. 글씨의 bevel을 넣어서 외곽선을 부드럽게 만든다. seperate 기능으로 글씨를 모두 떨어뜨려 놓는다. 글씨 조각들은 모두 센터피봇으로 중심축을 설정한다. 만일 Freeze가 돼 있다면, translate값이 모두 제로세팅이 돼 있다. 하지만 Attribute창을 보면, 실제 local과 world space값은 다르다. (아래 사진 참고) 이럴 경우, modify -> bake pivot을 실행해주면 위치..
[Maya] Mash (9) -Flight 노드 -"초현실 장면 만들기" Mash (9) -Flight 노드 - 공포 영화를 보면, 하늘에 새떼들이 날아다니거나 먼지들이 흩날리는 연출이 자주 사용된다. MASH가 없다면, 다이나믹스 파티클을 활용해야 하기 때문에 초보자들은 초현실적인 공포영화 장면을 연출하기 힘들다. 하지만 MASH를 활용한다면, 버튼 몇번으로도 복잡한 장면을 충분히 만들 수 있다. 사물이 흩날리는 복잡한 장면을 간단하게 만들 수 있는 노드로는 'flight노드'가 있다. 1 grid노드 생성원뿔모양을 만들고, grid 모드로 채워준다. 2 signal 노이즈 노드 추가signal노드를 추가하고, 노이즈를 설정해준다. 3 Flight 노드 추가Flight노드는 간단하다. Flight노드를 바로 추가해보자. 원본 원뿔크기를 줄이고, 타임라인에서 play를 클릭한..
[Maya] Mash (8) 오디오 노드 -2- Mash(8) 오디오 노드 -2- 지난 포스팅에서는 MASH 오디오노드를 전반적으로 알아봤다면, 2편에서는 Grid방식으로 실무에 사용할 만한 수준의 장면을 만들어보자. 1 grid MASH생성linear가 아닌 grid방식으로 distribute를 설정한다. grid방식으로 만든다면, 아래처럼 센터축이 중심에 오도록 할 수 있다. 2 오디오 노드 적용오디오 노드를 바로 적용해보자. 방식은 'spectrum'으로 한다. 3 칼라 지정하기칼라노드를 넣어서 칼라를 지정해준다. 4 strength 맵 지정만일 가장자리로 갈수록 모션이 부드러운 형태를 만드려면, strength map에 ramp텍스처를 넣어서 지정해준다. 램프의 색을 은은하게 검 -> 흰색으로 지정한다. Map projection 방향을 설정해..
[Maya] Mash (7) 오디오 노드 -1- Mash (7) 오디오 노드 -1- 오디오 노드는, 오디오 파형에 따라 자동으로 움직이는 모션을 생성하는 노드이다. 최근 오디오를 CG로 표현하는 작업은 굉장히 쉬워졌다. 가령, 에프터이펙트에서 플러그인을 사용하면 오디오 모션그래픽을 버튼 클릭 몇번으로 쉽게 제작할 수 있다. MASH 역시 최근 추세를 따라가고 있는데, 마치 에펙에서 플러그인 다루듯이 클릭 몇번으로 3D 오디오 파형을 곡선을 연출할 수 있다. 1 『MASH 네트워크 생성』 아래 사진에서는 Distribute설정을 linear모드로 되어 있다. 참고로, Grid에서 y축을 1을 쌓아서 linear형태로 만들어준다면, 원점 아래로 내려가지 않는 MASH를 생성할 수 있다. 2 『오디오 노드 적용』 오디오 노드를 추가해보자. 오디오 파일(wa..
[Maya] Mash(6) curve 노드 Mash(6) curve 노드 이번 포스팅에서는 MASH기능을 활용한 커브를 따라 움직이는 모션그래픽을 만들어보자. 커브를 이용한 애니메이팅에는 대표적으로 motion path를 활용한 기능이 있다. 하지만 모션패스를 활용한다면, 로케이터를 생성하고 parent를 해야하는 번거로움이 발생한다. 모션패스처럼, 간단하면서도 강력한 모션그래픽 효과를 원한다면, MASH가 필요하다. Maya가 밀고있는 MASH를 사용한다면 motion path를 활용할 필요없이 간단하게 커브를 활용한 모션그래픽 기능을 만들 수 있다. 1 『커브 생성』 커브를 생성하는 방법으로는, 나선형 모양의 기본 폴리곤 매시의 edge를 curve로 convert하는 방식이 간편하다. 하지만 직접 커브를 만들어보자. 2 『curve노드 추가..
[Maya] Mash (5) offset 노드 Mash(5) offset 노드 MASH 모션그래픽에서 가장 중요한 노드가 offset노드이다. offset노드는 x,y,z축의 움직임과 회전 및 크기를 설정하는 노드이며, 가장 많이 사용한다. 1『Grid 설정』 그리드 모드에서 cube가 꽉 차도록 설정한다. 2『offset 노드 적용』 MASH노드에 offset노드를 추가한다. offset position, rotation, scale 값으로 위치와 회전 크기를 설정할 수 있다. 3『falloff 활성화』 falloff를 활성화하면, 특정 부위에만 offset영향을 줄 수 있다. falloff를 추가하고, 크기를 조절하면 아래와 같이 offset 적용범위를 설정할 수 있다. falloff를 이동해서 시작점에 가져다 놓는다. 아래 사진에서처럼 fall..
[Maya] Mash (4) strength & visibility 노드 -2- Mash(4) strength & visibility노드 -2- visibility노드 2개로 글씨를 아래와 같이 만들었다면, 모션그래픽 효과를 적용해보자. 물결처럼 글씨가 나타나는 모션그래픽을 만드려면, offset노드와 falloff기능을 생각해볼 수 있다. 1 『falloff 기능 적용하기』 글씨 부분 MASH노드(배경부분도 괜찮음)를 선택해서 falloff을 생성한다. - falloff기능을 적용하면, 아래처럼 falloff 범위내의 부분만 나타난다. - falloff가 지나간 부분이 나타나게 하려면 falloff 설정에서 add타입을 선택해야 한다. (normal은 지나간 부분이 다시 사라짐) falloff를 재사용하려면, 글씨부분의 MASH노드의 falloff탭에 기존 falloff를 드래그해..
[Maya] Mash (3) strength & visibility 노드 -1- Mash(3) visibility노드 지난 포스팅에는 3D painting 툴을 활용하여 글씨를 직접 그렸봤다. 이번에는 아래와 같이 포토샵에서 미리 제작한 흰색과 검은색 이미지를 기본으로, visibility노드를 적용한 글자를 만들어보자. 1『그리드 생성』 distribute 설정에서 Grid type을 만든다. 원본 cube 크기를 0.3~0.6 정도로 작게 만들고, grid 수치를 조절해준다. 아래 설정처럼, 최대한 글씨가 잘 보이도록, 그리드 값을 충분히 크게 설정한다. 2『strength & visibility 노드 적용하기』 strength 또는 visibility노드를 적용해보자. 아래처럼, falloff을 설정하면 falloff이 설정된 부분만 나타난다. 지난 시간의 strength ma..
[모션그래픽 Mash] (2) Random & Signal 노드 설정 Mash(2) Random & Signal 노드 설정 이번 Mash포스팅에는, Mash의 기능과 노드들을 조합한 방식으로 오브젝트들이 옹기종기 모여있는 3D 글씨판을 작업해보자. 1 『Signal or Random노드 적용하기』 먼저 아래처럼 distribute, grid모드를 만든다. 이후 signal이나 random 노드를 적용한다. signal에서 4D Noise나 random이나 효과가 비슷하다. 2 『노이즈 설정하기』 random노드에서 position X,Y,Z값과 Scale, rotation값을 설정해서 최대한 불규칙하게 만든다. 아래 사진에서처럼 random수치를 설정한다. Strength값은, 노드에서 적용한 수치값 적용유무를 설정해준다. strength값이 1일 경우에는 노드의 기능이 ..
[모션그래픽 Mash] (1) Mash Distribute설정 (1) Mash Distribute설정 모션그래픽 제작툴로는 '에프터이펙트'를 가장 먼저 떠올린다. 하지만 2016버전 이후부터 마야가 모션그래픽 기능에 관심을 갖기 시작했다. 3D 제작자라면, 3DMaya에 추가된 'Mash' 기능을 조금 살펴보자마자, 모션그래픽 제작도구 목록에 Maya를 넣어야겠다는 확신을 하지 않을까한다. 1 『Mash 생성』 어떤 폴리곤 오브젝트건 상관없다. 아래처럼 선택을 하고, Animation 매뉴에서 MASH -> create MASH Network를 실행한다. MASH 네트워크 설정에서 Mash or Instance를 선택할 수 있다. (Instance를 선택하면 여러 노드들을 사용할 수 없다는 단점이 있다) 간단한 복사본이 아니라면, Mash를 선택해서 생성을 하자. ..
[Maya] 페이스 리깅(12) 리깅 마무리 페이스 리깅(12) 리깅 마무리 리깅은 시작할 때보다 마무리가 훨씬 중요하다. 리깅 제작자는 작업 전반을 통틀어 항상 애니메이터를 염두에 둬야 한다. 리깅 파일을 받는 애니메이터의 입장에서, 이해할 수 없는 채널이름은 변경해야 하고 불필요한 방향과 회전은 잠금을 설정하는 식의 꼼꼼함이 필요하다. 1 『아웃라이너 정리』 리깅 제작자가 없는 회사의 특징은 '재활용 시스템 부재'에 있다. 리깅을 꼼꼼하게 처리하지 못한 파일들을 열어보면, 대충 fk방식으로 깔끔하지 못하고 지저분하다. 재사용하기 싫은 캐릭터들이 덕지덕지 붙어 있다. 아웃라이너의 왼쪽, 오른쪽 컨트롤러의 이름이 다르고, 심지어 어떤 컨트롤러의 이름은 curve126이라고 돼 있는 경우도 있다. 애니메이팅은 최종 랜더링과 직결되는 작업이다. 애니메..
[Maya] 페이스 리깅(10) wrinkle맵 설정하기 페이스 리깅(10) wrinkle맵 설정하기 wrinkle맵은, 컨트롤러 값에 따라서 주름이 나타나는 맵이다. 전문 프로덕션에서는, 2004년부터 normal맵으로 multiple normal map을 구사해왔다. 이보다 좀더 진보된 방식은 페이스에 조인트를 넣고 다시 wrinkle맵을 컨트롤러와 결합시킨 방법이다. direct 11 방식 + shaderfx 쉐이더를 사용한다면, 실시간으로 wrinkle맵 움직임을 볼 수 있지만, 해당 포스팅에서는 arnold 랜더링에 적합한 노드구조를 사용했다. (유투브에 많음) 1 『주름맵 생성』 눈을 크게 떳을 때, 특정부위의 피부가 밀려나면서 주름이 발생한다. 주름이 잡히는 정도를 실험하는 목적이기 때문에 큰 선들을 만든다. z브러시에서 디스맵을 추출할 때는 ap..
[Maya] 페이스 리깅(9) 코 & 눈 리깅 페이스 리깅(9) 코 & 눈 리깅 눈썹에서 중요한 부분 컨트롤러만 남기고, 나머지는 제거한다. 아래 사진처럼, 미간을 컨트롤할 수 있도록 blend shape과 컨트롤러를 설정한다. 코 컨트롤러는 간단하다. - 생성한 커브를 복사해서 blend shape을 넣어준다. 아래턱 부분은 jaw 조인트(main)에 scale, parent constrain으로 연결한다. (아래사진 참고) 1 『눈알 축 설정』 - 눈알을 돌렸을때 튀어나오지 않도록 축을 설정한다. 제자리에서 회전했을때 그대로 움직이도록 축을 맞춰준다. 조인트를 생성한 후에 아래처럼 main offset을 체크해제한 상태에서 조인트를 parent하면, 눈알 모델링의 축에 조인트가 붙는다. 이후 parent constrain은 삭제한다. 2 『조인트..
[Maya] 페이스 리깅(8) 입 리깅 페이스 리깅(8) 입 리깅 눈 부위의 리깅을 마쳤다면, 입 부분의 리깅을 시작해보자. 1 『입 컨트롤러 생성』 - 입 모양으로 컨트롤러를 생성한다. - 컨트롤러 아래에 8개의 둥근 컨트롤러를 따로 넣는다. (parent구조로 상위 입 모양 구조에 붙인다) - 아래 사진처럼 상위 컨트롤러에 parent를 하자. (no Shape parent구조) 2 『입 Expression 생성』 - 아래 코드에서 mouth_lower_L(R)은 입 하단 컨트롤러 하위에 위치한 왼쪽,오른쪽 컨트롤러이다. M을 붙여서 미들도 만들어준다. 해당 컨트롤러를 움직이면, 매칭하는 조인트가 움직이는데 영향값을 * 0.64정도로 조절해줘서 자연스럽게 움직이도록 설정한다. - 아래처럼 입을 벌리고 나서, 각각 입술의 위치에 해당하는 컨..