Moving an object in a virtual space based on motion detecting signals
AssigneeNintendo Co., Ltd.
InventorKenta Sato
Life of this patent
Estimating the term…
Abstract
First, a moving direction of an input device is calculated based on motion information obtained from predetermined detection means for detecting attitude or motion of the input device operated by a user. Then, the object in a virtual three-dimensional space is caused to move to a position which is obtained by hypothetically moving a position of the object based on the direction in which the input device has been moved and then by correcting the position of the object hypothetically moved, only in a direction perpendicular or substantially perpendicular to the direction in which the input device has been moved.
Claims17
A non-transitory computer-readable storage medium storing an information processing program comprising instructions to be executed by a computer of an information processing apparatus for performing information processing causing an object in a virtual three-dimensional (3D) space to move, based on detected attitude information obtained from an attitude detector configured to detect a 3D attitude of an input device while a user moves the input device,
- the information processing program causing the computer to perform at least:
- updating, based on the detected 3D attitude of the input device, a 3D attitude of the object in the virtual 3D space from a previous 3D attitude of the object in the 3D virtual space to an updated 3D attitude of the object in the 3D virtual space;
- calculating a moving path in the 3D virtual space for the 3D object based on a difference between the previous 3D attitude of the object in the 3D virtual space and the updated 3D attitude of the object in the 3D virtual space;
- and
- causing the object to move to a 3D position in the virtual space which is obtained by hypothetically moving the object along the moving path in the 3D virtual space calculated based on the difference between the previous 3D attitude of the object in the 3D virtual space and the updated 3D attitude of the object in the 3D virtual space and then by correcting the 3D position in the virtual space to which the object is hypothetically moved, only in a direction normal or substantially normal to a plane defined in 3D virtual space to contain the moving path in the 3D virtual space calculated based on the difference between the previous 3D attitude of the object in the 3D virtual space and the updated 3D attitude of the object in the 3D virtual space, thereby applying the correction only in a direction other than the moving path.
An information processing apparatus for performing information processing for causing an object in a virtual three-dimensional (3D) space to move, based on detected attitude obtained from predetermined detection for detecting a previous 3D attitude and an updated 3D attitude of an input device operated by a user, comprising:
- a 3D attitude updater that updates, based on the detected 3D attitude of the input device, a 3D attitude of the object in the virtual 3D space from a previous 3D attitude of the object in the 3D virtual space to an updated 3D attitude of the object in the 3D virtual space;
- a 3D moving direction calculator structured to calculate, based on a difference between the previous 3D attitude of the input device and the updated 3D attitude of the input device, a 3D moving direction representing a 3D moving path of the object in the virtual space;
- and
- an object mover structured to cause the object to move to a 3D position in virtual space which is obtained by hypothetically moving the object along the 3D moving path in the virtual space calculated based on the difference between the previous 3D attitude of the object in the 3D virtual space and the updated 3D attitude of the object in the 3D virtual space and then by correcting the 3D position in the virtual space to which the object is hypothetically moved, only in a direction normal or substantially normal to a plane defined in 3D virtual space to contain the moving path in the 3D virtual space calculated based on the difference between the previous 3D attitude of the object in the 3D virtual space and the updated 3D attitude of the object in the 3D virtual space, thereby applying the correction only in a direction other than the moving path.
A method for causing an object in a virtual three-dimensional (3D) space to move, based on attitude information obtained from predetermined detection for detecting 3D attitudes of an input device operated by a user, comprising:
- detecting plural 3D attitudes of the input device;
- updating, based on the detected 3D attitudes of the input device, a 3D attitude of the object in the 3D virtual space from a previous 3D attitude of the object in the 3D virtual space to an updated 3D attitude of the object in the 3D virtual space;
- calculating, based on changes between the detected plural attitudes of the input device including a difference between the previous 3D attitude of the object in the 3D virtual space and the updated 3D attitude of the object in the 3D virtual space, a 3D moving path in the 3D virtual space for the object to move in the 3D virtual space;
- and
- causing the object to move to a 3D position in the virtual space which is obtained by hypothetically moving the object along the 3D moving path calculated based on the difference between the previous 3D attitude of the object in the 3D virtual space and the updated 3D attitude of the object in the 3D virtual space and then by correcting the 3D position in the virtual space to which the object is hypothetically moved, only in a direction normal or substantially normal to a plane defined in 3D virtual space to contain the 3D moving path in the 3D virtual space calculated based on the difference between the previous 3D attitude of the object in the 3D virtual space and the updated 3D attitude of the object in the 3D virtual space, thereby applying the correction only in a direction other than the calculated 3D moving path.
A system for causing an object in a virtual three-dimensional (3D) space to move, comprising:
- an input device operated by a user, the input device comprising a gyrosensor that senses the attitudes of the input device while the user moves the input device;
- and
- a processor operatively coupled to the input device that causes an object in a virtual 3D space to move based on changes in the sensed attitudes of the input device, the processor:
- updating, based on the sensed attitudes of the input device, a 3D attitude of the object in the 3D virtual space from a previous 3D attitude of the object in the 3D virtual space to an updated 3D attitude of the object in the 3D virtual space;
- calculating, based on the sensed attitude changes including a difference between the previous 3D attitude of the object in the 3D virtual space and the updated 3D attitude of the object in the 3D virtual space, a 3D moving path;
- and
- causing the object to move to a 3D position in the virtual space which is obtained by hypothetically moving the object along the 3D moving path in the 3D virtual space calculated based on the difference between the previous 3D attitude of the object in the 3D virtual space and the updated 3D attitude of the object in the 3D virtual space and then by correcting the 3D position in the virtual space to which the object is hypothetically moved, only in a direction normal or substantially normal to a plane defined in 3D space to contain the 3D moving path in the 3D virtual space calculated based on the difference between the previous 3D attitude of the object in the 3D virtual space and the updated 3D attitude of the object in the 3D virtual space, thereby applying the correction of the object only in a direction other than the 3D moving path.
Dependencies are inferred from the claim text.