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로 뷰포트에 추가된 상태인지 확인할 수 있다.
'Unreal Engine > Ultimate Survival Horror Course' 카테고리의 다른 글
인벤토리 슬롯 확장하기 (0) | 2023.02.08 |
---|---|
조사하기 아이템 회전 기능 추가 (0) | 2023.02.08 |
메쉬로 아이콘 제작하기 (0) | 2023.02.07 |
아이템 정보 표시하기 (0) | 2023.02.06 |
아이템 표시 및 획득 개선 (0) | 2023.02.06 |