Probe Cahaya dan Renderer Mesh
Proxy Probe Cahaya Komponen volume

Probe cahaya dan pemuatan adegan

Pembaruan unity data Light Probeprobe cahaya menyimpan informasi tentang bagaimana cahaya melewati ruang di tempat kejadian Anda. Koleksi probe cahaya yang diatur dalam ruang tertentu dapat meningkatkan pencahayaan pada objek bergerak dan pemandangan LOD statis dalam ruang itu. More info
Lihat di Glossary
berbeda tergantung pada bagaimana Anda memuat atau membongkar ScenesAdegan berisi lingkungan dan menu permainan Anda. Pikirkan setiap file Adegan unik sebagai tingkat yang unik. Di setiap Adegan, Anda menempatkan lingkungan, hambatan, dan dekorasi, pada dasarnya merancang dan membangun permainan Anda dalam potongan-potongan. More info
Lihat di Glossary
.

Unity menggunakan objek LightProbes C# untuk menyimpan data Probe Cahaya untuk semua saat ini dimuat Adegan. Objek LightProbes mengandung struktur data internal yang disebut tesselasi tetrahedral. Unity menggunakan tesselasi tetrahedral dalam perhitungannya untuk menentukan bagaimana Light Probes light GameObjectsObjek mendasar dalam adegan Unity, yang dapat mewakili karakter, props, pemandangan, kamera, waypoints, dan banyak lagi. Fungsi GameObject didefinisikan oleh Komponen yang melekat padanya. More info
Lihat di Glossary
.

Ketika Anda memuat atau membongkar Adegan, Unity secara otomatis memperbarui objek LightProbes untuk mengandung posisi dan koefisien dari semua Probe Cahaya di semua adegan yang dimuat saat ini. Namun, apakah Unity memperbarui tesselasi tetrahedral tergantung pada bagaimana Anda memuat atau membongkar Adegan.

Ketika Anda memuat Adegan dengan LoadSceneMode.Single, Unity memperbarui tesselasi tetrahedral secara otomatis sebagai bagian dari proses beban, karena data probe cahaya baru benar-benar menggantikan data probe cahaya sebelumnya.

Ketika Anda memuat Adegan dengan LoadSceneMode.Additive, atau membongkar Adegan dengan UnloadSceneAsync, Unity tidak secara otomatis memperbarui tesselasi tetrahedral, karena data probe cahaya baru atau dihapus perlu dikalibrasi kembali - yang merupakan operasi yang mahal, dan mungkin ada adegan berikutnya yang akan dimuat atau dibongkar setelah operasi ini.

Oleh karena itu Unity memberi Anda acara kebutuhanRetetrahedralisasi untuk memungkinkan Anda untuk memutuskan kapan untuk mendanai ulang data probe cahaya baru. Misalnya, jika Anda secara aditif memuat lima adegan baru, Anda tidak ingin retetrahedralize data lima kali, setelah setiap beban adegan. Sebaliknya, Anda hanya ingin retetrahedralize data setelah semua lima adegan telah dimuat dan semua data probe cahaya baru siap.

Jika Unity melakukan perhitungan menggunakan tesselasi tetrahedral yang terbaru, hasilnya tidak memperhitungkan setiap Probe Cahaya yang baru dimuat atau dibongkar. Ini berarti bahwa Probe Cahaya mungkin tidak menyala GameObjects seperti yang diharapkan, dan panggilan ke LightProbes.CalculateInterpolatedLightAndOcclusionProbes() atau LightProbes.GetInterpolatedProbe() mungkin kembali hasil yang tidak terduga.

Untuk memaksa Unity untuk memperbarui tesselasi tetrahedral, Anda dapat memanggil LightProbes.Tetrahedralize atau LightProbes.TetrahedralizeAsync(). Fungsi ini menyebabkan Unity untuk memperbarui tesselasi tetrahedral dengan data dari semua Probe Cahaya untuk semua adegan yang dimuat saat ini.

Memperbarui tesselasi tetrahedral adalah CPU intensif, dan dampak CPU meningkat dengan jumlah Probe Cahaya. Jika Anda memuat dan membongkar beberapa Adegan, dan Anda mengalami dampak kinerja dari memperbarui tesselasi tetrahedral, maka mungkin bermanfaat untuk menunda pembaruan sampai Anda telah dimuat atau membongkar sejumlah konten tertentu, atau sampai waktu ketika dampak CPU tidak mungkin mempengaruhi kinerja aplikasi Anda.

Probe Cahaya dan Renderer Mesh
Proxy Probe Cahaya Komponen volume