# Patent

## Title
Game controller and game system

## Abstract

A first control unit includes a first operation data generation section for generating first operation data in accordance with a motion of a first control unit body included in the first control unit. A second control unit includes a second operation data generation section for generating second operation data in accordance with a direction input operation performed by a player or a motion of a second control unit body included in the second control unit. Further, one of the first control unit and the second control unit includes a transmission section for transmitting the first operation data and the second operation data to a computer at a predetermined timing.

## Background
CROSS REFERENCE TO RELATED APPLICATIONS
This application is a divisional of U.S. application Ser. No. 11/504,086, filed 15 Aug. 2006, which in turn is a continuation-in-part of U.S. application Ser. No. 11/404,872, filed 17 Apr. 2006 which claims priority of JP2005-242926, filed 24 Aug. 2005 and U.S. Application No. 60/714,862, filed 8 Sep. 2005, the entire contents of each of which are incorporated herein by reference.


BACKGROUND OF THE INVENTION
1. Field of the Invention
The present invention relates to a game controller and a game system, and more particularly to a game controller which includes two control units connected to each other by a flexible cable and is operated using the two control units and a game system including the game controller.
2. Description of the Background Art
For example, Japanese Laid-Open Patent Publication No. 2004-313492 (herein after, referred to as Patent Document 1) discloses a controller having its control units held by both hands of a player, respectively, so as to play a game.
The controller disclosed in Patent Document 1 is composed of an R unit to be held by a right hand of a player and an L unit to be held by a left hand of the player. The R unit and the L unit each has an operation button and a stick on the top surface and the side of a housing thereof. The R unit and the L unit can be physically coupled to each other so as to be used as a combined controller.
However, the controller disclosed in Patent Document 1 is constructed by simply separating a conventional game apparatus controller into right and left units. That is, although a player can place his or her right and left hands anywhere when the player holds the R and L units by his or her right and left hands, respectively, the player cannot control the controller itself with improved flexibility. For example, not only the combined controller but also the game apparatus controller separated into the right and the left units cannot realize a new operation.
SUMMARY OF THE INVENTION
Therefore, an object of the present invention is to provide a novel game controller and game system which realize a novel operation having enhanced flexibility by using a plurality of control units.
The present invention has the following features to attain the object mentioned above. The reference numerals and the like in the parentheses indicate the correspondence with the embodiment described below in order to aid in understanding the present invention and are not intended to limit, in any way, the scope of the present invention.
A first aspect of the present invention is directed to a game controller (7) for transmitting operation data to a computer (30) executing a game program. The game controller comprises: a first control unit (70); a second control unit (76); and a cable (79). The cable is flexible and electrically connects between the first control unit and the second control unit. The first control unit includes a first operation data generation section (74, 701). The first operation data generation section generates first operation data in accordance with a motion of a first control unit body included in the first control unit. The second control unit includes a second operation data generation section (78). The second operation data generation section generates second operation data in accordance with a direction input operation performed by a player. Further, one of the first control unit and the second control unit includes a transmission section (75). The transmission section transmits the first operation data and the second operation data to the computer at a predetermined timing.
In a second aspect based on the first aspect, the first operation data generation section includes an image pickup section (74). The image pickup section is fixed to the first control unit body and takes an image of a periphery along a predetermined direction from the first control unit body. The first operation data generation section outputs, as the first operation data, one selected from the group consisting of an image taken by the image pickup section and a result of subjecting the image taken by the image pickup section to a predetermined calculation.
In a third aspect based on the second aspect, the first operation data generation section further includes a positional information calculation section (744). The positional information calculation section calculates positional information indicating a position, in the image taken by the image pickup section, of at least one marker image which is included in the taken image and is used as an imaging target, when performing the predetermined calculation, and outputs the positional information as the first operation data.
In a fourth aspect based on the first aspect, the transmission section wirelessly transmits the first operation data and the second operation data to the computer.
In a fifth aspect based on the first aspect, the first operation data generation section has one of an acceleration sensor (701) and a gyro sensor included in the first control unit body. The first operation data generation section outputs data generated by the one of the acceleration sensor and the gyro sensor as the first operation data.
In a sixth aspect based on the first aspect, the cable is detachably connected to at least the first control unit. The transmission section is included in the first control unit.
In a seventh aspect based on the first aspect, the transmission section collects and transmits to the computer the first operation data and the second operation data at intervals shorter than 1/60 second.
In an eighth aspect based on the first aspect, the second operation data generation section includes a stick (78a) which has a tip projecting from a second control unit body included in the second control unit and is inclinable on the second control unit body. The second operation data generation section outputs data obtained in accordance with an inclining direction of the stick as the second operation data.
In a ninth aspect based on the first aspect, the second operation data generation section includes an operation button (78f) which has operation portions representing at least four directions and which is able to be pushed, by the operation portions, into a second control unit body included in the second control unit. The second operation data generation section outputs, as the second operation data, data corresponding to the operation portion at which the operation button is pushed.
In a tenth aspect based on the first aspect, the second operation data generation section includes a sliding member (78g) which has a top surface exposed from a second control unit body included in the second control unit and which is horizontally movable on the second control unit body. The second operation data generation section outputs data obtained in accordance with a horizontal moving direction of the sliding member as the second operation data.
In an eleventh aspect based on the first aspect, the second operation data generation section includes a touchpad (78h) on an outer surface of a second control unit body included in the second control unit. The second operation data generation section outputs, as the second operation data, data obtained in accordance with a position on the touch pad at which the touch pad is touched.
In a twelfth aspect based on the first aspect, the second operation data generation section includes at least four operation buttons (78i, 78j, 78k, 78l) which are able to be pushed into a second control unit body included in the second control unit. The second operation data generation section outputs data obtained in accordance with the pushed operation button as the second operation data.
In a thirteenth aspect based on the first aspect, the second control unit further includes one of an acceleration sensor (761) and a gyro sensor. One of the acceleration sensor and the gyro sensor is provided in a second control unit body included in the second control unit. The transmission section transmits, to the computer, data outputted by the one of the acceleration sensor and the gyro sensor as third operation data in addition to the first operation data and the second operation data.
In a fourteenth aspect based on the first aspect, at least one of the first control unit and the second control unit further includes a reception section (75), a speaker (706), and a sound control unit (707). The reception section receives transmission data transmitted from the computer. The sound control section generates a sound from the speaker using the transmission data having been received by the reception section.
A fifteenth aspect of the present invention is directed to a game controller for transmitting operation data to a computer executing a game program. The game controller comprises a first control unit, a second control unit, and a wireless connecting means. The wireless connecting means wirelessly connects between the first control unit and the second control unit. The first control unit includes a first operation data generation section. The first operation data generation section generates first operation data in accordance with a motion of a first control unit body included in the first control unit. The second control unit includes a second operation data generation section. The second operation data generation section generates second operation data in accordance with a direction input operation performed by a player. Further, one of the first control unit and the second control unit includes a transmission section. The transmission section transmits the first operation data and the second operation data to the computer at a predetermined timing.
In a sixteenth aspect based on the fifteenth aspect, the first operation data generation section includes an image pickup section. The image pickup section is fixed to the first control unit body and takes an image of a periphery along a predetermined direction from the first control unit body. The first operation data generation section outputs, as the first operation data, one selected from the group consisting of an image taken by the image pickup section and a result of subjecting the image taken by the image pickup section to a predetermined calculation.
In a seventeenth aspect based on the sixteenth aspect, the first operation data generation section further includes a positional information calculation section. The positional information calculation section calculates positional information indicating a position, in the image taken by the image pickup section, of at least one marker image which is included in the taken image and is used as an imaging target, when performing the predetermined calculation, and outputs the positional information as the first operation data.
In an eighteenth aspect based on the fifteenth aspect, the transmission section wirelessly transmits the first operation data and the second operation data to the computer.
In a nineteenth aspect based on the fifteenth aspect, the first operation data generation section has one of an acceleration sensor and a gyro sensor included in the first control unit body. The first operation data generation section outputs data generated by the one of the acceleration sensor and the gyro sensor as the first operation data.
In a twentieth aspect based on the fifteenth aspect, the transmission section collects and transmits to the computer the first operation data and the second operation data at intervals shorter than 1/60 second.
In a twenty-first aspect based on the fifteenth aspect, the second operation data generation section includes a stick which has a tip projecting from a second control unit body included in the second control unit and is inclinable on the second control unit body. The second operation data generation section outputs data obtained in accordance with an inclining direction of the stick as the second operation data.
In a twenty-second aspect based on the fifteenth aspect, the second operation data generation section includes an operation button (78f) which has operation portions representing at least four directions and which is able to be pushed, by the operation portions, into a second control unit body included in the second control unit. The second operation data generation section outputs, as the second operation data, data corresponding to the operation portion at which the operation button is pushed.
In a twenty-third aspect based on the fifteenth aspect, the second operation data generation section includes a sliding member which has a top surface exposed from a second control unit body included in the second control unit and which is horizontally movable on the second control unit body. The second operation data generation section outputs data obtained in accordance with a horizontal moving direction of the sliding member as the second operation data.
In a twenty-fourth aspect based on the fifteenth aspect, the second operation data generation section includes a touch pad on an outer surface of a second control unit body included in the second control unit. The second operation data generation section outputs, as the second operation data, data obtained in accordance with a position on the touch pad at which the touch pad is touched.
In a twenty-fifth aspect based on the fifteenth aspect, the second operation data generation section includes at least four operation buttons which are able to be pushed into a second control unit body included in the second control unit. The second operation data generation section outputs data obtained in accordance with the pushed operation button as the second operation data.
In a twenty-sixth aspect based on the fifteenth aspect, the second control unit further includes one of an acceleration sensor and a gyro sensor. One of the acceleration sensor and the gyro sensor is provided in a second control unit body included in the second control unit. The transmission section transmits, to the computer, data outputted by the one of the acceleration sensor and the gyro sensor as third operation data in addition to the first operation data and the second operation data.
In a twenty-seventh aspect based on the fifteenth aspect, at least one of the first control unit and the second control unit further includes a reception section (75), a speaker (706), and a sound control section (707). The reception section receives transmission data transmitted from the computer. The sound control section generates a sound from the speaker using the transmission data having been received by the reception section.
A twenty-eighth aspect of the present invention is directed to a game controller (7) for transmitting operation data to a computer (30) executing a game program. The game controller comprises: a first control unit (70); a second control unit (76); and a cable (79). The cable is flexible and electrically connects between the first control unit and the second control unit. The first control unit includes a first operation data generation section (74, 701). The first operation data generation section generates first operation data in accordance with a motion of a first control unit body included in the first control unit. The second control unit includes a second operation data generation section (761). The second operation data generation section generates second operation data in accordance with a motion of a second control unit body included in the second control unit. Further, one of the first control unit and the second control unit includes a transmission section (75). The transmission section transmits the first operation data and the second operation data to the computer at a predetermined timing.
In a twenty-ninth aspect based on the twenty-eighth aspect, the first operation data generation section has one of a first acceleration sensor (701) and a first gyro sensor included in the first control unit body. The first operation data generation section outputs data generated by the one of the first acceleration sensor and the first gyro sensor as the first operation data. The second operation data generation section has one of a second acceleration sensor (761) and a second gyro sensor included in the second control unit body. The second operation data generation section outputs data generated by the one of the second acceleration sensor and the second gyro sensor as the second operation data.
In a thirtieth aspect based on the twenty-ninth aspect, the first control unit further includes a first key (72). The first key, which is provided on the first control unit body, generates first key operation data in accordance with a player pressing the first key. The second control unit further includes a second key (78). The second key, which is provided on the second control unit body, generates second key operation data in accordance with the player pressing the second key. The transmission section transmits, to the computer, the first key operation data and the second key operation data in addition to the first operation data and the second operation data.
In a thirty-first aspect based on the twenty-eighth aspect, the first operation data generation section includes an image pickup section (74). The image pickup section is fixed to the first control unit body and takes an image of a periphery along a predetermined direction from the first control unit body. The first operation data generation section outputs, as the first operation data, one selected from the group consisting of an image taken by the image pickup section and a result of subjecting the image taken by the image pickup section to a predetermined calculation. The second operation data generation section has one of a first acceleration sensor (761) and a first gyro sensor. One of the first acceleration sensor and the first gyro sensor is provided in the second control unit body. The second operation data generation section outputs data generated by the one of the first acceleration sensor and the first gyro sensor as the second operation data.
In a thirty-second aspect based on the thirty-first aspect, the first control unit further includes one of a second acceleration sensor (701) and a second gyro sensor. One of the second acceleration sensor and the second gyro sensor is provided in the first control unit body. The transmission section transmits, to the computer, data outputted by the one of the second acceleration sensor and the second gyro sensor as third operation data in addition to the first operation data and the second operation data.
In a thirty-third aspect based on the twenty-eighth aspect, at least one of the first control unit and the second control unit further includes a reception section (75), a speaker (706), and a sound control section (707). The reception section receives transmission data transmitted from the computer. The sound control section generates a sound from the speaker using the transmission data having been received by the reception section.
A thirty-fourth aspect of the present invention is directed to a game system (1) comprising the game controller and a game apparatus (3). The game controller is described in the first aspect. The game apparatus is communicably connected to the game controller, and includes a computer for representing a virtual game world on a display screen (2) by executing a game program. The game apparatus performs a game process in accordance with at least one of the first operation data transmitted from the first control unit and the second operation data transmitted from the second control unit.
In a thirty-fifth aspect based on the thirty-fourth aspect, the game apparatus causes a player character appearing in the virtual game world to perform an action in accordance with at least one of the first operation data transmitted from the game controller and the second operation data transmitted from the game controller.
A thirty-sixth aspect of the present invention is directed to a game system comprising the game controller and a game apparatus. The game controller is described in the fifteenth aspect. The game apparatus is communicably connected to the game controller and includes a computer for representing a virtual game world on a display screen by executing a game program. The game apparatus performs a game process in accordance with at least one of the first operation data transmitted from the first control unit and the second operation data transmitted from the second control unit.
In a thirty-seventh aspect based on the thirty-sixth aspect, the game apparatus causes a player character appearing in the virtual game world to perform an action in accordance with at least one of the first operation data transmitted from the game controller and the second operation data transmitted from the game controller.
A thirty-eighth aspect of the present invention is directed to a game system comprising the game controller and a game apparatus. The game controller is described in the twenty-eighth aspect. The game apparatus is communicably connected to the game controller and includes a computer for representing a virtual game world on a display screen by executing a game program. The game apparatus performs a game process in accordance with at least one of the first operation data transmitted from the first control unit and the second operation data transmitted from the second control unit.
In a thirty-ninth aspect based on the thirty-eighth aspect, the game apparatus causes a player character appearing in the virtual game world to perform an action in accordance with at least one of the first operation data transmitted from the game controller and the second operation data transmitted from the game controller.
According to the first aspect, the first control unit generates operation data in accordance with a motion of a controller body included in the game controller, and the second control unit generates operation data in accordance with a direction input operation. Thereby, when the game controller is used in a game, a player can make an input with a finger of one hand as in the case of a conventional controller while moving the other hand. That is, the player can cause his or her right and left hands to perform respective separate operations, thereby providing a new operation, which cannot be conventionally performed. Further, by connecting two control units to each other by a cable, the game controller requires only one transmission section for a computer.
According to the thirteenth aspect, the first control unit generates operation data in accordance with a motion of a controller body included in the game controller, and the second control unit generates operation data in accordance with a direction input operation. Thereby, when the game controller is used in a game, a player can make an input with a finger of one hand as in the case of a conventional controller while moving the other hand. That is, the player can cause his or her right and left hands to perform respective separate operations, thereby providing a new operation, which cannot be conventionally performed. Further, two control units are completely separated from each other, thereby providing improved controllability and enabling two players to operate the game controller.
According to the second, third, sixteenth and seventeenth aspects, an image taken by the image pickup section fixed to the first control unit or information obtained from the taken image can be used as the operation data. For example, a direction and a position of the first control unit with respect to the imaging target can be calculated, whereby a game operation can be performed in accordance with the direction and the position of the unit.
According to the fourth or the eighteenth aspect, the game controller and the computer are wirelessly connected to each other, thereby providing improved controllability of the game controller.
According to the fifth or the nineteenth aspect, the acceleration sensor or the gyro sensor is used as the first operation data generation section, thereby reducing a cost.
According to the sixth aspect, the cable is eliminated from the first control unit, whereby the operation data can be transmitted to the computer using only the first control unit.
According to the seventh or the twentieth aspect, data can be collected and transmitted at intervals shorter than a typical game process cycle ( 1/60 second).
According to one of the eighth to the twelfth aspects, and the twenty-first to the twenty-fifth aspects, the second operation data generation section for outputting a signal in accordance with a direction input operation performed by a player can be realized by the inclinable stick, the button such as a cross key having portions to be pressed depending on a direction, the horizontally movable pad, the touch pad, the button representing each direction and the like.
According to the thirteenth aspect, each of the units outputs the operation data in accordance with the motion of the unit body. Therefore, a player can make an input with a finger of one hand as in the case of a conventional controller while moving the other hand, and further the player can hold the separate units with both hands, respectively, thereby moving both hands individually so as to make an input.
According to the fourteenth, twenty-seventh, and thirty-third aspects, the speaker included in one of the units outputs a sound in accordance with data from the computer, whereby the sound can be outputted near the hand with which the player holds the unit.
According to the twenty-eighth aspect, each of the first control unit and the second control unit generates operation data in accordance with a motion of the unit body. Therefore, when the game controller is used in a game, each of the units outputs the operation data in accordance with the motion of the unit body, whereby the player can hold the separate units with both hands, respectively, thereby moving both hands individually so as to make an input. That is, the player can cause his or her right and left hands to perform respective separate operations, thereby providing a new operation which cannot be conventionally performed. Further, by connecting two control units to each other by a cable, the game controller requires only one transmission section for a computer.
According to the twenty-ninth aspect, each of the units outputs the operation data in accordance with the tilt, attitude and the like of the unit body, and therefore the player holds separate units with both hands, respectively, thereby moving two hands individually so as to make an input.
According to the thirtieth aspect, each of the units not only outputs operation data in accordance with a tilt, an attitude and the like of the unit body but also outputs operation data in accordance with a player performing a key operation. Therefore, the player can hold the separate units with both hands, respectively, thereby moving both hands individually so as to make an input, and the player can also use his or her fingers of both hands so as to perform operations.
According to the thirty-first aspect, the first control unit can calculate a direction, a position and the like of the first control unit with respect to the imaging target, whereby an operation can be performed in accordance with the direction and the position of the first control unit with respect to the display device and the like. On the other hand, the second control unit can calculate a tilt, an attitude, a position and the like of the second control unit, whereby an operation can be performed in accordance with the attitude and the position of the second control unit.
According to the thirty-second aspect, the first control unit can also calculate a tilt, an attitude, a position and the like of the first control unit, whereby an operation can be performed in accordance with the attitude and the position of the first control unit.
Further, the game system according to the present invention can obtain the same effect as that of the aforementioned game controller.
These and other objects, features, aspects and advantages of the present invention will become more apparent from the following detailed description of the present invention when taken in conjunction with the accompanying drawings.



BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 is an external view illustrating a game system 1 according to an embodiment of the present invention;
FIG. 2 is a functional block diagram of a game apparatus 3 shown in FIG. 1;
FIG. 3 is a perspective view illustrating an outer appearance of a controller 7 shown in FIG. 1;
FIG. 4 is a perspective view illustrating a state of a connecting cable 79 of the controller 7 shown in FIG. 3 being connected to or disconnected from a core unit 70;
FIG. 5 is a perspective view of the core unit 70 shown in FIG. 3 as seen from the top rear side thereof;
FIG. 6 is a perspective view of the core unit 70 shown in FIG. 3 as seen from the bottom front side thereof;
FIG. 7 is a perspective view illustrating a state where an upper casing of the core unit 70 shown in FIG. 3 is removed;
FIG. 8 is a perspective view illustrating a state where a lower casing of the core unit 70 shown in FIG. 3 is removed;
FIG. 9 is a perspective view illustrating a first example of the subunit 76 shown in FIG. 3;
FIG. 10 is a perspective view of a state where an upper casing of the subunit 76 shown in FIG. 9 is removed;
FIGS. 11A, 11B, and 11C are a top view, a bottom view and a left side view of a second example of the subunit 76 shown in FIG. 3, respectively;
FIG. 12 is a perspective view of the subunit 76 shown in FIG. 3 as seen from the top front side thereof;
FIG. 13 is a top view illustrating an example of a first modification of the subunit 76 shown in FIG. 3;
FIG. 14 is a top view illustrating an example of a second modification of the subunit 76 shown in FIG. 3;
FIG. 15 is a top view illustrating an example of a third modification of the subunit 76 shown in FIG. 3;
FIG. 16 is a top view illustrating an example of a fourth modification of the subunit 76 shown in FIG. 3;
FIG. 17 is a block diagram illustrating a structure of the controller 7 shown in FIG. 3;
FIG. 18 is a diagram illustrating a state of a game being generally controlled with the controller 7 shown in FIG. 3;
FIG. 19 shows an exemplary state of a player holding the core unit 70 with a right hand as seen from the front surface side of the core unit 70;
FIG. 20 shows an exemplary state of a player holding the core unit 70 with a right hand as seen from the left side of the core unit 70;
FIG. 21 is a diagram illustrating a viewing angle of a LED module 8L, a viewing angle of a LED module 8R, and a viewing angle of an image pickup element 743;
FIG. 22 shows an exemplary state of a player holding the subunit 76 with a left hand as seen from the right side of the subunit 76; and
FIG. 23 shows an exemplary game image displayed on the monitor 2 when the game apparatus 3 executes a shooting game.



