US20100091038A1 - Storage medium having input processing program stored thereon and nput processing device - Google Patents

Storage medium having input processing program stored thereon and nput processing device Download PDF

Info

Publication number
US20100091038A1
US20100091038A1 US12/640,685 US64068509A US2010091038A1 US 20100091038 A1 US20100091038 A1 US 20100091038A1 US 64068509 A US64068509 A US 64068509A US 2010091038 A1 US2010091038 A1 US 2010091038A1
Authority
US
United States
Prior art keywords
coordinates
dimensional
virtual
axis
shift amount
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US12/640,685
Inventor
Hideki Konno
Yoshitaka Ajioka
Yasushi Ebisawa
Kiyoshi Mizuki
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nintendo Co Ltd
Original Assignee
Nintendo Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nintendo Co Ltd filed Critical Nintendo Co Ltd
Priority to US12/640,685 priority Critical patent/US20100091038A1/en
Publication of US20100091038A1 publication Critical patent/US20100091038A1/en
Abandoned legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04815Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/0416Control or interface arrangements specially adapted for digitisers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/10Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals
    • A63F2300/1068Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals being specially adapted to detect the point of contact of the player on a surface, e.g. floor mat, touch pad
    • A63F2300/1075Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals being specially adapted to detect the point of contact of the player on a surface, e.g. floor mat, touch pad using a touch screen
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/30Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by output arrangements for receiving control signals generated by the game device
    • A63F2300/301Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by output arrangements for receiving control signals generated by the game device using an additional display connected to the game console, e.g. on the controller

