본문 바로가기

회사 TIL69

[TIL] 22.12.20 / Key Cover Lerp 구현, LeftDoor 구현 TIL (Today I Learned) 오늘 해야할 것 Strong Box 2단계 Strong Box 4단계 Strong Box 열쇠 돌리기 구현 오늘 한 것 Key Cover Rotate Lerp 구현 - Key Cover가 forward Vector를 중심 축으로 180도까지 Roll. - 근데 Lerp하게 회전하기 - Key Cover가 forward Vector를 중심 축으로 180도까지 Roll. - 일단 터치하면 bool 체크해서 (상태 대용) 회전하게 구현해보기 1. Key Cover의 상태 만들어주기(대기, 회전가능, 회전완료) 2. State2_Key 상태가 되면 Key Cover가 Rotate 된다 3. Rotate는 어떻게? - KeyCover 회전가능 = true; ex. if(Ke.. 2022. 12. 20.
[TIL] 22.12.19 TIL (Today I Learned) 오늘 해야할 것 금고 1단계 마무리하기 키 라커 상태에 따라 움직일 수 있는 범위 조절 금고에서 왼쪽에서 두번째, 세 번째 튀어나온 부분에서는 Rotate 안되게 막기 Stage3 RightDoor 구현하기 오늘 한 것 키 라커 상태에 따라 움직일 수 있는 범위 조절하기 금고에서 왼쪽에서 두, 세번째 튀어나온 부분에서는 Rotate 안되게 막기 -> 실패 Rotate 금지 영역을 만들고 금지 영역에 다다르면 Rotate가 안되게 한다. 정확히 안되는 상황을 정의하면 키 라커 상태가 앞을 바라보고 있을 때 금지 영역에 다다르면 Rotate가 안된다 = 범위로 지정한 70-105도 사이에서 roll이 멈춰있는다. 1. 금지 영역은 어떻게 만들어주지? 이동 범위 제한한 .. 2022. 12. 20.
[TIL] 22.12.16 / 금고 1단계 이동/회전 구현하기 + 제한 주기 TIL (Today I Learned) 오늘 해야할 것 Move 구현 Rotate 구현 Move 코드 비교 & 분석 -> 왜 다르고 뭐가 다르고 대표님은 왜 저렇게 짰을까? ProjectVectorOnToPlane, ProjectVectorOnToVector, ProjectOnTo 오늘 한 것 World 좌표계 기준으로 Move 구현 코드는 내가 짰지만 왜 되는지 잘 모르겠다 -> 함수에 대한 이해가 부족한 것 같다. 아직 그림 맞추기를 하고 있는 것 같다. if (_grabbed == false) return; FVector handPos = _handSocketRef->GetComponentLocation();//world FVector handMoveDir = handPos - _lastHandSo.. 2022. 12. 18.
[TIL] 22.12.15 /World, Local 좌표 이해하기😥, Strong Box 1단계 도전 TIL (Today I Learned) 오늘 해야할 것 Wheel, Lever 이해 + 설명 Strong Box 안보고 설계부터 짜서 기믹 하나 만들기 오늘 한 것 Wheel, Lever 이해 + 설명 Lever에 Projection 추가 void AR1LeverBase::RotateLever() { if (_handSocketRef == nullptr) return; //Projection 추가 _handDir = UKismetMathLibrary::ProjectVectorOnToPlane(_handDir, _right); } Strong Box 1단계 구현 목표 열쇠를 잡고 오른쪽이나 왼쪽으로 이동시킬 수 있다. 구현 1. prev hand pos 2. current hand pos - mesh po.. 2022. 12. 16.
[TIL] 22.12.14 / Lever, Drawer, Wheel 구현 TIL (Today I Learned) 오늘 해야할 것 Lever 정확히 이해 Drawer 논리적 사고로 코드 안보고 짜보기 Lever 논리적 사고로 코드 안보고 짜보기 Strong Box 코드 분석 + 어떻게 구현할지 생각해보기 오늘 한 것 Drawer 논리적 사고로 코드 안보고 짜보기 Drawer 목표: 손으로 손잡이를 잡아당기면 서랍이 따라온다. 1. 손의 위치 구하기 2. 물체의 중심 구하기 -> 왜? 물체가 끌려와야 하니까 3. 물체가 끌리는 방향 필요 4. 손이 끄는 방향 필요 5. ideal case: 물체가 끌리는 방향과 손이 끄는 방향이 일치할 때 6. worst case: 강제로 끄는 방향과 끌리는 방향이 같게 하고 싶다. -> Projection FVector _handPos = _h.. 2022. 12. 14.
[TIL] 22.12.13 / Drawer, Wheel 코드 분석 TIL (Today I Learned) 오늘 해야할 것 Strong Box C++로 불러오기 Drawer 안보고 짜보기 Drawer 보고 분석하기 Wheel 보고 분석하기 - 두가지 회전 방법 차이, 왜 못했나? 오늘 한 것 Strong Box C++로 불러오기 Drawer 코드 분석 GetActorUpVector: Get the up (Z) vector (length 1.0) from this Actor, in world space. GetActorForwardVector : Get the forward (X) vector (length 1.0) from this Actor, in world space. GetActorRightVector: Get the right (Y) vector (length 1.. 2022. 12. 14.