DESCRIPTION OF THE PREFERRED EMBODIMENTS
With reference to FIG. 1, a game system 1 according to one embodiment of the present invention will be described. FIG. 1 is an external view illustrating the game system 1. In the following description, the game system 1 according to the present invention includes a stationary game apparatus.
As shown in FIG. 1, the game system 1 includes a stationary game apparatus (herein after, referred to simply as a “game apparatus”) 3, which is connected to a display (herein after, referred to as a “monitor”) 2 of a home-use television receiver or the like having a speaker 2a via a connection cord, and a controller 7 for giving operation information to the game apparatus 3. The game apparatus 3 is connected to a receiving unit 6 via a connection terminal. The receiving unit 6 receives transmission data which is wirelessly transmitted from the controller 7. The controller 7 and the game apparatus 3 are connected to each other by wireless communication. On the game apparatus 3, an optical disc 4 as an example of an exchangeable information storage medium is detachably mounted. The game apparatus 3 includes a power ON/OFF switch, a game process reset switch, and an OPEN switch for opening a top lid of the game apparatus 3 on a top main surface of the game apparatus 3. When a player presses the OPEN switch, the lid is opened, so that the optical disc 4 can be mounted or dismounted.
Further, on the game apparatus 3, an external memory card 5 is detachably mounted when necessary. The external memory card 5 has a backup memory or the like mounted thereon for fixedly storing saved data or the like. The game apparatus 3 executes a game program or the like stored on the optical disc 4 and displays the result on the monitor 2 as a game image. The game apparatus 3 can also reproduce a state of a game played in the past using saved data stored in the external memory card 5 and display the game image on the monitor 2. A player playing with the game apparatus 3 can enjoy the game by operating the controller 7 while watching the game image displayed on the monitor 2.
The controller 7 wirelessly transmits the transmission data from a communication section 75 included therein (described later) to the game apparatus 3 connected to the receiving unit 6, using the technology of, for example, Bluetooth (registered trademark). The controller 7 has two control units, a core unit 70 and a subunit 76, connected to each other by a flexible connecting cable 79. The controller 7 is an operation means for mainly operating a player object appearing in a game space displayed on the monitor 2. The core unit 70 and the subunit 76 each includes an operation section such as a plurality of operation buttons, a key, a stick and the like. As described later in detail, the core unit 70 includes an imaging information calculation section 74 for taking an image viewed from the core unit 70. As an example of an imaging target of the imaging information calculation section 74, two LED modules 8L and 8R are provided in the vicinity of a display screen of the monitor 2. The LED modules 8L and 8R each outputs infrared light forward from the monitor 2. Although in the present embodiment the core unit 70 and the subunit 76 are connected to each other by the flexible cable, the subunit 76 may have a wireless unit, thereby eliminating the connecting cable 79. For example, the subunit 76 has a Bluetooth (registered trademark) unit as the wireless unit, whereby the subunit 76 can transmit operation data to the core unit 70.
Next, with reference to FIG. 2, a structure of the game apparatus 3 will be described. FIG. 2 is a functional block diagram of the game apparatus 3.
As shown in FIG. 2, the game apparatus 3 includes, for example, a RISC CPU (central processing unit) 30 for executing various types of programs. The CPU 30 executes a boot program stored in a boot ROM (not shown) to, for example, initialize memories including a main memory 33, and then executes a game program stored on the optical disc 4 to perform game process or the like in accordance with the game program. The CPU 30 is connected to a GPU (Graphics Processing Unit) 32, the main memory 33, a DSP (Digital Signal Processor) 34, and an ARAM (audio RAM) 35 via a memory controller 31. The memory controller 31 is connected to a controller I/F (interface) 36, a video I/F 37, an external memory I/F 38, an audio I/F 39, and a disc I/F 41 via a predetermined bus. The controller I/F 36, the video I/F 37, the external memory I/F 38, the audio I/F 39 and the disc I/F 41 are respectively connected to the receiving unit 6, the monitor 2, the external memory card 5, the speaker 2a, and a disc drive 40.
The GPU 32 performs image processing based on an instruction from the CPU 30. The GPU 32 includes, for example, a semiconductor chip for performing calculation process necessary for displaying 3D graphics. The GPU 32 performs the image process using a memory dedicated for image process (not shown) and a part of the storage area of the main memory 33. The GPU 32 generates game image data and a movie to be displayed on the monitor 2 using such memories, and outputs the generated data or movie to the monitor 2 via the memory controller 31 and the video I/F 37 as necessary.
The main memory 33 is a storage area used by the CPU 30, and stores a game program or the like necessary for processing performed by the CPU 30 as necessary. For example, the main memory 33 stores a game program read from the optical disc 4 by the CPU 30, various types of data or the like. The game program, the various types of data or the like stored in the main memory 33 are executed by the CPU 30.
The DSP 34 processes sound data or the like generated by the CPU 30 during the execution of the game program. The DSP 34 is connected to the ARAM 35 for storing the sound data or the like. The ARAM 35 is used when the DSP 34 performs a predetermined process (for example, storage of the game program or sound data already read). The DSP 34 reads the sound data stored in the ARAM 35, and outputs the sound data to the speaker 2a included in the monitor 2 via the memory controller 31 and the audio I/F 39.
The memory controller 31 comprehensively controls data transmission, and is connected to the various I/Fs described above. The controller I/F 36 includes, for example, four controller I/Fs 36a, 36b, 36c and 36d, and communicably connects the game apparatus 3 to an external device which is engageable via connectors of the controller I/Fs 36a, 36b, 36c and 36d. For example, the receiving unit 6 is engaged with such a connector and is connected to the game apparatus 3 via the controller I/F 36. As described above, the receiving unit 6 receives the transmission data from the controller 7 and outputs the transmission data to the CPU 30 via the controller I/F 36. The video I/F 37 is connected to the monitor 2. The external memory I/F 38 is connected to the external memory card 5 and is accessible to a backup memory or the like provided in the external memory card 5. The audio I/F 39 is connected to the speaker 2a built in the monitor 2 such that the sound data read by the DSP 34 from the ARAM 35 or sound data directly outputted from the disc drive 40 can be outputted from the speaker 2a. The disc I/F 41 is connected to the disc drive 40. The disc drive 40 reads data stored at a predetermined reading position of the optical disc 4 and outputs the data to a bus of the game apparatus 3 or the audio I/F 39.
Next, with reference to FIGS. 3 and 4, the controller 7 will be described. FIG. 3 is a perspective view illustrating an outer appearance of the controller 7. FIG. 4 is a perspective view illustrating a state of the connecting cable 79 of the controller 7 shown in FIG. 3 being connected to or disconnected from the core unit 70.
As shown in FIG. 3, the controller 7 includes the core unit 70 and the subunit 76 connected to each other by the connecting cable 79. The core unit 70 has a housing 71 including a plurality of operation sections 72. The subunit 76 has a housing 77 including a plurality of operation sections 78. The core unit 70 and the subunit 76 are connected to each other by the connecting cable 79.
As shown in FIG. 4, the connecting cable 79 has a connector 791 detachably connected to the connector 73 of the core unit 70 at one end thereof, and the connecting cable 79 is fixedly connected to the subunit 76 at the other end thereof. The connector 791 of the connecting cable 79 is engaged with the connector 73 provided at the rear surface of the core unit 70 so as to connect the core unit 70 and the subunit 76 to each other by the connecting cable 79.
With reference to FIGS. 5 and 6, the core unit 70 will be described. FIG. 5 is a perspective view of the core unit 70 as seen from the top rear side thereof. FIG. 6 is a perspective view of the core unit 70 as seen from the bottom front side thereof.
As shown in FIGS. 5 and 6, the core unit 70 includes the housing 71 formed by plastic molding or the like. The housing 71 has a generally parallelepiped shape extending in a longitudinal direction from front to rear. The overall size of the housing 71 is small enough to be held by one hand of an adult or even a child.
At the center of a front part of a top surface of the housing 71, a cross key 72a is provided. The cross key 72a is a cross-shaped four-direction push switch. The cross key 72a includes operation portions corresponding to the four directions (front, rear, right and left) represented by arrows, which are respectively located on cross-shaped projecting portions arranged at intervals of 90 degrees. The player selects one of the front, rear, right and left directions by pressing one of the operation portions of the cross key 72a. Through an operation on the cross key 72a, the player can, for example, instruct a direction in which a player character or the like appearing in a virtual game world is to move or a direction in which the cursor is to move.
Although the cross key 72a is an operation section for outputting an operation signal in accordance with the aforementioned direction input operation performed by the player, such an operation section may be provided in another form. For example, the cross key 72a may be replaced with a composite switch including a push switch including a ring-shaped four-direction operation section and a center switch provided at the center thereof. Alternatively, the cross key 72a may be replaced with an operation section which includes an inclinable stick projecting from the top surface of the housing 71 and outputs an operation signal in accordance with the inclining direction of the stick. Still alternatively, the cross key 72a may be replaced with an operation section which includes a disc-shaped member horizontally slidable and outputs an operation signal in accordance with the sliding direction of the disc-shaped member. Still alternatively, the cross key 72a may be replaced with a touch pad. Still alternatively, the cross key 72a may be replaced with an operation section which includes switches representing at least four directions (front, rear, right and left) and outputs an operation signal in accordance with the switch pressed by the player.
Behind the cross key 72a on the top surface of the housing 71, a plurality of operation buttons 72b, 72c, 72d, 72e, 72f and 72g are provided. The operation buttons 72b, 72c, 72d, 72e, 72f and 72g are each an operation section for outputting a respective operation signal assigned to the operation buttons 72b, 72c, 72d, 72e, 72f or 72g when the player presses a head thereof. For example, the operation buttons 72b, 72c, and 72d are assigned with functions of a first button, a second button, and an A button. Further, the operation buttons 72e, 72f and 72g are assigned with functions of a minus button, a home button and a plus button, for example. The operation buttons 72b, 72c, 72d, 72e, 72f and 72g are assigned with respective functions in accordance with the game program executed by the game apparatus 3, but this will not be described in detail because the functions are not directly relevant to the present invention. In an exemplary arrangement shown in FIG. 5, the operation buttons 72b, 72c and 72d are arranged in a line at the center in the front-rear direction on the top surface of the housing 71. The operation buttons 72e, 72f and 72g are arranged in a line in the left-right direction between the operation buttons 72b and 72d on the top surface of the housing 71. The operation button 72f has a top surface thereof buried in the top surface of the housing 71, so as not to be inadvertently pressed by the player.
In front of the cross key 72a on the top surface of the housing 71, an operation button 72h is provided. The operation button 72h is a power switch for remote-controlling the power of the game apparatus 3 to be on or off. The operation button 72h also has a top surface thereof buried in the top surface of the housing 71, so as not to be inadvertently pressed by the player.
Behind the operation button 72c on the top surface of the housing 71, a plurality of LEDs 702 are provided. The controller 7 is assigned a controller type (number) so as to be distinguishable from the other controllers 7. For example, the LEDs 702 are used for informing the player of the controller type which is currently set to controller 7 that he or she is using. Specifically, when the core unit 70 transmits the transmission data to the receiving unit 6, one of the plurality of LEDs 702 corresponding to the controller type is lit up.
On the top surface of the housing 71, a sound hole for externally outputting a sound from a speaker 706 shown in FIG. 7, which will be described below, is provided between the operation buttons 72e, 72f, and 72g and the operation button 72b. 
On a bottom surface of the housing 71, a recessed portion is formed. As described later in detail, the recessed portion is formed at a position at which an index finger or middle finger of the player is located when the player holds the core unit 70. On a rear slope surface of the recessed portion, an operation button 72i is provided. The operation button 72i is an operation section acting as, for example, a B button. The operation button 72i is used, for example, as a trigger switch in a shooting game, or for attracting attention of a player object to a predetermined object.
On a front surface of the housing 71, an image pickup element 743 included in the imaging information calculation section 74 is provided. The imaging information calculation section 74 is a system for analyzing image data taken by the core unit 70 and detecting for the centroid, the size and the like of an area having a high brightness in the image data. The imaging information calculation section 74 has, for example, a maximum sampling period of about 200 frames/sec., and therefore can trace and analyze even a relatively fast motion of the core unit 70. The imaging information calculation section 74 will be described later in detail. On a rear surface of the housing 71, the connector 73 is provided. The connector 73 is, for example, a 32-pin edge connector, and is used for engaging and connecting the core unit 70 with the connector 791 of the connecting cable 79.
With reference to FIGS. 7 and 8, an internal structure of the core unit 70 will be described. FIG. 7 is a perspective view illustrating, as seen from the rear side of the core unit 70, a state where an upper casing (a part of the housing 71) of the core unit 70 is removed. FIG. 8 is a perspective view illustrating, as seen from the front side of the core unit 70, a state where a lower casing (a part of the housing 71) of the core unit 70 is removed. FIG. 8 is a perspective view illustrating a reverse side of a substrate 700 shown in FIG. 7.
As shown in FIG. 7, the substrate 700 is fixed inside the housing 71. On a top main surface of the substrate 700, the operation buttons 72a, 72b, 72c, 72d, 72e, 72f, 72g and 72h, an acceleration sensor 701, the LEDs 702, an antenna 754 and the like are provided. These elements are connected to a micro computer 751 (see FIGS. 8 and 17) and the like via lines (not shown) formed on the substrate 700 and the like. The wireless module 753 not shown (see FIG. 17) and the antenna 754 allow the core unit 70 to act as a wireless controller. The quartz oscillator 703 not shown, which is provided in the housing 71, generates a reference clock of the micro computer 751 described later. On the top main surface of the substrate 700, the speaker 706 and an amplifier 708 are provided. The acceleration sensor 701 is provided near the edge of the substrate 700 offset from the center thereof. Therefore, a change of a direction of the gravitational acceleration and an acceleration containing a centrifugal force component can be detected based on a rotation of the core unit 70 about the longitudinal direction thereof, so that a predetermined calculation is used to determine the rotation of the core unit 70 with favorable accuracy based on the acceleration data having been detected.
As shown in FIG. 8, at a front edge of a bottom main surface of the substrate 700, the imaging information calculation section 74 is provided. The imaging information calculation section 74 includes an infrared filter 741, a lens 742, the image pickup element 743 and an image processing circuit 744 located in this order from the front surface of the core unit 70 on the bottom main surface of the substrate 700. At a rear edge of the bottom main surface of the substrate 700, the connector 73 is attached. Further, a sound IC 707 and the micro computer 751 are provided on the bottom main surface of the substrate 700. The sound IC 707, which is connected to the micro computer 751 and the amplifier 708 via lines formed on the substrate 700 and the like, outputs a sound signal to the speaker 706 via the amplifier 708 based on the sound data transmitted from the game apparatus 3. On the bottom main surface of the substrate 700, a vibrator 704 is provided. The vibrator 704 is, for example, a vibration motor or a solenoid. The core unit 70 is vibrated by an actuation of the vibrator 704, and the vibration is conveyed to the player's hand holding the core unit 70. Thus, a so-called vibration-feedback game is realized. The vibrator 704 is disposed slightly toward the front of the housing 71, thereby allowing the housing 71 held by the player to strongly vibrate, that is, allowing the player to easily feel the vibration.
With reference to FIGS. 9 to 12, the subunit 76 will be described. FIG. 9 is a perspective view illustrating a first example of the subunit 76. FIG. 10 is a perspective view illustrating a state where an upper casing (a part of the housing 77) of the subunit 76 shown in FIG. 9 is removed. FIG. 11A is a top view illustrating a second example of the subunit 76. FIG. 11B is a bottom view illustrating the second example of the subunit 76. FIG. 11C is a left side view illustrating the second example of the subunit 76. FIG. 12 is a perspective view illustrating the second example of the subunit 76 as seen from the top front side thereof.
As shown in FIG. 9, the subunit 76 includes the housing 77 formed by, for example, plastic molding. The housing 77 extends in a longitudinal direction from front to rear, and has a streamline solid shape including a head which is a widest portion in the subunit 76. The overall size of the subunit 76 is small enough to be held by one hand of an adult or even a child.
In the vicinity of the widest portion on the top surface of the housing 77, a stick 78a is provided. The stick 78a is an operation section which includes an inclinable stick projecting from the top surface of the housing 77 and outputs an operation signal in accordance with the inclining direction of the stick. For example, a player can arbitrarily designate a direction and a position by inclining a tip of the stick in any direction of 360 degrees, whereby the player can instruct a direction in which a player character or the like appearing in a virtual game world is to move, or can instruct a direction in which a cursor is to move.
In front of the housing 77 of the subunit 76, a plurality of operation buttons 78d and 78e are provided. The operation buttons 78d and 78e are each an operation section for outputting a respective operation signal assigned to the operation buttons 78d and 78e when the player presses a head thereof. For example, the operation buttons 78d and 78e are assigned with functions of an X button and a Y button, for example. Although the operation buttons 78d and 78e are assigned with respective functions in accordance with the game program executed by the game apparatus 3, this will not be described in detail because the functions are not directly relevant to the present invention. In an exemplary arrangement shown in FIG. 9, the operation buttons 78d and 78e are aligned from the top to bottom on the front surface of the housing 77.
In FIG. 10, a substrate is fixed in the housing 77. The stick 78a, an acceleration sensor 761 and the like are provided on the top main surface of the substrate. The stick 78a, the acceleration sensor 761 and the like are connected to the connecting cable 79 via lines (not shown) formed on the substrate and the like.
As shown in FIGS. 11A, 11B, 11C and 12, the subunit 76 of the second example includes the housing 77, the stick 78a, the operation buttons 78d and 78e as in the case of the subunit 76 of the first example, and the subunit 76 of the second example has the operation buttons 78b and 78c on the top surface of the housing 77.
Behind the stick 78a on the top surface of the housing 77, the subunit 76 of the second example has a plurality of operation buttons 78b and 78c. The operation buttons 78b and 78c are each an operation section for outputting a respective operation signal assigned to the operation buttons 78b and 78c when the player presses a head thereof. The operation buttons 78b and 78c are assigned with respective functions in accordance with the game program executed by the game apparatus 3. However, this will not be described in detail because the functions are not directly relevant to the present invention. In an exemplary arrangement shown in FIGS. 11A, 11B, and 11C and 12, the operation buttons 78b and 78c are arranged in a line at the center of the top surface of the housing 77 in the left-right direction.
Although the stick 78a is an operation section for outputting an operation signal in accordance with a direction input operation performed by the player as described above, such an operation section may be provided in another form. Hereinafter, with reference to FIGS. 13 to 16, a first through a fifth exemplary modifications, each of which includes the subunit 76 of the second example having an operation section for outputting an operation signal in accordance with the direction input operation, will be described.
As the first exemplary modification, as shown in FIG. 13, the subunit 76 may include a cross key 78f similar to the cross key 72a of the core unit 70 instead of the stick 78a. As the second exemplary modification, as shown in FIG. 14, the subunit 76 may include a slide pad 78g which includes a disc-shaped member horizontally slidable and outputs an operation signal in accordance with the sliding direction of the disc-shaped member, instead of the stick 78a. As the third exemplary modification, as shown in FIG. 15, the subunit 76 may include a touch pad 78h instead of the stick 78a. As the fourth exemplary modification, as shown in FIG. 16, the subunit 76 may include an operation section which has buttons 78i, 78j, 78k, and 78l representing at least four directions (front, rear, right and left), respectively, and outputs an operation signal in accordance with the button (78i, 78j, 78k, or 78l) pressed by a player, instead of the stick 78a. As the fifth exemplary modification, the subunit 76 may include a composite switch including a push switch having a ring-shaped four-direction operation section and a center switch provided at the center thereof, instead of the stick 78a. 
Next, with reference to FIG. 17, an internal structure of the controller 7 will be described. FIG. 17 is a block diagram illustrating the structure of the controller 7.
As shown in FIG. 17, the core unit 70 includes the communication section 75 in addition to the operation section 72, the imaging information calculation section 74, the acceleration sensor 701, the speaker 706, the sound IC 707, and the amplifier 708 as described above. Further, the subunit 76, which has the operation section 78 and the acceleration sensor 761 as described above, is connected to the micro computer 751 via the connecting cable 79 and the connectors 791 and 73.
The imaging information calculation section 74 includes the infrared filter 741, the lens 742, the image pickup element 743 and the image processing circuit 744. The infrared filter 741 allows only infrared light to pass therethrough, among light incident on the front surface of the core unit 70. The lens 742 collects the infrared light which has passed through the infrared filter 741 and outputs the infrared light to the image pickup element 743. The image pickup element 743 is a solid-state imaging device such as, for example, a CMOS sensor or a CCD. The image pickup element 743 takes an image of the infrared light collected by the lens 742. Accordingly, the image pickup element 743 takes an image of only the infrared light which has passed through the infrared filter 741 and generates image data. The image data generated by the image pickup element 743 is processed by the image processing circuit 744. Specifically, the image processing circuit 744 processes the image data obtained from the image pickup element 743, identifies a spot thereof having a high brightness, and outputs process result data representing the identified position coordinates and size of the area to the communication section 75. The imaging information calculation section 74 is fixed to the housing 71 of the core unit 70. The imaging direction of the imaging information calculation section 74 can be changed by changing the direction of the housing 71. The housing 71 is connected to the subunit 76 by the flexible connecting cable 79, and therefore the imaging direction of the imaging information calculation section 74 is not changed by changing the direction and position of the subunit 76. As described later in detail, a signal can be obtained in accordance with the position and the motion of the core unit 70 based on the process result data outputted by the imaging information calculation section 74.
The core unit 70 preferably includes a three-axis acceleration sensor 701. Further, the subunit 76 preferably includes a three-axis acceleration sensor 761. The three axis acceleration sensors 701 and 761 each detects for a linear acceleration in three directions, i.e., the up/down direction, the left/right direction, and the forward/backward direction. Alternatively, a two axis acceleration detection means which detects for only a linear acceleration along each of the up/down and left/right directions (or other pair of directions) may be used in another embodiment depending on the type of control signals used in the game process. For example, the three axis acceleration sensors 701 and 761 or the two axis acceleration sensors 701 and 761 may be of the type available from Analog Devices, Inc. or STMicroelectronics N.V. Preferably, each of the acceleration sensors 701 and 761 is of an electrostatic capacitance (capacitance-coupling) type that is based on silicon micro-machined MEMS (Micro Electro Mechanical Systems) technology. However, any other suitable acceleration detection technology (e.g., piezoelectric type or piezoresistance type) now existing or later developed may be used to provide the three axis acceleration sensors 701 and 761 or two axis acceleration sensors 701 and 761.
As one skilled in the art understands, the acceleration detection means, as used in the acceleration sensors 701 and 761, are capable of detecting for only acceleration (linear acceleration) along a straight line corresponding to each axis of the acceleration sensor. In other words, each of the direct outputs of the acceleration sensors 701 and 761 is limited to signals indicative of linear acceleration (static or dynamic) along each of the two or three axes thereof. As a result, the acceleration sensors 701 and 761 cannot directly detect movement along a non-linear (e.g. arcuate) path, rotation, rotational movement, angular displacement, tilt, position, attitude or any other physical characteristic.
However, through additional processing of the acceleration signals output from each of the acceleration sensors 701 and 761, additional information relating to the core unit 70 and the subunit 76 can be inferred or calculated, as one skilled in the art will readily understand from the description herein. For example, by detecting static acceleration (i.e., gravity), the outputs of the acceleration sensors 701 and 761 can be used to infer tilt of the object (core unit 70 or subunit 76) relative to the gravity vector by correlating tilt angles with detected acceleration. In this way, the acceleration sensors 701 and 761 can be used in combination with the micro computer 751 (or another processor) to determine tilts, attitudes or positions of the core unit 70 and the subunit 76. Similarly, various movements and/or positions of the core unit 70 and the subunit 76 can be calculated or inferred through processing of the acceleration signals generated by the acceleration sensors 701 and 761 when the core unit 70 containing the acceleration sensor 701 or the subunit 76 containing the acceleration sensor 761 is subjected to dynamic accelerations by, for example, the hand of a user, as described herein. In another embodiment, each of the acceleration sensors 701 and 761 may include an embedded signal processor or other type of dedicated processor for performing any desired processing of the acceleration signals outputted from the acceleration detection means prior to outputting signals to micro computer 751. For example, the embedded or dedicated processor could convert the detected acceleration signal to a corresponding tilt angle when the acceleration sensor is intended to detect static acceleration (i.e., gravity). Data representing the acceleration detected by each of the acceleration sensors 701 and 761 is outputted to the communication section 75.
In another exemplary embodiment, at least one of the acceleration sensors 701 and 761 may be replaced with a gyro-sensor of any suitable technology incorporating, for example, a rotating or vibrating element. Exemplary MEMS gyro-sensors that may be used in this embodiment are available from Analog Devices, Inc. Unlike the acceleration sensors 701 and 761, a gyro-sensor is capable of directly detecting rotation (or angular rate) around at least one axis defined by the gyroscopic element therein. Thus, due to the fundamental differences between a gyro-sensor and an acceleration sensor, corresponding changes need to be made to the processing operations that are performed on the output signals from these devices depending on which device is selected for a particular application.
More specifically, when the tilt or attitude is calculated using a gyro-sensor instead of the acceleration sensor, significant changes are necessary. Specifically, when using a gyro-sensor, the value of the tilt is initialized at the start of the detection. Then, data on the angular rate which is output from the gyro-sensor is integrated. Next, a change amount in tilt from the value, of the tilt initialized is calculated. In this case, the calculated tilt corresponds to an angle. In contrast, when the acceleration sensor calculates the tilt, the tilt is calculated by comparing the value of the gravitational acceleration of each axial component with a predetermined reference. Therefore, the calculated tilt can be represented as a vector. Thus, without initialization, an absolute direction can be determined with an acceleration detection means. The type of the value calculated as the tilt is also very different between a gyro sensor and an acceleration sensor; i.e., the value is an angle when a gyro sensor is used and is a vector when an acceleration sensor is used. Therefore, when a gyro sensor is used instead of an acceleration sensor or vice versa, data on tilt also needs to be processed through a predetermined conversion taking into account the fundamental differences between these two devices. Due to the fact that the nature of gyroscopes is known to one skilled in the art, as well as the fundamental differences between the acceleration detection means and the gyroscope, further details are not provided herein. While a gyro-sensor is advantageous in that a rotation can be directly detected, an acceleration sensor is generally more cost effective when used in connection with the controller described herein.
The communication section 75 includes the microcomputer 751, a memory 752, the wireless module 753 and the antenna 754. The micro computer 751 controls the wireless module 753 for wirelessly transmitting the transmission data while using the memory 752 as a storage area during the process. Further, the micro computer 751 controls the sound IC 707 and the vibrator 704 based on data from the game apparatus 3 having been received by the wireless module 753 via the antenna 754. The sound IC 707 processes sound data transmitted from the game apparatus 3 via the communication section 75, and the like.
Data from the core unit 70 including an operation signal (core key data) from the operation section 72, acceleration signals (core acceleration data) from the acceleration sensor 701, and the process result data from the imaging information calculation section 74 are outputted to the micro computer 751. An operation signal (sub key data) from the operation section 78 of the subunit 76 and acceleration signals (sub acceleration data) from the acceleration sensor 761 are outputted to the micro computer 751 via the connecting cable 79. The micro computer 751 temporarily stores the input data (core key data, sub key data, core acceleration data, sub acceleration data, and process result data) in the memory 752 as the transmission data which is to be transmitted to the receiving unit 6. The wireless transmission from the communication section 75 to the receiving unit 6 is performed periodically at a predetermined time interval. Since game process is generally performed at a cycle of 1/60 sec., data needs to be collected and transmitted at a cycle of a shorter time period. Specifically, the game process unit is 16.7 ms ( 1/60 sec.), and the transmission interval of the communication section 75 structured using the Bluetooth (registered trademark) technology is 5 ms. At the transmission timing to the receiving unit 6, the micro computer 751 outputs the transmission data stored in the memory 752 as a series of operation information to the wireless module 753. The wireless module 753 uses, for example, the Bluetooth (registered trademark) technology to modulate the operation information onto a carrier wave of a predetermined frequency, and radiates the low power radio wave signal from the antenna 754. Thus, the core key data from the operation section 72 included in the core unit 70, the sub key data from the operation section 78 included in the subunit 76, the core acceleration data from the acceleration sensor 701 included in the core unit 70, the sub acceleration data from the acceleration sensor 761 included in the subunit 76, and the process result data from the imaging information calculation section 74 are modulated onto the low power radio wave signal by the wireless module 753 and radiated from the core unit 70. The receiving unit 6 of the game apparatus 3 receives the low power radio wave signal, and the game apparatus 3 demodulates or decodes the low power radio wave signal to obtain the series of operation information (the core key data, the sub key data, the core acceleration data, the sub acceleration data and the process result data). Based on the obtained operation information and the game program, the CPU 30 of the game apparatus 3 performs the game process. In the case where the communication section 75 is structured using the Bluetooth (registered trademark) technology, the communication section 75 can have a function of receiving transmission data which is wirelessly transmitted from other devices.
As shown in FIG. 18, in order to play a game using the controller 7 with the game system 1, a player holds the core unit 70 with one hand (for example, a right hand) (see FIGS. 19 and 20), and holds the subunit 76 with the other hand (for example, a left hand) (see FIG. 22). The player holds the core unit 70 so as to point the front surface of the core unit 70 (that is, a side having an entrance through which light is incident on the imaging information calculation section 74 taking an image of the light) to the monitor 2. On the other hand, two LED modules 8L and 8R are provided in the vicinity of the display screen of the monitor 2. The LED modules 8L and 8R each outputs infrared light forward from the monitor 2.
When a player holds the core unit 70 so as to point the front surface thereof to the monitor 2, infrared lights outputted by the two LED modules 8L and 8R are incident on the imaging information calculation section 74. The image pickup element 743 takes images of the infrared lights incident through the infrared filter 741 and the lens 742, and the image processing circuit 744 processes the taken images. The imaging information calculation section 74 detects infrared components outputted by the LED modules 8L and 8R so as to obtain positions and area information of the LED modules 8L and 8R. Specifically, the imaging information calculation section 74 analyzes image data taken by the image pickup element 743, eliminates images which do not represent the infrared lights outputted by the LED modules 8L and 8R from the area information, and identifies points each having a high brightness as positions of the LED modules 8L and 8R. The imaging information calculation section 74 obtains position coordinates, coordinates of the centroid, and the like of each of the identified points having the high brightness and outputs the same as the process result data. When such process result data is transmitted to the game apparatus 3, the game apparatus 3 can obtain, based on the position coordinates and the coordinates of the centroid, operation signals relating to the motion, attitude, position and the like of the imaging information calculation section 74, that is, the core unit 70, with respect to the LED modules 8L and 8R. Specifically, the position having a high brightness in the image obtained through the communication section 75 is changed in accordance with the motion of the core unit 70, and therefore a direction input or coordinate input is performed in accordance with the position having the high brightness being changed, thereby enabling a direction input or a coordinate input to be performed along the moving direction of the core unit 70.
Thus, the imaging information calculation section 74 of the core unit 70 takes images of stationary markers (infrared lights from the two LED modules 8L and 8R in the present embodiment), and therefore the game apparatus 3 can use the process result data relating to the motion, attitude, position and the like of the core unit 70 in the game process, whereby an operation input, which is different from an input made by pressing an operation button or using an operation key, is further intuitively performed. As described above, since the markers are provided in the vicinity of the display screen of the monitor 2, the motion, attitude, position and the like of the core unit 70 with respect to the display screen of the monitor 2 can be easily calculated based on positions from the markers. That is, the process result data used for obtaining the motion, attitude, position and the like of the core unit 70 can be used as operation input immediately applied to the display screen of the monitor 2.
With reference to FIGS. 19 and 20, a state of a player holding the core unit 70 with one hand will be described. FIG. 19 shows an exemplary state of a player holding the core unit 70 with a right hand as seen from the front surface side of the core unit 70. FIG. 20 shows an exemplary state of a player holding the core unit 70 with a right hand as seen from the left side of the core unit 70.
As shown in FIGS. 19 and 20, the overall size of the core unit 70 is small enough to be held by one hand of an adult or even a child. When the player puts a thumb on the top surface of the core unit 70 (for example, near the cross key 72a), and puts an index finger in the recessed portion on the bottom surface of the core unit 70 (for example, near the operation button 72i), the light entrance of the imaging information calculation section 74 on the front surface of the core unit 70 is exposed forward to the player. It should be understood that also when the player holds the core unit 70 with a left hand, the holding state is the same as that described for the right hand.
Thus, the core unit 70 allows a player to easily operate the operation section 72 such as the cross key 72a or the operation button 72i while holding the core unit 70 with one hand. Further, when the player holds the core unit 70 with one hand, the light entrance of the imaging information calculation section 74 on the front surface of the core unit 70 is exposed, whereby the light entrance can easily receive infrared lights from the aforementioned two LED modules 8L and 8R. That is, the player can hold the core unit 70 with one hand without preventing the imaging information calculation section 74 from functioning. That is, when the player moves his or her hand holding the core unit 70 with respect to the display screen, the core unit 70 can further perform an operation input enabling a motion of the player's hand to directly act on the display screen.
As shown in FIG. 21, the LED modules 8L and 8R each has a viewing angle θ1. The image pickup element 743 has a viewing angle θ2. For example, the viewing angle θ1 of the LED modules 8L and 8R is 34 degrees (half-value angle), and the viewing angle θ2 of the image pickup element 743 is 41 degrees. When both the LED modules 8L and 8R are in the viewing angle θ2 of the image pickup element 743, and the image pickup element 743 is in the viewing angle θ1 of the LED module 8L and the viewing angle θ1 of the LED module 8R, the game apparatus 3 determines a position of the core unit 70 using positional information relating to the point having high brightness of the two LED modules 8L and 8R.
When either the LED module 8L or LED module 8R is in the viewing angle θ2 of the image pickup element 743, or when the image pickup element 743 is in either the viewing angle θ1 of the LED module 8L or the viewing angle θ1 of the LED module 8R, the game apparatus 3 determines a position of the core unit 70 using the positional information relating to the point having high brightness of the LED module 8L or the LED module 8R.
As described above, the tilt, attitude or position of the core unit 70 can be determined based on the output (core acceleration data) from the acceleration sensor 701 of the core unit 70. That is, the core unit 70 functions as an operation input means for performing an operation in accordance with a player moving a hand holding the core unit 70, for example, upward, downward, leftward, or rightward.
Next, with reference to FIG. 22, a state of a player holding the subunit 76 with one hand will be described. FIG. 22 shows an exemplary state of a player holding the subunit 76 with a left hand as seen from the right side of the subunit 76.
As shown in FIG. 22, the overall size of the subunit 76 is small enough to be held by one hand of an adult or even a child. For example, a player can put a thumb on the top surface of the subunit 76 (for example, near the stick 78a), put an index finger on the front surface of the subunit 76 (for example, near the operation buttons 78d and 78e), and put a middle finger, a ring finger and a little finger on the bottom surface of the subunit 76 so as to hold the subunit 76. It should be understood that also when the player holds the subunit 76 with a right hand, the holding state is similar to that described for the left hand. Thus, the subunit 76 allows the player to easily operate the operation section 78 such as the stick 78a and the operation buttons 78d and 78e while holding the subunit 76 with one hand.
As described above, the tilt, attitude or position of the subunit 76 can be determined based on the output (sub acceleration data) from the acceleration sensor 761 of the subunit 76. That is, the subunit 76 functions as an operation input means for performing an operation in accordance with the player moving a hand holding the subunit 76, for example, upward, downward, leftward, and rightward.
Here, an exemplary game played using the aforementioned controller 7 will be described. As a first example, a shooting game played using the controller 7 will be described. FIG. 23 is a diagram illustrating an exemplary game image displayed on the monitor 2 when the game apparatus 3 executes the shooting game.
As shown in FIG. 23, a portion of a three-dimensional virtual game space S is displayed on the display screen of the monitor 2. As a game object acting in accordance with an operation of the controller 7, a portion of the player character P and a portion of a gun G held by the player character P are displayed on the display screen. Moreover, the virtual game spaces displayed on the display screen represents a field of front vision of the player character P, and for example an opponent character E is displayed as a shooting target in FIG. 23. A target indicating a position at which the player character P shoots the gun G is displayed on the display screen as the target cursor T.
In the shooting game having such a game image displayed on the monitor 2, a player operates the core unit 70 with one hand and operates the subunit 76 with the other hand as shown in FIG. 18 so as to play the game. For example, when the player inclines the stick 78a (see FIGS. 11A, 11B, 11C and 12) on the subunit 76, the player character P is moved in the virtual game space S in accordance with the inclining direction. Further, when the player moves his or her hand holding the core unit 70 with respect to the display screen, the target cursor T is moved in accordance with the motion, attitude, position and the like of the core unit 70 with respect to the monitor 2 (LED modules 8L and 8R). When the player presses the operation button 72i (shown in FIG. 6) on the core unit 70, the player character P shoots the gun G at the target cursor T.
That is, while the player uses the stick 78a on the subunit 76 so as to instruct the player character P to move, the player can operate the core unit 70 as if the core unit 70 is a gun for the shooting game, thereby enhancing enjoyment in playing a shooting game. The player can perform an operation of moving the player character P and an operation of moving the target cursor T by using respective units held by different hands, whereby the player can perform the respective operations as independent ones. For example, since the virtual game space S displayed on the display screen is changed in accordance with the movement of the player character P, it is sometimes difficult to keep the target positioned near a position observed by the player in the virtual game space S because, for example, the player may be paying attention to the opponent character E suddenly jumping into the virtual game space S. However, while the player is moving the player character P with one hand (for example, a thumb of a left hand), the player can control a motion of the arm (for example, a right arm) which is not used for moving the player character P such that the core unit 70 has its front surface pointed to the observed position, thereby substantially enhancing flexibility for operating the controller 7 and increasing the reality of the shooting game. Further, in order to move the target cursor T, the player moves the controller. However, the operation of moving the controller does not hinder the player from performing a direction instruction operation for moving the player character P, thereby enabling the player to stably perform the two direction instruction operations. That is, by using the controller 7, the player can freely use his or her left and right hands and can perform a new operation having increased flexibility, which cannot be achieved using a physically single controller.
In a second example, a player inclines the stick 78a on the subunit 76 so as to move the player character P in the virtual game space S in accordance with the inclining direction as in the first example. The player moves a hand holding the core unit 70 with respect to the display screen so as to move a sight point of a virtual camera in accordance with a position of the core unit 70 with respect to the monitor 2 (LED modules 8L and 8R). These operations allow the player to observe a position to which the core unit 70 is pointed in the virtual game space S while operating the stick 78a on the subunit 76 so as to instruct the player character P to move.
In the above description, the controller 7 and the game apparatus 3 are connected to each other by wireless communication. However, the controller 7 and the game apparatus 3 may be electrically connected to each other by a cable. In this case, the cable connected to the core unit 70 is connected to a connection terminal of the game apparatus 3.
Moreover, in the present embodiment, only the core unit 70 among the core unit 70 and the subunit 76 of the controller 7 has the communication section 75. However, the subunit 76 may have the communication section for wirelessly transmitting the transmission data to the receiving unit 6. Further, both the core unit 70 and the subunit 76 may have the respective communication sections. For example, the respective communication sections included in the core unit 70 and the subunit 76 may wirelessly transmit the transmission data to the receiving unit 6, or the communication section of the subunit 76 may wirelessly transmit the transmission data to the communication section 75 of the core unit 70, and the communication section 75 of the core unit 70 may wirelessly transmit, to the receiving unit 6, the received transmission data from the subunit 76 and the transmission data of the core unit 70. In these cases, the connecting cable 79 for electrically connecting between the core unit 70 and the subunit 76 can be eliminated.
In the above description, the receiving unit 6 connected to the connection terminal of the game apparatus 3 is used as a receiving means for receiving transmission data which is wirelessly transmitted from the controller 7. Alternatively, the receiving means may be a receiving module built in the game apparatus 3. In this case, the transmission data received by the receiving module is outputted to the CPU 30 via a predetermined bus.
Although in the present embodiment the imaging information calculation section 74 included in the core unit 70 is described as an example of a determining section for outputting a signal (process result data) in accordance with a motion of the core unit 70 body, the imaging information calculation section 74 may be provided in another form. For example, the core unit 70 may include the acceleration sensor 701 as described above, or may include a gyro sensor. The acceleration sensor or the gyro sensor can be used to determine a motion or attitude of the core unit 70, and, therefore, can be used as a determining section for outputting a signal in accordance with the motion of the core unit 70 body using the detection signal for the motion or attitude. In this case, the imaging information calculation section 74 may be eliminated from the core unit 70, or sensor and the imaging information calculation section can be used in combination.
Further, although in the present embodiment only the core unit 70 includes the imaging information calculation section 74, the subunit 76 may also include a similar imaging information calculation section.
Further, when the controller 7 includes a plurality of units, each of which may have a plurality of operation means such as the imaging information calculation section, the acceleration sensor, the gyro sensor, the stick, the cross key, and the operation button, various combination of the operation means can realize various controllers. Here, the operation means included in the core unit 70 and the subunit 76 are classified into an operation means A and an operation means B. The operation means A, such as the imaging information calculation section 74, the acceleration sensors 701 and 761, and the gyro sensor, outputs a signal in accordance with the movement of the unit body. The operation means B, such as the stick, the cross key, the operation button, the touch pad, outputs a signal in accordance with the player pressing a button, tilting a component or touching the same.
When the core unit 70 includes the operation means A and the subunit 76 includes the operation means B, the player can move one hand holding the core unit 70 while the player makes an input with a finger of the other hand holding the subunit 76 as in the case of a conventional controller. That is, the player can perform different operations with a right and a left hands, respectively, thereby realizing a new operation which cannot be performed by a conventional controller. In this case, according to the present invention, operation data outputted by the operation means A corresponds to first operation data, and operation data outputted by the operation means B corresponds to second operation data. Further, the controller may be constructed such that the subunit 76 may include the operation means A, the core unit 70 may include the operation means A, and the subunit 76 may include the operation means A and the operation means B. In this manner, the player can move both hands individually, thereby realizing an increasingly improved operation. In this case, according to the present invention, operation data outputted by the operation means A of the subunit 76 corresponds to third operation data.
Further, when the core unit 70 and the subunit 76 each includes the operation means A, the player can move one hand holding the core unit 70 while the player can move the other hand holding the subunit 76 so as to make an input. That is, the player can move a right and a left hands individually, thereby realizing a new operation which cannot be performed by a conventional controller. In this case, according to the present invention, operation data outputted by the respective operation means A of the core unit 70 and the subunit 76 correspond to first operation data and second operation data. Further, each of the core unit 70 and the subunit 76 may include both the operation means A and the operation means B. In this manner, the player can perform operations by moving both hands and using fingers of both hands, thereby realizing a new operation. In this case, according to the present invention, operation data outputted by the operation means B of the core unit 70 corresponds to first key operation data, and operation data outputted by the operation means B of the subunit 76 corresponds to second key operation data.
Furthermore, when each of the core unit 70 and the subunit 76 includes the operation means A, one of the core unit 70 or the subunit 76 may include various types of operation means A. As described above, when the operation means A includes the imaging information calculation section, a direction, a position and the like of the unit with respect to the imaging target (marker) can be calculated, thereby enabling an operation based on the direction and the position of the unit with respect to the monitor 2. On the other hand, when the operation means A includes the acceleration sensor or the gyro sensor, a tilt, an attitude, a position and the like of the unit itself can be calculated, thereby enabling an operation based on the attitude and the position of the unit. Accordingly, when the core unit 70 includes the imaging information calculation section and one of the acceleration sensor or the gyro sensor, and the subunit 76 includes the acceleration sensor or the gyro sensor, the core unit 70 can perform the aforementioned two operations. In this case, according to the present invention, operation data outputted by the imaging information calculation section of the core unit 70 corresponds to first operation data, operation data outputted by the acceleration sensor or the gyro sensor of the subunit 76 corresponds to second operation data, and operation data outputted by the acceleration sensor or the gyro sensor of the core unit 70 corresponds to third operation data.
In the present embodiment, image data taken by the image pickup element 743 is analyzed so as to obtain position coordinates and the like of an image of infrared lights from the LED modules 8L and 8R, and the core unit 70 generates process result data from the obtained coordinates and the like and transmits the process result data to the game apparatus 3. However, the core unit 70 may transmit data obtained in another process step to the game apparatus 3. For example, the core unit 70 transmits to the game apparatus 3 image data taken by the image pickup element 743, and the CPU 30 may perform the aforementioned analysis so as to obtain process result data. In this case, the image processing circuit 744 can be eliminated from the core unit 70. Alternatively, the core unit 70 may transmit, to the game apparatus 3, the image data having been analyzed halfway. For example, the core unit 70 transmits to the game apparatus 3 data indicating a brightness, a position, an area size and the like obtained from the image data, and the CPU 30 may perform the remaining analysis so as to obtain process result data.
Although in the present embodiment infrared lights from the two LED modules 8L and 8R are used as imaging targets of the imaging information calculation section 74 in the core unit 70, the imaging target is not restricted thereto. For example, infrared light from one LED module or infrared lights from at least three LED modules provided in the vicinity of the monitor 2 may be used as the imaging target of the imaging information calculation section 74. Alternatively, the display screen of the monitor 2 or another emitter (room light or the like) can be used as the imaging target of the imaging information calculation section 74. When the position of the core unit 70 with respect to the display screen is calculated based on the positional relationship between the imaging target and the display screen of the monitor 2, various emitters can be used as the imaging target of the imaging information calculation section 74.
The aforementioned shapes of the core unit 70 and the subunit 76 are merely examples. Further, the shape, the number, setting position and the like of each of the operation section 72 of the core unit 70 and the operation section 78 of the subunit 76 are merely examples. Needless to say, even when the shape, the number, the setting position and the like of each of the core unit 70, the subunit 76, the operation section 72, and the operation section 78 are different from those described in the embodiment, the present invention can be realized. Further, the imaging information calculation section 74 (light entrance of the imaging information calculation section 74) of the core unit 70 may not be positioned on the front surface of the housing 71. The imaging information calculation section 74 may be provided on another surface at which light can be received from the exterior of the housing 71.
Further, although the speaker 706, the sound IC 707, and the amplifier 708 as described above are included in the core unit 70, any devices at hand capable of outputting a sound may be included in either the subunit 76 or the core unit 70.
Thus, the controller of the present invention allows a player to operate both the core unit 70 and the subunit 76 included therein so as to enjoy a game. For example, the core unit 70 has a function of outputting a signal in accordance with a motion of the unit body including the imaging information calculation section 74 and the accelerator sensor 701, and the subunit 76 has a function of outputting a signal in accordance with a direction input operation performed by the player. For example, when used is a controller into which the core unit 70 and the subunit 76 are integrated, the whole controller has to be moved so as to output a signal in accordance with the motion of the unit body, thereby exerting some influence on the direction input operation. Further, the integration of the core unit 70 and the subunit 76 causes the opposite influence, that is, flexibility, which is realized by separation between the core unit 70 and the subunit 76, is substantially reduced. As another example, the core unit 70 may have a function of outputting a signal in accordance with a motion of the unit body including the imaging information calculation section 74 and the acceleration sensor 701, and the subunit 76 may have a function of outputting a signal in accordance with the motion of the unit body including the acceleration sensor 761. Therefore, the player can move both hands holding the different units individually so as to make an input. Accordingly, the core unit 70 and the subunit 76 can be separated into a right unit and a left unit as in the case of a conventional controller for the game apparatus, and simultaneously the core unit 70 and the subunit 76 allow the player to freely use his or her right and left hands, thereby providing the player with a new operation, which cannot be performed by the integrated controller. Further, the controller can be operated with substantially enhanced flexibility, thereby providing a player with a game operation having increased reality.
The game controller and the game system according to the present invention can realize an operation having increased flexibility, and are useful as a game controller which includes two independent units and is operated by a player holding the two independent units, a game system including the game controller, and the like.
While the invention has been described in detail, the foregoing description is in all aspects illustrative and not restrictive. It is understood that numerous other modifications and variations can be devised without departing from the scope of the invention.

