Unity 반사 프로브 사용 가이드
개요
Unity의 반사 프로브는 씬 내에서 오브젝트의 반사를 캡처하고 저장하는 데 사용됩니다. 반사 프로브는 베이크된, 실시간, 커스텀의 세 가지 기본 타입으로 제공됩니다. 이 문서에서는 각 타입의 사용법과 기능에 대해 설명합니다.
반사 프로브 타입
프로브 타입 | 설명 |
---|---|
Baked | 에디터 내에서 생성된 반사 큐브맵을 저장하여 사용합니다. |
Realtime | 런타임 중에 큐브맵을 생성하여 반사 상황을 실시간으로 업데이트합니다. |
Custom | 베이크된 프로브처럼 작동하지만, 사용자 정의 큐브맵을 사용하여 반사를 표현합니다. |
1. 베이크된 반사 프로브
- 장점: 처리 오버헤드가 적고 실시간으로 갱신할 필요가 없는 환경에서 유용합니다.
- 사용법:
- 반사 프로브의 Type 프로퍼티를 Baked로 설정합니다.
- Reflection Probe Static으로 표시된 오브젝트만 반사가 가능합니다.
- Bake 버튼을 클릭하여 큐브맵을 업데이트합니다.
베이크 프로브의 특징
- 반사는 “동결” 상태로 유지되어 런타임 중에 변경사항에 반응하지 않습니다.
- 자동 베이킹을 설정하면, 씬 뷰에 오브젝트를 배치할 때 자동으로 업데이트됩니다.
2. 실시간 반사 프로브
- 장점: 씬 내의 변화를 실시간으로 반영하며, 동적인 오브젝트의 반사를 지원합니다.
- 사용법:
- 반사 프로브의 Type 프로퍼티를 Realtime으로 설정합니다.
- Culling Mask 및 Clipping Planes 속성을 사용하여 반사 큐브맵에서 오브젝트를 선택적으로 제외할 수 있습니다.
실시간 프로브의 특징
- 동적인 오브젝트에 대해 반사를 즉시 업데이트하지만, Reflection Probe Static 오브젝트가 변경될 때만 반사 큐브맵이 업데이트됩니다.
- 성능은 상대적으로 더 높은 오버헤드를 요구하지만, 자연스러운 반사 효과를 만듭니다.
3. 커스텀 반사 프로브
- 장점: 기본적으로 베이크된 프로브와 유사하게 작동하나, 더 많은 사용자 정의 기능을 제공합니다.
- 사용법:
- 반사 프로브의 Type 프로퍼티를 Custom으로 설정합니다.
- Dynamic Objects 프로퍼티를 통해 Reflection Probe Static으로 표시되지 않은 오브젝트도 반사 가능하게 설정할 수 있습니다.
커스텀 프로브의 특징
- Cubemap 프로퍼티를 통해 고유한 큐브맵을 할당할 수 있어, 특정 상황에서 더 특정한 반사 효과 가능합니다.
예시 코드
아래는 Unity에서 Baked 반사 프로브를 설정하는 코드 예제입니다:
using UnityEngine;
public class ReflectionProbeSetup : MonoBehaviour
{
public ReflectionProbe reflectionProbe;
void Start()
{
// 반사 프로브를 베이크된 타입으로 설정
reflectionProbe.mode = ReflectionProbeMode.Baked;
// 베이크 실행
reflectionProbe.Bake();
}
}
결론
Unity의 반사 프로브는 씬 내에서의 조명과 반사를 관리하는 데 있어 매우 유용한 도구입니다. 각 프로브 타입의 장단점을 이해하고 상황에 맞게 사용하면 보다 현실적이고 성능이 우수한 씬을 만들 수 있습니다.