가리키기 라이트 개요 — MRTK3
HoverLight
는 개체의 표면 근처를 가리키는 포인트 조명을 모방하는 Fluent Design 시스템 패러다임입니다. 원거리 조작에 자주 사용되는 애플리케이션은 HoverLight
구성 요소를 통해 가리키기 라이트의 속성을 제어할 수 있습니다.
HoverLight
의 영향을 받는 재질의 경우 Graphics Tools/Standard 또는 Graphics Tools/Standard Canvas 셰이더를 사용해야 하며 Hover Light 속성을 사용하도록 설정해야 합니다.
참고
Graphics Tools/Standard 및 Graphics Tools/Standard Canvas 셰이더는 기본적으로 최대 2개의 HoverLight
를 지원하지만 장면에 더 많은 조명이 추가되면 4개를 지원하도록 확장됩니다.
고급 사용
한 번에 4개의 HoverLight
만 재질을 비출 수 있습니다. 아래 샘플 코드에서는 재질에 영향을 주기 위해 5개 이상의 HoverLight
가 프로젝트에 필요한 경우 이를 수행하는 방법을 보여줍니다.
참고
많은 HoverLight
가 재질을 비추면 재질의 픽셀 셰이더 명령이 증가하고 성능에 영향을 줍니다. 이러한 변경 내용을 프로젝트 내에서 프로파일링하세요.
사용 가능한 HoverLight
수를 4개에서 10개로 늘리는 방법.
// 1) Within GraphicsToolsStandardInput.hlsl change:
#define HOVER_LIGHT_COUNT 4
// to:
#define HOVER_LIGHT_COUNT 10
// 2) Within HoverLight.cs change:
private const int hoverLightCount = 4;
// to:
private const int hoverLightCount = 10;
참고
Unity에서 아래와 유사한 경고를 로그하는 경우 변경 내용이 적용되기 전에 Unity를 다시 시작해야 합니다.
Property (_HoverLightData) exceeds previous array size (24 vs 20). Cap to previous > size.