| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 8 | 9 | 10 | 11 | 12 | 13 | 14 |
| 15 | 16 | 17 | 18 | 19 | 20 | 21 |
| 22 | 23 | 24 | 25 | 26 | 27 | 28 |
| 29 | 30 | 31 |
- 스파르타코딩클럽
- https://hjmag1120.tistory.com/
- 이리5조
- 태어난김에 보스까지
- https://mynameiskgws.tistory.com/
- https://eo-oe.tistory.com/
- https://ji-han.tistory.com/
- https://vetenir.tistory.com/
- Today
- Total
info8995 님의 블로그
3일차(블루프린트 텍스트 슈팅 게임) 본문
오늘의 과제
1. 텍스트 슈팅 게임 버그 고치기
1) 총알 발사 버그


해결 방법:
- 변수: Bullets (현재 총알 수)와 Bullets (최대 총알 수) 변수를 만듭니다.
- 조건문: Branch 노드를 이용해 Bullets > 0인지 확인합니다.
- 총알이 0일 경우 총알 부족 메시지를 출력합니다.


**2) 총알 재장전 버그**
현재 구현 상 총알이 30발 가득차 있는 경우에도 총알이 재장전 됩니다.
총알이 가득차 있는 경우, 재전이 불가능하도록 버그를 수정해봅시다.


해결 방법:
- 조건문: Branch 노드를 이용해Bullets==30인지 확인합니다.
- 조건이 참(True)일 경우 장전 로직 실행x.


2.텍스트 슈팅 게임 기능 추가하기
**1) 총알 피격 기능**
총알을 맞으면 피해를 입어야 합니다.
Hp와 Damage라는 노드를 생성하고, 관련 로직을 작성해봅시다.
1) 총알 피격 기능
구현 방법:
- 플레이어의 HP 변수를 추가하고, 총알 피격 시 HP에서 Damage만큼 감소하도록 로직 구성.
- Branch 노드를 이용해 HP <= 0일 경우 게임 오버 처리.


**2) 체력 회복 기능**
총알 피격으로 입은 피해를 치료할 수 있어야 합니다.
Heal이라는 노드를 생성하고, 관련 로직을 작성해봅시다.
구현 방법:
- Heal 이벤트를 생성하고, 회복량을 HP에 더하는 로직 구성.
- Branch 노드를 이용해 HP > MaxHP일 경우 HP를 MaxHP로 제한.


3.구구단
블루프린트 반복문에는 For Loop 이외에도 While Loop가 있다는 것을 배웠습니다.
이번에는 While Loop를 이용해 구구단을 구현해봅시다.
반복문은 Index를 이용해 구구단의 로직을 구현했었는데, While Loop는 Condition을 이용해 이를 구현해야 합니다.
앞서 학습한 내용을 복습해보고, While Loop를 이용한 구구단을 구현해봅시다.

4.가위바위보
1. 열거형으로 가위, 바위, 보를 지정한다.
2. 플레이어의 값은 키보드 입력으로 결정한다.
3. 컴퓨터의 값은 랜덤 함수로 결정한다.
4. 플레이어의 승/무/패 결과를 출력한다.
구현 방법:
- 열거형: E_rock_papaer_scissor로 가위/바위/보 설정
- 플레이어 입력: 키보드 입력 이벤트 (Input Key 노드)
- 컴퓨터 입력: Random Integer로 0~2 사이 값 생성
- 결과 판단: 비교를 위한 Branch 사용.



승패 결정로직은 바위 보 가위를 각각 1,2,3이라는 숫자로 정하고 그 숫자끼리 빼보았습니다. 가로를 컴퓨터 세로를 플레이어라고 했을때 플레이어 - 컴퓨터를 할 경우 플레이어가 이길때 숫자가 1,1,-2, 질때의 경우는 -1,-1,2비겼을때는 0이기떄문에 1,1,-2를 연산자로 비교해서 1,1,-2로 값이 나왔을 경우 이겼다고 했습니다.
- 오늘의 느낀 점이번에 만든 로직은 간단한 예제지만, 이를 바탕으로 더 큰 게임 시스템을 구축할 수도 있을 것 같아요. 제가 만든 게임들을 조금씩 발전시켜 더 멋진 결과물을 만들어 보고 싶습니다.
- 블루프린트는 정말 강력한 도구라는 걸 다시 한번 느꼈어요. 코드를 작성하지 않아도 복잡한 로직을 쉽게 시각적으로 설계할 수 있어, 초보자도 충분히 도전할 수 있답니다. 특히, 조건문(Branch)과 반복문(While Loop)을 자유롭게 활용하는 방법을 배울 수 있어 유익한 시간이었습니다.
'TIL(Today I Learned) > Unreal Engine' 카테고리의 다른 글
| 5일차(캐릭터애니메이션 추가) (0) | 2024.12.20 |
|---|---|
| 4일차(캐릭터움직임구현) (0) | 2024.12.19 |
| 2일차(액터배치) (0) | 2024.12.17 |
| 내가 좋아하는 게임 상호작용 분석하기 (2) | 2024.12.09 |
| 게임 개발자란? (1) | 2024.12.06 |