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

 

Scene Capture 2D로 촬영할 아이템으로 쓸 BP_Examination 액터를 생성한다.

 


Scene Capture 2D를 월드에 배치한다.

 

 

BP_Examination과 3점 조명을 배치하고 Scene Capture 2D의 자식으로 등록해 고정시킨다.

 


RenderTargets 폴더를 생성한다.


Scene Capture 2D - Scene Capture - Texture Target - Create New Asset - Canvas Render Target을 선택해 ExaminationRenderTarget이라는 이름의 새로운 Render Target을 생성한다.

 


ExaminationRenderTarget을 열어서 해상도를 조정할 수 있다.

 


BP_Examination을 열어 Scene 컴포넌트를 추가하고 Default Scene을 대체해주면 뷰포트의 흰 공이 사라진다.

 


M_Examination 머티리얼을 생성한다.


Material Domain: User Interface

  • UI로 사용할 것이다.

Blend Mode: Translucent

  • 배경을 지울 것이다.

 


콘텐츠 브라우저에서 텍스처를 선택한 상태에서 T+좌클릭을 누르면 Texture Sample 노드를 생성할 수 있다.

 


Opacity = 1 - Alpha이다.

 

 

Scene Capture 2D - Scene Capture - Primitive Render Mode: Use ShowOnly List를 선택해 설정한 액터들만 보이게 설정한다.

 

Show Only Actors에 조사하기 시 띄울 아이템인 BP_Examinatoin만 추가한다.

 


S_ItemData에 ExaminationMesh Static Mesh(Object Reference), ExaminationMeshOffset, CanBeExamined 변수를 추가한다.


BP_InventoryItem_FlashlightBattery와 BP_InventoryItem_DoorKey에 값을 설정한다.

 


조사하기 창으로 띄울 W_Examination 위젯을 생성한다.

 


배경에 블러 효과를 주기 위해 Background Blur 위젯을 추가한다.

  • Blur Strength를 통해 강도를 조절할 수 있다.

 

다른 위젯들의 뒤에 배치하기 위해 ZOrder를 -1로 설정한다.

 


Image 위젯 추가 후 M_Examination을 이미지로 설정한다.

 


조사하기 창에서 마우스로 아이템을 돌리는데 입력으로 사용할 DragDetection 이미지를 추가한다.

 


BPC_Inventory의 Initialize에서 W_Examination 위젯을 생성하고 변수에 참조를 설정한다.

 

Get All Actors Of Class 노드를 통해 월드에 존재하는 Class 타입의 모든 액터를 가져올 수 있다.

 


조사하기 창을 띄울 때 정보를 갱신할 UpdateWidget 커스텀 이벤트를 생성한다.

 

Set Static Mesh 노드로 새 Static Mesh를 설정할 수 있다.

 


BPC_Inventory에 조사하기 창을 열 CreateExaminationWidget 커스텀 이벤트를 생성한다.

 


W_InventoryDropDown에 ExamineButton의 On Released 이벤트에 CreateExaminationWidget을 실행하여 조사하기 창을 띄운다.

 


Return InputAction을 매핑한다.

  • Esc 키는 에디터 모드에서는 사용할 수 없다.
  • 2개 키를 매핑할 수도 있다.

 


HG_PlayerController에서 PressedReturn 이벤트 디스패처를 생성한다.

  • 이벤트 디스패처는 일종의 브로드캐스트이다.
  • 이벤트 디스패처의 실행은 각 리시버가 구현하는 것에 따라 다르다.


InputAction Return의 Pressed 이벤트에 이벤트 디스패처를 호출한다.

 


W_Examination의 Construct 시 HG_PlayerController의 PressedReturn 이벤트 디스패처를 바인딩한다.

Remove from Parent 노드로 위젯을 삭제할 수 있다.

 


HG_PlayerController에 W_Examination 타입의 W_ExaminationRef (Object Reference) 변수를 추가한다.

 

 

BPC_Inventory에서 HG_PlayerContoller에 생성한 W_ExaminationRef의 값을 설정하는 부분을 추가한다.

 


인벤토리를 열고 닫는 HG_PlayerController의 ToggleInventory의 마지막 부분에 조사하기 창이 띄워져 있으면 닫는 부분을 추가한다.


Is in Viewport로 뷰포트에 추가된 상태인지 확인할 수 있다.

 

profile

Make Unreal REAL.

@diesuki4

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

검색 태그