Performansla ilgili konular

İlgi çekici artırılmış gerçeklik (AR) kullanıcı deneyimleri oluşturmak için, artırılmış gerçeklik özellikli uygulamanızın iyi performans göstermesi önemlidir.

Uygulamanızla ilgili olarak:

  • Dokunma hareketleri ve cihaz hareketi de dahil olmak üzere kullanıcı girişine duyarlıdır.
  • Makul ve tutarlı bir kare hızında oluşturulur. Kullanıcılar genellikle tutarlı olan kare hızlarını tercih eder ve değişken ve yüksek kare hızlarına kıyasla daha düşük olur.
  • Pil kullanımını en aza indirerek kullanıcınızın cihazını gün boyu başka görevler için kullanmasına veya AR deneyiminizle daha uzun süre etkileşim kurmasına olanak tanır.
  • Artırılmış gerçeklik (AR) tarafından oluşturulan içeriğin, ortama göre kararlı göründüğü ve ortamla gerçekçi bir şekilde birleştirildiği etkileyici bir AR deneyimi oluşturur.

Performansla ilgili en iyi uygulamalar

Daha ilgi çekici AR deneyimleri oluşturmak için aşağıdaki en iyi uygulamaları göz önünde bulundurarak tasarım yapın.

İzleme performansını iyileştirmek için çapaları kullanma

3D içeriğinizi dünya-uzay koordinatlarını kullanarak yerleştirmek mümkün olsa da, mümkün olduğunda her zaman bir çapa kullanın. ARCore, temeldeki dünya-uzay koordinatları değişse bile çapaların dünyaya göre sabit görünmesini sağlar ve ARCore dünyayla ilgili algısını güncellediğinde zaman içinde sıçrama yapabilir.

Bir sabite ekli olmayan sanal nesneler, bazen atlıyormuş gibi görünür ve ortama göre sabit görünmez. Bu, artırılmış gerçeklik deneyimini kullanıcılar için daha az çekici hale getirebilir.

Cihaza özgü performans özelliklerini göz önünde bulundurun

ARCore destekli cihazlar, çok çeşitli donanım ve performans özelliklerini kapsar. Cihaz performansı şu nedenlerle değişiklik gösterebilir:

  • Cihaz CPU/GPU, saat hızı
  • Kullanılabilir bellek ve bant genişliği
  • Kamera/IMU sensör kalitesi
  • Diğer donanım farklılıkları
  • İşletim sistemi ve cihaz sürücüleri

Uygulamanızı, kullanıcılarınızın kullanacağı cihazları temsil eden farklı cihaz sınıflarında test etmenizi öneririz.

Kullanılmadıkları zaman CPU yoğun özellikleri devre dışı bırak

Belirli ARCore özellikleri, etkinleştirildiğinde CPU kullanımını artırır. Artırılmış gerçeklik deneyiminizin gerekli olmadığı zamanlarda bu özellikleri devre dışı bırakmayı düşünün. Böylece uygulamanız için daha fazla CPU döngüsü kullanılabilir ve termal performans ile pil ömrü artar.

Şu anda, geçerli oturum için Instant Placement ve/veya Augmented Images etkinleştirildiğinde ARCore CPU kullanımı artar. CPU kullanım verimliliğini artırmak için aşağıdaki yönergeleri uygulayın:

  • Tam izleme oluşturulduktan sonra Instant Placement devre dışı bırakılmalıdır. Bu özellik, oturum yapılandırmasında devre dışı bırakılabilir.

  • AR deneyiminiz için özellik gerekli olmadığında Augmented Images devre dışı bırakılmalıdır. Artırılmış Resimler'i devre dışı bırakmak için oturum yapılandırmasında null veya boş bir Artırılmış Resimler veritabanı yapılandırın.

Cihaz termallerini izle

Geliştirme ve KG testi sırasında, uygulamanızın cihazdaki performansını izlemek ve takip etmek için Android'in termal API'lerini kullanabilirsiniz.

Uygulamanızın üretim derlemesini kullandığınızdan emin olun (uygulamanızın farklı çalışma zamanı performansı özellikleri olabilecek bir geliştirme veya qa derlemesini değil).

ARCore CPU yetersizliğini tanımlama

ARCore oturumu etkin olduğunda, uygulamanız sınırlı mobil CPU ve GPU kaynaklarını ARCore ile paylaşmalıdır. CPU'ya bağlı uygulamalar, hareket izleme için gereken CPU kaynaklarıyla rekabet edebilir.

ARCore'un eş zamanlı yerelleştirme ve eşleme (SLAM) özelliğinin normal şekilde çalışabildiğini doğrulamak için "VIO sıklığı düşük" mesajının Android cihaz günlüklerinde görünmediğinden emin olun:

adb logcat | grep 'VIO frequency low'

ARCore CPU açlığını önleme

ARCore oturumu etkin olduğunda, uygulamanız sınırlı mobil CPU ve GPU kaynakları cihazını ARCore ile paylaşmalıdır. CPU'ya bağlı uygulamalar, hareket izleme için gereken CPU kaynaklarıyla rekabet edebilir.

Artırılmış Resimler veritabanlarını önceden oluşturma

Mümkün olduğunda, geliştirme zamanında artırılmış görüntü veritabanlarınızı önceden oluşturun. Çalışma zamanında Artırılmış Resim veritabanları oluşturmanız veya mevcut bir veritabanına dinamik olarak resim eklemeniz gerekiyorsa ana kullanıcı arayüzü iş parçacığını engellememek için resimleri bir arka plan iş parçacığına eklediğinizden emin olun.

İstenen kamera akışı sayısını sınırlayın

Java Shared Kamera kullanılırken uygulamalar ek CPU veya GPU görüntü akışları isteyebilir.