Virtual/augmented reality input device
First Claim
1. A controller configured to control a pointer in an augmented reality environment, the controller comprising:
- a multi-axis accelerometer;
a gyroscope;
a touchpad;
a wireless communications circuit;
a processor; and
a memory storing instructions that when executed by the processor cause the processor to;
receive, from the multi-axis accelerometer, acceleration data describing a direction and a magnitude of force affecting the controller;
receive, from the gyroscope, angular velocity data describing a rotational position of the controller;
generate movement data describing a six degree of freedom position and orientation of the controller, the movement data based on at least one of the acceleration data or the angular velocity data; and
communicate, via the wireless communications circuit, the movement data to a computing device configured to generate a rendering of the augmented reality environment,wherein the instructions further cause the processor to use a swipe boundary line to recognize gestures performed on the touchpad, the swipe boundary line being based on testing.
2 Assignments
0 Petitions
Accused Products
Abstract
A controller configured to control a pointer in a virtual reality environment includes a multi-axis magnetic field sensor, a multi-axis accelerometer, a gyroscope, a touchpad, and a wireless communications circuit. The controller can also include a processor and a memory storing instructions that when executed by the processor, cause the processor to obtain geomagnetic field data from the multi-axis magnetic field sensor, obtain acceleration data describing a direction and a magnitude of force affecting the controller from the multi-axis accelerometer, and obtain angular velocity data describing a rotational position of the controller from the gyroscope. The processor can communicate movement data to a computing device configured to generate a rendering of the virtual reality environment, the movement data describing an orientation of the controller wherein the movement data is based on at least one of the geomagnetic field data, the acceleration data, or the angular velocity data.
-
Citations
29 Claims
-
1. A controller configured to control a pointer in an augmented reality environment, the controller comprising:
-
a multi-axis accelerometer; a gyroscope; a touchpad; a wireless communications circuit; a processor; and a memory storing instructions that when executed by the processor cause the processor to; receive, from the multi-axis accelerometer, acceleration data describing a direction and a magnitude of force affecting the controller; receive, from the gyroscope, angular velocity data describing a rotational position of the controller; generate movement data describing a six degree of freedom position and orientation of the controller, the movement data based on at least one of the acceleration data or the angular velocity data; and communicate, via the wireless communications circuit, the movement data to a computing device configured to generate a rendering of the augmented reality environment, wherein the instructions further cause the processor to use a swipe boundary line to recognize gestures performed on the touchpad, the swipe boundary line being based on testing. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. An augmented reality computing system comprising:
-
a display screen configured for rendering an augmented reality environment and for being disposed within a head-mounted display (HMD); a multi-axis accelerometer; a gyroscope; a wireless communications circuit; a processor; and a memory storing instructions that when executed by the processor cause the processor to; receive, from the multi-axis accelerometer, acceleration data describing a direction and a magnitude of force affecting the augmented reality computing system; receive, from the gyroscope, angular velocity data describing a rotational position of the augmented reality computing system; receive, via the wireless communications circuit, first movement data from a controller for the augmented reality computing system, the first movement data describing an orientation of the controller; determine second movement data describing an orientation of the augmented reality computing system relative to the controller, the second movement data based on the acceleration data, the angular velocity data and the first movement data; render on the display screen a pointer based on the first movement data and the second movement data; render a calibration user interface element at a calibration location on the display screen; and determine a calibration value based on the first movement data, the second movement data, and the calibration location. - View Dependent Claims (15, 16, 17, 18, 19)
-
-
20. A method for manipulating a virtual object in a virtual environment, the method comprising:
-
receiving, by a computing system, first movement data from a controller of the virtual environment, the first movement data describing a first orientation of the controller; receiving, by the computer system, acceleration data and angular velocity data from the controller; determining, by the computer system, second movement data based on the acceleration data, the angular velocity data and the first movement data; rendering on a display screen of the computing system, a pointer at a pointer position within the virtual environment, the pointer position based on the received first movement data and the second movement data; setting, based on the pointer position, an anchor point on a virtual object rendered at the pointer position; receiving first input event data from the controller; modifying the virtual object based on the received first input event data; render a calibration user interface element at a calibration location on the display screen; and determine a calibration value based on the first movement data, the second movement data, and the calibration location. - View Dependent Claims (21, 22, 23, 24, 25, 26, 27, 28, 29)
-
Specification