Make Unreal REAL.
article thumbnail
Unreal Engine: Ultimate Survival Horror Course

 

메쉬를 임포트한다.

 


풀레이어가 숨을 수 있는 액터인 BP_HideActor를 생성한다.

 


플레이어를 이동시킬 목적지와 그때의 방향을 나타낼 HidingPosition, ExitPosition Arrow 컴토넌트를 생성한다.

 


BP_HideActor의 자식으로 BP_HideACtor_Locker를 생성한다.

 


L1_Character의 캡슐의 Capsule Half Height와 BP_HideActor_Locker의 Arrow들의 Z 좌표를 같게 설정한다.

 


BP_HideActor에 BPI_Interaction 인터페이스를 추가한다.

 

 

BeginPlay에서 참조 변수들에 값을 설정한다.

 


Interact 인터페이스를 구현한다.

 

Set Timer by Event 노드로 이벤트를 호출할 수 있고 연결 선으로 이벤트 노드에 연결할 수 있다.

  • Set Timer by Function Name에도 이벤트 이름을 쓸 수 있다.
  • 반환 값을 Clear and Invalidate Timer by Handle 노드에 전달하여 타이머를 중지시킬 수 있다.


Get World Delta Seconds 노드로 DeltaTime을 가져올 수 있다.

 

 

들어갈 때는 숨을 수 있는 오브젝트 안으로 플레이어를 이동시키고, 나올 때는 바깥 지점으로 이동시키는 MoveCharacter 이벤트를 구현한다.


VInterp to Constant노드로 Current 벡터에서 Target 벡터까지 Delta Time당 Interp Speed로 움직이게 할 수 있다.

  • VInterp to 노드는 시작과 끝에서 값을 Smooth 해준다.


Equal은 Error Tolerance를 설정해 오차 범위에 들면 같다고 처리하고 Equal Exactly은 정확하게 같은 값만 같다고 처리한다.

Set Timer by Event에서 반환된 Timer Handle을 Clear and Invalidate Timer by Handle 노드에 전달하여 타이머를 중지시킬 수 있다.

 


이동이 끝났을 때 호출되는 FinishedMoving 이벤트와 FinishedMovingED 이벤트 디스패처를 추가한다.

 

 

BP_HideActor_Locker에서 BeginPlay에 FinishedMovingED 이벤트 디스패처에 이벤트를 할당한다.

 


Interact 이벤트를 구현한다.


Add Call to parent function을 클릭해 부모 호출과의 순서를 조정할 수 있다.

  • 조정하지 않으면 부모의 함수가 기본적으로 가장 먼저 호출된다.


Delay 노드를 이용해서 지연을 줄 수 있다.

 


들어가고 나간 후 문을 닫을 CloseDoor 이벤트를 생성한다.

 

 

성공적으로 숨기 기능을 구현했다.

 

'Unreal Engine > Ultimate Survival Horror Course' 카테고리의 다른 글

자물쇠 미니게임 만들기  (0) 2023.02.13
자물쇠 열기 기능 구현  (0) 2023.02.12
체력에 따른 피 효과 적용  (0) 2023.02.10
체력바 UI 만들기  (0) 2023.02.10
플레이어 체력 구현  (0) 2023.02.09
profile

Make Unreal REAL.

@diesuki4

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!

검색 태그