오늘은 언리얼엔진의 블루프린트에 익숙해지기 위해 간단한 텍스트 게임을 만들어보았습니다.
간단히 클릭으로만 진행하는 게임을 생각하며 플레이어와 적, 총(무기)을 주요하게 생각하며 제작을 진행했습니다.
적 등장
게임을 시작하자마자 적이 나타났다는 글이 출력됩니다.
적의 체력도 변수(Target)로 만들어주었습니다.
장전
플레이어가 사용하는 총을 다 사용하면 장전(R키)도 할 수 있게 만들었습니다.
물론 탄창이 꽉 차있으면 장전할 수 없도록 설정해두었습니다.
힐
힐(E키) 부분인데 장전을 만들면서 영감을 얻어 쉽게 만들었습니다.
장전할 때와 마찬가지로 체력이 꽉 차있으면 힐이 되지 않도록 설정해보았습니다.
하지만 해당 블루프린트는 약간의 문제가 있습니다.
힐의 문제점
저는 플레이어가 입는 데미지와 힐량을 똑같이 설정해서 위의 블루프린트는 문제가 없지만
만약 데미지와 힐량이 다르면 최대 체력을 넘어서는 힐이 가능하게 되기에 추가 설정이 필요할 수 있습니다.
사격
사격은 마우스 좌클릭으로 작동하는데 게임의 진행도 담당하고 있습니다.
총알이 발사될 때마다 탄창의 총알이 감소하며 모두 사용하면 '총알이 없습니다!'라는 텍스트가 나오게 됩니다.
물론 장전키를 눌러 장전하면 다시 사격을 할 수 있습니다.
사격 (공격)
위의 블루프린트 사진을 보면 왼쪽으로 이어진 하얀줄이 있는 데 그것과 이어진 블루프린트입니다.
자세히 살펴보기 위해 밑의 2장의 사진으로 설명하겠습니다.
모든 총알을 맞출 수 있다면 정말 단순한 게임이 될 것 같아서
'랜덤 스트림'(Hit 노드)을 사용해서 총알이 빗나가는 것을 구현했습니다.
빗나가지 않고 적을 맞추면 적의 체력을 깎고 0이 되면 적을 처치했다는 텍스트와 함께 적의 체력을 초기화합니다.
사격 (피격)
피격구현은 마우스 클릭이 때질 때 발생합니다.
구현은 공격 부분과 노드가 거의 똑같고 피격은 적이 아닌 플레이어가 데미지를 입습니다.
Target -> HP(플레이어의 체력)
플레이 화면
오늘은 블루프린트에 익숙해지기 위해서 텍스트 게임을 만들어봤습니다.
직접다루어보니 잘 만들기는 어렵지만, 진입 장벽은 낮아서
초기에 생각한 것보다 더 진행해 텍스트 게임을 만들어보았습니다.
감사합니다.
'게임 개발 공부 > Unreal Engine' 카테고리의 다른 글
C++ 언리얼의 빌드 오류 해결 (0) | 2025.01.20 |
---|---|
셰이프 모델링 작업한 영역 막힐 때 해결 (1) | 2024.12.19 |
머티리얼(Materials)과 머티리얼 인스턴스 (0) | 2024.12.17 |
Unreal Engine 마켓 플레이스 -> Fab (0) | 2024.12.03 |
Unreal Engine 기능 소개 (0) | 2024.12.02 |