VRDisplay

Deprecated: This feature is no longer recommended. Though some browsers might still support it, it may have already been removed from the relevant web standards, may be in the process of being dropped, or may only be kept for compatibility purposes. Avoid using it, and update existing code if possible; see the compatibility table at the bottom of this page to guide your decision. Be aware that this feature may cease to work at any time.

Non-standard: This feature is not standardized. We do not recommend using non-standard features in production, as they have limited browser support, and may change or be removed. However, they can be a suitable alternative in specific cases where no standard option exists.

Giao diện VRDisplay của WebVR API đại diện cho bất kỳ thiết bị thực tế ảo nào được API này hỗ trợ. Nó bao gồm thông tin chung như ID và mô tả thiết bị, cũng như các phương thức để bắt đầu hiển thị cảnh thực tế ảo, truy xuất tham số mắt và khả năng màn hình, cùng các chức năng quan trọng khác.

Note: Giao diện này là một phần của WebVR API cũ. Nó đã được thay thế bởi WebXR Device API.

Một mảng tất cả các thiết bị VR đã kết nối có thể được trả về bằng cách gọi phương thức Navigator.getVRDisplays().

Thuộc tính phiên bản

VRDisplay.capabilities Read only Deprecated Non-standard

Trả về đối tượng VRDisplayCapabilities cho biết các khả năng khác nhau của VRDisplay.

VRDisplay.depthFar Deprecated Non-standard

Lấy và đặt độ sâu z xác định mặt phẳng xa của khung nhìn mắt, tức là ranh giới có thể nhìn thấy xa nhất của cảnh.

VRDisplay.depthNear Deprecated Non-standard

Lấy và đặt độ sâu z xác định mặt phẳng gần của khung nhìn mắt, tức là ranh giới có thể nhìn thấy gần nhất của cảnh.

VRDisplay.displayId Read only Deprecated Non-standard

Trả về mã định danh cho VRDisplay cụ thể này, cũng được sử dụng làm điểm liên kết trong Gamepad API (xem Gamepad.displayId).

VRDisplay.displayName Read only Deprecated Non-standard

Trả về tên có thể đọc được để xác định VRDisplay.

VRDisplay.isConnected Read only Deprecated Non-standard

Trả về giá trị boolean cho biết liệu VRDisplay có đang kết nối với máy tính hay không.

VRDisplay.isPresenting Read only Deprecated Non-standard

Trả về giá trị boolean cho biết liệu VRDisplay có đang hiển thị nội dung hay không.

VRDisplay.stageParameters Read only Deprecated Non-standard

Trả về đối tượng VRStageParameters chứa các tham số quy mô phòng, nếu VRDisplay có khả năng hỗ trợ trải nghiệm quy mô phòng.

Phương thức phiên bản

VRDisplay.getEyeParameters() Deprecated Non-standard

Trả về đối tượng VREyeParameters chứa các tham số mắt cho mắt được chỉ định.

VRDisplay.getFrameData() Deprecated Non-standard

Nhận đối tượng VRFrameData và điền vào đó các thông tin cần thiết để hiển thị khung hình hiện tại.

VRDisplay.getImmediatePose() Deprecated Non-standard

Trả về đối tượng VRPose xác định tư thế hiện tại của VRDisplay, không áp dụng dự đoán. Phương thức này không còn cần thiết và đã bị xóa khỏi đặc tả.

VRDisplay.getLayers() Deprecated Non-standard

Trả về các lớp hiện đang được hiển thị bởi VRDisplay.

VRDisplay.getPose() Deprecated Non-standard

Trả về đối tượng VRPose xác định tư thế dự đoán trong tương lai của VRDisplay khi khung hình hiện tại thực sự được hiển thị. Phương thức này đã lỗi thời — thay vào đó, bạn nên sử dụng VRDisplay.getFrameData(), phương thức này cũng cung cấp đối tượng VRPose.

VRDisplay.resetPose() Deprecated Non-standard

Đặt lại tư thế cho VRDisplay này, lấy VRPose.positionVRPose.orientation hiện tại làm giá trị "gốc/không".

VRDisplay.cancelAnimationFrame() Deprecated Non-standard

Triển khai đặc biệt của Window.cancelAnimationFrame cho phép hủy đăng ký các callback đã đăng ký với VRDisplay.requestAnimationFrame().

VRDisplay.requestAnimationFrame() Deprecated Non-standard

Triển khai đặc biệt của Window.requestAnimationFrame chứa hàm callback được gọi mỗi lần khung hình mới của màn hình VRDisplay được hiển thị.

VRDisplay.requestPresent() Deprecated Non-standard

Bắt đầu VRDisplay hiển thị một cảnh.

VRDisplay.exitPresent() Deprecated Non-standard

Dừng VRDisplay hiển thị một cảnh.

VRDisplay.submitFrame() Deprecated Non-standard

Ghi lại trạng thái hiện tại của VRLayerInit đang được hiển thị và hiển thị nó trên VRDisplay.

Ví dụ

js
if (navigator.getVRDisplays) {
  console.log("WebVR 1.1 supported");
  // Then get the displays attached to the computer
  navigator.getVRDisplays().then((displays) => {
    // If a display is available, use it to present the scene
    if (displays.length > 0) {
      vrDisplay = displays[0];
      // Now we have our VRDisplay object and can do what we want with it
    }
  });
}

Note: Bạn có thể xem mã đầy đủ tại raw-webgl-example.

Thông số kỹ thuật

Giao diện này là một phần của WebVR API cũ đã được thay thế bởi WebXR Device API. Nó không còn trên đường trở thành tiêu chuẩn.

Cho đến khi tất cả các trình duyệt triển khai WebXR API mới, nên dựa vào các framework như A-Frame, Babylon.js hoặc Three.js, hoặc một polyfill, để phát triển các ứng dụng WebXR hoạt động trên tất cả các trình duyệt. Đọc hướng dẫn Porting from WebVR to WebXR của Meta để biết thêm thông tin.

Tương thích trình duyệt

Xem thêm