Partager via


Vue d’ensemble de la lumière du pointage — MRTK3

Un HoverLight est un paradigme Système Fluent Design qui imite une lumière pointante près de la surface d’un objet. Souvent utilisée pour les interactions lointaines, l’application peut contrôler les propriétés d’une lumière de pointage via le HoverLight composant .

Exemple de lumière de pointage

Pour qu’un matériau soit influencé par un HoverLight, le nuanceur Graphics Tools/Standard ou Graphics Tools/Standard Canvas doit être utilisé et la propriété Hover Light doit être activée.

Remarque

Les nuanceurs Graphics Tools/Standard et Graphics Tools/Standard Canvas prennent en charge jusqu’à deux HoverLights par défaut, mais sont mis à l’échelle pour prendre en charge quatre à mesure que d’autres lumières sont ajoutées à la scène.

Utilisation avancée

Seulement quatre HoverLightpeuvent éclairer un matériau à la fois. Si votre projet nécessite plus de quatre HoverLights pour influencer un matériau, l’exemple de code ci-dessous montre comment y parvenir.

Remarque

Le fait que plusieurs HoverLights éclairent un matériau augmente les instructions du nuanceur de pixels et aura un impact sur les performances. Profilez ces modifications dans votre projet.

Comment augmenter le nombre de s disponibles HoverLightde quatre à dix.

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

Remarque

Si Unity enregistre un avertissement similaire à celui ci-dessous, vous devez redémarrer Unity avant que vos modifications prennent effet.

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

Voir aussi