## Claims

1. An ergonomic controller configured to be grasped by a hand of a user, the controller comprising:
a symmetrical housing having an elongated shape comprising:
a convex curved surface structurally dimensioned and shaped to contact a palm of a partially closed hand grasping and supporting the housing,
a complex curved surface that is simultaneously convex in one dimension and concave in another dimension to define a saddle surface, the complex curved surface dimensioned, curved, and configured to trap and be supported by at least a middle finger of the grasping hand contacting the saddle surface, and
a forward surface disposed between the convex curved surface and the complex curved surface, the forward surface being dimensioned and shaped to be reachable by an index finger of the grasping hand;

an operation section positioned on the forward surface to be operated by at least the index finger of the grasping hand; and
an output device disposed within the housing and operatively connected to the operation section, the output device outputting signals responsive at least to operation of the operation section.

2. The controller of claim 1, wherein the operation section includes at least a first operation button on the forward surface configured to output operation data based on operation of the first operation button.

3. The controller of claim 1, further comprising an operation control provided on the convex curved surface of the housing.

4. The controller of claim 1, further comprising a direction input section comprising a stick projecting from the convex curved surface, direction being designated by inclining the stick.

5. The controller of claim 4, wherein an octagonal opening for allowing the stick to project from the convex curved surface is formed on the convex curved surface of the housing.

