Vue d’ensemble des lumières de pointage — MRTK3
Un HoverLight
est un paradigme du Système Fluent Design qui imite une lumière ponctuelle pointant près de la surface d’un objet. Souvent utilisée pour les interactions à distance, l’application peut contrôler les propriétés d’une lumière de pointage via le composant HoverLight
.
Pour qu’un matériau soit influencé par une HoverLight
, le nuanceur Graphics Tools/Standard ou Graphics Tools/Standard Canvas doit être utilisé et la propriété Lumière de pointage activée.
Notes
Les nuanceurs Graphics Tools/Standard et Graphics Tools/Standard Canvas prennent en charge jusqu’à deux HoverLight
s par défaut, mais en prendront en charge jusqu’à quatre à mesure que d’autres lumières seront ajoutés à la scène.
Utilisation avancée
Au maximum quatre HoverLight
s peuvent éclairer un matériau à la fois. Si votre projet nécessite plus de quatre HoverLight
s pour influencer un composant matériel, l’exemple de code ci-dessous montre comment y parvenir.
Notes
Le fait d’éclairer un matériau avec un grand nombre de HoverLight
s augmente les instructions du nuanceur de pixels et affecte les performances.
Profilez ces changements dans votre projet.
Comment augmenter le nombre de HoverLight
s disponibles de 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;
Notes
Si Unity journalise un avertissement similaire à celui ci-dessous, vous devez redémarrer Unity pour que vos modifications prennent effet.
Property (_HoverLightData) exceeds previous array size (24 vs 20). Cap to previous > size.