문제 상황
지휘관이나 유닛을 선택하면 체력과 이동속도 같은 정보는 정상적으로 갱신됐지만, 왼쪽의 초상화 영역에는 선택한 캐릭터가 나타나지 않았다.

이를 통해 다음 내용은 정상이라는 것을 확인할 수 있었다.
- 유닛 선택 이벤트는 정상적으로 발생함
- 선택 정보가 InGameUI까지 전달됨
- 선택 정보 패널의 표시 및 텍스트 갱신은 정상 작동함
- 문제 범위는 Scene Capture → Render Target → UI Material 출력 과정으로 좁혀짐
원인 분석
Scene Capture Component 2D가 실제 게임 월드를 기준으로 촬영하면서, 초상화용 캐릭터뿐만 아니라 하늘과 지형, 주변 오브젝트까지 함께 렌더링하고 있었다.
배경을 투명하게 만드는 머티리얼만으로는 카메라에 들어오는 월드 오브젝트를 완전히 제외할 수 없었다. 반대로 캡처 설정이 올바르지 않으면 배경과 함께 초상화용 메시도 표시되지 않는 문제가 발생했다.
결국 초상화 카메라가 촬영해야 할 대상을 명확하게 제한할 필요가 있었다.
해결 과정
BP_SFUnitPortraitActor의 이벤트 그래프에서 BeginPlay 시점에 Show Only Component를 호출하도록 구성했다.

노드 연결은 다음과 같다.
Event BeginPlay
→ Show Only Component
Target
→ Portrait Capture
In Component
→ Portrait Mesh
그리고 Portrait Capture의 Primitive Render Mode를 Use ShowOnly List 방식으로 설정했다.
이 설정으로 Scene Capture Component 2D가 전체 게임 월드를 촬영하지 않고, 초상화 액터가 가진 Portrait Mesh만 Render Target에 출력하도록 제한했다.
처리 흐름
추가로 확인한 문제
문제 해결 과정에서 UI의 기존 Set Brush From Texture가 Render Target 머티리얼 출력을 다시 덮어쓰는 현상도 확인했다.
이를 해결하기 위해 선택 대상의 종류를 검사하여 출력 방식을 분리했다.
- Commander, Unit
- Set Brush From Material
- Render Target 기반 3D 초상화 출력
- 건물, 광물 등
- 기존 Set Brush From Texture
- 데이터 테이블 기반 2D 이미지 출력
이 구조를 사용하면 기존 UI 데이터 테이블을 제거하지 않고도 2D 이미지와 3D 초상화를 함께 사용할 수 있다.
결과
Show Only Component 적용 후에는 다음과 같은 효과를 얻을 수 있었다.
- 월드 배경, 하늘, 지형이 초상화에 포함되는 현상 방지
- 선택한 지휘관과 유닛의 Skeletal Mesh만 출력
- 기존 건물 및 광물의 2D 이미지 출력 방식 유지
- 하나의 선택 정보 패널에서 2D와 3D 초상화를 대상 종류에 따라 구분하여 사용
고찰
Render Target의 알파 값을 조절하는 것은 촬영된 결과의 투명도를 처리하는 작업이다. 하지만 촬영 단계에서 불필요한 월드 오브젝트가 포함된 경우에는 머티리얼 처리만으로 문제를 해결하기 어렵다.
따라서 이번 작업에서는 다음 순서가 중요했다.
- Scene Capture가 촬영할 대상을 Show Only Component로 제한한다.
- Render Target의 알파 채널을 UI 머티리얼에서 처리한다.
- 선택 대상의 종류에 따라 3D 머티리얼과 2D 텍스처 출력을 분기한다.
즉, 배경 투명화와 촬영 대상 제한은 서로 다른 역할이며 두 설정을 함께 적용해야 안정적인 3D 초상화를 구현할 수 있었다.