6. The controller of claim 4, wherein the direction input section includes four independent operation buttons provided in a forward direction, a backward direction, a rightward direction, and a leftward direction.

7. The controller of claim 1, further comprising a direction input section comprising a cross-shaped switch.

8. The controller of claim 1, further comprising a direction input section comprising at least one of a slide pad and a touch pad, the at least one of the slide pad and the touch pad configured to designate a direction.

9. The controller of claim 1, further comprising an inertial sensor disposed in the housing to sense and output data based on aspects of orientation.

10. The controller of claim 9, wherein the inertial sensor is at least one of an accelerometer and/or a gyro sensor.

11. The controller of claim 1, wherein the output device comprising:
a transceiver configured to send/receive data;
a speaker; and
a sound controller configured to generate sound.

12. The controller of claim 1, wherein the complex curved surface comprises a latitudinal convex curvature and a longitudinal concave curvature.

13. The controller of claim 1, wherein the forward surface and the convex surface meet at an edge.

14. The controller of claim 1, wherein the complex curved surface further conformed to engage a ring finger and a little finger of the grasping hand.

15. The controller of claim 1, wherein the forward surface intersects a curve defined by the convex surface such that the index finger of the grasping hand can move directly from the forward surface to the convex surface without removing the index finger from the housing of the controller.

