PART 5 - 강의 4/5

SMRT

Shadow Map Ray Tracing과 Contact Hardening

01

SMRT 개념

기존 PCF SMRT
균일 블러 물리적 소프트 섀도우
디테일 손실 디테일 보존
거리 무관 블러 Contact Hardening
02

Contact Hardening

Contact Hardening 효과
[가까운 그림자] -> 선명 [먼 그림자] -> 부드러움 예: 나무 그림자 - 나무 밑동 근처: 선명한 그림자 - 멀리 떨어진 곳: 부드러운 그림자
관련 설정 r.Shadow.Virtual.SMRT.RayCountDirectional = 8 // 레이 수
03

SMRT 설정 가이드

라이트 타입별 레이 수 최적화

SMRT 설정 // Directional Light SMRT r.Shadow.Virtual.SMRT.RayCountDirectional = 8 r.Shadow.Virtual.SMRT.SamplesPerRayDirectional = 8 r.Shadow.Virtual.SMRT.MaxRayAngleFromLight = 0.03 // Local Light SMRT (Point, Spot) r.Shadow.Virtual.SMRT.RayCountLocal = 8 r.Shadow.Virtual.SMRT.SamplesPerRayLocal = 8 // 소프트 섀도우 강도 // Light의 Source Radius/Source Angle 속성 // 값이 클수록 더 부드러운 그림자
품질 프리셋 RayCount SamplesPerRay 용도
Low 4 4 성능 우선
Medium 8 8 균형
High 16 16 고품질
04

Penumbra 디노이징

노이즈 제거와 시간적 안정성

SMRT의 스토캐스틱 특성상 노이즈가 발생할 수 있습니다. UE5는 시간적 필터링을 사용하여 여러 프레임에 걸쳐 노이즈를 축적합니다.

노이즈 대처

레이 수를 늘리는 것보다 시간적 축적이 효율적입니다. 카메라가 정지해 있으면 수 프레임에 걸쳐 노이즈가 자연스럽게 수렴합니다. 카메라가 빠르게 움직이는 경우에만 레이 수를 고려하세요.

Source Radius 활용

Directional Light의 Source Angle과 Local Light의 Source Radius를 적절히 설정하면 Contact Hardening 효과가 더 자연스러워집니다. 태양광의 경우 0.5357 정도가 물리적으로 정확합니다.

SUMMARY

핵심 요약

  • SMRT는 물리적으로 정확한 소프트 섀도우
  • Contact Hardening으로 거리별 자연스러운 블러
  • 레이 수로 품질/성능 트레이드오프 (8/8 기본)
  • 시간적 축적이 레이 수보다 효율적
PRACTICE

도전 과제

배운 내용을 직접 실습해보세요

실습 1: Contact Hardening 관찰

Directional Light의 Source Angle을 조절하면서 나무 그림자의 Contact Hardening 효과를 관찰하세요. 나무 밑동 근처(선명)와 먼 거리(부드러움)의 차이를 확인하세요.

실습 2: SMRT 레이 수 튜닝

r.Shadow.Virtual.SMRT.RayCountDirectional을 4, 8, 16으로 변경하면서 그림자 노이즈와 stat ShadowRendering SMRT 비용을 비교하세요.

심화 과제

다양한 Source Angle 값(0.1, 0.5357, 1.0, 2.0)에서 SMRT의 Penumbra 크기와 노이즈 수준을 분석하세요. 물리적으로 정확한 태양 크기(0.5357)와 예술적 과장 값의 시각적 차이를 문서화하세요.