Gambaran umum cahaya kedekatan — MRTK3
ProximityLight
adalah paradigma Sistem Fluent Design yang meniru "cahaya titik terbalik gradien" yang melayang di dekat permukaan objek. Ini sering digunakan untuk interaksi dekat, aplikasi dapat mengontrol properti Cahaya Kedekatan melalui ProximityLight
komponen.
Agar materi dipengaruhi oleh ProximityLight
, shader Alat Grafis/Standar atauAlat Grafis/Kanvas Standar harus digunakan dan properti Cahaya Kedekatan harus diaktifkan. Alat Grafis/Non-Kanvas/Frontplate dan Alat Grafis/Kanvas/Frontplate juga dipengaruhi oleh ProximityLight
s tetapi dengan cara yang sedikit berbeda.
Catatan
Hingga dua ProximityLight
s didukung secara default.
Penggunaan tingkat lanjut
Secara default hanya dua ProximityLight
s yang dapat menerangi bahan pada satu waktu. Jika proyek Anda memerlukan lebih dari dua ProximityLight
s untuk memengaruhi bahan, kode sampel di bawah ini menunjukkan cara mencapainya pada alat grafis/Standar atau Alat Grafis/shader Kanvas Standar .
Catatan
Memiliki banyak ProximityLight
s illuminate bahan akan meningkatkan instruksi pixel shader dan akan berdampak pada performa. Buat profil perubahan ini dalam proyek Anda.
Cara meningkatkan jumlah yang tersedia ProximityLight
dari dua menjadi empat.
// 1) Within GraphicsToolsStandardInput.hlsl change:
#define PROXIMITY_LIGHT_COUNT 2
// to:
#define PROXIMITY_LIGHT_COUNT 4
// 2) Within ProximityLight.cs change:
private const int proximityLightCount = 2;
// to:
private const int proximityLightCount = 4;
Catatan
Jika Unity mencatat peringatan yang mirip dengan di bawah ini maka Anda harus memulai ulang Unity sebelum perubahan Anda akan berlaku.
Property (_ProximityLightData) exceeds previous array size (24 vs 12). Cap to previous size.