WO2018216079A1 - ゲームプログラム、情報処理装置、情報処理システム、および、ゲーム処理方法 - Google Patents

ゲームプログラム、情報処理装置、情報処理システム、および、ゲーム処理方法 Download PDF

Info

Publication number
WO2018216079A1
WO2018216079A1 PCT/JP2017/019056 JP2017019056W WO2018216079A1 WO 2018216079 A1 WO2018216079 A1 WO 2018216079A1 JP 2017019056 W JP2017019056 W JP 2017019056W WO 2018216079 A1 WO2018216079 A1 WO 2018216079A1
Authority
WO
WIPO (PCT)
Prior art keywords
input
reference position
touch
movement
pointing device
Prior art date
Application number
PCT/JP2017/019056
Other languages
English (en)
French (fr)
Inventor
光佑 矢吹
健 宮本
茂人 村田
慎也 中野
Original Assignee
任天堂株式会社
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 任天堂株式会社 filed Critical 任天堂株式会社
Priority to JP2019519822A priority Critical patent/JP7083822B2/ja
Priority to EP17905004.2A priority patent/EP3449985B1/en
Priority to CN201780091070.4A priority patent/CN110662587B/zh
Priority to PCT/JP2017/019056 priority patent/WO2018216079A1/ja
Publication of WO2018216079A1 publication Critical patent/WO2018216079A1/ja
Priority to US16/688,156 priority patent/US11117048B2/en

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/20Input arrangements for video game devices
    • A63F13/21Input arrangements for video game devices characterised by their sensors, purposes or types
    • A63F13/214Input arrangements for video game devices characterised by their sensors, purposes or types for locating contacts on a surface, e.g. floor mats or touch pads
    • A63F13/2145Input arrangements for video game devices characterised by their sensors, purposes or types for locating contacts on a surface, e.g. floor mats or touch pads the surface being also a display device, e.g. touch screens
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/40Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
    • A63F13/42Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment by mapping the input signals into game commands, e.g. mapping the displacement of a stylus on a touch screen to the steering angle of a virtual vehicle
    • A63F13/426Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment by mapping the input signals into game commands, e.g. mapping the displacement of a stylus on a touch screen to the steering angle of a virtual vehicle involving on-screen location information, e.g. screen coordinates of an area at which the player is aiming with a light gun
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/40Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
    • A63F13/44Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment involving timing of operations, e.g. performing an action within a time slot
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/80Special adaptations for executing a specific game genre or game mode
    • A63F13/803Driving vehicles or craft, e.g. cars, airplanes, ships, robots or tanks
    • 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/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/038Control and interface arrangements therefor, e.g. drivers or device-embedded control circuitry
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/55Controlling game characters or game objects based on the game progress

