Condividi tramite


Panoramica della luce al passaggio del mouse - MRTK3

Un HoverLight è un paradigma Fluent Design System che simula una luce del punto che si sposta vicino alla superficie di un oggetto. Spesso usato per le interazioni lontane, l'applicazione può controllare le proprietà di una luce al passaggio del mouse tramite il HoverLight componente .

Esempio di luce al passaggio del mouse

Affinché un materiale venga influenzato da un HoverLightoggetto , è necessario utilizzare gli strumenti di grafica/standard o gli strumenti grafici/canvas shader standard e la proprietà Hover Light deve essere abilitata.

Nota

Gli strumenti grafici/Strumenti grafici/Strumenti grafici/Canvas shader standard supportano fino a due HoverLights per impostazione predefinita, ma verranno ridimensionati in modo da supportare quattro luci man mano che vengono aggiunte altre luci alla scena.

Uso avanzato

Solo quattro HoverLights possono illuminare un materiale alla volta. Se il progetto richiede più di quattro HoverLights per influenzare un materiale, il codice di esempio seguente illustra come ottenere questo risultato.

Nota

La presenza di molti HoverLightelementi illumina un materiale aumenterà le istruzioni del pixel shader e influirà sulle prestazioni. Profila queste modifiche all'interno del progetto.

Come aumentare il numero di disponibili HoverLightda quattro a dieci.

// 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;

Nota

Se Unity registra un avviso simile al seguente, è necessario riavviare Unity prima che le modifiche vengano applicate.

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

Vedi anche