Third Person 템플릿을 c++ 용으로 만든다.
캡슐 콤퍼넌트가 가지고 있는 델리게이트를 사용하기 위해 다음과 같이 함수를 만든다.
생성자에 다음과 같이 함수를 바인드 해준다. OnComponentBeginoverlap 도 델리게이트이다.
다음과 같이 ColoredActor c++ 클래스를 만든다.
클래스를 상속 받아 블루 프린트를 생성후 다음과 같이 설정한다.
포인트 라이트의 초기 색상을 변경하기 위해 다음과 같이 한다.
월드에 다음과 같이 배치하고 초기색상을 빨강, 노랑, 초록으로 변경한다.
게임을 실행하여 각 ColoredActor와 충돌하면 다음과 같이 로그가 뜨는것을 확인 할 수 있다.
이제 캐릭터에 델리게이트를 만들어 보자.
우선 ColoredActor 클래스에 다음과 같이 추가한다.
캐릭터 클래스에 다음과 같이 코딩한다.
이젠 이 델리게이트를 등록하면 충돌한 ColoredActor의 색상 LinearColor 변수가 전달될 것이다.
다음과 같이 블루프린트 PointLight를 만들어 보자
델리게이트에 바인드 하여 포인트라이트 컬러를 변경시킨다.
만든 블루프린트 포인트라이트를 월드에 몇몇 세팅후 발판에 올라가면, 색상이 변경되는것을 볼 수 있다.
'언리얼 엔진' 카테고리의 다른 글
UMG를 이용한 타이틀화면, Pause 그리고 HUD 구현하기 (1) | 2021.11.29 |
---|---|
Interface 를 이용하여 라이트 색상 변경, 텍스트 변경 (C++) (1) | 2021.11.22 |
Collision 체크하여 문열기(c++) (0) | 2021.11.08 |
Custom Pawn 만들어 움직이기, 카메라 스위칭 (c++) (0) | 2021.11.02 |
Pawn 생성하여 움직임 구현하기 (0) | 2021.10.12 |