Aanwijslicht — MRTK2
Een HoverLight
is een Fluent Design-systeem paradigma dat een puntlicht nabootst dat in de buurt van het oppervlak van een object zweeft. De toepassing wordt vaak gebruikt voor verre interacties en kan de eigenschappen van een hover light via het HoverLight
onderdeel beheren.
Een materiaal kan alleen worden beïnvloed door een HoverLight
Mixed Reality Toolkit/Standard shader en de eigenschap Hover Light moet zijn ingeschakeld.
Notitie
De MRTK/Standard-shader ondersteunt standaard maximaal twee HoverLights
, maar schaalt naar vier en vervolgens tien naarmate er meer lichten aan de scène worden toegevoegd.
Voorbeelden
De meeste scènes in MRTK maken gebruik van een HoverLight
. De meest voorkomende use-case vindt u op de MRTK/SDK/Features/UX/Prefabs/Cursors/DefaultCursor.prefab
De scène HoverLightExamples laat ook het gebruik van HoverLight
gedrag zien en is te vinden op: MRTK/Examples/Demos/StandardShader/Scenes/
Geavanceerd gebruik
Slechts tien HoverLights
kunnen een materiaal tegelijk verlichten. Als uw project meer dan tien HoverLights
nodig heeft om een materiaal te beïnvloeden, laat de onderstaande voorbeeldcode zien hoe u dit kunt bereiken.
Notitie
Als er veel HoverLights
van een materiaal verlicht, worden de instructies voor pixel-shader verhoogd en is dit van invloed op de prestaties. Profileer deze wijzigingen in uw project.
Het aantal beschikbare HoverLights
gegevens verhogen van tien naar twaalf.
// 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;
Notitie
Als Unity een waarschuwing registreert die vergelijkbaar is met de onderstaande, moet u Unity opnieuw starten voordat uw wijzigingen van kracht worden.
Property (_HoverLightData) exceeds previous array size (24 vs 20). Cap to previous >size.