Hướng dẫn này cho bạn biết cách sử dụng Trình bổ trợ Google Cardboard XR dành cho Unity dành cho Unity để tạo trải nghiệm Thực tế ảo (VR) của riêng bạn.
Bạn có thể sử dụng SDK Cardboard để biến điện thoại di động thành nền tảng thực tế ảo. Điện thoại thông minh có thể hiển thị cảnh 3D bằng tính năng kết xuất hình nổi, theo dõi và phản ứng với chuyển động của đầu, đồng thời tương tác với các ứng dụng bằng cách phát hiện thời điểm người dùng nhấn nút trình xem.
Để bắt đầu, bạn sẽ sử dụng HelloCardboard, một trò chơi minh hoạ minh hoạ các tính năng cốt lõi của SDK Cardboard. Trong trò chơi, người dùng sẽ khám phá thế giới ảo để tìm và thu thập các đối tượng. Hướng dẫn này chỉ cho bạn cách:
- Thiết lập môi trường phát triển
- Tải xuống và tạo ứng dụng minh hoạ
- Quét mã QR của thiết bị xem Cardboard để lưu thông số
- Theo dõi chuyển động đầu của người dùng
- Kết xuất hình ảnh nổi bằng cách đặt độ méo chính xác cho mỗi mắt
- Bật và tắt chế độ Thực tế ảo (VR)
Thiết lập môi trường phát triển
Yêu cầu đối với phần mềm:
- Unity 2021.3.32f1 trở lên
- Đừng quên bao gồm dịch vụ Hỗ trợ bản dựng dành cho Android và iOS trong quá trình cài đặt.
- Bạn phải cài đặt Git và tệp thực thi
git
phải trên biến môi trườngPATH
. Hãy xem các tài liệu hỗ trợ git trong trình quản lý gói của Unity để biết thêm thông tin chi tiết.
Nhập SDK và tạo dự án mới
Hãy làm theo các bước sau để nhập SDK Unity và tạo một dự án mới.
- Mở Unity rồi tạo một dự án 3D mới.
- Trong Unity, hãy chuyển đến Window > Package Manager (Cửa sổ > Trình quản lý gói).
- Nhấp vào dấu + rồi chọn Add package from git URL (Thêm gói từ URL git).
- Dán
https://github.com/googlevr/cardboard-xr-plugin.git
vào trường nhập văn bản.
Gói này phải được thêm vào các gói đã cài đặt. - Di chuyển đến gói Trình bổ trợ Google Cardboard XR dành cho Unity. Trong phần Samples (Mẫu), hãy chọn Import vào Project (Nhập vào dự án).
Bạn cần tải nội dung mẫu vàoAssets/Samples/Google Cardboard/<version>/Hello Cardboard
.
Định cấu hình cảnh HelloCardboard
- Chuyển đến
Assets/Samples/Google Cardboard/<version>/Hello Cardboard/Scenes
, chọn Add Open Scenes (Thêm cảnh mở) rồi chọn HelloCardboard để mở cảnh mẫu. - Mở menu Lớp và chọn Chỉnh sửa lớp....
- Xác định một lớp mới có tên là "Interactive" (Tương tác).
- Nhấp vào Treasure EIDR để mở cửa sổ Inspector (Trình kiểm tra). Đặt lớp của thư viện thành "Tương tác". Nếu cửa sổ bật lên xuất hiện và hỏi bạn có muốn đặt lớp thành Tương tác cho tất cả đối tượng con hay không, hãy nhấp vào "Có, thay đổi thành phần con".
- Nhấp vào Player > Camera > CardboardReticlePointer EIDR để mở cửa sổ Inspector (Trình kiểm tra). Trong tập lệnh "Carboard reticle con trỏ", hãy chọn "Interactive" (Tương tác) làm Reticle Interaction Layer Mask (Mặt nạ lớp tương tác ô vuông).
Định cấu hình các chế độ cài đặt dự án Android
Chuyển đến File (Tệp) > Build Settings (Cài đặt bản dựng).
- Chọn Android rồi chọn Switch Platform (Chuyển nền tảng).
- Chọn Add Open Scenes (Thêm cảnh mở) rồi chọn HelloCardboard.
Cài đặt trình phát
Độ phân giải và cách trình bày
Chuyển đến Project Settings (Cài đặt dự án) > Player (Trình phát) > Resolution and CPMation (Độ phân giải và bản trình bày).
- Đặt Hướng mặc định thành Ngang trái hoặc Ngang phải.
- Tắt tuỳ chọn Optimized Frame Pacing (Tối ưu hoá tốc độ khung hình).
Chế độ cài đặt khác
Chuyển đến Project Settings > Player > Other Settings (Cài đặt dự án > Trình phát > Cài đặt khác).
- Chọn
OpenGLES2
,OpenGLES3
hoặcVulkan
hoặc bất kỳ kết hợp nào trong số đó trong Graphics API (API Đồ hoạ). - Chọn
Android 8.0 'Oreo' (API level 26)
trở lên ở phần Minimum API Level (Cấp API tối thiểu). - Chọn
API level 33
trở lên trong phần Target API Level (Cấp API mục tiêu). - Chọn
IL2CPP
trong Scripting Backend (Phần phụ trợ tập lệnh). - Chọn cấu trúc mong muốn bằng cách chọn
ARMv7
,ARM64
hoặc cả hai trong phần Target Architectures (Kiến trúc mục tiêu). - Chọn
Require
trong Internet Access (Quyền truy cập Internet). - Chỉ định miền công ty của bạn trong Package Name (Tên gói).
- Nếu
Vulkan
được chọn làm API Đồ hoạ:- Bỏ đánh dấu hộp Apply display rotation during rendering (Áp dụng chế độ xoay màn hình trong quá trình kết xuất) trong phần Vulkan Settings (Cài đặt Vulkan).
- Nếu phiên bản Unity là 2021.2 trở lên, hãy chọn
ETC2
trong Texture nén format (Định dạng nén kết cấu).
- Nếu phiên bản Unity là 2023.1 trở lên, hãy chọn
Activity
và xoáGameActivity
trong Application Entry Point (Điểm nhập ứng dụng).
Cài đặt xuất bản
Chuyển đến phần Cài đặt dự án > Trình phát > Cài đặt xuất bản.
- Trong phần Build (Tạo), hãy chọn
Custom Main Gradle Template
vàCustom Gradle Properties Template
. Thêm các dòng sau vào phần phụ thuộc của
Assets/Plugins/Android/mainTemplate.gradle
:implementation 'androidx.appcompat:appcompat:1.6.1' implementation 'com.google.android.gms:play-services-vision:20.1.3' implementation 'com.google.android.material:material:1.6.1' implementation 'com.google.protobuf:protobuf-javalite:3.19.4'
Thêm các dòng sau vào
Assets/Plugins/Android/gradleTemplate.properties
:android.enableJetifier=true android.useAndroidX=true
Cài đặt quản lý trình bổ trợ XR
Chuyển đến phần Project Settings (Cài đặt dự án) > XR plugin Management (Quản lý trình bổ trợ XR).
- Chọn
Cardboard XR Plugin
trong phần Plugin Nhà cung cấp.
Xây dựng dự án của bạn
Chuyển đến File (Tệp) > Build Settings (Cài đặt bản dựng).
- Chọn Build (Tạo) hoặc chọn một thiết bị rồi chọn Build and Run (Tạo và chạy).
Định cấu hình chế độ cài đặt dự án iOS
Chuyển đến File (Tệp) > Build Settings (Cài đặt bản dựng).
- Chọn iOS rồi chọn Switch Platform (Chuyển nền tảng).
- Chọn Add Open Scenes (Thêm cảnh mở) rồi chọn HelloCardboard.
Cài đặt trình phát
Độ phân giải và cách trình bày
Chuyển đến Project Settings (Cài đặt dự án) > Player (Trình phát) > Resolution and CPMation (Độ phân giải và bản trình bày).
- Đặt Hướng mặc định thành Ngang trái hoặc Ngang phải.
Chế độ cài đặt khác
Chuyển đến Project Settings > Player > Other Settings (Cài đặt dự án > Trình phát > Cài đặt khác).
- Trong phần Camera Usage Description (Mô tả sử dụng máy ảnh), hãy ghi
Cardboard SDK requires camera permission to read the QR code (required to get the encoded device parameters).
. - Trong phần Nhắm mục tiêu phiên bản iOS tối thiểu, hãy ghi
12.0
. - Chỉ định miền công ty của bạn trong Package Name (Tên gói).
Cài đặt quản lý trình bổ trợ XR
Chuyển đến phần Project Settings (Cài đặt dự án) > XR plugin Management (Quản lý trình bổ trợ XR).
- Chọn
Cardboard XR Plugin
trong phần Plugin Nhà cung cấp.
Xây dựng dự án của bạn
Chuyển đến File (Tệp) > Build Settings (Cài đặt bản dựng).
- Chọn Build (Tạo) hoặc Build and Run (Tạo và chạy).
Đang căn giữa
Cardboard SDK cho phép bạn căn giữa lại thiết bị theo dõi chuyển động bằng cách sử dụng Recenter()
.
Hãy làm theo các bước sau để dùng thử tính năng này bằng ứng dụng mẫu:
- Di chuyển thiết bị đến vị trí bạn muốn căn giữa lại (sử dụng như tư thế đầu hướng về phía trước mới).
- Duy trì cò súng của thiết bị Cardboard trong ít nhất 3 giây.
- Thả kích hoạt.
- Tư thế ban đầu lúc này theo hướng camera đang trỏ đến.
Bật và tắt chế độ Thực tế ảo (VR)
API Quản lý trình bổ trợ Unity XR cho phép bạn bật hoặc tắt chế độ thực tế ảo cho Trình bổ trợ Google Cardboard XR dành cho Unity. Tài liệu về người dùng cuối và ví dụ về cách sử dụng có trong tài liệu về Người dùng cuối của Unity.
Cảnh VrMode trong mẫu HelloCardboard cho thấy cách sử dụng cơ bản của API nêu trên. Trong cảnh này, bạn có thể tắt chế độ thực tế ảo bằng cách nhấn vào biểu tượng thoát . Bạn có thể bật lại chế độ này chỉ bằng cách nhấn vào vị trí bất kỳ trên màn hình. Hãy xem VrModeController.cs để biết thông tin chi tiết về cách thực hiện quá trình này.