16. A controller, comprising:
an elongated housing including a head portion and a body portion adjacent to the head portion, the housing further including a top curved surface having a convex curvature, a bottom curved surface opposed to the top curved surface and having a convex curvature and a concave curvature, and a front curved surface substantially perpendicular to the top and bottom surfaces in the head portion of the housing and having a convex curvature;
a first operation button section provided on the front curved surface of the housing, the first operation button section outputs, as operation data, data based on an operation performed through the first operation button section; and
an output device disposed within the housing and operatively connected to the first operation button section, the output device outputting signals responsive at least to operation of the first operation button section,
the concave curvature and the convex curvature of the bottom curved surface sharing a saddle point of the bottom curved surface and being bisected by a plane of symmetry, and
the front curved surface meeting the bottom curved surface at a first edge and the front curved surface meeting the top curved surface at a second edge oppositely located to the first edge.

17. The controller of claim 16, further comprising:
a direction input section provided at the head portion of the top curved surface of the housing and configured to allow the user to designate a direction, the direction input section outputs, as the operation data, data based on the direction designated by the user.

18. The controller according to claim 17, wherein the direction input section is a stick which projects from the top curved surface of the housing, the direction input section configured to designate a direction by inclining the stick.

19. The controller according to claim 18, wherein an octagonal opening for allowing the stick to project from the top curved surface of the housing is formed on the top curved surface of the housing.

