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

 

마우스로 움켜쥘 수 있는 상호작용을 위해 BPI_Grab 인터페이스를 만든다.

 

 

GrabObject, ReleaseObject 인터페이스 함수를 만든다.

 

 

Project Settings - Engine - Input - Action Mappings에서 마우스 좌클릭 InputAction을 추가한다.

 

 

Character Blueprint Class에서 InputAction LMB의 Pressed 이벤트를 처리한다.

라인 트레이스는 전에 만들어 두었던 함수를 재사용한다.

 

 

BP_PhysicsDoor에 BPI_Brab 인터페이스를 추가한다.

 

 

GrabObject 함수를 구현한다.

 

좌클릭을 누르면 플레이어 움직임과 시야 조정을 멈추도록 한다.

  • Set Ignore Look Input: 플레이어 컨트롤러에서 시야에 관련된 입력을 무시할지 설정한다.
    - New Look Input: 활성화
  • Enable Input: 플레이어 컨트롤러의 Input Stack에 현재 액터를 Push하여 Input을 받을 수 있도록 한다.

 

 

MoveDoor라는 Custom Event를 생성하고 LookRight InputAxis의 값을 60%만큼  Amount를 통해 받는다.

 

 

MoveDoor 이벤트를 구현한다.

 

Amount에 내적을 곱해주는 이유는 전과 마찬가지로 문이 열리는 방향을 플레이어의 위치에 따라 바꾸기 위해서이다.

내적은 전에 문의 방향을 결정했던 부분에서 복사한다.

 

두 회전을 더하기 위해 Combine Rotators를 사용한다.

 

 

Character Blueprint Class에서 LMB InputAction의 Released 이벤트를 처리한다.


SET 에 아무것도 연결 하지 않하면 NULL로 지정된다.

 

 

BP_PhysicsDoor에서 ReleaseObject 인터페이스 함수를 구현한다.

 

Enable Movement가 아니라 Set Movement Mode인 이유는 전 상태가 어떤 모드였는지 알 수 없기 때문이다.

 

Reset Ignore Look InputL 플레이어 컨트롤러의 시야에 관련된 입력 무시 설정을 초기화한다.

Disable Input: 플레이어 컨트롤러의 Input Stack에서 현재 액터를 Pop하여 더 이상 입력을 받지 않도록 한다.

 

 

마우스로 조작 가능한 문을 완성했다.

 

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

손전등 만들기  (0) 2023.01.27
어두운 배경 제작  (0) 2023.01.27
밀어서 여는 문 만들기  (0) 2023.01.26
양쪽 문 만들기  (0) 2023.01.26
문 만들기  (0) 2023.01.25
profile

Make Unreal REAL.

@diesuki4

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

검색 태그