Các hoạt động tương tác chính trong Phòng thí nghiệm WebVR

Phòng thí nghiệm thực tế ảo

Xem Phòng thí nghiệm

Các nhà thiết kế trang web đã quen với ý tưởng thiết kế thích ứng, tức là xây dựng một trang web để hoạt động trên nhiều thiết bị, chẳng hạn như điện thoại di động, máy tính bảng và máy tính, cũng như các độ phân giải màn hình và tỷ lệ pixel khác nhau. WebVR đặt ra những thách thức mới đối với ý tưởng thiết kế thích ứng.

Chúng ta có thể phân loại trải nghiệm WebVR theo hai chỉ số – mức độ nhúng và mức độ đầu vào. Các cấp độ này được phân biệt theo "bậc tự do" (DOF). 6 DOF dùng để theo dõi cả vị trí và hướng, 3 DOF chỉ theo dõi hướng và 0 DOF không theo dõi vị trí cũng như hướng.

Mức độ nhúng

  • Không có thực tế ảo – Màn hình hoặc màn hình di động.
  • Stationary VR – Thiết bị có tính năng theo dõi 3 DOF.
  • Seated VR – Theo dõi 6 DOF nhưng trong phạm vi khu vực và góc hạn chế.
  • Room Scale VR – Theo dõi 6 DOF trong môi trường có kích thước phòng.

Mức đầu vào

  • 0 DOF – Phương thức nhập duy nhất cho phép bạn nhấp hoặc nhấn. Phương thức nhập này được gắn với hướng mà người dùng đang nhìn. Đôi khi, chúng tôi gọi đây là trình điều khiển hướng nhìn.
  • 3 DOF – Bộ điều khiển theo dõi hướng của thiết bị có thể được sử dụng như con trỏ laser để chỉ định một hướng hoặc vị trí. Vị trí của bộ điều khiển được ước tính dựa trên quan điểm của người dùng. Trong đó có Bộ điều khiển Daydream.
  • 6 DOF – Bộ điều khiển theo dõi vị trí và hướng của tay điều khiển. Bạn có thể dùng tính năng này để mô phỏng chặt chẽ bàn tay trong thực tế ảo (VR).

Vì vậy, bạn có thể thấy rằng một ứng dụng duy nhất có thể hỗ trợ mọi thứ từ màn hình thiết bị di động không phải thực tế ảo (VR) chỉ với một cú nhấp để nhập toàn bộ trải nghiệm ở quy mô toàn phòng với 2 tay điều khiển được theo dõi đầy đủ.

Phòng thí nghiệm WebVR

Trong Phòng thí nghiệm WebVR của PlayCanvas, chúng tôi đã triển khai một số hoạt động tương tác chính mà bạn có thể cần trong ứng dụng của mình và mở rộng chúng trên nhiều cấp độ trải nghiệm.

Cách hoạt động của lượt tương tác

Cơ chế cơ bản về cách hoạt động của các hoạt động tương tác trong WebVR Lab là giao điểm tia. Sàn, phòng và mọi đối tượng có thể tương tác được xác định theo một trong ba nguyên hàm hình dạng:

  • Hộp giới hạn được căn chỉnh theo trục (hoặc AABB) – Hộp không được xoay.
  • Hộp giới hạn theo hướng – Hộp có thể xoay được.
  • Hình cầu – Bán kính xung quanh một điểm trong không gian.

Để xem liệu một hành động có khả thi hay không, chúng ta sẽ bắn một tia vào thế giới và kiểm tra xem tia đó có giao cắt với hình dạng của các đối tượng trên thế giới hay không. Có thể có các loại tương tác khác nhau tuỳ thuộc vào nơi bắt nguồn của tia (máy ảnh hoặc bộ điều khiển) và độ dài của tia (các thao tác chụp cận cảnh hoặc trỏ vào khoảng cách xa).

Thao tác đơn giản

Trước tiên, chúng ta xác định một số thao tác đơn giản và cách sử dụng những thao tác đó với các tay điều khiển.

