Version: 2019.4
Reflection Probes
반사 프로브 사용

반사 프로브의 타입

반사 프로브에는 세 가지 기본 타입이 있으며 인스펙터의 Type 프로퍼티에서 선택합니다. 자세한 내용은 컴포넌트 레퍼런스 페이지를 참조하십시오.

  • Baked probes store a reflection cubemap generated (“baked”) within the editor. You can trigger the baking by clicking either the Bake button at the bottom of the Reflection Probe inspector or the Build button in the Lighting window. If you have Auto enabled in the Lighting window then baked probes will be updated automatically as you place objects in the Scene view. The reflection from a baked probe can only show objects marked as Reflection Probe Static in the inspector. This indicates to Unity that the objects will not move at runtime.
  • 실시간 프로브는 에디터가 아니라 플레이어에서 런타임 시점에 큐브맵을 생성합니다. 즉 반사가 정적 오브젝트로 제한되지 않으며 씬에 일어난 변화를 보여주기 위해 실시간으로 업데이트될 수 있습니다. 그러나 프로브의 뷰를 새로 고치는 데 프로세싱 시간이 상당히 오래 걸리기 때문에 업데이트를 주의 깊게 관리해야 합니다. Unity에서는 스크립트로 업데이트를 트리거할 수 있기 때문에 업데이트가 발생하는 시점을 정확하게 제어할 수 있습니다. 또한 프로브 업데이트에 타임슬라이싱 을 적용하는 옵션이 있으며, 이를 통해 여러 프레임에 걸쳐 업데이트가 서서히 일어나도록 할 수 있습니다.
  • 커스텀 프로브 타입도 사용할 수 있습니다. 이 프로브를 사용하면 베이크된 프로브처럼 에디터에서 뷰를 베이크할 수 있으며 반사를 위한 커스텀 큐브맵도 사용할 수 있습니다. 커스텀 프로브는 런타임 시점에 업데이트할 수 없습니다.

이 세 가지 타입은 아래 세부 사항에서 설명합니다.

베이크된 및 커스텀 반사 프로브

베이크된 반사 프로브의 반사 큐브맵은 Unity 에디터에 캡처 및 저장되어 추후 플레이어에서 사용됩니다. 자세한 내용은 반사 프로브 소개를 참조하십시오. 일단 캡처 프로세스가 완료되면 반사는 “동결”되며, 따라서 베이크된 프로브는 움직이는 오브젝트가 유발한 씬의 런타임 변경사항에 반응할 수 없습니다. 그러나 베이크된 프로브는 변경 사항에 반응하는 실시간 프로브에 비해 프로세싱 오버헤드가 훨씬 낮으며 여러 가지 목적으로 사용할 수 있습니다. 예를 들어 움직이는 반사 오브젝트가 하나만 있을 경우 이 오브젝트는 정적 주변 환경만 반사하면 됩니다.

베이크된 프로브 사용

프로브가 베이크된 프로브로써 동작하도록 하려면 이 프로브의 Type 프로퍼티를 Baked 또는 Custom 으로 설정해야 합니다. 커스텀 프로브가 제공하는 추가 기능은 아래를 참조하십시오.

베이크된 프로브가 캡처하는 반사에는 모든 오브젝트용 인스펙터 패널의 왼쪽 상단에 있는 Static 메뉴를 사용하여 Reflection Probe Static 으로 표시된 씬 오브젝트만 포함할 수 있습니다. 반사 큐브맵에 포함된 오브젝트를 더 다듬으려면 Culling MaskClipping Planes 프로퍼티를 사용하면 됩니다. 이 프로퍼티는 카메라와 동일한 방법으로 작동합니다. 프로브는 기본적으로 여섯 개의 큐브맵 전면을 바라보도록 회전하는 카메라와 같습니다.

