IP Library Granted Patent US 9,393,487
Granted Patent B2
US 9,393,487 · App. 11/382,039 · Granted Jul 19, 2016

Method for mapping movements of a hand-held controller to game commands

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,393,487
App. No.
11/382,039
Granted
Jul 19, 2016
Kind
B2
Abstract

One embodiment provides a method for use in a game that includes the steps of receiving position information for a controller that is being manipulated by a user, analyzing the position information to determine whether a predetermined movement of the controller associated with a command has been performed, and executing the command if the predetermined movement of the controller associated with the command has been performed.

Claims (37)

1. A method for use in a game, comprising the steps of:

in a system that comprises a processor, a controller in communication with the processor, and an image capture unit in communication with the processor, with the controller comprising a type of controller that is manipulatable by a user and that includes an inertial sensor in the controller, and with the image capture unit being positioned so that the controller is viewable by the image capture unit,

the processor receiving position information for the controller that is being manipulated by the user, wherein at least a portion of the position information is obtained from the inertial sensor in the controller, and wherein the portion of the position information comprises a current calculated position of the controller obtained from the inertial sensor, and wherein the inertial sensor is subject to a drift error that causes a discrepancy between the current calculated position of the controller obtained from the inertial sensor and an actual position of the controller;

the processor compensating for the drift error in the inertial sensor by re-setting the current calculated position of the controller in the position information to a position determined from an image obtained from the image capture unit, wherein the re-setting is performed in response to the user triggering one or more input devices on the controller;

the processor analyzing the position information that includes the current calculated position of the controller that has been re-set to a position determined from an image obtained from the image capture unit to determine whether a predetermined movement of the controller associated with a command has been performed; and

the processor executing the command if the predetermined movement of the controller associated with the command has been performed.

2. A method in accordance with claim 1 , further comprising the step of:

generating an interrupt for the game if the predetermined movement of the controller associated with the command has been performed.

3. A method in accordance with claim 1 , wherein the step of analyzing comprises the step of:

determining whether the position information for the controller indicates that it has fallen within certain ranges associated with the predetermined movement of the controller associated with a command.

4. A method in accordance with claim 1 , further comprising the step of:

receiving on an image plane of a camera a projection of a geometric shape established on the controller.

5. A method in accordance with claim 4 , further comprising the step of:

analyzing movements and deformities in the projection of the geometric shape.

6. A computer program product comprising a non-transitory medium for embodying a computer program for input to a computer system and a computer program embodied in the non-transitory medium for causing the computer system to perform steps comprising:

with the computer system comprising a processor, a controller in communication with the processor, and an image capture unit in communication with the processor, with the controller comprising a type of controller that is manipulatable by a user and that includes an inertial sensor in the controller, and with the image capture unit being positioned so that the controller is viewable by the image capture unit,

the processor receiving position information for the controller that is being manipulated by the user, wherein at least a portion of the position information is obtained from the inertial sensor in the controller, and wherein the portion of the position information comprises a current calculated position of the controller obtained from the inertial sensor, and wherein the inertial sensor is subject to a drift error that causes a discrepancy between the current calculated position of the controller obtained from the inertial sensor and an actual position of the controller;

the processor compensating for the drift error in the inertial sensor by re-setting the current calculated position of the controller in the position information to a position determined from an image obtained from the image capture unit, wherein the re-setting is performed in response to the user triggering one or more input devices on the controller;

the processor analyzing the position information that includes the current calculated position of the controller that has been re-set to a position determined from an image obtained from the image capture unit to determine whether a predetermined movement of the controller associated with a command has been performed; and

the processor executing the command if the predetermined movement of the controller associated with the command has been performed.

7. A computer program product in accordance with claim 6 , wherein the computer program embodied in the non-transitory medium is further configured for causing the computer system to perform a step comprising:

generating an interrupt for the game if the predetermined movement of the controller associated with the command has been performed.

8. A computer program product in accordance with claim 6 , wherein the step of analyzing comprises the step of:

determining whether the position information for the controller indicates that it has fallen within certain ranges associated with the predetermined movement of the controller associated with a command.

9. A computer program product in accordance with claim 6 , wherein the computer program embodied in the non-transitory medium is further configured for causing the computer system to perform a step comprising:

receiving on an image plane of a camera a projection of a geometric shape established on the controller.

10. A computer program product in accordance with claim 9 , wherein the computer program embodied in the non-transitory medium is further configured for causing the computer system to perform a step comprising:

analyzing movements and deformities in the projection of the geometric shape.

11. A system comprising:

a processor;

a controller in communication with the processor, with the controller comprising a type of controller that is manipulatable by a user and that includes an inertial sensor in the controller; and

an image capture unit in communication with the processor, with the image capture unit being positioned so that the controller is viewable by the image capture unit;

wherein the processor is configured to execute steps comprising:

receiving position information for the controller that is being manipulated by the user, wherein at least a portion of the position information is obtained from the inertial sensor in the controller, and wherein the portion of the position information comprises a current calculated position of the controller obtained from the inertial sensor, and wherein the inertial sensor is subject to a drift error that causes a discrepancy between the current calculated position of the controller obtained from the inertial sensor and an actual position of the controller;

compensating for the drift error in the inertial sensor by re-setting the current calculated position of the controller in the position information to a position determined from an image obtained from the image capture unit, wherein the re- setting is performed in response to the user triggering one or more input devices on the controller;

analyzing the position information that includes the current calculated position of the controller that has been re- set to a position determined from an image obtained from the image capture unit to determine whether a predetermined movement of the controller associated with a command has been performed; and

executing the command if the predetermined movement of the controller associated with the command has been performed.

Assignments (3)
CHANGE OF NAME Recorded Jul 19, 2016
From: SONY COMPUTER ENTERTAINMENT INC.
To: SONY INTERACTIVE ENTERTAINMENT INC.
Reel/Frame 039408/0273 →
CHANGE OF NAME Recorded May 5, 2016
From: SONY COMPUTER ENTERTAINMENT AMERICA LLC
To: SONY INTERACTIVE ENTERTAINMENT AMERICA LLC
Reel/Frame 038626/0637 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 2, 2015
From: SONY COMPUTER ENTERTAINMENT AMERICA LLC
To: SONY COMPUTER ENTERTAINMENT INC.
Reel/Frame 036940/0095 →