paint-brush
Bắt đầu với SDK tương tác nền tảng hiện diện: Theo dõi thủ côngtừ tác giả@shiaart
24,199 lượt đọc
24,199 lượt đọc

Bắt đầu với SDK tương tác nền tảng hiện diện: Theo dõi thủ công

từ tác giả Artem Shiabutdinov4m2023/07/31
Read on Terminal Reader

dài quá đọc không nổi

Nền tảng Hiện diện được thiết kế để tạo cảm giác về sự hiện diện và tương tác được chia sẻ trong môi trường thực tế ảo. Nó cho phép mọi người kết nối, tương tác, tương tác với nhau trong không gian ảo đắm chìm bằng tai nghe VR. Theo dõi bàn tay là một trong những yêu cầu cơ bản để phát triển trò chơi VR - chúng tôi sẽ thiết lập, xây dựng và khởi chạy trò chơi theo dõi bàn tay giống như trải nghiệm.
featured image - Bắt đầu với SDK tương tác nền tảng hiện diện: Theo dõi thủ công
Artem Shiabutdinov HackerNoon profile picture
0-item
1-item
2-item

Vì chúng tôi đã tạo thành công dự án Unity đầu tiên nhắm mục tiêu thiết bị Quest 2 trong bài đăng trước, bây giờ chúng tôi sẽ hiểu rõ hơn về một trong những bộ khả năng mạnh mẽ nhất do Meta cung cấp thông qua Nền tảng hiện diện.

Nền tảng hiện diện của Meta là gì?

Nền tảng hiện diện được thiết kế để tạo cảm giác hiện diện và tương tác được chia sẻ trong môi trường thực tế ảo. Nó cho phép mọi người kết nối, tương tác, tương tác với nhau trong không gian ảo đắm chìm bằng tai nghe VR.


Các tính năng và khả năng của Nền tảng hiện diện của Meta bao gồm:


  1. Hệ thống hình đại diện: Nền tảng hiện diện cho phép người dùng tạo và tùy chỉnh hình đại diện kỹ thuật số đại diện cho họ trong thế giới ảo. Những hình đại diện này có thể bắt chước các chuyển động, biểu cảm và cử chỉ trong đời thực của người dùng, nâng cao cảm giác hiện diện và tương tác xã hội.
  2. Tương tác xã hội: Người dùng có thể gặp gỡ và tương tác với bạn bè và những người khác trong môi trường ảo được chia sẻ. Họ có thể cùng nhau tham gia vào nhiều hoạt động khác nhau, chẳng hạn như chơi trò chơi, tham dự các sự kiện ảo, xem video, v.v.
  3. Âm thanh không gian: Nền tảng kết hợp âm thanh không gian, có nghĩa là âm thanh trong môi trường ảo dựa trên vị trí. Điều này tạo ra trải nghiệm âm thanh sống động và chân thực hơn vì người dùng có thể nghe thấy âm thanh phát ra từ các hướng cụ thể, giống như trong thế giới thực.
  4. Theo dõi bàn tay: Nền tảng Presence hỗ trợ công nghệ theo dõi bàn tay, cho phép người dùng sử dụng bàn tay và ngón tay của họ trực tiếp trong VR mà không cần bộ điều khiển. Điều này làm cho các tương tác tự nhiên và trực quan hơn.
  5. Hỗ trợ đa nền tảng: Nền tảng được thiết kế để hoạt động trên các tai nghe Oculus VR khác nhau, cho phép người dùng có các thiết bị khác nhau tham gia và tương tác với nhau một cách liền mạch.
  6. Công cụ tạo nội dung: Đối với nhà phát triển, Nền tảng hiện diện cung cấp các công cụ và API để tạo và xuất bản các ứng dụng, trò chơi và trải nghiệm VR, cho phép một hệ sinh thái nội dung ảo phát triển mạnh.


Bắt đầu với Theo dõi tay