Definitions

  • the present invention relates to a game program, a game device, a game system, and a game processing method for performing input using a pointing device.
  • a user interface that enables various game operations using a pointing device is desired.
  • an object of the present invention is to provide a game program, a game device, a game system, and a game processing method that enable various game operations using a pointing device.
  • the present invention employs the following configurations (1) to (8).
  • An example of the present invention is a game program that causes a computer of an information processing device to execute an acquisition step, a first processing execution step, a first reference position setting step, and a first movement processing step.
  • the computer repeatedly obtains the input position detected by the pointing device.
  • the computer responds to the second input performed within the first time from the first input, and the first object in the virtual game space The 1st process with respect to is performed.
  • the computer sets a reference position based on the input position when the second input to the pointing device is started.
  • the computer moves the first object in the virtual game space based on the reference position and the input position of the input that is continuously performed after the second input to the pointing device is started. The first movement process is executed.
  • the user can execute two types of processing on the object by a single input operation of the first input and the second input. Therefore, the information processing apparatus can cause the user to perform various game operations by inputting to the pointing device.
  • the first process is executed on the condition that the time from the timing based on the start or end of the first input to the timing at which the second input is started is within the first time. May be.
  • the information processing apparatus can appropriately calculate the time from the first input to the second input, it is accurately determined whether or not to execute the first process. Can be determined.
  • the information processing apparatus does not execute the first process when the position where the first input is performed is different from the position where the second input is performed. Can be. Thereby, it is possible to reduce the possibility that the first process is executed in response to an erroneous input by the user.
  • the game program may cause the computer to further execute a second process execution step.
  • the computer is a process different from the first process when the input continuously performed after the second input is started satisfies the predetermined condition, and the second process for the first object is performed. Execute the process.
  • the user can cause the information processing apparatus to execute the second process in addition to the first process and the first movement process described above by the second input. That is, the terminal device 2 can cause the user to perform more various game operations by a series of second inputs.
  • the game program may cause the computer to further execute a second reference position setting step and a third process execution step.
  • the computer sets a reference position based on an input position different from the second input and relating to the third input to the pointing device.
  • the computer is a process different from the first movement process based on the reference position and the input position of the input continuously performed after the third input is started, A third process is performed on a second object that is the same as or different from the one object.
  • the information processing apparatus can cause the user to perform an operation on the object even with a third input different from the second input, so that the user can perform more various game operations. Can be made.
  • the second object may be the same as the first object.
  • a process of moving the second object by a control method different from the first movement process may be executed.
  • the user can perform a moving operation on the object by the second input performed after the first input and the third input different from the second input. That is, the user can selectively use the two types of movement operations by a simple method of whether or not to perform the first input. That is, the information processing apparatus can provide a user interface with good operability that can easily use two types of movement operations.
  • the game program may further cause the computer to execute a determination step.
  • the computer determines whether or not an input time from an input to the pointing device that is different from the second input until the end is within a predetermined second time.
  • an input for which the input time is determined to be within the second time is set as the first input, and the first process is executed according to the second input after the first input. Also good.
  • the third process may be executed with the input determined to be not within the second time as the third input.
  • the information processing apparatus can easily determine the first input and the third input by determining whether or not the input time is not the second time. it can.
  • the game program may cause the computer to further execute a fourth process execution step.
  • the computer executes a fourth process that causes the first object to perform a predetermined action in response to the first input.
  • the user can cause the object to perform a predetermined action also by the first input. That is, the information processing apparatus can cause the user to perform more various game operations.
  • another example of the present invention is an information processing apparatus or information processing system that executes the processing of each step in the above (1) to (8) (not limited to a mode in which each step is executed by a program). Good.
  • Another example of the present invention may be a game processing method in which a computer executes the processing of each step in the above (1) to (8).
  • various game operations can be performed using a pointing device.
  • a block diagram showing an example of a configuration of an information processing system in the present embodiment Block diagram showing an example of server configuration
  • the block diagram which shows an example of a structure of a terminal device
  • the figure which shows an example of the game image after touch input is started
  • the figure which shows an example of the operation image The figure which shows an example of a mode that a reference position is changed
  • the figure which shows an example of tap operation in this embodiment, and 2nd movement operation The figure which shows an example of the game image showing a mode that an object performs jump movement
  • the figure which shows an example of the game image containing the object in a drift state The figure which shows an example of the game image containing the object in the acceleration possible state
  • the figure which shows an example of the game image containing the object in an acceleration state The figure which shows an example of the data used for the game process in an information processing system
  • the flowchart which shows the flow of an example of the game process performed by a terminal device The flowchart which shows the flow of an example of the game process performed by a terminal device
  • FIG. 1 is a block diagram showing an example of the configuration of the information processing system in the present embodiment.
  • the information processing system includes a server 1 and a terminal device 2.
  • the server 1 and the terminal device 2 can be connected to the network 3 such as the Internet and / or a mobile communication network.
  • the server 1 and the terminal device 2 can communicate with each other via the network 3.
  • the server 1 is a server for providing a service related to an application executed in the terminal device 2.
  • the server 1 is a game server for executing a game on the terminal device 2. That is, the server 1 provides an environment for executing game processing in the terminal device 2. For example, in response to a request from the terminal device 2 that executes the game process, the server 1 executes the game process as necessary, and transmits game data corresponding to the request to the terminal device 2.
  • the terminal device 2 is an example of an information processing device possessed by a user, and is, for example, a smartphone, a portable or stationary game device, a mobile phone, a tablet terminal, or a wearable terminal.
  • the terminal device 2 can execute a game program (in other words, a game application) for a game for which the server 1 provides a service.
  • FIG. 2 is a block diagram illustrating an example of the configuration of the server 1.
  • Each component included in the server 1 illustrated in FIG. 2 is realized by one or more information processing apparatuses.
  • the hardware configuration of the server 1 in the present embodiment may be the same as the hardware configuration for a conventional server.
  • the server 1 includes a processing unit 11 and a storage unit 12.
  • the processing unit 11 is electrically connected to the units 12 to 15 of the server 1.
  • the processing unit 11 includes a CPU (Central Processing Unit) and a memory.
  • CPU Central Processing Unit
  • various information processing is executed by the CPU executing a program stored in the storage unit 12 using a memory.
  • the storage unit 12 is an arbitrary storage device (also referred to as a storage medium) accessible by the processing unit 11.
  • the storage unit 12 stores a program executed in the processing unit 11, data used for information processing by the processing unit 11, data obtained by the information processing, and the like.
  • the storage unit 12 stores at least a program for game processing executed on the server side for game processing executed on the terminal device 2.
  • the server 1 includes a communication unit 13.
  • the communication unit 13 has a function of connecting to the network 3 and communicating with other devices (for example, the terminal device 2) via the network 3.
  • the server 1 also includes an input unit 14 and a display unit 15 as an input / output interface.
  • FIG. 3 is a block diagram illustrating an example of the configuration of the terminal device 2.
  • the terminal device 2 includes a processing unit 21 and a storage unit 22.
  • the processing unit 21 is electrically connected to the units 22 to 25 of the terminal device 2.
  • the processing unit 21 has a CPU and a memory.
  • the CPU executes various types of information processing by executing a program (including the above-described game program) stored in the storage unit 22 using a memory.
  • the storage unit 22 stores a program executed in the processing unit 21, data used for information processing by the processing unit 21, data obtained by the information processing, and the like.
  • the storage unit 22 may be a storage medium that can be attached to and detached from the terminal device 2 (for example, a card-type storage medium).
  • the terminal device 2 includes a pointing device as an example of an input unit.
  • a pointing device is any input device that can detect a specified position (eg, by a user) on the input surface.
  • the pointing device is a touch panel 23 provided on the screen of the display unit 24.
  • the touch panel 23 detects a position specified by an input touching an input surface (in other words, a surface set on the screen of the display unit 24) (referred to as “touch input”).
  • the pointing device may be a touch input type input device capable of detecting a specified position (for example, by a user) on the input surface, such as a touch screen, a touch panel, or a touch pad.
  • the touch input type input device may be an input device capable of performing contact or non-contact input on the input surface. That is, the touch input type input device is not limited to a device that can detect the position of the touch input with respect to the input surface, but can detect the input position by detecting a finger or the like that is disposed at a position slightly away from the input surface. It may be an input device that can be detected (for example, an input device having a floating touch function). In other words, instead of touch input on the input surface (or in addition to touch input), the touch input type input device does not touch the input surface and inputs a finger or the like slightly away from the input surface. The position specified by may be detected.
  • the pointing device is not limited to a touch input type input device, and may be a mouse or an operating device that is moved by a user, and is on the input surface depending on the position and / or orientation of the operating device. It may be an operating device capable of specifying a position.
  • the input position detected by the pointing device is a position corresponding to the position on the display screen. It is. However, the input position substantially indicates a position on the display screen. Therefore, in the description of the present embodiment, the input position may be described as the position on the display screen for the purpose of making the description easy to understand. Note that “the input position is at a specific position on the display screen” is, strictly speaking, the input position is a position corresponding to the specific position on the display screen and is at a position on the input surface. It means that.
  • the terminal device 2 includes a display unit 24.
  • the display unit 24 displays an image (for example, a game image) generated by information processing executed in the processing unit 21 of the terminal device 2.
  • the terminal device 2 includes a communication unit 25.
  • the communication unit 25 has a function of communicating by connecting to a mobile communication network (in other words, a mobile phone communication network). That is, the terminal device 2 (specifically, the processing unit 21) connects to the network 3 via the mobile communication network using the communication unit 25 (in other words, via the communication unit 25), It communicates with (for example, server 1 etc.).
  • the structure of the communication part for the terminal device 2 to communicate via the network 3 is arbitrary.
  • the communication unit 25 may have a function of connecting to a wireless LAN by a communication module that has been authenticated by Wi-Fi, or a function of connecting to a mobile communication network and a function of connecting to a wireless LAN. You may have both.
  • the user performs an operation on the object by touch input on the touch panel 23. That is, the terminal device 2 controls the operation (more specifically, movement) of the object based on the touch input on the touch panel 23.
  • FIG. 4 is a diagram illustrating an example of a game image.
  • FIG. 4 is a game image when no touch input is performed.
  • the terminal device 2 displays a game image including a virtual game space (a race course in the present embodiment) and an object 31 appearing in the game space on the display unit 24.
  • the object 31 is an object that imitates a car (and a character that drives the car), and is operated by the user.
  • the terminal device 2 when no touch input is performed, the terminal device 2 automatically controls the movement of the object 31 (that is, according to a predetermined algorithm). In this case, the object 31 is automatically controlled to advance along the race course. Note that in another embodiment, the terminal device 2 may control the movement of the object 31 so as to go straight when no touch input is performed.
  • the speed of the object 31 is automatically controlled (for example, at a constant speed) except when an acceleration operation described later is performed.
  • the speed of the object 31 may be controlled based on a user input.
  • the terminal device 2 may control the speed of the object 31 based on an instruction from the user (for example, an instruction by touch input to an accelerator button displayed on the screen).
  • the object 31 can take two types of states, a normal state and a drift state. Although details will be described later, the contents of the process for controlling the movement of the object 31 based on the touch input by the user are different between the normal state and the drift state. In the present embodiment, at least when the touch input is not performed, the object 31 is in a normal state.
  • the user performs a moving operation on the object 31 by touch input.
  • the user simply performs an operation method (FIG. 5) for performing a moving operation (that is, without performing a tap operation described later), and an operation method for performing a moving operation following the tap operation (FIG. 5). 9).
  • a moving operation when a moving operation is performed without performing a tap operation is referred to as a “first moving operation”
  • a moving operation performed following the tap operation is referred to as a “second moving operation”.
  • the terminal device 2 performs movement control of the object 31 in the normal state.
  • the terminal device 2 performs movement control of the object 31 in the drift state.
  • the user can selectively use two types of movement operations depending on whether or not the tap operation is performed before the movement operation. Details of the moving operation will be described below.
  • FIG. 5 is a diagram illustrating an example of the first movement operation in the present embodiment.
  • the touch input performed is shown on the upper side of the time axis
  • the processing executed in the terminal device 2 is shown on the lower side of the time axis.
  • the first movement operation is an operation (specifically, a slide operation) in which touch input is continuously performed after the touch input is started.
  • a touch input that is continuously performed after touch-on that is, input without interruption from touch-on
  • touch-on means that touch input has started, in other words, a change from a state in which no touch input is performed to a state in which touch input is performed. To do.
  • touch-off means that touch input has been completed, in other words, the change from the state in which the touch input is performed to the state in which the touch input is not performed.
  • the user designates the content of an input instruction (an input direction and an input distance described later) by appropriately moving the input position during continuous touch input in the moving operation.
  • the user starts touch input at timing t1.
  • the terminal device 2 performs the first movement operation when the continuous touch input is performed even after the predetermined time T1 has elapsed from the start of the touch input (in other words, the operation by the touch input is performed). Is the first movement operation).
  • the terminal device 2 performs a tap operation (in other words, the operation by the touch input is a tap operation). ).
  • the terminal device 2 relates to continuous touch input for the purpose of determining whether the started touch input operation is the first movement operation or the tap operation. It is determined whether the time from touch-on has elapsed time T1.
  • the terminal device 2 sets a reference position (see FIG. 5).
  • the reference position is a position used for specifying the content of an input instruction by touch input.
  • the terminal device 2 sets the reference position based on the input position at the time when it is determined that the first movement operation has been performed (in the example illustrated in FIG. 5, the timing t2). More specifically, the input position when it is determined that the first movement operation has been performed is set as the reference position.
  • the reference position may be an arbitrary position set based on the input position when the reference position is set. For example, when the input position at the time of setting the reference position is located near the edge of the screen of the display unit 24, the terminal device 2 determines a position that is a predetermined distance from the edge of the screen based on the input position. May be set as This is to allow the user to specify an input position that is separated from the reference position by a predetermined distance in any direction in the above case. In the above case, the reference position may be set to a position that is a distance of a radius r2 of a reference position image to be described later from the edge of the screen.
  • the reference position may be set to a position that does not depend on the input position when the reference position is set.
  • the terminal device 2 may set the input position at the time of touch-on in the first movement operation as the reference position.
  • the terminal device 2 may set a predetermined position (for example, the center position of the screen of the display unit 24) as the reference position.
  • the user can start touch input for a moving operation using an arbitrary position on the input surface of the touch panel 23 as an input start position. That is, the terminal device 2 executes processing related to the moving operation (FIGS. 15 and 16) in response to the start of touch input at an arbitrary position on the input surface.
  • the terminal device 2 may execute the above-described process on the condition that a touch input is started in a predetermined input receiving area on the input surface.
  • the input reception area may be an area set based on the position of the object 31, for example, or may be a predetermined area.
  • FIG. 6 is a diagram showing an example of the game image after the touch input is started.
  • the terminal device 2 displays an operation image 32 on the display unit 24 in addition to the game image.
  • the finger of the user performing touch input is indicated by a dotted line.
  • the operation image 32 includes an input position image 33 and a reference position image 34.
  • the input position image 33 is a position on the input surface of the touch panel 23 and an image indicating the current input position. Specifically, the input position image 33 represents a circular area having a radius r1 centered on the input position (see FIG. 7).
  • the reference position image 34 is a position on the input surface of the touch panel 23 and an image indicating the reference position. Specifically, the reference position image 34 represents a circular area having a radius r2 (> r1) centered on the reference position (see FIG. 7).
  • the operation image 32 is displayed, so that the user can visually recognize the input position and the reference position. Thereby, it becomes easy for the user to input according to the intention, and the terminal device 2 can improve the operability of the touch input.
  • the operation image 32 in the present embodiment is an image simulating a slide pad that is an example of a direction input device.
  • the operation image 32 may be an arbitrary image representing the reference position and the input position. In other embodiments, the operation image 32 may not be displayed on the display unit 24.
  • the user performs an input instruction for instructing the moving direction of the object 31 by the first moving operation.
  • an input instruction for instructing the moving direction of the object 31 by the first moving operation.
  • FIG. 7 is a diagram illustrating an example of the operation image.
  • FIG. 7 shows a reference position and an input position in addition to the operation image 32 displayed on the display unit 24.
  • the input position is acquired from the touch panel 23 as a two-dimensional coordinate indicating the position on the input surface.
  • the input position and the reference position are stored in the terminal device 2 as two-dimensional coordinates.
  • FIG. 7 shows a state where the input position Pt has moved from the position at the time of setting the reference position (that is, the reference position Pr) after the reference position Pr is set.
  • the input instruction by the touch input is performed during a period in which the touch input continues from the touch-on after the reference position is set (in the example illustrated in FIG. 5, the period from the timing t2 to the touch-off timing t3).
  • the terminal device 2 specifies the content of the input instruction based on the reference position and the input position in the above period. In the present embodiment, the input direction and the input distance are calculated as values representing the contents of the input instruction.
  • the input direction is calculated based on the vector V from the reference position Pr to the input position Pt.
  • the vector V is a vector having a reference position Pr as a start point and an input position Pt as an end point.
  • the input direction is calculated as the direction of the x-axis component of the vector V (in other words, the horizontal component on the input surface). That is, in the present embodiment, the input direction is calculated as the right direction (that is, the x-axis positive direction) or the left direction (that is, the x-axis negative direction).
  • the input distance is calculated based on the magnitude of the vector V.
  • the input distance is calculated as the magnitude Vx of the x-axis component of the vector V.
  • the input instruction is a direction and a size related to a one-dimensional direction (specifically, the x-axis direction). Accordingly, the input instruction may be expressed as a numerical value indicating the input direction with a positive / negative sign and the input distance as an absolute value, such as “ ⁇ 2” or “1”.
  • the input instruction may be a direction and size related to two dimensions. That is, the input instruction may be such that the direction of the vector V is the input direction and the magnitude of the vector V is the input distance. In another embodiment, the input instruction may include only one of the input direction and the input distance.
  • the terminal device 2 controls the operation (specifically, movement) of the object 31 based on the input instruction.
  • the object 31 is controlled based on the input position and the reference position.
  • the specific control method of the object 31 is arbitrary, in the present embodiment, the terminal device 2 controls the object 31 so that it bends in a direction corresponding to the input direction with a bend amount corresponding to the input distance. . That is, the object 31 operates to bend to the right as the input position Pt is located on the right side with respect to the reference position Pr, and to the left as the input position Pt is located on the left side with respect to the reference position Pr. Works like a bend.
  • the direction in which the object 31 bends and the amount by which the object 31 bends may be calculated based on the straight traveling direction, or the traveling direction of the object 31 when the object 31 performs automatic traveling (that is, when no touch input is performed). May be calculated based on the above.
  • the speed of the object 31 during the moving operation is automatically controlled as described above.
  • the terminal device 2 includes the input distance that is the distance between the reference position and the input position that is continuously acquired after setting the reference position, and the input position from the reference position.
  • the movement of the object 31 is controlled on the basis of the input direction that is the direction to the. According to this, the user can perform an operation on the object by a simple operation method of a series of touch inputs (that is, continuous touch input) that continues from touch-on. In other embodiments, the movement of the object 31 may be controlled based on at least one of the input distance and the input direction.
  • the terminal device 2 may start control of the object 31 on condition that the input distance exceeds a predetermined control start distance. At this time, the control on the object 31 is not performed in a period from when the input is started until the input position is separated from the reference position to some extent. According to this, for example, when the user does not intend to perform the moving operation and erroneously performs the touch input (more specifically, for example, when the finger hits the input surface of the touch panel 23), The possibility that the movement control of the object 31 is performed against the user's intention can be reduced.
  • the set reference position may be changed while a touch input that is continued from the time of setting the reference position is performed.
  • the reference position changing process will be described.
  • FIG. 8 is a diagram showing an example of how the reference position is changed.
  • the reference position is changed from the position Pr0 to the position Pr1 in response to the detection of the input position of the position Pt1 (see FIG. 8).
  • the terminal device 2 changes the reference position when the distance from the reference position to the input position becomes larger than a predetermined distance as a result of the input position being moved by continuous touch input.
  • the predetermined distance is determined in advance, for example, a value obtained by subtracting the radius r1 of the input position image from the radius r2 of the reference position image 34. Therefore, in the present embodiment, the reference position is set (in other words, changed) so that the input position image 33 is included inside the reference position image 34. That is, the input position image 33 is arranged so as to be included in the circular area of the reference position image 34. In another embodiment, the reference position may be set such that the input position (that is, the center of the input position image 33) is included inside the reference position image 34.
  • the predetermined distance is set to the radius r2 of the reference position image 34.
  • the predetermined distance may be set to a value independent of the radius r1 of the input position image 33 and the radius r2 of the reference position image 34. That is, the sizes of the input position image 33 and the reference position image 34 may not be used for the reference position changing process.
  • the terminal device 2 changes the reference position so that the distance from the reference position to the input position is within the predetermined distance.
  • the changed reference position Pr1 is a position on a line segment connecting the reference position Pr0 before the change and the current input position Pt1, and the current input position from the changed reference position Pr1.
  • the distance to Pt1 is determined as a position where the predetermined distance is reached (see FIG. 8).
  • the specific calculation method of the reference position after the change is arbitrary.
  • the terminal device 2 moves the reference position Pr0 before the change in a direction corresponding to the direction from the input position Pt0 before the reference position is changed to the current input position Pt1.
  • the changed reference position Pr1 may be calculated.
  • the terminal device 2 calculates the input instruction (input direction and input distance) used for movement control of the object 31 based on the changed reference position.
  • the process for controlling the object 31 based on the input instruction is the same before and after the change of the reference position.
  • the terminal device 2 changes the reference position so as to follow the movement of the input position under a certain condition. According to this, since the distance between the input position and the reference position is maintained within the predetermined distance, the user can easily perform an operation of moving the current input position to the opposite side with respect to the reference position. . For example, the user can easily change an input position on the right side with respect to the reference position to a position on the left side with respect to the reference position. That is, the user can easily change the input instruction for instructing the right direction to the input instruction for instructing the left direction.
  • the terminal device 2 may not execute the process of changing the reference position. That is, even if the distance from the input position to the reference position is greater than the predetermined distance, the reference position does not need to be changed. At this time, the terminal device 2 may limit the size of the input distance (that is, set the maximum value of the input distance). That is, the terminal device 2 may set the input distance as the predetermined distance when the distance from the input position to the reference position is larger than the predetermined distance.
  • FIG. 9 is a diagram illustrating an example of the tap operation and the second movement operation in the present embodiment.
  • the second movement operation is an operation in which touch input is started within a predetermined time T2 after the tap operation and the touch input is continuously performed.
  • the user performs the second movement operation.
  • the user first performs a tap operation.
  • the tap operation is an operation in which touch-off is performed within the predetermined time T1 from touch-on.
  • the terminal device 2 since the time from the touch-on timing t4 of a certain touch input to the touch-off timing t5 is less than the time T1, the terminal device 2 performs an operation based on the touch input as a tap operation (in other words, It is determined that a tap operation has been performed.
  • the terminal device 2 determines that the operation by the touch input is the above-described first movement operation.
  • the terminal device 2 may determine whether or not a tap operation has been performed in consideration of the touch-on position and the touch-off position of the touch input. That is, the terminal device 2 determines that the tap operation has been performed when the distance between the touch-on position and the touch-off position is equal to or less than a predetermined value and the time from the touch-on to the touch-off is less than the time T1. It may be. According to this, since the terminal device 2 can distinguish, for example, a tap operation and a flick operation, the tap operation can be determined more accurately.
  • the terminal device 2 causes the object 31 to perform a predetermined action (specifically, a jump action) in response to a tap operation.
  • FIG. 10 is a diagram illustrating an example of a game image representing a state in which an object performs a jump operation.
  • the object 31 performs a jump operation in response to a tap operation performed by the user. That is, the terminal device 2 causes the object 31 to perform a jump operation at the timing t5 when it is determined that the tap operation has been performed (in other words, the touch-off timing of the tap operation).
  • the terminal device 2 may not execute processing according to the tap operation.
  • the user performs a movement operation (that is, a second movement operation) following the tap operation. That is, the user starts the next touch input at timing t6 when the elapsed time from the touch-off timing t5 of the tap operation is less than the predetermined time T2 (see FIG. 9).
  • the time T2 is a time for the object 31 to perform a predetermined action corresponding to the tap operation (for example, when the predetermined action is a jump action, the time from the start of the object 31 to the landing). Or you may set to time longer than the said time.
  • the terminal device 2 performs the second movement operation when the length from the touch-off timing of the tap operation to the touch-on timing of the next touch input is within a predetermined time T2.
  • the operation by the touch input is the second movement operation.
  • the length from the touch-off timing of the tap operation to the touch-on timing of the next touch input is longer than the predetermined time T2, it is determined that the operation by the touch input is not the second movement operation.
  • the operation by the touch input is determined as a tap operation or a first movement operation.
  • the terminal device 2 performs the second movement operation on the condition that the time from the input of the tap operation to the touch input performed after the end of the input is within a predetermined time. Is determined to have been performed.
  • the condition for determining that the second movement operation has been performed is that “the length from the touch-off timing of the tap operation to the touch-on timing of the next touch input is a predetermined time T2. It was within. "
  • the condition for determining that the second movement operation has been performed may be, for example, the following condition.
  • the time from the touch-on timing of the tap operation (timing t4 in the example shown in FIG.
  • timing t6 in the example shown in FIG. 9 is within a predetermined time.
  • the time from the intermediate operation timing (in the example shown in FIG. 9, the intermediate timing between timing t4 and timing t5) to the touch-on of the next touch input is within a predetermined time.
  • the first touch input in the second movement operation is the touch input for the tap operation.
  • the first input is limited to the touch input for the tap operation.
  • any touch input may be used (for example, see “(Modified example regarding first input)” described later).
  • the condition for determining that the second movement operation has been performed is that “the time from the touch-on timing of the first touch input to the touch-on of the next touch input is within a predetermined time”. There may be. Further, the condition may be that “the time from the touch-off timing of the first touch input to the touch-on of the next touch input is within a predetermined time”.
  • condition for determining that the second movement operation has been performed may include a condition that “the next touch input has continued for a predetermined input duration or longer”. .
  • This input duration may be the same as the time T1, for example.
  • the terminal device 2 receives the second input (that is, the touch input performed after the first input) from the timing based on the start or end of the first input (for example, the input of the tap operation).
  • the process corresponding to the condition (that is, the process corresponding to the second movement operation) is executed at least on the condition that the time until the timing of the start is within the predetermined time T2.
  • the terminal device 2 can appropriately calculate the time from the first input to the second input, and can accurately determine whether or not to execute the above process.
  • the user performs the first input before the second input for the movement operation (more specifically, the second input within the predetermined time T2 after the first input).
  • the second movement operation is performed unintentionally (in other words, contrary to the user's intention, the second movement operation). Can be reduced).
  • the terminal device 2 determines whether or not the second movement operation has been performed in consideration of the input position of the tap operation and the input position of the next touch input. It may be. That is, the terminal device 2 determines that the second movement operation has been performed on the condition that the distance between the input position of the tap operation and the input position of the next touch input is equal to or less than a predetermined value. Also good.
  • the “input position of the tap operation” may be, for example, a touch-on position of the tap operation, a touch-off position, or a position based on the touch-on position and the touch-off position (for example, , The midpoint position between the touch-on position and the touch-off position). Further, the “input position of the next touch input” may be, for example, a touch-on position of the touch input.
  • the reference position is set in the same manner as the first movement operation.
  • the reference position is set based on the input position at the time of touch-on. That is, the terminal device 2 sets the input position at the time of touch-on in the second movement operation, that is, the input position at the start of touch input, as the reference position.
  • the reference position may be set for the second movement operation based on the input position detected at a timing after the touch-on as in the case of the first movement operation. For example, when the terminal device 2 distinguishes between the second movement operation and another operation (for example, a tap operation), the terminal device 2 uses a reference based on the input position when it is determined that the second movement operation has been performed. The position may be set. Similarly to the first movement operation, when the input position at the time of setting the reference position is located near the edge of the screen of the display unit 24, the terminal device 2 also displays the second movement operation on the screen. A position that is a predetermined distance from the end may be set as the reference position.
  • the terminal device 2 when it is determined that the second movement operation has been performed, the terminal device 2 changes the state of the object 31 to the drift state. Therefore, the second movement operation is performed on the object 31 that has entered the drift state.
  • the terminal device 2 may control the direction of the object in the drift state according to the direction between the input position and the reference position in the second movement operation. That is, when the input position is on the left side with respect to the reference position, the object is controlled to the left drift state (that is, the drift state turning to the left), and when the input position is on the right side with respect to the reference position, the object is , It may be controlled to a right drift state (that is, a drift state turning to the right).
  • the terminal device 2 controls the object 31 on the condition that the input distance has exceeded a predetermined control start distance in the second movement operation as in the first movement operation. You may make it start. At this time, after the second movement operation is started, the terminal device 2 may cause the object 31 to transition to the drift state on condition that the input distance exceeds a predetermined control start distance.
  • the timing of executing the transition process (that is, the process of transitioning the object 31 to the drift state) in accordance with the touch input of the second movement operation is not limited to the timing at the time of touch-on, and the touch after the touch-on. It may be a timing at which a predetermined condition regarding the input position of the input is satisfied.
  • FIG. 11 is a diagram illustrating an example of a game image including an object in a drift state.
  • the drift state is a state in which the movement control is performed by a method different from the movement control in the normal state.
  • a state where the object 31 is drifting (specifically, a state where smoke is rising from the tire) is displayed.
  • the second movement operation in the drift state is the same operation method as the first movement operation in the normal state. That is, even when the object 31 is in the drift state, the terminal device 2 specifies the input instruction (specifically, the input direction and the input distance) based on the touch input as in the normal state. In this way, the user can operate the object 31 with the same operation method whether the object 31 is in the normal state or the drift state. However, the process of controlling the movement of the object 31 based on the input instruction is different between the normal state and the drift state.
  • the object 31 in the drift state, is controlled to move at a same speed so that it can bend a curve sharper than the normal state.
  • a specific method of movement control in the drift state is arbitrary.
  • the object 31 in the drift state, may be controlled to move so that the curve can bend faster than the normal state.
  • the terminal device 2 may perform movement control of the object 31 in the drift state so that the user can operate the movement of the object more advantageously in the game than in the normal state.
  • the terminal device 2 changes the object 31 from the drift state to the normal state.
  • the second movement operation ends at timing t8
  • the object 31 transitions from the drift state to the normal state.
  • the terminal device 2 automatically controls the object 31 during a period when no touch input is performed.
  • the user continuously performs the second movement operation for a predetermined time T3 or more.
  • the object 31 is set to the acceleration enabled state (in a drift state).
  • the terminal device 2 sets the object 31 in the acceleration enabled state.
  • the movement operation is finished after the object 31 is in an accelerating state (that is, when touch-off occurs)
  • the movement of the object 31 is controlled in an accelerated state that is accelerated than usual. .
  • FIG. 12 is a diagram illustrating an example of a game image including an object in an acceleration enabled state.
  • the object 31 in the acceleration enabled state, the object 31 has a display mode representing the acceleration possible state in addition to the display mode representing the drift state (specifically, the display mode in which smoke is rising from the tire). (Specifically, a display mode in which sparks are emitted from the tire).
  • the speed of the object 31 that is in the drift state does not change depending on whether or not the acceleration is possible.
  • the speed of the object 31 may be higher when the object 31 that is in the drift state is in the accelerating state than in the case where the object 31 is not in the accelerating state.
  • the acceleration condition is that the drift state is continued for a predetermined time T3. That is, the terminal device 2 sets the object 31 in the acceleration enabled state in response to the elapse of the time T3 after entering the drift state (in other words, after the second movement operation is started) (see FIG. 9).
  • the object 31 is in an accelerating state at a timing t7 when a time T3 has elapsed from the touch-on timing t6 of the second movement operation.
  • the content of the acceleration condition is arbitrary.
  • the acceleration condition may include a condition that “the continuous touch input represents a predetermined gesture in the drift state” or a condition that “a predetermined operation has been performed by the continuous touch input in the drift state”. But you can.
  • the acceleration condition may be a state where an input satisfying a predetermined condition regarding the input direction and / or the input distance is performed, or even if the state continues for a predetermined time. Good.
  • the terminal device 2 uses the first when the input continuously performed after the input of the second movement operation is started satisfies the predetermined condition (that is, the acceleration condition).
  • the process is different from the process (that is, the process of transitioning the object 31 to the drift state), and the second process for the object 31 (that is, the process of setting the object 31 to the acceleration enabled state) is executed.
  • the user can further execute the second process during the second movement operation. That is, the terminal device 2 can make a user perform various game operations by a series of touch inputs.
  • the second process may be an arbitrary process related to the movement of the object 31.
  • the second process may be a process of moving the object 31 by a predetermined control method. Therefore, in the present embodiment, it can be said that “a process for moving the object 31 in an accelerated state”, which will be described later, is also an example of the second process.
  • the predetermined condition is “the second moving operation is completed”. As described above, the predetermined condition may be “a state in which a continuous touch input in the second movement operation satisfies a certain condition for a predetermined time” or “continuation after the execution of the first process”.
  • the continuous touch input in the second movement operation has ended after a state in which the touch input satisfies a certain condition continues for a predetermined time.
  • the predetermined condition may be that “continuous touch input after execution of the first process has ended”.
  • the user performs an acceleration operation (that is, an operation for ending touch input) at timing t8 after timing t7 when the object 31 is in an acceleration enabled state.
  • the object 31 travels in an accelerated state. That is, when the second movement operation is completed in a state where the object 31 is ready for acceleration, the terminal device 2 moves the object 31 in the accelerated state (see FIG. 9).
  • the acceleration state is a state in which the object 31 moves at a speed faster than the speed of the object 31 in the normal state.
  • FIG. 13 is a diagram illustrating an example of a game image including an object in an accelerated state. As shown in FIG. 13, in the acceleration state, a state in which the object 31 is in the acceleration state (specifically, a state in which a spark is being injected backward) is displayed.
  • the acceleration state continues for a predetermined time T4 (in the example shown in FIG. 9, from timing t8 to timing t9 after the elapse of the predetermined time). That is, the terminal device 2 moves the object 31 in an accelerated state from the end of the second moving operation until the time T4 elapses, and then performs automatic control in a normal state (see FIG. 9).
  • the user moves the object 31 faster by ending the second movement operation after operating the object 31 in the drift state so as to be in an accelerating state.
  • the user turns the object 31 at a high speed by turning a curve of a race course while the object 31 is transitioned to a drift state, and causing the object 31 to travel in an accelerated state from a position where the race course is a straight line. Can do.
  • the object 31 may be capable of taking a multi-stage acceleration state. For example, in response to the drift state being continued for the time T3, the object 31 enters the first acceleration enabled state, and the first acceleration enabled state is a predetermined time T3 ′ (T3 ′> T3).
  • the object 31 may be controlled so as to be in the second accelerating state in response to being continued for a while.
  • the terminal device 2 moves from the first acceleration enabled state (of the second movement operation).
  • the object 31 is controlled so that the acceleration state continues longer than when the acceleration state is reached (according to the end).
  • the terminal device 2 may control the object 31 so that the speed in the acceleration state is higher than that in the acceleration state from the first acceleration possible state in the above case. Good.
  • the terminal device 2 may display the object 31 so that a plurality of stages of acceleration possible states can be distinguished from each other.
  • the terminal device 2 may display the object 31 so that the color and / or size of the spark is different between the first acceleration enabled state and the second acceleration enabled state.
  • the user performs a plurality of types of operations shown in FIG. 9 (ie, jump operation and drift state) by a single touch input including a tap operation and a second movement operation. Transition operation, movement operation, acceleration state setting operation, and acceleration operation) can be performed.
  • the terminal device 2 can make a user perform various game operations using a pointing device (namely, touch panel).
  • the first movement operation, the tap operation, and the second movement operation are all operations that the user can perform with one finger. Therefore, according to the present embodiment, the user can operate the object 31 with one finger. For example, the user can hold the terminal device 2 with one hand and perform a game operation with the thumb of the hand. .
  • the terminal device 2 may display an icon indicating an item on the display unit 24, and may accept a touch input for designating an icon as an operation for causing the object 31 to use the item.
  • FIG. 14 is a diagram illustrating an example of data used for game processing in the information processing system.
  • the data shown in FIG. 14 is stored in the storage device of the terminal device 2 (specifically, the memory of the processing unit 11 and / or the storage unit 12).
  • the terminal device 2 stores input position data, reference position data, input instruction data, object position data, object state data, acceleration flag data, and tap operation flag data.
  • the input position data is data indicating the input position.
  • the input position data includes data indicating the past input position in addition to data indicating the current input position (in other words, the latest input position).
  • the input position data includes data indicating an input position related to a series of touch inputs continuously input from touch-on. Note that the content of the input position data may be reset at the time of touch-off.
  • the reference position data is data indicating the reference position.
  • the input position data and the reference position data are, for example, two-dimensional coordinate value data indicating the position on the input surface of the touch panel 23.
  • the input instruction data indicates the content of the input instruction specified based on the input position. Specifically, the input instruction data indicates the input direction and the input distance. As described above, the input instruction data may be data indicating a numerical value indicating the input direction with a positive or negative sign and the input distance with an absolute value.
  • the object position data indicates the position of the object 31 in the game space.
  • the object position data is data indicating a three-dimensional or two-dimensional coordinate value indicating a position in the game space.
  • the object state data indicates the state of the object 31.
  • the object state data is data indicating a normal state or a drift state.
  • the object 31 is assumed to be in a normal state at the start of the game (that is, at the start of the race game), and object state data indicating the normal state is stored.
  • the acceleration flag data is data indicating an acceleration flag indicating whether or not to perform control to move the object 31 in an accelerated state.
  • the acceleration flag is set to ON when the object 31 is in the above-described acceleration enabled state or acceleration state, and the acceleration flag is set to OFF when the object 31 is neither in the acceleration enabled state nor in the acceleration state.
  • the acceleration flag is set off at the start of the game.
  • the tap operation flag data is data indicating a tap operation flag indicating whether or not the tap operation has just been performed.
  • the tap operation flag is set to ON during a period from the timing when the tap operation is performed (for example, timing t5 shown in FIG. 9) until the above-described time T2 elapses. In the period, the tap operation flag is set to OFF.
  • FIG. 15 and FIG. 16 are flowcharts showing an example of the game process executed by the terminal device. The series of processes shown in FIGS. 15 and 16 are started in response to the start of the race game after the game program stored in the storage unit 22 is started.
  • the CPU in other words, the processor of the processing unit 21 of the terminal device 2 executes a game program (specifically, a game program for a racing game) stored in the storage unit 22.
  • a game program specifically, a game program for a racing game
  • FIGS. 15 and 16 the processing of each step shown in FIGS. 15 and 16 will be described.
  • a part of the processes in the above steps may be executed by a processor (for example, a dedicated circuit) other than the CPU.
  • the processing of each step shown in FIG. 15 and FIG. 16 is merely an example, and if the same result is obtained, the processing order of each step may be changed.
  • Another process may be performed (or alternatively).
  • each step shown in FIGS. 15 and 16 may be executed by cooperation between the terminal device 2 and the server 1. That is, part of the processing in each step shown in FIGS. 15 and 16 may be executed by the server 1.
  • the server 1 receives data used for processing from the terminal device 2 via the network 3.
  • the server 1 transmits the data obtained as a result of the processing to the terminal device 2 via the network 3.
  • the processing unit 21 of the terminal device executes the processing of each step shown in FIGS. 15 and 16 using a memory. That is, the CPU of the processing unit 21 stores information (in other words, data) obtained in each processing step in a memory, and when using the information in subsequent processing steps, reads the information from the memory. Use.
  • the processing unit 21 acquires an input position from the touch panel 23. That is, the touch panel 23 detects an input position on the input surface and outputs detection result data indicating the detected input position.
  • the processing unit 21 acquires detection result data from the touch panel 23 and stores input position data including the acquired detection result data in a memory.
  • the touch panel 23 outputs detection result data indicating that there is no touch input when the touch input to the touch panel 23 is not performed. In this case, the processing unit 21 acquires detection result data indicating that there is no touch input.
  • step S1 the process of step S2 is executed.
  • step S2 the processing unit 21 determines whether touch input has been performed.
  • the processing unit 21 performs the determination in step S2 based on the input position data stored in the memory (in other words, the data acquired from the touch panel 23 in the processing of step S1). If the determination result of step S2 is affirmative, the process of step S3 is executed. On the other hand, when the determination result of step S2 is negative, a process of step S21 described later is executed.
  • step S3 the processing unit 21 determines whether or not the touch input is an input at the time of touch-on.
  • the processing unit 21 performs the determination in step S3 based on the input position data stored in the memory. That is, when the detection result data acquired in step S1 in the previous processing loop (specifically, the processing loop of steps S1 to S37) is a value indicating that there is no touch input, the touch input is a value at the time of touch-on. When it is determined as an input and the detection result data is a value indicating that there is a touch input, it is determined that the touch input is not an input at the time of touch-on. If the determination result of step S3 is affirmative, the process of step S4 is executed. On the other hand, if the determination result of step S3 is negative, the processes of steps S4 to S7 are skipped, and the process of step S8 described later is executed.
  • step S4 the processing unit 21 determines whether or not the second movement operation has been performed (that is, whether the operation by the touch input started in the current processing loop is the second movement operation). .
  • the processing unit 21 performs the determination in step S4 based on the tap operation flag data stored in the memory.
  • the tap operation flag is set to ON in a period from when it is determined that the tap operation has been performed until a predetermined time T2 elapses (steps S21 to S26 and S29 described later). , S30).
  • the processing unit 21 determines that the second movement operation has been performed when the value indicated by the tap operation flag data is on, and when the value indicated by the tap operation flag data is off, It is determined that the moving operation has not been performed (that is, the tap operation or the first moving operation has been performed). If the determination result of step S4 is affirmative, the process of step S5 is executed. On the other hand, if the determination result of step S4 is negative, the processes of steps S5 to S7 are skipped, and the process of step S8 described later is executed.
  • step S5 the processing unit 21 changes the state of the object 31 to the drift state. That is, the processing unit 21 stores object state data indicating the drift state in the memory. Following step S5, the process of step S6 is executed.
  • step S6 the processing unit 21 sets a reference position. That is, the processing unit 21 sets the input position acquired in step S1 in the current processing loop as the reference position.
  • the processing unit 21 stores reference position data indicating the set reference position in the memory.
  • step S7 the process of step S7 is executed.
  • step S7 the processing unit 21 sets the tap operation flag to OFF. That is, the processing unit 21 stores tap operation flag data indicating that the tap operation flag is off in the memory. Following step S7, the process of step S8 is executed.
  • step S ⁇ b> 8 the processing unit 21 determines whether or not the time T ⁇ b> 1 has elapsed since the touch-on in the currently performed continuous touch input.
  • step S8 the determination result is affirmative when the elapsed time from touch-on is equal to time T1, and the determination result is negative when the elapsed time from touch-on is different from time T1. If the determination result of step S8 is affirmative, the process of step S9 is executed. On the other hand, when the determination result of step S8 is negative, the processes of steps S9 and S10 are skipped, and the process of step S11 described later is executed.
  • step S9 the processing unit 21 determines whether or not the first movement operation is performed. For example, the processing unit 21 can make the determination in step S9 based on the object state data stored in the memory. That is, when the object state data indicates the normal state, it is determined that the first movement operation is performed, and when the object state data indicates the drift state, the first movement operation is not performed (that is, the first movement operation is performed). 2 is being performed). If the determination result of step S9 is affirmative, the process of step S10 is executed. On the other hand, when the determination result of step S9 is negative, the process of step S10 is skipped and the process of step S11 described later is executed.
  • step S10 the processing unit 21 sets a reference position.
  • the process of step S10 is the same as the process of step S6.
  • step S11 is executed.
  • step S ⁇ b> 11 the processing unit 21 determines whether or not the time T ⁇ b> 3 has elapsed since the touch-on in the currently performed continuous touch input.
  • step S11 the determination result is affirmative when the elapsed time from touch-on is equal to time T3, and the determination result is negative when the elapsed time from touch-on is different from time T3. If the determination result of step S11 is affirmative, the process of step S12 is executed. On the other hand, if the determination result of step S11 is negative, the processes of steps S12 and S13 are skipped, and the process of step S16 (see FIG. 16) described later is executed.
  • step S12 the processing unit 21 determines whether or not the second movement operation is performed. For example, the processing unit 21 can make the determination in step S12 based on the object state data stored in the memory. That is, when the object state data indicates the drift state, it is determined that the second movement operation is performed, and when the object state data indicates the normal state, the second movement operation is not performed (that is, the first movement operation is performed). 1 movement operation is performed). If the determination result of step S12 is affirmative, the process of step S13 is executed. On the other hand, when the determination result of step S12 is negative, the process of step S13 is skipped and the process of step S16 described later is executed.
  • step S13 the processing unit 21 sets the acceleration flag to ON. That is, the processing unit 21 stores acceleration flag data indicating that the acceleration flag is on in the memory. As a result, the object 31 is set in a state where it can be accelerated (in a drift state). Following step S13, a process of step S14 described later is executed.
  • step S14 the processing unit 21 determines whether or not to change the reference position. That is, the processing unit 21 performs the above determination based on the input position data and the reference position data stored in the memory by the method described in the above “(reference position changing process)”. If the determination result of step S14 is affirmative, the process of step S15 is executed. On the other hand, when the determination result of step S14 is negative, the process of step S15 is skipped and the process of step S16 described later is executed.
  • step S15 the processing unit 21 changes the reference position. That is, the processing unit 21 calculates the changed reference position based on the input position data and the reference position data stored in the memory by the method described above in “(Reference position changing process)”. Further, the processing unit 21 updates the reference position data stored in the memory to the content indicating the calculated changed reference position. Following step S15, the process of step S16 is executed.
  • step S16 the processing unit 21 determines whether or not to specify an input instruction. Specifically, the processing unit 21 performs the determination in step S16 depending on whether or not the reference position data is stored in the memory. If the determination result of step S16 is affirmative, the process of step S17 is executed. On the other hand, when the determination result of step S16 is negative, a process of step S31 described later is executed.
  • step S17 the processing unit 21 specifies the content of the input instruction. That is, the processing unit 21 calculates the input direction and the input distance with reference to the input position data and the reference position data stored in the memory.
  • the specific calculation method of the input direction and the input distance is the method described in the above “[2-2-1. First moving operation]”.
  • the processing unit 21 stores input instruction data indicating the calculated input direction and input distance in the memory.
  • step S18 the processing unit 21 determines whether or not the object 31 is in the drift state based on the object state data stored in the memory.
  • the determination result of step S18 is negative (that is, when the object 31 is in a normal state)
  • the process of step S19 is executed.
  • the determination result of step S18 is affirmative (that is, when the object 31 is in the drift state)
  • the process of step S20 is executed.
  • step S19 the processing unit 21 performs movement control of the object 31 in the normal state based on the input instruction data stored in the memory. Specifically, the processing unit 21 calculates the movement direction and movement distance of the object 31 in one frame time, and the position after movement based on the calculated movement direction and movement distance and the current position of the object 31. Is calculated. Note that the movement control in step S12 is performed by the method described above in “[2-2-1. First movement operation]”. The processing unit 21 stores object position data indicating the calculated position after movement in the memory. Following step S19, the process of step S36 described later is executed.
  • step S20 the processing unit 21 performs movement control of the object 31 in the drift state. Also in step S20, as in step S19, the processing unit 21 calculates the position after the movement of the object 31 based on the input instruction data stored in the memory. However, unlike the movement control in step S19, the movement control in step S13 is performed by the method described above in “[2-2-2. Second movement operation]”. The processing unit 21 stores object position data indicating the calculated position after movement in the memory. Following step S20, a process of step S36 described later is executed.
  • step S21 the processing unit 21 determines whether or not the touch input has been completed (that is, touch-off has been performed).
  • the processing unit 21 performs the determination in step S18 based on the input position data stored in the memory. That is, when the detection result data acquired in step S1 in the previous processing loop is a value indicating that there is a touch input, it is determined that the touch input has ended, and the detection result data does not include the touch input. If it is a value indicating, it is determined that it is not the timing when the touch input ends. If the determination result of step S21 is affirmative, the process of step S22 is executed. On the other hand, if the determination result of step S21 is negative, the processes of steps S22 to S28 are skipped and the process of step S29 described later is executed.
  • step S22 the processing unit 21 deletes the set reference position. That is, the reference position data stored in the memory is deleted. Following step S22, the process of step S23 is executed.
  • step S23 the processing unit 21 is before the timing at which the time T1 has elapsed from the touch-on of the last continuous touch input (in other words, the continuous touch input determined to be touch-off in step S21). Determine whether or not. If the determination result of step S23 is affirmative, the process of step S24 is executed. On the other hand, if the determination result of step S23 is negative, the processes of steps S24 to S23 are skipped and the process of step S27 described later is executed.
  • step S24 the processing unit 21 determines whether or not the touch input determined to have been touched off in step S21 is the first input (in other words, is not the input of the second movement operation). .
  • the processing unit 21 can perform the determination in step S24 by determining whether or not the object 31 is in the normal state based on the object state data stored in the memory. If the determination result of step S24 is affirmative, the process of step S25 is executed. On the other hand, if the determination result of step S24 is negative, the processes of steps S25 and S26 are skipped, and the process of step S27 described later is executed.
  • step S25 the processing unit 21 causes the object 31 to perform a jump operation.
  • the jump operation of the object 31 is performed over a predetermined number of frames. Therefore, the processing unit 21 does not need to control the object 31 according to the touch input while the object 31 is performing the jump operation.
  • step S26 the process of step S26 is executed.
  • step S26 the processing unit 21 sets the tap operation flag to ON. That is, the processing unit 21 stores tap operation flag data indicating that the tap operation flag is on in the memory. Following step S26, the process of step S27 is executed.
  • step S27 the processing unit 21 determines whether the object state data stored in the memory indicates a drift state. If the determination result of step S27 is affirmative, the process of step S28 is executed. On the other hand, when the determination result of step S27 is negative, the process of step S28 is skipped and the process of step S29 is executed.
  • step S28 the processing unit 21 changes the state of the object 31 to the normal state. That is, the processing unit 21 stores object state data indicating the normal state in the memory.
  • step S29 the process of step S29 is executed.
  • step S29 the processing unit 21 determines whether or not the time T2 has elapsed since the last touch-on of the continuous touch input.
  • the determination result is affirmative when the elapsed time from touch-on is equal to time T2, and the determination result is negative when the elapsed time from touch-on is different from time T2. If the determination result of step S29 is affirmative, the process of step S30 is executed. On the other hand, if the determination result of step S29 is negative, the process of step S30 is skipped and the process of step S31 (see FIG. 16) is executed.
  • step S30 the processing unit 21 sets the tap operation flag to OFF. That is, the processing unit 21 stores tap operation flag data indicating that the tap operation flag is off in the memory. Following step S30, the process of step S31 is executed.
  • step S31 the processing unit 21 determines whether or not the acceleration flag is set on based on the acceleration flag data stored in the memory.
  • the determination result of step S31 is negative (that is, when the acceleration flag is set to off)
  • the process of step S32 is executed.
  • the determination result of step S31 is affirmative (that is, when the acceleration flag is set to ON)
  • a process of step S33 described later is executed.
  • step S32 the processing unit 21 performs automatic control of the object 31. That is, the processing unit 21 calculates the position after the movement of the object 31 by controlling the movement of the object 31 in accordance with a predetermined algorithm in the game application program stored in the storage unit 12. The processing unit 21 stores object position data indicating the calculated position after movement in the memory. Following step S32, the process of step S36 described later is executed.
  • step S33 the processing unit 21 performs automatic control of the object 31 in the accelerated state. Also in step S33, as in step S32, the processing unit 21 calculates the position after the movement of the object 31 by controlling the movement of the object 31 according to a predetermined algorithm in the game application program. However, in step S33, the post-movement position of the object 31 is calculated so as to move faster than the movement speed set in step S32. The processing unit 21 stores object position data indicating the calculated position after movement in the memory. Following step S33, the process of step S34 is executed.
  • step S34 the processing unit 21 determines whether or not the above-described time T4 has elapsed after starting the movement control in the acceleration state with respect to the object 31 (in other words, after touch-off). If the determination result of step S34 is affirmative, the process of step S35 is executed. On the other hand, if the determination result of step S34 is negative, the process of step S35 is skipped and the process of step S36 described later is executed.
  • step S35 the processing unit 21 sets the acceleration flag to OFF. That is, the processing unit 21 stores acceleration flag data indicating that the acceleration flag is off in the memory. As a result, the object 31 is set to the acceleration state (in a normal state). Following step S35, the process of step S36 is executed.
  • step S36 the processing unit 21 generates a game image and causes the display unit 24 to display the game image. That is, the processing unit 21 generates a game image based on the object position data stored in the memory, and displays the generated game image on the display unit 24.
  • the game image generated in step S36 represents a game space in which the object 31 is placed at the position indicated by the object position data.
  • the processing unit 21 controls the movement of other objects (for example, other characters and items) as necessary, and generates a game image representing a game space including these objects.
  • step S37 the process of step S37 is executed.
  • step S37 the processing unit 21 determines whether or not to end the game. That is, the processing unit 21 ends the game when a predetermined game end condition (for example, that the object operated by the user has reached a goal) is satisfied or a predetermined end instruction is given by the user. . Moreover, the process part 21 determines with not complete
  • a predetermined game end condition for example, that the object operated by the user has reached a goal
  • a predetermined end instruction is given by the user. .
  • the process part 21 determines with
  • the game program causes the computer of the information processing apparatus (for example, the terminal device 2) including the pointing device (for example, the touch panel 23) to execute the following processing steps.
  • the second input that is, time T2
  • a predetermined first time that is, time T2
  • a first process execution step for executing a first process (that is, a process of transitioning to a drift state) for an object in the virtual game space in response to a touch input of the second movement operation.
  • a reference position setting step for setting a reference position based on the input position when the second input to the pointing device is started (step S6)
  • a first movement process for executing a first movement process for moving an object in the virtual game space based on the reference position and the input position of the input continuously performed after the second input to the pointing device is started.
  • the user can perform a group of input operations of a first input and a second input (strictly speaking, the input is not continuous, but can also be referred to as “a series of input operations”).
  • the information processing apparatus can cause the user to perform various operations by a simple input method.
  • the user can perform a plurality of types of operations on the object with a single touch input that can be performed with one finger.
  • “input continuously performed after input to the pointing device is started” does not require that the input is continuous in a strict sense.
  • the terminal device 2 may collectively handle the touch input detected before the predetermined period and the touch input detected after the predetermined period as one continuous touch input. Specifically, when the period from when a certain touch input is no longer detected until the next touch input is detected is shorter than a predetermined length, the terminal device 2 performs the certain touch input and the next touch input. May be treated as a single continuous touch input.
  • the game program causes the computer of the information processing apparatus to execute the following processing steps.
  • a second reference position setting step that is different from the second input and sets a reference position based on an input position related to a third input to the pointing device (that is, a touch input of the first movement operation)
  • Step S10 A process different from the first movement process based on the reference position and the input position of the input continuously performed after the third input is started, and executes the third process for the first object.
  • Third process execution step step S19
  • the user can perform an operation on the object by the third input different from the second input.
  • the information processing apparatus can cause the user to perform more various operations.
  • the third input may be the same input as the first input.
  • the terminal device 2 may treat the third input as the touch input of the first movement operation and may treat the third input as the first input that is a condition for the second input (described later, “( (Modification example regarding first input) ”).
  • the third input may be an input different from the first input. In other words, the terminal device 2 may not treat the third input as the first input that is a condition for the second input.
  • the object that is the target of the first movement process and the object that is the target of the third process may be different objects.
  • the third process is not limited to the process of moving the object, and may be a process of causing the object to perform a predetermined action.
  • the object to be subjected to the first movement process is a character object having a bow
  • the object to be subjected to the third process is an arrow object fired from the bow. May be.
  • the information processing apparatus performs the process of moving the character by the first movement process and firing the arrow after pulling down the bow by the third process (in other words, the process of moving the arrow). Good.
  • the user performs an operation of drawing and narrowing the bow by moving the input position from the reference position, and performs an operation of firing an arrow by ending the touch input.
  • a process of moving an object is executed by a control method different from the first movement process (same as the first movement process). Therefore, according to the above-described embodiment, the user can perform an object movement operation by the second input after the first input, and differs from the movement operation by the second input by the third input.
  • the object can be moved by the control method. According to this, since the user can use the two types of moving operations properly by a simple method of whether or not to perform the first input, the operability of the moving operation can be improved.
  • two types of movement operation is distinguished by simple operation called 1st input (more specifically, tap operation). Therefore, the information processing apparatus can reduce the possibility that the user mistakenly performs an unintended movement operation out of the two types of movement operations, and the user can perform the movement operation by the second input. Can be done quickly.
  • the first input that is the condition for the second input is a touch input for a tap operation.
  • the first input may be a touch input for the first movement operation.
  • FIG. 17 is a diagram illustrating an example of an operation for performing the second movement operation subsequent to the first movement operation.
  • the touch input for the first movement operation ends at the timing t11, and the next touch input is started at the timing t12 within the time T2 from the timing t11.
  • the terminal device 2 may determine that the operation by the touch input is the second movement operation in response to the start of the next touch input. That is, the terminal device 2 may execute the reference position setting process and the transition process to the drift state in response to the start of the next touch input, and may start the movement control of the object in the drift state.
  • the first input as the second input condition may be a touch input of the first movement operation. That is, the terminal device 2 may treat the above-described third input (that is, the input for the first movement operation) as the first input (that is, the input that is the condition for the second input). In other embodiments, both the touch input of the tap operation and the touch input of the first movement operation may be the first input, or only the touch input of the first movement operation may be the first. May be used as input. In other embodiments, the terminal device 2 may not distinguish between the tap operation and the first movement operation.
  • the terminal device 2 receives an input started after the time T2 from the touch-off timing of the input previously performed (in other words, an input that is not the second input) from touch-on to touch-off.
  • the input for the first movement operation may be determined regardless of the length of the input time.
  • the content of the game executed on the terminal device 2 is not limited to a race game, and may be a game with an arbitrary content.
  • the game executed on the terminal device 2 may be a game in which an object (that is, a player character) in a shooting game is operated by an input to a pointing device.
  • the terminal device 2 can apply each movement operation and tap operation to a process for causing the object to perform an action related to shooting. Specifically, the terminal device 2 moves the aim according to the first movement operation and fires a bullet according to the touch-off of the first movement operation.
  • the terminal device 2 causes the object to start an action of accumulating power according to the tap operation, moves the aim according to the second movement operation following the tap operation, and allows the touch-off of the second movement operation. Fire bullets accordingly.
  • the user in the operation for causing the object to perform a shooting operation, the user can selectively use whether or not to fire a bullet after accumulating power depending on the presence or absence of a tap operation.
  • the above embodiment can be used as, for example, a game program or a game apparatus for the purpose of enabling various game operations using a pointing device.

Abstract

情報処理装置は、ポインティングデバイスによって検出された入力位置を繰り返し取得する。情報処理装置は、ポインティングデバイスに対する第1の入力の終了後において、当該第1の入力から第1時間内に行われる第2の入力に応じて、仮想ゲーム空間における第1オブジェクトに対する第1処理を実行する。情報処理装置は、ポインティングデバイスに対する第2の入力が開始されたときの入力位置に基づいて基準位置を設定する。情報処理装置は、基準位置と、ポインティングデバイスに対する第2の入力が開始されてから継続して行われる入力の入力位置とに基づいて、仮想ゲーム空間において第1オブジェクトを移動させる第1移動処理を実行する。

Description

ゲームプログラム、情報処理装置、情報処理システム、および、ゲーム処理方法
 本発明は、ポインティングデバイスを用いて入力を行うゲームプログラム、ゲーム装置、ゲームシステム、および、ゲーム処理方法に関する。
 従来、タッチパネル等のポインティングデバイスを用いてゲーム操作を行う技術がある。例えば、ゲーム空間のオブジェクトを移動させるゲーム操作が、ポインティングデバイスを用いて行われる(例えば、特許文献1参照)。
特開2013-127683号公報
 ポインティングデバイスを用いて、より多様なゲーム操作を可能とするユーザインターフェースが望まれている。
 それ故、本発明の目的は、ポインティングデバイスを用いて多様なゲーム操作を可能とするゲームプログラム、ゲーム装置、ゲームシステム、および、ゲーム処理方法を提供することである。
 上記の課題を解決すべく、本発明は、以下の(1)~(8)の構成を採用した。
 (1)
 本発明の一例は、情報処理装置のコンピュータに、取得ステップと、第1処理実行ステップと、第1基準位置設定ステップと、第1移動処理ステップとを実行させる、ゲームプログラムである。取得ステップにおいて、コンピュータは、ポインティングデバイスによって検出された入力位置を繰り返し取得する。第1処理実行ステップにおいて、コンピュータは、ポインティングデバイスに対する第1の入力の終了後において、当該第1の入力から第1時間内に行われる第2の入力に応じて、仮想ゲーム空間における第1オブジェクトに対する第1処理を実行する。第1基準位置設定ステップにおいて、コンピュータは、ポインティングデバイスに対する第2の入力が開始されたときの入力位置に基づいて基準位置を設定する。第1移動処理ステップにおいて、コンピュータは、基準位置と、ポインティングデバイスに対する第2の入力が開始されてから継続して行われる入力の入力位置とに基づいて、仮想ゲーム空間において第1オブジェクトを移動させる第1移動処理を実行する。
 上記(1)の構成によれば、ユーザは、第1の入力と、第2の入力という1まとまりの入力操作によって、オブジェクトに対して2種類の処理を実行することができる。したがって、情報処理装置は、ポインティングデバイスに対する入力によって多様なゲーム操作をユーザに行わせることができる。
 (2)
 第1処理実行ステップにおいては、第1の入力の開始または終了に基づくタイミングから、第2の入力が開始されたタイミングまでの時間が第1時間内であることを少なくとも条件として第1処理が実行されてもよい。
 上記(2)の構成によれば、情報処理装置は、第1の入力から第2の入力までの時間を適切に算出することができるので、上記第1処理を実行するか否かを正確に判定することができる。
 (3)
 第1処理実行ステップにおいては、第1の入力が行われた位置と、第2の入力が行われた位置との距離が所定値以下であることを少なくとも条件として第1処理が実行されてもよい。
 上記(3)の構成によれば、情報処理装置は、第1の入力が行われた位置と、第2の入力が行われた位置とが離れている場合には、第1処理を実行しないようにすることができる。これによって、ユーザの誤入力に応じて第1処理が実行されてしまう可能性を低減することができる。
 (4)
 ゲームプログラムは、第2処理実行ステップを、コンピュータにさらに実行させてもよい。第2処理実行ステップにおいて、コンピュータは、第2の入力が開始されてから継続して行われる入力が所定の条件を満たす場合、第1処理とは異なる処理であって、第1オブジェクトに対する第2処理を実行する。
 上記(4)の構成によれば、ユーザは、第2の入力によって、上述の第1処理および第1移動処理に加えて、第2処理を情報処理装置に実行させることができる。すなわち、端末装置2は、一連の第2の入力によって、より多様なゲーム操作をユーザに行わせることができる。
 (5)
 ゲームプログラムは、第2基準位置設定ステップと、第3処理実行ステップとを、コンピュータにさらに実行させてもよい。第2基準位置設定ステップにおいて、コンピュータは、第2の入力とは異なる入力であって、ポインティングデバイスに対する第3の入力に関する入力位置に基づいて基準位置を設定する。第3処理実行ステップにおいて、コンピュータは、基準位置と、第3の入力が開始されてから継続して行われる入力の入力位置とに基づいて、第1移動処理とは異なる処理であって、第1オブジェクトと同じまたは異なる第2オブジェクトに対する第3処理を実行する。
 上記(5)の構成によれば、情報処理装置は、第2の入力とは異なる第3の入力によってもオブジェクトに対する操作をユーザに行わせることができるので、より多様なゲーム操作をユーザに行わせることができる。
 (6)
 第2オブジェクトは、第1オブジェクトと同じであってもよい。第3処理実行ステップにおいては、第3処理として、第1移動処理とは異なる制御方法で第2オブジェクトを移動させる処理が実行されてもよい。
 上記(6)の構成によれば、ユーザは、第1の入力後に行う第2の入力と、第2の入力とは異なる第3の入力とによって、オブジェクトに対する移動操作を行うことができる。つまり、ユーザは、第1の入力を行うか否かという簡易な方法で2種類の移動操作を使い分けることができる。すなわち、情報処理装置は、2種類の移動操作を容易に使い分けることができる、操作性の良いユーザインターフェースを提供することができる。
 (7)
 ゲームプログラムは、判定ステップをコンピュータにさらに実行させてもよい。判定ステップにおいて、コンピュータは、ポインティングデバイスに対する入力であって、第2の入力とは異なる入力が開始されてから終了されるまでの入力時間が所定の第2時間内であるか否かを判定する。第1処理実行ステップにおいては、入力時間が第2時間内であると判定される入力を第1の入力として、当該第1の入力後の第2の入力に応じて第1処理が実行されてもよい。第3処理実行ステップにおいては、入力時間が第2時間内でないと判定される入力を第3の入力として第3処理が実行されてもよい。
 上記(7)の構成によれば、情報処理装置は、入力時間が第2時間ないであるか否かを判定することによって、第1の入力と第3の入力とを容易に判別することができる。
 (8)
 ゲームプログラムは、第4処理実行ステップを、コンピュータにさらに実行させてもよい。第4処理実行ステップにおいて、コンピュータは、第1の入力に応じて第1オブジェクトに所定の動作を行わせる第4処理を実行する。
 上記(8)の構成によれば、ユーザは、第1の入力によってもオブジェクトに所定の動作を行わせることができる。すなわち、情報処理装置は、より多様なゲーム操作をユーザに行わせることができる。
 なお、本発明の別の一例は、上記(1)~(8)における各ステップの処理を実行する(プログラムによって各ステップを実行する態様に限らない)情報処理装置または情報処理システムであってもよい。また、本発明の別の一例は、上記(1)~(8)における各ステップの処理をコンピュータが実行するゲーム処理方法であってよい。
 本発明によれば、ポインティングデバイスを用いて多様なゲーム操作を可能とすることができる。
本実施形態における情報処理システムの構成の一例を示すブロック図 サーバの構成の一例を示すブロック図 端末装置の構成の一例を示すブロック図 ゲーム画像の一例を示す図 本実施形態における第1の移動操作の一例を示す図 タッチ入力が開始された後のゲーム画像の一例を示す図 操作画像の一例を示す図 基準位置が変更される様子の一例を示す図 本実施形態におけるタップ操作および第2の移動操作の一例を示す図 オブジェクトがジャンプ動作を行う様子を表すゲーム画像の一例を示す図 ドリフト状態におけるオブジェクトを含むゲーム画像の一例を示す図 加速可能状態におけるオブジェクトを含むゲーム画像の一例を示す図 加速状態におけるオブジェクトを含むゲーム画像の一例を示す図 情報処理システムにおけるゲーム処理に用いられるデータの一例を示す図 端末装置によって実行されるゲーム処理の一例の流れを示すフローチャート 端末装置によって実行されるゲーム処理の一例の流れを示すフローチャート 第1の移動操作に続けて第2の移動操作を行う操作の一例を示す図
[1.システムの全体構成]
 以下、本実施形態に係る情報処理システム、情報処理装置、ゲームプログラム、および、ゲーム処理方法について説明する。まず、本実施形態に係る情報処理システムの全体構成と、情報処理システムに含まれる端末装置およびサーバの構成とについて説明する。図1は、本実施形態における情報処理システムの構成の一例を示すブロック図である。図1に示すように、情報処理システムは、サーバ1と、端末装置2とを含む。これらのサーバ1および端末装置2は、インターネットおよび/またはモバイル通信網等のネットワーク3に接続可能である。サーバ1および端末装置2は、ネットワーク3を介して互いに通信可能である。
 サーバ1は、端末装置2において実行されるアプリケーションに関するサービスを提供するためのサーバである。本実施形態において、サーバ1は、端末装置2においてゲームを実行するためのゲームサーバである。つまり、サーバ1は、端末装置2においてゲーム処理を実行するための環境を提供する。例えば、サーバ1は、ゲーム処理を実行する端末装置2からの要求に応じて、必要に応じてゲーム処理を実行し、要求に応じたゲームデータを当該端末装置2へ送信する。
 端末装置2は、ユーザが有する情報処理装置の一例であり、例えば、スマートフォン、携帯型または据置型のゲーム装置、携帯電話、タブレット端末、あるいは、ウェアラブル端末等である。端末装置2は、サーバ1がサービスを提供するゲームのためのゲームプログラム(換言すれば、ゲームアプリケーション)を実行することが可能である。
(サーバ1の構成の具体例)
 図2は、サーバ1の構成の一例を示すブロック図である。図2に示す、サーバ1が備える各構成は、1以上の情報処理装置によって実現される。なお、本実施形態におけるサーバ1のハードウェア構成は、従来のサーバのためのハードウェア構成と同様であってもよい。
 図2に示すように、サーバ1は、処理部11および記憶部12を備える。処理部11は、サーバ1の各部12~15に電気的に接続される。処理部11は、CPU(Central Processing Unit)およびメモリを有する。サーバ1においては、CPUがメモリを用いて、記憶部12に記憶されたプログラムを実行することによって各種の情報処理が実行される。記憶部12は、処理部11がアクセス可能な任意の記憶装置(記憶媒体とも言う)である。記憶部12は、処理部11において実行されるプログラム、処理部11による情報処理に用いられるデータ、および、当該情報処理によって得られたデータ等を記憶する。本実施形態においては、記憶部12は、端末装置2において実行されるゲーム処理のためにサーバ側で実行されるゲーム処理のためのプログラムを少なくとも記憶する。
 サーバ1は、通信部13を備える。通信部13は、ネットワーク3に接続し、ネットワーク3を介して他の装置(例えば、端末装置2)と通信を行う機能を有する。また、サーバ1は、入出力インターフェースとして、入力部14および表示部15を備える。
(端末装置2の構成の具体例)
 図3は、端末装置2の構成の一例を示すブロック図である。図3に示すように、端末装置2は、処理部21および記憶部22を備える。処理部21は、端末装置2の各部22~25に電気的に接続される。処理部21は、CPUおよびメモリを有する。端末装置2においては、CPUがメモリを用いて、記憶部22に記憶されたプログラム(上述のゲームプログラムを含む)を実行することによって各種の情報処理が実行される。記憶部22は、処理部21において実行されるプログラム、処理部21による情報処理に用いられるデータ、および、当該情報処理によって得られたデータ等を記憶する。なお、記憶部22は、端末装置2に対して着脱可能な記憶媒体(例えば、カード型の記憶媒体)であってもよい。
 端末装置2は、入力部の一例として、ポインティングデバイスを備える。ポインティングデバイスは、入力面上において(例えばユーザによって)指定された位置を検出可能な任意の入力装置である。本実施形態においては、ポインティングデバイスは、表示部24の画面上に設けられるタッチパネル23である。タッチパネル23は、入力面(換言すれば、表示部24の画面上に設定される面)にタッチする入力(「タッチ入力」と呼ぶ)によって指定される位置を検出する。
 ポインティングデバイスは、例えばタッチスクリーン、タッチパネル、または、タッチパッド等、入力面上において(例えばユーザによって)指定された位置を検出することが可能なタッチ入力式の入力装置であってもよい。タッチ入力式の入力装置は、入力面に対する接触または非接触の入力を行うことが可能な入力装置であってもよい。すなわち、タッチ入力式の入力装置は、入力面に対するタッチ入力の位置を検出することが可能な装置に限らず、入力面から少し離れた位置に配置される指等を検知することによって入力位置を検出することが可能な入力装置(例えば、フローティングタッチ機能を有する入力装置)であってもよい。つまり、タッチ入力式の入力装置は、入力面に対するタッチ入力に代えて(またはタッチ入力に加えて)、入力面には接触せずに、入力面から少し離れた位置に指等を配置する入力によって指定される位置を検出してもよい。
 さらに、ポインティングデバイスは、タッチ入力式の入力装置に限らず、マウスであってもよいし、または、ユーザによって動かされる操作装置であって、当該操作装置の位置および/または向きによって入力面上の位置を指定することが可能な操作装置であってもよい。
 なお、例えばタッチパネルのように、ポインティングデバイスの入力面が表示装置24の画面上に設定される場合、ポインティングデバイスによって検出される入力位置は、正確に言えば、表示画面上の位置に対応する位置である。ただし、入力位置は実質的には表示画面上の位置を示す。そのため、本実施形態の説明においては、説明をわかりやすくする目的で、入力位置を表示画面上の位置として説明することがある。なお、「入力位置が表示画面上の特定の位置にある」とは、厳密には、入力位置が、表示画面上における特定の位置に対応する位置であって、入力面上における位置にある、という意味である。
 端末装置2は、表示部24を備える。表示部24は、端末装置2の処理部21において実行される情報処理によって生成された画像(例えば、ゲーム画像等)を表示する。
 端末装置2は、通信部25を備える。本実施形態において、通信部25は、モバイル通信網(換言すれば、携帯電話通信網)に接続して通信を行う機能を有する。すなわち、端末装置2(具体的には、処理部21)は、通信部25を用いて(換言すれば、通信部25を介して)モバイル通信網を介してネットワーク3に接続し、他の装置(例えば、サーバ1等)と通信を行う。なお、端末装置2がネットワーク3を介した通信を行うための通信部の構成は任意である。例えば、通信部25は、Wi-Fiの認証を受けた通信モジュールによって無線LANに接続する機能を有していてもよいし、モバイル通信網に接続する機能と、無線LANに接続する機能との両方を有していてもよい。
[2.情報処理システムにおける処理の概要]
 以下、図4~図13を参照して、情報処理システムにおいて実行されるゲーム処理の概要について説明する。なお、本実施形態においては、情報処理システムにおいて、車を模したオブジェクトをユーザ(換言すれば、プレイヤ)が操作するレースゲーム(図4参照)のためのゲーム処理が実行される場合を例として説明する。
 本実施形態においては、ユーザは、タッチパネル23に対するタッチ入力によってオブジェクトに対する操作を行う。すなわち、端末装置2は、タッチパネル23に対するタッチ入力に基づいてオブジェクトの動作(より具体的には、移動)を制御する。
[2-1.タッチ入力が行われていない場合における動作]
 まず、タッチ入力が行われていない場合における動作について説明する。図4は、ゲーム画像の一例を示す図である。なお、図4は、タッチ入力が行われていない場合におけるゲーム画像である。図4に示されるように、端末装置2は、仮想のゲーム空間(本実施形態においては、レースコース)と、当該ゲーム空間に登場するオブジェクト31とを含むゲーム画像を表示部24に表示する。オブジェクト31は、車(および、車を運転するキャラクタ)を模したオブジェクトであり、ユーザによって操作される。
 本実施形態では、タッチ入力が行われていない場合、端末装置2は、オブジェクト31の移動を自動的に(すなわち、予め定められたアルゴリズムに従って)制御する。この場合、オブジェクト31は、レースコースに沿って進むように自動的に制御される。なお、他の実施形態においては、端末装置2は、タッチ入力が行われていない場合、直進するようにオブジェクト31の移動を制御してもよい。
 また、本実施形態においては、オブジェクト31のスピードは、後述する加速動作が行われる場合を除いて、自動的に(例えば、一定速度で)制御される。なお、他の実施形態においては、オブジェクト31のスピードは、ユーザの入力に基づいて制御されてもよい。例えば、端末装置2は、ユーザによる指示(例えば、画面上に表示されるアクセルボタンに対するタッチ入力による指示)に基づいてオブジェクト31のスピードを制御してもよい。
 ここで、本実施形態においては、オブジェクト31は、通常状態とドリフト状態という、2種類の状態をとることが可能である。詳細は後述するが、通常状態とドリフト状態とでは、ユーザによるタッチ入力に基づいてオブジェクト31の移動を制御する処理の内容が異なっている。本実施形態においては、タッチ入力が行われていない場合には少なくとも、オブジェクト31は通常状態となる。
[2-2.タッチ入力が行われている場合における動作]
 本実施形態では、ユーザは、タッチ入力によってオブジェクト31に対する移動操作を行う。ここで、本実施形態においては、ユーザは、単に(つまり、後述するタップ操作を行わずに)移動操作を行う操作方法(図5)と、タップ操作に続けて移動操作を行う操作方法(図9)とがある。以下では、タップ操作を行わずに移動操作を行う場合の移動操作を「第1の移動操作」と呼び、タップ操作に続けて行われる移動操作を「第2の移動操作」と呼ぶ。第1の移動操作が行われる場合、端末装置2は、上記の通常状態でオブジェクト31の移動制御を行う。一方、第2の移動操作が行われる場合、端末装置2は、上記のドリフト状態でオブジェクト31の移動制御を行う。このように、本実施形態においては、ユーザは、移動操作の前にタップ操作を行うか否かによって、2種類の移動操作を使い分けることができる。以下、移動操作の詳細について説明する。
[2-2-1.第1の移動操作]
 図5は、本実施形態における第1の移動操作の一例を示す図である。図5(図9および図17についても同様)においては、時間軸の上側に、行われるタッチ入力を示し、時間軸の下側に、端末装置2において実行される処理を示している。
 図5に示すように、第1の移動操作は、タッチ入力を開始してから、継続してタッチ入力を行う操作(具体的には、スライド操作)である。以下では、タッチオンから継続して行われる(すなわち、タッチオンから途切れずに入力される)タッチ入力を、「継続タッチ入力」と呼ぶ。また、本明細書においては、「タッチオン」とは、タッチ入力が開始されたこと、換言すれば、タッチ入力が行われていない状態からタッチ入力が行われている状態へと変化したことを意味する。また、本明細書においては、タッチ入力が終了したこと、換言すれば、タッチ入力が行われている状態からタッチ入力が行われていない状態へと変化したことを、「タッチオフ」と呼ぶ。詳細は後述するが、ユーザは、移動操作における継続タッチ入力中に入力位置を適宜移動させることによって、入力指示の内容(後述する入力方向および入力距離)を指定する。
 図5に示す例においては、ユーザは、タイミングt1の時点でタッチ入力を開始する。その後、端末装置2は、タッチ入力の開始から所定の時間T1が経過しても継続タッチ入力が行われている場合、第1の移動操作が行われた(換言すれば、当該タッチ入力による操作が第1の移動操作である)と判定する。なお、タッチ入力の開始から所定の時間T1が経過する前に継続タッチ入力が終了した場合、端末装置2は、タップ操作が行われた(換言すれば、当該タッチ入力による操作がタップ操作である)と判定する。このように、本実施形態においては、端末装置2は、開始されたタッチ入力による操作が、第1の移動操作であるのか、それとも、タップ操作であるのかを判別する目的で、継続タッチ入力に関してタッチオンからの時間が時間T1を経過したか否かを判定する。
 また、第1の移動操作が行われたと判定された場合、端末装置2は、基準位置を設定する(図5参照)。詳細は後述するが、基準位置は、タッチ入力による入力指示の内容を特定するために用いられる位置である。本実施形態においては、端末装置2は、第1の移動操作が行われたと判定された時点(図5に示す例においては、タイミングt2)の入力位置に基づいて基準位置を設定する。より具体的には、第1の移動操作が行われたと判定された時点の入力位置が基準位置として設定される。
 なお、他の実施形態においては、基準位置は、当該基準位置が設定されるときの入力位置に基づいて設定される任意の位置であってもよい。例えば、基準位置の設定時の入力位置が表示部24の画面の端部付近に位置する場合、端末装置2は、当該入力位置に基づいて、画面の端部から所定距離となる位置を基準位置として設定してもよい。これは、上記の場合において、基準位置から任意の方向へ所定距離だけ離れた入力位置をユーザが指定することができるようにするためである。また、上記の場合、基準位置は、画面の端部から、後述する基準位置画像の半径r2の距離となる位置に設定されてもよい。
 また、他の実施形態においては、基準位置は、当該基準位置が設定されるときの入力位置に依存しない位置に設定されてもよい。例えば、端末装置2は、第1の移動操作におけるタッチオン時の入力位置を基準位置として設定してもよい。また例えば、端末装置2は、予め定められた位置(例えば、表示部24の画面の中心位置)を基準位置として設定してもよい。
 なお、本実施形態においては、ユーザは、タッチパネル23の入力面上における任意の位置を入力開始位置として、移動操作のためのタッチ入力を開始することができる。すなわち、端末装置2は、入力面のうちの任意の位置でタッチ入力が開始されたことに応じて、移動操作に関する処理(図15および図16)を実行する。ただし、他の実施形態においては、端末装置2は、入力面のうちの所定の入力受付領域内においてタッチ入力が開始されたことを条件として、上記の処理を実行するようにしてもよい。上記入力受付領域は、例えば、オブジェクト31の位置を基準として設定される領域であってもよいし、予め定められた領域であってもよい。
 図6は、タッチ入力が開始された後のゲーム画像の一例を示す図である。図6に示すように、ユーザによる移動操作中において、端末装置2は、ゲーム画像に加えて操作画像32を表示部24に表示する。なお、図6では、タッチ入力を行っているユーザの指を点線で示している。本実施形態においては、操作画像32は、入力位置画像33と、基準位置画像34とを含む。
 入力位置画像33は、タッチパネル23の入力面上の位置であって、現在の入力位置を示す画像である。具体的には、入力位置画像33は、入力位置を中心とする半径r1の円形領域を表す(図7参照)。基準位置画像34は、タッチパネル23の入力面上の位置であって、基準位置を示す画像である。具体的には、基準位置画像34は、基準位置を中心とする半径r2(>r1)の円形領域を表す(図7参照)。
 以上のように、本実施形態においては、操作画像32が表示されることによって、ユーザは入力位置および基準位置を視認することができる。これによって、ユーザは、意図に沿った入力を行いやすくなり、端末装置2は、タッチ入力の操作性を向上することができる。なお、図6に示すように、本実施形態における操作画像32は、方向入力装置の一例であるスライドパッドを模した画像である。ただし、他の実施形態においては、操作画像32は、基準位置と入力位置とを表す任意の画像であってよい。また、他の実施形態においては、操作画像32は表示部24に表示されなくてもよい。
 本実施形態において、ユーザは、第1の移動操作によって、オブジェクト31の移動方向を指示するための入力指示を行う。以下、図7を参照して、入力指示を行う方法について説明する。
 図7は、操作画像の一例を示す図である。なお、図7では、表示部24に表示される操作画像32に加えて、基準位置と入力位置とを示している。なお、本実施形態において、入力位置は、入力面上の位置を示す2次元座標としてタッチパネル23から取得される。また、入力位置および基準位置は、2次元座標として端末装置2に記憶される。
 図7は、基準位置Prが設定された後において、入力位置Ptが基準位置設定時の位置(すなわち、基準位置Pr)から移動した状態を示している。タッチ入力による入力指示は、基準位置が設定されてから、タッチオンからタッチ入力が継続する期間(図5に示す例では、タイミングt2からタッチオフのタイミングt3までの期間)、行われる。端末装置2は、上記の期間において、基準位置と入力位置とに基づいて入力指示の内容を特定する。本実施形態においては、入力指示の内容を表す値として、入力方向と、入力距離とが算出される。
 入力方向は、基準位置Prから入力位置PtへのベクトルVに基づいて算出される。ベクトルVは、基準位置Prを始点とし、入力位置Ptを終点とするベクトルである。本実施形態においては、入力方向は、上記ベクトルVのx軸成分(換言すれば、入力面における横方向の成分)の向きとして算出される。すなわち、本実施形態においては、入力方向は、右方向(すなわち、x軸正方向)または左方向(すなわち、x軸負方向)として算出される。
 入力距離は、上記ベクトルVの大きさに基づいて算出される。本実施形態においては、入力距離は、上記ベクトルVのx軸成分の大きさVxとして算出される。
 上記のように、本実施形態においては、入力指示は、1次元の方向(具体的には、x軸方向)に関する方向および大きさである。したがって、入力指示は、例えば、「-2」や「1」のように、入力方向を正負の符号で表し、入力距離を絶対値で表す数値として表現されてもよい。
 なお、他の実施形態においては、入力指示は、2次元に関する方向および大きさであってもよい。すなわち、入力指示は、上記ベクトルVの向きを入力方向とし、上記ベクトルVの大きさを入力距離とするものであってもよい。また、他の実施形態においては、入力指示は、入力方向および入力距離のいずれか一方のみを含むものであってもよい。
 端末装置2は、上記の入力指示に基づいてオブジェクト31の動作(具体的には、移動)を制御する。換言すれば、オブジェクト31は、入力位置と基準位置とに基づいて制御される。オブジェクト31の具体的な制御方法は任意であるが、本実施形態においては、端末装置2は、入力方向に応じた方向に、入力距離に応じた曲がり量で曲がるように、オブジェクト31を制御する。つまり、オブジェクト31は、基準位置Prに対して入力位置Ptが右側に位置するほど、右に大きく曲がるように動作し、基準位置Prに対して入力位置Ptが左側に位置するほど、左に大きく曲がるように動作する。なお、オブジェクト31が曲がる方向および曲がる量は、直進方向を基準に算出されてもよいし、オブジェクト31が自動走行を行う場合(つまり、タッチ入力が行われていない場合)におけるオブジェクト31の進行方向を基準に算出されてもよい。また、本実施形態においては、移動操作中におけるオブジェクト31のスピードは、上述のように自動的に制御される。
 上記のように、本実施形態においては、端末装置2は、基準位置と基準位置の設定後に継続して取得される入力位置との間の距離である入力距離と、当該基準位置から当該入力位置への方向である入力方向とに基づいてオブジェクト31の移動を制御する。これによれば、ユーザは、タッチオンから継続する一連のタッチ入力(すなわち、継続タッチ入力)という簡単な操作方法によって、オブジェクトに対する操作を行うことができる。なお、他の実施形態においては、上記入力距離と入力方向との少なくとも一方に基づいてオブジェクト31の移動が制御されてもよい。
 また、端末装置2は、入力距離が所定の制御開始距離を超えたことを条件として、オブジェクト31の制御を開始するようにしてもよい。このとき、入力が開始されてから、入力位置が基準位置からある程度離れるまでの期間においては、オブジェクト31に対する制御が行われない。これによれば、例えばユーザが移動操作を行う意図がなく誤ってタッチ入力を行ってしまった場合(より具体的には、例えば、タッチパネル23の入力面に指が当たってしまった場合)に、ユーザの意図に反してオブジェクト31の移動制御が行われる可能性を低減することができる。
(基準位置の変更処理)
 本実施形態においては、設定された基準位置は、基準位置設定時から継続するタッチ入力が行われている間に変更されることがある。以下、基準位置の変更処理について説明する。
 図8は、基準位置が変更される様子の一例を示す図である。図8において、位置Pr0は、継続タッチ入力中のある時点t=0における基準位置であり、位置Pt0は、当該ある時点t=0に検出された入力位置である。図8に示す例においては、上記時点t=0の次に入力位置が検出される時点t=1において、入力位置Pt1が検出される。本実施形態においては、位置Pt1の入力位置が検出されたことに応じて、基準位置は、位置Pr0から位置Pr1に変更される(図8参照)。
 具体的には、端末装置2は、継続タッチ入力によって入力位置が移動した結果、基準位置から入力位置までの距離が所定距離よりも大きくなる場合、端末装置2は基準位置を変更する。ここで、所定距離は、予め定められており、例えば、上記基準位置画像34の半径r2から上記入力位置画像の半径r1を減算した値である。したがって、本実施形態においては、基準位置は、入力位置画像33が基準位置画像34の内側に含まれるように設定(換言すれば、変更)される。つまり、入力位置画像33は、基準位置画像34の円形領域内に含まれるように配置される。なお、他の実施形態においては、基準位置は、入力位置(すなわち、入力位置画像33の中心)が基準位置画像34の内側に含まれるように設定されてもよい。このとき、上記所定距離は、基準位置画像34の半径r2に設定される。また、他の実施形態においては、上記所定距離は、入力位置画像33の半径r1および基準位置画像34の半径r2とは独立した値に設定されてもよい。つまり、入力位置画像33および基準位置画像34の大きさは、基準位置の変更処理に用いられなくてもよい。
 上記のように、端末装置2は、基準位置から入力位置までの距離が上記所定距離以内となるように、基準位置を変更する。本実施形態においては、変更後の基準位置Pr1は、変更前の基準位置Pr0と、現在の入力位置Pt1とを結ぶ線分上の位置であって、変更後の基準位置Pr1から現在の入力位置Pt1までの距離が上記所定距離となる位置に決定される(図8参照)。
 なお、変更後の基準位置の具体的な算出方法は任意である。例えば、他の実施形態においては、端末装置2は、基準位置を変更する前の入力位置Pt0から現在の入力位置Pt1への方向に応じた方向へ、変更前の基準位置Pr0を移動させるように、変更後の基準位置Pr1を算出してもよい。
 上記のように基準位置が変更された場合、端末装置2は、オブジェクト31の移動制御のために用いられる上記入力指示(入力方向および入力距離)を、変更後の基準位置に基づいて算出する。なお、入力指示に基づいてオブジェクト31を制御する処理は、基準位置の変更前と変更後とにおいて同様である。
 以上のように、本実施形態においては、端末装置2は、一定条件下で入力位置の移動に追従するように基準位置を変更する。これによれば、入力位置と基準位置との距離が上記所定距離以内に維持されるので、ユーザは、現在の入力位置を基準位置に対して反対側へ移動させる操作を容易に行うことができる。例えば、ユーザは、基準位置に対して右側にある入力位置を、基準位置に対して左側の位置へと容易に変更することができる。つまり、ユーザは、右方向を指示する入力指示を、左方向を指示する入力指示へと容易に変更することができる。
 なお、他の実施形態においては、端末装置2は、基準位置を変更する処理を実行しなくてもよい。すなわち、入力位置から基準位置までの距離が上記所定距離より大きくなった場合であっても、基準位置が変更されなくてもよい。なお、このとき、端末装置2は、入力距離の大きさに制限をかける(すなわち、入力距離の最大値を設定する)ようにしてもよい。すなわち、端末装置2は、入力位置から基準位置までの距離が上記所定距離より大きい場合には、入力距離を所定距離としてもよい。
[2-2-2.第2の移動操作]
 図9は、本実施形態におけるタップ操作および第2の移動操作の一例を示す図である。図9に示すように、第2の移動操作は、タップ操作後における所定の時間T2以内にタッチ入力を開始し、継続してタッチ入力を行う操作である。本実施形態では、オブジェクト31をドリフト状態に遷移させて移動させる場合に、ユーザは第2の移動操作を行う。
 図9に示す例においては、ユーザはまず、タップ操作を行う。本実施形態において、タップ操作は、タッチオンから上記所定の時間T1以内にタッチオフとなる操作である。図9に示す例においては、あるタッチ入力のタッチオンのタイミングt4からタッチオフのタイミングt5までの時間は時間T1未満であるので、端末装置2は、当該タッチ入力による操作がタップ操作である(換言すれば、タップ操作が行われた)と判定する。なお、タッチ入力のタッチオンのタイミングからタッチオフのタイミングまでの時間が時間T1以上である場合には、端末装置2は、当該タッチ入力による操作が上述の第1の移動操作であると判定する。
 なお、他の実施形態においては、端末装置2は、タッチ入力のタッチオンの位置とタッチオフの位置とを考慮して、タップ操作が行われたか否かの判定を行うようにしてもよい。すなわち、端末装置2は、タッチオンの位置とタッチオフの位置との距離が所定値以下であり、かつ、タッチオンからタッチオフまでの時間が時間T1未満である場合に、タップ操作が行われたと判定するようにしてもよい。これによれば、端末装置2は、例えばタップ操作とフリック操作とを区別することができるので、タップ操作をより正確に判定することができる。
 本実施形態においては、端末装置2は、タップ操作に応じてオブジェクト31に所定の動作(具体的には、ジャンプ動作)を行わせる。図10は、オブジェクトがジャンプ動作を行う様子を表すゲーム画像の一例を示す図である。本実施形態においては、図10に示すように、ユーザによってタップ操作が行われたことに応じて、オブジェクト31はジャンプ動作を行う。すなわち、端末装置2は、タップ操作が行われたと判定されるタイミング(換言すれば、タップ操作のタッチオフのタイミング)t5において、オブジェクト31にジャンプ動作を行わせる。なお、他の実施形態においては、端末装置2は、タップ操作に応じた処理を実行しなくてもよい。
 図9に示す例においては、ユーザは、タップ操作に続いて移動操作(すなわち、第2の移動操作)を行う。すなわち、ユーザは、タップ操作のタッチオフのタイミングt5からの経過時間が所定の時間T2未満であるタイミングt6において、次のタッチ入力を開始する(図9参照)。なお、上記時間T2は、タップ操作に応じた所定の動作をオブジェクト31が行う時間(例えば、所定の動作がジャンプ動作である場合、オブジェクト31がジャンプを開始してから着地するまでの時間)、または、当該時間よりも長い時間に設定されてもよい。
 本実施形態においては、端末装置2は、タップ操作のタッチオフのタイミングから、次のタッチ入力のタッチオンのタイミングまでの長さが、所定の時間T2以内である場合、第2の移動操作が行われた(換言すれば、当該タッチ入力による操作が第2の移動操作である)と判定する。なお、タップ操作のタッチオフのタイミングから、次のタッチ入力のタッチオンのタイミングまでの長さが、所定の時間T2よりも長い場合、当該タッチ入力による操作は第2の移動操作でないと判定される。この場合、当該タッチ入力による操作は、タップ操作または第1の移動操作と判定される。
 以上のように、本実施形態においては、端末装置2は、タップ操作の入力から、当該入力の終了後に行われるタッチ入力までの時間が所定時間以内であることを条件として、第2の移動操作が行われたと判定する。本実施形態においては、第2の移動操作が行われたと判定されるための条件は、「タップ操作のタッチオフのタイミングから、次のタッチ入力のタッチオンのタイミングまでの長さが、所定の時間T2以内であること」であった。ここで、他の実施形態においては、第2の移動操作が行われたと判定されるための条件は、例えば下記の条件であってもよい。
・タップ操作のタッチオンのタイミング(図9に示す例では、タイミングt4)から、次のタッチ入力のタッチオン(図9に示す例では、タイミングt6)までの時間が、所定時間以内であること
・タップ操作の中間タイミング(図9に示す例では、タイミングt4とタイミングt5との中間のタイミング)から、次のタッチ入力のタッチオンまでの時間が、所定時間以内であること
 なお、本実施形態においては、第2の移動操作における1回目のタッチ入力を、タップ操作のタッチ入力としたが、他の実施形態においては、1回目の入力は、タップ操作のタッチ入力に限らず、任意のタッチ入力であってもよい(例えば、後述する“(第1の入力に関する変形例)”を参照。)。このとき、第2の移動操作が行われたと判定されるための条件は、「1回目のタッチ入力のタッチオンのタイミングから、次のタッチ入力のタッチオンまでの時間が所定時間以内であること」であってもよい。また、上記条件は、「1回目のタッチ入力のタッチオフのタイミングから、次のタッチ入力のタッチオンまでの時間が所定時間以内であること」であってもよい。
 また、他の実施形態においては、第2の移動操作が行われたと判定されるための条件は、「次のタッチ入力が所定の入力継続時間以上継続したこと」という条件を含んでいてもよい。この入力継続時間は、例えば、上記時間T1と同じであってもよい。
 上記のように、端末装置2は、第1の入力(例えば、タップ操作の入力)の開始または終了に基づくタイミングから、第2の入力(すなわち、第1の入力の次に行われるタッチ入力)が開始されたタイミングまでの時間が所定の時間T2内であることを少なくとも条件として、当該条件に応じた処理(すなわち、第2の移動操作に応じた処理)を実行する。これによれば、端末装置2は、第1の入力から第2の入力までの時間を適切に算出することができ、上記処理を実行するか否かを正確に判定することができる。また、本実施形態によれば、移動操作のための第2の入力の前に第1の入力をユーザが行うこと(より具体的には、第1の入力後における所定時間T2内に第2の入力を行うこと)を第2の移動操作の条件とするので、ユーザが意図せずに第2の移動操作を行ってしまう(換言すれば、ユーザの意図に反して、第2の移動操作が行われたと判定される)可能性を低減することができる。
 また、他の実施形態においては、端末装置2は、タップ操作の入力位置と、次のタッチ入力の入力位置とを考慮して、第2の移動操作が行われたか否かの判定を行うようにしてもよい。すなわち、端末装置2は、タップ操作の入力位置と、次のタッチ入力の入力位置との距離が所定値以下であることを少なくとも条件として、第2の移動操作が行われたと判定するようにしてもよい。なお、上記「タップ操作の入力位置」は、例えば、タップ操作のタッチオンの位置であってもよいし、タッチオフの位置であってもよいし、タッチオンの位置とタッチオフの位置とに基づく位置(例えば、タッチオンの位置とタッチオフの位置との中点の位置)であってもよい。また、「次のタッチ入力の入力位置」は、例えば、当該タッチ入力のタッチオンの位置であってもよい。
 図9に示すように、第2の移動操作が行われたと判定された場合、第1の移動操作と同様に、基準位置が設定される。なお、第2の移動操作においては、第2の移動操作が行われたとの判定がタッチオン時に行われるので、基準位置は、タッチオン時における入力位置に基づいて設定される。すなわち、端末装置2は、第2の移動操作におけるタッチオン時の入力位置、すなわちタッチ入力開始時における入力位置を基準位置として設定する。
 なお、他の実施形態においては、第2の移動操作についても第1の移動操作と同様に、タッチオンよりも後のタイミングで検出される入力位置に基づいて基準位置が設定されてもよい。例えば、端末装置2は、第2の移動操作と他の操作(例えば、タップ操作)とを区別する場合には、第2の移動操作が行われたと判定された時点における入力位置に基づいて基準位置を設定してもよい。また、第2の移動操作についても第1の移動操作と同様に、基準位置の設定時の入力位置が表示部24の画面の端部付近に位置する場合には、端末装置2は、画面の端部から所定距離となる位置を基準位置として設定してもよい。
 また、図9に示すように、第2の移動操作が行われたと判定された場合、端末装置2は、オブジェクト31の状態をドリフト状態へと遷移させる。したがって、第2の移動操作は、ドリフト状態となったオブジェクト31に対して行われる。なお、端末装置2は、第2の移動操作における入力位置と基準位置との方向に応じて、ドリフト状態におけるオブジェクトの向きを制御してもよい。すなわち、入力位置が基準位置に対して左側にある場合、オブジェクトは、左向きのドリフト状態(つまり、左に曲がるドリフト状態)に制御され、入力位置が基準位置に対して右側にある場合、オブジェクトは、右向きのドリフト状態(つまり、右に曲がるドリフト状態)に制御されてもよい。
 なお、他の実施形態においては、第2の移動操作についても第1の移動操作と同様、端末装置2は、入力距離が所定の制御開始距離を超えたことを条件として、オブジェクト31の制御を開始するようにしてもよい。また、このとき、端末装置2は、第2の移動操作が開始された後、入力距離が所定の制御開始距離を超えたことを条件として、オブジェクト31をドリフト状態へ遷移させるようにしてもよい。このように、第2の移動操作のタッチ入力に応じて遷移処理(すなわち、オブジェクト31をドリフト状態へ遷移する処理)を実行するタイミングは、タッチオン時のタイミングに限らず、タッチオン後において、当該タッチ入力の入力位置に関する所定の条件が満たされたタイミングであってもよい。
 図11は、ドリフト状態におけるオブジェクトを含むゲーム画像の一例を示す図である。上述のように、ドリフト状態は、通常状態における移動制御とは異なる方法で移動制御が行われる状態である。図11に示すように、ドリフト状態においては、オブジェクト31がドリフトしている様子(具体的には、タイヤから煙が上がっている様子)が表示される。
 本実施形態においては、ドリフト状態における第2の移動操作は、通常状態における第1の移動操作と同様の操作方法である。すなわち、端末装置2は、オブジェクト31がドリフト状態である場合においても、通常状態である場合と同様に、タッチ入力に基づいて入力指示(具体的には、入力方向および入力距離)を特定する。このように、ユーザは、オブジェクト31が通常状態である場合もドリフト状態である場合も、同じ操作方法でオブジェクト31を操作することができる。ただし、入力指示に基づいてオブジェクト31の移動を制御する処理が、通常状態とドリフト状態とでは異なる。
 本実施形態においては、ドリフト状態においては、オブジェクト31は、同じスピードで通常状態よりも鋭くカーブを曲がることができるように移動制御される。なお、ドリフト状態における移動制御の具体的な方法は任意である。例えば、他の実施形態においては、ドリフト状態においては、オブジェクト31は、カーブを通常状態よりも速く曲がることができるように移動制御されてもよい。このように、端末装置2は、ドリフト状態では、ユーザが通常状態に比べてゲーム上有利にオブジェクトの移動を操作することができるように、オブジェクト31の移動制御を行ってもよい。
 なお、第2の移動操作の継続タッチ入力が終了すると、端末装置2は、オブジェクト31をドリフト状態から通常状態へと遷移させる。図9に示す例においては、タイミングt8で第2の移動操作が終了すると、オブジェクト31はドリフト状態から通常状態へと遷移する。上述のように、タッチ入力が行われていない期間においては、端末装置2はオブジェクト31を自動的に制御する。
 ここで、図9に示す例においては、ユーザは、第2の移動操作を所定の時間T3以上継続して行う。これによって、オブジェクト31は、(ドリフト状態であって、かつ、)加速可能状態に設定される。すなわち、本実施形態においては、オブジェクト31がドリフト状態である状況において所定の加速条件が満たされると、端末装置2は、オブジェクト31を加速可能状態に設定する。詳細は後述するが、オブジェクト31が加速可能状態となった後で移動操作が終了された(すなわち、タッチオフとなった)場合、オブジェクト31は、通常よりも加速した加速状態で移動が制御される。
 図12は、加速可能状態におけるオブジェクトを含むゲーム画像の一例を示す図である。図12に示すように、加速可能状態においては、オブジェクト31は、ドリフト状態を表す表示態様(具体的には、タイヤから煙が上がっている表示態様)に加えて、加速可能状態を表す表示態様(具体的には、タイヤから火花が出ている表示態様)で表示される。なお、本実施形態においては、ドリフト状態であるオブジェクト31のスピードは、加速可能状態であるか否かによって変わらない。ただし、他の実施形態においては、ドリフト状態であるオブジェクト31が加速可能状態である場合、加速可能状態でない場合に比べてオブジェクト31のスピードが速くなってもよい。
 本実施形態においては、上記加速条件は、ドリフト状態が所定の時間T3の間継続されることである。つまり、ドリフト状態となってから(換言すれば、第2の移動操作が開始されてから)時間T3が経過したことに応じて、端末装置2は、オブジェクト31を加速可能状態に設定する(図9参照)。図9に示す例では、第2の移動操作のタッチオンのタイミングt6から時間T3が経過したタイミングt7で、オブジェクト31は加速可能状態となる。
 なお、他の実施形態においては、加速条件の内容は任意である。例えば、加速条件は、「ドリフト状態において継続タッチ入力が所定のジェスチャを表すこと」という条件を含んでもよいし、「ドリフト状態において継続タッチ入力によって所定の操作が行われたこと」という条件を含んでもよい。このように、加速条件は、入力方向および/または入力距離に関する所定の条件を満たす入力が行われた状態となったことであってもよいし、その状態が所定時間継続したことであってもよい。
 以上のように、本実施形態においては、端末装置2は、第2の移動操作の入力が開始されてから継続して行われる入力が所定の条件(すなわち、加速条件)を満たす場合、第1処理(すなわち、オブジェクト31をドリフト状態へ遷移する処理)とは異なる処理であって、オブジェクト31に対する第2処理(すなわち、オブジェクト31を加速可能状態に設定する処理)を実行する。これによれば、ユーザは、第2の移動操作中において、端末装置2に第1処理を実行させることに加えてさらに、第2処理を実行させることができる。すなわち、端末装置2は、一連のタッチ入力によって、より多様なゲーム操作をユーザに行わせることができる。
 なお、上記第2処理は、オブジェクト31の移動に関する任意の処理であってもよい。例えば、第2処理は、オブジェクト31を所定の制御方法で移動させる処理であってもよい。したがって、本実施形態においては、後述する「加速状態でオブジェクト31を移動させる処理」も第2処理の一例であるということができる。なお、このとき、上記所定の条件は、「第2の移動操作が終了すること」である。このように、上記所定の条件は、「第2の移動操作における継続タッチ入力が、ある条件を満たす状態が所定時間継続したこと」であってもよいし、「第1処理の実行後における継続タッチ入力が、ある条件を満たす状態が所定時間継続した後で、第2の移動操作における継続タッチ入力が終了したこと」であってもよい。また、他の実施形態においては、上記所定の条件は、「第1処理の実行後における継続タッチ入力が終了したこと」であってもよい。
 図9に示す例においては、ユーザは、オブジェクト31が加速可能状態となったタイミングt7の後のタイミングt8で、加速操作(すなわち、タッチ入力を終了する操作)を行う。この加速操作に応じて、オブジェクト31は加速状態で走行する。すなわち、オブジェクト31が加速可能状態となった状態で第2の移動操作が終了した場合、端末装置2は、オブジェクト31を加速状態で移動させる(図9参照)。なお、加速状態とは、通常状態におけるオブジェクト31のスピードよりも速いスピードでオブジェクト31が移動する状態である。
 図13は、加速状態におけるオブジェクトを含むゲーム画像の一例を示す図である。図13に示すように、加速状態においては、オブジェクト31が加速状態である様子(具体的には、後方へ火花を噴射している様子)が表示される。
 本実施形態においては、加速状態は、予め定められた所定の時間T4の間(図9に示す例では、タイミングt8から所定時間経過後のタイミングt9までの間)、継続される。すなわち、端末装置2は、第2の移動操作の終了時から上記時間T4が経過するまでの間、オブジェクト31を加速状態で移動させ、その後、通常状態における自動制御を行う(図9参照)。
 以上のように、ユーザは、第2の移動操作において、ドリフト状態においてオブジェクト31を加速可能状態となるように操作した後で第2の移動操作を終了することによって、オブジェクト31をより速く走行させることができる。例えば、ユーザは、オブジェクト31をドリフト状態に遷移させた状態でレースコースのカーブを曲がり、レースコースが直線になった位置からオブジェクト31を加速状態で走行させることによって、オブジェクト31を速く走行させることができる。
 なお、他の実施形態においては、オブジェクト31は、複数段階の加速可能状態をとることが可能であってもよい。例えば、ドリフト状態が上記時間T3の間継続されることに応じて、オブジェクト31は第1加速可能状態となり、第1加速可能状態が所定の時間T3’(なお、T3’>T3とする)の間継続されることに応じて、オブジェクト31は第2加速可能状態となるように制御されてもよい。このとき、端末装置2は、オブジェクト31が第2加速可能状態から(第2の移動操作の終了に応じて)加速状態になる場合には、第1加速可能状態から(第2の移動操作の終了に応じて)加速状態になる場合に比べて、加速状態が長く継続するようにオブジェクト31を制御する。なお、他の実施形態においては、端末装置2は、上記の場合に、第1加速可能状態から加速状態になる場合に比べて、加速状態におけるスピードが速くなるようにオブジェクト31を制御してもよい。
 また、端末装置2は、複数段階の加速可能状態を互いに区別可能となるようにオブジェクト31を表示してもよい。例えば、端末装置2は、第1加速可能状態と第2加速可能状態とで火花の色および/または大きさが異なるようにオブジェクト31を表示してもよい。
 以上に説明したように、本実施形態においては、ユーザは、タップ操作および第2の移動操作からなる1まとまりのタッチ入力によって、図9に示す複数種類の操作(すなわち、ジャンプ操作、ドリフト状態への遷移操作、移動操作、加速状態の設定操作、および、加速操作)を行うことが可能である。このように、本実施形態においては、端末装置2は、ポインティングデバイス(すなわち、タッチパネル)を用いて多様なゲーム操作をユーザに行わせることができる。
 また、本実施形態においては、第1の移動操作、タップ操作、および、第2の移動操作は、いずれも、ユーザが1本の指で行うことができる操作である。したがって、本実施形態によれば、ユーザは、1本の指でオブジェクト31を操作することができ、例えば、端末装置2を片手で把持するとともに、その手の親指でゲーム操作を行うことができる。
 なお、上記においては、図5または図9に示す各操作が行われる場合を例として説明したが、上記実施形態においては、タッチ入力によって、当該各操作以外の操作が可能であってもよい。例えば、端末装置2は、アイテムを示すアイコンを表示部24に表示してもよく、オブジェクト31にアイテムを使用させるための操作として、アイコンを指定するタッチ入力を受け付けるようにしてもよい。
[3.情報処理システムにおける処理の具体例]
 図14~図16を参照して、上記において概要を説明したゲーム処理が情報処理システムにおいて実行される場合の具体例について説明する。
[3-1.処理に用いられるデータ]
 図14を参照して、情報処理システムにおけるゲーム処理に用いられるデータの具体例について説明する。図14は、情報処理システムにおけるゲーム処理に用いられるデータの一例を示す図である。図14に示すデータは、端末装置2の記憶装置(具体的には、処理部11のメモリ、および/または、記憶部12)に記憶される。図14に示すように、端末装置2は、入力位置データ、基準位置データ、入力指示データ、オブジェクト位置データ、オブジェクト状態データ、加速フラグデータ、および、タップ操作フラグデータを記憶する。
 入力位置データは、上記入力位置を示すデータである。本実施形態では、入力位置データは、現在の入力位置(換言すれば、最新の入力位置)を示すデータを含むことに加えて、過去の入力位置を示すデータを含む。具体的には、入力位置データは、タッチオンから継続して入力される一連のタッチ入力に関する入力位置を示すデータを含む。なお、入力位置データの内容は、タッチオフ時にリセットされてもよい。
 基準位置データは、上記基準位置を示すデータである。なお、上記入力位置データおよび基準位置データは、例えば、タッチパネル23の入力面上における位置を示す2次元座標値のデータである。
 入力指示データは、入力位置に基づいて特定される上記入力指示の内容を示す。具体的には、入力指示データは、上記入力方向および入力距離を示す。上述したように、入力指示データは、入力方向を正負の符号で表し、入力距離を絶対値で表す数値を示すデータであってもよい。
 オブジェクト位置データは、ゲーム空間におけるオブジェクト31の位置を示す。例えば、オブジェクト位置データは、ゲーム空間における位置を示す3次元または2次元の座標値を示すデータである。
 オブジェクト状態データは、オブジェクト31の状態を示す。具体的には、オブジェクト状態データは、通常状態またはドリフト状態であることを示すデータである。なお、本実施形態においては、ゲーム開始時(すなわち、レースゲームのスタート時)においては、オブジェクト31は通常状態であるとし、通常状態を示すオブジェクト状態データが記憶される。
 加速フラグデータは、オブジェクト31を加速した状態で移動させる制御を行うか否かを表す加速フラグを示すデータである。詳細は後述するが、オブジェクト31が上述の加速可能状態または加速状態となる場合、加速フラグがオンに設定され、オブジェクト31が加速可能状態でもなく加速状態でもない場合、加速フラグがオフに設定される。なお、本実施形態においては、ゲーム開始時においては、加速フラグがオフに設定される。
 タップ操作フラグデータは、タップ操作が行われた直後であるか否かを表すタップ操作フラグを示すデータである。詳細は後述するが、タップ操作が行われたタイミング(例えば、図9に示すタイミングt5)から、上記の時間T2が経過するまでの期間において、タップ操作フラグがオンに設定され、当該期間以外の期間において、タップ操作フラグがオフに設定される。
[3-2.ゲーム処理例]
 図15および図16は、端末装置によって実行されるゲーム処理の一例の流れを示すフローチャートである。なお、図15および図16に示す一連の処理は、記憶部22に記憶される上記ゲームプログラムの起動後、レースゲームの開始に応じて開始される。
 なお、本実施形態では、端末装置2の処理部21のCPU(換言すればプロセッサ)が、記憶部22に記憶されているゲームプログラム(具体的には、レースゲームのためのゲームプログラム)を実行することによって、図15および図16に示す各ステップの処理を実行するものとして説明する。ただし、他の実施形態においては、上記各ステップの処理のうちの一部の処理を、CPUとは別のプロセッサ(例えば、専用回路等)が実行するようにしてもよい。また、図15および図16に示す各ステップの処理は、単なる一例に過ぎず、同様の結果が得られるのであれば、各ステップの処理順序を入れ替えてもよいし、各ステップの処理に加えて(または代えて)別の処理が実行されてもよい。
 また、他の実施形態においては、図15および図16に示す各ステップの処理は、端末装置2とサーバ1との協働によって実行されてもよい。つまり、図15および図16に示す各ステップの処理のうちの一部の処理は、サーバ1によって実行されてもよい。このとき、サーバ1は、処理に用いるデータを、ネットワーク3を介して端末装置2から受信する。サーバ1は、処理の結果得られたデータを、ネットワーク3を介して端末装置2へ送信する。
 また、端末装置の処理部21は、図15および図16に示す各ステップの処理を、メモリを用いて実行する。すなわち、処理部21のCPUは、各処理ステップによって得られる情報(換言すれば、データ)をメモリに記憶し、それ以降の処理ステップにおいて当該情報を用いる場合には、メモリから当該情報を読み出して利用する。
 図15に示すステップS1において、処理部21は、タッチパネル23から入力位置を取得する。すなわち、タッチパネル23は、入力面上の入力位置を検出し、検出した入力位置を示す検出結果データを出力する。処理部21は、タッチパネル23から検出結果データを取得し、取得した検出結果データを含む入力位置データをメモリに記憶する。なお、本実施形態においては、タッチパネル23は、タッチパネル23に対するタッチ入力が行われていない場合、タッチ入力が無いことを示す検出結果データを出力する。この場合、処理部21は、タッチ入力が無いことを示す検出結果データを取得する。ステップS1の次に、ステップS2の処理が実行される。
 ステップS2において、処理部21は、タッチ入力が行われたか否かを判定する。処理部21は、ステップS2における判定を、メモリに記憶されている入力位置データ(換言すれば、上記ステップS1の処理においてタッチパネル23から取得されたデータ)に基づいて行う。ステップS2の判定結果が肯定である場合、ステップS3の処理が実行される。一方、ステップS2の判定結果が否定である場合、後述するステップS21の処理が実行される。
 ステップS3において、処理部21は、タッチ入力がタッチオン時の入力であるか否かを判定する。処理部21は、ステップS3における判定を、メモリに記憶されている入力位置データに基づいて行う。すなわち、前回の処理ループ(具体的には、ステップS1~S37の処理ループ)におけるステップS1で取得された検出結果データが、タッチ入力が無いことを示す値である場合、タッチ入力はタッチオン時の入力であると判定され、当該検出結果データが、タッチ入力があることを示す値である場合、タッチ入力はタッチオン時の入力でないと判定される。ステップS3の判定結果が肯定である場合、ステップS4の処理が実行される。一方、ステップS3の判定結果が否定である場合、ステップS4~S7の処理がスキップされて、後述するステップS8の処理が実行される。
 ステップS4において、処理部21は、第2の移動操作が行われた(すなわち、今回の処理ループで開始されたタッチ入力による操作が、第2の移動操作であるか)か否かを判定する。処理部21は、メモリに記憶されているタップ操作フラグデータに基づいてステップS4の判定を行う。ここで、詳細は後述するが、タップ操作が行われたと判定されてから所定の時間T2が経過するまでの期間においては、タップ操作フラグがオンに設定される(後述するステップS21~S26,S29,S30)。したがって、処理部21は、タップ操作フラグデータにより示される値がオンである場合、第2の移動操作が行われたと判定し、タップ操作フラグデータにより示される値がオフである場合、第2の移動操作が行われていない(すなわち、タップ操作または第1の移動操作が行われた)と判定する。ステップS4の判定結果が肯定である場合、ステップS5の処理が実行される。一方、ステップS4の判定結果が否定である場合、ステップS5~S7の処理がスキップされて、後述するステップS8の処理が実行される。
 ステップS5において、処理部21は、オブジェクト31の状態をドリフト状態へと遷移させる。すなわち、処理部21は、ドリフト状態を示すオブジェクト状態データをメモリに記憶する。ステップS5の次に、ステップS6の処理が実行される。
 ステップS6において、処理部21は、基準位置を設定する。すなわち、処理部21は、今回の処理ループにおけるステップS1の処理で取得された入力位置を、基準位置として設定する。処理部21は、設定された基準位置を示す基準位置データをメモリに記憶する。ステップS6の次に、ステップS7の処理が実行される。
 ステップS7において、処理部21は、タップ操作フラグをオフに設定する。すなわち、処理部21は、タップ操作フラグがオフであることを示すタップ操作フラグデータをメモリに記憶する。ステップS7の次に、ステップS8の処理が実行される。
 ステップS8において、処理部21は、現在行われている継続タッチ入力におけるタッチオンから時間T1が経過したタイミングであるか否かを判定する。なお、ステップS8では、タッチオンからの経過時間が時間T1と等しい場合に判定結果が肯定となり、タッチオンからの経過時間が時間T1と異なる場合には判定結果が否定となる。ステップS8の判定結果が肯定である場合、ステップS9の処理が実行される。一方、ステップS8の判定結果が否定である場合、ステップS9およびS10の処理がスキップされて、後述するステップS11の処理が実行される。
 ステップS9において、処理部21は、第1の移動操作が行われているか否かを判定する。例えば、処理部21は、メモリに記憶されているオブジェクト状態データに基づいてステップS9の判定を行うことができる。すなわち、オブジェクト状態データが通常状態を示す場合、第1の移動操作が行われていると判定され、オブジェクト状態データがドリフト状態を示す場合、第1の移動操作が行われていない(すなわち、第2の移動操作が行われている)と判定される。ステップS9の判定結果が肯定である場合、ステップS10の処理が実行される。一方、ステップS9の判定結果が否定である場合、ステップS10の処理がスキップされて、後述するステップS11の処理が実行される。
 ステップS10において、処理部21は、基準位置を設定する。ステップS10の処理は、ステップS6の処理と同じである。ステップS10の次に、ステップS11の処理が実行される。
 ステップS11において、処理部21は、現在行われている継続タッチ入力におけるタッチオンから時間T3が経過したタイミングであるか否かを判定する。なお、ステップS11では、タッチオンからの経過時間が時間T3と等しい場合に判定結果が肯定となり、タッチオンからの経過時間が時間T3と異なる場合には判定結果が否定となる。ステップS11の判定結果が肯定である場合、ステップS12の処理が実行される。一方、ステップS11の判定結果が否定である場合、ステップS12およびS13の処理がスキップされて、後述するステップS16(図16参照)の処理が実行される。
 ステップS12において、処理部21は、第2の移動操作が行われているか否かを判定する。例えば、処理部21は、メモリに記憶されているオブジェクト状態データに基づいてステップS12の判定を行うことができる。すなわち、オブジェクト状態データがドリフト状態を示す場合、第2の移動操作が行われていると判定され、オブジェクト状態データが通常状態を示す場合、第2の移動操作が行われていない(すなわち、第1の移動操作が行われている)と判定される。ステップS12の判定結果が肯定である場合、ステップS13の処理が実行される。一方、ステップS12の判定結果が否定である場合、ステップS13の処理がスキップされて、後述するステップS16の処理が実行される。
 ステップS13において、処理部21は、加速フラグをオンに設定する。すなわち、処理部21は、加速フラグがオンであることを示す加速フラグデータをメモリに記憶する。これによって、オブジェクト31は、(ドリフト状態であって、かつ、)加速可能状態に設定されたことになる。ステップS13の次に、後述するステップS14の処理が実行される。
 図16を参照して、ステップS14~S20の処理について説明する。ステップS14において、処理部21は、基準位置を変更するか否かを判定する。すなわち、処理部21は、メモリに記憶されている入力位置データおよび基準位置データに基づいて、上記“(基準位置の変更処理)”で説明した方法によって上記の判定を行う。ステップS14の判定結果が肯定である場合、ステップS15の処理が実行される。一方、ステップS14の判定結果が否定である場合、ステップS15の処理がスキップされて、後述するステップS16の処理が実行される。
 ステップS15において、処理部21は、基準位置を変更する。すなわち、処理部21は、メモリに記憶されている入力位置データおよび基準位置データに基づいて、上記“(基準位置の変更処理)”で説明した方法によって、変更後の基準位置を算出する。さらに、処理部21は、メモリに記憶されている基準位置データを、算出された変更後の基準位置を示す内容に更新する。ステップS15の次に、ステップS16の処理が実行される。
 ステップS16において、処理部21は、入力指示を特定するか否かを判定する。具体的には、処理部21は、基準位置データがメモリに記憶されているか否かによってステップS16の判定を行う。ステップS16の判定結果が肯定である場合、ステップS17の処理が実行される。一方、ステップS16の判定結果が否定である場合、後述するステップS31の処理が実行される。
 ステップS17において、処理部21は、入力指示の内容を特定する。すなわち、処理部21は、メモリに記憶されている入力位置データおよび基準位置データを参照して、入力方向および入力距離を算出する。なお、入力方向および入力距離の具体的な算出方法は、上記“[2-2-1.第1の移動操作]”で説明した方法である。処理部21は、算出された入力方向および入力距離を示す入力指示データをメモリに記憶する。ステップS17の次に、ステップS18の処理が実行される。
 ステップS18において、処理部21は、メモリに記憶されているオブジェクト状態データに基づいて、オブジェクト31がドリフト状態であるか否かを判定する。ステップS18の判定結果が否定である場合(すなわち、オブジェクト31が通常状態である場合)、ステップS19の処理が実行される。一方、ステップS18の判定結果が肯定である場合(すなわち、オブジェクト31がドリフト状態である場合)、ステップS20の処理が実行される。
 ステップS19において、処理部21は、メモリに記憶されている入力指示データに基づいて、通常状態におけるオブジェクト31の移動制御を行う。具体的には、処理部21は、1フレーム時間におけるオブジェクト31の移動方向および移動距離を算出し、算出された移動方向および移動距離と、現在のオブジェクト31の位置とに基づいて移動後の位置を算出する。なお、ステップS12における移動制御は、上記“[2-2-1.第1の移動操作]”で説明した方法によって行われる。処理部21は、算出された移動後の位置を示すオブジェクト位置データをメモリに記憶する。ステップS19の次に、後述するステップS36の処理が実行される。
 ステップS20において、処理部21は、ドリフト状態におけるオブジェクト31の移動制御を行う。ステップS20においてもステップS19と同様、処理部21は、メモリに記憶されている入力指示データに基づいて、オブジェクト31の移動後の位置を算出する。ただし、ステップS13における移動制御は、ステップS19における移動制御とは異なり、上記“[2-2-2.第2の移動操作]”で説明した方法によって行われる。処理部21は、算出された移動後の位置を示すオブジェクト位置データをメモリに記憶する。ステップS20の次に、後述するステップS36の処理が実行される。
 再び図15を参照して、ステップS21~S30の処理について説明する。ステップS21において、処理部21は、タッチ入力が終了した(すなわち、タッチオフとなった)か否かを判定する。処理部21は、ステップS18における判定を、メモリに記憶されている入力位置データに基づいて行う。すなわち、前回の処理ループにおけるステップS1で取得された検出結果データが、タッチ入力があることを示す値である場合、タッチ入力が終了したと判定され、当該検出結果データが、タッチ入力が無いことを示す値である場合、タッチ入力が終了したタイミングでないと判定される。ステップS21の判定結果が肯定である場合、ステップS22の処理が実行される。一方、ステップS21の判定結果が否定である場合、ステップS22~S28の処理がスキップされて、後述するステップS29の処理が実行される。
 ステップS22において、処理部21は、設定されている基準位置を消去する。すなわち、メモリに記憶されている基準位置データを削除する。ステップS22の次に、ステップS23の処理が実行される。
 ステップS23において、処理部21は、最後に行われた継続タッチ入力(換言すれば、ステップS21においてタッチオフとなったと判定された継続タッチ入力)のタッチオンから時間T1が経過したタイミングより前であるか否かを判定する。ステップS23の判定結果が肯定である場合、ステップS24の処理が実行される。一方、ステップS23の判定結果が否定である場合、ステップS24~23の処理がスキップされて、後述するステップS27の処理が実行される。
 ステップS24において、処理部21は、ステップS21においてタッチオフとなったと判定されたタッチ入力が、1回目の入力であるか(換言すれば、第2の移動操作の入力でないか)否かを判定する。例えば、処理部21は、メモリに記憶されているオブジェクト状態データに基づいて、オブジェクト31が通常状態であるか否かを判定することによって、ステップS24の判定を行うことができる。ステップS24の判定結果が肯定である場合、ステップS25の処理が実行される。一方、ステップS24の判定結果が否定である場合、ステップS25およびS26の処理がスキップされて、後述するステップS27の処理が実行される。
 ステップS25において、処理部21は、オブジェクト31にジャンプ動作を行わせる。なお、図15および図16には示していないが、本実施形態においては、オブジェクト31のジャンプ動作は、所定数のフレームにわたって行われる。したがって、オブジェクト31にジャンプ動作を行わせている間については、処理部21は、タッチ入力に応じたオブジェクト31の制御を行わなくてもよい。ステップS25の次に、ステップS26の処理が実行される。
 ステップS26において、処理部21は、タップ操作フラグをオンに設定する。すなわち、処理部21は、タップ操作フラグがオンであることを示すタップ操作フラグデータをメモリに記憶する。ステップS26の次に、ステップS27の処理が実行される。
 ステップS27において、処理部21は、メモリに記憶されているオブジェクト状態データがドリフト状態を示すかを判定する。ステップS27の判定結果が肯定である場合、ステップS28の処理が実行される。一方、ステップS27の判定結果が否定である場合、ステップS28の処理がスキップされて、ステップS29の処理が実行される。
 ステップS28において、処理部21は、オブジェクト31の状態を通常状態へと遷移させる。すなわち、処理部21は、通常状態を示すオブジェクト状態データをメモリに記憶する。ステップS28の次に、ステップS29の処理が実行される。
 ステップS29において、処理部21は、最後に行われた継続タッチ入力のタッチオンから時間T2が経過したタイミングであるか否かを判定する。なお、ステップS29では、タッチオンからの経過時間が時間T2と等しい場合に判定結果が肯定となり、タッチオンからの経過時間が時間T2と異なる場合には判定結果が否定となる。ステップS29の判定結果が肯定である場合、ステップS30の処理が実行される。一方、ステップS29の判定結果が否定である場合、ステップS30の処理がスキップされて、ステップS31(図16参照)の処理が実行される。
 ステップS30において、処理部21は、タップ操作フラグをオフに設定する。すなわち、処理部21は、タップ操作フラグがオフであることを示すタップ操作フラグデータをメモリに記憶する。ステップS30の次に、ステップS31の処理が実行される。
 再び図16を参照して、ステップS31~S37の処理について説明する。ステップS31において、処理部21は、メモリに記憶されている加速フラグデータに基づいて、加速フラグがオンに設定されているか否かを判定する。ステップS31の判定結果が否定である場合(すなわち、加速フラグがオフに設定されている場合)、ステップS32の処理が実行される。一方、ステップS31の判定結果が肯定である場合(すなわち、加速フラグがオンに設定されている場合)、後述するステップS33の処理が実行される。
 ステップS32において、処理部21は、オブジェクト31の自動制御を行う。すなわち、処理部21は、記憶部12に記憶されているゲームアプリケーションのプログラムにおいて予め定められたアルゴリズムに従ってオブジェクト31の移動を制御することによって、オブジェクト31の移動後の位置を算出する。処理部21は、算出された移動後の位置を示すオブジェクト位置データをメモリに記憶する。ステップS32の次に、後述するステップS36の処理が実行される。
 一方、ステップS33において、処理部21は、加速状態でオブジェクト31の自動制御を行う。ステップS33においてもステップS32と同様、処理部21は、上記ゲームアプリケーションのプログラムにおいて予め定められたアルゴリズムに従ってオブジェクト31の移動を制御することによって、オブジェクト31の移動後の位置を算出する。ただし、ステップS33においては、ステップS32において設定される移動速度よりも速く移動するように、オブジェクト31の移動後の位置が算出される。処理部21は、算出された移動後の位置を示すオブジェクト位置データをメモリに記憶する。ステップS33の次に、ステップS34の処理が実行される。
 ステップS34において、処理部21は、オブジェクト31に対する加速状態での移動制御を開始してから(換言すれば、タッチオフとなってから)上述の時間T4が経過したか否かを判定する。ステップS34の判定結果が肯定である場合、ステップS35の処理が実行される。一方、ステップS34の判定結果が否定である場合、ステップS35の処理がスキップされて、後述するステップS36の処理が実行される。
 ステップS35において、処理部21は、加速フラグをオフに設定する。すなわち、処理部21は、加速フラグがオフであることを示す加速フラグデータをメモリに記憶する。これによって、オブジェクト31は、(通常状態であって、かつ、)加速状態に設定されたことになる。ステップS35の次に、ステップS36の処理が実行される。
 ステップS36において、処理部21は、ゲーム画像を生成して、表示部24に表示させる。すなわち、処理部21は、メモリに記憶されているオブジェクト位置データに基づいてゲーム画像を生成し、生成されたゲーム画像を表示部24に表示する。ステップS36で生成されるゲーム画像は、オブジェクト位置データにより示される位置にオブジェクト31が配置されたゲーム空間を表す。なお、ステップS36の処理において、処理部21は、必要に応じて、他のオブジェクト(例えば、他のキャラクタやアイテム)の動作を制御し、これらのオブジェクトを含むゲーム空間を表すゲーム画像を生成する。ステップS36の次に、ステップS37の処理が実行される。
 ステップS37において、処理部21は、ゲームを終了するか否かを判定する。すなわち、処理部21は、予め定められたゲーム終了条件(例えば、ユーザが操作するオブジェクトがゴールしたこと)が満たされた、または、ユーザによって所定の終了指示が行われた場合、ゲームを終了する。また、処理部21は、上記ゲーム終了条件が満たされず、かつ、ユーザによって所定の終了指示が行われていない場合、ゲームを終了しないと判定する。ステップS37の判定結果が否定である場合、ステップS1の処理が実行される。なお、処理部21は、ステップS37においてゲームを終了すると判定するまで、ステップS1~S37の一連の処理を繰り返し実行する。一方、ステップS37の判定結果が肯定である場合、処理部21は、図15および図16に示すゲーム処理を終了する。
[4.本実施形態の作用効果および変形例]
 以上に説明した実施形態によれば、ゲームプログラムは、ポインティングデバイス(例えば、タッチパネル23)を備える情報処理装置(例えば、端末装置2)のコンピュータに、以下の処理ステップを実行させる。
・ポインティングデバイスに対する第1の入力(すなわち、タップ操作のタッチ入力)の終了後において、当該第1の入力から所定の第1時間(すなわち、時間T2)内に行われる第2の入力(すなわち、第2の移動操作のタッチ入力)に応じて、仮想ゲーム空間におけるオブジェクトに対する第1処理(すなわち、ドリフト状態へと遷移させる処理)を実行する第1処理実行ステップ(ステップS5)
・ポインティングデバイスに対する第2の入力が開始されたときの入力位置に基づいて基準位置を設定する基準位置設定ステップ(ステップS6)
・基準位置と、ポインティングデバイスに対する第2の入力が開始されてから継続して行われる入力の入力位置とに基づいて、仮想ゲーム空間においてオブジェクトを移動させる第1移動処理を実行する第1移動処理ステップ(ステップS20)
 上記実施形態によれば、ユーザは、第1の入力と、第2の入力という1まとまりの入力操作(厳密には入力が連続するわけではないが、「一連の入力操作」ということもできる)によって、オブジェクトに対する第1処理と第1移動処理という2種類の処理を実行することができる。したがって、情報処理装置は、シンプルな入力方法によって多様な操作をユーザに行わせることができる。具体的には、上記実施形態によれば、ユーザは、1本の指で可能な1まとまりのタッチ入力によって、オブジェクトに対する複数種類の操作を行うことができる。
 なお、「ポインティングデバイスに対する入力が開始されてから継続して行われる入力」は、入力が厳密な意味で連続していることを要求するものではない。例えば、上述の継続タッチ入力に関して言えば、タッチパネル23は、実際にはタッチ入力が行われているにもかかわらず、所定期間の間、誤検出によって一時的にタッチ入力が検出されない場合も考えられる。この場合、端末装置2は、当該所定期間の前において検出されていたタッチ入力と、当該所定期間の後において検出されたタッチ入力とを、まとめて1回の継続タッチ入力として取り扱ってもよい。具体的には、端末装置2は、あるタッチ入力が検出されなくなってから、次のタッチ入力が検出されるまでの期間が所定の長さよりも短い場合、当該あるタッチ入力と当該次のタッチ入力とをまとめて1回の継続タッチ入力として取り扱ってもよい。
 また、上記実施形態においては、ゲームプログラムは、情報処理装置のコンピュータに以下の処理ステップを実行させる。
・第2の入力とは異なる入力であって、ポインティングデバイスに対する第3の入力(すなわち、第1の移動操作のタッチ入力)に関する入力位置に基づいて基準位置を設定する第2基準位置設定ステップ(ステップS10)
・基準位置と、第3の入力が開始されてから継続して行われる入力の入力位置とに基づいて、第1移動処理とは異なる処理であって、第1オブジェクトに対する第3処理を実行する第3処理実行ステップ(ステップS19)
 したがって、上記実施形態によれば、ユーザは、第2の入力とは異なる第3の入力によって、オブジェクトに対する操作を行うことができる。これによれば、情報処理装置は、より多様な操作をユーザに行わせることができる。なお、第3の入力は、第1の入力と同じ入力であってもよい。換言すれば、端末装置2は、第3の入力を、第1の移動操作のタッチ入力として取り扱うとともに、第2の入力の条件となる第1の入力として取り扱ってもよい(後述する、“(第1の入力に関する変形例)”を参照)。また、第3の入力は、第1の入力とは異なる入力であってもよい。換言すれば、端末装置2は、第3の入力を、第2の入力の条件となる第1の入力として取り扱わなくてもよい。
 なお、他の実施形態においては、第1移動処理の対象となるオブジェクトと、第3処理の対象となるオブジェクトとは、異なるオブジェクトであってもよい。また、第3処理は、オブジェクトを移動させる処理に限らず、オブジェクトに所定の動作を行わせる処理であってもよい。例えば、他の実施形態においては、第1移動処理の対象となるオブジェクトは、弓を持ったキャラクタのオブジェクトであり、第3処理の対象となるオブジェクトは、弓から発射される矢のオブジェクトであってもよい。このとき、情報処理装置は、第1移動処理によってキャラクタを移動させ、第3処理によって、弓を引き絞ってから矢を発射させる処理(換言すれば、矢を移動させる処理)を実行してもよい。なお、このとき、ユーザは、例えば、基準位置から入力位置を移動させることによって弓を引き絞る操作を行い、タッチ入力を終了することで矢を発射する操作を行う。
 また、上記実施形態においては、上記第3処理として、第1移動処理とは異なる制御方法で(第1移動処理と同じ)オブジェクトを移動させる処理が実行される。したがって、上記実施形態によれば、ユーザは、第1の入力後の第2の入力によってオブジェクトの移動操作を行うことができるとともに、第3の入力によって、第2の入力による移動操作とは異なる制御方法でオブジェクトを移動させることができる。これによれば、ユーザは、第1の入力を行うか否かという簡易な方法で2種類の移動操作を使い分けることができるので、移動操作の操作性を向上することができる。また、上記実施形態によれば、第1の入力(より具体的には、タップ操作)というシンプルな操作によって2種類の移動操作が区別される。そのため、情報処理装置は、ユーザが2種類の移動操作のうちで意図しない方の移動操作を誤って行ってしまう可能性を低減することができ、また、ユーザは、第2の入力による移動操作を迅速に行うことができる。
(第1の入力に関する変形例)
 上記実施形態においては、第2の入力(すなわち、第2の移動操作)の条件となる第1の入力は、タップ操作のためのタッチ入力であった。ここで、他の実施形態においては、第1の入力は、第1の移動操作のためのタッチ入力であってもよい。
 図17は、第1の移動操作に続けて第2の移動操作を行う操作の一例を示す図である。図17に示す例においては、タイミングt11において第1の移動操作のためのタッチ入力が終了し、タイミングt11から時間T2以内のタイミングt12において次のタッチ入力が開始される。このとき、端末装置2は、次のタッチ入力が開始されたことに応じて、当該タッチ入力による操作が第2の移動操作であると判定してもよい。つまり、端末装置2は、上記次のタッチ入力の開始に応じて、基準位置の設定処理およびドリフト状態への遷移処理を実行し、ドリフト状態であるオブジェクトの移動制御を開始してもよい。
 このように、他の実施形態においては、第2の入力の条件となる第1の入力は、第1の移動操作のタッチ入力であってもよい。つまり、端末装置2は、上述の第3の入力(すなわち、第1の移動操作のための入力)を第1の入力(すなわち、第2の入力の条件となる入力)として取り扱ってもよい。なお、他の実施形態においては、上記のタップ操作のタッチ入力と第1の移動操作のタッチ入力との両方を第1の入力としてもよいし、第1の移動操作のタッチ入力のみを第1の入力として用いてもよい。また、他の実施形態においては、端末装置2は、タップ操作と第1の移動操作とを区別しなくてもよい。すなわち、端末装置2は、前に行われた入力のタッチオフのタイミングから上記時間T2よりも経過してから開始された入力(換言すれば、第2の入力ではない入力)を、タッチオンからタッチオフまでの入力時間の長さに関係なく、第1の移動操作のための入力と判定してもよい。
(ゲーム内容に関する変形例)
 他の実施形態においては、端末装置2において実行されるゲームの内容は、レースゲームに限らず、任意の内容のゲームであってよい。例えば、他の実施形態においては、端末装置2において実行されるゲームは、射撃ゲームにおけるオブジェクト(すなわち、プレイヤキャラクタ)を、ポインティングデバイスに対する入力によって操作するゲームであってもよい。このとき、端末装置2は、各移動操作およびタップ操作を、射撃に関する動作をオブジェクトに行わせる処理に適用することができる。具体的には、端末装置2は、第1の移動操作に応じて照準を移動させるとともに、第1の移動操作のタッチオフに応じて弾を発射させる。また、端末装置2は、タップ操作に応じて、パワーを溜める動作をオブジェクトに開始させ、タップ操作に続く第2の移動操作に応じて、照準を移動させるとともに、第2の移動操作のタッチオフに応じて弾を発射させる。上記のゲーム例によれば、ユーザは、オブジェクトに射撃動作を行わせるための操作において、タップ操作の有無によって、パワーを溜めてから弾を発射するか否かを使い分けることができる。
 上記実施形態は、ポインティングデバイスを用いて多様なゲーム操作を可能とすること等を目的として、例えばゲームプログラムやゲーム装置等として利用することができる。
 1 サーバ
 2 端末装置
 21 処理部
 22 記憶部
 23 タッチパネル
 24 表示部
 25 通信部
 31 オブジェクト
 32 操作画像

Claims (11)

  1.  情報処理装置のコンピュータに、
     ポインティングデバイスによって検出された入力位置を繰り返し取得する取得ステップと、
     前記ポインティングデバイスに対する第1の入力の終了後において、当該第1の入力から第1時間内に行われる第2の入力に応じて、仮想ゲーム空間における第1オブジェクトに対する第1処理を実行する第1処理実行ステップと、
     前記ポインティングデバイスに対する前記第2の入力が開始されたときの入力位置に基づいて基準位置を設定する第1基準位置設定ステップと、
     前記基準位置と、前記ポインティングデバイスに対する第2の入力が開始されてから継続して行われる入力の入力位置とに基づいて、前記仮想ゲーム空間において前記第1オブジェクトを移動させる第1移動処理を実行する第1移動処理ステップとを実行させる、ゲームプログラム。
  2.  前記第1処理実行ステップにおいては、前記第1の入力の開始または終了に基づくタイミングから、前記第2の入力が開始されたタイミングまでの時間が前記第1時間内であることを少なくとも条件として前記第1処理が実行される、請求項1に記載のゲームプログラム。
  3.  前記第1処理実行ステップにおいては、前記第1の入力が行われた位置と、前記第2の入力が行われた位置との距離が所定値以下であることを少なくとも条件として前記第1処理が実行される、請求項1または請求項2に記載のゲームプログラム。
  4.  前記第2の入力が開始されてから継続して行われる入力が所定の条件を満たす場合、前記第1処理とは異なる処理であって、前記第1オブジェクトに対する第2処理を実行する第2処理実行ステップを、前記コンピュータにさらに実行させる、請求項1から請求項3のいずれか1項に記載のゲームプログラム。
  5.  前記第2の入力とは異なる入力であって、前記ポインティングデバイスに対する第3の入力に関する入力位置に基づいて基準位置を設定する第2基準位置設定ステップと、
     前記基準位置と、前記第3の入力が開始されてから継続して行われる入力の入力位置とに基づいて、前記第1移動処理とは異なる処理であって、前記第1オブジェクトと同じまたは異なる第2オブジェクトに対する第3処理を実行する第3処理実行ステップとを、前記コンピュータにさらに実行させる、請求項1から請求項4のいずれか1項に記載のゲームプログラム。
  6.  前記第2オブジェクトは、前記第1オブジェクトと同じであり、
     前記第3処理実行ステップにおいては、前記第3処理として、前記第1移動処理とは異なる制御方法で前記第2オブジェクトを移動させる処理が実行される、請求項5に記載のゲームプログラム。
  7.  前記ポインティングデバイスに対する入力であって、前記第2の入力とは異なる入力が開始されてから終了されるまでの入力時間が所定の第2時間内であるか否かを判定する判定ステップを前記コンピュータにさらに実行させ、
     前記第1処理実行ステップにおいては、前記入力時間が前記第2時間内であると判定される入力を前記第1の入力として、当該第1の入力後の前記第2の入力に応じて前記第1処理が実行され、
     前記第3処理実行ステップにおいては、前記入力時間が前記第2時間内でないと判定される入力を前記第3の入力として前記第3処理が実行される、請求項5または請求項6に記載のゲームプログラム。
  8.  前記第1の入力に応じて前記第1オブジェクトに所定の動作を行わせる第4処理を実行する第4処理実行ステップを、前記コンピュータにさらに実行させる、請求項1から請求項7のいずれか1項に記載のゲームプログラム。
  9.  ポインティングデバイスによって検出された入力位置を繰り返し取得する取得手段と、
     前記ポインティングデバイスに対する第1の入力の終了後において、当該第1の入力から第1時間内に行われる第2の入力に応じて、仮想ゲーム空間における第1オブジェクトに対する第1処理を実行する第1処理実行手段と、
     前記ポインティングデバイスに対する前記第2の入力が開始されたときの入力位置に基づいて基準位置を設定する第1基準位置設定手段と、
     前記基準位置と、前記ポインティングデバイスに対する第2の入力が開始されてから継続して行われる入力の入力位置とに基づいて、前記仮想ゲーム空間において前記第1オブジェクトを移動させる第1移動処理を実行する第1移動処理手段とを備える、情報処理装置。
  10.  ポインティングデバイスによって検出された入力位置を繰り返し取得する取得手段と、
     前記ポインティングデバイスに対する第1の入力の終了後において、当該第1の入力から第1時間内に行われる第2の入力に応じて、仮想ゲーム空間における第1オブジェクトに対する第1処理を実行する第1処理実行手段と、
     前記ポインティングデバイスに対する前記第2の入力が開始されたときの入力位置に基づいて基準位置を設定する第1基準位置設定手段と、
     前記基準位置と、前記ポインティングデバイスに対する第2の入力が開始されてから継続して行われる入力の入力位置とに基づいて、前記仮想ゲーム空間において前記第1オブジェクトを移動させる第1移動処理を実行する第1移動処理手段とを備える、情報処理システム。
  11.  情報処理システムにおいて実行されるゲーム処理方法であって、
     ポインティングデバイスによって検出された入力位置を繰り返し取得する取得ステップと、
     前記ポインティングデバイスに対する第1の入力の終了後において、当該第1の入力から所定の第1時間内に行われる第2の入力に応じて、仮想ゲーム空間における第1オブジェクトに対する第1処理を実行する第1処理実行ステップと、
     前記ポインティングデバイスに対する前記第2の入力が開始されたときの入力位置に基づいて基準位置を設定する第1基準位置設定ステップと、
     前記基準位置と、前記ポインティングデバイスに対する第2の入力が開始されてから継続して行われる入力の入力位置とに基づいて、前記仮想ゲーム空間において前記第1オブジェクトを移動させる第1移動処理を実行する第1移動処理ステップとを含む、ゲーム処理方法。
PCT/JP2017/019056 2017-05-22 2017-05-22 ゲームプログラム、情報処理装置、情報処理システム、および、ゲーム処理方法 WO2018216079A1 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2019519822A JP7083822B2 (ja) 2017-05-22 2017-05-22 ゲームプログラム、情報処理装置、情報処理システム、および、ゲーム処理方法
EP17905004.2A EP3449985B1 (en) 2017-05-22 2017-05-22 Game program, information processing device, information processing system, and game processing method
CN201780091070.4A CN110662587B (zh) 2017-05-22 2017-05-22 游戏程序、信息处理装置、信息处理系统以及游戏处理方法
PCT/JP2017/019056 WO2018216079A1 (ja) 2017-05-22 2017-05-22 ゲームプログラム、情報処理装置、情報処理システム、および、ゲーム処理方法
US16/688,156 US11117048B2 (en) 2017-05-22 2019-11-19 Video game with linked sequential touch inputs

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2017/019056 WO2018216079A1 (ja) 2017-05-22 2017-05-22 ゲームプログラム、情報処理装置、情報処理システム、および、ゲーム処理方法

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US16/688,156 Continuation US11117048B2 (en) 2017-05-22 2019-11-19 Video game with linked sequential touch inputs

Publications (1)

Publication Number Publication Date
WO2018216079A1 true WO2018216079A1 (ja) 2018-11-29

Family

ID=64396333

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2017/019056 WO2018216079A1 (ja) 2017-05-22 2017-05-22 ゲームプログラム、情報処理装置、情報処理システム、および、ゲーム処理方法

Country Status (5)

Country Link
US (1) US11117048B2 (ja)
EP (1) EP3449985B1 (ja)
JP (1) JP7083822B2 (ja)
CN (1) CN110662587B (ja)
WO (1) WO2018216079A1 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109513210B (zh) * 2018-11-28 2021-02-12 腾讯科技(深圳)有限公司 虚拟世界中的虚拟车辆漂移方法、装置及存储介质
CN109999499B (zh) * 2019-04-04 2021-05-14 腾讯科技(深圳)有限公司 对象控制方法和装置、存储介质及电子装置
CN110013671B (zh) * 2019-05-05 2020-07-28 腾讯科技(深圳)有限公司 动作执行方法和装置、存储介质及电子装置
CN110090443B (zh) * 2019-05-24 2021-03-16 腾讯科技(深圳)有限公司 虚拟对象控制方法和装置、存储介质及电子装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1195650A (ja) * 1997-09-22 1999-04-09 Casio Comput Co Ltd 生物画像表示制御装置、生物画像表示制御方法、及び生物画像表示処理プログラムを記録した記録媒体
JP2002000939A (ja) * 2000-06-19 2002-01-08 Sega Corp 電子ゲーム装置、その方法及び記憶媒体
JP2012252587A (ja) * 2011-06-03 2012-12-20 Nintendo Co Ltd 入力処理プログラム、入力処理装置、入力処理方法および入力処理システム
JP2013127683A (ja) 2011-12-16 2013-06-27 Namco Bandai Games Inc プログラム、情報記憶媒体、端末、サーバ及びネットワークシステム
JP2016120131A (ja) * 2014-12-25 2016-07-07 株式会社バンダイナムコエンターテインメント ゲームシステム及びサーバ
JP6097427B1 (ja) * 2016-02-29 2017-03-15 株式会社コロプラ ゲームプログラム

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090143141A1 (en) 2002-08-06 2009-06-04 Igt Intelligent Multiplayer Gaming System With Multi-Touch Display
US7309287B2 (en) 2003-12-10 2007-12-18 Nintendo Co., Ltd. Game machine having display screen with touch panel
US7578742B2 (en) 2004-03-26 2009-08-25 Nintendo Co., Ltd. Recording medium storing video game program and video game device
JP3734819B1 (ja) 2004-07-26 2006-01-11 任天堂株式会社 ゲームプログラム、ゲーム装置、および入力装置
JP3734820B1 (ja) 2004-09-03 2006-01-11 任天堂株式会社 ゲームプログラム、ゲーム装置、および入力装置
JP2006146556A (ja) 2004-11-19 2006-06-08 Nintendo Co Ltd 画像表示処理プログラムおよび画像表示処理装置
JP2006192246A (ja) 2004-12-13 2006-07-27 Nintendo Co Ltd ゲーム装置およびゲームプログラム
JP4322225B2 (ja) 2005-04-26 2009-08-26 任天堂株式会社 ゲームプログラムおよびゲーム装置
JP4819467B2 (ja) 2005-10-04 2011-11-24 任天堂株式会社 オブジェクト移動制御プログラムおよび情報処理装置
JP5133515B2 (ja) * 2005-11-14 2013-01-30 任天堂株式会社 ゲーム装置およびゲームプログラム
JP5204381B2 (ja) * 2006-05-01 2013-06-05 任天堂株式会社 ゲームプログラム、ゲーム装置、ゲームシステム及びゲーム処理方法
JP2008264297A (ja) 2007-04-23 2008-11-06 Namco Bandai Games Inc ゲームシステム、プログラム及び情報記憶媒体
JP5269745B2 (ja) 2009-10-30 2013-08-21 任天堂株式会社 オブジェクト制御プログラム、オブジェクト制御装置、オブジェクト制御システム及びオブジェクト制御方法
KR101116221B1 (ko) 2010-04-27 2012-03-06 동서대학교산학협력단 터치 궤적 기반의 멀티 터치 제스처 인식 시스템 및 그 방법
JP6184658B2 (ja) 2010-08-20 2017-08-23 任天堂株式会社 ゲームシステム、ゲーム装置、ゲームプログラム、および、ゲーム処理方法
JP5943553B2 (ja) 2011-05-23 2016-07-05 任天堂株式会社 ゲームシステム、ゲーム装置、ゲームプログラム、およびゲーム処理方法
JP5943554B2 (ja) 2011-05-23 2016-07-05 任天堂株式会社 ゲームシステム、ゲーム装置、ゲームプログラム、およびゲーム処理方法
US8678927B2 (en) 2011-10-04 2014-03-25 Microsoft Corporation Game controller on mobile touch-enabled devices
KR101216307B1 (ko) 2012-06-08 2012-12-28 (주)네오위즈게임즈 패턴 입력을 통한 캐릭터 조작 방법 및 장치
KR101398086B1 (ko) 2012-07-06 2014-05-30 (주)위메이드엔터테인먼트 온라인 게임에서의 유저 제스처 입력 처리 방법
US9884257B2 (en) 2013-03-06 2018-02-06 Tencent Technology (Shenzhen) Company Limited Method for preventing misoperations of intelligent terminal, and intelligent terminal
JP2014207648A (ja) * 2013-04-12 2014-10-30 株式会社シグミックス 主に文字や記号を入力処理するためのキーボード
CN104166468A (zh) 2013-05-17 2014-11-26 环达电脑(上海)有限公司 触控屏幕装置
US10549180B2 (en) * 2013-09-30 2020-02-04 Zynga Inc. Swipe-direction gesture control for video games using glass input devices
JP6390277B2 (ja) 2014-09-02 2018-09-19 ソニー株式会社 情報処理装置、制御方法、およびプログラム
JP5735696B1 (ja) 2014-11-05 2015-06-17 株式会社 ディー・エヌ・エー ゲームプログラム、及び、情報処理装置
JP2016134052A (ja) * 2015-01-21 2016-07-25 株式会社コロプラ インターフェースプログラム及びゲームプログラム
JP2016218774A (ja) * 2015-05-21 2016-12-22 株式会社コロプラ プログラム
CN105094613B (zh) * 2015-08-03 2017-10-20 努比亚技术有限公司 终端控制装置及方法
JP6005831B1 (ja) * 2015-12-28 2016-10-12 株式会社Cygames プログラム及び情報処理方法
CN105872664A (zh) 2016-03-31 2016-08-17 李强 触屏游戏操控方法、装置和系统

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1195650A (ja) * 1997-09-22 1999-04-09 Casio Comput Co Ltd 生物画像表示制御装置、生物画像表示制御方法、及び生物画像表示処理プログラムを記録した記録媒体
JP2002000939A (ja) * 2000-06-19 2002-01-08 Sega Corp 電子ゲーム装置、その方法及び記憶媒体
JP2012252587A (ja) * 2011-06-03 2012-12-20 Nintendo Co Ltd 入力処理プログラム、入力処理装置、入力処理方法および入力処理システム
JP2013127683A (ja) 2011-12-16 2013-06-27 Namco Bandai Games Inc プログラム、情報記憶媒体、端末、サーバ及びネットワークシステム
JP2016120131A (ja) * 2014-12-25 2016-07-07 株式会社バンダイナムコエンターテインメント ゲームシステム及びサーバ
JP6097427B1 (ja) * 2016-02-29 2017-03-15 株式会社コロプラ ゲームプログラム

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
"Mario Kart DS Kanpeki Bakuso Guidebook, 1st ed.", 24 January 2006, ISBN: 475772618X, pages: 26, XP009515499 *
See also references of EP3449985A4
TOSHIAKI YASUDA: "E3 2012, GREE Shutten Booth Report 'METAL SLUG', 'Biohazard' Nado Shinsaku Title o Ikkyo ni Taiken = [E3 2012, Glee exhibition booth report "METAL SLUG", "Resident Evil" and other new titles at once]", WACKY MORTORS, 8 June 2012 (2012-06-08), pages 1 - 8, XP055614355, Retrieved from the Internet <URL:http://game.watch.impress.co.ip/docs/news/538861.html> *

Also Published As

Publication number Publication date
US20200086209A1 (en) 2020-03-19
EP3449985A1 (en) 2019-03-06
CN110662587A (zh) 2020-01-07
EP3449985A4 (en) 2020-02-12
JPWO2018216079A1 (ja) 2020-03-26
US11117048B2 (en) 2021-09-14
EP3449985B1 (en) 2024-05-01
CN110662587B (zh) 2024-01-23
JP7083822B2 (ja) 2022-06-13

Similar Documents

Publication Publication Date Title
JP6921192B2 (ja) ゲームプログラム、情報処理装置、情報処理システム、および、ゲーム処理方法
JP7150108B2 (ja) ゲームプログラム、情報処理装置、情報処理システム、および、ゲーム処理方法
KR102232032B1 (ko) 정보 처리 프로그램, 정보 처리 방법, 및 정보 처리 장치
US20190060767A1 (en) Shooting Game Control Method and Apparatus, Storage Medium, Processor, and Terminal
US10635184B2 (en) Information processing device, information processing method, and program
CN107249706B (zh) 游戏控制程序、游戏控制方法和游戏控制装置
JP7083822B2 (ja) ゲームプログラム、情報処理装置、情報処理システム、および、ゲーム処理方法
US20130217498A1 (en) Game controlling method for use in touch panel medium and game medium
US9229614B2 (en) Storage medium storing information processing program, information processing device, information processing system, and method for calculating specified position
CN113168281A (zh) 程序、电子装置和方法
JP2018068813A (ja) ゲーム方法およびゲームプログラム
KR102084581B1 (ko) 프로그램 및 휴대 단말
JP2015153197A (ja) ポインティング位置決定システム
JP2019013297A (ja) ゲームプログラム、記録媒体、方法および情報処理装置
JP6554220B1 (ja) プログラム、処理装置及び処理方法
JP6190505B1 (ja) ゲームプログラム、記録媒体、方法および情報処理装置
CN115708953A (zh) 游戏中控件的控制方法、装置以及触控终端
JP2018033950A (ja) ゲームプログラム、記録媒体、方法および情報処理装置

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 2017905004

Country of ref document: EP

ENP Entry into the national phase

Ref document number: 2017905004

Country of ref document: EP

Effective date: 20181019

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 17905004

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2019519822

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE