Attention: Here be dragons

This is the latest (unstable) version of this documentation, which may document features not available in or compatible with released stable versions of Godot.

반사 프로브

doc_standard_material_3d`에 명시된 대로 물체는 반사광 및/또는 확산광을 표시할 수 있습니다. 반사 프로브는 영향을 받는 영역 내부의 물체에 대해 반사된 *및* 주변광의 소스로 사용됩니다. 시스템 리소스를 상당히 저렴하게 사용하면서 :ref:`VoxelGI 및 :ref:`SDFGI <doc_using_sdfgi>`보다 더 정확한 반사를 제공하는 데 사용할 수 있습니다.

반사 프로브는 주변광도 저장할 수 있으므로 :ref:`베이크된 라이트맵 <doc_using_lightmap_gi>`이 실행 가능하지 않을 때(예: 절차적으로 생성된 레벨에서) VoxelGI 및 SDFGI에 대한 저가형 대안으로 사용할 수 있습니다.

반사 프로브는 화면 공간 반사와 동시에 사용되어 화면 밖의 개체에 대한 반사를 제공할 수도 있습니다. 이 경우 Godot는 화면 공간 반사와 반사 프로브의 반사를 함께 혼합합니다.

더 보기

ReflectionProbe가 귀하의 요구 사항에 적합한지 확실하지 않습니까? Godot 4에서 사용할 수 있는 GI 기술 비교는 :ref:`doc_introduction_to_global_illumination_comparison`를 참조하세요.

시각적 비교

반사 프로브가 비활성화되었습니다. 환경 하늘은 대체로 사용됩니다.

반사 프로브가 비활성화되었습니다. 환경 하늘은 대체로 사용됩니다.

반사 프로브가 활성화됩니다.

반사 프로브가 활성화됩니다.

반사 프로브가 활성화됩니다.

동시에 사용되는 LightmapGI와 함께 반사 프로브가 활성화됩니다. 라이트맵이 반사에 나타납니다.

반사 프로브를 화면 공간 반사와 결합하면 일반 공간 구조에 대한 고품질 반사(화면 밖에서도 유지됨)와 작은 세부 사항에 대한 실시간 반사라는 두 가지 장점을 모두 얻을 수 있습니다.

ReflectionProbe만 사용하는 방의 반사.

ReflectionProbe만 사용하는 방의 반사. 얼마나 작은 세부 사항에 반사가 없는지 확인하십시오.

화면 공간 반사만 사용하는 방의 반사입니다.

화면 공간 반사만 사용하는 방의 반사입니다. 화면 외부로 인해 방 벽 측면의 반사가 부분적으로 누락되는 것을 확인하세요.

ReflectionProbe와 화면 공간 반사를 함께 사용하는 방의 반사.

ReflectionProbe와 화면 공간 반사를 함께 사용하는 방의 반사. 화면 공간 반사는 반사 프로브와 혼합되어 반사 프로브가 반사를 표시하지 못하는 상황에서 대체 역할을 합니다.

맞춤 빌드 환경 설정하기

  • Sprite

  • 씬에 맞게 검사기에서 ReflectionProbe의 범위를 구성합니다. 합리적으로 정확한 반사를 얻으려면 일반적으로 방당 하나의 ReflectionProbe 노드가 있어야 합니다(때때로 큰 방의 경우 더 많음).

ReflectionProbe 범위는 정사각형일 필요는 없으며 X/Z 그리드에 정렬되지 않은 공간에 맞게 ReflectionProbe 노드를 회전할 수도 있습니다. ReflectionProbe 노드를 너무 많이 배치하지 않고도 공간을 더 효과적으로 보호하려면 이 기능을 활용하세요.

