TW202345950A - Accessible controller and controller hub - Google Patents

Accessible controller and controller hub Download PDF

Info

Publication number
TW202345950A
TW202345950A TW112114242A TW112114242A TW202345950A TW 202345950 A TW202345950 A TW 202345950A TW 112114242 A TW112114242 A TW 112114242A TW 112114242 A TW112114242 A TW 112114242A TW 202345950 A TW202345950 A TW 202345950A
Authority
TW
Taiwan
Prior art keywords
controller
user
hub
input
degrees
Prior art date
Application number
TW112114242A
Other languages
Chinese (zh)
Inventor
達恩 維爾肯
伊格爾 柯金采夫
Original Assignee
美商元平台技術有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 美商元平台技術有限公司 filed Critical 美商元平台技術有限公司
Publication of TW202345950A publication Critical patent/TW202345950A/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • G06F3/023Arrangements for converting discrete items of information into a coded form, e.g. arrangements for interpreting keyboard generated codes as alphanumeric codes, operand codes or instruction codes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0338Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of limited linear or angular displacement of an operating part of the device from a neutral position, e.g. isotonic or isometric joysticks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/038Control and interface arrangements therefor, e.g. drivers or device-embedded control circuitry
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/038Indexing scheme relating to G06F3/038
    • G06F2203/0382Plural input, i.e. interface arrangements in which a plurality of input device of the same type are in communication with a PC

Abstract

Methods, systems, and storage media for providing accessibility to users with limited mobility in a virtual environment are disclosed. Exemplary implementations may: couple a controller to a controller hub; detect controller inputs to the controller along each of the six degrees of freedom; couple accessories to the controller hub; detect hub inputs from the accessories of the controller hub; and cause interactions in the virtual environment based on the controller inputs and the hub inputs.

Description

無障礙控制器和控制器集線器Accessibility Controllers and Controller Hubs

本揭示大體上關於一種無障礙控制器及控制器集線器,且更特定言之關於向在虛擬環境中具有受限行動性之使用者提供無障礙性。The present disclosure relates generally to accessibility controllers and controller hubs, and more specifically to providing accessibility to users with limited mobility in virtual environments.

習知地,人工實境(例如,虛擬實境、擴增實境等)系統包括計算裝置、頭戴裝置、及一或多個控制器作為用以允許使用者在人工環境內移動的輸入裝置。當前控制器使用使用者在所有方向及位向上移動的操縱桿及手持型裝置以提供六自由度(six degrees of freedom;6DoF)作為至系統之輸入。一些使用者具有身體限制而防止或限制操縱此等輸入裝置,使得現有控制器對於此等使用者不適當。現有控制器通常並不提供對於具有身體限制之使用者無障礙的裝置。Conventionally, an artificial reality (for example, virtual reality, augmented reality, etc.) system includes a computing device, a head-mounted device, and one or more controllers as input devices for allowing users to move within the artificial environment. . Current controllers use joysticks and handheld devices that allow the user to move in all directions and orientations to provide six degrees of freedom (6DoF) as input to the system. Some users have physical limitations that prevent or limit manipulation of such input devices, making existing controllers inappropriate for such users. Existing controllers often do not provide accessibility for users with physical limitations.

本揭示提供用於無障礙控制器及控制器集線器之系統及方法。允許使用者將輸入提供至對應於六自由度的一VR系統,該輸入通常由在空間中四處移動之一或多個標準控制器提供,其中標準控制器之位置及位向對應於由使用一或多個外部控制器之VR系統預期之輸入控制件的位置及移動,該些外部控制器中之各者提供運動輸入之一或多個度。The present disclosure provides systems and methods for accessibility controllers and controller hubs. Allows the user to provide input to a VR system corresponding to six degrees of freedom. The input is typically provided by one or more standard controllers moving around in space, where the position and orientation of the standard controllers correspond to those obtained by using a The VR system anticipates the position and movement of the input controls or multiple external controllers, each of which provides one or more degrees of motion input.

本揭示之一個態樣關於一種用於向在虛擬環境中具有受限行動性之使用者提供無障礙性之方法。方法可包括將控制器耦接至控制器集線器。控制器經組態以用於具有受限行動性之使用者。控制器可包括具有六自由度之致動器。方法可包括偵測沿著六自由度中之各者至控制器之控制器輸入。方法可包括將配件耦接至控制器集線器。方法可包括偵測來自控制器集線器之配件之集線器輸入。方法可包括基於控制器輸入及集線器輸入而引起虛擬環境中之互動。One aspect of the present disclosure relates to a method for providing accessibility to users with limited mobility in a virtual environment. The method may include coupling the controller to a controller hub. The controller is configured for use by users with limited mobility. The controller may include an actuator with six degrees of freedom. Methods may include detecting controller input to the controller along each of the six degrees of freedom. The method may include coupling the accessory to the controller hub. Methods may include detecting hub input from accessories in the controller hub. Methods may include causing interactions in the virtual environment based on controller input and hub input.

本揭示之另一態樣關於一種經組態以用於向在虛擬環境中具有受限行動性之使用者提供無障礙性之系統。系統可包括由機器可讀取指令組態之一或多個硬體處理器。處理器可經組態以將控制器耦接至控制器集線器。控制器經組態以用於具有受限行動性之使用者。控制器可包括具有六自由度之致動器。致動器可包括操縱桿、旋鈕及感測沿著六自由度中之各者之運動輸入的感測器。處理器可經組態以偵測沿著六自由度中之各者至控制器之控制器輸入。處理器可經組態以將配件耦接至控制器集線器。處理器可經組態以偵測來自控制器集線器之配件之集線器輸入。處理器可經組態以基於控制器輸入及集線器輸入而引起虛擬環境中之互動。Another aspect of the present disclosure relates to a system configured for providing accessibility to users with limited mobility in a virtual environment. The system may include one or more hardware processors configured by machine-readable instructions. The processor can be configured to couple the controller to the controller hub. The controller is configured for use by users with limited mobility. The controller may include an actuator with six degrees of freedom. Actuators may include joysticks, knobs, and sensors that sense motion input along each of the six degrees of freedom. The processor can be configured to detect controller input to the controller along each of the six degrees of freedom. The processor can be configured to couple accessories to the controller hub. The processor can be configured to detect hub input from accessories in the controller hub. The processor can be configured to cause interaction in the virtual environment based on controller input and hub input.

本揭露之又一態樣關於其上體現有指令之非暫時性電腦可讀取儲存媒體,該些指令可由一或多個處理器執行以進行用於向在虛擬環境中具有受限行動性之使用者提供無障礙性的方法。方法可包括將控制器耦接至控制器集線器。控制器經組態以用於具有受限行動性之使用者。控制器可包括具有六自由度之致動器。致動器可包括操縱桿、旋鈕及感測沿著六自由度中之各者之運動輸入的感測器。控制器可包括用於上/下、後退/向前、上/下、滾動、偏航及/或俯仰之感測器。方法可包括偵測沿著六自由度中之各者至控制器之控制器輸入。方法可包括將配件耦接至控制器集線器。配件可包括按鈕、觸發器、感測器及額外控制器功能性。方法可包括偵測來自控制器集線器之配件之集線器輸入。方法可包括基於控制器輸入及集線器輸入而引起虛擬環境中之互動。Yet another aspect of the present disclosure relates to a non-transitory computer-readable storage medium embodying instructions executable by one or more processors for providing services to a computer having restricted mobility in a virtual environment. User-provided accessibility methods. The method may include coupling the controller to a controller hub. The controller is configured for use by users with limited mobility. The controller may include an actuator with six degrees of freedom. Actuators may include joysticks, knobs, and sensors that sense motion input along each of the six degrees of freedom. Controllers may include sensors for up/down, back/forward, up/down, roll, yaw and/or pitch. Methods may include detecting controller input to the controller along each of the six degrees of freedom. The method may include coupling the accessory to the controller hub. Accessories can include buttons, triggers, sensors and additional controller functionality. Methods may include detecting hub input from accessories in the controller hub. Methods may include causing interactions in the virtual environment based on controller input and hub input.

本揭示之又一態樣關於一種經組態以用於向在虛擬環境中具有受限行動性之使用者提供無障礙性之系統。系統可包括用於將控制器耦接至控制器集線器之構件。控制器經組態以用於具有受限行動性之使用者。控制器可包括具有六自由度之致動器。系統可包括用於偵測沿著六自由度中之各者至控制器之控制器輸入之構件。系統可包括用於將配件耦接至控制器集線器之構件。系統可包括用於偵測來自控制器集線器之配件之集線器輸入之構件。系統可包括用於基於控制器輸入及集線器輸入而引起虛擬環境中之互動之構件。Yet another aspect of the present disclosure relates to a system configured for providing accessibility to users with limited mobility in a virtual environment. The system may include means for coupling the controller to the controller hub. The controller is configured for use by users with limited mobility. The controller may include an actuator with six degrees of freedom. The system may include means for detecting controller input to the controller along each of the six degrees of freedom. The system may include means for coupling accessories to the controller hub. The system may include means for detecting hub input from accessories in the controller hub. The system may include components for causing interactions in the virtual environment based on controller input and hub input.

在以下實施方式中,闡述眾多特定細節以提供對本揭示之充分理解。然而,對於所屬領域中具有通常知識者將顯而易見,可在無此等特定細節中之一些的情況下實踐本揭示之具體實例。在其他情況下,尚未詳細顯示熟知結構及技術以免混淆本揭示。In the following description, numerous specific details are set forth to provide a thorough understanding of the present disclosure. However, it will be apparent to one of ordinary skill in the art that specific examples of the present disclosure may be practiced without some of these specific details. In other instances, well-known structures and techniques have not been shown in detail so as not to obscure the present disclosure.

現有控制器並不提供准許具有受限移動之使用者與人工實境系統互動的輸入裝置。另外,現有控制器通常亦不接受向人工實境系統提供替代機構之第三方輸入裝置。此等限制未能提供對於具有受限行動性之使用者無障礙的控制器。Existing controllers do not provide input devices that allow users with limited mobility to interact with artificial reality systems. In addition, existing controllers generally do not accept third-party input devices that provide alternative mechanisms to artificial reality systems. These limitations do not provide an accessible controller for users with limited mobility.

本揭示提供用於無障礙控制器及控制器集線器之系統及方法。允許具有受限移動之使用者與VR系統互動,以將輸入在六自由度中提供至VR系統,而不必在六自由度中移動她或她的臂及手。另外,允許使用者將提供替代機構之第三方輸入裝置附接至VR系統。The present disclosure provides systems and methods for accessibility controllers and controller hubs. A user with limited movement is allowed to interact with the VR system to provide input to the VR system in six degrees of freedom without having to move her or her arms and hands in six degrees of freedom. Additionally, users are allowed to attach third-party input devices to the VR system that provide alternative mechanisms.

藉由提供無障礙控制器裝置及一控制器集線器,該控制器集線器從使用者接受來自各種不同輸入裝置之輸入,該些各種不同輸入裝置經轉換成由現有控制器產生至人工實境系統的資料輸入,本文所描述之實施解決前述缺點及其他缺點。數個輸入裝置之接受允許使用者選擇適合於使用者之行動性限制的輸入裝置,同時將輸入命令供應至與其他控制器裝置一致的人工實境系統。By providing an accessible controller device and a controller hub that accepts input from a user from a variety of different input devices that are converted into the artificial reality system generated by the existing controller Data Input,The implementation described in this article addresses the,foregoing shortcomings and other shortcomings. Acceptance of several input devices allows the user to select an input device appropriate to the user's mobility constraints while simultaneously supplying input commands to the artificial reality system consistent with other controller devices.

所揭示技術之具體實例可包括人工實境系統或結合人工實境系統實施。人工實境、擴展實境或額外實境(統稱為「XR」)為在呈現給使用者之前已以某一方式調整之實境形式,其可包括例如,虛擬實境(虛擬實境;VR)、擴增實境(augmented reality;AR)、混合實境(mixed reality;MR)、複合實境或其某一組合及/或衍生物。人工實境內容可包括完全產生之內容,或與所擷取之內容(例如,真實世界像片)組合之所產生內容。人工實境內容可包括視訊、音訊、觸覺回饋或其某一組合,其中之任一者可在單個通道中或在多個通道中(諸如,對觀看者產生三維效應之立體視訊)呈現。另外,在一些具體實例中,人工實境可與例如用以在人工實境中產生內容,及/或用於人工實境中(例如,在人工實境中進行活動)之應用程式、產品、配件、服務或其某一組合相關聯。提供人工實境內容之人工實境系統可實施於各種平台上,包括連接至主電腦系統之頭戴式顯示器(HMD)、獨立式HMD、行動裝置或計算系統、「洞穴」環境或其他投影系統,或能夠將人工實境內容提供至一或多個觀看者之任何其他硬體平台。Specific examples of the disclosed technology may include or be implemented in conjunction with artificial reality systems. Artificial reality, extended reality or additional reality (collectively, "XR") is a form of reality that has been adapted in some way before being presented to the user. It may include, for example, virtual reality (VR) ), augmented reality (AR), mixed reality (MR), compound reality or some combination and/or derivative thereof. Artificial reality content may include fully generated content, or generated content combined with captured content (eg, real-world photos). Artificial reality content may include video, audio, haptic feedback, or some combination thereof, any of which may be presented in a single channel or in multiple channels (such as stereoscopic video that produces a three-dimensional effect on the viewer). In addition, in some specific examples, artificial reality may be related to, for example, applications, products, products used to generate content in artificial reality, and/or used in artificial reality (e.g., performing activities in artificial reality). accessories, services, or some combination thereof. Artificial reality systems that provide artificial reality content can be implemented on a variety of platforms, including head-mounted displays (HMDs) connected to host computer systems, stand-alone HMDs, mobile devices or computing systems, "cave" environments, or other projection systems , or any other hardware platform capable of delivering artificial reality content to one or more viewers.

如本文所使用,「虛擬實境」或「VR」指使用者之視覺輸入由計算系統控制之沉浸式體驗。「擴增實境」或「AR」指使用者在真實世界之影像已傳遞通過計算系統之後觀看該些影像的系統。舉例而言,背面具有攝影機之平板電腦可擷取真實世界之影像,且接著在平板電腦的與攝影機的相對側上的螢幕上顯示影像。平板電腦可在影像傳遞通過系統時諸如藉由添加虛擬物件來處理及調整或「擴增」該些影像。「混合實境」或「MR」指其中進入使用者眼睛之光部分地由計算系統產生且部分地構成從真實世界中之物件反射的光之系統。舉例而言,MR頭戴裝置可經成形為具有透通顯示器之一對眼鏡,其允許來自真實世界之光穿過同時從MR頭戴裝置中之投影機發射光之波導,從而允許MR頭戴裝置呈現與使用者可查看之真實物件互混的虛擬物件。如本文中所使用,「人工實境」、「額外實境」或「XR」指VR、AR、MR或其任何組合或混合中之任一者。As used herein, "virtual reality" or "VR" refers to an immersive experience in which a user's visual input is controlled by a computing system. "Augmented reality" or "AR" refers to a system in which a user views real-world images after they have been passed through a computing system. For example, a tablet with a camera on the back can capture images of the real world and then display the images on a screen on the side of the tablet opposite the camera. The tablet can process and adjust or "augment" the images as they pass through the system, such as by adding virtual objects. "Mixed reality" or "MR" refers to a system in which the light entering the user's eyes is partly generated by the computing system and partly constitutes light reflected from objects in the real world. For example, an MR headset may be shaped as a pair of glasses with a transparent display that allows light from the real world to pass through while emitting light from a projector in the MR headset, thereby allowing the MR headset to The device presents virtual objects that are intermingled with real objects that the user can view. As used herein, "artificial reality", "additional reality" or "XR" refers to any of VR, AR, MR or any combination or hybrid thereof.

下文參考附圖更詳細地論述若干實施。圖1為說明所揭示技術之一些實施可於其上操作之裝置之概述的方塊圖。裝置可包含計算系統100之硬體組件,該些硬體組件可創建、管理及提供用於人工實境協作工作環境之互動模式。在各種實施中,計算系統100可包括經由有線或無線通道通信以分佈處理及共用輸入資料之單個計算裝置103或多個計算裝置(例如,計算裝置101、計算裝置102及計算裝置103)。在一些實施中,計算系統100可包括能夠為使用者提供電腦產生或擴增之體驗而無需外部處理或感測器之獨立式頭戴裝置。在其他實施中,計算系統100可包括多個計算裝置,諸如頭戴裝置及核心處理組件(諸如,控制台、行動裝置或伺服器系統),其中對頭戴裝置進行一些處理操作且將其他處理操作卸載至核心處理組件。下文關於圖2A及圖2B描述範例頭戴裝置。在一些實施中,位置及環境資料可僅由併入於頭戴裝置裝置中之感測器來搜集,而在其他實施中,非頭戴裝置計算裝置中之一或多者可包括可追蹤環境或位置資料之感測器組件。Several implementations are discussed in more detail below with reference to the accompanying drawings. 1 is a block diagram illustrating an overview of a device upon which some implementations of the disclosed technology may operate. Devices may include hardware components of computing system 100 that can create, manage, and provide interaction patterns for artificial reality collaborative work environments. In various implementations, computing system 100 may include a single computing device 103 or multiple computing devices (eg, computing device 101 , computing device 102 , and computing device 103 ) that communicate via wired or wireless channels to distribute processing and share input data. In some implementations, computing system 100 may include a stand-alone headset capable of providing a user with a computer-generated or augmented experience without the need for external processing or sensors. In other implementations, computing system 100 may include multiple computing devices, such as headsets, and core processing components (such as consoles, mobile devices, or server systems), where some processing operations are performed on the headset devices and other processing operations are performed on the headset devices. Operations are offloaded to core processing components. An example headset is described below with respect to Figures 2A and 2B. In some implementations, location and environmental data may be collected solely by sensors incorporated into the headset device, while in other implementations, one or more of the non-headset computing devices may include a trackable environment. or sensor components for location data.

計算系統100可包括一或多個處理器110(例如,中央處理單元(central processing units;CPU)、圖形處理單元(graphical processing units;GPU)、全像處理單元(holographic processing units;HPU)等)。處理器110可為單一處理單元或裝置中之多個處理單元或跨越多個裝置分佈(例如,跨越計算裝置101至103中之兩者或更多者分佈)。Computing system 100 may include one or more processors 110 (eg, central processing units (CPU), graphical processing units (GPU), holographic processing units (HPU), etc.) . Processor 110 may be a single processing unit or multiple processing units in a device or distributed across multiple devices (eg, distributed across two or more of computing devices 101 - 103 ).

計算系統100可包括將輸入提供至處理器110、通知其動作之一或多個輸入裝置120。動作可由硬體控制器介導,該硬體控制器解譯從輸入裝置接收之信號且使用通信協定將資訊傳達至處理器110。各輸入裝置120可包括例如滑鼠、鍵盤、觸控螢幕、觸控板、可穿戴式輸入裝置(例如觸覺手套、手鐲、戒指、耳環、項鏈、腕錶等)、攝影機(或其他基於光之輸入裝置,例如紅外線感測器)、麥克風或其他使用者輸入裝置。Computing system 100 may include one or more input devices 120 that provide input to processor 110 and inform its actions. Actions may be mediated by a hardware controller that interprets signals received from the input devices and communicates the information to processor 110 using a communications protocol. Each input device 120 may include, for example, a mouse, keyboard, touch screen, trackpad, wearable input device (such as tactile gloves, bracelets, rings, earrings, necklaces, watches, etc.), cameras (or other light-based input devices). input device (such as an infrared sensor), microphone or other user input device.

處理器110可例如藉由使用內部或外部匯流排(諸如,PCI匯流排、SCSI匯流排或無線連接)耦接至其他硬體裝置。處理器110可與用於裝置(諸如,用於顯示器130)之硬體控制器通信。顯示器130可用於顯示文字及圖形。在一些實施中,諸如當輸入裝置為觸控螢幕或配備有眼睛方向監測系統時,顯示器130包括作為顯示器之部分的輸入裝置。在一些實施中,顯示器與輸入裝置分離。顯示裝置之範例為LCD顯示螢幕、LED顯示螢幕,投影、全像或擴增實境顯示器(諸如,抬頭顯示裝置或頭戴式裝置)等。其他I/O裝置140亦可耦接至處理器,諸如網路晶片或卡、視訊晶片或卡、音訊晶片或卡、USB、火線或其他外部裝置、攝影機、列印機、揚聲器、CD-ROM驅動機、DVD驅動機、磁碟機等。Processor 110 may be coupled to other hardware devices, such as by using internal or external buses, such as PCI buses, SCSI buses, or wireless connections. Processor 110 may communicate with a hardware controller for a device, such as for display 130 . The display 130 can be used to display text and graphics. In some implementations, display 130 includes the input device as part of the display, such as when the input device is a touch screen or is equipped with an eye direction monitoring system. In some implementations, the display is separate from the input device. Examples of display devices are LCD display screens, LED display screens, projection, holographic or augmented reality displays (such as heads-up displays or head-mounted devices), etc. Other I/O devices 140 may also be coupled to the processor, such as network chips or cards, video chips or cards, audio chips or cards, USB, FireWire or other external devices, cameras, printers, speakers, CD-ROMs Drives, DVD drives, disk drives, etc.

