회원 로그인
|
Expression 이해
Expression이 set driven key, connetion과 다른 점은 여러 인자를 여러개 조정할 수 있다는 것이다.
1. 오브젝트와 콘트롤러이다.
2. 오브젝트를 선택, TranslateY를 클릭 후 마우스 우측 버튼을 클릭하여 Expressions를 클릭한다.
3. Object와 Attribute를 선택하고, 아래 Expression에
object.translateY = control.translateY를 입력하고, Edit 버튼을 클릭한다.
* 대소문자를 구분해야 한다.
4. 그러면 오브젝트의 translateY에 보라색으로 변하여 expression이 적용됐다는 것을 알 수 있다.
5. 이제 컨트롤을 선택한 후 y축으로 이동해 보면, 컨트롤이 이동한 만큼 오브젝트가 이동하는 것을 알 수 있다.
* 이때 y축으로만 적용되어 있어서 컨트롤이 x,z축으로 이동하면 오브젝트는 이동하지 않는다.
6. 이제 다시 오브젝트의 y축 expression을 열고, expression 뒤에 /2를 입력하면, 컨트롤의 이동의 반만큼 오브젝트가 이동한다.
* *(곱하기) 연산자도 가능한다.
7. 컨트롤의 limit를 넣어 다른 방향으로 이동하지 않도록 해보기도 한다.
* channel의 lock을 하는 것 보다 효율적이다. lock을 걸게 되면 여러가지 문제점(수정할 때의 불편, lock으로 인해 생기는 경고나 에러)을 낳는다.
* Expression - clamp
cf) 적용값이 아무리 높아도 조절자의 값이상으로 가지 않는다.
ex)
1. 오브젝트와 콘트롤러이다.
2. 오브젝트를 선택, TranslateY를 클릭 후 마우스 우측 버튼을 클릭하여 Expressions를 클릭한다.
3. Object와 Attribute를 선택하고, 아래 Expression에
object.translateY = control.translateY를 입력하고, Edit 버튼을 클릭한다.
* 대소문자를 구분해야 한다.
4. 그러면 오브젝트의 translateY에 보라색으로 변하여 expression이 적용됐다는 것을 알 수 있다.
5. 이제 컨트롤을 선택한 후 y축으로 이동해 보면, 컨트롤이 이동한 만큼 오브젝트가 이동하는 것을 알 수 있다.
* 이때 y축으로만 적용되어 있어서 컨트롤이 x,z축으로 이동하면 오브젝트는 이동하지 않는다.
6. 이제 다시 오브젝트의 y축 expression을 열고, expression 뒤에 /2를 입력하면, 컨트롤의 이동의 반만큼 오브젝트가 이동한다.
* *(곱하기) 연산자도 가능한다.
7. 컨트롤의 limit를 넣어 다른 방향으로 이동하지 않도록 해보기도 한다.
* channel의 lock을 하는 것 보다 효율적이다. lock을 걸게 되면 여러가지 문제점(수정할 때의 불편, lock으로 인해 생기는 경고나 에러)을 낳는다.
* Expression - clamp
object.translateY = clamp(0,1,control.translateY);앞 0은 초기값, 뒤 1은 적용값
cf) 적용값이 아무리 높아도 조절자의 값이상으로 가지 않는다.
object.translateY = clamp(0,1,control.translateY)*2;
ex)
// object와 control이 1:1로 이동 object.translateY = control.translateY; // control이 Y축으로 이동할 때 object가 Y축으로 1만큼 이동 object.translateY = clamp(0,1,control.translateY); // object Y축 0 위치에서 control이 -Y축으로 이동할 때 object Y축으로 1으로 이동 object.translateY = clamp(0,1,clamp(1,0,control.translateY); // = object.translateY = clamp(1,0,control.translateY);
- expression_understanding.zip (12.7KB) (0)
댓글 0개
| 엮인글 0개
466개(22/24페이지)
번호 | 제목 | 글쓴이 | 조회 | 날짜 |
---|---|---|---|---|
마야 뷰포트 네비게이션 팁 | 푸딩뱃살 | 42651 | 2020.04.06 17:22 | |
Maya 버전 별 Python 버전 | 푸딩뱃살 | 63988 | 2014.01.08 17:59 | |
44 | [Rigging] 공룡 skeleton 구조 | artsone | 2494 | 2007.01.20 13:08 |
43 | [Rigging] 사람 skeleton 구조 | artsOne | 2160 | 2007.01.20 12:59 |
42 | [Rigging] Joint 명칭 (IK Handle) | artsOne | 2230 | 2007.01.20 12:48 |
41 | [Base] 채널 박스 색상 | artsone | 1812 | 2007.01.17 17:21 |
40 | [Rigging] KB Card 보아편 Rybon Set-up | artsone | 2891 | 2007.01.06 21:34 |
39 | [Rendering] Polygon UVs - Planar Mapping | artsone | 2105 | 2006.12.29 14:32 |
38 | [Modeling] [스크랩] BlandShape을 위한 모델링 #1 | artsone | 2024 | 2006.12.29 10:54 |
37 | [Script] Expreesion - 이미 Rotate 값이 들어간 오브젝트들 일정하게 회전시키기 | artsone | 1790 | 2006.12.28 15:07 |
36 | [Base] pivot을 rotate 설정하기 | artsone | 2365 | 2006.12.27 00:22 |
35 | [Base] pivot center에 위치 옮기기 | artsone | 1950 | 2006.12.27 00:15 |
34 | [Base] Quick Select Set | artsone | 2423 | 2006.12.22 01:33 |
33 | [Script] MEL - textFieldGrp 기본 | artsone | 2784 | 2006.12.21 16:18 |
32 | [Script] MEL - columnLayout 기본 | artsone | 2625 | 2006.12.21 15:59 |
31 | [Script] Maya Prompt | artsone | 2927 | 2006.12.13 13:52 |
>> | [Script] Expression 이해 | artsone | 2217 | 2006.12.07 17:01 |
29 | [Base] X-Ray 단축키 설정 | artsone | 2630 | 2006.12.07 15:07 |
28 | [Animation] 립싱크를 하기 위한 Sound 넣기 | artsone | 1775 | 2006.12.06 11:33 |
27 | [Animation] eyes(눈) Constrain | artsone | 1760 | 2006.11.28 00:42 |
26 | [Rigging] Blend Shape | artsone | 2456 | 2006.11.24 01:26 |
25 | [Rigging] Multiply Divide를 이용한 follow through 하기 (invers) | artsone | 1955 | 2006.11.23 15:33 |