XRInputSource
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Sicherer Kontext: Diese Funktion ist nur in sicheren Kontexten (HTTPS) in einigen oder allen unterstützenden Browsern verfügbar.
Das XRInputSource
-Interface der WebXR Device API beschreibt eine einzelne Quelle der Steuereingaben, die Teil des WebXR-kompatiblen virtuellen oder erweiterten Realitätssystems des Benutzers ist. Das Gerät ist spezifisch für die verwendete Plattform, liefert jedoch die Richtung, in die es gezeigt wird, und kann optional Ereignisse generieren, wenn der Benutzer Aktionen mit dem Gerät ausführt.
Instanz-Eigenschaften
gamepad
Nur lesbar-
Ein
Gamepad
-Objekt, das den Zustand der Tasten und Achsen der XR-Eingabequelle beschreibt, wenn es sich um ein Gamepad oder ein vergleichbares Gerät handelt. Ist das Gerät kein gamepad-ähnliches Gerät, hat diese Eigenschaft den Wertnull
. gripSpace
Nur lesbar-
Ein
XRSpace
, dessen Ursprung die Pose nachverfolgt, die verwendet wird, um Objekte zu rendern, die erscheinen sollen, als ob sie in der durchhandedness
angegebenen Hand gehalten werden. Die Orientierung dieses Raums gibt den Winkel an, in dem die Hand das Objekt greift. Lesen Sie im Hauptartikel übergripSpace
weiter, um mehr Details darüber zu erfahren, wie dieser Raum verwendet wird. hand
Nur lesbar-
Ein
XRHand
-Objekt, das Zugriff auf das zugrunde liegende Handverfolgungsgerät bietet. handedness
Nur lesbar-
Ein String, der angibt, in welcher Hand das durch diese
XRInputSource
repräsentierte Gerät verwendet wird, falls vorhanden. Der Wert kannleft
,right
odernone
sein. profiles
Nur lesbar-
Ein Array von Strings, die jeweils den Namen eines Eingabeprofils angeben, das die bevorzugte visuelle Darstellung und das Verhalten dieser Eingabequelle beschreibt.
targetRayMode
Nur lesbar-
Ein String, der die Methodik angibt, die verwendet wird, um den Ziellinienstrahl zu erzeugen:
gaze
,tracked-pointer
oderscreen
. targetRaySpace
Nur lesbar-
Ein
XRSpace
-Objekt, das den Ursprung des Zielstrahls und die Richtung festlegt, in die er sich erstreckt. Dieser Raum wird mit der durchtargetRayMode
definierten Methode festgelegt.
Instanz-Methoden
Das XRInputSource
-Interface definiert keine Methoden.
Verwendungshinweise
Aktionen und der Zielstrahl
Wenn das Gerät eine Angabe der Richtung liefert, in die es zeigt, erfolgt dies mithilfe eines Zielstrahls. Dies ist ein Strahl, der sich von der Position des Geräts in die Richtung erstreckt, in die es zeigt.
Ein Zielstrahl, der von einem Hand-Controller ausgesendet wird.
Wenn das Gerät einen Auslöser oder eine andere drückbare Eingabe enthält, wie z.B. ein Handgestengerät, das erkennt, wenn der Benutzer seine Faust ballt, wird diese Aktion als primäre Drückaktion bezeichnet. Eine primäre Drückaktion sollte einem Greifakt in der Realität entsprechen, wie dem Ergreifen eines Objekts oder dem Drücken eines Abzugs an einem Werkzeug oder einer Waffe. Wenn eine Drückaktion beginnt, also z.B. der Benutzer den Abzug drückt oder seinen Griff verstärkt, wird ein squeezestart
-Ereignis an die XRSession
gesendet. Sobald die Aktion abgeschlossen ist und der Benutzer den Abzug oder Griff losgelassen hat, wird ein squeeze
-Ereignis gesendet. Dies wird gefolgt von einem squeezeend
, das ebenfalls gesendet wird, wenn die Aktion abgebrochen und nicht abgeschlossen wird.
Wenn das Gerät eine Taste oder andere drückbare Eingabesteuerung hat, ist es eine primäre Eingabequelle, und diese Taste ist eine primäre Aktion. Eine primäre Aktion kann auftreten, wenn der Benutzer eine Taste drückt, auf einem Touchpad oder der obersten Taste eines Steuerknüppels klickt oder ein Handgesten- oder Sprachbefehl verwendet, der die taste-ähnliche Aktion auslöst. Wenn eine primäre Aktion beginnt, wird ein selectstart
-Ereignis an die XRSession
gesendet. Wenn die Aktion abgeschlossen ist (z.B. wenn der Benutzer die Taste loslässt), wird ein select
-Ereignis gesendet. Schließlich, sobald dies abgeschlossen ist – oder wenn der Benutzer die Aktion abbricht – wird ein selectend
-Ereignis an das Sitzungsobjekt gesendet.
Eine Aktion kann entweder vom Benutzer auf gerätespezifische Weise abgebrochen werden oder wenn das Eingabegerät getrennt wird, bevor die Aktion abgeschlossen ist.
Lokales Koordinatensystem
Jede Eingabequelle hat ihr eigenes lokales Koordinatensystem, das durch die gripSpace
-Eigenschaft beschrieben wird, das ein XRSpace
ist, das dazu verwendet wird, das Koordinatensystem der Eingabe in das Weltkoordinatensystem zu überführen. Das Koordinatensystem des Griffraums kann dann verwendet werden, um Objekte zu rendern, so dass sie erscheinen, als ob sie in der Hand des Benutzers gehalten werden.
Weitere Details zum Koordinatensystem der Eingabequelle finden Sie im Artikel, der die gripSpace
-Eigenschaft im Detail behandelt.
Spezifikationen
Specification |
---|
WebXR Device API # xrinputsource-interface |
Browser-Kompatibilität
BCD tables only load in the browser