Unreal Engine C++의 역할
1강. Unreal Engine C++의 역할
1. 이번 강의에서 해결할 문제
Blueprint만으로 빠르게 만든 기능이 커지면서 한 그래프에 입력, 체력, UI와 적 생성 규칙이 뒤섞였습니다. C++로 모두 다시 만드는 대신 무엇을 코드에 두고 무엇을 Blueprint에 남길지 기준을 세웁니다.
2. 학습 목표
3. 핵심 개념
Unreal C++는 엔진과 별도로 동작하는 일반 콘솔 프로그램이 아닙니다. Unreal Header Tool이 Reflection 매크로를 읽고, Unreal Build Tool이 모듈 의존성을 구성한 뒤, 컴파일된 클래스가 에디터와 Blueprint에 노출됩니다.
C++는 변경 규칙이 명확하고 재사용해야 하는 시스템에 적합합니다. Blueprint는 레벨 배치, 에셋 연결, 기본값 튜닝과 시각적 흐름 확인에 강합니다. 이 과정은 C++ 부모 클래스로 안전한 경계를 만들고 Blueprint 자식에서 Mesh, Material, 입력 에셋과 Widget을 선택합니다.
| 기능 | 주 책임 | 이유 |
|---|---|---|
| 피해 계산·사망 조건 | C++ HealthComponent | 플레이어와 적이 같은 규칙 재사용 |
| 적 이동 속도·점수 | DataAsset | 코드 재컴파일 없이 값 조정 |
| 입력 키 연결 | Input Mapping Context | 플랫폼별 키를 데이터로 분리 |
| HUD 배치·색상 | Widget Blueprint | 빠른 시각 조정 |
| 점수·게임 오버 | Subsystem | 특정 Character 수명에 종속되지 않음 |
4. 단계별 실습
문서 위치: TopDownSurvival/Docs/Architecture.md
# TopDownSurvival 책임
- ASurvivalCharacter: 이동과 공격 요청
- UHealthComponent: 체력, 피해, 사망 이벤트
- AEnemyBase: 추적과 공격 규칙
- UEnemyDataAsset: 적 능력치
- AEnemySpawner: 생성 시간과 난이도
- USurvivalGameSubsystem: 점수와 게임 오버
- Widget Blueprint: 화면 표현
PowerShell · 실행 위치: C:\UnrealProjects
New-Item -ItemType Directory -Force .\TopDownSurvival\Docs
Set-Location .\TopDownSurvival
Get-Location
아직 Unreal 프로젝트를 만들지 않았다면 Docs 폴더만 준비합니다. 2강에서 실제 프로젝트를 생성합니다.
5. 코드가 동작하는 이유
이번 문서는 코드보다 의존 방향을 먼저 고정합니다. Character는 체력 내부 계산을 몰라도 Delegate를 구독할 수 있고, UI는 EnemyBase를 직접 찾지 않고 Subsystem의 점수 이벤트만 받게 됩니다. 이 방향을 지키면 클래스 하나를 교체할 때 다른 클래스의 수정 범위가 줄어듭니다.
6. 자주 하는 실수와 해결법
7. 직접 실습
8. 이해 점검 질문 3개
9. 핵심 요약
Unreal Engine C++의 역할 미니 퀴즈
선택 즉시 정답과 해설을 확인할 수 있습니다. 결과는 이 브라우저에만 저장됩니다.
학습을 마쳤나요?
직접 실습과 점검 질문까지 확인한 뒤 완료로 표시하세요.