Đánh dấu

Bạn có thể làm nổi bật một vị trí hoặc đối tượng bằng cách nhìn vào vị trí hoặc đối tượng đó (bằng bộ điều khiển kính) hoặc bằng cách trỏ vào vị trí hoặc đối tượng đó (bằng tay điều khiển). Điều này có thể xảy ra khi người dùng không nhấn nút hoặc chỉ nhấn nút khi họ nhấn nút.

Nhấp

Thao tác nhấp vào một vị trí hoặc đối tượng được thực hiện bằng cách đánh dấu trước tiên, sau đó nhấn hoặc thả nút. Với trình điều khiển hướng nhìn, bạn sẽ nhấp bằng cách xem một đối tượng rồi nhấn nút hoặc màn hình. Với bộ điều khiển tay, phương thức này sẽ trỏ vào một đối tượng rồi nhấp vào một nút.

Hoạt động tương tác cốt lõi

Nhờ tính năng làm nổi bật và nhấp, chúng tôi đã triển khai một số hoạt động tương tác cốt lõi trong Phòng thí nghiệm WebVR.

Cổng viễn thông

Cổng viễn thông

Khi xây dựng một môi trường ảo để người dùng khám phá, có khả năng môi trường sẽ lớn hơn khu vực nhỏ mà người dùng có thể nhìn thấy mà không di chuyển. Ví dụ: Phòng thí nghiệm WebVR có ba phần. Một phòng chính, một tầng lửng và một phòng phụ để phát nhạc Hi-Fi.

Việc di chuyển khung nhìn của người dùng qua thế giới thường sẽ gây ra cảm giác khó chịu. Trong Phòng thí nghiệm WebVR, chúng tôi cho phép người dùng đánh dấu một vị trí và nhấp để di chuyển tức thì. Quan điểm của người dùng không bao giờ di chuyển. Do đó, mặc dù có cảm giác di chuyển ngay lập tức bất thường, nhưng người dùng vẫn có thể di chuyển xung quanh một không gian rộng lớn mà không hề khó chịu.

Đối với tay điều khiển, chúng ta sẽ yêu cầu người dùng nhấn và giữ một nút để kích hoạt mục tiêu di chuyển. Nhờ đó, tầm nhìn của người dùng không bị lộn xộn khi họ đang nhìn xung quanh.

Di chuyển quan điểm của người dùng

Đôi khi, bạn cần phải thay đổi quan điểm. Ví dụ: khi sử dụng Thực tế ảo tại chỗ hoặc Thực tế ảo có chỗ ngồi, bạn có thể đối diện với tường và không thể quay lại trong thế giới thực. Vì vậy, chúng tôi cho phép người dùng xoay máy ảnh bằng bộ điều khiển. Trong Phòng thí nghiệm WebVR, hãy sử dụng bàn phím bên trái hoặc bên phải trên Bộ điều khiển Daydream xoay máy ảnh.

Để tránh gây khó chịu khi di chuyển máy ảnh theo cách này, chúng ta sẽ giảm tầm nhìn của thiết bị ngoại vi bằng cách áp dụng một chế độ xem bị hạn chế trên máy ảnh. Cơ sở này dựa trên công việc của Ubisoft và chúng tôi nhận thấy rằng việc chỉ tập trung chế độ xem vào giữa màn hình sẽ giúp giảm sự khó chịu.

Ứng dụng

Ứng dụng

Kích hoạt VR tương đương với việc nhấp vào một nút trên trang web. Trong Phòng thí nghiệm WebVR, chúng tôi đã thực hiện điều này theo nghĩa đen và cung cấp một nút đơn giản có thể kích hoạt.

Đối với bộ điều khiển 0 DOF và 3 DOF, thao tác kích hoạt sẽ là đánh dấu và nhấp. Đối với tay điều khiển 6DOF, chúng tôi có thể nâng cấp trải nghiệm để cho phép bạn "đẩy" một nút bằng cách trực tiếp kiểm tra xem bộ điều khiển tay của bạn có nằm bên trong nút đó hay không.

