그래픽 품질 조절하는 세팅들임. 낮출수록 퍼포먼스 좋아짐. 높일수록 그래픽 좋아짐. 아래는 각 세팅의 역할임.
GlobalIlluminationSetting
전역 조명 품질 설정함. Lumen, SSGI 같은 간접광 효과 품질 조절됨.
낮추면 간접광 표현 없어지거나 품질 낮아짐.
ReflectionSetting
반사 품질 설정함. 스크린 공간 반사(SSR), Lumen 반사, 큐브맵 반사 등에 영향 줌.
낮추면 반사 흐리거나 단순화됨.
ShadowSetting
그림자 품질 조절함. 해상도, 샘플링, 거리 등에 영향 줌.
낮추면 그림자 흐릿하거나 사라짐.
VolumetricsSetting
볼류메트릭 효과 품질 설정함. 안개, 광선, 조명 산란 같은 효과 포함됨.
낮추면 분위기 연출 떨어짐.
ViewDistanceSettiing
오브젝트 렌더링 거리 설정함. 높을수록 멀리 있는 오브젝트까지 보임.
퍼포먼스 영향 큼. 낮추면 멀리 있는 건 안 보임.
TexturesSetting
텍스처 해상도 품질 조절함. 낮추면 저해상도 텍스처 사용해서 메모리 절약함.
그래픽 퀄리티 감소함.
TexturesFilteringSetting
텍스처 필터링 방식 설정함. Bilinear, Trilinear, Anisotropic 같은 거 바뀜.
높일수록 각도에 따른 텍스처 품질 유지됨.
EffectSetting
파티클, 불꽃, 연기 등 이펙트 품질 설정함.
낮추면 이펙트 개수 줄거나 단순해짐.
FoliageSetting
식생(풀, 나무 등) 렌더링 품질 설정함. 거리, 밀도, LOD 등에 영향 줌.
낮추면 풀 잘 안 보임.
ShadingSetting
머티리얼 셰이딩 품질 조절함. PBR, 서브서피스 같은 고급 기능 포함됨.
낮추면 머티리얼 단순화됨.
추가 정보
각 세팅은 보통 0~3 사이 값 가짐.
0 = Low, 1 = Medium, 2 = High, 3 = Epic
코드에서 이렇게 설정 가능함:
Scalability::FQualityLevels Quality;
Quality.SetFromSingleQualityLevel(3); // 전체 Epic으로 설정
Scalability::SetQualityLevels(Quality);
Global Illumination 방식 정리 (Lumen vs Screen Space GI)
Unreal Engine에서는 Global Illumination(GI) 방식으로 크게 두 가지 제공함:
| Lumen | 고품질 동적 GI 시스템. 정반사, 간접광, 반사 등 동적으로 계산함. 엔진이 DX12, SM5, RT 지원해야 하고 프로젝트 설정에서 활성화 필요함. |
| Screen Space GI (SSGI) | GI를 화면에 보이는 픽셀만으로 추정하는 방식. 퍼포먼스는 좋지만 정확도 떨어짐. Lumen이 꺼졌거나 지원 안 하면 자동으로 fallback 됨. |
왜 Scalability 세팅만으로 Lumen 전환이 안 되는가?
Scalability::SetQualityLevels() 또는 r.GlobalIlluminationQuality 같은 콘솔 명령어로 GI 품질을 조절해도,
Lumen 자체를 켜거나 끄는 기능은 아님.
Lumen은 프로젝트 설정 + 레벨 세팅 + 엔진 런타임 초기 상태에서만 제대로 활성화됨.
즉:
- 프로젝트 세팅에서 Lumen 활성화 안 되어 있으면, Scalability를 아무리 높여도 SSGI에서 Lumen으로 안 넘어감.
- 반대로 처음부터 Lumen이 켜져 있었다면, 런타임 중에 Scalability 변경을 통해 Lumen ↔ SSGI 전환 가능함 (r.GlobalIllumination.Method 1 or 2).
처음부터 Lumen으로 세팅해놔야, 런타임 중에 Scalability나 콘솔 커맨드로 Lumen <-> ScreenSpace GI 전환이 가능하다.
처음에 Lumen이 꺼져 있었으면, 나중에 켜려 해도 안 됨.
Lumen은 기본적으로 엔진 초기화 시점에 구성됨
- Lumen은 단순히 Scalability Quality에 따른 옵션이 아님.
- 렌더링 파이프라인에서 GI 및 Reflection 방식을 Lumen으로 구성하는 것은 엔진이 시작할 때 설정된 값(또는 DefaultEngine.ini)에 따라 결정됨.
- 만약 프로젝트 세팅 또는 r.DynamicGlobalIlluminationMethod가 처음에 Lumen이 비활성화 상태면 Lumen 시스템은 로드조차 안 됨.
그 상태에서 Scalability나 콘솔 명령어로 GI 퀄리티를 조절해봤자 방식이 바뀌지 않음.
Scalability는 방식(method)이 아닌 품질(quality)을 조절.
r.DynamicGlobalIlluminationMethod=1 ; GI 방식 (0=None, 1=Lumen, 2=SSGI)
r.GlobalIlluminationQuality=3 ; GI 품질 (0~3)
왜냐면 Lumen은 GPU 파이프라인 및 여러 서브시스템이 초기화 단계에서 활성화되기 때문임.
확인하고 설정할 곳
- 프로젝트 세팅 > Rendering
- Dynamic Global Illumination Method = Lumen
- Reflection Method = Lumen
- 콘솔 변수
-
복사편집r.DynamicGlobalIlluminationMethod=1 ; 0 = None, 1 = Lumen, 2 = SSGI r.ReflectionMethod=1 ; 0 = None, 1 = Lumen, 2 = SSR, etc.
- ini
- Scalability는 품질만 조절, 방식 전환은 안 됨
예: r.GlobalIlluminationQuality 3 ← 품질만 조절, Lumen 활성화 아님.
'프로그래밍 > 언리얼엔진' 카테고리의 다른 글
| RHI 설정 (0) | 2025.07.26 |
|---|---|
| [언리얼] Anti-Aliasing, Upscaling Method (0) | 2025.05.30 |
| 그래픽스 공부 (0) | 2025.04.26 |
| 프로파일링과 최적화 작업 (0) | 2025.04.12 |
| 개인 작업-1- (0) | 2025.03.22 |