計算系統100可包括能夠與其他本端計算裝置或網路節點無線或有線地通信之通信裝置。通訊裝置可使用例如TCP/IP協定經由網路與另一裝置或伺服器通信。計算系統100可利用通信裝置以跨越多個網路裝置分佈操作。Computing system 100 may include communication devices capable of communicating wirelessly or wiredly with other local computing devices or network nodes. The communication device may communicate with another device or server over the network using, for example, TCP/IP protocols. Computing system 100 may utilize communication devices to distribute operations across multiple network devices.

處理器110可存取記憶體150,該記憶體150可包含於計算系統100之計算裝置中之一者上或可跨越計算系統100之多個計算裝置中之一者或其他外部裝置分佈。記憶體包括用於揮發性或非揮發性儲存裝置之一或多個硬體裝置,且可包括唯讀記憶體及可寫記憶體兩者。舉例而言,記憶體可包括隨機存取記憶體(random access memory;RAM)、各種快取記憶體、CPU暫存器、唯讀記憶體(read-only memory;ROM)及可寫非揮發性記憶體(諸如,快閃記憶體、硬碟機、軟碟、CD、DVD、磁性儲存裝置、磁帶機等)中之一或多者。記憶體並非從基礎硬體脫離之傳播信號;記憶體因此為非暫時性的。記憶體150可包括儲存程式及軟體之程式記憶體160,諸如作業系統162、XR工作系統164及其他應用程式166。記憶體150亦可包括資料記憶體170,該資料記憶體170可包括提供至程式記憶體160或計算系統100之任何元件的資訊。Processor 110 may access memory 150 , which may be included on one of the computing devices of computing system 100 or may be distributed across one of a plurality of computing devices of computing system 100 or other external devices. Memory includes one or more hardware devices for volatile or non-volatile storage, and may include both read-only memory and writable memory. For example, memory may include random access memory (RAM), various cache memories, CPU registers, read-only memory (ROM), and writable non-volatile memory. One or more of memories (such as flash memory, hard drives, floppy disks, CDs, DVDs, magnetic storage devices, tape drives, etc.). Memory is not a propagation signal separate from the underlying hardware; memory is therefore non-transitory. Memory 150 may include program memory 160 that stores programs and software, such as operating system 162, XR operating system 164, and other applications 166. Memory 150 may also include data memory 170 , which may include information provided to program memory 160 or any component of computing system 100 .

一些實施可與大量其他計算系統環境或組態一起操作。可適合與技術一起使用之計算系統、環境及/或組態之範例包括但不限於XR頭戴裝置、個人電腦、伺服器電腦、手持型裝置或膝上型電腦裝置、蜂巢式電話、可穿戴電子器件、遊戲控制台、平板電腦裝置、多處理器系統、基於微處理器之系統、機上盒、可程式化消費型電子器件、網路PC、微型電腦、大型主機電腦、包括以上系統或裝置中之任一者的分佈式計算環境或其類似者。Some implementations are operable with a variety of other computing system environments or configurations. Examples of computing systems, environments, and/or configurations that may be suitable for use with the technology include, but are not limited to, XR headsets, personal computers, server computers, handheld or laptop devices, cellular phones, wearable Electronic devices, game consoles, tablet devices, multi-processor systems, microprocessor-based systems, set-top boxes, programmable consumer electronics, network PCs, microcomputers, mainframe computers, including the above systems or A distributed computing environment of any of the devices or the like.

圖2A為根據一或多個具體實例之虛擬實境頭戴式顯示器(HMD)200的線圖。HMD 200包括前部剛體205及帶210。前部剛體205包括電子顯示器245之一或多個電子顯示元件、慣性運動單元(inertial motion unit;IMU)215、一或多個位置感測器220、定位器225及一或多個計算單元230。位置感測器220、IMU 215及計算單元230可在HMD 200內部,且對於使用者可能不可見。在各種實施中,IMU 215、位置感測器220及定位器225可在三自由度(three degrees of freedom;3DoF)或六自由度(6DoF)中追蹤HMD 200在真實世界及在虛擬環境中之移動及位置。舉例而言,定位器225可發射在HMD 200周圍之真實物件上產生光點的紅外光束。作為另一範例,IMU 215可包括例如一或多個加速度計、陀螺儀、磁力計、其他非基於攝影機之位置、力或位向感測器,或其組合。與HMD 200整合之一或多個攝影機(圖中未示)可偵測光點。HMD 200中之計算單元230可使用偵測到之光點外推HMD 200之位置及移動,以及識別HMD 200周圍之真實物件的形狀及位置。FIG. 2A is a line diagram of a virtual reality head-mounted display (HMD) 200 according to one or more embodiments. The HMD 200 includes a front rigid body 205 and a belt 210 . The front rigid body 205 includes one or more electronic display elements of the electronic display 245 , an inertial motion unit (IMU) 215 , one or more position sensors 220 , a positioner 225 and one or more computing units 230 . The position sensor 220, IMU 215, and computing unit 230 may be internal to the HMD 200 and may not be visible to the user. In various implementations, the IMU 215, the position sensor 220, and the positioner 225 can track the HMD 200 in the real world and in the virtual environment in three degrees of freedom (3DoF) or six degrees of freedom (6DoF). Movement and location. For example, the locator 225 may emit an infrared beam that creates light spots on real objects around the HMD 200 . As another example, IMU 215 may include, for example, one or more accelerometers, gyroscopes, magnetometers, other non-camera based position, force or orientation sensors, or combinations thereof. One or more cameras (not shown in the figure) integrated with the HMD 200 can detect light points. The computing unit 230 in the HMD 200 can use the detected light points to extrapolate the position and movement of the HMD 200, and identify the shapes and positions of real objects around the HMD 200.

