루멘(Lumen) 및 가상 그림자 맵 설정 가이드

언리얼 엔진 5의 루멘(Lumen) 및 가상 그림자 맵(Virtual Shadow Maps) 품질 설정에 대한 완전한 가이드입니다. 성능과 품질의 균형을 맞추는 방법을 배워보세요.

눈과 노출 설정

🎯r.Lumen 반사 설정

r.Lumen.Reflections.MaxRoughnessToTrace

역할: 레이 추적(reflection ray)이 얼마나 거친(rough한) 표면까지 반사를 계산할지 정하는 임계값입니다.

설명: 이 값 이하의 거칠기(roughness)는 실시간으로 레이 추적된 반사를 계산하며, 그 이상은 Lumen GI를 통한 근사(reflection fallback)를 사용합니다.

예시: 0.4 기본값. 값을 낮추면(예: 0.3) 거친 표면의 noisy한 반사를 줄이지만, 시각적 디테일이 손실될 수 있습니다.

r.Lumen.TranslucencyReflections.FrontLayer.Allow / .Enable

역할: 반투명(translucent) 표면에서 정면(front layer) 반사를 허용/제한합니다.

차이:

  • Allow: UI나 조건에 관계없이 반사 기능 자체를 끕니다.
  • Enable: 실제로 반사를 활성화하거나 비활성화합니다.

적용 예시: 반투명 유리나 물에 반사가 필요 없을 경우 두 값을 0으로 설정해 비용과 노이즈를 줄일 수 있습니다.

r.Lumen.Reflections.DownsampleFactor

역할: 반사의 계산 해상도를 얼마나 낮출지 결정합니다.

설명: 값을 높일수록 낮은 해상도로 계산되어 GPU 부담이 줄지만, 반사의 선명함이 떨어집니다.

🌙r.Shadow.Virtual.SMRT 가상 그림자 맵 품질

SMRT는 soft shadow (penumbra)를 렌더링하기 위해 여러 개의 레이(ray)를 쏘는 방식입니다.

r.Shadow.Virtual.SMRT.RayCountDirectional / .RayCountLocal

역할: Directional(light from sun/등), Local(point, spot) 광원의 반투명 그림자 품질을 결정하는 ray의 개수.

효과: ray 수 증가 → 부드럽고 노이즈 적은 그림자; ray 수 감소 → 노이즈와 jitter 증가

기본값: 대략 8개. 0으로 설정 시 hard shadow(단일 샘플)로 전환됩니다.

r.Shadow.Virtual.SMRT.RayLengthScaleDirectional / r.Shadow.Virtual.SMRT.MaxRayAngleFromLight

역할: 그림자 penumbra의 범위와 ray 길이를 조절합니다.

설명:

  • RayLengthScaleDirectional: ray의 길이 한계를 설정해 overshoot 방지.
  • MaxRayAngleFromLight: 광원부터 얼마나 벌어진 각도까지 penumbra를 허용할지 결정

🔧성능-품질 균형을 위한 추가 설정

r.Shadow.Virtual.ResolutionLodBiasDirectional / ResolutionLodBiasLocal

역할: 그림자 지도(shadow map)의 해상도 레벨 LOD 바이어스를 조정해 전체적인 품질을 설정.

설명:

  • 값을 높이면 해상도 낮춤 → 성능 상승 / 품질 저하
  • 값을 낮추면 해상도 상승 → 품질 향상 / 성능 저하

📝요약 정리

항목 역할 트레이드오프
MaxRoughnessToTrace rough 이하 반사 계산 임계값 값↓ → 노이즈↓, 디테일↓
Translucency…Allow/Enable 반투명 반사 on/off 반사 off → 성능↑
DownsampleFactor 반사 해상도 조정 값↑ → 반사 날림↓
RayCountDirectional/Local 그림자 ray 개수 값↓ → 노이즈↑
RayLengthScale / MaxRayAngle Penumbra 범위 조절 적절한 값 필요
ResolutionLodBias 그림자 해상도 LOD 바이어스 성능/품질 조절

1. 루멘 반사 품질 향상 (고품질 시각효과 목표)

목적: 깨끗하고 리얼한 반사 (특히 유리, 물, 금속 표면)

변수 추천값 설명
r.Lumen.Reflections.MaxRoughnessToTrace 0.6 더 거친 표면도 레이 추적 반사를 사용함 (디테일 ↑)
r.Lumen.Reflections.HierarchicalScreenTraces 1 고급 스크린 반사 기법 사용
r.Lumen.Reflections.ScreenTraces 1 화면 기반 반사 활성화 (섬세한 디테일 확보)
r.Lumen.Reflections.DownsampleFactor 1 반사 해상도 최대 유지 (선명도 ↑)
r.Lumen.TranslucencyReflections.FrontLayer.Enable 1 반투명 물체도 반사에 포함 (예: 유리창 반사)

추가 팁: 광원 설정에서 Use Area Shadows 및 Use Ray Traced Shadows를 활성화하면 반사에도 깊이감이 더해집니다.

🚀2. 성능 우선 프로젝트용 세팅 (낮은 사양 PC/VR/모바일용)

목적: 프레임 향상, GPU 부하 최소화

변수 추천값 설명
r.Lumen.Reflections.MaxRoughnessToTrace 0.3 거친 표면은 반사 생략 (성능 ↑)
r.Lumen.Reflections.DownsampleFactor 2 또는 4 반사 해상도 낮춰 GPU 부담 ↓
r.Lumen.TranslucencyReflections.FrontLayer.Enable 0 반투명 반사 끄기
r.Shadow.Virtual.SMRT.RayCountDirectional 2 최소한의 그림자 레이 (노이즈는 생기지만 성능 향상)
r.Shadow.Virtual.ResolutionLodBiasDirectional 2 그림자 해상도 낮춤

추가로 비활성화 추천 설정:

  • r.Lumen.Reflections.ScreenTraces = 0
  • r.Lumen.Reflections.HierarchicalScreenTraces = 0

→ 모든 반사를 Lumen GI fallback으로 처리

🌟3. 노이즈 없는 고품질 그림자 세팅 (시네마틱/영상/스틸컷용)

목적: 선명하고 깨끗한 부드러운 그림자

변수 추천값 설명
r.Shadow.Virtual.SMRT.RayCountDirectional 8 이상 다수의 레이로 부드러운 penumbra 구현
r.Shadow.Virtual.SMRT.MaxRayAngleFromLight 0.1 너무 넓은 penumbra 각도 제한 (노이즈 감소)
r.Shadow.Virtual.SMRT.RayLengthScaleDirectional 0.5 레이 범위 짧게 → 그림자 경계 더 정밀
r.Shadow.Virtual.ResolutionLodBiasDirectional -1 최대 해상도 사용
r.Shadow.Virtual.EnableClipmap 1 멀리 있는 그림자 해상도 자동 조절 (효율↑)

시네마틱용 팁:

  • r.Shadow.PerObject 활성화 시 개별 오브젝트마다 고품질 그림자 적용 가능.
  • r.Shadow.Virtual.Cache를 적절히 활용하면 씬 전환 시 캐시된 그림자 재활용 가능.

참고 자료

언리얼 엔진 루멘 공식 문서 가상 그림자 맵 공식 문서 UE5 루멘 최적화 가이드 가상 그림자 맵 튜토리얼

🎯 추가 학습 리소스

도서와 함께 활용하면 좋은 온라인 리소스들을 소개합니다.

노출과 대비 가이드 알베도 차트 루멘 설정 가이드 추천 유튜브 채널 라이팅 강의