Partilhar via


Luz sensível ao rato — MRTK2

A HoverLight é um paradigma Sistema Fluent Design que imita uma luz de ponto a pairar perto da superfície de um objeto. Frequentemente utilizada para interações distantes, a aplicação pode controlar as propriedades de uma Luz Sensível à Passagem do Rato através do HoverLight componente .

Para que um material seja influenciado por um HoverLightMixed Reality Toolkit/Standard tem de ser utilizado e a propriedade Hover Light tem de estar ativada.

Nota

O sombreado MRTK/Standard suporta até dois HoverLights por predefinição, mas será dimensionado para suportar quatro e dez à medida que forem adicionadas mais luzes ao local.

Exemplos

A maioria das cenas no MRTK utilizam um HoverLight. O caso de utilização mais comum pode ser encontrado no MRTK/SDK/Features/UX/Prefabs/Cursors/DefaultCursor.prefab

A cena HoverLightExamples também demonstra a utilização de HoverLight comportamentos e pode ser encontrada em: MRTK/Examples/Demos/StandardShader/Scenes/

Utilização Avançada

Só dez HoverLights podem iluminar um material de cada vez. Se o seu projeto precisar de mais de dez HoverLights para influenciar um material , o código de exemplo abaixo demonstra como o conseguir.

Nota

Ter muitos HoverLights a iluminar um material aumentará as instruções do sombreado de píxeis e afetará o desempenho. Crie um perfil destas alterações no seu projeto.

Como aumentar o número de disponíveis HoverLights de dez para doze.

// 1) Within MRTK/Core/StandardAssets/Shaders/MixedRealityStandard.shader change:

#if defined(_HOVER_LIGHT_HIGH)
#define HOVER_LIGHT_COUNT 10

// to:

#if defined(_HOVER_LIGHT_HIGH)
#define HOVER_LIGHT_COUNT 12

// 2) Within MRTK/Core/Utilities/StandardShader/HoverLight.cs change:

private const int hoverLightCountHigh = 10;

// to:

private const int hoverLightCountHigh = 12;

Nota

Se o Unity registar um aviso semelhante ao seguinte, tem de reiniciar o Unity antes de as alterações entrarem em vigor.

Property (_HoverLightData) exceeds previous array size (24 vs 20). Cap to previous >size.

Ver também