Method and system for receiving gesture input via virtual control objects
First Claim
1. A computer-implemented method for implementing a virtual control in a virtual reality environment, the method comprising:
- receiving data indicating a physical environment state;
processing, by a processor, the data indicating the physical environment state to determine a physical position of at least one user;
determining, by the processor and based on the position of the at least one user, at least one physical anchor position within the physical environment state;
mapping, by virtual environment state management circuitry, the physical anchor position to a virtual anchor position within a virtual environment state, wherein the virtual environment state includes a plurality of virtual coordinate positions that map to at least a portion of the physical environment state;
predefining, by the virtual environment state management circuitry, a fixed virtual coordinate position for at least one virtual control from the plurality of virtual coordinate positions by;
identifying a virtual control positioning offset indicating a relative position with respect to the virtual anchor position; and
applying the virtual control positioning offset to the virtual anchor position to determine the fixed virtual coordinate position, wherein a first relative position between the fixed virtual coordinate position and the virtual anchor position corresponds to a second relative position between a particular physical coordinate position mapped to the fixed virtual coordinate position and the physical anchor position;
determining a view angle of the at least one user; and
only in response to determining that the view angle of the at least one user includes an area of a physical environment encompassing the fixed virtual coordinate position predefined by the virtual environment state management circuitry, instructing a display device configured to display the virtual environment state to display the virtual control at the fixed virtual coordinate position.
1 Assignment
0 Petitions
Accused Products
Abstract
Aspects of the present invention provide computer systems, apparatuses, computer-executable methods and one or more non-transitory computer-readable media for receiving gesture input via virtual controls. Examples include a computer-implemented method that includes receiving data indicating a physical environment state, processing the data to determine a physical position of at least one user, determining at least one physical anchor position within the physical environment state, mapping the physical anchor position to a virtual anchor position within a virtual environment state, wherein the virtual environment state includes a plurality of virtual coordinate positions that map to at least a portion of the physical environment state, determining a particular virtual coordinate position for at least one virtual control from the plurality of virtual coordinate positions, and instructing a display device configured to display the virtual environment state to display the virtual control at the particular virtual coordinate position.
45 Citations
25 Claims
-
1. A computer-implemented method for implementing a virtual control in a virtual reality environment, the method comprising:
-
receiving data indicating a physical environment state; processing, by a processor, the data indicating the physical environment state to determine a physical position of at least one user; determining, by the processor and based on the position of the at least one user, at least one physical anchor position within the physical environment state; mapping, by virtual environment state management circuitry, the physical anchor position to a virtual anchor position within a virtual environment state, wherein the virtual environment state includes a plurality of virtual coordinate positions that map to at least a portion of the physical environment state; predefining, by the virtual environment state management circuitry, a fixed virtual coordinate position for at least one virtual control from the plurality of virtual coordinate positions by; identifying a virtual control positioning offset indicating a relative position with respect to the virtual anchor position; and applying the virtual control positioning offset to the virtual anchor position to determine the fixed virtual coordinate position, wherein a first relative position between the fixed virtual coordinate position and the virtual anchor position corresponds to a second relative position between a particular physical coordinate position mapped to the fixed virtual coordinate position and the physical anchor position; determining a view angle of the at least one user; and only in response to determining that the view angle of the at least one user includes an area of a physical environment encompassing the fixed virtual coordinate position predefined by the virtual environment state management circuitry, instructing a display device configured to display the virtual environment state to display the virtual control at the fixed virtual coordinate position. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A computer-implemented method for implementing a virtual control in a virtual reality environment, the method comprising:
-
receiving data indicating a physical environment state; processing, by a processor, the data indicating the physical environment state to determine a physical position of a physical object; determining, by the processor, based on the physical position of the physical object, at least one virtual anchor position within a virtual environment state; predefining, by virtual environment state management circuitry, a fixed virtual coordinate position of a virtual control in the virtual environment state relative to the virtual anchor position; mapping, by the virtual environment state management circuitry, the fixed virtual coordinate position to a physical position of the control in a physical environment corresponding to the physical environment state; determining, by the virtual environment state management circuitry, a view angle of at least one user; and only in response to determining that the view angle includes an area of a physical environment encompassing the fixed virtual coordinate position predefined by the virtual environment state management circuitry, instructing a display device configured to display the virtual environment state to display the virtual environment state such that the virtual control is displayed at the fixed virtual coordinate position. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20)
-
-
21. A non-transitory computer-readable storage medium comprising instructions, that, when executed by a processor, cause the processor to implement a virtual control in a virtual reality environment, by at least:
-
receiving data indicating a physical environment state; processing, by a processor, the data indicating the physical environment state to determine a physical position of a physical object; determining, by the processor, based on the physical position of the physical object, at least one virtual anchor position within a virtual environment state; predefining, by virtual environment state management circuitry, a fixed virtual coordinate position of a virtual control in the virtual environment state relative to the virtual anchor position; mapping, by the virtual environment state management circuitry, the fixed virtual coordinate position to a physical position of the control in a physical environment corresponding to the physical environment state; determining, by the virtual environment state management circuitry, a view angle of at least one user; and only in response to determining that the view angle includes an area of a physical environment encompassing the fixed virtual coordinate position predefined by the virtual environment state management circuitry, instructing a display device configured to display the virtual environment state to display the virtual environment state such that the virtual control is displayed at the fixed virtual coordinate position.
-
-
22. A system for providing a virtual reality environment, the system comprising:
-
circuitry configured to output a virtual environment state provided by virtual environment state management circuitry to at least one display device, the virtual environment state including one or more virtual controls, wherein the virtual environment state comprises a virtual coordinate system for indicating locations of virtual objects within the virtual environment state; circuitry configured to receive data indicating a physical environment state from at least one sensor, wherein the physical environment state comprises a physical coordinate system for indicating locations of physical objects within the physical environment state; physical environment state management circuitry configured to determine a physical anchor position at a particular physical coordinate position within the physical coordinate system using the data indicating the physical environment state; and the virtual environment state management circuitry configured to; generate a mapping between a set of virtual coordinate positions and a set of physical coordinate positions; determine, based on the mapping, a particular virtual coordinate position corresponding to the particular physical coordinate position; place a virtual control anchor at the particular virtual coordinate position; determine fixed virtual coordinate positions for the one or more virtual controls according to respective virtual control positioning offsets by applying the virtual control positioning offset to the particular virtual coordinate position of the virtual control anchor; determine a view angle of at least one user; and only in response to determining that the view angle corresponds to an area of a physical environment corresponding to a subset of the fixed virtual coordinate positions of the one or more virtual controls, place the respective one or more virtual controls within the virtual environment state at the corresponding fixed virtual coordinate positions. - View Dependent Claims (23, 24, 25)
-
Specification