1. 핵심 구조
미니맵과 안개는 완전히 분리된 시스템이다.
- 미니맵 → SceneCapture로 지형을 RT에 그림
- 안개 → 별도의 Render Target 2장으로 관리
"지형 / 현재 시야 / 탐색 기록"을 각각 따로 만들고 마지막에 머티리얼에서 합성
2. 미니맵 캡처 (SceneCapture2D)
핵심 포인트
- 매 프레임 X → 타이머 기반 갱신
- OrthoWidth로 월드 크기 동기화
- Render Target에 직접 그림
void ATWMiniMap::BeginPlay()
{
Super::BeginPlay();
if (CaptureComp && MinimapRT)
{
CaptureComp->TextureTarget = MinimapRT;
CaptureComp->OrthoWidth = CaptureWidth;
CaptureComp->bCaptureEveryFrame = false;
CaptureComp->bCaptureOnMovement = false;
GetWorldTimerManager().SetTimer(
CaptureTimerHandle,
this,
&ATWMiniMap::UpdateCapture,
0.1f,
true
);
}
}
void ATWMiniMap::UpdateCapture()
{
CaptureComp->CaptureScene();
}
핵심 요약:
- SceneCapture는 "카메라"가 아니라 "RT에 찍는 도구"
- 빈번한 업데이트는 성능 낭비 → 타이머로 제한
3. 2중 Fog of War 구조
분리된 RT 2개 사용
- CurrentRT
→ "지금 보이는 영역"
→ 매 프레임 덮어씀 - ExploredRT
→ "지나간 기록"
→ CurrentRT를 누적(Additive)
동작 흐름
플레이어 이동
↓
CurrentRT에 원 그리기
↓
ExploredRT에 누적
4. 머티리얼 합성 로직 (UI 전용)
머테리얼 노드

의미
- Explored = 0 → 아예 안보임 (검정)
- Explored = 1 + Current = 0 → 어두운 지형
- Current = 1 → 완전 밝음
값 설정
- Dark = 0.1
- Bright = 1.0
5. 방향 문제 해결 (중요)
문제
- 월드: X+가 북쪽
- UI: 오른쪽이 동쪽
→ 그대로 쓰면 90도 틀어짐
해결
- 머테리얼이 들어갈 UI Image를 -90만큼 회전
6. UI 연결 구조
흐름
C++
→ Dynamic Material 생성
→ RenderTarget 연결
→ UMG Image에 적용
void AMyPlayerController::SetupMinimapUI()
{
if (MinimapWidgetClass)
{
UUserWidget* Widget = CreateWidget<UUserWidget>(this, MinimapWidgetClass);
Widget->AddToViewport();
// Dynamic Material 생성
// BaseMap / CurrentFog / ExploredFog 연결
}
}
7. 트러블슈팅
1. 안개가 빨갛게 나올 때
- Texture Sample → R 채널만 사용
2. 방향 틀어짐
- CustomRotator = 0.25
3. 성능 문제
- SceneCapture 타이머로 제한
- Fog 계산은 전부 GPU(Material)에서 처리
8. 최종 결과 상태
상태값결과
| 미탐색 | 0 | 검정 |
| 탐색됨 | 0.1 | 어두운 지형 |
| 현재 시야 | 1.0 | 밝은 지형 |
'내배캠 TIL' 카테고리의 다른 글
| [내배캠 TIL 260417] Unreal RTS 영웅 스킬 구조 설계 (다형성 + 타이머 기반 판정) (0) | 2026.04.17 |
|---|---|
| [내배캠 TIL 260415] Unreal 미니맵 카메라 프러스텀 투영 및 클릭 이동 구현 (0) | 2026.04.15 |
| [내배캠 TIL 260406] Unreal Fog of War 서버연동 정리 (0) | 2026.04.06 |
| [ 내배캠 TIL 260403] Unreal RenderTarget 기반 Fog of War 구현 (0) | 2026.04.03 |
| [ 내배캠 TIL 260402] Unreal Grid & Fog of War 시스템 정리 (0) | 2026.04.02 |