회원 로그인
|
리깅에 사용되는 Utility Node - plusMinusAverage Node
리깅에 사용되는 Utility Node
1. multiplyDivide Node
2. plusMinusAverage Node
3. Condition Node
2. plusMinusAverage Node
Input Attribute를 더하거나 뺀 값, 평균값을 얻을 수 있는 Node이다.
예를 들면 object의 위치 값을 전부 더하거나 그 차이를 구하고, object 간의 평균 위치를 구할 수 있다.
* 구성
- Input Attribute : Input1D, Input2D, Input3D로 나눠진다.
- Input Attribute에 적용할 Operation(연산자) : 더하기, 빼기, 평균을 구한다.
- Input Attribute를 연산한 값인 Output Attribute : Input Attribute를 연산한 값인 Output Attribute를 가진다.
* Operation
- No Operation : Input Attribute 값을 어떤 변화 없이 Output Attribute에 복사한다.
- Sum : Input 목록에서 각 항목의 값을 더한다. Output = Input1 + Input2 + ... + InputN
- Subtract : Input 목록에서 한 항목과 다른 항복의 차이를 계산한다. Output = Input3D[1] - Input3D[2]
- Average : Input 목록에서 각 항목의 값을 더하고 Input 항목의 수로 그 결과를 나운다. Output = Input1 + Input2 + .... + InputN / N
* Input1D : Input 목록에서 각 항목이 하나의 Attribute로 이루어져 있다.
예) TranslateX
* Input2D : Input 목록에서 각 항목이 두 개의 Attribute로 이루어져 있다.
예) UV coordinates
* Input3D : Input 목록에서 각 항목이 세 개의 Attribute로 이루어져 있다.
예) Translate Attribute Group (TranslateX, TranslateY, TranslateZ)
Color Group (Color R. Color G, Color B)
* plusMinusAverage Node 예제
pSphere와 pCube 이동의 평균에 따라 pCylinder가 이동하는 예제
1. polygon Sphere, polygon Cube, polygon Cylinder를 만든다
2. Mel 커맨드 라인에 createNode plusMinusAverage -n average라고 입력후 Enter를 누른다.
* average 명으로 plusMinusAverage 노드를 만든다.
3. Node가 선택된 상태에서 Ctrl+A키를 눌러 Attribute Editor 창을 열고, Operation에 Average를 선택한다.
4. Connection Editor 창을 열고, Reload Right 버튼을 클릭하여 average Node를 Reload하고, Left에 pSphere1를 Reload한다.
* Window > General Editors > Connection Editor
5. pSphere1의 TranslateX를 클릭, average의 Input 1D를 클릭하여 연결한다. + 아이콘을 클릭하면 Input 1D[0]이 연결되었다.
6. Script Editor 창을 열어 위 History Box에 connectAttr -f pSphere1.translateX average.input1D[0]; 부분을 copy하여 아래 Input Box에 paste한다.
7. connectAttr -f pSphere1.translateX average.input1D[0]; 를 connectAttr -f pCube1.translateX average.input1D[1]; 로 변경하고 숫자키패드에 위치한 Enter키를 눌러 실행한다. Connection Editor 창을 열어 연결하는 것보다 script를 이용해 쉽게 pCube1의 TranslateX를 average의 input1D[1]에 연결하는 것이다.
* Script Editor 메뉴 Command > Execute 클릭하여 script를 실행할 수 있다.
8. Mel 커맨드 라인에 select -r average;를 입력 후 Enter키를 눌러 average Node를 선택하고, Connection Editor 창을 열어 average를 Left, pCylinder1를 Right에 Reload 한후 average의 Output 1D와 pCylinder1의 TranslateX를 연결한다.
10. pSphere1와 pCube1를 move tool로 7unit 만큼 이동하면 pCylinder1가 3.5unit만큼 이동하고, pCube1를 3unit 만큼 이동하면 pCylinder1가 5unit 만큼 이동된걸 알 수 있다.
즉, pSphere1의 7과 pCube1의 3의 합 10에서 2개의 object이므로 평균값으로 2로 나누어 pCylinder1에 5가 적용하게 된다.
* Node 구성
─────────────────────────────────────────────────────
ref. Book - Cartoon Character Modeling & Rigging Maya8 Reality 저자 이성근 (Digital Books) page.209
1. multiplyDivide Node
2. plusMinusAverage Node
3. Condition Node
2. plusMinusAverage Node
Input Attribute를 더하거나 뺀 값, 평균값을 얻을 수 있는 Node이다.
예를 들면 object의 위치 값을 전부 더하거나 그 차이를 구하고, object 간의 평균 위치를 구할 수 있다.
* 구성
- Input Attribute : Input1D, Input2D, Input3D로 나눠진다.
- Input Attribute에 적용할 Operation(연산자) : 더하기, 빼기, 평균을 구한다.
- Input Attribute를 연산한 값인 Output Attribute : Input Attribute를 연산한 값인 Output Attribute를 가진다.
* Operation
- No Operation : Input Attribute 값을 어떤 변화 없이 Output Attribute에 복사한다.
- Sum : Input 목록에서 각 항목의 값을 더한다. Output = Input1 + Input2 + ... + InputN
- Subtract : Input 목록에서 한 항목과 다른 항복의 차이를 계산한다. Output = Input3D[1] - Input3D[2]
- Average : Input 목록에서 각 항목의 값을 더하고 Input 항목의 수로 그 결과를 나운다. Output = Input1 + Input2 + .... + InputN / N
* Input1D : Input 목록에서 각 항목이 하나의 Attribute로 이루어져 있다.
예) TranslateX
* Input2D : Input 목록에서 각 항목이 두 개의 Attribute로 이루어져 있다.
예) UV coordinates
* Input3D : Input 목록에서 각 항목이 세 개의 Attribute로 이루어져 있다.
예) Translate Attribute Group (TranslateX, TranslateY, TranslateZ)
Color Group (Color R. Color G, Color B)
* plusMinusAverage Node 예제
pSphere와 pCube 이동의 평균에 따라 pCylinder가 이동하는 예제
1. polygon Sphere, polygon Cube, polygon Cylinder를 만든다
2. Mel 커맨드 라인에 createNode plusMinusAverage -n average라고 입력후 Enter를 누른다.
* average 명으로 plusMinusAverage 노드를 만든다.
3. Node가 선택된 상태에서 Ctrl+A키를 눌러 Attribute Editor 창을 열고, Operation에 Average를 선택한다.
4. Connection Editor 창을 열고, Reload Right 버튼을 클릭하여 average Node를 Reload하고, Left에 pSphere1를 Reload한다.
* Window > General Editors > Connection Editor
5. pSphere1의 TranslateX를 클릭, average의 Input 1D를 클릭하여 연결한다. + 아이콘을 클릭하면 Input 1D[0]이 연결되었다.
6. Script Editor 창을 열어 위 History Box에 connectAttr -f pSphere1.translateX average.input1D[0]; 부분을 copy하여 아래 Input Box에 paste한다.
7. connectAttr -f pSphere1.translateX average.input1D[0]; 를 connectAttr -f pCube1.translateX average.input1D[1]; 로 변경하고 숫자키패드에 위치한 Enter키를 눌러 실행한다. Connection Editor 창을 열어 연결하는 것보다 script를 이용해 쉽게 pCube1의 TranslateX를 average의 input1D[1]에 연결하는 것이다.
* Script Editor 메뉴 Command > Execute 클릭하여 script를 실행할 수 있다.
8. Mel 커맨드 라인에 select -r average;를 입력 후 Enter키를 눌러 average Node를 선택하고, Connection Editor 창을 열어 average를 Left, pCylinder1를 Right에 Reload 한후 average의 Output 1D와 pCylinder1의 TranslateX를 연결한다.
10. pSphere1와 pCube1를 move tool로 7unit 만큼 이동하면 pCylinder1가 3.5unit만큼 이동하고, pCube1를 3unit 만큼 이동하면 pCylinder1가 5unit 만큼 이동된걸 알 수 있다.
즉, pSphere1의 7과 pCube1의 3의 합 10에서 2개의 object이므로 평균값으로 2로 나누어 pCylinder1에 5가 적용하게 된다.
* Node 구성
─────────────────────────────────────────────────────
ref. Book - Cartoon Character Modeling & Rigging Maya8 Reality 저자 이성근 (Digital Books) page.209
- plusMinusAverage.maya8.5.r1.mb (55.1KB) (0)
댓글 0개
| 엮인글 0개
466개(21/24페이지)
번호 | 제목 | 글쓴이 | 조회 | 날짜 |
---|---|---|---|---|
마야 뷰포트 네비게이션 팁 | 푸딩뱃살 | 42383 | 2020.04.06 17:22 | |
Maya 버전 별 Python 버전 | 푸딩뱃살 | 63695 | 2014.01.08 17:59 | |
>> | [Script] 리깅에 사용되는 Utility Node - plusMinusAverage Node | artsone | 2425 | 2007.11.13 02:54 |
63 | [Script] 리깅에 사용되는 Utility Node - multiplyDivide Node | artsone | 2515 | 2007.11.13 02:54 |
62 | [Base] File / Project / Set | artsone | 2289 | 2007.10.13 12:18 |
61 | [FX] softbody 예제 | artsone | 2190 | 2007.06.12 15:34 |
60 | [Base] [스크랩] Render size 참고 | artsone | 2424 | 2007.04.30 03:42 |
59 | [Rigging] [스크랩] 인체 및 동물 3D 캐릭터의 Skeleton 셋팅 | artsone | 2682 | 2007.04.18 01:46 |
58 | [Rigging] [스크랩] Maya7 Character Animation Tool | artsone | 4046 | 2007.04.18 01:41 |
57 | [Rigging] [스크랩] Character Rigging (아티산) | artsone | 2599 | 2007.04.18 01:39 |
56 | [Rigging] Eyelash 달기 (이미지는 차후) | artsone | 1521 | 2007.04.13 14:16 |
55 | [Rigging] Character Set | artsone | 2294 | 2007.03.16 17:24 |
54 | [Script] MEL - internalVar | artsone | 3175 | 2007.03.06 21:14 |
53 | [Script] MEL - path 수정을 용이하기 위해 개선한 script | artsone | 3270 | 2007.03.06 19:47 |
52 | [Base] playblast가 중간에 끊겨 완료가 안될 시에 | artsone | 1684 | 2007.02.26 18:33 |
51 | [Base] 하위버젼으로 다운그레이드 하기 (7.0 → 6.0) | artsone | 2301 | 2007.02.21 14:44 |
50 | [Rigging] cluster를 parent 시 오브젝트 깨지는 현상 막기 [2] | artsone | 2226 | 2007.02.13 19:15 |
49 | [Rigging] weight 시 빠진 joint를 Influence 연결하여 사용하기 | artsone | 2759 | 2007.02.13 19:14 |
48 | [Script] MEL - frameLayout | artsOne | 2757 | 2007.02.02 11:47 |
47 | [Script] MEL - modelPanel | artsOne | 2765 | 2007.02.01 14:33 |
46 | [Script] MEL - window | artsOne | 2524 | 2007.02.01 14:21 |
45 | [Rigging] IK Spline Handle | artsone | 2118 | 2007.01.22 10:45 |