電子顯示器245可與前部剛體205整合,且可如由計算單元230指定將影像光提供至使用者。在各種具體實例中,電子顯示器245可為單一電子顯示器或多個電子顯示器(例如,用於各使用者眼睛的顯示器)。電子顯示器245之範例包括:液晶顯示器(liquid crystal display;LCD)、有機發光二極體(organic light-emitting diode;OLED)顯示器、主動矩陣有機發光二極體顯示器(active-matrix organic light-emitting diode;AMOLED)、包括一或多個量子點發光二極體(quantum dot light-emitting diode;QOLED)子像素之顯示器、投影機單元(例如,微型LED、雷射等)、某一其他顯示器或其某一組合。An electronic display 245 may be integrated with the front rigid body 205 and may provide image light to the user as specified by the computing unit 230 . In various embodiments, electronic display 245 may be a single electronic display or multiple electronic displays (eg, one for each user's eye). Examples of the electronic display 245 include: liquid crystal display (LCD), organic light-emitting diode (OLED) display, active-matrix organic light-emitting diode display (active-matrix organic light-emitting diode) ; AMOLED), a display including one or more quantum dot light-emitting diodes (QOLED) sub-pixels, a projector unit (e.g., micro-LED, laser, etc.), some other display or other a certain combination.

在一些實施中,HMD 200可耦接至核心處理組件,諸如個人電腦(personal computer;PC)(圖中未示)及/或一或多個外部感測器(圖中未示)。外部感測器可監測HMD 200(例如,經由從HMD 200發射之光),與來自IMU 215及位置感測器220之輸出組合,PC可使用該HMD 200以判定HMD 200之位置及移動。In some implementations, HMD 200 may be coupled to a core processing component, such as a personal computer (PC) (not shown) and/or one or more external sensors (not shown). External sensors may monitor HMD 200 (eg, via light emitted from HMD 200), and in combination with the output from IMU 215 and position sensor 220, the PC may use HMD 200 to determine the position and movement of HMD 200.

圖2B為包括混合實境HMD 252及核心處理組件254之混合實境HMD系統250之線圖。混合實境HMD 252及核心處理組件254可經由如由鏈路256所指示之無線連接(例如,60 GHz鏈路)通信。在其他實施中,混合實境系統250僅包括頭戴裝置,而無外部計算裝置,或包括混合實境HMD 252與核心處理組件254之間的其他有線或無線連接。混合實境HMD 252包括透通顯示器258及框架260。框架260可容納各種電子組件(圖中未示),諸如光投影機(例如,雷射、LED等)、攝影機、眼睛追蹤感測器、MEMS組件、網路連接組件等。FIG. 2B is a line diagram of a mixed reality HMD system 250 including a mixed reality HMD 252 and a core processing component 254. Mixed reality HMD 252 and core processing component 254 may communicate via a wireless connection (eg, a 60 GHz link) as indicated by link 256 . In other implementations, the mixed reality system 250 includes only the headset, without external computing devices, or other wired or wireless connections between the mixed reality HMD 252 and the core processing component 254 . The mixed reality HMD 252 includes a transparent display 258 and a frame 260 . The frame 260 can accommodate various electronic components (not shown in the figure), such as light projectors (eg, lasers, LEDs, etc.), cameras, eye tracking sensors, MEMS components, network connection components, etc.

投影機可例如經由光學元件耦接至透通顯示器258以向使用者顯示媒體。該些光學元件可包括一或多個波導總成、反射器、透鏡、鏡面、準直器、光柵等,以用於將光從投影機導引至使用者之眼睛。可經由鏈路256將影像資料從核心處理組件254傳輸至HMD 252。HMD 252中之控制器可將影像資料轉換成來自投影機之光脈衝,可經由光學元件將該些光脈衝作為輸出光傳輸至使用者之眼睛。輸出光可與穿過顯示器258之光混合,從而允許輸出光呈現如同其存在於真實世界中一般呈現之虛擬物件。A projector may be coupled to the transparent display 258, such as via optical elements, to display media to the user. These optical components may include one or more waveguide assemblies, reflectors, lenses, mirrors, collimators, gratings, etc., for directing light from the projector to the user's eyes. Image data may be transmitted from core processing component 254 to HMD 252 via link 256 . The controller in the HMD 252 can convert image data into light pulses from the projector, and these light pulses can be transmitted to the user's eyes as output light through optical elements. The output light may be mixed with the light passing through the display 258, allowing the output light to render the virtual object as if it existed in the real world.

類似於HMD 200,HMD系統250亦可包括運動及位置追蹤單元、攝影機、光源等,其允許HMD系統250例如以3DoF或6DoF追蹤自身、追蹤使用者之部分(例如手、腳、頭部或其他身體部位)、映射虛擬物件,以在HMD 252移動時看起來靜止,且使虛擬物件對手勢及其他真實世界物件作出反應。Similar to the HMD 200, the HMD system 250 may also include a motion and position tracking unit, a camera, a light source, etc., which allows the HMD system 250 to track itself, track the user's parts (such as hands, feet, head, or other parts), for example, in 3DoF or 6DoF. body parts), map virtual objects to appear stationary when the HMD 252 moves, and enable virtual objects to react to gestures and other real-world objects.

無障礙控制器包含具有複數個輸入埠之無障礙控制器集線器,該複數個輸入埠支援已連接外部控制器裝置至VR系統以為使用者提供六自由度中之運動輸入,該使用者包括但不限於具有以下之人:肌肉控制(非自主移動、缺乏協調、麻痺)之無力及限制性(溫度及電燙)、感覺限制、關節病症(諸如關節炎)、阻礙移動之疼痛、缺失肢體及情形限制。此等外部控制器之使用准許選擇克服使用者之特定限制性之一或多個控制器裝置。無障礙控制器集線器接收由外部控制器產生之輸入資料,以用於轉換成由標準控制器裝置產生之輸入資料。在VR系統上運行之支援從控制器集線器接收輸入資料之應用程式,將允許使用者附接由控制器集線器支援之所有外部裝置,而不需要應用程式開發者在各應用程式內整合大量外部控制器。The accessibility controller includes an accessibility controller hub with a plurality of input ports that support the connection of external controller devices to the VR system to provide motion input in six degrees of freedom for users, including but not Restricted to persons with: weakness and limitations (temperature and electric heat) of muscle control (involuntary movement, lack of coordination, paralysis), sensory limitations, joint disorders (such as arthritis), pain that impedes movement, missing limbs, and situational limitations . The use of such external controllers allows the selection of one or more controller devices to overcome the user's specific limitations. The Accessibility Controller Hub receives input data generated by an external controller for conversion into input data generated by a standard controller device. Applications running on VR systems that support receiving input from the controller hub will allow users to attach all external devices supported by the controller hub without requiring application developers to integrate numerous external controls within each application. device.

圖3A及圖3B說明根據一或多個實施之範例性計算系統100之手持式控制器300的等角視圖。在一些具體實例中,控制器300包括第一使用者輸入鍵320A,且可包括一或多個額外使用者輸入鍵320B、320C。使用者輸入鍵為按鈕、旋鈕、開關、搖桿(thumbstick)、定向襯墊、或使用者以一些其他方法按壓或操縱以在虛擬實境系統中(例如,在遊戲期間)進行特定動作的任何其他此類部件。在一些具體實例中,第一使用者輸入鍵320A可選自由以下組成之群:搖桿、按鈕、觸發器及定向襯墊。在一些具體實例中,第一使用者輸入鍵320A可為選自由以下組成之群的按鈕:A或X按鈕、B或Y按鈕、開始按鈕、後退按鈕、向前按鈕及首頁按鈕。A或B按鈕可對應於在遊戲系統中呈現給使用者之至少兩個選項之間的選擇動作。X或Y按鈕可對應於藉由使用者規定影像個體將如何在遊戲中行進而產生的負面或肯定決策。X可對應於「否」或「結束」之動作,且Y可對應於「是」或「行進/繼續」。開始按鈕可為由使用者啟動以開始虛擬實境(例如,遊戲)體驗之按鈕,且後推及向前按鈕可指示使用者要求影像個體移動之方向。首頁按鈕可為啟動以將遊戲體驗返回至主選單或從起始開始遊戲或活動的按鈕。3A and 3B illustrate isometric views of handheld controller 300 of example computing system 100 in accordance with one or more implementations. In some embodiments, controller 300 includes a first user input key 320A, and may include one or more additional user input keys 320B, 320C. A user input key is a button, knob, switch, thumbstick, directional pad, or anything that a user presses or manipulates in some other way to perform a specific action in a virtual reality system (e.g., during a game) Other such parts. In some embodiments, first user input key 320A may be selected from the group consisting of: a rocker, a button, a trigger, and a directional pad. In some specific examples, the first user input key 320A may be a button selected from the group consisting of: an A or X button, a B or Y button, a start button, a back button, a forward button, and a home button. The A or B button may correspond to a selection action between at least two options presented to the user in the gaming system. The X or Y buttons may correspond to negative or positive decisions resulting from the user specifying how the avatar will progress through the game. X can correspond to the action of "no" or "end", and Y can correspond to "yes" or "go/continue". The start button may be a button activated by the user to begin a virtual reality (eg, game) experience, and the push-back and forward buttons may indicate the direction in which the user requests the image entity to move. The home button may be a button activated to return the gaming experience to the main menu or to start the game or activity from the beginning.

在一些具體實例中,手持式控制器300進一步包含包括第一使用者輸入鍵320A之使用者輸入表面310。使用者輸入表面310包括複數個使用者輸入鍵320A、320B及320C。替代地,使用者輸入表面包括單一使用者輸入鍵。在圖3A及圖3B之範例中,使用者輸入鍵包括搖桿320A及按鈕320B及320C。因此,使用者輸入表面310為控制器300上之表面,其中使用者藉由啟動對應於使用者要求在人工實境系統100(例如,計算系統100)中進行的動作之一或多個使用者輸入鍵(例如,藉由按壓按鈕或推動旋鈕)來傳遞輸入。In some embodiments, handheld controller 300 further includes user input surface 310 including first user input keys 320A. The user input surface 310 includes a plurality of user input keys 320A, 320B, and 320C. Alternatively, the user input surface includes a single user input key. In the examples of FIGS. 3A and 3B , the user input keys include a joystick 320A and buttons 320B and 320C. Thus, user input surface 310 is a surface on controller 300 in which a user initiates one or more actions corresponding to the user's request to perform in artificial reality system 100 (eg, computing system 100 ). Input keys (for example, by pressing a button or pushing a knob) deliver input.

使用者輸入鍵320A、320B及320C中之各者經組態以與計算系統100通信,以便將使用者對對應使用者輸入鍵之操作轉換成顯示於虛擬實境系統100之HMD上之影像個體的對應動作。Each of user input keys 320A, 320B, and 320C is configured to communicate with computing system 100 to convert a user's operation of the corresponding user input key into an image entity displayed on the HMD of virtual reality system 100 corresponding action.

在一些具體實例中,使用者輸入表面310包括複數個使用者輸入鍵,該複數個使用者輸入鍵包括第一使用者輸入鍵320A,且複數個使用者輸入鍵之各別使用者輸入鍵320B、320C選自由以下組成之群:搖桿、按鈕、觸發器及定向襯墊。In some embodiments, user input surface 310 includes a plurality of user input keys, including first user input key 320A, and respective user input keys 320B of the plurality of user input keys. , 320C is selected from the group consisting of: joysticks, buttons, triggers and directional pads.

在一些具體實例中,首頁按鈕進一步遠離另一使用者輸入鍵定位。此組態將允許最多使用的使用者輸入鍵(例如,用以指示影像個體之移動方向的定向襯墊,例如上下左右)更接近手指及拇指附近置放。此組態提供以下優點:使用者應需要較少範圍按壓更頻繁使用的使用者輸入鍵,因此減輕與過度伸展及過度拉伸手指相關聯的人體工學病痛之可能。In some embodiments, the home button is positioned further away from another user input key. This configuration will allow the most commonly used user input keys (eg, directional pads to indicate the direction of movement of the image entity, such as up, down, left, and right) to be placed closer to the fingers and thumb. This configuration provides the advantage that the user should require less range to press the more frequently used user input keys, thus mitigating the potential for ergonomic pain associated with overreaching and overstretching the fingers.

在一些具體實例中,使用者輸入表面310之至少一部分為觸敏式表面,該觸敏式表面分割成複數個區段。每一區段對應於複數個使用者輸入鍵之各別使用者輸入鍵。在此組態中,至少一個觸摸感測器定位於使用者輸入表面310之底部表面上,以偵測對應區段上之觸摸。當使用者對鍵之觸摸由感測器偵測到時,觸摸與對應使用者輸入鍵相關聯之動作轉換成虛擬實境系統中之個體影像的動作。In some embodiments, at least a portion of the user input surface 310 is a touch-sensitive surface that is divided into a plurality of segments. Each section corresponds to a respective user input key of a plurality of user input keys. In this configuration, at least one touch sensor is positioned on the bottom surface of user input surface 310 to detect touches on corresponding segments. When the user's touch on the key is detected by the sensor, the action associated with the touch and the corresponding user input key is converted into an action of the individual image in the virtual reality system.

在一些具體實例中,夾具330耦接至使用者輸入表面310。夾具330為控制器300之一突起結構,使用者在一個手中抓握該突起結構以固持控制器300。此組態允許使用者能夠在釋放拇指及在一些具體實例中另一手指(例如,中間手指)時,在手掌與手指(例如,三個或更少手指)之間抓握控制器300,以用於操作使用者輸入鍵320A、320B及320C。在一些具體實例中,中間手指經釋放以操作至少部分安裝於夾具330上之觸發器390,如下文將描述。In some embodiments, clamp 330 is coupled to user input surface 310 . The clamp 330 is a protruding structure of the controller 300, and the user grasps the protruding structure in one hand to hold the controller 300. This configuration allows the user to grasp the controller 300 between the palm and fingers (eg, three or fewer fingers) while releasing the thumb and, in some embodiments, another finger (eg, the middle finger) to Used to operate user input keys 320A, 320B and 320C. In some embodiments, the middle finger is released to operate trigger 390 that is at least partially mounted on clamp 330, as will be described below.

在一些具體實例中,夾具330為控制器300之一分離部分,以可移除方式耦接至使用者輸入表面310及/或籠狀物340。夾具330及使用者輸入表面可藉由適合於其建構材料之方法耦接。舉例而言,夾具及使用者輸入表面310可由硬塑膠形成,且可藉由超音波焊接彼此耦接。替代地,夾具330及使用者輸入表面310可藉由諸如螺釘或螺栓之緊固機構彼此耦接,或可以螺紋方式彼此嚙合。In some embodiments, clamp 330 is a separate portion of controller 300 that is removably coupled to user input surface 310 and/or cage 340 . Clamp 330 and the user input surface may be coupled by methods appropriate to the materials of their construction. For example, the clamp and user input surface 310 may be formed from hard plastic and may be coupled to each other by ultrasonic welding. Alternatively, clamp 330 and user input surface 310 may be coupled to each other by a fastening mechanism such as screws or bolts, or may be threadably engaged with each other.

在一些具體實例中,夾具330作為一個部件(例如,其可由模製形成)而與使用者輸入表面310及/或籠狀物340一體地形成。In some embodiments, clamp 330 is integrally formed with user input surface 310 and/or cage 340 as one component (eg, which may be formed by molding).

在一些具體實例中,夾具330相對於使用者輸入表面310(例如,其中通過使用者輸入表面或其部分之平面)以預定角度傾斜,以便在將夾具固持於拇指中與使用拇指來操作至少一個使用者輸入鍵之間,為使用者提供舒適(例如,最佳)人體工學平衡。In some embodiments, the clamp 330 is tilted at a predetermined angle relative to the user input surface 310 (eg, a plane passing through the user input surface or a portion thereof) to facilitate at least one of retaining the clamp in the thumb and operating the thumb with the thumb. Provide a comfortable (i.e., optimal) ergonomic balance for the user between user input keys.

在一些具體實例中,籠狀物340耦接至使用者輸入表面310。籠狀物340(其亦可稱為追蹤籠狀物)具有外部表面145,其上定位有複數個照明源350。In some embodiments, cage 340 is coupled to user input surface 310 . Cage 340 (which may also be referred to as a tracking cage) has an exterior surface 145 on which a plurality of illumination sources 350 are positioned.

在圖3A及圖3B之範例中,使用者輸入表面310相對於籠狀物340面朝外。替代地,使用者輸入表面310可相對於籠狀物340面朝內。舉例而言,在一些具體實例中,使用者輸入表面310形成籠狀物340之內部前表面,或與籠狀物340之內部表面相接。In the example of FIGS. 3A and 3B , the user input surface 310 faces outward relative to the cage 340 . Alternatively, user input surface 310 may face inward relative to cage 340. For example, in some embodiments, user input surface 310 forms an interior front surface of cage 340 or is in contact with an interior surface of cage 340 .

在一些具體實例中,夾具330及/或籠狀物340可由包覆模製橡膠材料形成(例如,以便提供表面,該表面提供與使用者之手掌足夠摩擦因此改良夾具)。在一些具體實例中,夾具330及/或籠狀物340可由硬塑膠形成,包括但不限於提供增加之結構剛性的高密度聚乙烯。另外,可使用任何其他適合的材料。In some embodiments, clamp 330 and/or cage 340 may be formed from an overmolded rubber material (eg, to provide a surface that provides sufficient friction with the user's palm and thus improves the clamp). In some embodiments, clamp 330 and/or cage 340 may be formed from hard plastic, including but not limited to high density polyethylene, which provides increased structural rigidity. Additionally, any other suitable material may be used.

在一些具體實例中,籠狀物340可以可拆卸方式耦接至使用者輸入表面310及夾具330中之至少一者。籠狀物340可經由突起以可滑動方式耦接至使用者輸入表面310,該突起橫跨籠狀物340之各末端部分的寬度以可滑動方式與定位於使用者輸入表面310之外圓周上之對應凹槽嚙合。籠狀物340可經由諸如螺栓、螺釘或類似者之緊固機構耦接至夾具330。籠狀物340至夾具330或使用者輸入表面310之可拆卸組態,得到視需要分離前述組件以用於校準的優點。組件之可拆卸耦接亦允許部件之單獨及潛在更便宜製造製程。此外,籠狀物340至使用者輸入表面310及夾具330中之至少一者之可拆卸耦接,允許籠狀物340在控制器300掉落後分離,因此減小在損壞後替換整個單元之需要,但代替地集中於固定/替換單獨損壞部件。In some embodiments, cage 340 may be removably coupled to at least one of user input surface 310 and clamp 330 . Cage 340 may be slidably coupled to user input surface 310 via protrusions slidably across the width of each end portion of cage 340 and positioned on the outer circumference of user input surface 310 The corresponding groove meshes. Cage 340 may be coupled to clamp 330 via a fastening mechanism such as bolts, screws, or the like. The removable configuration of cage 340 to clamp 330 or user input surface 310 provides the advantage of detaching the aforementioned components for calibration as needed. Removable coupling of components also allows for separate and potentially cheaper manufacturing processes of the components. Additionally, removable coupling of cage 340 to at least one of user input surface 310 and clamp 330 allows cage 340 to detach after controller 300 is dropped, thereby reducing the need to replace the entire unit after damage. Needed, but instead focused on fixing/replacing individually damaged components.

在一些具體實例中,如圖3A及圖3B中所說明,控制器300可進一步包含將籠狀物340耦接至使用者輸入表面310之結構腹板395。較大結構腹板395為籠狀物340與使用者輸入表面310之間的耦接進一步提供結構剛性以在以減輕在使用者掉落控制器300後此等組件之損壞及分離。In some embodiments, as illustrated in FIGS. 3A and 3B , controller 300 may further include structural webs 395 coupling cage 340 to user input surface 310 . The larger structural web 395 further provides structural rigidity to the coupling between the cage 340 and the user input surface 310 to mitigate damage and separation of these components after a user drops the controller 300.

在一些具體實例中,觸發器390至少部分安裝於結構腹板395上。亦即,觸發器390可安裝於結構腹板395與夾具330之間。此組態得到以下優點:當夾具330固持於中立位置中時,觸發器鄰近於使用者之手指(例如,中間手指)之位置定位。在一些具體實例中,觸發器可由中間手指推動及拉動,因此在操縱觸發器時,提供增加之控制以達成所要動作。觸發器390為使用者輸入鍵之範例。In some embodiments, trigger 390 is at least partially mounted on structural web 395 . That is, trigger 390 may be mounted between structural web 395 and clamp 330 . This configuration results in the advantage that when the clamp 330 is held in the neutral position, the trigger is positioned adjacent to the position of the user's finger (eg, the middle finger). In some embodiments, the trigger can be pushed and pulled by the middle finger, thereby providing increased control when manipulating the trigger to achieve the desired action. Trigger 390 is an example of a user input key.

一些實施可包括攝影機,諸如任何類型或品牌之市售攝影機產品,諸如網路攝影機、有IR能力之攝影機及/或USB攝影機等。在一些具體實例中,攝影機可電連接至電源,該電源可為或可不為將電力提供至HMD的相同電源。攝影機及HMD可為無線的;因此,電源可為一或多個電池。Some implementations may include cameras, such as any type or brand of commercially available camera products, such as web cameras, IR capable cameras, and/or USB cameras, etc. In some embodiments, the camera may be electrically connected to a power source, which may or may not be the same power source that provides power to the HMD. The camera and HMD can be wireless; therefore, the power source can be one or more batteries.

在一些具體實例中,照明源350定位成允許攝影機偵測控制器300之至少六自由度。六自由度為在空間之x、y及z座標內控制器300之位置及控制器300之包括控制器300之偏航、俯仰及滾動之位向。由攝影機偵測到之六自由度可用以判定控制器300之使用者之移動,且在虛擬實境中模型化此等移動。In some embodiments, illumination source 350 is positioned to allow the camera to detect at least six degrees of freedom of controller 300 . The six degrees of freedom are the position of the controller 300 in the x, y, and z coordinates of space and the orientation of the controller 300 including the yaw, pitch, and roll of the controller 300. The six degrees of freedom detected by the camera can be used to determine the movement of the user of controller 300 and model these movements in virtual reality.

在一些具體實例中,照明源350為發光二極體(light-emitting diodes;LED)。在一些具體實例中,照明源350為紅外(infrared;IR)LED。攝影機可經組態以偵測由控制器300上之IR LED發射之IR光,且記錄從所發射光感測到之信號,以判定控制器300的位置及位向。In some specific examples, the illumination source 350 is a light-emitting diode (LED). In some specific examples, the illumination source 350 is an infrared (IR) LED. The camera can be configured to detect IR light emitted by the IR LED on the controller 300 and record the signal sensed from the emitted light to determine the position and orientation of the controller 300 .

在一些具體實例中,照明源350可以任何合適圖案、次序或陣列定位於控制器300之外向表面345上。在一些具體實例中,外向表面345為耦接至夾具330之籠狀物340的外部表面。照明源350可藉由任何適當方法固定地或以可拆卸方式定位於籠狀物340上,且因此耦接至籠狀物340。舉例而言,照明源350可安裝於籠狀物340之外部表面345上或嵌入於籠狀物340之外部表面345內。替代地,照明源350可在環繞籠狀物340,且有效地形成籠狀物340之外部表面345的套管上。儘管照明源350描述為定位於籠狀物340之外部表面345上,但其可另外或替代地耦接至籠狀物340上之任何其他表面及/或控制器300的其餘部分。In some embodiments, illumination sources 350 may be positioned on the outward facing surface 345 of the controller 300 in any suitable pattern, order, or array. In some embodiments, outward surface 345 is the exterior surface of cage 340 coupled to clamp 330 . Illumination source 350 may be fixedly or removably positioned on cage 340 and thus coupled to cage 340 by any suitable method. For example, the illumination source 350 may be mounted on or embedded within the exterior surface 345 of the cage 340 . Alternatively, the illumination source 350 may be on a sleeve surrounding the cage 340 and effectively forming the outer surface 345 of the cage 340 . Although the illumination source 350 is described as being positioned on the exterior surface 345 of the cage 340 , it may additionally or alternatively be coupled to any other surface on the cage 340 and/or the remainder of the controller 300 .

照明源350可電連接至電源,該電源可為或可不為將電力提供至控制器300之相同電源。控制器300可為無線的;因此,電源可為一或多個電池。照明源350可容納於包括電流限制電阻器之漫射情況下,以保持從電源至照明源350之電流低於照明源350最大電流等級,以便確保照明源350之最大使用期限。可在施加合適電壓時啟動照明源350。藉助於定位於控制器300上之可由攝影機偵測到之區域中之照明源350,由攝影機偵測到之照明源350產生之光的運動用作控制器300之位置及運動的指示。以此方式,控制器之運動由攝影機追蹤,從而允許對應虛擬實境手部運動顯示於HMD上。舉例而言,當使用者在玩拳擊遊戲進行出拳運動時,照明源350之移動可以對應於出拳之方式偵測,且用以針對顯示於計算系統100中之HMD上的影像個體模型化使用者之運動。以此方式,本發明提供藉由將手部運動之額外元素添加至影像個體來增強使用者之虛擬實境體驗的優點。Illumination source 350 may be electrically connected to a power source, which may or may not be the same power source that provides power to controller 300 . Controller 300 may be wireless; therefore, the power source may be one or more batteries. The illumination source 350 may be housed in a diffuse case that includes a current limiting resistor to keep the current from the power supply to the illumination source 350 below the illumination source 350 maximum current level in order to ensure the maximum life of the illumination source 350. Illumination source 350 can be activated when the appropriate voltage is applied. With the illumination source 350 positioned on the controller 300 in an area detectable by the camera, the movement of the light generated by the illumination source 350 detected by the camera is used as an indication of the position and movement of the controller 300 . In this way, the movement of the controller is tracked by the camera, allowing corresponding VR hand movements to be displayed on the HMD. For example, when the user punches while playing a boxing game, the movement of the illumination source 350 can be detected corresponding to the punching method and used to individually model the image displayed on the HMD in the computing system 100 Movement of the user. In this way, the present invention provides the advantage of enhancing the user's virtual reality experience by adding additional elements of hand movement to the image entities.

圖4A說明根據一或多個實施之範例無障礙控制器。無障礙控制器之此具體實例包含接受六自由度中之移動之旋轉旋鈕401,該移動准許使用者在與VR系統互動時模仿使用者之頭部的3D運動。在一些實施中,無障礙控制器可經組態以控制HMD(例如,HMD 200及/或HMD 252)之虛擬位置及/或位向。在一些實施中,無障礙控制器可經組態以控制一或多個其他控制器(例如,標準及/或無障礙控制器)之虛擬位置及/或位向。旋轉旋鈕能夠證明表示六自由度中之各者之輸入,該些六自由度包含向前側向運動411、垂直於向前側向運動之正交側向運動412、豎直按下或向下運動413、向前旋轉運動414、正交旋轉運動415及水平旋轉運動416。Figure 4A illustrates an example accessibility controller in accordance with one or more implementations. This specific example of an accessibility controller includes a rotating knob 401 that accepts movement in six degrees of freedom, which movement allows the user to mimic the 3D movement of the user's head when interacting with the VR system. In some implementations, the accessibility controller may be configured to control the virtual position and/or orientation of an HMD (eg, HMD 200 and/or HMD 252). In some implementations, an accessibility controller may be configured to control the virtual position and/or orientation of one or more other controllers (eg, standard and/or accessibility controllers). The rotating knob can demonstrate inputs representing each of the six degrees of freedom including forward lateral motion 411 , orthogonal lateral motion perpendicular to the forward lateral motion 412 , vertical press or downward motion 413 , forward rotation movement 414, orthogonal rotation movement 415 and horizontal rotation movement 416.

圖4B說明根據一或多個實施之圖4A之無障礙控制器的範例運動控制操作。旋鈕401可以獨立於其他運動之向前側向運動411、垂直於向前側向運動之正交側向運動412、豎直按下或向下運動413、向前旋轉運動414、正交旋轉運動415及水平旋轉運動416中之任一者移動。Figure 4B illustrates example motion control operations of the accessibility controller of Figure 4A, according to one or more implementations. The knob 401 can have forward lateral movement 411 independent of other movements, orthogonal lateral movement 412 perpendicular to the forward lateral movement, vertical pressing or downward movement 413, forward rotational movement 414, orthogonal rotational movement 415, and Any of the horizontal rotational motions 416 move.

向前側向運動411是由旋鈕401之豎直軸線沿著第一軸線以側向運動移動所引起。在此特定運動中,豎直軸線保持在其當前位向上,同時整個旋鈕401沿著向前及向後位向軸線移動。在較佳具體實例中,向前側向運動411對應於如參考圖8所描述之X軸。The forward lateral movement 411 is caused by the vertical axis of the knob 401 moving in a lateral movement along the first axis. In this particular movement, the vertical axis remains in its current position while the entire knob 401 moves along the forward and rearward axes. In the preferred embodiment, forward lateral movement 411 corresponds to the X-axis as described with reference to FIG. 8 .

垂直於向前側向運動之正交側向運動412是由旋鈕401之豎直軸線沿著第二軸線以側向運動移動所引起。第二軸線垂直於第一軸線。在此特定運動中,豎直軸線保持在其當前位向上,同時整個旋鈕401沿著向前及向後位向軸線移動。在較佳具體實例中,向前側向運動411對應於Z軸。Orthogonal lateral motion 412 perpendicular to the forward lateral motion is caused by the vertical axis of knob 401 moving in a lateral motion along the second axis. The second axis is perpendicular to the first axis. In this particular movement, the vertical axis remains in its current position while the entire knob 401 moves along the forward and rearward axes. In the preferred embodiment, forward lateral movement 411 corresponds to the Z-axis.

豎直按下或向下運動413是由旋鈕401沿著第三軸線以向上及向下運動移動所引起。第三軸線垂直於第一軸線及第二軸線兩者。在此特定運動中,第一軸線及第二軸線保持在其當前位向中,同時整個旋鈕401沿著向上及向下位向軸移動。在較佳具體實例中,向前側向運動411對應於Y軸。The vertical press or downward movement 413 is caused by the knob 401 moving in upward and downward movements along the third axis. The third axis is perpendicular to both the first axis and the second axis. During this particular movement, the first and second axes remain in their current orientations while the entire knob 401 moves along the upward and downward orientation axes. In the preferred embodiment, forward lateral movement 411 corresponds to the Y-axis.

向前旋轉運動414為其中旋鈕401之位置在前兩個軸線上保持靜止、且旋鈕之位向向前及向後傾斜從而產生圍繞X軸之旋轉運動的運動。此旋轉運動對應於圍繞X軸之滾動旋轉。Forward rotational motion 414 is a motion in which the position of the knob 401 remains stationary on the first two axes, and the position of the knob is tilted forward and backward to produce a rotational motion about the X-axis. This rotational movement corresponds to a rolling rotation about the X-axis.

正交旋轉運動415為其中旋鈕401之位置在前兩個軸線上保持靜止、且旋鈕之位向向前及向後傾斜從而產生圍繞Z軸之旋轉運動的運動。此旋轉運動對應於圍繞X軸之偏航旋轉。Orthogonal rotational motion 415 is a motion in which the position of the knob 401 remains stationary on the first two axes, and the position of the knob is tilted forward and backward to produce a rotational motion about the Z-axis. This rotational movement corresponds to a yaw rotation about the X-axis.

水平旋轉運動416為其中旋鈕401之位置在前兩個軸線上保持靜止、且旋鈕之位向向前及向後傾斜從而產生圍繞X軸之旋轉運動的運動。此旋轉運動對應於圍繞Z軸之俯仰旋轉。Horizontal rotational motion 416 is a motion in which the position of the knob 401 remains stationary on the first two axes, and the position of the knob is tilted forward and backward to produce a rotational motion about the X-axis. This rotational movement corresponds to a pitch rotation about the Z-axis.

圖5說明根據一或多個實施之另一範例無障礙控制器。無障礙控制器500之另一具體實例包含耦接至裝置主體502的搖桿501,該裝置主體502附接至控制器集線器。搖桿501在兩個維度上移動,該兩個維度可由控制器集線器轉換成六自由度中之兩者以用於傳輸至VR系統。複數個可按下按鈕503可圍繞裝置主體502定位,以將額外使用者輸入信號提供至VR系統。搖桿501及裝置主體502可固持於單一使用者之手中,同時准許使用者用拇指或拇指及手指操控搖桿501及可按下按鈕503。具有受限行動性之使用者可固持無障礙控制器501,以在保持他或她的手靜止時提供兩運動度。Figure 5 illustrates another example accessibility controller in accordance with one or more implementations. Another embodiment of an accessibility controller 500 includes a rocker 501 coupled to a device body 502 that is attached to a controller hub. The joystick 501 moves in two dimensions, which can be converted by the controller hub into two of six degrees of freedom for transmission to the VR system. A plurality of pressable buttons 503 may be positioned around the device body 502 to provide additional user input signals to the VR system. The rocker 501 and the device body 502 can be held in the hand of a single user, while allowing the user to control the rocker 501 and press the button 503 with their thumb or thumb and fingers. A user with limited mobility can hold the accessibility controller 501 to provide two degrees of motion while keeping his or her hands still.

無障礙控制器500可使用電纜或無線連接(諸如,IR收發器、RF收發器、藍牙™連接及任何其他連接及通信通道)附接至控制器集線器。無障礙控制器集線器可經組態,以將搖桿501指派至六自由度中之任何兩者作為其組態之部分。類似地,複數個可按下按鈕503可經映射以提供由控制器集線器辨識之輸入信號,作為簡單接通/斷開開關。使用者可使用固持於相對手中之類似控制器,以將兩額外運動輸入度提供至VR系統。Accessibility controller 500 may be attached to the controller hub using cables or wireless connections, such as IR transceivers, RF transceivers, Bluetooth™ connections, and any other connections and communication channels. The accessibility controller hub can be configured to assign the joystick 501 to any two of the six degrees of freedom as part of its configuration. Similarly, a plurality of pushable buttons 503 can be mapped to provide an input signal recognized by the controller hub as a simple on/off switch. The user can use similar controllers held in the opposite hand to provide two additional degrees of motion input to the VR system.

圖6說明根據一或多個實施之又一範例無障礙控制器及集線器。控制器及集線器601及外部控制器裝置603至604之集合顯示於無障礙控制器及集線器600之此具體實例中。控制器及集線器601包含複數個輸入致動器裝置602,其准許此等輸入裝置可用以將運動輸入提供至VR系統。複數個輸入致動器裝置602可包含操縱桿、旋鈕及感測沿著六運動度中之各者之運動輸入的感測器,控制器包含用於上/下、後退/向前、上/下、滾動、偏航及/或俯仰的感測器。外部控制器裝置603至604之集合亦可包含操縱桿、旋鈕及感測沿著六運動度中之各者之運動輸入的感測器,控制器包含用於上/下、後退/向前、上/下、滾動、偏航及/或俯仰的感測器,其中之各者可以通信方式耦接至控制器及集線器601。在替代具體實例中,控制器集線器601可不包括整合至集線器主體中之輸入致動器裝置,其中所有輸入致動器裝置對應於外部控制器裝置603至604。Figure 6 illustrates yet another example accessibility controller and hub in accordance with one or more implementations. A collection of controller and hub 601 and external controller devices 603-604 are shown in this specific example of accessibility controller and hub 600. Controller and hub 601 includes a plurality of input actuator devices 602 that allow these input devices to be used to provide motion input to the VR system. The plurality of input actuator devices 602 may include joysticks, knobs, and sensors that sense motion input along each of the six degrees of motion, with controls including for up/down, back/forward, up/down. Down, roll, yaw and/or pitch sensors. The set of external controller devices 603-604 may also include joysticks, knobs, and sensors that sense motion input along each of the six degrees of motion, with controls including for up/down, back/forward, Up/down, roll, yaw and/or pitch sensors, each of which may be communicatively coupled to the controller and hub 601. In alternative embodiments, controller hub 601 may not include input actuator devices integrated into the hub body, with all input actuator devices corresponding to external controller devices 603-604.

圖7說明根據一或多個實施之無障礙控制器及集線器的又一範例。控制器集線器700之另一範例性具體實例顯示有整合至控制器主體701中之複數個輸入致動器裝置703a至703c、複數個可按下按鈕704a-d及四路開關705。複數個輸入致動器裝置703a至703c可包含一或多個操縱桿、旋鈕及感測沿著六運動度中之各者之運動輸入的感測器,控制器包含用於上/下、後退/向前、上/下、滾動、偏航及/或俯仰的感測器。複數個可按下按鈕704a-d可經映射,以作為簡單接通/斷開開關提供由控制器集線器辨識之輸入信號。四路開關705准許使用者發送對應於三維(three-dimensional;3D)空間內之兩個正交軸的運動輸入。Figure 7 illustrates yet another example of an accessibility controller and hub in accordance with one or more implementations. Another exemplary embodiment of a controller hub 700 is shown with a plurality of input actuator devices 703a-703c, a plurality of pressable buttons 704a-d, and a four-way switch 705 integrated into the controller body 701. The plurality of input actuator devices 703a-703c may include one or more joysticks, knobs, and sensors that sense motion input along each of the six degrees of motion, with controls including for up/down, reverse /Sensors for forward, up/down, roll, yaw and/or pitch. A plurality of pressable buttons 704a-d can be mapped to act as simple on/off switches to provide input signals recognized by the controller hub. The four-way switch 705 allows the user to send motion input corresponding to two orthogonal axes in a three-dimensional (3D) space.

控制器集線器700亦顯示具有利用與外部控制器裝置上之電連接器匹配之電連接器的複數個外部控制器連接埠702a-n。當外部控制器裝置以通信方式耦接至外部控制器連接埠702a-n中之一者時,控制器集線器700經組態以接受由特定外部控制器產生之輸入。控制器集線器700可自動地偵測耦接至外部控制器連接埠702a-n中之各者的外部控制器之類型,以自動地組態外部控制器之操作。控制器集線器700可經組態,以將外部控制器及其輸入中之任一者映射至VR系統之各種輸入。The controller hub 700 is also shown having a plurality of external controller ports 702a-n utilizing electrical connectors that mate with electrical connectors on the external controller device. When an external controller device is communicatively coupled to one of external controller ports 702a-n, controller hub 700 is configured to accept input generated by a particular external controller. Controller hub 700 can automatically detect the type of external controller coupled to each of external controller ports 702a-n to automatically configure operation of the external controller. Controller hub 700 can be configured to map any of the external controllers and their inputs to various inputs of the VR system.

圖8說明根據一或多個實施之用於無障礙控制器的六度運動控制操作。在3D空間中任何物件之位置及位向可使用六值座標系統800界定。在VR系統中,典型使用者與系統互動,以使用其手中之一或多者中的一或多個輸入控制器提供輸入。各手之位置稱為3D空間中之位置,其可界定於六軸線座標系統中,其中各軸線界定六自由度中之一者。Figure 8 illustrates six degrees of motion control operation for an accessibility controller in accordance with one or more implementations. The position and orientation of any object in 3D space can be defined using the six-value coordinate system 800. In a VR system, a typical user interacts with the system to provide input using one or more input controllers in their hands. The position of each hand is called a position in 3D space, which can be defined in a six-axis coordinate system, where each axis defines one of the six degrees of freedom.

六值座標系統800使用包含X軸801、Y軸802及Z軸803之三個軸線來界定3D空間中的點。位於3D空間中之此點處之所有物件亦可使用圍繞三個位置軸線801至703之三個角旋轉值來界定。此等角旋轉值界定圍繞對應軸線801至803之滾動811、俯仰812及偏航813旋轉角。滾動值811界定圍繞X軸801之旋轉之角度量測。俯仰值812界定圍繞Y軸802之旋轉之角度量測。偏航值813界定圍繞X軸803之旋轉之角度量測。The six-value coordinate system 800 uses three axes including the X-axis 801, the Y-axis 802, and the Z-axis 803 to define points in 3D space. All objects located at this point in 3D space can also be defined using three angular rotation values about three position axes 801 to 703. These angular rotation values define roll 811 , pitch 812 and yaw 813 rotation angles about corresponding axes 801 to 803 . Roll value 811 defines an angular measurement of rotation about the X-axis 801 . Pitch value 812 defines an angular measurement of rotation about Y-axis 802 . Yaw value 813 defines an angular measurement of rotation about X-axis 803 .

使用者通常藉由通過改變控制器之位置及位向來改變其手中之一或多個控制器之位置及位向來與VR系統互動。位置及位向及/或位置改變及位向改變可藉由VR系統解譯為輸入,以預期使用者在VR空間中之動作。與一或多個輸入按鈕組合之此等六自由度允許使用者提供與VR系統互動所需的所有輸入。Users typically interact with VR systems by changing the position and orientation of one or more controllers in their hands by changing the position and orientation of the controllers. Position and orientation and/or changes in position and orientation can be interpreted as input by the VR system to anticipate the user's actions in the VR space. These six degrees of freedom combined with one or more input buttons allow the user to provide all the input needed to interact with the VR system.

所揭示之系統解決與電腦技術相關之傳統無障礙控制器及控制器集線器技術中之問題,即控制器之技術問題不提供准許具有受限移動之使用者與VR系統互動之輸入裝置,以及接受將替代機構提供至VR系統之第三方輸入裝置。所揭示之系統藉由提供亦起因於電腦技術中之解決方案,即藉由向在虛擬環境中具有受限行動性之使用者提供無障礙來解決此技術問題。所揭示之本發明技術進一步提供對電腦自身之功能之改良,此係由於其改良無障礙控制器及控制器集線器中之處理及效率。The disclosed system solves a problem associated with traditional accessibility controllers and controller hub technology associated with computer technology, namely that the controller does not provide an input device that allows a user with limited mobility to interact with the VR system, and accept Third-party input devices that provide alternative mechanisms to VR systems. The disclosed system solves this technical problem by providing a solution also originating in computer technology, namely by providing accessibility to users with limited mobility in virtual environments. The disclosed technology further provides improvements in the functionality of the computer itself due to improved processing and efficiency in accessibility controllers and controller hubs.

圖9說明根據本揭示之某些態樣之經組態以用於無障礙控制器及控制器集線器的系統900。在一些實施中,系統900可包括一或多個計算平台902。計算平台902可經組態以根據用戶端/伺服器架構、同級間架構及/或其他架構與一或多個遠端平台904通信。遠端平台904可經組態以經由計算平台902及/或根據用戶端/伺服器架構、同級間架構及/或其他架構與其他遠端平台通信。使用者可經由遠端平台904存取系統900.Figure 9 illustrates a system 900 configured for accessibility controllers and controller hubs in accordance with certain aspects of the present disclosure. In some implementations, system 900 may include one or more computing platforms 902. Computing platform 902 may be configured to communicate with one or more remote platforms 904 according to a client/server architecture, a peer-to-peer architecture, and/or other architectures. Remote platform 904 may be configured to communicate with other remote platforms via computing platform 902 and/or according to a client/server architecture, a peer-to-peer architecture, and/or other architectures. Users can access system 900 via remote platform 904.

計算平台902可藉由機器可讀取指令906組態。機器可讀取指令906可包括一或多個指令模組。指令模組可包括電腦程式模組。指令模組可包括控制器耦接模組908、控制器輸入偵測模組910、控制器集線器耦接模組912、集線器輸入偵測模組914、互動引起模組916及/或其他指令模組中之一或多者。Computing platform 902 may be configured by machine-readable instructions 906 . Machine-readable instructions 906 may include one or more instruction modules. Instruction modules may include computer program modules. The command module may include a controller coupling module 908, a controller input detection module 910, a controller hub coupling module 912, a hub input detection module 914, an interaction causing module 916, and/or other command modules. one or more of the group.

控制器耦接模組908可經組態以將一控制器耦接至控制器集線器。藉助於非限制性範例,控制器可包括用於上/下、後退/向前、上/下、滾動、偏航及/或俯仰之感測器。控制器集線器可包括定向襯墊/定向襯墊之功能性。控制器集線器可包括用於將一或多個外部控制器電耦接至控制器集線器之複數個控制器埠。藉助於非限制性範例,複數個控制器埠中之各者可包括USB-A連接、微USB連接、迷你USB連接、USB-C連接及雷電連接。在一些實施中,控制器可經組態以在無控制器集線器之情況下經由頭戴式顯示器使用,其中頭戴式顯示器經組態以將六自由度控制件轉換成頭戴式顯示器或控制器中之一者或兩者的六自由度運動。Controller coupling module 908 may be configured to couple a controller to the controller hub. By way of non-limiting example, the controller may include sensors for up/down, back/forward, up/down, roll, yaw and/or pitch. The controller hub may include directional pad/directional pad functionality. The controller hub may include a plurality of controller ports for electrically coupling one or more external controllers to the controller hub. By way of non-limiting example, each of the plurality of controller ports may include a USB-A connection, a micro-USB connection, a mini-USB connection, a USB-C connection, and a Thunderbolt connection. In some implementations, the controller can be configured for use via a head mounted display without a controller hub, where the head mounted display is configured to convert the six degree of freedom controls into a head mounted display or control Six degrees of freedom motion of one or both of the devices.

藉助於非限制性範例,外部控制器可包括操縱桿、旋鈕、定向襯墊/定向襯墊之功能性、姆指轉輪、軌跡墊及可按下致動器按鈕。定向襯墊/定向襯墊之功能性可提供2運動輸入度。藉助於非限制性範例,控制器、控制器集線器及外部控制器可提供觸覺回饋。觸覺回饋藉由由控制器提供可偵測運動來將基於運動之回饋提供至使用者,該可偵測運動指示回饋訊息由VR系統100提供至使用者。By way of non-limiting example, external controls may include joysticks, knobs, directional pads/directional pad functionality, thumb wheels, track pads, and depressible actuator buttons. Directional pads/directional pads feature functionality that provides 2 degrees of motion input. By way of non-limiting example, controllers, controller hubs, and external controllers can provide haptic feedback. Haptic feedback provides motion-based feedback to the user by providing detectable motion with the controller, and the detectable motion indicates feedback information is provided to the user by the VR system 100 .

藉助於非限制性範例,控制器、控制器集線器及外部控制器可程式化為左控制器及右控制器。左控制器及右控制器可擁有相同數目及位置之輸入裝置,該輸入裝置包括操縱桿、旋鈕、定向襯墊/定向襯墊之功能性、姆指轉輪、軌跡墊及可按下致動器按鈕。然而,當在使用中時,左控制器上之輸入裝置可程式化,以將與由右控制器提供之輸入資料不同的輸入資料提供至VR系統。控制器經組態以用於具有受限行動性之使用者,通常指使用者以使用VR系統判定輸入資料值之方法去移動制動器的能力受限。控制器可包括具有六運動度之致動器。By way of non-limiting example, the controller, controller hub, and external controller may be programmed as a left controller and a right controller. The left and right controllers may have the same number and location of input devices, including joysticks, knobs, directional pad/directional pad functionality, thumbwheels, track pads, and pushable actuators button. However, when in use, the input device on the left controller can be programmed to provide input data to the VR system that is different from the input data provided by the right controller. The controller is configured for use by a user with limited mobility, typically a user with limited ability to move the actuator by using the VR system to determine input data values. The controller may include an actuator with six degrees of motion.

致動器可包括操縱桿。致動器可包括感測沿著六運動度中之各者之運動輸入、或致動器之位置或位向改變的感測器。致動器可包括提供兩運動度輸入之四路開關。The actuator may include a joystick. The actuator may include sensors that sense motion input along each of the six degrees of motion, or changes in the position or orientation of the actuator. The actuator may include a four-way switch providing two degrees of motion input.

控制器輸入偵測模組910可經組態以偵測沿著六運動度中之各者至控制器之控制器輸入。Controller input detection module 910 may be configured to detect controller input to the controller along each of the six degrees of motion.

控制器集線器耦接模組912可經組態以將配件耦接至控制器集線器。來自第三方製造商之操縱桿、旋鈕、定向襯墊/定向襯墊之功能性、姆指轉輪、軌跡墊及可按下致動器按鈕,為使用控制器集線器耦接模組912耦接至控制器集線器之配件類型的範例。藉助於非限制性範例,配件可包括按鈕、觸發器、感測器及額外控制器功能性。配件及外部控制器可為可選擇的,以提供六自由度中之各者之運動輸入。配件及外部控制器可包括光帽觸摸按鈕。Controller hub coupling module 912 may be configured to couple accessories to the controller hub. Joysticks, knobs, directional pads/directional pad functionality, thumb wheels, track pads, and pushable actuator buttons from third-party manufacturers for coupling using the Controller Hub Coupling Module 912 Examples of accessory types to controller hubs. By way of non-limiting example, accessories may include buttons, triggers, sensors, and additional controller functionality. Accessories and external controllers may be optional to provide motion input in each of the six degrees of freedom. Accessories and external controls can include light-cap touch buttons.

集線器輸入偵測模組914可經組態以偵測來自控制器集線器之配件的集線器輸入。此等集線器輸入對應於由集線器輸入偵測模組914接收到之輸入值,該些輸入值轉換成至由標準控制器提供之VR系統的輸入。The hub input detection module 914 may be configured to detect hub input from accessories of the controller hub. These hub inputs correspond to input values received by the hub input detection module 914 that are converted into inputs to the VR system provided by the standard controller.

互動引起模組916可經組態以基於控制器輸入及集線器輸入而引起虛擬環境中之互動。互動引起模組916將從外部裝置接收到之輸入值,轉換成至由標準控制器提供之VR系統的輸入。提供一運動度輸入之輸入裝置在六度座標系統中僅指派至其對應軸線。提供兩個或更多輸入運動度之輸入裝置將從此輸入裝置接收到之資料轉換,成對應於含於輸入裝置之輸入運動內之輸入運動的量之軸線輸入資料,該輸入運動在向其指派輸入裝置之六度座標系統中針對各軸線表示。使用此類轉換操作,可將對應於由標準控制器產生之輸入運動資料的輸入運動提供至VR系統,且可由外部控制器提供。The interaction causing module 916 can be configured to cause interactions in the virtual environment based on controller input and hub input. The interaction elicitation module 916 converts input values received from external devices into inputs to the VR system provided by standard controllers. An input device that provides a motion input is assigned only to its corresponding axis in the six-degree coordinate system. An input device that provides two or more input degrees of motion converts data received from the input device into axis input data corresponding to the amount of input motion contained in the input motion of the input device that is assigned to it The input device is represented for each axis in the six-degree coordinate system. Using such conversion operations, input motion corresponding to input motion data generated by a standard controller can be provided to the VR system, and can be provided by an external controller.

在一些實施中,致動器可包括旋鈕。在一些實施中,致動器可推動。在一些實施中,旋鈕可提供六自由度輸入。在一些實施中,藉助於非限制性範例,六自由度輸入中之各者可包括向前側向運動、垂直於向前側向運動之正交側向運動、豎直按下或向下運動、向前旋轉運動、正交旋轉運動及水平旋轉運動。在一些實施中,操縱桿可提供兩運動輸入度。In some implementations, the actuator may include a knob. In some implementations, the actuator is pushable. In some implementations, the knob can provide six degrees of freedom input. In some implementations, by way of non-limiting example, each of the six degrees of freedom inputs may include forward lateral motion, orthogonal lateral motion perpendicular to the forward lateral motion, vertical press or downward motion, forward lateral motion, Forward rotational motion, orthogonal rotational motion and horizontal rotational motion. In some implementations, the joystick can provide two degrees of motion input.

在一些實施中,計算平台902、遠端平台904及/或外部資源918可經由一或多個電子通信鏈路以操作方式鏈接。舉例而言,此類電子通信鏈路可至少部分地經由諸如網際網路及/或其他網路之網路來建立。應瞭解,此不意欲為限制性的,且本揭示之範疇包括其中計算平台902、遠端平台904及/或外部資源918可經由某一其他通訊媒體可以操作方式鏈接之實施。In some implementations, computing platform 902, remote platform 904, and/or external resources 918 may be operatively linked via one or more electronic communication links. For example, such electronic communication links may be established, at least in part, via a network such as the Internet and/or other networks. It should be understood that this is not intended to be limiting, and the scope of the present disclosure includes implementations in which computing platform 902, remote platform 904, and/or external resources 918 may be operably linked via some other communication medium.

給定遠端平台904可包括經組態以執行電腦程式模組之一或多個處理器。電腦程式模組可經組態以使得與給定遠端平台904相關聯之專家或使用者能夠與系統900及/或外部資源918介接,及/或提供本文中歸因於遠端平台904之其他功能性。藉助於非限制性範例,給定遠端平台904及/或給定計算平台902可包括伺服器、桌上型電腦、膝上型電腦、手持型電腦、平板電腦計算平台、迷你筆記型電腦(NetBook)、智慧型手機、遊戲控制台及/或其他計算平台中之一或多者。A given remote platform 904 may include one or more processors configured to execute computer program modules. Computer programming modules may be configured to enable experts or users associated with a given remote platform 904 to interface with the system 900 and/or external resources 918 and/or to provide information attributed herein to the remote platform 904 other functionality. By way of non-limiting example, a given remote platform 904 and/or a given computing platform 902 may include a server, desktop computer, laptop computer, handheld computer, tablet computing platform, mini-notebook computer ( NetBook), smartphones, game consoles, and/or other computing platforms.

外部資源918可包括系統900外部之資訊源、參與系統900之外部實體,及/或其他資源。在一些實施中,本文中歸因於外部資源918之功能性中之一些或全部可藉由包括於系統900中之資源來提供。External resources 918 may include information sources external to system 900, external entities participating in system 900, and/or other resources. In some implementations, some or all of the functionality attributed herein to external resources 918 may be provided by resources included in system 900 .

計算平台902可包括電子儲存器920、一或多個處理器922及/或其他組件。計算平台902可包括用以實現資訊與網路及/或其他計算平台之交換的通信管線或埠。圖9中之計算平台902之說明並不意欲為限制性的。計算平台902可包括一起操作,以提供本文中歸因於計算平台902之功能性的複數個硬體、軟體及/或韌體組件。舉例而言,計算平台902可藉由一起作為計算平台902操作之計算平台之雲端來實施。Computing platform 902 may include electronic storage 920, one or more processors 922, and/or other components. Computing platform 902 may include communication pipes or ports to enable the exchange of information with networks and/or other computing platforms. The illustration of computing platform 902 in Figure 9 is not intended to be limiting. Computing platform 902 may include a plurality of hardware, software, and/or firmware components that operate together to provide the functionality attributed herein to computing platform 902. For example, computing platform 902 may be implemented in the cloud together as a computing platform for which computing platform 902 operates.

電子儲存器920可包含以電子方式儲存資訊之非暫時性儲存媒體。電子儲存器920之電子儲存媒體可包括與計算平台902一體(亦即,實質上不可移除)提供的系統儲存器、及/或經由例如埠(例如,USB埠、火線埠等)或驅動器(例如,磁碟機等)以可移除方式連接至計算平台902的可移除儲存器中之一者或兩者。電子儲存器920可包括以下中之一或多者:光學可讀取儲存媒體(例如,光碟等)、磁性可讀取儲存媒體(例如,磁帶、磁性硬碟機、軟碟機等)、基於電荷之儲存媒體(例如,EEPROM、RAM等)、固態儲存媒體(例如,快閃隨身碟等)及/或其他電子可讀取儲存媒體。電子儲存器920可包括一或多個虛擬儲存資源(例如,雲端儲存器、虛擬私有網路及/或其他虛擬儲存資源)。電子儲存器920可儲存軟體演算法、藉由處理器922判定之資訊、從計算平台902接收到之資訊、從遠端平台904接收到之資訊及/或使得計算平台902能夠如本文中所描述起作用之其他資訊。Electronic storage 920 may include non-transitory storage media that stores information electronically. Electronic storage media for electronic storage 920 may include system storage provided integrally with computing platform 902 (i.e., substantially non-removable), and/or via, for example, a port (e.g., USB port, FireWire port, etc.) or drive ( For example, a disk drive, etc.) is removably connected to one or both of the removable storage of computing platform 902 . The electronic storage 920 may include one or more of the following: optically readable storage media (eg, optical discs, etc.), magnetically readable storage media (eg, magnetic tapes, magnetic hard drives, floppy disk drives, etc.), based on Charge storage media (such as EEPROM, RAM, etc.), solid-state storage media (such as flash drives, etc.) and/or other electronically readable storage media. Electronic storage 920 may include one or more virtual storage resources (eg, cloud storage, virtual private network, and/or other virtual storage resources). Electronic storage 920 may store software algorithms, information determined by processor 922, information received from computing platform 902, information received from remote platform 904, and/or enable computing platform 902 as described herein. Other information that works.

處理器922可經組態以在計算平台902中提供資訊處理能力。因而,處理器922可包括數位處理器、類比處理器、經設計以處理資訊之數位電路、經設計以處理資訊之類比電路、狀態機及/或用於以電子方式處理資訊之其他機構中之一或多者。儘管處理器922在圖9中顯示為單一實體,但此僅出於說明性目的。在一些實施中,處理器922可包括複數個處理單元。此等處理單元可實體地位於同一裝置內,或處理器922可表示協調操作之複數個裝置的處理功能性。處理器922可經組態以執行模組908、910、912、914及/或916及/或其他模組。處理器922可經組態以由以下各者執行模組908、910、912、914及/或916及/或其他模組:軟體;硬體;韌體;軟體、硬體及/或韌體之某一組合;及/或用於在處理器922上組態處理能力之其他機構。如本文中所使用,術語「模組」可指執行歸於模組之功能性的任何組件或組件之集合。此可包括在處理器可讀取指令之實行期間的一或多個實體處理器、處理器可讀取指令、電路系統、硬體、儲存媒體或任何其他組件。Processor 922 may be configured to provide information processing capabilities in computing platform 902 . Thus, processor 922 may include a digital processor, an analog processor, a digital circuit designed to process information, an analog circuit designed to process information, a state machine, and/or other mechanisms for processing information electronically. one or more. Although processor 922 is shown as a single entity in Figure 9, this is for illustrative purposes only. In some implementations, processor 922 may include a plurality of processing units. These processing units may be physically located within the same device, or processor 922 may represent the processing functionality of multiple devices operating in coordination. Processor 922 may be configured to execute modules 908, 910, 912, 914, and/or 916 and/or other modules. Processor 922 may be configured to execute modules 908, 910, 912, 914, and/or 916 and/or other modules by: software; hardware; firmware; software, hardware, and/or firmware Some combination of; and/or other mechanisms for configuring processing capabilities on processor 922. As used herein, the term "module" may refer to any component or collection of components that performs the functionality attributed to a module. This may include one or more physical processors, processor-readable instructions, circuitry, hardware, storage media, or any other component during execution of the processor-readable instructions.

應瞭解,儘管模組908、910、912、914及/或916在圖9中說明為實施於單一處理單元內,但在處理器922包括多個處理單元之實施中,模組908、910、912、914及/或916中之一或多者可遠離其他模組實施。由下文所描述之不同模組908、910、912、914及/或916提供之功能性之描述出於說明之目的,且並不意欲為限制性的,此是由於模組908、910、912、914及/或916中之任一者可提供比所描述之功能性更多或更少的功能性。舉例而言,可消除模組908、910、912、914及/或916中之一或多者,且其功能性中之一些或全部可由模組908、910、912、914及/或916中之其他者提供。作為另一範例,處理器922可經組態以執行一或多個額外模組,該一或多個額外模組可進行下文歸於模組908、910、912、914及/或916中之一者的功能性中之一些或全部。It should be understood that although modules 908, 910, 912, 914, and/or 916 are illustrated in FIG. 9 as being implemented within a single processing unit, in implementations in which processor 922 includes multiple processing units, modules 908, 910, One or more of 912, 914, and/or 916 may be implemented remotely from other modules. The functionality provided by the various modules 908, 910, 912, 914, and/or 916 described below are described for purposes of illustration and are not intended to be limiting. This is because the modules 908, 910, 912 Any of , 914 and/or 916 may provide more or less functionality than described. For example, one or more of modules 908, 910, 912, 914, and/or 916 may be eliminated, and some or all of their functionality may be provided by modules 908, 910, 912, 914, and/or 916. provided by others. As another example, processor 922 may be configured to execute one or more additional modules, which may perform one of the modules 908, 910, 912, 914, and/or 916 below. some or all of its functionality.

在特定具體實例中,計算系統之一或多個物件(例如,內容或其他類型之物件)可與一或多個隱私設定相關聯。一或多個物件可儲存於任何合適計算系統或應用程式上或以其他方式與任何合適計算系統或應用程式相關聯,諸如社交網路連接系統、用戶端系統、第三方系統、社交網路連接應用程式、傳訊應用程式、相片共用應用程式或任何其他合適計算系統或應用程式。儘管本文所論述之範例在線上社交網路之上下文中,但此等隱私設定可應用於任何其他合適計算系統。物件之隱私設定(或「存取設定」)可以任何合適之方式儲存,諸如與物件相關聯、在授權伺服器上之索引中、以另一合適之方式,或以其任何合適組合進行儲存。物件之隱私設定可指定可如何在線上社交網路上存取、儲存或以其他方式使用物件(或與物件相關聯之特定資訊)(例如,查看、共用、修改、複製、執行、呈現或識別)。當物件之隱私設定允許特定使用者或其他實體存取彼物件時,該物件可描述為相對於彼使用者或其他實體為「可見的」。作為範例而非作為限制,線上社交網路之使用者可針對使用者設定檔頁面指定隱私設定,該使用者設定檔頁面識別可存取關於使用者設定檔頁面之工作經驗資訊的使用者集合,因此排除其他使用者存取彼資訊。In certain embodiments, one or more objects of a computing system (eg, content or other types of objects) may be associated with one or more privacy settings. One or more objects may be stored on or otherwise associated with any suitable computing system or application, such as a social network connection system, a client system, a third party system, a social network connection application, messaging application, photo sharing application or any other suitable computing system or application. Although the examples discussed herein are in the context of online social networks, these privacy settings may be applied to any other suitable computing system. An object's privacy settings (or "access settings") may be stored in any suitable manner, such as associated with the object, in an index on the authorization server, in another suitable manner, or in any suitable combination thereof. An object's privacy settings may specify how the object (or certain information associated with the object) may be accessed, stored, or otherwise used on the online social network (e.g., viewed, shared, modified, copied, executed, presented, or recognized) . When an object's privacy settings allow a specific user or other entity to access that object, the object is described as "visible" to that user or other entity. By way of example, and not by way of limitation, users of an online social network may specify privacy settings for a user profile page that identifies the set of users who have access to work experience information on the user profile page, This prevents other users from accessing that information.

在特定具體實例中,針對物件之隱私設定可指定不應被允許存取與物件相關聯之某些資訊的使用者或其他實體之「黑名單」。在特定具體實例中,黑名單可包括第三方實體。黑名單可指定一或多個使用者或實體,物件對該一或多個使用者或實體不可見。作為範例而非作為限制,使用者可指定可不存取與使用者相關聯的相片專輯的使用者集合,因此排除括彼等使用者存取相片專輯(同時亦可能允許不在指定使用者集合內的某些使用者存取相片專輯)。在特定具體實例中,隱私設定可與特定社交圖元素相關聯。諸如節點或邊緣之社交圖元素的隱私設定可指定可如何使用線上社交網路存取社交圖元素、與社交圖元素相關聯之資訊或與社交圖元素相關聯之物件。作為範例而非作為限制,對應於特定相片之特定概念節點可具有指定可僅由在相片中標記之使用者及相片中標記之使用者之朋友存取該相片的隱私設定。在特定具體實例中,隱私設定可允許使用者選擇加入或不加入使其內容、資訊或動作由社交網路連接系統儲存/記錄或與其他系統(例如,第三方系統)共用。儘管本揭示以特定方式描述使用特定隱私設定,但本揭示以任何合適方式涵蓋使用任何合適隱私設定。In certain embodiments, privacy settings for an object may specify a "blacklist" of users or other entities that should not be allowed to access certain information associated with the object. In certain embodiments, the blacklist may include third party entities. The blacklist can specify one or more users or entities for which the object is not visible. As an example, and not as a limitation, a user may specify a set of users that may not have access to the photo album associated with the user, thus excluding those users from accessing the photo album (while also potentially allowing those users who are not in the specified user set) Some users have access to photo albums). In certain embodiments, privacy settings may be associated with specific social graph elements. Privacy settings for social graph elements such as nodes or edges can specify how the social graph element, information associated with the social graph element, or objects associated with the social graph element can be accessed using the online social network. By way of example, and not by way of limitation, a particular concept node corresponding to a particular photo may have privacy settings that specify that the photo may be accessed only by users tagged in the photo and friends of users tagged in the photo. In certain embodiments, privacy settings may allow users to opt in or out of having their content, information or actions stored/recorded by social network connected systems or shared with other systems (e.g., third-party systems). Although this disclosure describes the use of particular privacy settings in a specific manner, this disclosure covers the use of any appropriate privacy setting in any appropriate manner.

在特定具體實例中,隱私設定可基於社交圖之一或多個節點或邊緣。可針對社交圖之一或多個邊緣或邊緣類型,或相對於社交圖之一或多個節點或節點類型來指定隱私設定。應用於連接兩個節點之特定邊緣的隱私設定可控制對應於節點之兩個實體之間的關係,對於線上社交網路之其他使用者是否可見。類似地,應用於特定節點之隱私設定可控制對應於節點之使用者或概念,對於線上社交網路之其他使用者是否可見。作為範例而非作為限制,第一使用者可向社交網路連接系統共用物件。物件可與由邊緣連接至第一使用者之使用者節點的概念節點相關聯。第一使用者可指定適用於連接至物件之概念節點之特定邊緣的隱私設定,或可指定適用於連接至概念節點之所有邊緣的隱私設定。作為另一範例且並非作為限制,第一使用者可共用特定物件類型之物件集合(例如,影像集合)。第一使用者可將關於與第一使用者相關聯的彼特定物件類型之全部物件的隱私設定指定為具有特定隱私設定(例如,指定由第一使用者張貼之全部影像僅對第一使用者之朋友及/或影像中標記之使用者可見)。In certain embodiments, privacy settings may be based on one or more nodes or edges of the social graph. Privacy settings may be specified for one or more edges or edge types of the social graph, or with respect to one or more nodes or node types of the social graph. Privacy settings applied to a specific edge connecting two nodes control whether the relationship between the two entities corresponding to the node is visible to other users of the online social network. Similarly, privacy settings applied to a specific node can control whether users or concepts corresponding to the node are visible to other users of the online social network. By way of example and not limitation, the first user may share the object to the social network connection system. The object may be associated with a concept node connected by an edge to a user node of the first user. The first user may specify a privacy setting that applies to a specific edge connected to a concept node of an object, or may specify a privacy setting that applies to all edges connected to a concept node. As another example, and not by way of limitation, the first user may share an object collection of a particular object type (eg, an image collection). The first user may specify privacy settings for all objects of that particular object type associated with the first user as having a particular privacy setting (e.g., specifying that all images posted by the first user are only visible to the first user Visible to friends and/or users tagged in the image).

在特定具體實例中,社交網路連接系統可向第一使用者呈現「隱私精靈」(例如,在網頁、模組、一或多個對話框或任何其他合適介面內),以輔助第一使用者指定一或多個隱私設定。隱私精靈可顯示指令、合適之隱私相關資訊、當前隱私設定、用於接受來自指定隱私設定之改變或確認的第一使用者之一或多個輸入的一或多個輸入欄位,或其任何合適組合。在特定具體實例中,社交網路連接系統可向第一使用者提供「儀錶板」功能性,該功能性可向第一使用者顯示第一使用者之當前隱私設定。可在任何適當時間(例如,在來自第一使用者之召喚儀錶板功能之輸入之後、在特定事件或觸發動作發生之後)將儀錶板功能顯示至第一使用者。儀錶板功能性可允許第一使用者在任何時間以任何合適方式(例如,將第一使用者重新定向至隱私精靈)修改第一使用者之當前隱私設定中之一或多者。In certain embodiments, the social network connection system may present a "Privacy Wizard" to the first user (e.g., within a web page, module, one or more dialog boxes, or any other suitable interface) to assist the first user. or specify one or more privacy settings. The Privacy Wizard may display instructions, appropriate privacy-related information, current privacy settings, one or more input fields for accepting one or more inputs from the first user to change or confirm a specified privacy setting, or any of its Suitable combination. In certain embodiments, the social network connection system may provide "dashboard" functionality to the first user that may display to the first user the first user's current privacy settings. The dashboard functionality may be displayed to the first user at any appropriate time (eg, following input from the first user summoning the dashboard functionality, following the occurrence of a specific event or triggering action). Dashboard functionality may allow the first user to modify one or more of the first user's current privacy settings at any time in any suitable manner (eg, redirecting the first user to the privacy wizard).

與物件相關聯之隱私設定可指定經准許存取或拒絕存取之任何合適的詳盡性。作為範例而非作為限制,存取或拒絕存取可針對特定使用者(例如,僅我、我的室友、我的老闆)、在特定分離度內之使用者(例如,朋友、朋友的朋友)、使用者群組(例如,遊戲俱樂部、我的家人)、使用者網路(例如,特定雇主之雇員、特定大學之學生或校友)、所有使用者(「公眾」)、非使用者(「私人」)、第三方系統之使用者、特定應用程式(例如,第三方應用程式、外部網站)、其他合適的實體或其任何合適組合指定。儘管本揭示描述准許存取或拒絕存取之特定精細度,但本揭示涵蓋准許存取或拒絕存取之任何合適精細度。Privacy settings associated with an object may specify any appropriate level of detail for allowing or denying access. By way of example, and not by way of limitation, access or denial of access may be to specific users (e.g., just me, my roommates, my boss), users within a specific degree of separation (e.g., friends, friends of friends) , user groups (e.g., Game Club, My Family), user networks (e.g., employees of a specific employer, students or alumni of a specific university), all users ("Public"), non-users (" "Private"), users of third-party systems, specific applications (e.g., third-party applications, external websites), other appropriate entities, or any appropriate combination thereof. Although this disclosure describes a specific granularity at which access is granted or denied, this disclosure encompasses any suitable granularity at which access is granted or denied.

在特定具體實例中,一或多個伺服器可為用於強制實行隱私設定之授權/隱私伺服器。回應於來自使用者(或其他實體)之對儲存於資料儲存器中之特定物件的請求,社交網路連接系統可針對該物件將請求發送至資料儲存器。若授權伺服器基於與物件相關聯之隱私設定而判定使用者被授權存取該物件,則請求可識別與請求相關聯之使用者,並且物件可僅被發送至該使用者(或該使用者之用戶端系統)。若請求使用者未被授權存取物件,則授權伺服器可防止從資料儲存器擷取所請求物件,或可防止所請求物件被發送至使用者。在搜尋查詢上下文中,僅在查詢使用者經授權以存取物件的情況下,例如在用於物件之隱私設定允許其呈現至查詢使用者、由查詢使用者發現或以其他方式對查詢使用者可見的情況下,可將物件提供為搜尋結果。在特定具體實例中,物件可表示經由使用者之新聞饋送對使用者可見的內容。作為範例而非作為限制,一或多個物件可對使用者之「趨勢(Trending)」頁面可見。在特定具體實例中,物件可對應於特定使用者。物件可為與特定使用者相關聯之內容,或可為儲存於社交網路連接系統或其他計算系統上之特定使用者之帳戶或資訊。作為範例而非作為限制,第一使用者可經由線上社交網路之「你可能認識的人」功能或藉由查看第一使用者之朋友清單,來查看線上社交網路之一或多個第二使用者。作為範例而非作為限制,第一使用者可指定其不希望在其新聞饋送或朋友清單中看到與特定第二使用者相關聯之物件。若物件之隱私設定不允許其呈現給使用者、由使用者發現或對使用者可見,則可將物件自搜尋結果排除。儘管本揭示以特定方式描述強制實行隱私設定,但本揭示涵蓋以任何合適方式強制實行隱私設定。In certain embodiments, one or more servers may be authorization/privacy servers for enforcing privacy settings. In response to a request from a user (or other entity) for a particular object stored in the data storage, the social network connection system may send a request to the data storage for the object. If the authorization server determines that the user is authorized to access the object based on the privacy settings associated with the object, the request may identify the user associated with the request and the object may be sent only to that user (or client system). If the requesting user is not authorized to access the object, the authorization server may prevent the requested object from being retrieved from the data storage or may prevent the requested object from being sent to the user. In the context of a search query, only if the querying user is authorized to access the object, such as if the privacy settings for the object allow it to be presented to, discovered by, or otherwise accessible to the querying user. If visible, the object can be provided as a search result. In certain embodiments, the object may represent content visible to the user via the user's news feed. As an example and not a limitation, one or more objects may be visible to the user's Trending page. In certain embodiments, objects may correspond to specific users. The object may be content associated with a specific user, or may be a specific user's account or information stored on a social network connection system or other computing system. As an example and not as a limitation, the first user may view one or more of the online social networks through the "People You May Know" function of the online social network or by viewing the first user's friend list. Two users. By way of example, and not by way of limitation, a first user may specify that they do not wish to see items associated with a particular second user in their news feed or friends list. Objects can be excluded from search results if their privacy settings do not allow them to be presented to, discovered by, or visible to users. Although this disclosure describes enforcing privacy settings in a specific manner, this disclosure covers enforcing privacy settings in any suitable manner.

在特定具體實例中,與使用者相關聯之相同類型的不同物件可具有不同隱私設定。與使用者相關聯之不同類型之物件亦可具有不同類型之隱私設定。作為實例而非作為限制,第一使用者可指定第一使用者之狀態更新為公開的,但由第一使用者共用之任何影像僅對於第一使用者在線上社交網路上之朋友可見。作為另一範例而非作為限制,使用者可針對不同類型之實體指定不同隱私設定,諸如個別使用者、朋友的朋友、追隨者、使用者群組或公司實體。作為另一實例而非作為限制,第一使用者可指定可查看由第一使用者張貼之視訊的使用者群組,同時保持視訊對第一使用者之雇主可見。在特定具體實例中,可針對不同使用者群組或使用者人口統計資料提供不同隱私設定。作為範例而非作為限制,第一使用者可指定與第一使用者上同一所大學之其他使用者可查看第一使用者之圖像,但作為第一使用者之家庭成員的其他使用者不可查看彼等相同圖像。In certain embodiments, different objects of the same type associated with a user may have different privacy settings. Different types of objects associated with users can also have different types of privacy settings. As an example and not a limitation, the first user may designate the first user's status updates as public, but any images shared by the first user are visible only to the first user's friends on the online social network. As another example and not limitation, users may specify different privacy settings for different types of entities, such as individual users, friends of friends, followers, user groups, or corporate entities. As another example, and not by way of limitation, the first user may designate a group of users that can view the video posted by the first user, while keeping the video visible to the first user's employer. In certain embodiments, different privacy settings may be provided for different user groups or user demographics. As an example and not as a limitation, the first user may specify that other users who attended the same university as the first user may view the first user's image, but other users who are family members of the first user may not View their identical images.

在特定具體實例中,社交網路連接系統可為特定物件類型的各物件提供一或多個預設隱私設定。經設定為預設之物件之隱私設定可由與彼物件相關聯之使用者改變。作為範例而非作為限制,由第一使用者張貼之全部影像可具有僅對第一使用者之朋友可見的預設隱私設定,並且對於特定影像,第一使用者可改變該影像之隱私設定以對朋友及朋友的朋友可見。In certain embodiments, the social network connection system may provide one or more default privacy settings for each object of a particular object type. The privacy settings of an object that is set as default can be changed by the user associated with that object. By way of example, and not by way of limitation, all images posted by the first user can have a default privacy setting visible only to the first user's friends, and for a particular image, the first user can change the privacy setting of that image to Visible to friends and friends of friends.

在特定具體實例中,隱私設定可允許第一使用者出於任何目的,指定(例如,藉由選擇退出、藉由不選擇加入)社交網路連接系統是否可接收、收集、記錄或儲存與使用者相關聯之特定物件或資訊。在特定具體實例中,隱私設定可允許第一使用者,指定特定應用程式或程序是否可存取、儲存或使用與使用者相關聯之特定物件或資訊。隱私設定可允許第一使用者選擇加入或選者退出使物件或資訊由特定應用程式或程序存取、儲存或使用。社交網路連接系統可存取此類資訊以便向第一使用者提供特定功能或服務,而社交網路連接系統無需出於任何其他目的存取該資訊。在存取、儲存或使用此類物件或資訊之前,社交網路連接系統可在允許任何此類動作之前,提示使用者提供指定哪些應用程式或程序(若存在)可存取、儲存或使用該物件或資訊的隱私設定。作為範例而非作為限制,第一使用者可經由與線上社交網路相關之應用程式(例如,傳訊應用程式)將訊息傳輸至第二使用者,且可指定此類訊息不應由社交網路連接系統儲存之隱私設定。In certain embodiments, privacy settings may allow the first user to specify (e.g., by opting out, by not opting in) whether the social network connected system may receive, collect, record, or store and use it for any purpose. specific objects or information associated with them. In certain embodiments, privacy settings may allow a first user to specify whether a specific application or program can access, store, or use specific objects or information associated with the user. Privacy settings may allow first users to opt in or out of having objects or information accessed, stored, or used by a particular application or program. The social network connection system may access this information in order to provide specific functions or services to the first user, but the social network connection system does not need to access this information for any other purpose. Before accessing, storing, or using such objects or information, the social network connection system may prompt the user to specify which applications or programs (if any) may access, store, or use the items before allowing any such action. Privacy settings for objects or information. As an example and not as a limitation, the first user may transmit messages to the second user via an application related to an online social network (e.g., a messaging application) and may specify that such messages should not be transmitted by the social network Connect to system-stored privacy settings.

在特定具體實例中,使用者可指定與第一使用者相關聯之特定類型之物件或資訊是否可由社交網路連接系統存取、儲存或使用。作為範例而非作為限制,第一使用者可指定由第一使用者經由社交網路連接系統發送之影像可不由社交網路連接系統儲存。作為另一範例且並非作為限制,第一使用者可指定從第一使用者發送至特定第二使用者之訊息可不由社交網路連接系統儲存。作為又一範例而非作為限制,第一使用者可指定經由特定應用程式發送之所有物件可由社交網路連接系統保存。In certain embodiments, a user may specify whether specific types of objects or information associated with the first user may be accessed, stored, or used by the social network connection system. By way of example and not limitation, the first user may specify that images sent by the first user via the social network connection system may not be stored by the social network connection system. As another example, and not by way of limitation, a first user may specify that messages sent from the first user to a particular second user may not be stored by the social network connection system. As yet another example and not limitation, the first user may specify that all objects sent via a particular application may be saved by the social network connection system.

在特定具體實例中,隱私設定可允許第一使用者指定與第一使用者相關聯之特定物件或資訊是否可自特定用戶端系統或第三方系統存取。隱私設定可允許第一使用者選擇加入或不參加使物件或資訊從特定裝置(例如,使用者之智慧型手機上之手機簿)、從特定應用程式(例如,傳訊應用程式)或從特定系統(例如,電子郵件伺服器)存取。社交網路連接系統可提供關於各裝置、系統或應用程式之預設隱私設定,及/或可提示第一使用者針對各上下文指定特定隱私設定。作為範例而非作為限制,第一使用者可利用社交網路連接系統之定位服務特徵來向使用者提供對餐館或附近其他場所之推薦。第一使用者之預設隱私設定可指定社交網路連接系統可使用從第一使用者之用戶端裝置提供之位置資訊以提供基於位置之服務,但社交網路連接系統可不儲存第一使用者之位置資訊或將其提供至任何第三方系統。第一使用者可接著更新隱私設定以允許由第三方影像共用應用程式使用位置資訊以便對相片進行地理標籤。In certain embodiments, privacy settings may allow the first user to specify whether certain objects or information associated with the first user are accessible from certain client systems or third-party systems. Privacy settings may allow the first user to opt in or out of having objects or information available from a specific device (e.g., a phone book on the user's smartphone), from a specific application (e.g., a messaging application), or from a specific system (e.g., email server) access. The social network connection system may provide default privacy settings for each device, system, or application, and/or may prompt the first user to specify specific privacy settings for each context. By way of example, and not by way of limitation, the first user may utilize the location services feature of the social network connection system to provide recommendations to the user for restaurants or other nearby establishments. The first user's default privacy setting may specify that the social network connection system may use location information provided from the first user's client device to provide location-based services, but the social network connection system may not store the first user. location information or provide it to any third-party system. The first user may then update the privacy settings to allow location information to be used by third-party image sharing applications for geotagging photos.

在特定具體實例中,隱私設定可允許使用者指定可從其存取物件之一或多個地理位置。對物件之存取或拒絕存取可取決於嘗試存取物件之使用者的地理位置。作為範例而非作為限制,使用者可共用物件且指定僅同一城市中之使用者可存取或查看該物件。作為另一範例而非作為限制,第一使用者可共用物件且指定物件僅在第一使用者處於特定位置時對第二使用者可見。若第一使用者離開特定位置,則物件不可再對第二使用者可見。作為另一範例而非作為限制,第一使用者可指定物件僅對在距第一使用者的臨限距離內之第二使用者可見。若第一使用者隨後改變位置,則存取物件之初始第二使用者可失去存取,同時第二使用者之新群組可在其出現於第一使用者之臨限距離內時獲得存取。In certain embodiments, privacy settings may allow users to specify one or more geographic locations from which objects may be accessed. Access or denial of access to an object may depend on the geographic location of the user attempting to access the object. As an example and not a limitation, users can share an object and specify that only users in the same city can access or view the object. As another example and not limitation, a first user can share an object and specify that the object is only visible to a second user when the first user is in a specific location. If the first user leaves a specific location, the object is no longer visible to the second user. As another example, and not by way of limitation, a first user may specify that an object is only visible to a second user within a threshold distance from the first user. If the first user subsequently changes location, the original second user who accessed the object may lose access, while a new group of second users may gain access if they appear within a threshold distance of the first user. Pick.

在特定具體實例中,隱私設定之改變可回溯性地生效,由此影響在改變之前共用的物件及內容之可見性。作為範例而非作為限制,第一使用者可共用第一影像且指定第一影像將對全部其他使用者公開。在稍後時間,第一使用者可指定由第一使用者共用之任何影像應僅對第一使用者群組可見。社交網路連接系統可判定此隱私設定亦應用於第一影像,且使第一影像僅對第一使用者群組可見。在特定具體實例中,隱私設定之改變可僅在未來生效。繼續以上範例,若第一使用者改變隱私設定且接著共用第二影像,則第二影像可僅對第一使用者群組可見,但第一影像可保持對所有使用者可見。在特定具體實例中,回應於改變隱私設定之使用者動作,社交網路連接系統可進一步提示使用者指示使用者是否想要回溯性地應用對隱私設定之改變。在特定具體實例中,使用者對隱私設定之改變可為特定於一個物件之一次性改變。在特定具體實例中,使用者對隱私之改變可為用於與使用者相關聯之所有物件的全局改變。In certain instances, changes to privacy settings may be retroactively effective, thereby affecting the visibility of objects and content that were shared prior to the change. By way of example and not limitation, the first user may share the first image and specify that the first image will be public to all other users. At a later time, the first user may specify that any images shared by the first user should be visible only to the first user group. The social network connection system may determine that this privacy setting also applies to the first image, and make the first image visible only to the first user group. In certain instances, changes to privacy settings may only take effect in the future. Continuing with the above example, if the first user changes privacy settings and then shares the second image, the second image may be visible only to the first user group, but the first image may remain visible to all users. In certain embodiments, in response to a user action to change privacy settings, the social network connection system may further prompt the user to indicate whether the user wants to retroactively apply the changes to the privacy settings. In certain embodiments, a user's change to privacy settings may be a one-time change specific to an object. In certain embodiments, changes to privacy by a user may be global changes for all objects associated with the user.

在特定具體實例中,社交網路連接系統可回應於與第一使用者相關聯之觸發動作而判定第一使用者可能想要改變一或多個隱私設定。觸發動作可為線上社交網路上之任何合適動作。作為範例而非作為限制,觸發動作可為線上社交網路之第一使用者與第二使用者之間的關係之改變(例如,「將」使用者「刪除好友」、改變使用者之間的關係狀態)。在特定具體實例中,在判定觸發動作已發生後,社交網路連接系統可提示第一使用者改變關於與第一使用者相關聯之物件之可見性的隱私設定。提示可將第一使用者重新導向至工作流程以用於編輯關於與觸發動作相關聯之一或多個實體的隱私設定。與第一使用者相關聯之隱私設定可僅回應於來自第一使用者之明確輸入而改變,且在未經第一使用者批准的情況下可能不得改變。作為範例而非作為限制,工作流程可包括將關於第二使用者或使用者群組之當前隱私設定提供給第一使用者(例如,從特定物件不給第一使用者或第二使用者加標籤,改變關於第二使用者或使用者群組之特定物件之可見性),及接收來自第一使用者之指示以基於本文中所描述之任一方法改變隱私設定,或保持現有隱私設定。In certain embodiments, the social network connection system may determine that the first user may want to change one or more privacy settings in response to a trigger action associated with the first user. The triggering action can be any suitable action on an online social network. As an example and not as a limitation, the triggering action may be a change in the relationship between the first user and the second user of the online social network (e.g., "removing" the user as a friend, changing the relationship between the users) relationship status). In certain embodiments, after determining that the triggering action has occurred, the social network connection system may prompt the first user to change privacy settings regarding the visibility of objects associated with the first user. The prompt may redirect the first user to a workflow for editing privacy settings regarding one or more entities associated with the triggered action. Privacy settings associated with a first user may change only in response to explicit input from the first user, and may not be changed without the first user's approval. By way of example, and not by way of limitation, the workflow may include providing the first user with the current privacy settings for the second user or group of users (e.g., not adding the first user or second user from a specific object). tags, change the visibility of specific objects with respect to a second user or group of users), and receive instructions from the first user to change privacy settings based on any of the methods described herein, or to maintain existing privacy settings.

在特定具體實例中,使用者可需要在允許使用者在線上社交網路上進行特定動作之前提供對隱私權設定之驗證,或在改變特定隱私設定之前提供驗證。當進行特定動作或改變特定隱私設定時,可將提示呈現至使用者以向使用者提醒他或她的當前隱私權設定,且要求使用者驗證關於特定動作之隱私設定。此外,使用者可需要在繼續進行特定動作之前提供確認、雙確認、認證或其他合適類型之驗證,且該動作可直至提供此類驗證為止才完成。作為範例而非作為限制,使用者之預設隱私權設定可指示個人關係狀況對於所有使用者可見(亦即,「公開」)。然而,若使用者改變他或她的關係狀態,則社交網路連接系統可判定此動作可為敏感的,且可提示使用者確認他或她的關係狀態在進行操作之前應保持為公開的。作為另一實例範例而非作為限制,使用者之隱私設定可指定使用者之貼文僅對使用者之朋友可見。然而,若使用者將他或她的貼文之隱私設定改變為公開的,則社交網路連接系統可能會向使用者提示使用者當前的貼文隱私設定僅對朋友可見的提醒,及此改變將使得使用者過去的所有貼文對於公眾可見的警告。接著可需要使用者提供第二驗證、輸入認證憑證,或在繼續進行隱私權設定改變之前提供其他類型之驗證。在特定具體實例中,使用者可需要定期提供對隱私設定之驗證。提示或提醒可基於經過之時間或使用者動作之數目而週期性發送至使用者。作為範例而非作為限制,社交網路連接系統可向使用者發送提醒以確認他或她每六個月或在每十個相片貼文之後的隱私設定。在特定具體實例中,隱私設定亦可允許使用者基於每請求控制對物件或資訊之存取。作為範例而非作為限制,每當第三方系統嘗試存取與使用者相關聯之資訊時,社交網路連接系統可通知使用者,且需要使用者在進行之前提供應允許存取之驗證。In certain embodiments, a user may be required to provide verification of privacy settings before the user is allowed to perform certain actions on an online social network, or to provide verification before changing certain privacy settings. When a specific action is performed or a specific privacy setting is changed, a prompt may be presented to the user to remind the user of his or her current privacy settings and require the user to verify the privacy settings for the specific action. Additionally, the user may be required to provide confirmation, double-opt, authentication, or other suitable type of verification before proceeding with a particular action, and the action may not be completed until such verification is provided. By way of example, and not by way of limitation, a user's default privacy setting may indicate that the personal relationship status is visible to all users (i.e., "public"). However, if the user changes his or her relationship status, the social network connection system may determine that this action may be sensitive and may prompt the user to confirm that his or her relationship status should remain public before proceeding. As another example, and not by way of limitation, a user's privacy settings may specify that the user's posts are visible only to the user's friends. However, if a user changes the privacy settings of his or her posts to public, the social network connection system may prompt the user with a reminder that the user's current post privacy settings are visible only to friends, and this change A warning that will make all of the user's past posts visible to the public. The user may then be required to provide secondary verification, enter authentication credentials, or provide other types of verification before proceeding with privacy settings changes. In certain instances, users may be required to provide periodic verification of privacy settings. Prompts or reminders can be sent to the user periodically based on elapsed time or number of user actions. By way of example, and not by way of limitation, the social network connection system may send a reminder to the user to confirm his or her privacy settings every six months or after every ten photo posts. In certain embodiments, privacy settings may also allow users to control access to objects or information on a per-request basis. By way of example, and not by way of limitation, the social network connection system may notify the user whenever a third-party system attempts to access information associated with the user, and require the user to provide verification that access should be allowed before proceeding.

本文中所描述之技術可實施為由實體計算裝置進行之方法;實施為儲存指令之一或多個非暫時性電腦可讀取儲存媒體,該些指令在由計算裝置執行時使得進行該方法;或實施為經特別組態有使得進行該方法之硬體與軟體之組合的實體計算裝置。The techniques described herein may be implemented as a method performed by a physical computing device; implemented as one or more non-transitory computer-readable storage media storing instructions that, when executed by the computing device, cause the method to be performed; Or implemented as a physical computing device specially configured with a combination of hardware and software that enables performing the method.

圖10說明根據本揭示之某些態樣之無障礙控制器及控制器集線器的範例流程圖(例如,過程1000)。出於解釋目的,本文中參考圖1至圖9描述範例過程1000。進一步出於解釋目的,範例過程1000之步驟在本文中描述為連續地或線性地發生。然而,範例過程1000之多個例子可並行地發生。出於解釋本發明技術之目的,將參考圖1至圖9論述過程1000。Figure 10 illustrates an example flow diagram (eg, process 1000) of an accessibility controller and controller hub in accordance with certain aspects of the present disclosure. For purposes of explanation, example process 1000 is described herein with reference to FIGS. 1-9. Further for purposes of explanation, the steps of example process 1000 are described herein as occurring sequentially or linearly. However, multiple instances of the example process 1000 may occur in parallel. For the purpose of explaining the present technology, process 1000 will be discussed with reference to FIGS. 1-9.

在步驟1002處,過程1000可包括將控制器耦接至控制器集線器。控制器經組態以用於具有受限行動性之使用者。控制器可包括具有六自由度之致動器。在步驟1004處,過程1000可包括偵測沿著六自由度中之各者至控制器的控制器輸入。在步驟1006處,過程1000可包括將配件耦接至控制器集線器。在步驟1008處,過程1000可包括偵測來自控制器集線器之配件的集線器輸入。在步驟1010處,過程1000可包括基於控制器輸入及集線器輸入而引起虛擬環境中之互動。At step 1002, process 1000 may include coupling a controller to a controller hub. The controller is configured for use by users with limited mobility. The controller may include an actuator with six degrees of freedom. At step 1004, process 1000 may include detecting controller input to the controller along each of the six degrees of freedom. At step 1006, process 1000 may include coupling the accessory to the controller hub. At step 1008, process 1000 may include detecting hub input from an accessory of the controller hub. At step 1010, process 1000 may include causing interaction in the virtual environment based on controller input and hub input.

舉例而言,如上文關於圖9所描述,在步驟1002處,過程1000可包括經由控制器耦接模組908將控制器耦接至控制器集線器。控制器經組態以用於具有受限行動性之使用者。控制器可包括具有六自由度之致動器。在步驟1004處,過程1000可包括經由控制器輸入偵測模組910偵測沿著六自由度中之各者至控制器的控制器輸入。在步驟1006處,過程1000可包括經由控制器集線器耦接模組912將配件耦接至控制器集線器。在步驟1008處,過程1000可包括經由集線器輸入偵測模組914偵測來自控制器集線器之配件的集線器輸入。在步驟1010處,過程1000可包括經由互動引起模組916基於控制器輸入及集線器輸入而引起虛擬環境中之互動。For example, as described above with respect to FIG. 9 , at step 1002 , process 1000 may include coupling a controller to a controller hub via controller coupling module 908 . The controller is configured for use by users with limited mobility. The controller may include an actuator with six degrees of freedom. At step 1004, process 1000 may include detecting controller input to the controller along each of the six degrees of freedom via controller input detection module 910. At step 1006 , process 1000 may include coupling the accessory to the controller hub via controller hub coupling module 912 . At step 1008 , process 1000 may include detecting hub input from an accessory of the controller hub via hub input detection module 914 . At step 1010, process 1000 may include causing interaction in the virtual environment based on the controller input and the hub input via the interaction causing module 916.

根據態樣,控制器經組態以在無控制器集線器之情況下經由頭戴式顯示器使用,該頭戴式顯示器經組態以將六自由度控制轉換成頭戴式顯示器或控制器中之一者或兩者的六自由度運動。Depending on the aspect, the controller is configured for use via a head mounted display without a controller hub, and the head mounted display is configured to convert six degrees of freedom control into either the head mounted display or the controller. Six degrees of freedom motion for one or both.

根據態樣,致動器包含操縱桿。Depending on the aspect, the actuator includes a joystick.

根據態樣,致動器包含旋鈕。Depending on the aspect, the actuator includes a knob.

根據態樣,致動器可推動。Depending on the configuration, the actuator can push.

根據態樣,致動器包含感測沿著六自由度中之各者之運動輸入的感測器。According to aspects, the actuator includes a sensor that senses motion input along each of the six degrees of freedom.

根據態樣,控制器包含用於上/下、後退/向前、上/下、滾動、偏航及/或俯仰之感測器。Depending on the aspect, the controller includes sensors for up/down, back/forward, up/down, roll, yaw and/or pitch.

根據態樣,配件包含按鈕、觸發器、感測器及額外控制器功能性。Depending on the form, accessories include buttons, triggers, sensors and additional controller functionality.

根據態樣,控制器集線器包含定向襯墊/定向襯墊之功能性。Depending on the mode, the controller hub contains directional pad/directional pad functionality.

根據態樣,控制器集線器包含用於將一或多個外部控制器電耦接至控制器集線器之複數個控制器埠。According to aspects, a controller hub includes a plurality of controller ports for electrically coupling one or more external controllers to the controller hub.

根據態樣,複數個控制器埠中之各者包含USB-A連接、微USB連接、迷你0USB連接、USB-C連接件及雷電連接。Depending on the mode, each of the plurality of controller ports includes a USB-A connection, a micro-USB connection, a mini-0 USB connection, a USB-C connection, and a thunderbolt connection.

圖11為說明可藉以實施本發明技術之態樣之範例性電腦系統1100的方塊圖。在某些態樣中,電腦系統1100可使用在專屬伺服器中、整合至另一實體中或跨多個實體而分佈的硬體或軟體與硬體之組合來實施。11 is a block diagram illustrating an exemplary computer system 1100 in which the techniques of this disclosure may be implemented. In some aspects, computer system 1100 may be implemented using hardware, or a combination of software and hardware, on a dedicated server, integrated into another entity, or distributed across multiple entities.

電腦系統1100(例如,伺服器及/或用戶端)包括用於傳達資訊之匯流排1108或其他通信機構,以及與匯流排1108耦接以用於處理資訊之處理器1102。藉助於範例,電腦系統1100可藉由一或多個處理器1102實施。處理器1102可為通用微處理器、微控制器、數位信號處理器(Digital Signal Processor;DSP)、特殊應用積體電路(Application Specific Integrated Circuit;ASIC)、場可程式化閘陣列(Field Programmable Gate Array;FPGA)、可程式化邏輯裝置(Programmable Logic Device;PLD)、控制器、狀態機、閘控邏輯、離散硬體組件或可進行資訊之運算或其他操控的任一其他適合的實體。Computer system 1100 (eg, servers and/or clients) includes a bus 1108 or other communications mechanism for communicating information, and a processor 1102 coupled to bus 1108 for processing information. By way of example, computer system 1100 may be implemented with one or more processors 1102 . The processor 1102 can be a general-purpose microprocessor, a microcontroller, a digital signal processor (Digital Signal Processor; DSP), an application specific integrated circuit (Application Specific Integrated Circuit; ASIC), or a field programmable gate array (Field Programmable Gate). Array; FPGA), programmable logic device (Programmable Logic Device; PLD), controller, state machine, gate control logic, discrete hardware component, or any other suitable entity that can perform calculations or other manipulations of information.

除硬體以外,電腦系統1100可包括為所討論之電腦程式創建執行環境的程式碼,例如,構成處理器韌體、協定堆疊、資料庫管理系統、作業系統或儲存於所包括記憶體1104中之前述各者中之一或多者的組合之程式碼,所包括記憶體諸如隨機存取記憶體(Random Access Memory;RAM)、快閃記憶體、唯讀記憶體(Read-Only Memory;ROM)、可程式化唯讀記憶體(Programmable Read-Only Memory;PROM)、可抹除PROM(Erasable PROM;EPROM)、暫存器、硬碟、可移磁碟、CD-ROM、DVD或任一其他適合的儲存裝置,其耦接匯流排1108以用於儲存待由處理器1102執行的資訊及指令。處理器1102及記憶體1104可由專用邏輯電路系統補充或併入於專用邏輯電路系統中。In addition to hardware, computer system 1100 may include code that creates an execution environment for the computer programs in question, for example, constituting processor firmware, protocol stacks, database management systems, operating systems, or stored in included memory 1104 Program code that is a combination of one or more of the above, including memory such as random access memory (Random Access Memory; RAM), flash memory, and read-only memory (Read-Only Memory; ROM) ), Programmable Read-Only Memory (PROM), Erasable PROM (EPROM), scratchpad, hard disk, removable disk, CD-ROM, DVD or any Other suitable storage devices are coupled to bus 1108 for storing information and instructions to be executed by processor 1102. The processor 1102 and memory 1104 may be supplemented by or incorporated into special purpose logic circuitry.

