API ước tính ánh sáng cung cấp dữ liệu chi tiết cho phép bạn bắt chước nhiều tín hiệu ánh sáng khi kết xuất các vật thể ảo. ARCore hỗ trợ 3 chế độ ước tính ánh sáng:
Điều kiện tiên quyết
Hãy đảm bảo rằng bạn hiểu các khái niệm cơ bản về AR và cách định cấu hình phiên ARCore trước khi tiếp tục.
Bật tính năng ước tính ánh sáng
Hãy làm theo các bước sau để bật tính năng ước tính ánh sáng trong ứng dụng của bạn.
- Thiết lập dự án AR Foundation hoặc dự án Tiện ích ARCore.
- Trong thẻ Hierarchy, hãy chuyển đến XR Session Origin > AR Camera.
- Trong thành phần AR Camera Manager, hãy chọn Light Estimation.
- Trong trình đơn thả xuống Light Estimation, hãy chọn(các) chế độ bạn muốn sử dụng.
Bật chế độ Environmental HDR
Chế độ HDR môi trường cho phép các chế độ cài đặt ước tính ánh sáng sau:
- Hướng ánh sáng chính
- Cường độ ánh sáng chính
- Hàm hài hoà hình cầu môi trường xung quanh
Chế độ này sẽ tự động bật khi đáp ứng các tiêu chí sau:
- Hàm hài hoà hình cầu môi trường xung quanh, Hướng ánh sáng chính và/hoặc Cường độ ánh sáng chính được chọn trong chế độ Ước tính ánh sáng do Trình quản lý máy ảnh AR cung cấp
- Trình thăm dò môi trường được bật trong
AREnvironmentProbeManager
- Chọn một cấu hình máy ảnh tương thích
Bật chế độ Độ sáng môi trường xung quanh
Tính năng ước tính ánh sáng cơ bản sẽ tự động bật khi bạn chọn Chế độ cường độ môi trường xung quanh trong thành phần ARCameraManager
.
Chế độ Độ sáng môi trường xung quanh cho phép các chế độ cài đặt ước tính ánh sáng sau:
- Màu môi trường xung quanh
- Cường độ ánh sáng xung quanh
Sử dụng thông tin ánh sáng trong cảnh
Sau khi có được chế độ cài đặt ánh sáng chính xác, bạn có thể chiếu sáng các đối tượng ảo trong cảnh của mình như thể chúng là một phần của thế giới thực.
Thành phần ARCameraManager
có thể tạo ra một sự kiện frameReceived
ước tính điều kiện ánh sáng của khung hình khi bật tính năng ước tính ánh sáng. Thông tin từ các sự kiện frameReceived
được lưu trữ trong cấu trúc ARCameraFrameEventArgs
dưới dạng ARLightEstimationData
.
Hãy làm theo các bước sau để thay đổi các thông số của ánh sáng trong thời gian chạy.
- Tạo hoặc sửa đổi Ánh sáng định hướng hiện có trong cảnh của bạn.
Đính kèm một tập lệnh mới vào Ánh sáng định hướng.
// 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. }
Sửa đổi tập lệnh mới này để phát hiện các thay đổi về ánh sáng. Để biết ví dụ về cách thực hiện việc này, hãy xem các tập lệnh
BasicLightEstimation.cs
vàHDRLightEstimation.cs
của Unity.
Sử dụng đầu dò môi trường trong cảnh
Hãy làm theo các bước sau để bật trình thăm dò môi trường trong cảnh của bạn.
- Bật tính năng đặt vị trí tự động trong
ARSessionOrigin
của cảnh. - Thêm thành phần
AREnvironmentProbeManager
vàoARSessionOrigin
.