20. The controller according to claim 17, wherein the direction input section includes four independent operation buttons provided in a forward direction, a backward direction, and a rightward direction, and a leftward direction, respectively.

21. The controller according to claim 17, wherein the direction input section is a cross-shaped switch.

22. The controller according to claim 17, wherein the direction input section is one of a slide pad and a touch pad, the one of the slide pad and the touch pad being capable of allowing a direction to be designated.

23. The controller according to claim 16, further comprising one of an acceleration sensor and a gyro sensor, the one of the acceleration sensor and the gyro sensor being incorporated in the housing so as to output data based on a motion of the housing,
wherein the operation data further includes output data from one of the acceleration sensor and the gyro sensor.

24. The controller according to claim 16, further comprising:
a transceiver configured to send/receive data;
a speaker; and
a sound controller configured to generate sound from the speaker.

25. The controller according to claim 16, wherein the convex curvature being a latitudinal convex curvature and the concave curvature being a longitudinal concave curvature.

26. The controller according to claim 16, wherein the concave curvature of the bottom curved surface being in the head portion of the elongated housing and the convex curvature of the bottom curved surface being in the body portion of the elongated housing.

27. The controller according to claim 16, wherein the second edge of the front curved surface intersecting a curve defined by the top curved surface.

28. A controller arrangement, comprising:
a core unit, comprising:
a housing having a parallelepiped shape extending in a longitudinal direction, the housing having a top surface and a bottom surface, and
an operation section having at least a direction input section provided at a front part of the top surface of the housing, for allowing a user to designate a direction and outputs, as the operation data, at least data based on the direction designated through the direction input section; and

a sub unit operatively coupled to the core unit, the sub unit comprising:
an elongated housing including a head portion and a body portion adjacent to the head portion, the housing further including a top curved surface having a convex curvature, a bottom curved surface opposed to the top curved surface and having a convex curvature and a concave curvature, and a front curved surface substantially perpendicular to the top and bottom surfaces in the head portion of the housing and having a convex curvature;
a first operation button section provided on the front curved surface of the housing, the first operation button section outputs, as operation data, data based on an operation performed through the first operation button section; and
an output device disposed within the housing and operatively connected to the first operation button section, the output device outputting signals responsive at least to operation of the first operation button section,
the concave curvature and the convex curvature of the bottom curved surface sharing a saddle point of the bottom curved surface and being bisected by a plane of symmetry, and
the front curved surface meeting the bottom curved surface at a first edge and the front curved surface meeting the top curved surface at a second edge oppositely located to the first edge.