指令可儲存於記憶體1104中,並且根據所屬技術領域中具有通常知識者熟知之任何方法,在亦即電腦可讀取媒體上編碼之電腦程式指令的一或多個模組的一或多個電腦程式產品中實施,以供電腦系統1100執行或控制電腦系統1100之操作,該些指令包括但不限於諸如以下之電腦語言:資料導向語言(例如,SQL、dBase)、系統語言(例如,C、Objective-C、C++、彙編)、架構語言(例如,Java、.NET)及應用語言(例如,PHP、Ruby、Perl、Python)。指令亦可以電腦語言實施,諸如陣列語言、特性導向語言、彙編語言、製作語言、命令行介面語言、編譯語言、並行語言、波形括號語言、資料流語言、資料結構式語言、宣告式語言、深奧語言、擴展語言、第四代語言、函數語言、互動模式語言、解譯語言、反覆語言、串列為基的語言、小語言、以邏輯為基的語言、機器語言、巨集語言、元程式設計語言、多重範型語言(multiparadigm language)、數值分析、非英語語言、物件導向分類式語言、物件導向基於原型的語言、場外規則語言、程序語言、反射語言、基於規則的語言、指令碼處理語言、基於堆疊的語言、同步語言、語法處置語言、視覺語言、wirth語言及基於xml的語言。記憶體1104亦可用於在待由處理器1102執行之指令的執行期間儲存暫時性變數或其他中間資訊。Instructions may be stored in memory 1104 and one or more modules of computer program instructions encoded on a computer-readable medium according to any method known to one of ordinary skill in the art. Implemented in computer program products for the computer system 1100 to execute or control the operation of the computer system 1100, these instructions include but are not limited to computer languages such as the following: data-oriented languages (for example, SQL, dBase), system languages (for example, C , Objective-C, C++, Assembly), architectural languages (e.g., Java, .NET), and application languages (e.g., PHP, Ruby, Perl, Python). Instructions can also be implemented in computer languages, such as array languages, feature-oriented languages, assembly languages, production languages, command line interface languages, compiled languages, parallel languages, curly bracket languages, data flow languages, data structured languages, declarative languages, esoteric languages Languages, extended languages, fourth-generation languages, functional languages, interactive model languages, interpreted languages, iterative languages, serial-based languages, small languages, logic-based languages, machine languages, macro languages, metaprograms Design languages, multiparadigm languages, numerical analysis, non-English languages, object-oriented classification languages, object-oriented prototype-based languages, off-site rule languages, procedural languages, reflective languages, rule-based languages, script processing Languages, stack-based languages, synchronization languages, syntax processing languages, visual languages, wirth languages and xml-based languages. Memory 1104 may also be used to store temporary variables or other intermediate information during execution of instructions to be executed by processor 1102.

