Để tạo trải nghiệm người dùng AR hấp dẫn, điều quan trọng là bạn phải bật AR ứng dụng của bạn hoạt động tốt.
Hãy đảm bảo rằng ứng dụng của bạn:
- Cho cảm giác phản hồi với hoạt động đầu vào của người dùng, bao gồm cả các cử chỉ chạm và thiết bị chuyển động.
- Hiển thị ở tốc độ khung hình hợp lý và nhất quán. Người dùng thường ưu tiên tốc độ khung hình nhất quán và thấp hơn so với tốc độ khung hình biến trở lên.
- Giảm thiểu tiêu hao pin, cho phép người dùng của bạn sử dụng thiết bị của họ cho các thiết bị khác việc cần làm trong ngày hoặc tương tác lâu hơn với trải nghiệm thực tế tăng cường.
- Xây dựng một trải nghiệm thực tế tăng cường hấp dẫn khi nội dung do AR tạo sẽ xuất hiện tương đối ổn định với môi trường và thực sự hoà hợp với môi trường.
Các phương pháp hay nhất về hiệu suất
Để tạo trải nghiệm thực tế tăng cường hấp dẫn hơn, hãy thiết kế bằng những công cụ tốt nhất sau đây thực tiễn.
Sử dụng quảng cáo cố định để cải thiện hiệu suất theo dõi
Mặc dù có thể đặt nội dung 3D của bạn bằng toạ độ không gian thế giới, sử dụng quảng cáo cố định bất cứ khi nào có thể. ARCore đảm bảo rằng các neo xuất hiện ổn định so với thế giới, mặc dù toạ độ không gian-thế giới cơ bản thay đổi và có thể tăng theo thời gian bất cứ khi nào ARCore cập nhật hiểu biết về thế giới.
Đôi khi, các đối tượng ảo không được gắn vào neo sẽ xuất hiện nhảy và sẽ không có vẻ ổn định so với môi trường. Điều này có thể giúp Chế độ thực tế tăng cường sẽ kém hấp dẫn hơn đối với người dùng.
Xem xét các đặc điểm về hiệu suất của từng thiết bị
Các thiết bị hỗ trợ ARCore có rất nhiều loại về đặc điểm phần cứng và hiệu suất. Hiệu suất của thiết bị có thể thay đổi do:
- CPU/GPU của thiết bị, tốc độ xung nhịp
- Bộ nhớ và băng thông có sẵn
- Chất lượng cảm biến IU/máy ảnh
- Điểm khác biệt khác về phần cứng
- Trình điều khiển thiết bị và hệ điều hành
Bạn nên thử nghiệm ứng dụng của mình trên các loại thiết bị khác nhau đại diện cho các thiết bị mà người dùng của bạn sẽ sử dụng.
Tắt các tính năng dùng nhiều CPU khi không sử dụng
Một số tính năng ARCore giúp tăng mức sử dụng CPU khi được bật. Cân nhắc tắt các tính năng này trong những khoảng thời gian mà trải nghiệm thực tế tăng cường của bạn không cần đến chúng. Việc này sẽ giúp ứng dụng của bạn có thêm chu kỳ CPU, đồng thời giúp cải thiện hiệu suất nhiệt và thời lượng pin.
Hiện tại, mức sử dụng CPU ARCore tăng khi Instant Placement và/hoặc Augmented Images được bật cho phiên hiện tại. Làm theo các bước sau các nguyên tắc giúp tăng hiệu quả sử dụng CPU:
Instant Placement sẽ bị tắt sau khi theo dõi đầy đủ thiết lập. Bạn có thể tắt tính năng này trong cấu hình phiên.
Bạn phải tắt Augmented Images bất cứ khi nào không cần đến tính năng này cho trải nghiệm thực tế tăng cường. Để tắt Hình ảnh tăng cường, hãy định cấu hình
null
hoặc cơ sở dữ liệu Hình ảnh tăng cường trống trong cấu hình phiên.
Theo dõi tình trạng nhiệt của thiết bị
Trong quá trình phát triển và kiểm thử đảm bảo chất lượng, bạn có thể sử dụng các API nhiệt của Android để giám sát và theo dõi hiệu suất của ứng dụng trên thiết bị.
Hãy nhớ sử dụng bản phát hành công khai của ứng dụng (chứ không phải sử dụng bản phát triển hoặc qa của ứng dụng có thể có hiệu suất thời gian chạy khác đặc điểm.
PowerManager#getCurrentThermalStatus()
(API cấp 29)PowerManager#getThermalHeadroom(int)
(API cấp 30)
Xác định tình trạng thiếu CPU của ARCore
Khi một phiên ARCore đang hoạt động, ứng dụng của bạn phải dùng chung GPU và CPU di động bị hạn chế bằng ARCore. Ứng dụng ràng buộc với CPU có thể cạnh tranh với các tài nguyên CPU bắt buộc để theo dõi chuyển động.
Để xác minh rằng ARCore bản địa hoá và ánh xạ đồng thời (SLAM) có thể chạy bình thường, hãy xác minh rằng "tần suất VIO thấp" tin nhắn không xuất hiện trong nhật ký thiết bị Android:
adb logcat | grep 'VIO frequency low'
Tránh tình trạng thiếu CPU của ARCore
Khi một phiên ARCore đang hoạt động, ứng dụng của bạn phải dùng chung GPU và CPU di động bị hạn chế thiết bị tài nguyên của Google bằng ARCore. Ứng dụng ràng buộc với CPU có thể cạnh tranh với các tài nguyên CPU bắt buộc để theo dõi chuyển động.
Tạo trước cơ sở dữ liệu Hình ảnh tăng cường
Nếu có thể, hãy tạo trước cơ sở dữ liệu Hình ảnh tăng cường của bạn tại thời điểm phát triển. Liệu bạn cần tạo cơ sở dữ liệu Hình ảnh tăng cường trong thời gian chạy hoặc tạo theo cách linh động thêm hình ảnh vào cơ sở dữ liệu hiện có, hãy nhớ thêm hình ảnh vào nền để tránh chặn luồng giao diện người dùng chính.
Giới hạn số lượng luồng máy ảnh được yêu cầu
Khi dùng Máy ảnh được chia sẻ Java, các ứng dụng có thể yêu cầu luồng hình ảnh CPU hoặc GPU bổ sung.