Vurgu ışığı — MRTK2

AHoverLight, bir nesnenin yüzeyine doğru gelen bir nokta ışığını taklit eden Fluent Design Sistemi bir paradigmadır. Genellikle uzak etkileşimler için kullanılan uygulama, bileşen aracılığıyla HoverLight Hover Light'ın özelliklerini denetleyebiliyor.

Bir malzemenin HoverLightbir Karma Gerçeklik Araç Seti/Standart gölgelendiricisi kullanılması ve Hover Light özelliğinin etkinleştirilmesi gerekir.

Not

MRTK/Standart gölgelendirici varsayılan olarak ikiye HoverLights kadar destekler, ancak sahneye daha fazla ışık eklendikçe dört ve sonra on'u destekleyecek şekilde ölçeklendirilir.

Örnekler

MRTK içindeki çoğu sahne bir HoverLightkullanır. En yaygın kullanım örneği MRTK/SDK/Features/UX/Prefabs/Cursors/DefaultCursor.prefab üzerinde bulunabilir

HoverLightExamples sahnesi ayrıca davranışların HoverLight kullanımını gösterir ve şu adreste bulunabilir: MRTK/Examples/Demos/StandardShader/Scenes/

Gelişmiş Kullanım

Bir malzemeyi aynı anda sadece on HoverLights tane aydınlatabilir. Projenizin bir malzemeyi etkilemesi için ondan HoverLights fazla gerekiyorsa, aşağıdaki örnek kod bunu nasıl başarmak gerektiğini gösterir.

Not

HoverLights Birçok malzemenin aydınlatılmış olması piksel gölgelendirici yönergelerini artırır ve performansı etkiler. Lütfen bu değişikliklerin profilini projenizde belirleyin.

Kullanılabilir sayısı ondan on ikiye nasıl artırabilirsiniz HoverLights ?

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

Not

Unity aşağıdakine benzer bir uyarı kaydederse, değişikliklerinizin etkili olması için Unity'yi yeniden başlatmanız gerekir.

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

Ayrıca bkz.