如本文所論述之電腦程式未必對應於檔案系統中之檔案。可將程式儲存於保存其他程式或資料(例如,儲存於標示語言文件中之一或多個指令碼)之檔案的一部分中、儲存於專用於所討論程式之單一檔案中,或儲存於多個經協調檔案(例如,儲存一或多個模組、子程式或部分程式碼的檔案)中。電腦程式可經部署以在一台電腦上或在位於一個位點或跨越多個位點分佈且由通信網路互連之多台電腦上執行。本說明書中描述的程序及邏輯流程可由一或多個可程式化處理器執行,該些可程式化處理器執行一或多個電腦程式以藉由對輸入資料進行操作且產生輸出來進行功能。Computer programs as discussed herein do not necessarily correspond to files in a file system. A program may be stored as part of a file that holds other programs or data (for example, one or more scripts in a markup language file), in a single file dedicated to the program in question, or in multiple In a coordinated file (for example, a file that stores one or more modules, subroutines, or portions of code). A computer program may be deployed to execute on one computer or on multiple computers located at one site or distributed across multiple sites and interconnected by a communications network. The programs and logic flows described in this specification may be executed by one or more programmable processors that execute one or more computer programs to perform functions by operating on input data and producing output.

電腦系統1100進一步包括與匯流排1108耦接以用於儲存資訊及指令之資料儲存裝置1106,諸如磁碟或光碟。電腦系統1100可經由輸入/輸出模組1110耦接至各種裝置。輸入/輸出模組1110可為任何輸入/輸出模組。範例性輸入/輸出模組1110包括資料埠,諸如USB埠。輸入/輸出模組1110經組態以連接至通信模組1112。範例性通信模組1112包括網路連接介面卡,諸如乙太網卡及數據機。在某些態樣中,輸入/輸出模組1110經組態以連接至複數個裝置,諸如輸入裝置1114及/或輸出裝置1116。範例性輸入裝置1114包括鍵盤及指標裝置,例如滑鼠或軌跡球,使用者可藉由該指標裝置將輸入提供至電腦系統1100。其他種類之輸入裝置1114亦可用以提供與使用者之互動,諸如觸覺輸入裝置、視覺輸入裝置、音訊輸入裝置或腦機介面裝置。舉例而言,提供至使用者之回饋可為任何形式之感測回饋,例如視覺回饋、聽覺回饋或觸覺回饋,且可從使用者接收任何形式之輸入,包括聲輸入、語音輸入、觸覺輸入或腦波輸入。範例性輸出裝置1116包括用於向使用者顯示資訊之顯示裝置,諸如液晶顯示器(liquid crystal display;LCD)監測器。Computer system 1100 further includes a data storage device 1106, such as a magnetic disk or optical disk, coupled to bus 1108 for storing information and instructions. Computer system 1100 may be coupled to various devices via input/output modules 1110 . Input/output module 1110 can be any input/output module. Exemplary input/output module 1110 includes a data port, such as a USB port. Input/output module 1110 is configured to connect to communication module 1112 . Exemplary communication modules 1112 include network connection interface cards, such as Ethernet cards and modems. In some aspects, input/output module 1110 is configured to connect to a plurality of devices, such as input device 1114 and/or output device 1116 . Exemplary input devices 1114 include a keyboard and a pointing device, such as a mouse or trackball, through which a user can provide input to computer system 1100 . Other types of input devices 1114 may also be used to provide interaction with the user, such as tactile input devices, visual input devices, audio input devices, or brain-computer interface devices. For example, feedback provided to the user may be any form of sensory feedback, such as visual feedback, auditory feedback, or tactile feedback, and any form of input may be received from the user, including acoustic input, voice input, tactile input, or Brainwave input. Exemplary output devices 1116 include display devices, such as liquid crystal display (LCD) monitors, for displaying information to a user.

