Lampu hover — MRTK2
HoverLight
adalah paradigma Sistem Fluent Design yang meniru cahaya titik yang melayang di dekat permukaan objek. Sering digunakan untuk interaksi yang jauh, aplikasi dapat mengontrol properti Hover Light melalui HoverLight
komponen.
Agar bahan dipengaruhi oleh HoverLight
Mixed Reality Toolkit/Shader Standar harus digunakan dan properti Hover Light harus diaktifkan.
Catatan
Shader MRTK/Standard mendukung hingga dua HoverLights
secara default, tetapi akan menskalakan untuk mendukung empat dan kemudian sepuluh karena lebih banyak lampu ditambahkan ke adegan.
Contoh
Sebagian besar adegan dalam MRTK menggunakan HoverLight
. Kasus penggunaan yang paling umum dapat ditemukan di MRTK/SDK/Features/UX/Prefabs/Cursors/DefaultCursor.prefab
Adegan HoverLightExamples juga menunjukkan penggunaan HoverLight
perilaku, dan dapat ditemukan di: MRTK/Examples/Demos/StandardShader/Scenes/
Penggunaan Tingkat Lanjut
Hanya sepuluh HoverLights
yang dapat menerangi bahan pada satu waktu. Jika proyek Anda memerlukan lebih dari sepuluh HoverLights
untuk memengaruhi materi , kode sampel di bawah ini menunjukkan cara mencapainya.
Catatan
Memiliki banyak HoverLights
bahan yang menerangi akan meningkatkan instruksi piksel shader dan akan berdampak pada performa. Harap profilkan perubahan ini dalam proyek Anda.
Cara meningkatkan jumlah yang tersedia HoverLights
dari sepuluh hingga dua belas.
// 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;
Catatan
Jika Unity mencatat peringatan yang mirip dengan di bawah ini maka Anda harus memulai ulang Unity sebelum perubahan Anda akan berlaku.
Property (_HoverLightData) exceeds previous array size (24 vs 20). Cap to previous >size.