XRInputSource: handedness property
Khả dụng hạn chế
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Secure context: This feature is available only in secure contexts (HTTPS), in some or all supporting browsers.
Thuộc tính chỉ đọc handedness của XRInputSource cho biết nguồn đầu vào WebXR được liên kết với tay nào của người dùng, hoặc không liên kết với tay nào cả.
Giá trị
Một chuỗi cho biết bộ điều khiển đầu vào có được cầm trong một trong hai tay của người dùng hay không, và nếu có thì là tay nào. Giá trị là một trong các giá trị sau:
Ghi chú sử dụng
Nếu nguồn đầu vào không phải là thiết bị liên kết với tay người dùng (dù bằng cách cầm, gắn hoặc đeo), giá trị của handedness là none. Điều này có thể chỉ ra, ví dụ, một nguồn đầu vào không phải cầm tay, chẳng hạn như điều khiển tích hợp trong tai nghe hoặc thiết bị đầu vào gắn vào đầu hoặc cơ thể.
Ví dụ
Một trong những tình huống quan trọng khi sử dụng handedness là xác định bộ điều khiển ở tay nào để bạn có thể vẽ biểu diễn của tay đó (hoặc thiết bị tay đó đang điều khiển) trong không gian ảo.
function updateInputSources(session, frame, refSpace) {
for (const source of session.inputSources) {
if (source.gripSpace) {
const gripPose = frame.getPose(source.gripSpace, refSpace);
if (gripPose) {
myRenderHandObject(gripPose, inputSource.handedness);
}
}
}
}
Hàm này, được gọi mỗi khung hình animation (hoặc định kỳ, tùy thuộc vào mức độ mượt mà cần thiết và bất kỳ ràng buộc hiệu suất nào), quét danh sách các nguồn đầu vào để tìm bất kỳ nguồn nào có gripSpace khác null. Nếu có gripSpace, hàm tiếp tục lấy tư thế cho gripSpace được biến đổi sang không gian tham chiếu hiện tại. Giả sử tư thế hợp lệ, hàm myRenderHandObject() được gọi với tư thế grip và giá trị handedness. Nó sau đó vẽ mô hình phù hợp được định vị và tạo hình cho tay đúng.
Thông số kỹ thuật
| Thông số kỹ thuật |
|---|
| WebXR Device API> # dom-xrinputsource-handedness> |