재귀적 렌더링
이 기능은 고해상도 렌더 파이프라인(HDRP)에서 메시를 렌더링하기 위한 대체 파이프라인입니다. 이 렌더링 모드를 사용하는 게임 오브젝트는 굴절 광선과 반사 광선을 재귀적으로 캐스트합니다. 즉 광선이 표면에 닿으면 반사되거나 굴절되어 계속 다른 표면에 닿습니다. 광선이 프로젝트에 맞게 이 작업을 수행하는 최대 횟수를 제어할 수 있습니다.
머티리얼의 평활도는 광선이 반사되거나 굴절하는 방법에 영향을 미치지 않으므로 이 렌더링 모드는 멀티레이어로된 투명 게임 오브젝트를 렌더링하는 데 유용합니다.
재귀적 레이트레이싱으로 렌더링된 자동차 기어 시프트
재귀적 렌더링 사용
재귀적 렌더링은 볼륨 프레임워크를 사용합니다. 따라서 이 기능을 활성화하고 해당 프로퍼티를 수정하려면 씬의 볼륨에 Recursive Rendering 오버라이드를 추가해야 합니다. 이 작업을 수행하려면 다음 단계를 따르십시오.
- 씬 또는 계층 구조 뷰에서 Volume 컴포넌트가 포함된 게임 오브젝트를 선택하여 인스펙터에서 확인합니다.
- 인스펙터에서 Add Override > Ray Tracing으로 이동하여 Recursive Rendering을 클릭합니다.
- Recursive Rendering 볼륨 오버라이드에 대한 인스펙터에서 Enable 옵션을 선택합니다. Enable 옵션이 보이지 않는 경우 HDRP 프로젝트가 레이트레이싱을 지원하는지 확인해야 합니다. HDRP에서 레이트레이싱을 설정하는 데 대한 자세한 내용은 레이트레이싱으로 시작하기를 참조하십시오.
씬에 재귀적 렌더링을 설정했으므로 HDRP가 재귀적 렌더링을 사용하도록 게임 오브젝트를 설정하여 레이트레이싱 렌더링 패스를 사용해야 합니다. 이 작업을 수행하려면 다음 단계를 따르십시오.
- 씬 뷰나 계층 구조에서 게임 오브젝트를 선택하여 인스펙터에서 확인합니다.
- 게임 오브젝트에 연결된 머티리얼을 선택합니다.
- Surface Options 폴드아웃에서 **Recursive Rendering (Preview)**를 활성화합니다.
셰이더 그래프 마스터 노드에도 이 작업을 수행할 수 있습니다.
- 프로젝트 창에서 셰이더를 더블 클릭하여 셰이더 그래프에서 엽니다.
- Graph Inspector의 Graph Settings 탭에서 Surface Options로 이동하여 **Recursive Rendering (Preview)**를 활성화합니다.
자동차 헤드라이트처럼 멀티 바운스 반사와 굴절이 필요한 상황에서 재귀적 렌더링을 사용하는 편이 가장 좋습니다. 재귀적 렌더링이 거울이나 물웅덩이에서처럼 더 단순한 시나리오로 레이트레이싱 기반 리플렉션도 생성하지만 성능상의 이유로 여기에서는 레이트레이싱 기반 리플렉션을 사용하는 편이 가장 좋습니다.
재귀적 렌더링이 독립성 렌더 패스를 사용하므로 HDRP는 재귀적으로 렌더링된 게임 오브젝트에 다른 레이트레이싱 기반 효과를 렌더링할 수 없습니다. 예를 들어 레이트레이싱 기반 피하 산란이나 레이트레이싱 기반 섀도우와 같은 효과는 렌더링할 수 없습니다.
프로퍼티
프로퍼티 | 설명 |
---|---|
LayerMask | HDRP가 이 레이트레이싱 기반 효과를 처리할 레이어를 정의합니다. |
Max Depth | 광선이 멈추고 최종 컬러를 반환하기 전에 광선이 반사하거나 굴절할 수 있는 최대 횟수를 제어합니다. 이 값을 높이면 실행 시간도 기하급수적으로 늘어납니다. |
Ray Length | HDRP가 레이트레이싱에 사용하는 광선의 길이를 제어합니다. 광선이 교차점을 찾지 않으면 광선은 하늘의 컬러를 반환합니다. |
Min Smoothness | 타겟 표면의 평활도 값이 파라미터가 정의한 값보다 낮으면 반사 광선이 드리우지 않는 임계점을 정의합니다. |