본문 바로가기
[ CODING STUDY ]/》언리얼엔진5 실습

언리얼엔진5 door open

by MRG 2024. 1. 7.
728x90
반응형

 

 

▣ 문을 관리하는 Door 폴더를 생성합니다. 

 

 

▣ 그리고 블루프린트를 생성하고 이름을 BP_Door로 지정합니다.

 

 

▣ BP_Door창에 들어가서 Static Mesh를 생성하고 문 Mesh를 지정합니다. 

 

 

▣ 문 앞과 뒤를 구분하는 BoxCollsition 2개를 생성하고 각각 Collistion을 Overlap으로 지정합니다.

 

 

▣ 먼저 ForwardBox에 Begin Overlap 이벤트를 생성하고 Play Sound at Location 노드를 이용해서 충돌하면 문 여는 소리 재생하는 노드를 완성합니다.

 

 

▣ 그리고 Timeline 노드를 생성합니다. 

 

https://docs.unrealengine.com/5.3/ko/timelines-in-unreal-engine/

 

타임라인

언리얼의 타임라인에 대한 개요입니다.

docs.unrealengine.com

 

 

▣ Timeline에디터에서 Length를 0.50으로 지정하고 Add Float Track을 추가합니다.

 

 

▣ 프레임 첫 번째와 끝에 Add key to CurveFloat 두 개를 추가하고 
첫 번째 key는 Time 0.0 , Value 0.0
끝 key에는 Time 0.50, Value 1.0로 지정하고 Track 이름을 Alpha로 지정합니다.

 

 

▣  Set World Rotation에 Z 값에  Alpha값에  -90을 곱해서 해서 문에 플레이어가 닿으면 Timeline에 Alpha이 0~1로 점점 늘어나는 노드를 완성하여 문이 회전하는 노드를 완성합니다. 

 

https://docs.unrealengine.com/4.27/en-US/BlueprintAPI/Utilities/Transformation/SetWorldRotation/

 

SetWorldRotation

SetWorldRotation

docs.unrealengine.com

 

 

▣ End Overlap 이벤트를 만들고 Delay노드를 연결하고 기다린 후에 닿는 소리가 나오게 하고 Timeline에 Reverse를 연결합니다. 

Reverse는  Timeline에 끝에서 역방향으로 재생하는 기능입니다.

그럼 문에 닿이고 떨어지면 문 닫는 소리가 나고 Alpha 값이 끝에서 처음값으로 재생되면서 반대로 회전됩니다.

 

 

▣ BackBox Overlap과 End Overlap이벤트를 생성하고 동일하게 노드를 완성하고 회전값만 변경합니다. 

 

 

▣ 컴파일 저장을 하고 플레이를 해서 방향에 따라 다르게 문에 닿으면 문이 회전되는 걸 확인할 수 있습니다.

728x90
반응형

댓글