根據本揭示之一個態樣,上述遊戲系統可回應於處理器1102執行記憶體1104中含有之一或多個指令之一或多個序列而使用電腦系統1100實施。此類指令可從諸如資料儲存裝置1106之另一機器可讀取媒體讀取至記憶體1104中。主記憶體1104中所含有之指令序列的執行使得處理器1102進行本文中所描述之過程步驟。呈多處理配置之一或多個處理器亦可用以執行記憶體1104中所含有的指令序列。在替代態樣中,硬連線電路系統可代替軟體指令使用或與軟體指令組合使用,以實施本揭示之各種態樣。因此,本揭示之態樣不限於硬體電路系統及軟體之任何特定組合。According to one aspect of the present disclosure, the game system described above may be implemented using the computer system 1100 in response to the processor 1102 executing one or more sequences of one or more instructions contained in the memory 1104 . Such instructions may be read into memory 1104 from another machine-readable medium, such as data storage device 1106 . Execution of sequences of instructions contained in main memory 1104 causes processor 1102 to perform the process steps described herein. One or more processors in a multi-processing configuration may also be used to execute sequences of instructions contained in memory 1104 . In alternative aspects, hardwired circuitry may be used in place of or in combination with software instructions to implement aspects of the present disclosure. Therefore, the present disclosure is not limited to any specific combination of hardware circuitry and software.