Như bạn có thể thấy Nền tảng hiện diện là tập hợp toàn diện các tính năng/hệ thống phụ và tôi sẽ trình bày chi tiết từng tính năng, nhưng để bắt đầu - hãy bắt đầu từ theo dõi tay như một trong những yêu cầu cơ bản để phát triển trò chơi VR - chúng ta sẽ thiết lập , xây dựng và khởi chạy trò chơi theo dõi bàn tay như trải nghiệm.


https://docs.unity3d.com/


Điểm khởi đầu hoàn hảo là trải nghiệm Unity-FirstHand do oculus-samples repo cung cấp.

Một lần nữa, vui lòng tham khảo bài viết trước về cách thiết lập môi trường phát triển và đảm bảo các phần phụ thuộc khác nhau đã được cài đặt.


Đảm bảo bạn đã cài đặt Git LFS, chạy lệnh này:

 git lfs install


Sau đó, sao chép repo bằng "Mã", mở trong Github desktop và chạy lệnh sau:

 git clone https://github.com/oculus-samples/Unity-FirstHand.git


Tất cả các tệp dự án thực tế đều có trong Tài sản → Dự án. Thư mục này bao gồm tất cả các tập lệnh và nội dung để chạy mẫu, ngoại trừ chính SDK tương tác. Dự án bao gồm phiên bản 41 của SDK Oculus, bao gồm cả SDK tương tác. Bạn có thể tìm SDK tương tác trong [Nội dung/Oculus/Tương tác]{Nội dung/Oculus/Tương tác).


FirstHand trong Unity Editor


Sau khi cài đặt tất cả các phụ thuộc cần thiết và định cấu hình bản dựng để chạy trên thiết bị Quest, bạn sẽ nhận được nội dung tương tự như trên trong trình chỉnh sửa của mình.


Xây dựng và chạy

Chuyển đến Tệp → Cài đặt bản dựng nếu bạn đang sử dụng Mac.

Nếu bạn đã làm theo hướng dẫn từ bài đăng trước của tôi và kết nối thiết bị của mình, bên dưới là những gì bạn sẽ thấy trong Cài đặt bản dựng.

Cài đặt xây dựng và chạy

Nhấp vào Build and Run, đợi vài phút để Unity xây dựng và đợi thông báo rằng ứng dụng của bạn đang triển khai tới thiết bị Quest được kết nối.


kinh nghiệm chạy

Tùy chỉnh và thực hiện thay đổi

Tôi thực sự khuyên bạn nên thử với ví dụ này và cố gắng tùy chỉnh các thành phần và tập lệnh để tìm hiểu cách thức hoạt động của nó bên trong, để có thể thực hiện nó trong phần Dự án của trình chỉnh sửa Unity của bạn và mở rộng hệ thống phân cấp thư mục dự án.


Chúng tôi sẽ tùy chỉnh LazerProjectile:


cấu trúc dự án

 public class LazerProjectile : ActiveStateObserver { [SerializeField] Transform _target; [SerializeField] GameObject _effect; [SerializeField] float _rayCastDelay = 0.5f; [SerializeField] float _fadeOutTime = 0.1f; [SerializeField] float _delayBetweenShots = 0.5f; [SerializeField] AudioTrigger _chargeUp; [SerializeField, Optional] AudioTrigger _chargeUpComplete; protected override void Update() { base.Update(); Vector3 endPos = Vector3.Lerp(_target.position, transform.position + transform.forward * 20, 5 * Time.deltaTime); _target.position = endPos; } //...... }


Hãy tăng độ trễ cast của Ray và kiểm tra ứng dụng trên tai nghe bằng cách thay thế


 float _rayCastDelay = 0.1f;

ĐẾN

 float _rayCastDelay = 0.5f;


Đây là cách nó làm việc!

Thử nghiệm


Hãy tự mình thử và cho tôi biết bạn muốn xây dựng gì bằng tính năng theo dõi tay.