본 시리즈는 유튜브 Lusiogenic 채널의 콘텐츠를 원작자의 동의하에 재가공 한 것입니다.
본 포스팅은 아래 영상을 참고하였습니다.
# 주제 소개
지렛대
이번 시간의 주제는 지렛대입니다.
#구현
1. 액터 컴포넌트 구성
Static Mesh Component 두 개와 Physics Constraint Component 한 개로 구성합니다. 화면에서 Base의 메시는 StarterContent에 포함된 Shape_QuadPyramid를 사용했습니다.
Physics Constraint Component의 위치는 보드와 베이스가 만나는 곳입니다. (또는 베이스와 똑같은 위치) 이곳이 받침점이 됩니다. 양 끝은 힘점과 작용점입니다.
팁. Physics Constraint Component의 스케일을 키워주면 회전각을 쉽게 확인할 수 있습니다.
2. 보드 물리 시뮬레이션 활성화
당연히 물리 작용을 받을 Board 컴포넌트는 시뮬레이션 활성화 옵션을 켜주어야겠죠?
3. 피직스 컨스트레인트 설정
먼저 Board와 Base를 연결해줍니다.
두 컴포넌트 사이의 간섭을 없애기 위해 Disable Collision 설정도 켜줍니다.
스프링보드와 마찬가지로 Swing 2 Motion만 허용해 줍니다. 바닥에 두고 사용한다면 Free 또는 Limited 둘 다 괜찮습니다.
Limited 로 설정했다면 Limit 각도 설정합니다. 뷰포트를 보면서 적당한 값을 찾습니다.
Drive Mode는 Twist and Swing으로 설정합니다. Angular Limit을 걸었기 때문에 SLERP는 사용하지 못합니다. Target Orientation은 힘을 받은 후에 되돌아가고자 하는 '지점'입니다. 위의 경우에는 '원점'으로 돌아가려고 합니다. Target Velocity는 힘을 받은 후에 되돌아가고자 하는 '속도'입니다. 위의 경우에는 '정지'하려는 속성을 띄게됩니다. Strength는 되돌아 가려는 힘의 세기 입니다.
4. 보드 컴포넌트의 슬립 패밀리(Sleep Family) 설정
물리 시뮬레이션을 하는 물체가 운동을 멈췄을 때 Sleep 상태로 빠지게 됩니다. 계속 깨어있으면 컴퓨터 자원낭비가 발생하기 때문입니다. 얼마나 빨리 Sleep 상태로 바꾸어줄 것인지를 설정할 수 있습니다.
Normal, Sensitivy, Custom이 있습니다. Normal이 Sensitive 보다 빨리 Sleep 상태로 들어갑니다. Custom은 말 그대로 사용자가 임의로 민감도를 정할 수 있는 옵션입니다.
Custom 옵션일 때, Custom Sleep Threshold Multiplier 값을 조절하면 원하는 타이밍에 맞춰 Sleep 상태에 빠지게 할 수 있습니다. 값을 0.0으로 설정하면 절대 Sleep상태가 되지 않습니다.
Sleep의 반대는 Wake입니다. 물리 시뮬레이션이 가능한(Sleep과 Wake 상태를 가질 수 있는) 컴포넌트들은 해당 상태에 돌입했을 때 이벤트를 발생시킵니다.
이벤트를 발생시키기 위해서는 해당 컴포넌트의 Generate Wake Events 옵션을 활성화 해줍니다.
5. 테스트
# 코멘트
어드벤처, 퍼즐, 플랫포머 등의 게임에서 다양한 장치에 활용할 수 있습니다. 함정, 비밀 문 등에 적합합니다.
댓글, 피드백, 공감은 블로그 운영에 큰 힘이 됩니다.
'비현실 연구소 > [1층]물리학 실험실' 카테고리의 다른 글
Lusiogenic: 레버 스위치 (0) | 2020.10.29 |
---|---|
Lusiogenic: 프로펠러 (0) | 2020.10.29 |
Lusiogenic: 스프링보드 (0) | 2020.10.28 |
Lusiogenic: 중력 마우스 (0) | 2020.10.28 |
Lusiogenic: 시리즈 소개 (0) | 2020.10.28 |