Grab

Grab

WebVR Lab chứa một số mục "có thể lấy được". Với hành vi này, khi đối tượng được kích hoạt, đối tượng có thể được chọn và di chuyển. Có 2 hành vi khác nhau rõ ràng tuỳ thuộc vào cấp độ đầu vào mà bạn muốn hỗ trợ.

Đối với 6 bộ điều khiển DOF, việc giữ nút nhập sẽ đính kèm mục có thể lấy vào bộ điều khiển. Sau đó, bạn có thể di chuyển và định vị mô-đun này bằng các biện pháp kiểm soát chi tiết. Việc thả nút sẽ kích hoạt thao tác kết hợp hoặc thả với mục đó.

Đối với các tay điều khiển ít cơ động hơn, một lượt nhấp sẽ chọn mục và gắn mục đó vào khung nhìn của người dùng. Thường hiển thị một phần của mục ở "phần ba phía dưới" của màn hình. Lượt nhấp thứ hai sẽ làm thả hoặc kết hợp mục.

Hợp nhất

Hợp nhất

Kết hợp là hành động xảy ra khi bạn "sử dụng" một mục với một mục khác. Phương pháp này bao gồm rất nhiều trường hợp sử dụng. Trong Phòng thí nghiệm WebVR, chúng tôi sử dụng tính năng này để phát bản ghi trên hi-fi. Khi một mục được lấy, bạn có thể kết hợp mục đã nắm bắt với một mục khác. Với tất cả các loại tay điều khiển, làm nổi bật mục mục tiêu trong khi lấy một mục khác rồi thả tay ra để kết hợp hai mục.

Thả / Khôi phục

Thao tác thả một mục xảy ra khi bạn nhấp trong khi giữ một mục đã tải và không làm nổi bật mục nào khác.

Trong Phòng thí nghiệm WebVR, chúng tôi đã duy trì các yêu cầu về hiệu suất ở mức thấp bằng cách không sử dụng hoạt động mô phỏng thực tế trên bất kỳ mục nào. Điều đó có nghĩa là thay vì thả một mục xuống mặt đất, chúng tôi chỉ đơn giản là cho phép mục đó nổi ở vị trí đã thả. Sau khi thả một mục, nếu mục đó không được kích hoạt trong một khung thời gian nhất định, thì mục đó sẽ tự "khôi phục" về vị trí ban đầu. Chức năng khôi phục này cho phép người dùng có mức đầu vào thấp (0 DOF hoặc 3 DOF) có thể vận hành trên nhiều mục và duy trì khu vực làm việc hữu dụng. Các mục cũ hơn sẽ tự động xoá.

Khi có cổng vào 6 DOF, bạn có thể dễ dàng di chuyển các mục ra xa. Việc có độ trễ đối với hoạt động khôi phục sẽ cho phép người dùng 6 DOF tự di chuyển các mục xung quanh, nhưng vẫn tạo điều kiện cho quá trình tự làm sạch khu vực đó.

Tóm tắt

Phòng thí nghiệm WebVR là một dự án trực tiếp của nhóm PlayCanvas. Điều đó có nghĩa là API này đang liên tục phát triển. Đồng thời, các trải nghiệm sẽ được bổ sung và cập nhật trong quá trình chúng tôi nghiên cứu thêm về việc xây dựng các ứng dụng WebVR.

Trò chơi này mở rộng từ trải nghiệm trên thiết bị di động kiểu "cửa sổ kỳ diệu" sang sân chơi tương tác trên máy tính. Chúng tôi đã bắt đầu xác định một tập hợp các hoạt động tương tác chính mà người dùng có thể sử dụng cho các dự án của riêng họ. Chúng tôi hy vọng rằng Phòng thí nghiệm WebVR là một trải nghiệm học tập tốt cho những ai muốn xây dựng thế giới 3D bằng WebVR.

Nếu có tài khoản PlayCanvas, bạn có thể truy cập trực tiếp vào Dự án phòng thí nghiệm WebVR để tìm hiểu thêm.