Game Engine/Unreal

2024 - 08 - 13 게임 제작을 위한 시작해요 언리얼 D+2

Jang_^ 2024. 8. 19. 20:28
게임 제작을 위한 시작해요 언리얼 3주차

 

3주차에서는 액터를 동적으로 생성할 수 있는 블루프린트 클래스에 대하여 학습하는 시간을 가졌습니다.

블루프린트 클래스

 

-  생성 방법

-  컴포넌트 추가

- 변수 직접 지정

- 원하는 기능 구현에 따른 다양한 액션 추가

 

이동플랫폼 블루프린트 실습과정

 

 

1-1. 블루프린트 클래스로 만들고 싶은 스태틱 메시를 클릭

 

1-2.  뷰포트안으로 드래그 앤 드랍

 

 

2-1. 디테일 패널을 들어가서 블루프린트 클래스 전환버튼을 클릭한다.

 

 

3-1. 전환 버튼을 클릭하면 해당 블루프린트 클래스 창이 열릴텐데, 

 

거기서 이벤트 그래프로 들어가서 블루프린트 클래스를 수정하여 기능을 추가 및 삭제하는 것이다.

 

3-2. 블루프린트 기능설명

 

* BeginPlay 이벤트 = 시뮬레이션 또는 레벨을 플레이할 시 시작하자마자 한번 호출 되는 함수이다.

 

3-2-1. Get Actor Location 으로 현재 액터의 위치를 가져온 다음 최초위치를 세팅한다.

 

3-2-2. Set한 다음 타임라인의 재생속도를 제어할 Set Play Rate 액션을 가져와 재생속도를 인스턴스에서 편집할 수 있게 

 

변수로 승격하여 관리한다.

 

3-2-3. 만약 딜레이가 필요할 경우에 대비하여 딜레이시간을 변수로 승격한다.

 

 

* 타임라인에서 Update 는 매 프레임당 다음 액션이 호출되는 것이다.

 

3-2-4. 딜레이가 지난 다음, 화살표가 가르키는 방향으로 x축으로 이동값만큼 해당 액터가 움직이도록 세팅한다.

 


 

3주차 수업내용은 여기서 끝이다!

 

과제로 블루프린트 클래스를 이용하여 다양한 플랫폼을 제작해보라고 하였다!!

 

실습과제

 

 

 

* ActorBeginOverlap 이벤트는 다른 액터가 해당 콜리전안으로 충돌할 시, 한번 호출 되는 함수이다.

 

* Add Impulse 액션은 캐릭터의 무게에 따라서 일정한 위치까지 가는 것이고,

 

매 프레임마다 액션이 호출되서 위치가 변경되는 것이 아니라 해당 위치까지 갈때까지 액션이 한번 진행되는 것이다.

 

1. 콜리전에 충돌한 액터와 플레이중인 캐릭터랑 비교하여 참일 경우

 

2. 캐릭터의 위치를 가져와 z 값을 상승시킴


 

닿으면 떨어지는 발판 블루프린트

 

1. 다른 액터랑 충돌시, 지연시간을 두고 지연되는 시간을 변수로 승격하여 인스턴스화

 

2. 지연시간이 끝난 뒤, 물리를 적용시켜 해당 액터가 중력을 받게 하는 Set Simulate Physics 액션 실행

 


 

마지막으로 밟는 시간이 3초가 지나면 게임오버로 진행되는 발판을 추가해보려고 시도하였으나,,

 

발판을 밟을 시, 게임모드 블루프린트의 태그를 실패로 변경시켜줘야하는데 태그를 변경하는 액션에 대해서 잘 모르겠다..!

 

블루프린트를 처음 접해봤는데, 간단하다는 소문과는 달리 내가 원하는 액션등을 응용해야돼서 생각보다 쉽지 않았던 것 같다

 

ㅎㅎㅎ 그래도 언리얼에 대해서 한 발자국 앞으로 다가섰다는 느낌이 들어 기분은 좋다!