본문 바로가기

강동새싹언리얼수업/언리얼

VR수업 VRPawn 이용하기

실습다트만들기

http://naver.me/GkkVvzTH

 

Dart

onPlex님이 공유한 폴더를 확인하세요.

mybox.naver.com

StaticMeshComponent를 부모로 RemoteGrabComponent를 만든다

StaticMesh를 SM_Arrows를 넣는다.

변수들을 만든다. IgnoreActors는 배열로, IsDetecting은 컴파일후 True로 한다

Tick뒤에 라인 Trace를 구현하자.

Hit된 Actor가 GrabComponent를 가지고 있다면. IgnoreActors배열에 추가해준다. Unique로 해주는게 좋을듯 하다.

컨트롤러와 잡을 물체와의 거리가 50이상 떨어져 있다면 DetectedTarget에 설정해준다. Get Detected Target노드위를 우클릭하 ConvertToValidatedGet으로 변환하면 아래와 같이 나온

자기자신과 현재 GrabComponent와 이전의 GrabComponent의 위치 3개를 얻어 온다

현재 HandController에서 현재 Hit된 GrabComponent와 이전의 것 사이의 거리를 비교한다.

Brach노드를 맨뒤에 추가하고 앞쪽의  Detected Target의 IsValid를 끌어다 연결한다. >와Condition을 연결해준다. 이전이 크면 유효하다.

노드끝에 SET Detected Target노드를 추가해주고 Hit된 GrabComponent를 설정해준다.

GrabComponent가 없는 컴포넌트라면 다시 LineTrace로 돌아감

거리가 가까운 경우에도 돌아감

이전 GrabComponent보다 가까운 경우에도 돌아간다.

Detected Target을 Set한 후에도 LineTrace로 리턴한다.

Grab이라는 함수를 만든다. In/Out 변수와 GrabComp라는 로컬변수를 만든다

이전 검출된 GrabComponent를 Seting해준다. isDetecting도 false로 만들어준다.

Owner객체를 얻어와 위치를 컨르롤러의 위치로 만들어준다.

Trace Hit가 false일때 충돌하 객체가 없을때

디버그라인을 그려준다. 색깔과 라인두께를 설정해준

VRPawn에 붙여준

VRPawn블루프린트에 추가해준다.

 

 왼속 오른손 동일

 

'강동새싹언리얼수업 > 언리얼' 카테고리의 다른 글

VR 다트게임 위젯 만들기  (0) 2023.12.21
231220 VR수업  (0) 2023.12.20
VR C++캐릭터 만들기 정리  (1) 2023.12.18
231218 VRPawn 복제 안움직이는 이  (0) 2023.12.18
VRPawn 따라하기  (1) 2023.12.18