2024. 7. 25. 01:13ㆍUnreal Engine
총알 만들기
총알은 Actor라는 것을 기반으로 Class 설계를 통해 Instance 형식으로 생성할 것이다.
[Blueprint Class] 생성
[Actor] 선택, 이름은 "BP_Bullet"으로 생성
총알 외관 만들기
"Cube" 검색해서 생성
[Transform] 값 수정
EventGraph 제작
이전에 BP_Player에서 만들었던 이벤트 노드를 복사해서 BP_Bullet에 붙여넣는다.
오류가 나는 Variable에 우클릭, [Promote to Variable]을 누르면 변수로 등록이 된다.
총알이 위쪽 방향으로 올라가야 하므로 [Direction] 변수의 Z 값에 1을 넣는다.
스피드는 1000설정
돌아와서, BP_Bullet을 Viewport에 배치하고 플레이어보다 살짝 위로 놓고 실행하면 발사되는 총알을 볼 수 있다.
적 만들기
같은 방법으로 "BP_Enemy" 이름으로 적을 만든다.
"Target" 이름의 변수를 하나 생성하고 자료형 부분에 "actor"를 검색하여 [Actor] - [Object Refence]를 선택한다.
[Detail] 창에서 설정을 해주고 싶기 때문에 public으로 변환해야 한다. 눈 모양을 켠다. 그러면 오른쪽에서 [Instance Editable]이 켜진 것을 볼 수 있다.
"Direction" 변수를 alt키를 누른 상태로 끌어와서 [Set] 노드를 생성한다.
Target의 [Get Actor Location]으로 위치를 가져오고 내 위치도 가져와서 [타겟의 위치 - 나의 위치]를 계산하여 [Direction]에 설정했다. 그 크기를 순간이동 하는 것이 아니고 방향 벡터만 가져오고 싶기 때문에 Normalize 해야 한다. 따라서 [Normalize] 노드를 추가한다.
방향 계산까지 된 블루프린트가 완성되었다.
이제 Target에 BP_Player를 설정할 수 있게 되었다.
Enemy의 타겟인 Player를 계속 따라오는 것을 볼 수 있다.
Enemy를 복사하고, Speed를 public 변수 선언해서 바로 앞의 적을 따라다니게 만들면 지렁이가 움직이듯이 움직일 수도 있다.
'Unreal Engine' 카테고리의 다른 글
[Unreal] 11일차 - 일정시간에 한 번씩 적 만들기, 적이 플레이어 따라오게 설정, 초반 방향만 따라오게 설정, 확률 추가, 플레이어 모델링 교체 (0) | 2024.07.28 |
---|---|
[Unreal] 10일차 - 총알 생성과 발사, 충돌과 겹침 (0) | 2024.07.26 |
[Unreal] 8일차 - 블루프린트 조건문, 반복문, 함수, 상하좌우 이동 (0) | 2024.07.20 |
[Unreal] 7일차 - 블루프린트 (0) | 2024.07.19 |
[Unreal] 6일차 - Sequencer 애니메이션 추가, Shooting 게임 설정 (0) | 2024.07.18 |