本說明書中所描述之主題的各種態樣可實施於計算系統中,該計算系統包括後端組件,例如資料伺服器,或包括中間軟體組件,例如應用程式伺服器,或包括前端組件,例如具有使用者可經由其與本說明書中所描述之主題的實施互動之圖形使用者介面或網路瀏覽器的用戶端電腦,或一或多個此類後端組件、中間軟體組件或前端組件之任何組合。系統之組件可藉由數位資料通信之任何形式或媒體(例如,通信網路)互連。通信網路可包括例如LAN、WAN、網際網路及其類似者中之任一或多者。另外,通信網路可包括但不限於例如以下網路拓樸中之任何一或多者,包括匯流排網路、星形網路、環形網路、網狀網路、星形匯流排網路、樹或階層式網路或其類似者。通信模組可例如為數據機或乙太網卡。Various aspects of the subject matter described in this specification may be implemented in computing systems that include back-end components, such as data servers, or include middleware components, such as application servers, or include front-end components, such as having A client computer through which a user may interact with implementations of the subject matter described in this specification through a graphical user interface or web browser, or any of one or more such back-end components, middleware components, or front-end components combination. The components of the system may be interconnected by any form or medium of digital data communication (eg, communications network). A communication network may include, for example, any one or more of a LAN, a WAN, the Internet, and the like. In addition, the communication network may include, but is not limited to, any one or more of the following network topologies, including bus network, star network, ring network, mesh network, star bus network , tree or hierarchical network or the like. The communication module may be, for example, a modem or an Ethernet card.

電腦系統1100可包括用戶端及伺服器。用戶端及伺服器一般彼此遠離且通常經由通信網路進行互動。用戶端及伺服器之關係藉助於在各別電腦上運行,且彼此具有主從式關係的電腦程式產生。電腦系統1100可為例如但不限於桌上型電腦、膝上型電腦或平板電腦。電腦系統1100亦可嵌入於另一裝置中,例如但不限於行動電話、PDA、行動音訊播放器、全球定位系統(Global Positioning System;GPS)接收器、視訊遊戲控制台及/或電視機上盒。Computer system 1100 may include clients and servers. Clients and servers are generally remote from each other and typically interact over a communications network. The relationship between client and server is created by computer programs that run on separate computers and have a master-slave relationship with each other. Computer system 1100 may be, for example, but not limited to, a desktop computer, a laptop computer, or a tablet computer. Computer system 1100 may also be embedded in another device, such as but not limited to a mobile phone, PDA, mobile audio player, Global Positioning System (GPS) receiver, video game console and/or television top box .

如本文中所使用之術語「機器可讀取儲存媒體」或「電腦可讀取媒體」指參與將指令提供至處理器1102以供執行之任何一或多個媒體。此類媒體可呈許多形式,包括但不限於非揮發性媒體、揮發性媒體及傳輸媒體。非揮發性媒體包括例如光碟或磁碟,諸如資料儲存裝置1106。揮發性媒體包括動態記憶體,諸如記憶體1104。傳輸媒體包括同軸纜線、銅線及光纖,包括包含匯流排1108之導線。電腦可讀取媒體之常見形式包括例如軟碟、可撓性磁碟、硬碟、磁帶、任何其他磁媒體、CD-ROM、DVD、任何其他光學媒體、打孔卡、紙帶、具有孔圖案之任何其他物理媒體、RAM、PROM、EPROM、FLASH EPROM、任何其他記憶體晶片或卡匣,或可供電腦讀取之任何其他媒體。機器可讀取儲存媒體可為機器可讀取儲存裝置、機器可讀取儲存基板、記憶體裝置、影響機器可讀取傳播信號之物質的組成物,或其中之一或多者的組合。The term "machine-readable storage medium" or "computer-readable medium" as used herein refers to any medium or media that participates in providing instructions to processor 1102 for execution. Such media can take many forms, including, but not limited to, non-volatile media, volatile media, and transmission media. Non-volatile media include, for example, optical or magnetic disks, such as data storage device 1106 . Volatile media includes dynamic memory, such as memory 1104. Transmission media include coaxial cable, copper wire, and fiber optics, including the wires including bus 1108 . Common forms of computer-readable media include, for example, floppy disks, flexible disks, hard disks, tapes, any other magnetic media, CD-ROMs, DVDs, any other optical media, punched cards, paper tape, tapes with hole patterns any other physical media, RAM, PROM, EPROM, FLASH EPROM, any other memory chip or cartridge, or any other media that can be read by a computer. The machine-readable storage medium may be a machine-readable storage device, a machine-readable storage substrate, a memory device, a composition of matter that affects a machine-readable propagation signal, or a combination of one or more thereof.

在使用者計算系統1100讀取遊戲資料且提供遊戲時,資訊可從遊戲資料讀取且儲存於諸如記憶體1104之記憶體裝置中。另外,經由網路匯流排1108存取之來自記憶體1104伺服器或資料儲存器1106之資料可經讀取且加載至記憶體1104中。儘管資料描述為發現於記憶體1104中,但應理解,該資料不必儲存於記憶體1104中,且可儲存於處理器1102可存取或分佈於若干媒體中之其他記憶體中,諸如資料儲存器1106。As the user computing system 1100 reads the game data and serves the game, the information may be read from the game data and stored in a memory device such as memory 1104 . Additionally, data from the memory 1104 server or data store 1106 accessed via the network bus 1108 may be read and loaded into the memory 1104 . Although the data is described as being found in memory 1104, it should be understood that the data need not be stored in memory 1104 and may be stored in other memories accessible to processor 1102 or distributed among a number of media, such as data storage Device 1106.

如本文中所使用,在一系列項目之前之藉由術語「及」或「或」分離該些項目中之任一者的片語「中之至少一者」修改清單整體,而非清單中之各成員(亦即,各項目)。片語「中之至少一者」不需要選擇至少一個項目;實情為,該片語允許包括該些項目中之任一者中之至少一者及/或該些項目之任何組合中之至少一者及/或該些項目中之各者中之至少一者之涵義。藉助於範例,片語「A、B及C中之至少一者」或「A、B或C中之至少一者」各自指僅A、僅B或僅C;A、B及C之任何組合及/或A、B及C中之各者中的至少一者。As used herein, the phrase "at least one of" preceding a list of items by the terms "and" or "or" separating any of those items modifies the list as a whole, rather than the items in the list Each member (that is, each project). The phrase "at least one of" does not require the selection of at least one of the items; in fact, the phrase is allowed to include at least one of any of the items and/or at least one of any combination of the items and/or the meaning of at least one of each of these items. By way of example, the phrase "at least one of A, B and C" or "at least one of A, B or C" means respectively only A, only B or only C; any combination of A, B and C and/or at least one of each of A, B and C.

就本說明書或申請專利範圍中使用術語「包括」、「具有」或類似者而言,此類術語意欲以類似於術語「包含」在「包含」作為過渡詞用於申請專利範圍中時所解譯之方式而為包括性的。術語「範例性」在本文中用於意謂「充當範例、例子或說明」。不必將本文中描述為「例示性」之任何具體實例理解為比其他具體實例較佳或優於其他具體實例。To the extent that the terms "include," "have," or the like are used in this specification or the claimed scope, such terms are intended to be interpreted similarly to the term "includes" when "includes" is used as a transition word in the claimed scope. The translation is inclusive. The term "exemplary" is used herein to mean "serving as an example, example, or illustration." Any specific example described herein as "illustrative" is not necessarily to be construed as being better or superior to other specific examples.

除非具體陳述,否則以單數形式對元件之提及不意欲意謂「一個且僅一個」,而指「一或多個」。所屬技術領域中具有通常知識者已知或稍後將知曉的貫穿本揭示而描述的各種組態之元件的全部結構及功能均等物,以引用之方式明確地併入本文中,並且意欲由本發明技術涵蓋。此外,本文中所揭示之任何內容均不意欲專用於公眾,無論在以上描述中是否明確地敍述此揭示。Unless specifically stated otherwise, references to an element in the singular are not intended to mean "one and only one" but rather "one or more." All structural and functional equivalents of the elements in the various configurations described throughout this disclosure that are known or hereafter to be known to those skilled in the art are expressly incorporated herein by reference and are intended to be covered by this disclosure. Technology covered. Furthermore, nothing disclosed herein is intended to be exclusive to the public, whether or not such disclosure is explicitly recited in the description above.

儘管本說明書含有許多特性,但此等特性不應解釋為限制可主張之內容的範疇,而應解釋為對主題之特定實施的描述。在單獨具體實例之上下文中描述於本說明書中之某些特徵亦可在單一具體實例中以組合形式實施。相反地,在單一具體實例的上下文中所描述的各種特徵亦可單獨地在多個具體實例中實施或以任何適合的子組合實施。此外,儘管上文可將特徵描述為以某些組合起作用且甚至最初按此來主張,但來自所主張組合之一或多個特徵在一些狀況下可自該組合刪除,且所主張之組合可針對子組合或子組合之變化。Although this specification contains numerous features, these features should not be construed as limiting the scope of what may be claimed but rather as descriptions of particular implementations of the subject matter. Certain features that are described in this specification in the context of separate embodiments can also be implemented in combination in a single embodiment. Conversely, various features that are described in the context of a single embodiment can also be implemented in multiple embodiments separately or in any suitable subcombination. Furthermore, although features may be described above as functioning in certain combinations and even initially claimed as such, one or more features from a claimed combination may in some cases be deleted from that combination, and the claimed combination Can target sub-combinations or changes in sub-combinations.

