-
최초 입문 5강 part 2 (2023.1.11)STUDY: TWA후디니 랭글러 2기 Beginner 2023. 1. 12. 00:57
논리를 이해하기
애니메이션(키프레임 & no 키프레임)
초침이 끊임없이 움직이는 시계 만들기 그리고 똑딱똑딱 움직이는 시계 이론
똑딱똑딱 움직이는 시계, 디테일에 대한 이론
Attribute VOP, Attribute Wrangle 기본이해와 비교
똑딱거리는 시계 이론 마무리 그리고 실습
VEX
후디니에서 수학을 알아야하는 이유: 램프 만들기
램프 만들기 아이디어, if A와 B가 같을 때
If A와 B가 다를 때, 램프 컨셉 다지기
램프 뼈대 만들기
램프 면 작업하기
FX와 IK에 대하여
과제:
끊임없이 움직이는 시계
-시침이 360도 움직일 때, 분침은 60/360, 6도만큼 움직인다.
똑딱거리는 시계
- 초침의 반동까지 묘사하기
램프 만들기
-좌표 값은 base와 target에만 입력
-target이 멀어질수록 head의 관심이 줄어든다.
-target이 가까우면 일정 거리를 두고 비춘다.
5강 part 2
시계 시스템 외부 모델링에 적용하기
- CLOCK_LINE Geometry를 나와서 네트워크뷰에 새로운 FBX_CLOCK Geometry 생성
- File 노드: 외부에서 FBX 모델링을 불러오기
- (0, 0, 0)로 보정
$CEX, $CEY, $CEZ: 정중앙(0, 0, 0)에서 오브젝트까지의 거리
- Transform 노드에 연결
-[Transform] – [Translate: x, y, z값]$CEX, $CEY, $CEZ 수식 앞에 마이너스(-)를 붙여준다면 오브젝트가 위치해 있는 좌표에서 그 거리만큼 다시 돌아온다.
- Transform 노드 연결하여 크기 줄이기
단축키 F: 한번에 오브젝트 찾기
- Null 노드를 연결하고 네이밍: RESIZE
- 오브젝트를 분리하여 필요한 부분만 활용
- Select 모드에서 3D Connected Geometry
- 시계 바디를 선택하고 Scene View 내에서 [Tab] – [Blast: ✅Delete Non Selected]
- 초침, 분침, 시침, 캡, 인덱스 분리
- Merge 노드로 시계침을 묶고 [Transform] – [Rotate: z값]을 이용해 0:00:00 으로 만들어주기(Front View에서 위치 확인)
- CLOCK_LINE에 있던 CLOCK_CONTROL 가져오기
- 초침, 분침, 시침에 새로운 Transform 노드를 연결하고, 필요없는 파라미터 잠그기
- [CLOCK_CONTROL] - [RESULT]의 파이널 파라미터에서 Copy Parameter ➡ Rotation: z값에 Paste Relative References ➡ 수식 앞에 마이너스(-)
- Merge 노드에 나머지를 연결하고 애니메이션 확인 (시계침을 잘 보기 위해 바디, 캡, 인덱스에 임의의 색 지정)
01시계 모델링.FBX와 CLOCK_CONTROL 연결 똑딱 거리는 시계 만들기 (Ticking Style)
- 똑딱거리는 시계의 그래프는 다음과 같다.
+1초가 되기 전까지 시계침 위치(각도)의 변화는 없다 y = ax+b
F_S = (S x Frame) + S_S
프레임이 증가할 때마다 바뀌는 시계침 위치(각도) Frame = R_SF x COUNT + 숫자(R_SF보다 작은 숫자)
예시) 30 = 24 x 1 +6
01Integer 속성이 Float 속성으로 바뀔 때 01Frame이 127일 때 예시(값은 5.291) 프레임을 초단위로 나타내기 위해 T로 치환
Frame/S_SF = T T = COUNT + deci (소수점) -> 1분 30초 = 1.5분
Frame 숫자에 따른 T값, COUNT 값, DECI 값 Frame에 따른 COUNT 그래프, DECI 그래프, T 그래프 기존 CLOCK_CONTROL에 ADVANCED_MOTION 파라미터 추가
T = Frame / R_SF
COUNT = floor(T)
DECI = T - COUNT
Expression Functions: 기능(숫자)
floor(숫자정보 또는 변수)
Integer 속성인 floor( ) floor(t) 그래프 SideFX: Expression Functions 기능을 한데 모아 놓은 라이브러리
접근 방법. 1개의 input functions
- sin( )
- cos( )
- rand( ): 랜덤 숫자
- floor( )
- frac( ) : 나머지 값
- round( ): 근사 값
ch( )도 하나의 input을 받는 function 접근 방법. 2개의 input functions
- pow( ): pow(base 밑수, exponent 지수)
pow( )의 input - sqrt( ): 루트값을 구하는
- distance( ): vector의 거리를 알기 위한
- length( )
- point( ): 매우 유용한 function으로 input의 개수가 많지만 하나의 값을 내보낸다.
여러개의 input이 1개의 value값을 얻는다 과제: 똑딱거리는 시계와 초침의 반동을 묘사하기
T = Frame / R_SF
COUNT = floor(T)
DECI = T - COUNT
파라미터에 수식 입력 - 2초가 되기 전까지 1초에 머물러 있어야 한다.
- 최종 초 시간(각도)의 소수점 이하를 지워야한다.. 이게 맞나…
- 1초/24프레임 했을 때 소수점 이하 = DECI
Ticking CLOCK!! 초침에 반동을 주는 것은 실패했다.. 이것도 expression functions을 활용하는 것일까?!
'STUDY: TWA후디니 랭글러 2기 Beginner' 카테고리의 다른 글
최초 입문 6강 part 1 (2023.1.16) (1) 2023.01.17 최초 입문 5강 part 3 (2023.1.12) (0) 2023.01.13 최초 입문 5강 part 1 (2023.1.10) (0) 2023.01.10 최초 입문 4강 (2023.1.9) (0) 2023.01.10 최초 입문 3강 part 3 (2023.1.6) (0) 2023.01.07