When the Auto option is switched on (from the Lighting window, the baked reflections will update automatically as you position objects in the scene. If you are not making use of auto baking then you will need to click the Bake button in the Reflection Probe inspector to update the probes. (The Build button in the Lighting window will also trigger the probes to update.)

자동 또는 수동 베이킹을 사용하는 경우에도 에디터에서 계속 작업하는 동안 베이크 프로세스가 비동기적으로 수행됩니다. 하지만 정적 오브젝트를 이동하거나 머티리얼을 변경하거나 시각적 형상을 변경하면 베이킹 프로세스가 다시 시작됩니다.

커스텀 프로브

기본적으로 커스텀 프로브는 베이크된 프로브와 동일한 방식으로 작동합니다. 하지만 커스텀 프로브에는 이 동작을 변화하는 추가 옵션도 있습니다.

커스텀 프로브의 인스펙터에 있는 Dynamic Objects 프로퍼티를 통해 Reflection Probe Static 으로 표시되지 않은 오브젝트가 반사 큐브맵에 포함될 수 있습니다. 하지만 이러한 오브젝트의 포지션은 베이킹 시점의 반사에서는 여전히 “동결”되어 있습니다.

Cubemap 프로퍼티를 통해 직접 만든 큐브맵을 프로브에 할당할 수 있고 이에 따라 큐브맵을 뷰 포인트에서 “볼” 수 있는 것과는 완전히 독립적으로 만들 수 있습니다. 이를 사용하면 3D 모델링 프로그램에서 생성한 스카이박스 또는 큐브맵 등을 반사의 소스로 설정할 수 있습니다.

실시간 프로브

베이크된 프로브는 여러 가지 목적으로 유용하게 사용할 수 있으며 런타임 성능이 훌륭합니다. 하지만 플레이어에서 라이브 업데이트가 되지 않는다는 단점이 있습니다. 즉 오브젝트가 씬에서 움직일 수 있으나 그 반사가 오브젝트를 따라서 움직이지는 않는다는 의미입니다. 이러한 제한을 피하고 싶다면 런타임 시점에 반사 큐브맵을 업데이트하는 Realtime 프로브를 사용하면 됩니다. 이 효과는 프로세싱 오버헤드가 높지만 현실성을 크게 향상시켜 줍니다.

실시간 프로브 사용

프로브가 런타임 시점에 업데이트되도록 하려면 반사 프로브 인스펙터에서 프로브의 Type 프로퍼티를 Realtime 으로 설정해야 합니다. 베이크된 프로브와는 달리 오브젝트의 반사를 캡처하기 위해 오브젝트를 Reflection Probe Static 으로 표시하지 않아도 됩니다. 하지만 Culling MaskClipping Planes 프로퍼티를 사용하여 오브젝트를 반사 큐브맵에서 선택적으로 제외할 수 있습니다. 이 프로퍼티는 카메라의 경우와 동일한 방법으로 작동합니다. 프로브는 기본적으로 여섯 개의 큐브맵 전면을 바라보도록 회전하는 카메라와 같습니다.

In the editor, realtime probes have much the same workflow as baked probes, although they tend to render more quickly. When the Auto option is switched on (from the Lighting window, the reflections will update automatically as you position objects in the scene. If you are not making use of auto baking then you will need to click the Bake button in the Reflection Probe inspector to update the probes. (The Build button in the Lighting window will also trigger the probes to update.)

자동 또는 수동 베이킹을 사용하는 경우에도 에디터에서 계속 작업하는 동안 베이크 프로세스가 비동기적으로 수행됩니다. 하지만 정적 오브젝트를 이동하거나 머티리얼을 변경하거나 시각적 형상을 변경하면 베이킹 프로세스가 다시 시작됩니다.

Note: Currently, realtime probes will only update their reflections in the Scene view when Reflection Probe Static objects are moved or change their appearance. This means that moving dynamic objects will not cause an update even though those objects appear in the reflection. You should choose the Bake Reflection Probes option from the Build button popup on the Lighting window to update reflections when a dynamic object is changed.

Reflection Probes
반사 프로브 사용