티스토리 뷰
언리얼 강의 1- 11. 블루프린트 연산 (2)
| 구분 | 학습 내용 | 주요 개념 | 노드 핵심 포인트 |
| 학습 목표 | 블루프린트를 사용해서 기초 연산을 할 수 있다. | Blueprint, Variable, Event | 시각적 프로그래밍으로 논리와 연산 구현 |
1-1. Branch (if-else)

1-2. Sequence

1-3. Flip Flop

1. 흐름 제어 (Flow Control)
| 구분 | 학습 내용 | 주요 개념 / 노드 | 핵심 포인트 |
| 1-1. Branch | 조건에 따라 True / False 분기 | Branch, Boolean | if-else 구조 구현 |
| 1-2. Sequence | 실행 순서를 순차적으로 제어 | Sequence, Then Pins | 복잡한 흐름을 단계적으로 정리 |
| 1-3. Flip Flop | 실행을 번갈아 전환 | Flip Flop | 상태 전환 및 반복 토글 구현에 유용 |
2-1. Bullet(총알) 발사 로직





2-2. Reload(재장전) 로직





2. 실습: 텍스트 슈팅 게임
| 구분 | 학습 내용 | 주요 개념 / 노드 핵심 | 핵심 포인트 |
| 목표 | 마우스 클릭 시 총알 발사, R키로 재장전 | - | Bullet 수 제어 로직 구현 |
| 2-1. Bullet 발사 | 총알 변수(Bullet=30) 생성, 클릭 시 -1 감소 | Mouse Left Click, Int - Int, Format Text, Print Text | 남은 총알 표시, 이벤트 처리 |
| 2-2. Reload 재장전 | R키 입력 시 Bullet=30으로 복구 | Keyboard R, Set Variable, Print Text | 발사와 재장전 로직 연결 |
3-1. While Loop


While Loop : 조건(Boolean)이 True인 동안 Loop Body를 반복 실행
Loop Body : 조건을 만족할 때(True) 반복하며 실행되는 코드
Completed : 조건을 만족하지 않을 때(False) 빠져나오는 코드


3-2. For Loop


First Index : 인덱스 시작값
Last Index : 인덱스 종료값
Loop Body : 조건을 만족할 때 반복하며 실행되는 코드
Index : 현재 인덱스값
Completed : 조건을 만족하지 않을 때 빠져나오는 코드


3-3. 구구단 구현







3. 흐름 제어 - 반복문 (Loop)
| 구분 | 학습 내용 | 주요 개념 / 노드 | 핵심 포인트 |
| 3-1. While Loop | 조건이 True인 동안 반복 | While Loop, Condition, Completed | 조건 기반 반복, Count-- 연산 사용 |
| 3-2. For Loop | 지정한 인덱스 범위 반복 | For Loop, Index, Completed | 0~N까지 자동 증가 반복 |
| 3-3. 구구단 구현 | 중첩 For Loop로 2~9단 출력 | For Loop ×2, Multiply, Format Text | A×B 구조로 반복 출력 |
4-1. 열거형 파일 생성





4. 블루프린트 열거형 (Enum)
| 구분 | 학습 내용 | 주요 개념 / 노드 | 핵심 포인트 |
| 4-1. 열거형 파일 생성 | 상수들을 그룹화하여 관리 | Enumeration, Switch on Enum | 숫자 대신 이름으로 구분, 가독성 향상 |
| 활용 | 아이템 슬롯, 상태 구분 등 | Enum 변수, Switch on Enum | 하드코딩 방지, 유지보수 용이 |
5-1. 발사 & 재장전 버그 수정


4-2. While Loop로 구구단 구현


5. 숙제 (과제)
| 구분 | 학습 내용 | 주요 개념 / 노드 | 핵심 포인트 |
| 5-1. 발사 & 재장전 버그 수정 | Bullet이 0 이하일 때 발사 불가, 30일 땐 재장전 X | Branch, Comparison(≤, ==) | 조건문으로 예외 처리 |
| 5-2. While Loop 구구단 구현 | For Loop 대신 While Loop로 구구단 구현 | While Loop, Variable 증가(++) | 조건식 기반 반복 제어 학습 |
간단한 상호작용 구현 (문 열기 또는 아이템 줍기)
⭐왜 중요한가?⭐
상호작용은 사용자가 게임과 소통하는 핵심 수단이다. 문을 열거나 아이템을 줍는 것처럼 단순한 기능이라도, 사용자 경험을 ‘게임답게’ 만드는 결정적인 요소이다. 이 과제를 통해 블루프린트를 활용한 기본 인터랙션 구현 능력을 갖추게 된다.

| 구분 | 내용 |
| 1. 오늘 배운 개념 요약 | - 상호작용(Interaction) : 플레이어가 환경과 소통하는 기본 메커니즘. - Line Trace : 카메라 앞(또는 캐릭터 시야 방향)으로 보이지 않는 선을 쏴서 오브젝트 탐지. - Input Mapping (E키) : 키보드 입력을 통해 특정 이벤트 실행. - Actor Tag 활용 : 상호작용 가능한 오브젝트 구분을 위해 태그 사용 (예: “Interactable”). |
| 2. 구현 과정 요약 | [Step 0] Interact 입력 설정 Project Settings → Input → Action Mappings → “Interact” 추가 (키: E) [Step 1] 블루프린트 생성 BP_InteractableDoor 또는 BP_PickupItem 생성 → Static Mesh 설정 → Collision: BlockAll [Step 2] Line Trace 구현 MyCharacter 블루프린트에서 E키 입력 → LineTraceByChannel → BreakHitResult → Tag 확인 [Step 3] 상호작용 동작 구현 - 문: SetRelativeRotation으로 회전 - 아이템: Destroy Actor로 제거 [Step 4] 테스트 상호작용 대상에 Tag “Interactable” 추가 → E 키 입력으로 문 열기 / 아이템 줍기 확인 |
| 3. 느낀 점 & 개선하고 싶은 점 | ✅ 느낀 점 - 단순한 E키 상호작용이지만, 게임의 몰입감을 높이는 핵심 기능임을 느꼈다. - 블루프린트를 활용해 논리적으로 이벤트를 연결하는 과정이 재밌었다. ⚙️ 개선하고 싶은 점 - Line Trace 범위를 카메라 중심으로 보정하고 싶다. - UI(예: “Press E to Interact”)를 추가해 플레이어 피드백을 강화하고 싶다. |
'내일배움캠프 Unreal_7기 > 사전캠프' 카테고리의 다른 글
| 사전캠프 TIL - 10일차 (0) | 2025.11.14 |
|---|---|
| 사전캠프 TIL - 9일차 (0) | 2025.11.13 |
| 사전캠프 TIL - 7일차 (0) | 2025.11.11 |
| 사전캠프 TIL - 6일차 (0) | 2025.11.10 |
| 사전캠프 TIL - 5일차 (0) | 2025.11.07 |