Definitions

  • the present invention relates to a storage medium having stored thereon an input processing program, and an input processing device. More particularly, the present invention relates to a storage medium having stored thereon an input processing program which is operated by using a device for inputting 2-dimensional coordinates on a display screen to a virtual 3-dimensional space, and an input processing device.
  • a virtual 3-dimensional space is displayed on a display screen and a touch panel or the like associated with the display screen is provided. And based on a position, on the touch panel, where a user presses down, X and Y coordinates of the 3-dimensional space are determined, and based on the magnitude of a pressure at which the user presses down on the touch panel, a Z coordinate of the 3-dimensional space (a depth direction) is determined.
  • the present invention provides a storage medium having stored thereon an input processing program in which based on an input from a device for inputting 2-dimensional coordinates on a display screen, coordinates in a virtual 3-dimensional space are obtained, and an input processing device.
  • a first aspect of one embodiment of the present invention is directed to a storage medium having stored thereon a program executed by a computer ( 21 ) in an input processing device ( 1 ).
  • the input processing device comprises a display screen ( 12 ) and a pointing device ( 13 ) for inputting corresponding 2-dimensional coordinates on the display screen.
  • the program causes the computer to execute a display control step (S 57 ), a 2-dimensional coordinate detection step (S 54 ), a 2-dimensional coordinate shift amount calculation step (S 72 ), and a 3-dimensional coordinate shift amount conversion step (S 73 ).
  • a virtual 3-dimensional space is displayed on the display screen ( FIG. 3 , FIG. 4A , and FIG. 4B ).
  • the 2-dimensional coordinate detection step 2-dimensional coordinates inputted from the pointing device are detected.
  • shift amounts (vector v), per unit of time, of the 2-dimensional coordinates detected in the 2-dimensional coordinate detection step are calculated according to a predetermined calculation start condition (Yes in S 51 , No in S 52 ).
  • the shift amounts calculated in the 2-dimensional coordinate shift amount calculation step are converted to 3-dimensional coordinate shift amounts (vector V) in the virtual 3-dimensional space.
  • the pointing device is an input device for designating 2-dimensional coordinates on the display screen, such as a touch panel, a mouse, a track pad, and a track ball.
  • a coordinate system used for each input device is a touch panel coordinate system or a screen coordinate system.
  • the computer is further operable to execute an input status determination step (S 52 ).
  • the input status determination step a status inputted from the pointing device is determined.
  • the 2-dimensional coordinate shift amount calculation step based on the calculation start condition that calculation starts when a status where an input from the pointing device is being continuously conducted (Yes in S 52 ) is changed to a status where there is no input (No in S 52 ) is determined in the input status determination step, shift amounts, per unit of time, of the 2-dimensional coordinates detected in the 2-dimensional coordinate detection step immediately before the status of no input are calculated.
  • a predetermined virtual projection plane (S 3 in FIG. 5 ) is set in the virtual 3-dimensional space (S 53 ) and when it is determined in the input status determination step that the input from the pointing device is being continuously conducted, a predetermined object (I) is displayed at a position where the 2-dimensional coordinates detected in the 2-dimensional coordinate detection step are projected on the virtual projection plane ( FIG. 3 ).
  • the object is, based on the 3-dimensional coordinate shift amounts, lifted off the virtual projection plane, moved in the virtual 3-dimensional space, and displayed therein ( FIG. 4B ).
  • a display angle ( ⁇ ) of the object to be projected on the virtual projection plane is controlled based on the 2-dimensional coordinates detected in the 2-dimensional coordinate detection step (S 55 , FIG. 8 ).
  • the computer is further operable to execute a motion trajectory calculation step (S 59 ).
  • the 3-dimensional coordinate shift amounts converted in the 3-dimensional coordinate shift amount conversion step are set as an initial motion vector (V) of the object in the virtual 3-dimensional space, and a motion trajectory, per unit of time, in the virtual 3-dimensional space is calculated.
  • the display control step based on the motion trajectory calculated in the motion trajectory calculation step, the object is lifted off the virtual projection plane, moved in the virtual 3-dimensional space, and displayed therein.
  • a display angle of the object to be projected on the virtual projection plane is controlled based on the 2-dimensional coordinates detected in the 2-dimensional coordinate detection step.
  • an initial normal vector (n) of the object is set according to the display angle, and a motion trajectory, per unit of time, in the virtual 3-dimensional space is calculated based on the motion vector and the normal vector.
  • a shift amount (Vz) of a third axis perpendicular to the first and the second axes are calculated and a 3-dimensional coordinate shift amount conversion is conducted.
  • a shift amount Vx of the first axis, a shift amount Vy of the second axis, and a shift amount Vz of the third axis, which are represented as the 3-dimensional coordinate shift amounts, are calculated using
  • constants a, b, c, d, e, and f respectively vary according to each kind of the objects ( FIG. 7 ).
  • a tenth aspect is directed to a program which is executed by the computer in the input processing device.
  • the input processing device comprises a display screen and a pointing device for inputting corresponding 2-dimensional coordinates on the display screen, and a virtual 3-dimensional space is displayed on the display screen.
  • the program causes the computer operable to execute a projection plane setting step (S 53 ), a 2-dimensional coordinate detection step (S 54 ), an on-projection-plane moving step (S 54 ), an in-3-dimensional-space moving step (S 59 ), and a display control step (S 57 ).
  • the projection plane setting step the virtual projection plane is set in the virtual 3-dimensional space.
  • the 2-dimensional coordinate detection step the 2-dimensional coordinates inputted from the pointing device are set.
  • the on-projection-plane moving step by projecting on the virtual projection plane the 2-dimensional coordinates detected in the 2-dimensional coordinate detection step, a predetermined object is moved to a position on the virtual projection plane, corresponding to the 2-dimensional coordinates.
  • the object In the in-3-dimensional-space moving step, the object is moved in the virtual 3-dimensional space outside the virtual projection plane, according to a predetermined input condition.
  • the display control step the object which moves in the on-projection-plane moving step and the in-3-dimensional-space moving step is represented in the virtual 3-dimensional space and displayed on the display screen.
  • An eleventh aspect is directed to an input processing device comprising a display screen, a pointing device, a display control means, a 2-dimensional coordinate detection means, a 2-dimensional coordinate shift amount calculation means, and a 3-dimensional coordinate shift amount conversion means.
  • the pointing device inputs corresponding 2-dimensional coordinates on the display screen.
  • the display control means displays the virtual 3-dimensional space on the display screen.
  • the 2-dimensional coordinate detection means detects 2-dimensional coordinates inputted from the pointing device.
  • the 2-dimensional coordinate shift amount calculation means according to the predetermined calculation start condition, calculates shift amounts, per unit of time, of the 2-dimensional coordinates detected by the 2-dimensional coordinate detection means.
  • the 3-dimensional coordinate shift amount conversion means converts the shift amounts calculated by the 2-dimensional coordinate shift amount calculation means, to the 3-dimensional coordinate shift amounts in the virtual 3-dimensional space.
  • the pointing device is a touch panel covering the display screen.
  • a thirteenth aspect is directed to an input processing device comprising a display screen, a pointing device, a projection plane setting means, a 2-dimensional coordinate detection means, an on-projection-plane moving means, an in-3-dimensional-space moving means, and a display control means.
  • the display screen displays a virtual 3-dimensional space.
  • the pointing device inputs corresponding 2-dimensional coordinates on the display screen.
  • the projection plane setting means sets a virtual projection plane in the virtual 3-dimensional space.
  • the 2-dimensional coordinate detection means detects the 2-dimensional coordinates inputted from the pointing device.
  • the on-projection-plane moving means by projecting on the virtual projection plane the 2-dimensional coordinates detected by the 2-dimensional coordinate detection means, moves a predetermined object to a position on the virtual projection plane, corresponding to the 2-dimensional coordinates.
  • the in-3-dimensional-space moving means moves the object in the virtual 3-dimensional space outside the virtual projection plane.
  • the display control means represents in the virtual 3-dimensional space the object which is moved by the on-projection-plane moving means and the in-3-dimensional-space moving means, and displays the object on the display screen.
  • the pointing device is a touch panel covering the display screen.
  • the shift amounts of the 2-dimensional coordinates are converted to the shift amounts of the 3-dimensional coordinates according to the predetermined calculation start condition
  • a simple configuration can achieve the conversion of the 2-dimensional coordinates to the 3-dimensional coordinates without providing an extra input device of a pressing force detection function or the like for obtaining 3-dimensional shift amounts.
  • a heavy burden on a pointing device such as a touch panel is eliminated and a reduction in device reliability, which accrues from frequent breakdowns or a shorter life, can be avoided.
  • the 2-dimensional coordinates detected immediately before the status of no input are converted to the 3-dimensional coordinates. Therefore, a simple operation allows the control by appropriately switching from the input based on the 2-dimensional coordinates to the input based on the 3-dimensional coordinates in the virtual 3-dimensional space.
  • an input processing where according to 2-dimensional coordinates inputted from a pointing device for inputting 2-dimensional coordinates on a display screen, an object moves on a virtual projection plane and when the pointing device comes to input nothing, the object leaves the virtual projection plane and moves in the virtual 3-dimensional space.
  • a game processing can be realized where an item moves on a virtual projection plane set in a 3-dimensional game space while an input from a pointing device is being continuously conducted and the item is thrown from the virtual projection plane to a game space when the pointing device comes to input nothing.
  • a display angle of an object can be controlled based on 2-dimensional coordinates inputted from a pointing device.
  • a motion trajectory of an object is shifted based on the converted 3-dimensional coordinate shift amounts, a variety of motion trajectories can be displayed.
  • a motion trajectory of an object is shifted further based on a normal vector obtained from a display angle, of the object, which varies according to 2-dimensional coordinates, a variety of motion trajectories according to positions designated by a pointing device can be displayed.
  • a third axis component perpendicular to 2 axes composing a 2-dimensional coordinate system is calculated based on 2-dimensional coordinate shift amounts, 3-dimensional coordinate shift amounts can be easily obtained from the 2-dimensional shift amounts.
  • an input control can be realized under which an object moves on a virtual projection plane according to coordinates inputted from a pointing device for inputting 2-dimensional coordinates on a display screen and the object moves from a virtual projection plane to a virtual 3-dimensional space according to the predetermined input condition.
  • the input control device enables the same effect as that of the aforementioned storage medium having stored thereon the input control program.
  • FIG. 1 is an outline view illustrating a game apparatus 1 executing a game program according to one embodiment of the present invention
  • FIG. 2 is a block diagram illustrating the game apparatus 1 shown in FIG. 1 ;
  • FIG. 3 shows an example of a display screen image on the second LCD 12 , illustrating a view of determining an initial position of an item I to be thrown in a game space;
  • FIG. 4A and FIG. 4B show examples of display screen images on the second LCD 12 , illustrating views of operations of throwing the item I in the game space and of moving the thrown item I in the game space;
  • FIG. 5 is a conceptual diagram illustrating a virtual 3-dimensional game space and a virtual projection plane
  • FIG. 6A and FIG. 6B are conceptual diagrams illustrating a vector v (vx, vy) and a vector V (Vx, Vy, Vz);
  • FIG. 7 shows an example of setting of constants a to f used for a coordinate conversion
  • FIG. 8 shows an example of a screen display image of the item I according to a tilt angle which is initially set on the item I;
  • FIG. 9 is a conceptual diagram of a motion vector and a normal vector which are set when the item I leaves the virtual projection plane and moves in the virtual game space;
  • FIG. 10 is a flow chart illustrating an operation conducted by the game apparatus 1 by executing the game program according to the present invention.
  • FIG. 11 is a flow chart illustrating an operation conducted by the game apparatus 1 by executing the game program according to an embodiment of the present invention.
  • FIG. 1 is an outline view showing an outer appearance of the game apparatus 1 which executes a game program.
  • a hand-held type game apparatus is illustrated herein.
  • a game program used in the following explanation is an example of an input processing program of the present invention
  • a game apparatus 1 used in the following explanation is an example of an input processing apparatus of the present invention.
  • the game apparatus 1 of the present embodiment is accommodated in a housing 18 so that two liquid crystal display devices (hereinafter referred to as “LCDs”) 11 and 12 are placed in predetermined positions.
  • the housing 18 is composed of a lower housing 18 a and an upper housing 18 b , the upper housing 18 b being supported by a portion of the upper side of the lower housing 18 a so as to be pivotable.
  • the upper housing 18 b has a planar contour which is slightly larger than that of the first LCD 11 .
  • the upper housing 18 b has an opening in one principal face thereof, through which a display screen of the first LCD 11 is exposed.
  • the lower housing 18 a has a more elongated planar contour than that of the upper housing 18 b (i.e., so as to have a longer lateral dimension).
  • An opening for exposing the display screen of the second LCD 12 is formed in a portion of the lower housing 18 a which lies substantially in the center of the lower housing 18 a along the lateral direction.
  • a sound hole for the loudspeaker 15 is formed in either (right or left) wing of the lower housing 18 a between which the second LCD 12 is interposed.
  • An operation switch section 14 is provided on the right and left wings of the lower housing 18 a between which the second LCD 12 is interposed.
  • the operation switch section 14 includes: an operation switch (“A” button) 14 a and an operation switch (“B” button) 14 b , which are provided on a principal face of the right wing of the lower housing 18 a (lying to the right of the second LCD 12 ); and a direction switch (cross key) 14 c , a start switch 14 d , a select switch 14 e , and side switches 14 f and 14 g , which are provided on a principal face of the left wing of the lower housing 18 a (lying to the left of the second LCD 12 ).
  • the operation switches 14 a and 14 b are used for giving instructions such as: “pass”, “shoot”, etc., in the case of a sports game such as a soccer game; “jump”, “punch”, “use a weapon”, etc., in the case of an action game; or “get an item”, “select a weapon”, “select a command”, etc., in the case of a role playing game (RPG) or a simulation RPG.
  • the direction switch 14 c is used by a player for providing instructions concerning directions on the game screen, e.g., instructions of a moving direction for (i.e., a direction in which to move) a player object (or a player character) that can be controlled by using the operation switch section 14 , or instructions of a moving direction for a cursor, for example.
  • the side switches (“L” button) 14 f and (“R” button) 14 g are provided at the left and right ends of an upper face (upper side face) of the lower housing 18 a . As necessary, more operation switches may be added.
  • a touch panel 13 (an area marked by dotted lines in FIG. 1 ) is mounted on the upper principal face of the second LCD 12 .
  • the touch panel 13 may be of any one of a resistive film type, an optical type (infrared type), or a capacitive coupling type.
  • an optical type infrared type
  • a capacitive coupling type When a stylus 16 (or a finger) is pressed against or moved or dragged on the upper principal face of the touch panel 13 , the touch panel 13 detects the coordinate position of the stylus 16 and outputs coordinate data.
  • a hole for accommodating the stylus 16 with which to manipulate the touch panel 13 is provided near a side face of the upper housing 18 b .
  • the hole can hold the stylus 16 .
  • a cartridge receptacle an area marked by dash-dot lines in FIG. 1
  • the cartridge 17 internalizing a memory having a game program stored therein (e.g., a ROM) is detachably inserted.
  • the cartridge 17 is an information storage medium for storing a game program, e.g., a non-volatile semiconductor memory such as a ROM or a flash memory.
  • a connector (see FIG. 2 ) lies inside the cartridge receptacle for providing electrical connection with the cartridge 17 .
  • the lower housing 18 a (or alternatively the upper housing 18 b ) accommodates an electronic circuit board on which various electronic components such as a CPU are mounted.
  • Examples of the information storage medium for storing a game program are not limited to the aforementioned non-volatile semiconductor memory, but may also be a CD-ROM, a DVD, or any other optical disk type storage medium.
  • FIG. 2 is a block diagram illustrating an internal structure of the game apparatus 1 of FIG. 1 .
  • a CPU core 21 is mounted on the electronic circuit board 20 accommodated in the housing 18 . Via a given bus, the CPU core 21 is connected to a connector 28 , an input/output interface (I/F) circuit 27 , a first graphics processing unit (first GPU) 24 , a second graphics processing unit (second GPU) 26 , a WRAM 22 , and an LCD controller 29 .
  • the cartridge 17 is detachably connected to the connector 28 .
  • the cartridge 17 is a storage medium for storing a game program, and specifically, the cartridge 17 includes a ROM 171 for storing a game program and a RAM 172 for storing backup data in a rewritable manner.
  • a game program which is stored in the ROM 171 of the cartridge 17 is loaded to a WRAM 22 , and the game program having been loaded to the WRAM 22 is executed by the CPU core 21 .
  • Temporary data which is obtained by the CPU core 21 executing the game program and data from which to generate images are stored in the WRAM 22 .
  • the I/F circuit 27 is connected to the operation switch section 14 , the touch panel 13 , and the loudspeaker 15 .
  • the first GPU 24 is connected to a first video-RAM (a first VRAM) 23 .
  • the second GPU 26 is connected to a second video-RAM (a second VRAM) 25 .
  • the first GPU 24 generates a first game image on the basis of the data used for image generation which is stored in the WRAM 22 , and writes (stores) images in the first VRAM 23 .
  • the second GPU 26 generates a second game image on the basis of the data used for image generation which is stored in the WRAM 22 , and writes (stores) images in the second VRAM 25 .
  • the first VRAM 23 and the second VRAM 25 are connected to an LCD controller 29 .
  • the LCD controller 29 includes a register 291 .
  • the register 291 stores a value of 0 or 1 in accordance with an instruction from the CPU core 21 . If a value of the register 291 is 0, the LCD controller 29 outputs a game image written in the first VRAM 23 to the first LCD 11 and a game image written in the second VRAM 25 to the second LCD 12 . And if a value of the register 291 is 1, the LCD controller 29 outputs a game image written in the first VRAM 23 to the second LCD 12 and a game image written in the second VRAM 25 to the first LCD 11 .
  • the I/F circuit 27 is a circuit which controls exchanges of data between the CPU core 21 and the external input/output devices such as, the operation switch section 14 , the touch panel 13 , and the loudspeaker 15 .
  • the touch panel 13 (including a device driver for the touch panel) has a coordinate system corresponding to the coordinate system of the second VRAM 25 , and outputs data of position coordinates corresponding to a position which is input (designated) by means of the stylus 16 .
  • the display screen of the second LCD 12 has a resolution of 256 dots.times.192 dots, and the touch panel 13 also has a detection accuracy of 256 dots.times.192 dots so as to correspond to the display screen.
  • the detection accuracy of the touch panel 13 may be lower or higher than the resolution of the display screen of the second LCD 12 .
  • FIG. 3 shows an example of a display screen image of the second LCD 12 illustrating how an initial position of an item I to be thrown in a game space is determined.
  • FIG. 4A shows an example of a display screen image on the second LCD 12 , illustrating an operation of throwing the item I in the game space.
  • FIG. 4B shows an example of a display screen image on the second LCD 12 , illustrating an operation of moving the thrown item I in the game space.
  • FIG. 3 a view of a virtual 3-dimensional space is displayed on the second LCD 12 , and the item I (a flying disc is shown in FIG. 3 ) which is thrown in the game space is displayed.
  • the game space corresponding to a silhouette volume based on a given camera view point is displayed on the second LCD 12 and the item I is projected on a virtual projection plane which is set within the silhouette volume.
  • a player can move the item I in the game space by touch-operating a position of the item I displayed on the second LCD 12 by means of the touch panel 13 .
  • FIG. 3 shows an example in which the player moves the item I in A direction as illustrated. In other words, the player can move the item I on the virtual projection plane through the touch-operation of dragging the item.
  • the item I is thrown in the game space from the virtual projection plane.
  • the player conducts a touch-operation dragging the item I in direction B and finishes the touch-operation at a point C by lifting the stylus 16 or the like off the touch-panel 13 .
  • the item I is thrown in the game space from the virtual projection plane.
  • FIG. 5 is a conceptual diagram illustrating the virtual 3-dimensional game space and the virtual projection plane.
  • a front clip plane S 1 and a rear clip plane S 2 with reference to a camera view point P are set.
  • a space set in a silhouette volume sandwiched between the front clip plane S 1 and the rear clip plane S 2 is displayed on the second LCD 12 .
  • a virtual projection plane S 3 is set within the silhouette volume and placed, for example, in parallel with the front clip plane S 1 .
  • a coordinate system of the touch panel 13 is set on the front clip plane S 1 and coordinates inputted from the touch panel 13 are projected on the virtual projection plane S 3 .
  • the front clip plane S 1 on which the touch panel coordinate system is set and the virtual projection plane S 3 are arranged in parallel with each other, needless to say, projection of the input coordinates can be conducted in the same manner even if the front clip plane S 1 and the virtual projection plane S 3 are not in parallel with each other. Also needless to say, the projection of the input coordinates can be conducted in the same manner even if the virtual projection plane S 3 is of a sphere or the like, not a plane.
  • FIG. 6A is a conceptual diagram illustrating a vector v (vx, vy) to be set in the touch panel coordinate system which is set on the touch panel 13 .
  • FIG. 6B is a conceptual diagram illustrating a vector V (Vx, Vy, Vz) to be set in 3-dimensional coordinates which is set in the virtual 3-dimensional game space.
  • FIG. 7 shows an example of setting of constants a to f used for the coordinate conversion.
  • the aforementioned 2-dimensional vector v (vx, vy) set immediately before the operation is conducted is coordinate-converted, and a 3-dimensional vector v (Vx, Vy, Vz) as shown in FIG. 6B is calculated.
  • the coordinate conversion from the 2-dimensional vector v (vx, vy) to the 3-dimensional vector V (Vx, Vy, Vz) is conducted as follows.
  • Constants a to f used in the above formula are set for each item thrown in the game space as shown in FIG. 7 .
  • values of respective 3 axes of motion amounts (vector V) which are set in a 3-dimensional coordinate system are calculated by using the values of the respective 2 axes, represented as motion amounts (vector v) between two points, which are set in a 2-dimensional coordinate system.
  • the constants used for the coordinate conversion vary depending on each item thrown in the game space, characteristics of each item can be represented through the coordinate conversion.
  • FIG. 8 shows an example of a screen display image of the item I according to a tilt angle which is initially set on the item I.
  • FIG. 9 is a conceptual diagram illustrating a motion vector and a normal vector which are set when the item I leaves the virtual projection plane and moves in the virtual game space.
  • FIG. 8 when a user conducts a touch-operation dragging the item I displayed on the second LCD 12 by using the touch panel 13 , as described above, the item I moves to a position on the virtual projection plane according to coordinates inputted from the touch panel 13 .
  • the item I is displayed by adjusting the tilt angle ⁇ of the normal thereof.
  • the item I is displayed by tilting the item I based on a tilt angle corresponding to a position in the horizontal direction on the touch panel.
  • a normal vector n (sin ⁇ , cos ⁇ , 0) is initially set.
  • a motion vector and a normal vector which are set on each item I are calculated for each frame in which game processing is conducted. Specifically, a normal vector n (i+1) in a new frame (i+1) is calculated using a normal vector n (i) set in a frame (i) immediately preceding, a motion vector V (i), and a constant a as follows,
  • n _ ⁇ ( i + 1 ) n _ ⁇ ( i ) + ⁇ ⁇ ⁇ V xz ⁇ ( i ) ⁇ n _ ⁇ ( i ) + ⁇ ⁇ ⁇ V _ xz ⁇ ( i ) ⁇
  • V xz is a motion vector on an XZ plane when Y is 0.
  • a motion vector V (i+1) in a new frame (i+1) is calculated using a normal vector n (i) set in a frame (i) immediately preceding, a motion vector V (i), a gravity vector g, and a constant ⁇ as follows,
  • V ( i+ 1) V ( i )+ ⁇
  • n xz is a normal vector on an XZ plane when Y is 0.
  • FIG. 10 and FIG. 11 are flow charts illustrating operations which are conducted by the game apparatus 1 by executing the game program.
  • the programs for executing these processes are contained in the game program which is stored in the ROM 171 and are loaded from the ROM 171 to the WRAM 22 when power of the game apparatus 1 is turned on, so as to be executed by the CPU core 21 .
  • the CPU core 21 executes a boot program (not shown), and thereby the game program stored in the cartridge 17 is loaded to the WRAM 22 .
  • the game program having been loaded is executed by the CPU core 21 , thereby to execute steps (abbreviated as “S” in FIGS. 10 and 11 ) shown in FIG. 10 and FIG. 11 .
  • the game program is executed, and thereby game images and the like in accordance with the game program are written on the first LCD 11 and the second LCD 12 .
  • the detailed description of the contents of the game is not given.
  • the processes in which the item moves according to the information inputted from the touch panel 13 will be described in detail.
  • the CPU core 21 starts the game processing, and after each kind of initialization, starts the game.
  • the CPU core 21 determines whether or not an item designation flag is on (step 51 ).
  • the CPU core 21 proceeds to the next step 52 when the item designation flag is on, and proceeds to the next step 58 when the item designation flag is off.
  • the item designation flag is a flag to determine whether or not a player is touching an item I (see FIG. 3 ) by means of the touch panel 13 , and is set so as to be turned on when the player is touching an item I.
  • step 52 the CPU core 21 determines whether or not there is an input from the touch panel 13 . And the CPU core 21 proceeds to the next step 53 when there is an input from the touch panel 13 , and proceeds to the next step 71 when there is no input from the touch panel 13 .
  • step 53 the CPU core 21 sets a virtual projection plane S 3 (see FIG. 9 ) in a virtual 3-dimensional game space, and proceeds to the next step. Since the virtual projection plane S 3 is as described above, the detailed description is not given here.
  • the CPU core 21 detects coordinates inputted from the touch panel 13 and adjusts a display position of the item I to a 2-dimensional coordinate position on the virtual projection plane S 3 corresponding to the detected coordinates (step 54 ; FIG. 3 ).
  • the CPU core 21 calculates a tilt angle ⁇ of the item I, based on an x coordinate value (a lateral coordinate on the touch panel 13 ; an xm direction shown in FIG. 8 ) of the inputted coordinates (step 55 ; FIG. 8 ).
  • the CPU core 21 calculates a normal vector n in initial setting of the item I, based on the tilt angle ⁇ calculated in the above step 55 (step 56 ).
  • the CPU core 21 tilts the item I according to the tilt angle ⁇ calculated in step 55 , conducts processes of item display control (step 57 ; FIG. 8 .) for the second LCD 12 , and when the game is continued (No in step 63 ), returns to the above step 51 to repeat the processes.
  • the CPU core 21 repeats these steps 51 to 57 , and thereby the item I moves on the virtual projection plane S 3 according to the touch-operation on the touch panel 13 conducted by the player.
  • step 52 processes in which the item designation flag is on (Yes in step 51 ) and there is no input from the touch panel 13 (No. in step 52 ) will be described.
  • the CPU core 21 determines whether or not there is an input from the touch panel 13 in 2 frames immediately preceding (step 71 ).
  • the CPU core 21 proceeds to the next step 72 .
  • the CPU core 21 proceeds to the next step 63 .
  • step 72 the CPU core 21 calculates coordinate shift amounts between the 2 frames immediately preceding, using respective coordinates inputted from the touch panel 13 . Specifically, when the input coordinates of the 2 frames immediately preceding are a point q 1 (x 1 , y 1 ) and a point q 2 (x 2 , y 2 ), a vector v spanning from the point q 1 to the point q 2 (vx, vy) is calculated as the coordinate shift amounts as follows.
  • step 73 the CPU core 21 calculates a motion velocity (motion vector V) of the item I in the virtual 3-dimensional game space (step 73 ) based on the coordinate shift amounts (vector v) obtained in the above step 72 , and proceeds to the next step.
  • step 73 conducted is a coordinate conversion where values of respective 3 axes of the motion amounts (vector V) which are set in the 3-dimensional coordinate system are calculated by using values of respective 2 axes represented as the motion amounts (vector v) between 2 points which are set in the aforementioned 2-dimensional coordinate system.
  • constants a to f are set according to a kind of the items I as described above.
  • the CPU core 21 turns off the item designation flag (step 74 ) and proceeds to step 57 .
  • the CPU core 21 executes these steps 71 to 74 and thereby the motion amounts between the 2 points, which are set in the 2-dimensional coordinate system, are coordinate-converted to the motion amounts (vector V) which are set in the 3-dimensional coordinate system.
  • step 51 determines whether or not the item I has left the virtual projection plane and is moving in the 3-dimensional game space (step 58 ).
  • the CPU core 21 determines whether the item I is moving in the 3-dimensional game space, for example when a motion vector V is set on the item I. And when the item I is moving in the game space, the CPU core 21 proceeds to the next step 59 .
  • the CPU core 21 proceeds to the next step 60 .
  • step 59 the CPU core 21 calculates a motion trajectory of the item I in the 3-dimensional game space.
  • the CPU core 21 calculates a normal vector n and a motion vector V of a new frame, using the normal vector n and the motion vector V calculated in the frames immediately preceding, as described above (see FIG. 9 ).
  • the CPU core 21 moves the item I according to the normal vector n and the motion vector V calculated in step 59 , conducts processes of item display control on the second LCD (step 57 ; FIG. 4B ), and when the game is continued (No in step 63 ), returns to the above step 51 and repeats the processes.
  • the CPU core 21 repeats these steps 51 , 58 , 59 and 57 , and thereby the item I which leaves the virtual projection plane and moves in the virtual game space is represented.
  • step 60 the CPU core 21 determines whether or not there is an input from the touch panel 13 .
  • the CPU core 12 proceeds to the next step 61 when there is an input from the touch panel 13 , and proceeds to the next step 63 when there is no input from the touch panel 13 .
  • step 61 the CPU core 21 determines whether or not the player is touch-operating a portion of the touch panel 13 where the item I is superimposed on the second LCD 12 .
  • the CPU core 21 turns on the item designation flag (step 62 ) and proceeds to step 63 .
  • the CPU core 21 proceeds directly to step 63 .
  • step 63 the CPU core determines whether or not the game is continued.
  • the CPU core returns to the above step 51 and repeats the processes when the game is continued, and ends the processing of this subroutine when the game is finished.
  • the processing of the above steps 51 to 63 is repeated per unit of time (for example, one frame) for game processing.
  • the motion vector V for the virtual 3-dimensional game space is calculated based on the condition that the player lifts the stylus 16 or the like off the touch panel 13 (No in step 52 ), the calculation may be conducted based on other conditions.
  • the calculation of the motion vector V may be conducted based on a condition that a player presses down the operation switch section 14 (for example, the operation switch (A button) 14 a
  • the virtual projection plane S 3 is described as a plane which is placed in parallel with the front clip plane S 1 , the virtual projection plane S 3 and the front clip plane S 1 may be in non-parallel with each other. Even if the virtual projection plane S 3 is inclined toward the front clip plane S 1 , 2-dimensional coordinates (X axis, Y axis) on the virtual projection S 3 can be set by similarly conducting the projection of input coordinates. In this case, with a direction perpendicular to the virtual projection plane S 3 as the third axis (Z axis), the motion vector V in the virtual 3-dimensional game space can similarly be calculated using the aforementioned coordinate conversion.
  • a game in which an item moves according to coordinates inputted from a touch panel for inputting 2-dimensional coordinates on a display screen, and the item is thrown in a virtual 3-dimensional game space from a virtual projection plane based on a predetermined condition (an operation of lifting off the touch panel).
  • a predetermined condition an operation of lifting off the touch panel.
  • shift amounts (vector v) of the 2-dimensional coordinates which are set on the virtual projection plane shift amounts (vector V) of the 3-dimensional coordinates can easily be obtained from the shift amounts of the 2-dimensional coordinates. Therefore, a simple configuration can achieve a conversion from 2-dimensional coordinates to 3-dimensional coordinates without providing a pressing force detection function, unlike in the conventional art. And because of no pressing force detection, a heavy burden on an input means such as a touch panel or the like is eliminated and a reduction in device reliability, which accrues from frequent breakdowns or a shorter life, can be avoided.
  • the touch panel is used as an input device for inputting 2-dimensional coordinates on a display screen
  • other pointing devices may be used.
  • a pointing device is an input device for designating input positions and coordinates on a display screen, and when a mouse, a track pad, or a track ball, for example, is used as an input device and information of a screen coordinate system calculated from values outputted from the input device is used, the present invention can similarly be realized.
  • processing for calculating coordinates from values outputted from a mouse or the like may be conducted on a game apparatus or the like, with a touch status and a non-touch status corresponding to on and off of a click button.
  • the touch panel 13 is mounted on the game apparatus 1 in an integrated manner, even a configuration where a game apparatus and a touch panel are placed in a separated manner can realize the present invention.
  • two display devices are provided, one display device may be applicable.
  • only the second LCD 12 may be mounted without providing the first LCD 11 .
  • the touch panel 13 may be attached on the upper surface of the first LCD 11 without providing the second LCD 12 .
  • the touch panel 13 is mounted on the game apparatus 1 in an integrated manner
  • an information processing device such as a general personal computer or the like where a touch panel is used as an input device may also be applicable.
  • a program which the computer of the information processing device executes is not limited to a game program typically used for a game, and is a general-purpose input processing program where 2-dimensional coordinate values obtained by the aforementioned method are used in operation processing for the above information processing device.
  • a storage medium having an input processing program stored thereon and an input processing device enable, with a simple configuration, a conversion from 2-dimensional coordinates to 3-dimensional coordinates, and are applicable to games and input processing or the like where a pointing device for inputting 2-dimensional coordinates on a display screen is used.

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Position Input By Displaying (AREA)
  • User Interface Of Digital Computer (AREA)
  • Processing Or Creating Images (AREA)

Abstract

An input processing device including a display screen and a pointing device for inputting corresponding 2-dimensional coordinates on the display screen. A 3-dimensional space is displayed on the display screen and the 2-dimensional coordinates inputted from the pointing device are detected. Next, shift amounts, per unit of time, of the detected 2-dimensional coordinates are calculated based on a predetermined calculation start condition. And the calculated shift amounts are converted to 3-dimensional coordinate shift amounts in the 3-dimensional space.

Description

    RELATED APPLICATION
  • This application is a divisional application of U.S. patent application Ser. No. 11/232,998 filed Sep. 23, 2005 and claims the benefit of Japanese Patent Application No. 2004-304961 filed Oct. 19, 2004, the entirety of which both applications are incorporated by reference.
  • BACKGROUND OF THE INVENTION
  • 1. Field of the Invention
  • The present invention relates to a storage medium having stored thereon an input processing program, and an input processing device. More particularly, the present invention relates to a storage medium having stored thereon an input processing program which is operated by using a device for inputting 2-dimensional coordinates on a display screen to a virtual 3-dimensional space, and an input processing device.
  • 2. Description of the Background Art
  • As conventional art, techniques operated by using a touch panel for inputting 2-dimensional coordinates on a display screen to a virtual 3-dimensional space displayed on the display screen are disclosed in, for example, Japanese Laid-Open Patent Publication No. 11-7372 and Japanese Laid-Open Patent Publication No. 2004-70920. In any of these techniques, a virtual 3-dimensional space is displayed on a display screen and a touch panel or the like associated with the display screen is provided. And based on a position, on the touch panel, where a user presses down, X and Y coordinates of the 3-dimensional space are determined, and based on the magnitude of a pressure at which the user presses down on the touch panel, a Z coordinate of the 3-dimensional space (a depth direction) is determined.
  • In the conventional art described above, however, in order to detect the magnitude of a pressing force exerted on the touch panel or the like, it is necessary to additionally provide a function for detecting the pressing force, such as a pressure-sensitive element, which makes the device in itself complicated, resulting in cost increases. And when the user enters a large input in the depth direction of the virtual 3-dimensional space, the user is required to strongly press down on the touch panel, leading to a heavy load exerted on the touch panel. This causes the touch panel to easily break down or a shorter life thereof.
  • SUMMARY OF THE INVENTION
  • Therefore, in one embodiment the present invention provides a storage medium having stored thereon an input processing program in which based on an input from a device for inputting 2-dimensional coordinates on a display screen, coordinates in a virtual 3-dimensional space are obtained, and an input processing device.
  • The reference numerals, step Nos. and the like in the parentheses indicate the correspondence with figures illustrated below in order to aid in understanding the present invention and are not to be construed as limiting, in any way, the scope of the present invention.
  • A first aspect of one embodiment of the present invention is directed to a storage medium having stored thereon a program executed by a computer (21) in an input processing device (1). The input processing device comprises a display screen (12) and a pointing device (13) for inputting corresponding 2-dimensional coordinates on the display screen. The program causes the computer to execute a display control step (S57), a 2-dimensional coordinate detection step (S54), a 2-dimensional coordinate shift amount calculation step (S72), and a 3-dimensional coordinate shift amount conversion step (S73). In the display control step, a virtual 3-dimensional space is displayed on the display screen (FIG. 3, FIG. 4A, and FIG. 4B). In the 2-dimensional coordinate detection step, 2-dimensional coordinates inputted from the pointing device are detected. In the 2-dimensional coordinate shift amount calculation step, shift amounts (vector v), per unit of time, of the 2-dimensional coordinates detected in the 2-dimensional coordinate detection step are calculated according to a predetermined calculation start condition (Yes in S51, No in S52). In the 3-dimensional coordinate shift amount conversion step, the shift amounts calculated in the 2-dimensional coordinate shift amount calculation step are converted to 3-dimensional coordinate shift amounts (vector V) in the virtual 3-dimensional space. The pointing device is an input device for designating 2-dimensional coordinates on the display screen, such as a touch panel, a mouse, a track pad, and a track ball. A coordinate system used for each input device is a touch panel coordinate system or a screen coordinate system.
  • In a second aspect based on the first aspect, the computer is further operable to execute an input status determination step (S52). In the input status determination step, a status inputted from the pointing device is determined. In the 2-dimensional coordinate shift amount calculation step, based on the calculation start condition that calculation starts when a status where an input from the pointing device is being continuously conducted (Yes in S52) is changed to a status where there is no input (No in S52) is determined in the input status determination step, shift amounts, per unit of time, of the 2-dimensional coordinates detected in the 2-dimensional coordinate detection step immediately before the status of no input are calculated.
  • In a third aspect based on the second aspect, in the display control step, a predetermined virtual projection plane (S3 in FIG. 5) is set in the virtual 3-dimensional space (S53) and when it is determined in the input status determination step that the input from the pointing device is being continuously conducted, a predetermined object (I) is displayed at a position where the 2-dimensional coordinates detected in the 2-dimensional coordinate detection step are projected on the virtual projection plane (FIG. 3). In the display control step, when a 3-dimensional coordinate shift amount conversion has been conducted in the 3-dimensional coordinate shift amount conversion step, the object is, based on the 3-dimensional coordinate shift amounts, lifted off the virtual projection plane, moved in the virtual 3-dimensional space, and displayed therein (FIG. 4B).
  • In a fourth aspect based on the third aspect, in the display control step, when it is determined in the input status determination step that an input from the pointing device is being. continuously conducted, a display angle (θ) of the object to be projected on the virtual projection plane is controlled based on the 2-dimensional coordinates detected in the 2-dimensional coordinate detection step (S55, FIG. 8).
  • In a fifth aspect based on the third aspect, the computer is further operable to execute a motion trajectory calculation step (S59). In the motion trajectory calculation step (S59), the 3-dimensional coordinate shift amounts converted in the 3-dimensional coordinate shift amount conversion step are set as an initial motion vector (V) of the object in the virtual 3-dimensional space, and a motion trajectory, per unit of time, in the virtual 3-dimensional space is calculated. In the display control step, based on the motion trajectory calculated in the motion trajectory calculation step, the object is lifted off the virtual projection plane, moved in the virtual 3-dimensional space, and displayed therein.
  • In a sixth aspect based on the fifth aspect, in the display control step, when it is determined in the input status determination step that an input from the pointing device is being continuously conducted, a display angle of the object to be projected on the virtual projection plane is controlled based on the 2-dimensional coordinates detected in the 2-dimensional coordinate detection step. In the motion trajectory calculation step, an initial normal vector (n) of the object is set according to the display angle, and a motion trajectory, per unit of time, in the virtual 3-dimensional space is calculated based on the motion vector and the normal vector.
  • In a seventh aspect based on the first aspect, in the 3-dimensional coordinate shift amount conversion step, based on the shift amounts (vx, vy), of a first and a second axes, calculated in the 2-dimensional coordinate shift amount calculation step, a shift amount (Vz) of a third axis perpendicular to the first and the second axes are calculated and a 3-dimensional coordinate shift amount conversion is conducted.
  • In a eighth aspect based on the seventh aspect, in the 3-dimensional coordinate shift amount conversion step, when the shift amounts of the first and the second axes calculated in the 2-dimensional coordinate shift amount calculation step are vx and vy, respectively, and predetermined constants are a, b, c, d, e, and f, a shift amount Vx of the first axis, a shift amount Vy of the second axis, and a shift amount Vz of the third axis, which are represented as the 3-dimensional coordinate shift amounts, are calculated using
  • ( Vx Vy Vz ) = ( ab c d ef ) vx vy
  • In a ninth aspect based on the eighth aspect, constants a, b, c, d, e, and f respectively vary according to each kind of the objects (FIG. 7).
  • A tenth aspect is directed to a program which is executed by the computer in the input processing device. The input processing device comprises a display screen and a pointing device for inputting corresponding 2-dimensional coordinates on the display screen, and a virtual 3-dimensional space is displayed on the display screen. The program causes the computer operable to execute a projection plane setting step (S53), a 2-dimensional coordinate detection step (S54), an on-projection-plane moving step (S54), an in-3-dimensional-space moving step (S59), and a display control step (S57). In the projection plane setting step, the virtual projection plane is set in the virtual 3-dimensional space. In the 2-dimensional coordinate detection step, the 2-dimensional coordinates inputted from the pointing device are set. In the on-projection-plane moving step, by projecting on the virtual projection plane the 2-dimensional coordinates detected in the 2-dimensional coordinate detection step, a predetermined object is moved to a position on the virtual projection plane, corresponding to the 2-dimensional coordinates. In the in-3-dimensional-space moving step, the object is moved in the virtual 3-dimensional space outside the virtual projection plane, according to a predetermined input condition. In the display control step, the object which moves in the on-projection-plane moving step and the in-3-dimensional-space moving step is represented in the virtual 3-dimensional space and displayed on the display screen.
  • An eleventh aspect is directed to an input processing device comprising a display screen, a pointing device, a display control means, a 2-dimensional coordinate detection means, a 2-dimensional coordinate shift amount calculation means, and a 3-dimensional coordinate shift amount conversion means. The pointing device inputs corresponding 2-dimensional coordinates on the display screen. The display control means displays the virtual 3-dimensional space on the display screen. The 2-dimensional coordinate detection means detects 2-dimensional coordinates inputted from the pointing device. The 2-dimensional coordinate shift amount calculation means, according to the predetermined calculation start condition, calculates shift amounts, per unit of time, of the 2-dimensional coordinates detected by the 2-dimensional coordinate detection means. The 3-dimensional coordinate shift amount conversion means converts the shift amounts calculated by the 2-dimensional coordinate shift amount calculation means, to the 3-dimensional coordinate shift amounts in the virtual 3-dimensional space.
  • In a twelfth aspect based on the eleventh aspect, the pointing device is a touch panel covering the display screen.
  • A thirteenth aspect is directed to an input processing device comprising a display screen, a pointing device, a projection plane setting means, a 2-dimensional coordinate detection means, an on-projection-plane moving means, an in-3-dimensional-space moving means, and a display control means. The display screen displays a virtual 3-dimensional space. The pointing device inputs corresponding 2-dimensional coordinates on the display screen. The projection plane setting means sets a virtual projection plane in the virtual 3-dimensional space. The 2-dimensional coordinate detection means detects the 2-dimensional coordinates inputted from the pointing device. The on-projection-plane moving means, by projecting on the virtual projection plane the 2-dimensional coordinates detected by the 2-dimensional coordinate detection means, moves a predetermined object to a position on the virtual projection plane, corresponding to the 2-dimensional coordinates. The in-3-dimensional-space moving means, according to a predetermined input condition, moves the object in the virtual 3-dimensional space outside the virtual projection plane. The display control means represents in the virtual 3-dimensional space the object which is moved by the on-projection-plane moving means and the in-3-dimensional-space moving means, and displays the object on the display screen.
  • In a fourteenth aspect based on the thirteenth aspect, the pointing device is a touch panel covering the display screen.
  • According to the first aspect, because the shift amounts of the 2-dimensional coordinates are converted to the shift amounts of the 3-dimensional coordinates according to the predetermined calculation start condition, a simple configuration can achieve the conversion of the 2-dimensional coordinates to the 3-dimensional coordinates without providing an extra input device of a pressing force detection function or the like for obtaining 3-dimensional shift amounts. In addition, because of no detection of a pressing force exerted by a user, unlike in the background art, a heavy burden on a pointing device such as a touch panel is eliminated and a reduction in device reliability, which accrues from frequent breakdowns or a shorter life, can be avoided.
  • According to the second aspect, based on the condition that the status where the input from the pointing device is being continuously conducted is changed to the status where there is no input, the 2-dimensional coordinates detected immediately before the status of no input are converted to the 3-dimensional coordinates. Therefore, a simple operation allows the control by appropriately switching from the input based on the 2-dimensional coordinates to the input based on the 3-dimensional coordinates in the virtual 3-dimensional space.
  • According to the third aspect, realized is an input processing where according to 2-dimensional coordinates inputted from a pointing device for inputting 2-dimensional coordinates on a display screen, an object moves on a virtual projection plane and when the pointing device comes to input nothing, the object leaves the virtual projection plane and moves in the virtual 3-dimensional space. For example, a game processing can be realized where an item moves on a virtual projection plane set in a 3-dimensional game space while an input from a pointing device is being continuously conducted and the item is thrown from the virtual projection plane to a game space when the pointing device comes to input nothing.
  • According to the fourth aspect, a display angle of an object can be controlled based on 2-dimensional coordinates inputted from a pointing device.
  • According to the fifth aspect, because a motion trajectory of an object is shifted based on the converted 3-dimensional coordinate shift amounts, a variety of motion trajectories can be displayed.
  • According to the sixth aspect, because a motion trajectory of an object is shifted further based on a normal vector obtained from a display angle, of the object, which varies according to 2-dimensional coordinates, a variety of motion trajectories according to positions designated by a pointing device can be displayed.
  • According to the seventh aspect, because a third axis component perpendicular to 2 axes composing a 2-dimensional coordinate system is calculated based on 2-dimensional coordinate shift amounts, 3-dimensional coordinate shift amounts can be easily obtained from the 2-dimensional shift amounts.
  • According to the eighth aspect, when 3-dimensional coordinate shift amounts are calculated from 2-dimensional shift amounts, shift amounts of respective axes can be easily obtained using determinants.
  • According to the ninth aspect, because 3-dimensional shift amounts according to a kind of objects can be obtained, wide variations in motion control of the object in a virtual 3-dimensional space can be attained.
  • According to the tenth aspect, an input control can be realized under which an object moves on a virtual projection plane according to coordinates inputted from a pointing device for inputting 2-dimensional coordinates on a display screen and the object moves from a virtual projection plane to a virtual 3-dimensional space according to the predetermined input condition.
  • In addition, the input control device enables the same effect as that of the aforementioned storage medium having stored thereon the input control program.
  • 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 outline view illustrating a game apparatus 1 executing a game program according to one embodiment of the present invention;
  • FIG. 2 is a block diagram illustrating the game apparatus 1 shown in FIG. 1;
  • FIG. 3 shows an example of a display screen image on the second LCD 12, illustrating a view of determining an initial position of an item I to be thrown in a game space;
  • FIG. 4A and FIG. 4B show examples of display screen images on the second LCD 12, illustrating views of operations of throwing the item I in the game space and of moving the thrown item I in the game space;
  • FIG. 5 is a conceptual diagram illustrating a virtual 3-dimensional game space and a virtual projection plane;
  • FIG. 6A and FIG. 6B are conceptual diagrams illustrating a vector v (vx, vy) and a vector V (Vx, Vy, Vz);
  • FIG. 7 shows an example of setting of constants a to f used for a coordinate conversion;
  • FIG. 8 shows an example of a screen display image of the item I according to a tilt angle which is initially set on the item I;
  • FIG. 9 is a conceptual diagram of a motion vector and a normal vector which are set when the item I leaves the virtual projection plane and moves in the virtual game space;
  • FIG. 10 is a flow chart illustrating an operation conducted by the game apparatus 1 by executing the game program according to the present invention; and
  • FIG. 11 is a flow chart illustrating an operation conducted by the game apparatus 1 by executing the game program according to an embodiment of the present invention.
  • DESCRIPTION OF THE PREFERRED
  • A game apparatus which executes a game program will be described with reference to the figures. FIG. 1 is an outline view showing an outer appearance of the game apparatus 1 which executes a game program. As an example of the game apparatus 1, a hand-held type game apparatus is illustrated herein. And a game program used in the following explanation is an example of an input processing program of the present invention and a game apparatus 1 used in the following explanation is an example of an input processing apparatus of the present invention.
  • In FIG. 1, the game apparatus 1 of the present embodiment is accommodated in a housing 18 so that two liquid crystal display devices (hereinafter referred to as “LCDs”) 11 and 12 are placed in predetermined positions. Specifically, in the case where the first LCD 11 and the second LCD 12 are to be disposed one on top of the other, the housing 18 is composed of a lower housing 18 a and an upper housing 18 b, the upper housing 18 b being supported by a portion of the upper side of the lower housing 18 a so as to be pivotable. The upper housing 18 b has a planar contour which is slightly larger than that of the first LCD 11. The upper housing 18 b has an opening in one principal face thereof, through which a display screen of the first LCD 11 is exposed. The lower housing 18 a has a more elongated planar contour than that of the upper housing 18 b (i.e., so as to have a longer lateral dimension). An opening for exposing the display screen of the second LCD 12 is formed in a portion of the lower housing 18 a which lies substantially in the center of the lower housing 18 a along the lateral direction. A sound hole for the loudspeaker 15 is formed in either (right or left) wing of the lower housing 18 a between which the second LCD 12 is interposed. An operation switch section 14 is provided on the right and left wings of the lower housing 18 a between which the second LCD 12 is interposed.
  • The operation switch section 14 includes: an operation switch (“A” button) 14 a and an operation switch (“B” button) 14 b, which are provided on a principal face of the right wing of the lower housing 18 a (lying to the right of the second LCD 12); and a direction switch (cross key) 14 c, a start switch 14 d, a select switch 14 e, and side switches 14 f and 14 g, which are provided on a principal face of the left wing of the lower housing 18 a (lying to the left of the second LCD 12). The operation switches 14 a and 14 b are used for giving instructions such as: “pass”, “shoot”, etc., in the case of a sports game such as a soccer game; “jump”, “punch”, “use a weapon”, etc., in the case of an action game; or “get an item”, “select a weapon”, “select a command”, etc., in the case of a role playing game (RPG) or a simulation RPG. The direction switch 14 c is used by a player for providing instructions concerning directions on the game screen, e.g., instructions of a moving direction for (i.e., a direction in which to move) a player object (or a player character) that can be controlled by using the operation switch section 14, or instructions of a moving direction for a cursor, for example. The side switches (“L” button) 14 f and (“R” button) 14 g are provided at the left and right ends of an upper face (upper side face) of the lower housing 18 a. As necessary, more operation switches may be added.
  • A touch panel 13 (an area marked by dotted lines in FIG. 1) is mounted on the upper principal face of the second LCD 12. The touch panel 13 may be of any one of a resistive film type, an optical type (infrared type), or a capacitive coupling type. When a stylus 16 (or a finger) is pressed against or moved or dragged on the upper principal face of the touch panel 13, the touch panel 13 detects the coordinate position of the stylus 16 and outputs coordinate data.
  • As necessary, a hole (an area marked by double-dot lines in FIG. 1) for accommodating the stylus 16 with which to manipulate the touch panel 13 is provided near a side face of the upper housing 18 b. The hole can hold the stylus 16. In a portion of a side face of the lower housing 18 a is provided a cartridge receptacle (an area marked by dash-dot lines in FIG. 1), in which a game cartridge 17 (hereinafter simply referred to as “the cartridge 17”) internalizing a memory having a game program stored therein (e.g., a ROM) is detachably inserted. The cartridge 17 is an information storage medium for storing a game program, e.g., a non-volatile semiconductor memory such as a ROM or a flash memory. A connector (see FIG. 2) lies inside the cartridge receptacle for providing electrical connection with the cartridge 17. Furthermore, the lower housing 18 a (or alternatively the upper housing 18 b) accommodates an electronic circuit board on which various electronic components such as a CPU are mounted. Examples of the information storage medium for storing a game program are not limited to the aforementioned non-volatile semiconductor memory, but may also be a CD-ROM, a DVD, or any other optical disk type storage medium.
  • FIG. 2 is a block diagram illustrating an internal structure of the game apparatus 1 of FIG. 1. In FIG. 2, a CPU core 21 is mounted on the electronic circuit board 20 accommodated in the housing 18. Via a given bus, the CPU core 21 is connected to a connector 28, an input/output interface (I/F) circuit 27, a first graphics processing unit (first GPU) 24, a second graphics processing unit (second GPU) 26, a WRAM 22, and an LCD controller 29. The cartridge 17 is detachably connected to the connector 28. The cartridge 17 is a storage medium for storing a game program, and specifically, the cartridge 17 includes a ROM 171 for storing a game program and a RAM 172 for storing backup data in a rewritable manner. A game program which is stored in the ROM 171 of the cartridge 17 is loaded to a WRAM 22, and the game program having been loaded to the WRAM 22 is executed by the CPU core 21. Temporary data which is obtained by the CPU core 21 executing the game program and data from which to generate images are stored in the WRAM 22. The I/F circuit 27 is connected to the operation switch section 14, the touch panel 13, and the loudspeaker 15.
  • The first GPU 24 is connected to a first video-RAM (a first VRAM) 23. The second GPU 26 is connected to a second video-RAM (a second VRAM) 25. In accordance with an instruction from the CPU core 21, the first GPU 24 generates a first game image on the basis of the data used for image generation which is stored in the WRAM 22, and writes (stores) images in the first VRAM 23. In accordance with an instruction from the CPU core 21, the second GPU 26 generates a second game image on the basis of the data used for image generation which is stored in the WRAM 22, and writes (stores) images in the second VRAM 25. The first VRAM 23 and the second VRAM 25 are connected to an LCD controller 29.
  • The LCD controller 29 includes a register 291. The register 291 stores a value of 0 or 1 in accordance with an instruction from the CPU core 21. If a value of the register 291 is 0, the LCD controller 29 outputs a game image written in the first VRAM 23 to the first LCD 11 and a game image written in the second VRAM 25 to the second LCD 12. And if a value of the register 291 is 1, the LCD controller 29 outputs a game image written in the first VRAM 23 to the second LCD 12 and a game image written in the second VRAM 25 to the first LCD 11.
  • The I/F circuit 27 is a circuit which controls exchanges of data between the CPU core 21 and the external input/output devices such as, the operation switch section 14, the touch panel 13, and the loudspeaker 15. The touch panel 13 (including a device driver for the touch panel) has a coordinate system corresponding to the coordinate system of the second VRAM 25, and outputs data of position coordinates corresponding to a position which is input (designated) by means of the stylus 16. The display screen of the second LCD 12 has a resolution of 256 dots.times.192 dots, and the touch panel 13 also has a detection accuracy of 256 dots.times.192 dots so as to correspond to the display screen. The detection accuracy of the touch panel 13 may be lower or higher than the resolution of the display screen of the second LCD 12.
  • Hereinafter, referring to FIG. 3, FIG. 4A, and FIG. 4B, a flow of game processing of the game program executed by the game apparatus 1 will be described with reference to examples of specific display screen images. While in an embodiment of the present invention, a game, in which items are thrown in a game space, executed by the game apparatus 1, will be described, the description for this kind of the game is not to be construed as limiting the present invention. FIG. 3 shows an example of a display screen image of the second LCD 12 illustrating how an initial position of an item I to be thrown in a game space is determined. FIG. 4A shows an example of a display screen image on the second LCD 12, illustrating an operation of throwing the item I in the game space. FIG. 4B shows an example of a display screen image on the second LCD 12, illustrating an operation of moving the thrown item I in the game space.
  • In FIG. 3, a view of a virtual 3-dimensional space is displayed on the second LCD 12, and the item I (a flying disc is shown in FIG. 3) which is thrown in the game space is displayed. As is made clear by the below description, the game space corresponding to a silhouette volume based on a given camera view point is displayed on the second LCD 12 and the item I is projected on a virtual projection plane which is set within the silhouette volume. A player can move the item I in the game space by touch-operating a position of the item I displayed on the second LCD 12 by means of the touch panel 13. Specifically, when the player conducts a touch-operation dragging the item I displayed on the second LCD 12 by means of the touch panel 13 (touching a position of the touch panel 13 superimposed on the item I on the second LCD 12, keeping as it is, and then moving the touch-operating position), the item I moves to a position, of the virtual projection plane, which corresponds to coordinates inputted from the touch panel 13. For example, FIG. 3 shows an example in which the player moves the item I in A direction as illustrated. In other words, the player can move the item I on the virtual projection plane through the touch-operation of dragging the item.
  • When the player finishes the touch-operation on the touch panel 13 after the touch-operation dragging the item I (that is, when the player lifts off the touch panel the stylus 16 or the like being used for the touch-operation), the item I is thrown in the game space from the virtual projection plane. Suppose that as shown in FIG. 4A, the player conducts a touch-operation dragging the item I in direction B and finishes the touch-operation at a point C by lifting the stylus 16 or the like off the touch-panel 13. In this case, based on 2-dimensional coordinate information inputted from the touch panel 13 immediately before finishing the touch-operation, the item I is thrown in the game space from the virtual projection plane. As shown in FIG. 4B, based on 2-dimensional coordinate information (vector B) inputted from the touch panel 13 immediately before finishing the touch-operation at the point C, 3-dimensional coordinate information (motion vector D) which is set in a virtual 3-dimensional game space is calculated, and based on the motion vector D, the item I leaves the virtual projection plane and moves in the game space.
  • Next, referring to FIG. 5, a virtual 3-dimensional game space and a virtual projection plane displayed on the second LCD 12 will be described. FIG. 5 is a conceptual diagram illustrating the virtual 3-dimensional game space and the virtual projection plane.
  • In FIG. 5, a front clip plane S1 and a rear clip plane S2 with reference to a camera view point P are set. A space set in a silhouette volume sandwiched between the front clip plane S1 and the rear clip plane S2 is displayed on the second LCD 12. A virtual projection plane S3 is set within the silhouette volume and placed, for example, in parallel with the front clip plane S1. A coordinate system of the touch panel 13 is set on the front clip plane S1 and coordinates inputted from the touch panel 13 are projected on the virtual projection plane S3. Although in order to facilitate the understanding of the present invention, the front clip plane S1 on which the touch panel coordinate system is set and the virtual projection plane S3 are arranged in parallel with each other, needless to say, projection of the input coordinates can be conducted in the same manner even if the front clip plane S1 and the virtual projection plane S3 are not in parallel with each other. Also needless to say, the projection of the input coordinates can be conducted in the same manner even if the virtual projection plane S3 is of a sphere or the like, not a plane.
  • Next, referring to FIG. 6A, FIG. 6B, and FIG. 7, a coordinate conversion from the touch panel coordinate system displayed in 2-dimensional coordinates to a game space coordinate system displayed in a 3-dimensional coordinate system will be described. FIG. 6A is a conceptual diagram illustrating a vector v (vx, vy) to be set in the touch panel coordinate system which is set on the touch panel 13. FIG. 6B is a conceptual diagram illustrating a vector V (Vx, Vy, Vz) to be set in 3-dimensional coordinates which is set in the virtual 3-dimensional game space. FIG. 7 shows an example of setting of constants a to f used for the coordinate conversion.
  • In FIG. 6A, if the touch panel 13 is touch-operated from a point q1 (x1, y1) to a point q2 (x2, y2) in the touch panel coordinate system, a vector v (vx, vy) spanning from the point q1 to the point q2 is obtained as follows.

  • vx=x2−x1

  • vy=y2−y1
  • In the present embodiment, when the player conducts an operation on the touch panel 13, corresponding to a predetermined condition, the aforementioned 2-dimensional vector v (vx, vy) set immediately before the operation is conducted is coordinate-converted, and a 3-dimensional vector v (Vx, Vy, Vz) as shown in FIG. 6B is calculated. Here, the coordinate conversion from the 2-dimensional vector v (vx, vy) to the 3-dimensional vector V (Vx, Vy, Vz) is conducted as follows.
  • ( Vx Vy Vz ) = ( ab c d ef ) vx vy
  • Constants a to f used in the above formula are set for each item thrown in the game space as shown in FIG. 7. For example, if an item I is a flying disc, constants are set as follows: a=1.0, b=0, c=0, d=0.5, e=0, and f=2.0, and a vector V (Vx, Vy, Vz) is calculated by using Vx=vx, Vy=0.5vy, Vz=2vy. As described above, in the coordinate conversion of the present embodiment, values of respective 3 axes of motion amounts (vector V) which are set in a 3-dimensional coordinate system are calculated by using the values of the respective 2 axes, represented as motion amounts (vector v) between two points, which are set in a 2-dimensional coordinate system. And because the constants used for the coordinate conversion vary depending on each item thrown in the game space, characteristics of each item can be represented through the coordinate conversion.
  • Next, referring to FIG. 8 and FIG. 9, calculation of a motion trajectory when an item I leaves a virtual projection plane and moves in a virtual game space will be described. FIG. 8 shows an example of a screen display image of the item I according to a tilt angle which is initially set on the item I. FIG. 9 is a conceptual diagram illustrating a motion vector and a normal vector which are set when the item I leaves the virtual projection plane and moves in the virtual game space.
  • In FIG. 8, when a user conducts a touch-operation dragging the item I displayed on the second LCD 12 by using the touch panel 13, as described above, the item I moves to a position on the virtual projection plane according to coordinates inputted from the touch panel 13. And a tilt angle θ which is initially set on the item I is set based on a position in an xm direction on the touch panel (lateral direction in FIG. 8), as shown in the figure. Specifically, let a center of the touch panel, a right direction and a left direction be xm=0, +xm, and −xm, respectively. And the tilt angle θ is obtained as follows.

  • θ=jxm+k (j and k are constants)
  • A tilt angle in an upward direction in FIG. 8, which is a vertical direction on the touch panel 13, is θ=0°. And on the second LCD 12, the item I is displayed by adjusting the tilt angle θ of the normal thereof. In other words, the item I is displayed by tilting the item I based on a tilt angle corresponding to a position in the horizontal direction on the touch panel. And based on the initially set tilt angle θ of the item I, a normal vector n=(sin θ, cos θ, 0) is initially set.
  • As described above, after an operation where the item I leaves the virtual projection plane and is thrown in the 3-dimensional game space, the item I moves in the game space based on the motion vector and the normal vector. In FIG. 9, a motion vector and a normal vector which are set on each item I are calculated for each frame in which game processing is conducted. Specifically, a normal vector n (i+1) in a new frame (i+1) is calculated using a normal vector n (i) set in a frame (i) immediately preceding, a motion vector V (i), and a constant a as follows,
  • n _ ( i + 1 ) = n _ ( i ) + α V xz ( i ) n _ ( i ) + α V _ xz ( i )
  • where Vxz is a motion vector on an XZ plane when Y is 0. And a motion vector V (i+1) in a new frame (i+1) is calculated using a normal vector n (i) set in a frame (i) immediately preceding, a motion vector V (i), a gravity vector g, and a constant β as follows,

  • V (i+1)= V (i)+β| V (i)| n xz (i)+g
  • where nxz is a normal vector on an XZ plane when Y is 0.
  • Next, referring to FIG. 10 and FIG. 11, processes, based on information inputted from the touch panel 13, which are executed by the game apparatus 1 according to a game program will be described. FIG. 10 and FIG. 11 are flow charts illustrating operations which are conducted by the game apparatus 1 by executing the game program. The programs for executing these processes are contained in the game program which is stored in the ROM 171 and are loaded from the ROM 171 to the WRAM 22 when power of the game apparatus 1 is turned on, so as to be executed by the CPU core 21.
  • When the power source (not shown) of the game apparatus 1 is turned on, the CPU core 21 executes a boot program (not shown), and thereby the game program stored in the cartridge 17 is loaded to the WRAM 22. The game program having been loaded is executed by the CPU core 21, thereby to execute steps (abbreviated as “S” in FIGS. 10 and 11) shown in FIG. 10 and FIG. 11. The game program is executed, and thereby game images and the like in accordance with the game program are written on the first LCD 11 and the second LCD 12. The detailed description of the contents of the game is not given. Here, the processes in which the item moves according to the information inputted from the touch panel 13 will be described in detail.
  • In FIG. 10, the CPU core 21 starts the game processing, and after each kind of initialization, starts the game. The CPU core 21 determines whether or not an item designation flag is on (step 51). The CPU core 21 proceeds to the next step 52 when the item designation flag is on, and proceeds to the next step 58 when the item designation flag is off. Here, the item designation flag is a flag to determine whether or not a player is touching an item I (see FIG. 3) by means of the touch panel 13, and is set so as to be turned on when the player is touching an item I.
  • In step 52, the CPU core 21 determines whether or not there is an input from the touch panel 13. And the CPU core 21 proceeds to the next step 53 when there is an input from the touch panel 13, and proceeds to the next step 71 when there is no input from the touch panel 13.
  • In step 53, the CPU core 21 sets a virtual projection plane S3 (see FIG. 9) in a virtual 3-dimensional game space, and proceeds to the next step. Since the virtual projection plane S3 is as described above, the detailed description is not given here.
  • Next, the CPU core 21 detects coordinates inputted from the touch panel 13 and adjusts a display position of the item I to a 2-dimensional coordinate position on the virtual projection plane S3 corresponding to the detected coordinates (step 54; FIG. 3). The CPU core 21 calculates a tilt angle θ of the item I, based on an x coordinate value (a lateral coordinate on the touch panel 13; an xm direction shown in FIG. 8) of the inputted coordinates (step 55; FIG. 8). The CPU core 21 calculates a normal vector n in initial setting of the item I, based on the tilt angle θ calculated in the above step 55 (step 56). Here, the CPU core 21 calculates the normal vector n of the item I using n=(sin θ, cos θ, 0). The CPU core 21 tilts the item I according to the tilt angle θ calculated in step 55, conducts processes of item display control (step 57; FIG. 8.) for the second LCD 12, and when the game is continued (No in step 63), returns to the above step 51 to repeat the processes. The CPU core 21 repeats these steps 51 to 57, and thereby the item I moves on the virtual projection plane S3 according to the touch-operation on the touch panel 13 conducted by the player.
  • On the other hand, referring to FIG. 11, processes in which the item designation flag is on (Yes in step 51) and there is no input from the touch panel 13 (No. in step 52) will be described. When it is determined in step 52 that there is no input from the touch panel 13, the CPU core 21 determines whether or not there is an input from the touch panel 13 in 2 frames immediately preceding (step 71). When there is an input from the touch panel 13 in the 2 frames immediately preceding, the CPU core 21 proceeds to the next step 72. When there is no input from the touch panel 13 in either one of the 2 frames immediately preceding, the CPU core 21 proceeds to the next step 63.
  • In step 72, the CPU core 21 calculates coordinate shift amounts between the 2 frames immediately preceding, using respective coordinates inputted from the touch panel 13. Specifically, when the input coordinates of the 2 frames immediately preceding are a point q1 (x1, y1) and a point q2 (x2, y2), a vector v spanning from the point q1 to the point q2 (vx, vy) is calculated as the coordinate shift amounts as follows.

  • vx=x2−x1

  • vy=y2−y1
  • And the CPU core 21 proceeds to the next step.
  • Next, the CPU core 21 calculates a motion velocity (motion vector V) of the item I in the virtual 3-dimensional game space (step 73) based on the coordinate shift amounts (vector v) obtained in the above step 72, and proceeds to the next step. In step 73, conducted is a coordinate conversion where values of respective 3 axes of the motion amounts (vector V) which are set in the 3-dimensional coordinate system are calculated by using values of respective 2 axes represented as the motion amounts (vector v) between 2 points which are set in the aforementioned 2-dimensional coordinate system. Here, constants a to f are set according to a kind of the items I as described above.
  • Next, the CPU core 21 turns off the item designation flag (step 74) and proceeds to step 57. The CPU core 21 executes these steps 71 to 74 and thereby the motion amounts between the 2 points, which are set in the 2-dimensional coordinate system, are coordinate-converted to the motion amounts (vector V) which are set in the 3-dimensional coordinate system.
  • Referring back to FIG. 10, processes in which the item designation flag is off (No in step 51) will be described. When it is determined in step 51 that the item designation flag is off, the CPU core 21 determines whether or not the item I has left the virtual projection plane and is moving in the 3-dimensional game space (step 58). Here, the CPU core 21 determines whether the item I is moving in the 3-dimensional game space, for example when a motion vector V is set on the item I. And when the item I is moving in the game space, the CPU core 21 proceeds to the next step 59. When the item I is not moving in the game space (for example, when the player first touches the touch panel 13 or when the player is not touching the touch panel 13 at all), the CPU core 21 proceeds to the next step 60.
  • In step 59, the CPU core 21 calculates a motion trajectory of the item I in the 3-dimensional game space. For the calculation of the motion trajectory of the item I, the CPU core 21 calculates a normal vector n and a motion vector V of a new frame, using the normal vector n and the motion vector V calculated in the frames immediately preceding, as described above (see FIG. 9). And the CPU core 21 moves the item I according to the normal vector n and the motion vector V calculated in step 59, conducts processes of item display control on the second LCD (step 57; FIG. 4B), and when the game is continued (No in step 63), returns to the above step 51 and repeats the processes. The CPU core 21 repeats these steps 51, 58, 59 and 57, and thereby the item I which leaves the virtual projection plane and moves in the virtual game space is represented.
  • In step 60, the CPU core 21 determines whether or not there is an input from the touch panel 13. The CPU core 12 proceeds to the next step 61 when there is an input from the touch panel 13, and proceeds to the next step 63 when there is no input from the touch panel 13.
  • In step 61, the CPU core 21 determines whether or not the player is touch-operating a portion of the touch panel 13 where the item I is superimposed on the second LCD 12. When the player is touch-operating the item I, the CPU core 21 turns on the item designation flag (step 62) and proceeds to step 63. When the player is not touch-operating the item I, the CPU core 21 proceeds directly to step 63.
  • In step 63, the CPU core determines whether or not the game is continued. The CPU core returns to the above step 51 and repeats the processes when the game is continued, and ends the processing of this subroutine when the game is finished. The processing of the above steps 51 to 63 is repeated per unit of time (for example, one frame) for game processing.
  • Although in the above description, the motion vector V for the virtual 3-dimensional game space is calculated based on the condition that the player lifts the stylus 16 or the like off the touch panel 13 (No in step 52), the calculation may be conducted based on other conditions. For example, the calculation of the motion vector V may be conducted based on a condition that a player presses down the operation switch section 14 (for example, the operation switch (A button) 14 a
  • Although in the above description, the virtual projection plane S3 is described as a plane which is placed in parallel with the front clip plane S1, the virtual projection plane S3 and the front clip plane S1 may be in non-parallel with each other. Even if the virtual projection plane S3 is inclined toward the front clip plane S1, 2-dimensional coordinates (X axis, Y axis) on the virtual projection S3 can be set by similarly conducting the projection of input coordinates. In this case, with a direction perpendicular to the virtual projection plane S3 as the third axis (Z axis), the motion vector V in the virtual 3-dimensional game space can similarly be calculated using the aforementioned coordinate conversion.
  • Thus, according to the game apparatus disclosed herein, realized is a game in which an item moves according to coordinates inputted from a touch panel for inputting 2-dimensional coordinates on a display screen, and the item is thrown in a virtual 3-dimensional game space from a virtual projection plane based on a predetermined condition (an operation of lifting off the touch panel). In addition, because components perpendicular to the virtual projection plane are calculated based on shift amounts (vector v) of the 2-dimensional coordinates which are set on the virtual projection plane, shift amounts (vector V) of the 3-dimensional coordinates can easily be obtained from the shift amounts of the 2-dimensional coordinates. Therefore, a simple configuration can achieve a conversion from 2-dimensional coordinates to 3-dimensional coordinates without providing a pressing force detection function, unlike in the conventional art. And because of no pressing force detection, a heavy burden on an input means such as a touch panel or the like is eliminated and a reduction in device reliability, which accrues from frequent breakdowns or a shorter life, can be avoided.
  • Although in the above embodiment, the touch panel is used as an input device for inputting 2-dimensional coordinates on a display screen, other pointing devices may be used. Here, a pointing device is an input device for designating input positions and coordinates on a display screen, and when a mouse, a track pad, or a track ball, for example, is used as an input device and information of a screen coordinate system calculated from values outputted from the input device is used, the present invention can similarly be realized. In the case where a pointing device such as a mouse or the like is used, processing for calculating coordinates from values outputted from a mouse or the like may be conducted on a game apparatus or the like, with a touch status and a non-touch status corresponding to on and off of a click button.
  • Needless to say, although in the present embodiment, the touch panel 13 is mounted on the game apparatus 1 in an integrated manner, even a configuration where a game apparatus and a touch panel are placed in a separated manner can realize the present invention. And although in the above embodiment, two display devices are provided, one display device may be applicable. In other words, in the above embodiment, only the second LCD 12 may be mounted without providing the first LCD 11. And in the above embodiment, the touch panel 13 may be attached on the upper surface of the first LCD 11 without providing the second LCD 12.
  • In addition, although in the above embodiment, the touch panel 13 is mounted on the game apparatus 1 in an integrated manner, an information processing device such as a general personal computer or the like where a touch panel is used as an input device may also be applicable. In this case, a program which the computer of the information processing device executes is not limited to a game program typically used for a game, and is a general-purpose input processing program where 2-dimensional coordinate values obtained by the aforementioned method are used in operation processing for the above information processing device.
  • A storage medium having an input processing program stored thereon and an input processing device enable, with a simple configuration, a conversion from 2-dimensional coordinates to 3-dimensional coordinates, and are applicable to games and input processing or the like where a pointing device for inputting 2-dimensional coordinates on a display screen is used.
  • 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 (19)

1. A storage medium having stored thereon a program to be executed by a computer in an input processing device including a display screen and a pointing device for inputting corresponding 2-dimensional coordinates on the display screen, the input processing program causing the computer to execute;
a display control step for displaying a virtual 3-dimensional space on the display screen;
a 2-dimensional coordinate detection step for detecting the 2-dimensional coordinates inputted from the pointing device;
a 2-dimensional coordinate shift amount calculation step for calculating shift amounts of the 2-dimensional coordinates that are detected in the 2-dimensional coordinate detection step before a change from a status where an input from the pointing device is continuously being conducted to a status where there is no input is produced, and
a 3-dimensional coordinate shift amount utilization step for converting the shift amounts calculated in the 2-dimensional coordinate shift amount calculation step, to 3-dimensional coordinate shift amounts in the virtual 3-dimensional space, and for utilizing the 3-dimensional coordinate shift amounts after the change is produced.
2. The storage medium having stored thereon the input processing program according to claim 1, wherein:
the 2-dimensional coordinate shift amount calculation step calculates first and second shift amounts of first and second axis of the 2-dimensional coordinates, respectively; and
the 3-dimensional coordinate shift amount utilization step calculates a first shift amount of a first axis of the 3-dimensional coordinates from at least the first shift amount of the first axis of the 2-dimensional coordinates; a second shift amount of a second axis of the 3-dimensional coordinates from at least the second shift amount of the second axis of the 2-dimensional coordinates; and a third shift amount of a third axis of the 3-dimensional coordinates from at least one of the first and the second shift amounts of the first and second axis of the 2-dimensional coordinates, to convert the 2-dimensional coordinates into the 3-dimensional coordinates in the virtual 3-dimensional space.
3. The storage medium having stored thereon the input processing program according to claim 1, wherein:
the input processing program further causes the computer to execute an input status determination step for determining an input status from the pointing device;
in the display control step, a predetermined virtual plane is set in the virtual 3-dimensional space and when in the input status determination step, an input from the pointing device is determined as being continuously conducted, a predetermined object is displayed at a position where the 2-dimensional coordinates detected in the 2-dimensional coordinate detection step are projected on the virtual plane; and
when the input status determination step determines a change produced from a status where an input from the pointing device is continuously being conducted to a status where there is no input, the object is lifted off the virtual plane, moved in the virtual 3-dimensional space, based on the 3-dimensional coordinate shift amounts converted in the 3-dimensional coordinate shift amount utilization step, and displayed therein.
4. The storage medium having stored thereon the input processing program according to claim 3, wherein:
in the display control step, when in the input status determination step, an input from the pointing device is determined as being continuously conducted, a display angle of the object to be projected on the virtual plane is controlled based on the 2-dimensional coordinates detected in the 2-dimensional coordinate detection step.
5. The storage medium having stored thereon the input processing program according to claim 3, wherein:
the input processing program further causes the computer to execute a motion trajectory calculation step for calculating a motion trajectory, per unit of time, in the virtual 3-dimensional space by setting the 3-dimensional coordinate shift amounts converted in the 3-dimensional coordinate shift amount conversion step, as an initial motion vector of the object in the virtual 3-dimensional space; and
in the display control step, based on the motion trajectory calculated in the motion trajectory calculation step, the object is lifted off the virtual plane, moved in the virtual 3-dimensional space, and displayed therein.
6. The storage medium having stored thereon the input processing program according to claim 5, wherein:
in the display control step, when in the input status determination step, an input from the pointing device is determined as being continuously conducted, a display angle of the object to be projected on the virtual plane is controlled based on the 2-dimensional coordinates detected in the 2-dimensional coordinate detection step; and
in the motion trajectory calculation step, an initial normal vector of the object is set according to the display angle, and a motion trajectory, per unit of time, in the virtual 3-dimensional space is calculated based on the motion vector and the normal vector.
7. The storage medium having stored thereon the input processing program according to claim 1, wherein:
in the 3-dimensional coordinate shift amount conversion step, based on the shift amounts of a first axis and a second axis, calculated in the 2-dimensional coordinate shift amount calculation step, a shift amount of a third axis perpendicular to the first axis and the second axis is calculated.
8. The storage medium having stored thereon the input processing program according to claim 7, wherein:
in the 3-dimensional coordinate shift amount conversion step, when the shift amounts of the first axis and the second axis calculated in the 2-dimensional coordinate shift amount calculation step are vx and vy, respectively, and predetermined constants are a, b, c, d, e, and f, a shift amount Vx of the first axis, a shift amount Vy of the second axis, and a shift amount Vz of the third axis, which are represented as the 3-dimensional coordinate shift amounts, are calculated using:
( Vx Vy Vz ) = ( ab c d ef ) vx vy
9. The storage medium having stored thereon the input processing program according to claim 8, wherein the constants a, b, c, d, e, and f respectively vary according to each kind of the objects.
10. An input processing device comprising:
a display screen;
a pointing device for inputting corresponding 2-dimensional coordinates on the display screen;
a display control means for displaying a virtual 3-dimensional space on the display screen;
a 2-dimensional coordinate detection means for detecting the 2-dimensional coordinates inputted from the pointing device;
a 2-dimensional coordinate shift amount calculation means for calculating shift amounts of the 2-dimensional coordinates that are detected in the 2-dimensional coordinate detection step before a change is produced from a status where an input from the pointing device is continuously being conducted to a status where there is no input, and
a 3-dimensional coordinate shift amount conversion means for converting the shift amounts calculated in the 2-dimensional coordinate shift amount calculation means, to 3-dimensional coordinate shift amounts in the virtual 3-dimensional space, and for utilizing the 3-dimensional coordinate shift amounts after the change is produced.
11. The input processing device according to claim 10, wherein the pointing device includes a touch panel covering the display screen.
12. A storage medium storing an input processing program to be executed by a computer in communication with a display screen and a pointing device, the input processing program causing the computer to:
display a virtual object in 3-dimensional (3D) virtual space on the display screen;
detecting a 2-dimensional (2D) coordinates inputted by the pointing device, wherein the 2D coordinates correspond to positions shown on the display screen;
calculating a 2D shift in the 2D coordinates inputted while the pointing continuously inputs 2D coordinates;
converting the calculated 2D shift to a shift in 3D coordinates, and
applying the shift in 3D coordinates to move the virtual object in 3D virtual space.
13. The storage medium according to claim 12 wherein:
the calculation of the 2D shift includes calculating a first shift along a first axis of the 2D coordinates and a second shift along a second axis of the 2D coordinates, and
the conversion of the calculated 2D shift includes calculating a first shift amount along a first axis of the 3D coordinates using the first shift amount along the first axis of the 2-dimensional coordinates, calculating a second shift amount along a second axis of the 3D coordinates using the second shift along the second axis of the 2D coordinates and calculating a third shift amount of a third axis of the 3D coordinates using one of the first and the second shift amounts of the first and second axis of the 2D coordinates.
14. The storage medium according to claim 12, wherein the input processing program further causes the computer to:
while the 2D coordinates are being continuously inputted by the pointing device, the displayed virtual object is displayed at the positions on the display screen corresponding to the 2D coordinates, and
the calculation of the 2D shift occurs after the pointing device stops inputting 2D coordinates.
15. The storage medium according to claim 14 wherein, while the 2D coordinates are being continuously inputted, the displayed virtual object is moved on a virtual plane in 3D virtual and the movement of the virtual objects corresponds to the inputted 2D coordinates.
16. The storage medium according to claim 15 wherein the input processing program further causes the computer to:
calculating a motion trajectory for the virtual object by setting the shift in 3D coordinates as a motion vector of the object in the virtual 3D, and
displaying the virtual object moving along a trajectory corresponding to the motion trajectory and away from the virtual plane.
17. The storage medium according to claim 16, wherein, while the 2D coordinates are being continuously inputted, a display angle of the object to be projected on the virtual plane is determined based on the detected 2D coordinates, and
a normal vector of the virtual object is determined based on the display angle, and the motion trajectory is calculated based the normal vector.
18. The storage medium according to claim 12 wherein:
the calculation of the 2D shift determines a 2D shift amount (vx) of the 2D coordinates along a first axis in the 2D coordinates and a shift amount (vy) of the 2D coordinates along a y axis in the 2D coordinates, and
in the conversion of the calculated 2D shift determines as the 3D shift a shift amount Vx along a first axis in the 3D coordinates, a shift amount Vy along a second axis in the 3D coordinates, and a shift amount Vz along a third axis in the 3D coordinates, wherein Vx, Vy and Vz are calculated using:
( Vx Vy Vz ) = ( ab c d ef ) vx vy
wherein a, b, c, d, e, and f predetermined constants.
19. The storage medium according to claim 18 wherein the predetermined constants a, b, c, d, e, and f have values dependent on a type of the virtual object, wherein the virtual object is one of a group of available object types.
US12/640,685 2004-10-19 2009-12-17 Storage medium having input processing program stored thereon and nput processing device Abandoned US20100091038A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US12/640,685 US20100091038A1 (en) 2004-10-19 2009-12-17 Storage medium having input processing program stored thereon and nput processing device

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2004304961A JP4388878B2 (en) 2004-10-19 2004-10-19 Input processing program and input processing apparatus
JP2004-304961 2004-10-19
US11/232,998 US8619025B2 (en) 2004-10-19 2005-09-23 Storage medium having input processing program stored thereon and input processing device
US12/640,685 US20100091038A1 (en) 2004-10-19 2009-12-17 Storage medium having input processing program stored thereon and nput processing device

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US11/232,998 Division US8619025B2 (en) 2004-10-19 2005-09-23 Storage medium having input processing program stored thereon and input processing device

Publications (1)

Publication Number Publication Date
US20100091038A1 true US20100091038A1 (en) 2010-04-15

Family

ID=35500613

Family Applications (6)

Application Number Title Priority Date Filing Date
US11/232,998 Active 2032-04-04 US8619025B2 (en) 2004-10-19 2005-09-23 Storage medium having input processing program stored thereon and input processing device
US12/359,525 Ceased US8284159B2 (en) 2004-10-19 2009-01-26 Storage medium having input processing program stored thereon and input processing device
US12/640,685 Abandoned US20100091038A1 (en) 2004-10-19 2009-12-17 Storage medium having input processing program stored thereon and nput processing device
US12/762,734 Abandoned US20100194752A1 (en) 2004-10-19 2010-04-19 Storage medium having input processing program stored thereon and input processing device
US13/752,792 Active 2027-05-25 USRE44658E1 (en) 2004-10-19 2013-01-29 Storage medium having input processing program stored thereon and input processing device
US13/962,551 Active US8907896B2 (en) 2004-10-19 2013-08-08 Storage medium having input processing program stored thereon and input processing device

Family Applications Before (2)

Application Number Title Priority Date Filing Date
US11/232,998 Active 2032-04-04 US8619025B2 (en) 2004-10-19 2005-09-23 Storage medium having input processing program stored thereon and input processing device
US12/359,525 Ceased US8284159B2 (en) 2004-10-19 2009-01-26 Storage medium having input processing program stored thereon and input processing device

Family Applications After (3)

Application Number Title Priority Date Filing Date
US12/762,734 Abandoned US20100194752A1 (en) 2004-10-19 2010-04-19 Storage medium having input processing program stored thereon and input processing device
US13/752,792 Active 2027-05-25 USRE44658E1 (en) 2004-10-19 2013-01-29 Storage medium having input processing program stored thereon and input processing device
US13/962,551 Active US8907896B2 (en) 2004-10-19 2013-08-08 Storage medium having input processing program stored thereon and input processing device

Country Status (3)

Country Link
US (6) US8619025B2 (en)
EP (2) EP2518612B1 (en)
JP (1) JP4388878B2 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060097985A1 (en) * 2004-11-08 2006-05-11 Samsung Electronics Co., Ltd. Portable terminal and data input method therefor
US20130021089A1 (en) * 2011-01-27 2013-01-24 Fujitsu Component Limited Touch panel and method of detecting coordinate position
US20160077604A1 (en) * 2011-09-09 2016-03-17 Movea Method of controlling a cursor by measurements of the attitude of a pointer and pointer implementing said method
KR20170105069A (en) * 2015-06-16 2017-09-18 텐센트 테크놀로지(센젠) 컴퍼니 리미티드 Method and terminal for implementing virtual character turning

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4388878B2 (en) * 2004-10-19 2009-12-24 任天堂株式会社 Input processing program and input processing apparatus
US9630104B2 (en) * 2006-10-23 2017-04-25 Konrad V. Sherinian Systems, methods, and apparatus for transmitting virtual world content from a server system to a client
EP2390772A1 (en) * 2010-05-31 2011-11-30 Sony Ericsson Mobile Communications AB User interface with three dimensional user input
JP5623853B2 (en) * 2010-09-29 2014-11-12 株式会社カプコン Image processing program and image processing apparatus
TWI475471B (en) * 2011-09-19 2015-03-01 Acer Inc Method for assisting in video compression using touch screen and monitoring system
TWI488093B (en) * 2013-03-19 2015-06-11 Au Optronics Corp Method for detecting touch position and optical touch apparatus using the same
JP6271878B2 (en) * 2013-06-25 2018-01-31 任天堂株式会社 Information processing program, information processing apparatus, information processing system, and method for calculating indicated position
US10293253B2 (en) 2015-11-27 2019-05-21 Gree, Inc. Program, game control method, and information processing apparatus
JP6862953B2 (en) * 2017-03-16 2021-04-21 ヤマハ株式会社 Devices and methods for generating object movement trajectories
CN110496393B (en) * 2019-08-21 2023-05-12 网易(杭州)网络有限公司 Motion trail control method and device for virtual object, medium and electronic equipment
JP7240433B2 (en) 2021-03-19 2023-03-15 任天堂株式会社 Information processing device, information processing device control method, and information processing system

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5798761A (en) * 1996-01-26 1998-08-25 Silicon Graphics, Inc. Robust mapping of 2D cursor motion onto 3D lines and planes
US5841440A (en) * 1996-12-17 1998-11-24 Apple Computer, Inc. System and method for using a pointing device to indicate movement through three-dimensional space
US5898433A (en) * 1996-03-22 1999-04-27 Nec Corporation 3-D model window display device
US6271854B1 (en) * 1997-12-15 2001-08-07 Intel Corporation Method and apparatus for facilitating navigation in three-dimensional graphic scenes
US20020180809A1 (en) * 2001-05-31 2002-12-05 Light John J. Navigation in rendered three-dimensional spaces
US6542168B2 (en) * 1997-02-04 2003-04-01 Fujitsu Limited Three-dimensional window displaying apparatus and method thereof
US20040100479A1 (en) * 2002-05-13 2004-05-27 Masao Nakano Portable information terminal, display control device, display control method, and computer readable program therefor
US6967644B1 (en) * 1998-10-01 2005-11-22 Canon Kabushiki Kaisha Coordinate input apparatus and control method thereof, and computer readable memory
US20060082573A1 (en) * 2004-10-19 2006-04-20 Nintendo Co., Ltd. Storage medium having input processing program stored thereon and input processing device
US7872638B2 (en) * 2006-03-08 2011-01-18 Nintendo Co., Ltd. Motion determining apparatus and storage medium having motion determining program stored thereon

Family Cites Families (52)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4353552A (en) * 1979-02-23 1982-10-12 Peptek, Incorporated Touch panel system and method
JPS6340967A (en) 1986-08-06 1988-02-22 Nec Corp Plane input device
JPS63280325A (en) 1987-05-13 1988-11-17 Hitachi Ltd Cursor control system
US5714977A (en) * 1988-02-24 1998-02-03 Quantel Limited Video processing system for movement simulation
AU622823B2 (en) 1989-08-25 1992-04-16 Sony Corporation Portable graphic computer apparatus
JPH05165565A (en) 1991-12-18 1993-07-02 Hitachi Ltd Coordinate input system
US5601487A (en) * 1994-05-31 1997-02-11 Casio Computer Co., Ltd. Electronic game devices and methods
DE69634526T2 (en) * 1995-01-19 2006-03-23 Sega Enterprises, Ltd. IMAGE PROCESSING AND IMAGE PROCESSOR
JP3529138B2 (en) 1995-04-27 2004-05-24 株式会社セガ Image processing apparatus, image processing method, game apparatus using the same, and storage medium
JP3650167B2 (en) * 1995-06-02 2005-05-18 データスタジアム株式会社 Data processing device for baseball game
JP3734045B2 (en) 1995-08-10 2006-01-11 株式会社セガ Virtual image generation method and apparatus
JP3595060B2 (en) 1996-03-11 2004-12-02 松下電器産業株式会社 Graphic operation device
US6270413B1 (en) 1996-07-03 2001-08-07 Sega Enterprises, Ltd. Display method for games displays
KR100320262B1 (en) * 1996-08-05 2002-04-22 기노시타 구니아키 Apparantus for and method of designation a point on displayed image, and readable recording medium storing program for designationg a point on displayed image
JP3745475B2 (en) 1996-12-06 2006-02-15 株式会社セガ GAME DEVICE AND IMAGE PROCESSING DEVICE
JPH10290886A (en) 1997-02-18 1998-11-04 Sega Enterp Ltd Image processing device and image processing method
US6428411B1 (en) 1997-05-02 2002-08-06 Konami Co., Ltd. Volleyball video game system
JPH10333834A (en) 1997-05-30 1998-12-18 Namco Ltd Information storage medium and picture generating device
JPH10340157A (en) 1997-06-06 1998-12-22 Fujitsu Ltd Coordinate designating device
JPH117372A (en) 1997-06-17 1999-01-12 Hitachi Ltd Graphic selector
JPH1195650A (en) 1997-09-22 1999-04-09 Casio Comput Co Ltd Control device of living body image display, method of controlling living body image display, and medium on which living body image display processing program is recorded
JPH11128533A (en) 1997-10-30 1999-05-18 Nintendo Co Ltd Video game device and memory media for the same
JPH11342265A (en) 1998-06-01 1999-12-14 Sony Computer Entertainment Inc Record medium and entertainment system
JPH11353080A (en) 1998-06-09 1999-12-24 Takatoshi Yokoyama Three-dimensional image display method, recording medium recorded with program therefor, storage medium recorded with image arrangement data, and three-dimensional image display device
JP2000020749A (en) 1998-07-02 2000-01-21 Sega Enterp Ltd Display controller and display control method and recording medium recorded with program for controlling display and game machine
JP4059408B2 (en) 1998-08-21 2008-03-12 株式会社バンダイナムコゲームス GAME DEVICE AND INFORMATION STORAGE MEDIUM
US6196917B1 (en) 1998-11-20 2001-03-06 Philips Electronics North America Corp. Goal directed user interface
US6842175B1 (en) * 1999-04-22 2005-01-11 Fraunhofer Usa, Inc. Tools for interacting with virtual environments
US6354940B1 (en) * 1999-04-30 2002-03-12 Square Co., Ltd. Game apparatus, game fight processing method, and computer readable storage medium storage program therefor
US6654496B1 (en) * 1999-07-06 2003-11-25 Xerox Corporation Method and apparatus for selecting symbols using strokes on a user interface
JP3417883B2 (en) 1999-07-26 2003-06-16 コナミ株式会社 Image creating apparatus, image creating method, computer-readable recording medium on which image creating program is recorded, and video game apparatus
JP2001149653A (en) 1999-11-25 2001-06-05 Namco Ltd Game device, path selection method, and information storage medium
JP2001198351A (en) 2000-01-19 2001-07-24 Konami Co Ltd Arcade game equipment, methofd for displaying throwing guide in arcade game and readable recording mediium recording throwing guide display program
EP1125610A3 (en) 2000-01-21 2004-04-14 Sony Computer Entertainment Inc. Entertainment apparatus, storage medium and operation method of manipulating object
JP2002095863A (en) 2000-07-03 2002-04-02 Sony Computer Entertainment Inc Program exciting system, program exciting apparatus, recording medium and program, and method for switching viewpoint and method for switching sight
JP2002045569A (en) 2000-07-31 2002-02-12 Konami Computer Entertainment Osaka:Kk Computer readable recording medium on which game prigress control program is recorded, server and game progress control method
US20020023265A1 (en) 2000-08-08 2002-02-21 Metcalf Darrell J. Wireless controller with publicly-accessible communications link for controlling the content seen on large-screen systems
JP2002163103A (en) 2000-11-29 2002-06-07 Mitsubishi Electric Corp Portable information terminal and menu display method
US7137891B2 (en) 2001-01-31 2006-11-21 Sony Computer Entertainment America Inc. Game playing system with assignable attack icons
US7371163B1 (en) 2001-05-10 2008-05-13 Best Robert M 3D portable game system
JP2003010547A (en) 2001-06-29 2003-01-14 Square Co Ltd Computer readable recording medium with program of video game recorded thereon, program of video game, video game processing method, and video game processing system
JP2003024639A (en) 2001-07-18 2003-01-28 Konami Computer Entertainment Osaka:Kk Game progress control program, device and method for controlling game progress and server device for game
JP3761165B2 (en) 2002-05-13 2006-03-29 株式会社モバイルコンピューティングテクノロジーズ Display control device, portable information terminal device, program, and display control method
US7299424B2 (en) 2002-05-14 2007-11-20 Microsoft Corporation Lasso select
JP3690672B2 (en) 2002-05-17 2005-08-31 任天堂株式会社 Game system and game program
JP2004070920A (en) 2002-06-11 2004-03-04 Sony Computer Entertainment Inc Information processing program, computer readable recording medium recording information processing program, information processing method and information processor
JP3942028B2 (en) 2003-04-15 2007-07-11 株式会社コナミデジタルエンタテインメント Cursor control device, cursor control program
JP2004341924A (en) 2003-05-16 2004-12-02 Nippon Telegr & Teleph Corp <Ntt> Display device and method
US7366995B2 (en) 2004-02-03 2008-04-29 Roland Wescott Montague Combination tool that zooms in, zooms out, pans, rotates, draws, or manipulates during a drag
JP2005332231A (en) 2004-05-20 2005-12-02 Nippon Telegr & Teleph Corp <Ntt> Pointing method, pointing device and program therefor
JP4137043B2 (en) 2004-10-29 2008-08-20 株式会社コナミデジタルエンタテインメント GAME PROGRAM, GAME DEVICE, AND GAME CONTROL METHOD
JP3919789B2 (en) 2005-03-07 2007-05-30 株式会社コナミデジタルエンタテインメント Information processing apparatus, image movement instruction method, and program

Patent Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5798761A (en) * 1996-01-26 1998-08-25 Silicon Graphics, Inc. Robust mapping of 2D cursor motion onto 3D lines and planes
US5898433A (en) * 1996-03-22 1999-04-27 Nec Corporation 3-D model window display device
US5841440A (en) * 1996-12-17 1998-11-24 Apple Computer, Inc. System and method for using a pointing device to indicate movement through three-dimensional space
US6542168B2 (en) * 1997-02-04 2003-04-01 Fujitsu Limited Three-dimensional window displaying apparatus and method thereof
US6271854B1 (en) * 1997-12-15 2001-08-07 Intel Corporation Method and apparatus for facilitating navigation in three-dimensional graphic scenes
US6967644B1 (en) * 1998-10-01 2005-11-22 Canon Kabushiki Kaisha Coordinate input apparatus and control method thereof, and computer readable memory
US20020180809A1 (en) * 2001-05-31 2002-12-05 Light John J. Navigation in rendered three-dimensional spaces
US20040100479A1 (en) * 2002-05-13 2004-05-27 Masao Nakano Portable information terminal, display control device, display control method, and computer readable program therefor
US20060082573A1 (en) * 2004-10-19 2006-04-20 Nintendo Co., Ltd. Storage medium having input processing program stored thereon and input processing device
US20090135138A1 (en) * 2004-10-19 2009-05-28 Nintendo Co., Ltd. Storage medium having input processing program stored thereon and input processing device
US20100194752A1 (en) * 2004-10-19 2010-08-05 Nintendo Co., Ltd. Storage medium having input processing program stored thereon and input processing device
US8619025B2 (en) * 2004-10-19 2013-12-31 Nintendo Co., Ltd. Storage medium having input processing program stored thereon and input processing device
US8907896B2 (en) * 2004-10-19 2014-12-09 Nintendo Co. Ltd. Storage medium having input processing program stored thereon and input processing device
US7872638B2 (en) * 2006-03-08 2011-01-18 Nintendo Co., Ltd. Motion determining apparatus and storage medium having motion determining program stored thereon

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060097985A1 (en) * 2004-11-08 2006-05-11 Samsung Electronics Co., Ltd. Portable terminal and data input method therefor
US8311370B2 (en) * 2004-11-08 2012-11-13 Samsung Electronics Co., Ltd Portable terminal and data input method therefor
US20130021089A1 (en) * 2011-01-27 2013-01-24 Fujitsu Component Limited Touch panel and method of detecting coordinate position
US9019216B2 (en) * 2011-01-27 2015-04-28 Fujitsu Component Limited Touch panel and method of detecting coordinate position
US20160077604A1 (en) * 2011-09-09 2016-03-17 Movea Method of controlling a cursor by measurements of the attitude of a pointer and pointer implementing said method
US10093280B2 (en) * 2011-09-09 2018-10-09 Movea Method of controlling a cursor by measurements of the attitude of a pointer and pointer implementing said method
KR20170105069A (en) * 2015-06-16 2017-09-18 텐센트 테크놀로지(센젠) 컴퍼니 리미티드 Method and terminal for implementing virtual character turning
US20170323428A1 (en) * 2015-06-16 2017-11-09 Tencent Technology (Shenzhen) Company Limited Method and terminal for implementing turning of virtual character
US10204399B2 (en) * 2015-06-16 2019-02-12 Tencent Technology (Shenzhen) Company Limited Method and terminal for implementing turning of virtual character
KR101954010B1 (en) * 2015-06-16 2019-03-04 텐센트 테크놀로지(센젠) 컴퍼니 리미티드 Method and terminal for implementing virtual character turning

Also Published As

Publication number Publication date
US8907896B2 (en) 2014-12-09
EP2518612A1 (en) 2012-10-31
EP1650644B1 (en) 2018-01-10
US20140043266A1 (en) 2014-02-13
EP2518612B1 (en) 2018-10-24
JP2006119774A (en) 2006-05-11
USRE44658E1 (en) 2013-12-24
US20100194752A1 (en) 2010-08-05
JP4388878B2 (en) 2009-12-24
US8619025B2 (en) 2013-12-31
US8284159B2 (en) 2012-10-09
EP1650644A3 (en) 2012-01-25
US20060082573A1 (en) 2006-04-20
US20090135138A1 (en) 2009-05-28
EP1650644A2 (en) 2006-04-26

Similar Documents

Publication Publication Date Title
USRE44658E1 (en) Storage medium having input processing program stored thereon and input processing device
US8574077B2 (en) Storage medium having game program stored thereon, game apparatus, input device, and storage medium having program stored thereon
EP1621238B2 (en) Joystick emulation using a pointing device
US20170319960A1 (en) Storage medium having game program stored thereon, game apparatus and input device
US7794327B2 (en) Game apparatus and storage medium
US20060052165A1 (en) Storage medium having stored thereon game program, game machine, and input device
US7466304B2 (en) Image processing apparatus, storage medium having image processing program stored thereon, game apparatus and storage medium having game program stored thereon
EP1854520B1 (en) Game program and game apparatus
JP5354820B2 (en) Input processing program and input processing apparatus
JP4302767B2 (en) Input processing program and input processing apparatus
JP4726965B2 (en) Input processing program and input processing apparatus
JP4724758B2 (en) Input processing program and input processing apparatus
JP4724740B2 (en) Input processing program and input processing apparatus
JP4730975B2 (en) Input processing program and input processing apparatus
JP5363524B2 (en) Input processing program and input processing apparatus

Legal Events

Date Code Title Description
STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO PAY ISSUE FEE