VIRTUAL/AUGMENTED REALITY INPUT DEVICE
First Claim
1. A controller configured to control a pointer in a virtual 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 an 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 virtual reality environment.
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.
80 Citations
32 Claims
-
1. A controller configured to control a pointer in a virtual 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 an 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 virtual reality environment. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. A virtual reality computing system comprising:
-
a display screen configured for rendering a virtual 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 virtual reality computing system; receive, from the gyroscope, angular velocity data describing a rotational position of the virtual reality computing system; receive, via the wireless communications circuit, first movement data from a controller for the virtual reality computing system, the first movement data describing an orientation of the controller; determine second movement data describing an orientation of the virtual 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; and render on the display screen a pointer based on the first movement data and the second movement data. - View Dependent Claims (16, 17, 18, 19, 20, 21, 22)
-
-
23. 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; 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; 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; and modifying the virtual object based on the received first input event data. - View Dependent Claims (24, 25, 26, 27, 28, 29, 30, 31, 32)
-
Specification