XRMediaBinding: createCylinderLayer() method
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Experimental: This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
Phương thức createCylinderLayer() của giao diện XRMediaBinding trả về đối tượng XRCylinderLayer, là một lớp chiếm một không gian hình chữ nhật cong trong môi trường ảo.
Cú pháp
createCylinderLayer(video, options)
Tham số
video-
Một
HTMLVideoElementđể hiển thị. options-
Một đối tượng để cấu hình
XRCylinderLayer. Đối tượng có thể có các thuộc tính sau vàspacelà bắt buộc:aspectRatioOptional-
Một số chỉ ra tỷ lệ của phần hình trụ có thể nhìn thấy. Đây là tỷ lệ chiều rộng của phần có thể nhìn thấy của hình trụ chia cho chiều cao của nó. Chiều rộng được tính bằng cách nhân
radiusvớicentralAngle. centralAngleOptional-
Một số chỉ ra góc tính bằng radian của phần hình trụ có thể nhìn thấy. Giá trị mặc định:
0.78539(π / 4). invertStereoOptional-
Giá trị boolean chỉ định liệu vị trí tự nhiên của mỗi khung nhìn trong video có nên bị đảo ngược không. Mặc định là
false. layoutOptional-
Chuỗi chỉ ra bố cục của video. Các giá trị có thể:
default-
Lớp hỗ trợ tất cả các khung nhìn của phiên.
mono-
Một
XRSubImageđược phân bổ và trình bày cho cả hai mắt. stereo-
Tác nhân người dùng quyết định cách phân bổ
XRSubImage(một hoặc hai) và bố cục (trên/dưới hoặc trái/phải). Nên sử dụng loại kết cấutexture-arraycho bố cụcstereo. stereo-left-right-
Một
XRSubImageđược phân bổ. Mắt trái nhận vùng trái của kết cấu, mắt phải nhận vùng phải. Bố cục này được thiết kế để giảm thiểu các lần vẽ cho nội dung đã ở dạng stereo. stereo-top-bottom-
Một
XRSubImageđược phân bổ. Mắt trái nhận vùng trên của kết cấu, mắt phải nhận vùng dưới. Bố cục này được thiết kế để giảm thiểu các lần vẽ cho nội dung đã ở dạng stereo. Giá trị mặc định làmono.
radiusOptional-
Một số chỉ ra bán kính của hình trụ. Giá trị mặc định
2.0. spaceBắt buộc-
Một đối tượng
XRSpacexác định mối quan hệ không gian của lớp với môi trường vật lý của người dùng. transformOptional-
Một đối tượng
XRRigidTransformxác định độ lệch và hướng tương đối vớispace.
Giá trị trả về
Một đối tượng XRCylinderLayer.
Ví dụ
>Tạo XRCylinderLayer để hiển thị video
Tạo XRMediaBinding và sử dụng HTMLVideoElement được truyền vào createCylinderLayer(). Cấu hình lớp quad bằng cách sử dụng các tùy chọn liệt kê ở trên và trình bày lớp cho thiết bị XR bằng cách thêm nó vào trạng thái kết xuất layers trong XRSession.updateRenderState().
function onXRSessionStarted(xrSession) {
const xrMediaBinding = new XRMediaBinding(xrSession);
const video = document.createElement("video");
video.src = "just-fascination.mp4";
const videoLayer = xrMediaBinding.createCylinderLayer(video, {
space: xrReferenceSpace,
});
xrSession.updateRenderState({
layers: [videoLayer],
});
}
Thông số kỹ thuật
| Specification |
|---|
| WebXR Layers API Level 1> # dom-xrmediabinding-createcylinderlayer> |