Reflection Probe 는 주변의 스피리컬 뷰를 모든 방향에서 캡처하는 카메라와 유사합니다. 캡처된 이미지는 반사 머티리얼이 있는 오브젝트에서 사용할 수 있는 Cubemap으로 저장됩니다. 특정 씬에는 여러 반사 프로브를 사용할 수 있고, 가장 가까운 프로브가 생성한 큐브맵을 사용하도록 오브젝트를 설정할 수 있습니다. 이렇게 하면 오브젝트의 반사가 주변 환경에 따라 매우 사실적으로 변할 수 있습니다.
Unity는 프로젝트가 사용하는 렌더 파이프라인에 따라 반사 프로브 인스펙터에서 서로 다른 프로퍼티를 표시합니다.
프로퍼티: | 기능: |
---|---|
Type | 프로브가 Baked, Custom 또는 Realtime 중에서 어느 설정을 위한 것인지 선택합니다. Baked 를 선택하면 반사 프로브가 런타임 시점에 반사 프로브 정적 플래그가 비활성화된 게임 오브젝트를 캡처하지 않습니다. 베이크된 반사 프로브에서 동적 게임 오브젝트를 캡처하려면 Custom 을 선택하고 Dynamic Objects 를 활성화하십시오. |
Dynamic Objects | (Custom 타입에만 해당) Static 으로 표시되지 않은 오브젝트가 반사에 강제로 베이크되도록 합니다. |
Cubemap | (Custom 타입에만 해당) 프로브에 대해 커스텀 Cubemap을 설정합니다. |
Refresh Mode | (Realtime 타입에만 해당) 프로브를 런타임 시점에 새로 고칠 것인지 여부와 새로 고칠 방법을 선택합니다. 깨어나기 옵션을 선택하면 프로브를 처음 활성화할 때 한 번만 렌더링합니다. 매 프레임 을 선택하면 프레임이 업데이트될 때마다 Time Slicing 옵션을 사용하여 프로브를 렌더링합니다(아래 참조). Via Scripting 옵션을 선택하면 자동 업데이트를 사용하지 않고 사용자 스크립트 커맨드에서 프로브를 새로 고칩니다. |
Time Slicing | (Realtime 타입에만 해당) 프로브 업데이트의 시간 배분을 설정합니다. 옵션은 All Faces At Once(아홉 프레임에 걸쳐 업데이트 분산), Individual Faces(14 프레임에 걸쳐 업데이트 분산), No Time Slicing(한 프레임에 전체 업데이트)입니다. 자세한 내용은 아래를 참조하십시오. |
Runtime settings | |
Importance | 주변의 다른 프로브와 비교한 이 프로브의 “중요”도입니다. 값이 높을수록 더 중요함을 나타냅니다. 오브젝트가 두 개 이상의 프로브 범위 이내에 있는 경우 더 중요한 프로브가 덜 중요한 프로브보다 우선 순위가 있습니다. 이 설정은 여기에 설명된 블렌딩에도 영향을 미칩니다. |
Intensity | 셰이더에서 이 프로브의 텍스처에 적용되는 강도 한정자입니다. |
Box Projection | 반사 UV 매핑에 대해 투영을 활성화하려면 이 상자를 선택합니다. |
Box Size | The size of the probe’s bounding box in which the probe can contribute to reflections. The size is in world space. Also used by Box Projection. |
Box Offset | The center of the probe’s bounding box in which the probe can contribute to reflections. The offset is relative to the position of the probe. Also used by Box Projection. |
큐브맵 캡처 설정 | |
Resolution | 캡처된 반사 이미지의 해상도입니다. |
HDR | 큐브맵에 HDR(High Dynamic Range) 렌더링을 활성화할 것인지 설정합니다. 프로브 데이터 저장 포맷을 OpenEXR 또는 PNG 포맷 중에서 결정하기도 합니다. |
Shadow Distance | 프로브를 렌더링할 때 섀도우를 그리는 거리입니다. |
Clear Flags | 큐브맵의 빈 배경 영역을 채울 방법을 지정하는 옵션입니다. 옵션은 Skybox 및 Solid Color 입니다. |
Background | 렌더링하기 전에 반사 큐브맵을 지울 때 표시되는 배경색입니다. |
Culling Mask | 지정된 레이어의 오브젝트를 반사에 포함시키거나 제외할 수 있습니다. 레이어 페이지에서 카메라의 컬링 마스크에 대한 섹션을 참조하십시오. |
Use Occlusion Culling | 프로브를 베이킹할 때 오클루전 컬링을 사용할지 설정합니다. |
Clipping Planes | 프로브 “카메라”의 가깝고 먼 클리핑 평면입니다. |
Reflection Probe 인스펙터 창 상단에는 Size 및 Probe Origin 프로퍼티를 씬 안에서 직접 편집하는 데 사용하는 버튼이 두 개 있습니다. 왼쪽 버튼(Size)을 누르면 프로브의 효과 영역이 상자 크기를 조정하는 핸들이 있는 노란색 상자 형태로 씬에 표시됩니다.
오른쪽 버튼(Origin)을 눌러 상자를 기준으로 프로브의 원점을 드래그할 수 있습니다. 원점 핸들은 트랜스폼 포지션 핸들과 비슷하지만 두 포지션은 같지 않습니다. 또한 프로브 박스의 경우 회전 및 스케일 동작을 사용할 수 없습니다.
프로브의 Type 프로퍼티는 반사 데이터를 만들고 업데이트하는 방법을 결정합니다:
반사 큐브맵을 이용하기 위해서는 오브젝트의 메시 렌더러에 Reflection Probes 옵션이 활성화되어 있어야 하고, 오브젝트가 반사 프로브를 지원하는 셰이더를 사용해야 합니다. 오브젝트가 프로브의 Size 및 Probe Origin 프로퍼티에 따라 설정된 영역 안을 지나면 프로브의 큐브맵이 해당 오브젝트에 적용됩니다.
오브젝트의 Mesh Renderer에 있는 설정을 사용하여 특정 오브젝트에 사용할 반사 프로브를 수동으로 설정할 수도 있습니다. 이렇게 하려면 메시 렌더러의 Reflection Probes 프로퍼티 옵션(Simple, Blend Probes 또는 Blend Probes and Skybox) 중에서 하나를 선택하고 선택된 프로브를 Anchor Override 프로퍼티로 드래그해야 합니다.
원리와 사용법에 대해 자세한 내용은 매뉴얼의 반사 프로브 섹션을 참조하십시오.
ReflectionProbe