초보 코린이의 성장 일지

UE4 C++ Animation, Overlap 본문

언리얼

UE4 C++ Animation, Overlap

코오린이 2023. 3. 8. 12:36

이제 자주 사용하거나 편리하게 사용하도록 매크로를 많이 생성하게 된다.

우선 Null 체크 관련해서도 매크로 생성을 하도록 하겠다.

 

1. 체크 후 끝내기, 하나 더 받아서 값 돌려주는 return 매크로 생성

CAnimInstance.h
CAnimInstance.cpp

1. 만들어 놓은 매크로로 Null 체크를 해준다.

2. 그리고 Speed 세팅

1. BP_CPlayer에 비어있는 Class를 이제 넣어 줄 것이다.

2. 레퍼런스 주소 넣어주고 컴파일 후 다시 확인하면 잘 들어가있는걸 볼 수 있다.

 

CPlayer.h
CPlayer.cpp

1.  애니메이션 들어간 상태니 이제 알맞은 동작을 수행하게 함수를 만들어준다.

2. 스피드를 설정해준다. 이제 키를 누르면 뛰어다닐수 있게 된다.

 

1. 이제 플레이어에 움직임이 끝이났고, 충돌에 관련한 이벤트 처리를 시작해보기 위해 맵을 나눠서 오른쪽 파란색 진형에서 진행해 볼 것이다.

 

1. C++ 클래스 추가 -> Actor로 생성해준다.

 

Delegate에 대해 설명을 해보고자 한다.

[DECLARE 이벤트 종류] 

Declare_Delegate - 1:1, BP : X, Return : O = 함수 포인터와 같다고 생각하면 된다. 

Multicast_Delegate - 1:n, BP : X, Return : X = 하나의 델리게이트가 여러개를 연결해주는 이벤트 디스패처라고 생각하면 된다. Multicast는 rerturn이 없다고 생각하면 된다.

Event - Multicast와 비슷하다고 생각하면 된다.

Declare_Dynamic - 1:1, BP : O, Return : O = Dynamic가 붙으면 동적이다.

Dynamic_Multicast - 1:n, BP : O, Return : X = return만 안된다.

Dynamic_Sparse_Multicast = 델리게이션을 어느 Class에서 선언할지 어떤 변수명으로 선언할지 다 명시해줘야 한다.

Dynamic이 아닌것은 매개변수에 타입과 개수만 일치하면 된다. 변수명은 필요없다.

Dynamic은 타입, 개수, 변수명까지 모두 일치시켜야한다.

 

1. 위치, 회전, 색 등등 알맞게 맵에 나오도록 생성 시켜준다.

1. 너무 공간을 많이 차지 하므로, 매크로로 선언해서 간결하게 처리해줬다.

 

1. 블루프린트 클래스 추가로 생성해주면, 작성했던 값들이 잘 들어온걸 볼 수 있다.

1. 만들어준 Box 숨기고, 크기 설정

 

1. 만들어준 박스 맵에 올려주기.

 

1. Begin, End 이벤트가 일어났을때, 알맞은 Print가 출력되도록 세팅해준다.

2. 출력때 문자열로 변환시 * 들어가는거 명심

 

https://www.youtube.com/watch?v=cc3q-mz7fb0 

 

Comments