本說明書之主題已關於特定態樣加以描述,但其他態樣可經實施且在以下申請專利範圍之範疇內。舉例而言,儘管在圖式中以特定次序來描繪操作,但不應將此理解為需要以所顯示之特定次序或以順序次序執行此類操作,或進行所有所說明操作以達成合乎需要之結果。申請專利範圍中所陳述之動作可以不同次序進行且仍達成所需結果。作為一個範例,附圖中描繪之過程未必需要顯示之特定次序,或順序次序,以達成合乎需要之結果。在某些環境中,多任務及並行處理可為有利的。此外,不應將上文所描述之態樣中之各種系統組件的分離理解為在所有態樣中皆要求此分離,且應理解,所描述之程式組件及系統可大體一同整合於單個軟體產品或封裝至多個軟體產品中。其他變化是在以下申請專利範圍之範圍內。The subject matter of this specification has been described with respect to certain aspects, but other aspects may be practiced and are within the scope of the following claims. For example, although operations are depicted in a specific order in the drawings, this should not be understood to require that such operations be performed in the specific order shown, or in sequential order, or that all illustrated operations be performed to achieve desirable results. result. The actions recited in the claimed scope may be performed in a different order and still achieve the desired results. As an example, the processes depicted in the figures do not necessarily require the specific order shown, or sequential order, to achieve desirable results. In certain environments, multitasking and parallel processing can be advantageous. Furthermore, the separation of various system components in the aspects described above should not be construed as requiring such separation in all aspects, and it is understood that the program components and systems described may generally be integrated together in a single software product Or packaged into multiple software products. Other changes are within the scope of the following patent applications.

100:計算系統 101:計算裝置 102:計算裝置 103:計算裝置 110:處理器 120:輸入裝置 130:顯示器 140:I/O裝置 150:記憶體 160:程式記憶體 162:作業系統 164:XR工作系統 166:其他應用程式 170:資料記憶體 200:HMD 205:前部剛體 210:帶 215:慣性運動單元 220:位置感測器 225:定位器 230:計算單元 245:電子顯示器 250:混合實境HMD系統 252:混合實境HMD 254:核心處理組件 256:鏈路 258:透通顯示器 260:框架 300:手持式控制器 310:使用者輸入表面 320A:第一使用者輸入鍵 320B:使用者輸入鍵 320C:使用者輸入鍵 330:夾具 340:籠狀物 345:外向表面 350:照明源 390:觸發器 395:結構腹板 401:旋鈕 411:向前側向運動 412:正交側向運動 413:向下運動 414:向前旋轉運動 415:正交旋轉運動 416:水平旋轉運動 500:無障礙控制器 501:搖桿 502:裝置主體 503:按鈕 600:無障礙控制器及集線器 601:控制器及集線器 602:複數個制動器裝置 603:外部控制器裝置 604:外部控制器裝置 700:控制器集線器 701:控制器主體 702a-n:外部控制器連接埠 703a:輸入制動器裝置 703c:輸入制動器裝置 704a-d:可按下按鈕 705:四路開關 800:六值座標系統 801:X軸 802:Y軸 803:Y軸 811:滾動 812:俯仰 813:偏航 900:系統 902:計算平台 904:遠端平台 906:機器可讀取指令 908:控制器耦接模組 910:控制器輸入偵測模組 912:控制器集線器耦接模組 914:集線器輸入偵測模組 916:互動引起模組 918:外部資源 920:電子儲存器 922:處理器 1000:過程 1002:步驟 1004:步驟 1006:步驟 1008:步驟 1010:步驟 1100:電腦系統 1102:處理器 1104:記憶體 1106:資料儲存裝置 1108:匯流排 1110:輸入/輸出模組 1112:通信模組 1114:輸入裝置 1116:輸出裝置 100:Computing system 101:Computing device 102:Computing device 103:Computing device 110: Processor 120:Input device 130:Display 140:I/O device 150:Memory 160:Program memory 162:Operating system 164:XR working system 166:Other applications 170:Data memory 200:HMD 205: Front rigid body 210:bring 215:Inertial motion unit 220: Position sensor 225:Locator 230:Computing unit 245: Electronic display 250: Mixed reality HMD system 252: Mixed Reality HMD 254: Core processing component 256:Link 258:Transparent display 260:Frame 300:Handheld controller 310:User input surface 320A: First user input key 320B: User input key 320C: User input key 330: Fixture 340:Cage 345:Extroverted surface 350: Illumination source 390:Trigger 395: Structural web 401: Knob 411: Forward and lateral movement 412: Orthogonal lateral motion 413:Downward movement 414: Forward rotational movement 415: Orthogonal rotational motion 416: Horizontal rotation movement 500:Accessibility Controller 501: rocker 502:Device body 503:Button 600: Accessibility controllers and hubs 601:Controller and hub 602: Multiple brake devices 603:External controller device 604:External controller device 700:Controller Hub 701:Controller body 702a-n: External controller port 703a: Input brake device 703c: Input brake device 704a-d: Buttons can be pressed 705: Four-way switch 800: Six-value coordinate system 801:X axis 802: Y axis 803: Y axis 811:Scroll 812:Pitch 813:Yaw 900:System 902:Computing platform 904:Remote platform 906: Machine-readable instructions 908:Controller coupling module 910:Controller input detection module 912:Controller hub coupling module 914: Hub input detection module 916: Interaction causes module 918:External resources 920: Electronic storage 922: Processor 1000:Process 1002: Steps 1004: Steps 1006: Steps 1008: Steps 1010: Steps 1100:Computer system 1102: Processor 1104:Memory 1106:Data storage device 1108:Bus 1110:Input/output module 1112: Communication module 1114:Input device 1116:Output device

為了容易地識別對任何特定元件或動作之論述,附圖標號之一或多個最高有效數位指首先引入彼元件之圖號。To easily identify discussion of any particular element or act, the most significant digit or digits of a reference number refer to the figure number in which that element first introduced.

[圖1]為說明可藉以操作所揭示技術之一些實施之裝置之概述的方塊圖。[FIG. 1] is a block diagram illustrating an overview of a device by which some implementations of the disclosed technology may be operated.

[圖2A]為根據一或多個實施之虛擬實境頭戴式顯示器(head-mounted display;HMD)的線圖。[FIG. 2A] is a line diagram of a virtual reality head-mounted display (HMD) according to one or more implementations.

[圖2B]為根據一或多個實施之包括混合實境HMD及核心處理組件之混合實境HMD系統的線圖。[FIG. 2B] is a line diagram of a mixed reality HMD system including a mixed reality HMD and core processing components in accordance with one or more implementations.

[圖3A]及[圖3B]說明根據一或多個實施之範例性人工實境系統之手持式控制器的等角視圖。[FIG. 3A] and [FIG. 3B] illustrate isometric views of a handheld controller of an exemplary artificial reality system in accordance with one or more implementations.

[圖4A]說明根據一或多個實施之範例無障礙控制器。[Figure 4A] illustrates an example accessibility controller in accordance with one or more implementations.

[圖4B]說明根據一或多個實施之圖4A之無障礙控制器的範例運動控制操作。[FIG. 4B] illustrates example motion control operations of the accessibility controller of FIG. 4A, in accordance with one or more implementations.

[圖5]說明根據一或多個實施之另一範例無障礙控制器。[Figure 5] illustrates another example accessibility controller in accordance with one or more implementations.

[圖6]說明根據一或多個實施之又一範例無障礙控制器及集線器。[Figure 6] illustrates yet another example accessibility controller and hub in accordance with one or more implementations.

[圖7]說明根據一或多個實施之又一範例無障礙控制器及集線器。[Figure 7] illustrates yet another example accessibility controller and hub in accordance with one or more implementations.

[圖8]說明根據一或多個實施之用於無障礙控制器的六度運動控制操作。[FIG. 8] illustrates six degrees of motion control operation for an accessibility controller in accordance with one or more implementations.

[圖9]說明根據一或多個實施之經組態以用於無障礙控制器及控制器集線器的系統。[Figure 9] illustrates a system configured for accessibility controllers and controller hubs in accordance with one or more implementations.

[圖10]說明根據本揭示之某些態樣之無障礙控制器及控制器集線器的範例流程圖。[FIG. 10] An example flow diagram illustrating an accessibility controller and controller hub in accordance with certain aspects of the present disclosure.

[圖11]為說明可藉以實施本發明技術之態樣之範例電腦系統(例如,表示用戶端及伺服器兩者)的方塊圖。[FIG. 11] is a block diagram illustrating an example computer system (e.g., representing both a client and a server) in which the techniques of this disclosure may be implemented.

在一或多個實施中,並非可需要各圖中之所有所描繪組件,且一或多個實施可包括圖中未顯示之額外組件。組件之配置及類型的變化可在不脫離本揭示之範圍的情況下進行。可在本揭示之範疇內利用額外組件、不同組件或更少組件。In one or more implementations, not all components depicted in each figure may be required, and one or more implementations may include additional components not shown in the figures. Changes in configuration and type of components may be made without departing from the scope of this disclosure. Additional components, different components, or fewer components may be utilized within the scope of this disclosure.

200:HMD 200:HMD

205:前部剛體 205: Front rigid body

210:帶 210:bring

215:慣性運動單元 215:Inertial motion unit

220:位置感測器 220: Position sensor

225:定位器 225:Locator

230:計算單元 230:Computing unit

245:電子顯示器 245: Electronic display

Claims (20)

一種用於向在一虛擬環境中具有受限行動性之使用者提供無障礙性的電腦實施方法,其包含: 將一控制器耦接至一控制器集線器,該控制器經組態以用於具有受限行動性之使用者,該控制器包含具有六自由度之一致動器; 偵測沿著該些六自由度中之各者至該控制器之控制器輸入; 將配件耦接至該控制器集線器; 偵測來自該控制器集線器之該些配件之集線器輸入;及 基於該些控制器輸入及該些集線器輸入而引起該虛擬環境中之互動。 A computer-implemented method for providing accessibility to users with limited mobility in a virtual environment, comprising: coupling a controller to a controller hub, the controller configured for use by a user with limited mobility, the controller including an actuator having six degrees of freedom; detecting controller input to the controller along each of the six degrees of freedom; coupling accessories to the controller hub; Detect the hub input of the accessories from the controller hub; and Interactions in the virtual environment are caused based on the controller inputs and the hub inputs. 如請求項1之方法,其中該控制器經組態以在無該控制器集線器之情況下經由一頭戴式顯示器使用,該頭戴式顯示器經組態以將六自由度控制件轉換成該頭戴式顯示器或該控制器中之一者或兩者的六自由度運動。The method of claim 1, wherein the controller is configured for use without the controller hub via a head mounted display, the head mounted display configured to convert six degrees of freedom controls to the Six degrees of freedom motion for either or both the head-mounted display or the controller. 如請求項1之方法,其中該致動器包含一操縱桿或一旋鈕中之一者或兩者。The method of claim 1, wherein the actuator includes one or both of a joystick or a knob. 如請求項1之方法,其中該致動器可推動。The method of claim 1, wherein the actuator is pushable. 如請求項1之方法,其中該致動器包含感測沿著該些六自由度中之各者之運動輸入的感測器。The method of claim 1, wherein the actuator includes a sensor that senses motion input along each of the six degrees of freedom. 如請求項1之方法,其中該控制器包含用於上/下、後退/向前、上/下、滾動、偏航及/或俯仰之感測器。The method of claim 1, wherein the controller includes sensors for up/down, backward/forward, up/down, roll, yaw and/or pitch. 如請求項1之方法,其中該些配件包含按鈕、觸發器、感測器及額外控制器功能性。The method of claim 1, wherein the accessories include buttons, triggers, sensors and additional controller functionality. 如請求項1之方法,其中該控制器集線器包含一定向襯墊/一定向襯墊之功能性。The method of claim 1, wherein the controller hub includes a directional pad/a directional pad functionality. 如請求項1之方法,其中該控制器集線器包含複數個控制器埠,該複數個控制器埠用於將一或多個外部控制器電耦接至該控制器集線器。The method of claim 1, wherein the controller hub includes a plurality of controller ports, and the plurality of controller ports are used to electrically couple one or more external controllers to the controller hub. 如請求項8之方法,其中該複數個控制器埠中之各者包含一USB-A連接、一微USB連接、一迷你USB連接、一USB-C連接及一雷電連接。The method of claim 8, wherein each of the plurality of controller ports includes a USB-A connection, a micro USB connection, a mini USB connection, a USB-C connection, and a Thunderbolt connection. 一種經組態以用於向在一虛擬環境中具有受限行動性之使用者提供無障礙性的系統,該系統包含: 一或多個硬體處理器,其藉由機器可讀取指令經組態以: 將一控制器耦接至一控制器集線器,該控制器經組態以用於具有受限行動性之使用者,該控制器包含具有六自由度之一致動器,該致動器包含一操縱桿、一旋鈕及感測沿著該些六自由度中之各者之運動輸入的感測器; 偵測沿著該些六自由度中之各者至該控制器之控制器輸入; 將配件耦接至該控制器集線器; 偵測來自該控制器集線器之該些配件之集線器輸入;及 基於該些控制器輸入及該些集線器輸入而引起該虛擬環境中之互動。 A system configured for providing accessibility to users with limited mobility in a virtual environment, the system comprising: One or more hardware processors configured by machine-readable instructions to: A controller is coupled to a controller hub, the controller configured for use by a user with limited mobility, the controller including an actuator having six degrees of freedom, the actuator including a control A lever, a knob, and sensors that sense motion input along each of the six degrees of freedom; detecting controller input to the controller along each of the six degrees of freedom; coupling accessories to the controller hub; Detect the hub input of the accessories from the controller hub; and Interactions in the virtual environment are caused based on the controller inputs and the hub inputs. 如請求項11之系統,其中該致動器可推動。The system of claim 11, wherein the actuator is pushable. 如請求項11之系統,其中該控制器包含用於上/下、後退/向前、上/下、滾動、偏航及/或俯仰之感測器。The system of claim 11, wherein the controller includes sensors for up/down, backward/forward, up/down, roll, yaw and/or pitch. 如請求項11之系統,其中該些配件包含按鈕、觸發器、感測器及額外控制器功能性。The system of claim 11, wherein the accessories include buttons, triggers, sensors and additional controller functionality. 如請求項11之系統,其中該控制器集線器包含一定向襯墊/一定向襯墊之功能性。The system of claim 11, wherein the controller hub includes a directional pad/directional pad functionality. 如請求項11之系統,其中該控制器集線器包含複數個控制器埠,該複數個控制器埠用於將一或多個外部控制器電耦接至該控制器集線器,且其中該複數個控制器埠中之各者包含一USB-A連接、一微USB連接、一迷你USB連接、一USB-C連接及一雷電連接。The system of claim 11, wherein the controller hub includes a plurality of controller ports for electrically coupling one or more external controllers to the controller hub, and wherein the plurality of control ports Each of the ports includes a USB-A connection, a micro USB connection, a mini USB connection, a USB-C connection, and a Thunderbolt connection. 一種其上體現有指令之非暫時性電腦可讀取儲存媒體,該些指令可由一或多個處理器執行以進行用於向在一虛擬環境中具有受限行動性之使用者提供無障礙性的方法,該方法包含: 將一控制器耦接至一控制器集線器,該控制器經組態以用於具有受限行動性之使用者,該控制器包含具有六自由度之一致動器,該致動器包含一操縱桿、一旋鈕及感測沿著該些六自由度中之各者之運動輸入的感測器,該控制器包含用於上/下、後退/向前、上/下、滾動、偏航及/或俯仰之感測器; 偵測沿著該些六自由度中之各者至該控制器之控制器輸入; 將配件耦接至該控制器集線器,該些配件包含按鈕、觸發器、感測器及額外控制器功能性; 偵測來自該控制器集線器之該些配件之集線器輸入;及 基於該些控制器輸入及該些集線器輸入而引起該虛擬環境中之互動。 A non-transitory computer-readable storage medium having instructions embodied thereon that are executable by one or more processors for providing accessibility to users with limited mobility in a virtual environment method, which contains: A controller is coupled to a controller hub, the controller configured for use by a user with limited mobility, the controller including an actuator having six degrees of freedom, the actuator including a control A lever, a knob, and sensors that sense motion input along each of the six degrees of freedom, the controller including controls for up/down, back/forward, up/down, roll, yaw, and /or pitch sensor; detecting controller input to the controller along each of the six degrees of freedom; Coupling accessories to the controller hub, the accessories including buttons, triggers, sensors, and additional controller functionality; Detect the hub input of the accessories from the controller hub; and Interactions in the virtual environment are caused based on the controller inputs and the hub inputs. 如請求項17之非暫時性電腦可讀取儲存媒體,其中該控制器集線器包含複數個控制器,該複數個控制器用於將一或多個外部控制器電耦接至該控制器集線器,且其中該複數個控制器埠中之各者包含一USB-A連接、一微USB連接、一迷你USB連接、一USB-C連接及一雷電連接。The non-transitory computer readable storage medium of claim 17, wherein the controller hub includes a plurality of controllers for electrically coupling one or more external controllers to the controller hub, and Each of the plurality of controller ports includes a USB-A connection, a micro USB connection, a mini USB connection, a USB-C connection and a Thunderbolt connection. 如請求項17之非暫時性電腦可讀取儲存媒體,其中該致動器可推動。The non-transitory computer-readable storage medium of claim 17, wherein the actuator is pushable. 如請求項17之非暫時性電腦可讀取儲存媒體,其中該控制器集線器包含一定向襯墊/一定向襯墊之功能性。The non-transitory computer readable storage medium of claim 17, wherein the controller hub includes a directional pad/a directional pad functionality.
TW112114242A 2022-05-03 2023-04-17 Accessible controller and controller hub TW202345950A (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US202217735982A 2022-05-03 2022-05-03
US17/735,982 2022-05-03

Publications (1)

Publication Number Publication Date
TW202345950A true TW202345950A (en) 2023-12-01

Family

ID=86387291

Family Applications (1)

Application Number Title Priority Date Filing Date
TW112114242A TW202345950A (en) 2022-05-03 2023-04-17 Accessible controller and controller hub

Country Status (2)

Country Link
TW (1) TW202345950A (en)
WO (1) WO2023215167A1 (en)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040160414A1 (en) * 1996-07-05 2004-08-19 Armstrong Brad A. Image controller
US10286304B2 (en) * 2016-08-30 2019-05-14 Microsoft Technology Licensing, Llc Controller having accessory connectors for externalizing controls

Also Published As

Publication number Publication date
WO2023215167A1 (en) 2023-11-09

Similar Documents

Publication Publication Date Title
CN110832439B (en) Luminous user input device
JP7411133B2 (en) Keyboards for virtual reality display systems, augmented reality display systems, and mixed reality display systems
JP7118007B2 (en) Visual backlight around the field of view
KR102194164B1 (en) Holographic object feedback
US9880619B2 (en) Virtual reality system with a finger-wearable control
US11188156B2 (en) Artificial reality notification triggers
CN102609186B (en) Access information also interacts
KR20230152826A (en) Methods for manipulating objects in an environment
US11232643B1 (en) Collapsing of 3D objects to 2D images in an artificial reality environment
US11294475B1 (en) Artificial reality multi-modal input switching model
US20190302903A1 (en) Six dof input device
US20220291808A1 (en) Integrating Artificial Reality and Other Computing Devices
TW202312740A (en) Parallel video call and artificial reality spaces
TW202345950A (en) Accessible controller and controller hub
US11726578B1 (en) Scrolling and navigation in virtual reality
US20230011453A1 (en) Artificial Reality Teleportation Via Hand Gestures
TW202409795A (en) Self-tracking controller for interaction in an artificial reality environment
US20230359267A1 (en) Self-tracking controller for interaction in an artificial reality environment
US20230239356A1 (en) Interaction controls in artificial reality
US20240104871A1 (en) User interfaces for capturing media and manipulating virtual objects
EP4354262A1 (en) Pre-scanning and indexing nearby objects during load
TW202348001A (en) Interaction controls in artificial reality
KR20230133356A (en) User interfaces and device settings based on user identification
WO2024064350A1 (en) User interfaces for capturing stereoscopic media
WO2023122799A1 (en) Methods for sharing content and interacting with physical devices in a three-dimensional environment