노드 속성

  • 업데이트 모드: 반사 프로브가 업데이트되는 시기를 제어합니다. Once**는 ReflectionProbe가 이동할 때마다 씬을 한 번만 렌더링합니다. 이렇게 하면 프로브가 프레임마다 주변의 모든 것을 강제로 다시 렌더링하는 **항상 업데이트 모드에 비해 렌더링 속도가 훨씬 빨라집니다. 모든 프레임을 업데이트하기 위해 반사 프로브가 필요하지 않은 한 이 속성을 **Once**(기본값)로 유지합니다.

  • 강도: 반사 및 주변 조명의 밝기입니다. 일반적으로 기본값인 ``1.0``에서 변경할 필요가 없지만 반사가 너무 강해 보인다면 ``1.0``를 줄일 수 있습니다.

  • 최대 거리: ReflectionProbe의 내부 카메라가 사용하는 최대 거리를 제어합니다. 거리는 항상 최소한 **범위**와 동일하지만, 범위 외부에 있는 객체가 반사에 표시되도록 하기 위해 거리를 늘릴 수 있습니다. 이 속성은 ReflectionProbe 자체가 표시되는 최대 거리에 영향을 주지 않습니다.

  • 범위: ReflectionProbe의 조명 및 반사에 의해 영향을 받는 영역입니다.

  • 원점 오프셋: 반사 프로브 렌더링에 사용되는 내부 카메라에 사용할 원점입니다. 이는 항상 범위 내에서 제한되어야 합니다. 필요한 경우 이를 조정하여 ReflectionProbe의 중심에 정확히 위치한 고체 개체에 의해 반사가 방해되지 않도록 합니다.

  • 상자 투영: 반사 프로브를 렌더링할 때 시차 보정을 사용해야 하는지 여부를 제어합니다. 이는 (반사 프로브를 기준으로) 카메라의 위치에 따라 반사의 모양을 조정합니다. 이는 성능 비용이 적지만 상자 모양의 공간에서는 품질 향상이 그만한 가치가 있는 경우가 많습니다. 이 효과는 모양이 덜 규칙적인 방(예: 타원 모양의 방)에서는 잘 작동하지 않습니다.

  • 내부: 활성화하면 주변 조명이 환경 하늘에서 소싱되지 않으며 배경 하늘이 반사 프로브에 렌더링되지 않습니다.

  • 그림자 활성화: 반사 프로브 내에서 실시간 빛 그림자를 렌더링해야 하는지 여부를 제어합니다. 성능을 희생하면서 반사 품질을 향상시키려면 이 옵션을 활성화하세요. 매 프레임마다 그림자가 포함된 반사를 렌더링하는 데 비용이 많이 들기 때문에 Always 모드가 있는 반사 프로브에서는 이 기능을 비활성화된 상태로 두어야 합니다. 완전히 베이크된 조명 그림자는 이 설정의 영향을 받지 않으며 관계없이 반사 프로브에서 렌더링됩니다.

  • 컬 마스크: 반사에 표시되는 개체를 제어합니다. 이는 반사에서 작은 물체를 제외하여 성능을 향상시키는 데 사용할 수 있습니다. 이는 **원점 오프셋**을 사용할 수 없는 상황에서 개체에 자체 반사 아티팩트가 발생하는 것을 방지하는 데에도 사용할 수 있습니다.

  • 메시 LOD 임계값: 반사 내에서 메시를 렌더링하는 데 사용할 자동 세부 수준 임계값입니다. 이는 자동 LOD가 생성된 메시에만 영향을 미칩니다. 값이 높을수록 덜 상세한 형상을 사용하여 성능이 향상될 수 있으며, 특히 반사 원점에서 멀리 떨어져 있는 객체의 경우 더욱 그렇습니다. 덜 상세한 개체를 사용하는 경우의 시각적 차이는 일반적으로 게임 플레이 중에 눈에 띄지 않으며, 특히 거친 반사에서는 더욱 그렇습니다.

Ambient 카테고리에는 ReflectionProbe가 렌더링한 주변 조명을 조정하는 여러 속성이 있습니다.

  • 모드: 비활성화**로 설정하면 프로브가 주변광을 추가하지 않습니다. **환경**으로 설정하면 주변광 색상이 환경 하늘(**내부**가 비활성화된 경우)과 반사의 평균 색상에서 자동으로 샘플링됩니다. **Constant Color**로 설정하면 **Color 속성에 지정된 색상이 대신 사용됩니다. 일정한 색상 모드는 대략적인 영역 조명으로 사용할 수 있습니다.

  • 색상: 주변광 모드가 **일정 모드**로 설정된 경우 사용할 색상입니다.

  • 색상 에너지: 주변광 사용자 정의 **색상**에 사용할 승수입니다. 이는 주변광 모드가 **사용자 정의 색상**인 경우에만 효과가 있습니다.

반사프로브 블렌딩

반사 소스 사이의 전환을 더 부드럽게 만들기 위해 Godot는 자동 프로브 블렌딩을 지원합니다:

  • 주어진 위치에서 최대 4개의 ReflectionProbe를 함께 혼합할 수 있습니다. 또한 ReflectionProbe는 다른 ReflectionProbe 노드에 닿지 않을 때 환경 조명으로 부드럽게 페이드 아웃됩니다.

  • SDFGI 및 VoxelGI는 사용되는 경우 ReflectionProbe와 원활하게 혼합됩니다. 이를 통해 ReflectionProbe를 전략적으로 배치하여 필요한 경우 보다 정확한(또는 완전 실시간) 반사를 얻으면서도 VoxelGI 또는 SDFGI의 영향 영역에서 대략적인 반사를 계속 사용할 수 있습니다.

여러 ReflectionProbe를 서로 블렌딩하려면 각 ReflectionProbe의 일부가 서로의 영역을 겹쳐야 합니다. 렌더링 성능을 향상하려면 범위가 다른 반사 프로브와 가능한 한 적게 겹쳐야 합니다(일반적으로 3D 공간의 몇 단위).

제한 사항

Forward+ 렌더러를 사용할 때 Godot는 반사 프로브 렌더링을 위해 클러스터링 접근 방식을 사용합니다. 원하는 만큼 반사 프로브를 추가할 수 있습니다(성능이 허용하는 한). 그러나 현재 카메라 뷰에 표시될 수 있는 *클러스터 요소*는 기본적으로 512개로 제한됩니다. 클러스터된 요소는 옴니 라이트, 스포트 라이트, decal 또는 :ref:`반사 프로브 <doc_reflection_probes>`입니다. **프로젝트 설정 > 렌더링 > 제한 > 클러스터 빌더**에서 :ref:`Max Clustered Elements<class_ProjectSettings_property_rendering/limits/cluster_builder/max_clustered_elements>`를 조정하여 이 제한을 늘릴 수 있습니다.

모바일 렌더러를 사용할 때 각 개별 메시 *리소스*에는 8개의 반사 프로브만 적용할 수 있습니다. 단일 메시에 영향을 미치는 반사 프로브가 더 많은 경우 모든 반사 프로브가 메시에 렌더링되지는 않습니다.

마찬가지로 호환성 렌더러를 사용하는 경우 메시당 최대 2개의 반사 프로브를 적용할 수 있습니다. 2개 이상의 반사 프로브가 단일 메시에 영향을 미치는 경우 추가 프로브는 렌더링되지 않습니다.