Işıklandırma Tahmini API'si, sanal nesneleri oluştururken çeşitli ışıklandırma ipuçları taklit etmenizi sağlayan ayrıntılı veriler sağlar. ARCore üç ışık tahmini modunu destekler:
- Devre dışı
- Ambiyans Yoğunluğu modu
- Çevresel HDR modu
Ön koşullar
Devam etmeden önce temel AR kavramlarını ve ARCore oturumunu nasıl yapılandıracağınızı anladığınızdan emin olun.
Işık Tahmini'ni etkinleştirme
Uygulamanızda ışıklandırma tahminini etkinleştirmek için aşağıdaki adımları uygulayın.
- AR Foundation projesi veya ARCore Extensions projesi oluşturun.
- Hierarchy sekmesinde XR Session Origin > AR Camera adresine gidin.
- AR Camera Manager bileşeninin altında Light Estimation'ı seçin.
- Light Estimation açılır menüsünde, kullanmak istediğiniz modları seçin.
Çevre HDR modunu etkinleştirme
Çevresel HDR modu aşağıdaki ışık tahmini ayarlarını etkinleştirir:
- Ana Işık Yönü
- Ana Işık Yoğunluğu
- Küresel Ambiyans Harmoniği
Bu mod, aşağıdaki ölçütler karşılandığında otomatik olarak etkinleştirilir:
- AR kamera yöneticisi tarafından sağlanan Işık Tahmini modunda Ortam Küresel Armonileri, Ana Işık Yönü ve/veya Ana Işık Yoğunluğu seçilir.
- Ortam kontrolleri
AREnvironmentProbeManager
- Uyumlu bir kamera yapılandırması seçili olmalıdır
Ambiyans Yoğunluğu modunu etkinleştirme
Temel ışık tahmini, ARCameraManager
bileşeninde Ambiyans Yoğunluğu modu seçildiğinde otomatik olarak etkinleştirilir.
Ambiyans Yoğunluğu modu, aşağıdaki ışık tahmini ayarlarını etkinleştirir:
- Ambiyans Renkleri
- Ambiyans Yoğunluğu
Sahnenizde ışık bilgilerini kullanma
Doğru ışıklandırma ayarlarını yaptıktan sonra sahnenizdeki sanal nesneleri gerçek dünyanın bir parçasıymış gibi aydınlatabilirsiniz.
ARCameraManager
bileşeni, ışıklandırma tahmini etkinleştirildiğinde karelerin ışıklandırma koşullarını tahmin eden bir frameReceived
etkinliği oluşturabilir. frameReceived
etkinliklerindeki bilgiler, ARLightEstimationData
olarak ARCameraFrameEventArgs
yapılarında saklanır.
Bir ışığın parametrelerini çalışma zamanında değiştirmek için aşağıdaki adımları uygulayın.
- Sahnenizdeki mevcut yönlü ışığı oluşturun veya değiştirin.
Yön Işığına yeni bir komut dosyası ekleyin.
// Sample Lighting Estimation script Light light; void Awake () { light = GetComponent<Light>(); } void OnEnable() { if (cameraManager != null) cameraManager.frameReceived += FrameChanged; } void OnDisable() { if (cameraManager != null) cameraManager.frameReceived -= FrameChanged; } void FrameChanged(ARCameraFrameEventArgs args) { // Modify `light` parameters using ARCameraFrameEventArgs. }
Bu yeni komut dosyasını ışıktaki değişiklikleri algılayacak şekilde değiştirin. Bunu nasıl yapacağınıza dair örnekler için Unity'nin
BasicLightEstimation.cs
veHDRLightEstimation.cs
komut dosyalarına göz atın.
Sahnenizde ortam probları kullanma
Sahnenizde ortam kontrollerini etkinleştirmek için bu adımları uygulayın.
- Sahnenizde
ARSessionOrigin
otomatik yerleştirmeyi etkinleştirin. ARSessionOrigin
öğesine birAREnvironmentProbeManager
bileşeni ekleyin.