Işıklandırma Tahmini API'sı, sanal nesneleri oluştururken çeşitli ışık işaretlerini taklit edebilmenizi sağlayan ayrıntılı veriler sağlar. ARCore, üç ışık tahmini modunu destekler:
- Devre dışı
- Ambiyans Yoğunluğu modu
- Ortam HDR modu
Ön koşullar
Temel artırılmış gerçeklik kavramlarını anladığınızdan emin olun ve devam etmeden önce ARCore oturumunun nasıl yapılandırılacağı hakkında daha fazla bilgi edinin.
Aydınlatma Tahminini Etkinleştir
Uygulamanızda ışık tahminini etkinleştirmek için bu adımları izleyin.
- 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 öğesini seçin.
- Light Estimation açılır menüsünden kullanmak istediğiniz modları seçin.
Ortam HDR modunu etkinleştir
Ortam 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 Ambiyans Küresel Harmonikleri, 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ştir
Temel ışık tahmini, ARCameraManager
bileşeninde Ambiyans Yoğunluğu modu seçildiğinde otomatik olarak etkinleştirilir.
Ortam Yoğunluğu modu, aşağıdaki ışık tahmini ayarlarını etkinleştirir:
- Ambiyans Renkleri
- Ortam Yoğunluğu
Sahnenizde ışıklandırma bilgilerini kullanma
Doğru ışıklandırma ayarlarını elde ettiğinizde, 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
etkinliklerinden alınan bilgiler ARCameraFrameEventArgs
yapıda ARLightEstimationData
olarak depolanır.
Çalışma zamanında bir ışığın parametrelerini değiştirmek için aşağıdaki adımları uygulayın.
- Sahnenizde mevcut Yön Işığı'nı 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. Bunun nasıl yapılacağına dair örnekler için Unity'nin
BasicLightEstimation.cs
veHDRLightEstimation.cs
komut dosyalarına göz atın.
Sahnenizde ortam yoklamaları kullanın
Sahnenizde ortam kontrollerini etkinleştirmek için bu adımları uygulayın.
- Sahnenizde
ARSessionOrigin
otomatik yerleştirmeyi etkinleştirin. ARSessionOrigin
'e birAREnvironmentProbeManager
bileşeni ekleyin.