Game program, game device, game system, and game processing method

The game program allows objects in a virtual space to be returned to their previous positions and orientations, addressing the limitation in existing technologies by incorporating user-controlled reversal movements and physical simulation, enhancing gameplay interaction.

JP7791370B2Active Publication Date: 2025-12-23NINTENDO CO LTD
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
JP2025003903
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2025-01-10
Publication Date
2025-12-23
Estimated Expiration
2040-06-02

AI Technical Summary

Technical Problem

Existing game programs do not allow for the reversal of an object's movement in a virtual space, limiting the ability to return an object to its previous position and orientation.

Method used

A game program that controls a player character in a virtual space, stores the object's positions and postures over time, and allows the object to return to its previous position and orientation based on operational input, using parameters like velocity and angular acceleration to simulate physical laws, with the option to terminate the return movement upon user command.

Benefits of technology

Enables a unique gaming experience where objects can be returned to their previous positions and orientations, providing a smooth and interactive gameplay experience with the ability to interrupt or alter the return movement as needed.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007791370000001
    Figure 0007791370000001
  • Figure 0007791370000002
    Figure 0007791370000002
  • Figure 0007791370000003
    Figure 0007791370000003
Patent Text Reader

Abstract

To provide a game program, a game device, a game system, and a game processing method that while returning positions and postures of an object in a virtual space, make movement of the return available.SOLUTION: A game program makes parameters changed, the parameters related to motion to be used for virtual physical calculation, for a designated object selected on the basis of operation input, so as to perform return movement of returning retroactively in order to past positions and postures stored in the past in a memory from a time point of a start instruction based on the operation input; and, on the basis of the virtual physical calculation, makes a state in a virtual space including a player character, the designated object, and objects other than them updated.SELECTED DRAWING: Figure 12
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to a game program, a game device, a game system, and a game processing method for performing processing on an object in a virtual space. [Background technology]

[0002] Conventionally, there are game programs that utilize the movement of objects placed in a virtual space (for example, see Non-Patent Document 1). [Prior art documents] [Non-patent literature]

[0003] [Non-Patent Document 1] "The Legend of Zelda: Breath of the Wild", [online], Nintendo Co., Ltd., [Retrieved April 24, 2020], Internet (URL: https: / / www.nintendo.co.jp / zelda / index.html) Summary of the Invention [Problem to be solved by the invention]

[0004] However, in the game program disclosed in Non-Patent Document 1, it is not possible to use a movement to reverse an action of an object that moves in a virtual space.

[0005] Therefore, 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 the return movement to be used while returning the position and orientation of an object in a virtual space. [Means for solving the problem]

[0006] In order to achieve the above object, the present invention may adopt, for example, the following configurations: It should be understood that when interpreting the claims, the scope should be interpreted solely by the claims, and in the event of a contradiction between the claims and this section, the claims shall take precedence.

[0007] An example of a configuration of a game program of the present invention is executed by a computer included in an information processing device. The game program causes the computer to control a player character in a virtual space based on operation input from a user, stores in a memory the positions and postures of objects within a predetermined range in the virtual space over time, changes parameters related to motion used in virtual physical calculations for a designated object selected based on the operation input from among the objects, so that the designated object returns to the position and posture previously stored in the memory in chronological order from the time a start command was issued based on the operation input, and updates the state of the virtual space, including the player character, the designated object, and other objects, based on the virtual physical calculations.

[0008] Based on the above, it is possible to realize a game never before seen in which the position and orientation of an object in a virtual space can be returned and the returning motion can be used.

[0009] Furthermore, when the designated object is caused to move back, the target position and orientation may be a position and orientation that was stored in memory more recently depending on the progress of the return movement, and the velocity and angular velocity, or acceleration and angular acceleration, may be changed as parameters of the designated object so that the target position and orientation is achieved.

[0010] Based on the above, by moving the object to return using the velocity and angular velocity, or the acceleration and angular acceleration, it is possible to produce a movement that complies with the physical laws of the virtual space.

[0011] The position and orientation for each time may be stored in a memory for each frame, which is a unit time of display. Depending on the number of frames that have passed during the return movement, the position and orientation stored in a memory for an earlier frame may become the target.

[0012] According to the above, the object moves with the position and orientation stored for each unit time of display as a target, and therefore, the object can return and move smoothly.

[0013] The position and orientation for each time period may be stored in the memory for at least the most recent predetermined time period up until the start instruction.

[0014] According to the above, the object moves back based on the position and orientation stored for the most recent specified time period, so that the user can retrace the changes in the object's position and / or orientation that are stored.

[0015] Furthermore, the computer may further cause the designated object to make a return movement toward the position and posture stored in memory a predetermined time ago, or may terminate the return movement when an instruction to cancel the return movement is given by operational input.

[0016] Based on the above, the return movement of the object that has completed its scheduled movement and is ending can be interrupted in response to a user operation.

[0017] Furthermore, the computer may further place, in the virtual space, a path display object for indicating the movement path of the designated object when it makes a return movement, based on the position and orientation stored in the memory.

[0018] Based on the above, it is possible to present to the user a route along which the return movement is planned.

[0019] The position and orientation for each time period may also be stored in memory for each frame, which is the unit time of display, for at least the most recent predetermined time period up to the start instruction. When a designated object is selected based on an operation input, the computer may further place a path display object in the virtual space based on the position and orientation stored in the memory to indicate a movement path for the designated object during the return movement for the predetermined time period. In this case, when the designated object is caused to return based on the start instruction, the computer may change the velocity and angular velocity, or the acceleration and angular acceleration, as parameters of the designated object, so that the designated object reaches the target position and orientation, targeting a position and orientation stored in the memory in an earlier frame depending on the elapsed frames of the return movement. The computer may further cause the designated object to return to the position and orientation stored in the memory a predetermined time ago, or terminate the return movement when an instruction to cancel the return movement is given by operation input.

[0020] According to the above, the stored position and orientation for a predetermined period of time is updated even while the travel route is being displayed, so that the travel route can be gradually shortened from the oldest stored portion while the travel route is being displayed.

[0021] Furthermore, when the designated object makes a return movement toward a position and orientation stored in memory a predetermined time ago, the return movement may be terminated even if the virtual physical calculation results in the object not returning to the position and orientation stored in memory a predetermined time ago.

[0022] Based on the above, the return movement can be ended even in a state where the robot does not return to the position and posture stored a predetermined time before.

[0023] Furthermore, the computer may transition from a normal state in which selection of a specified object is not accepted to a selectable state in which selection of a specified object can be made based on a selection start instruction based on an operation input, and in the selectable state, an object that can be selected as the specified object may be drawn in a display mode different from that in the normal state.

[0024] Based on the above, it is possible to distinguish between objects that can be selected as the designated object to be moved back and presented to the user.

[0025] Furthermore, the computer may further control the virtual camera based on operational input, and when there is an object selectable as the designated object at the display position of the aiming target located at a predetermined position on the screen in the selectable state, the computer may select that object as the designated object, and when a selected designated object exists, the computer may start the return movement of the designated object when a start instruction is given.

[0026] Based on the above, it is possible to present to the user a target for selecting the designated object from among objects selectable as the designated object to be moved back.

[0027] Furthermore, each object may have preset state changes that it can transition between. The computer may further update the state in the virtual space based on a state change calculation that changes the state of the object in the virtual space in response to the player character's actions and the surrounding conditions, in addition to the physical calculation. The state change may occur even during return movement, regardless of the previous state.

[0028] According to the above, since the return movement does not return the object to its previous state, it is possible to realize a game that has never been seen before, which is different from a simple action of returning an object to a previous state.

[0029] The state change may include at least the disappearance of an object. When the designated object disappears during the return movement, the return movement may be terminated.

[0030] According to the above, if a state change occurs in which an object disappears during a return movement, the return movement is terminated, thereby realizing a game that has never been seen before, which differs from simply returning an object to the past.

[0031] The present invention may also be embodied in the form of a game device, a game system, and a game processing method. [Effects of the Invention]

[0032] According to the present invention, it is possible to realize a game never before seen in which the position and orientation of an object in a virtual space can be returned and the returning movement can be utilized. [Brief explanation of the drawings]

[0033] [Figure 1] FIG. 1 shows an example of a state in which the left controller 3 and the right controller 4 are attached to the main unit 2. [Figure 2] FIG. 10 shows an example of a state in which the left controller 3 and the right controller 4 are detached from the main unit 2. [Figure 3] Six-sided views showing an example of the main unit 2 [Figure 4] Six-sided diagram showing an example of the left controller 3 [Figure 5] Six-sided diagram showing an example of the right controller 4 [Figure 6] A block diagram showing an example of the internal configuration of the main unit 2. [Figure 7] A block diagram showing an example of the internal configuration of the main unit 2, the left controller 3, and the right controller 4. [Figure 8] A diagram showing an example of game play using a player character PC appearing in a virtual space. [Figure 9] FIG. 10 is a diagram showing an example of the state of the virtual space before a return movement is performed. [Figure 10] FIG. 10 is a diagram showing an example of displaying a movable object OBJm to be moved back. [Figure 11]FIG. 10 is a diagram showing an example of displaying a path display object T when a designated movable object OBJm is moved back. [Figure 12] FIG. 10 is a diagram showing an example of a state in which a designated movable object OBJm is being moved back. [Figure 13] FIG. 10 is a diagram showing an example of stored past placement data of a movable object OBJm. [Figure 14] FIG. 10 is a diagram showing an example of a data area set in the DRAM 85 of the main device 2 in this embodiment. [Figure 15] A flowchart showing an example of information processing executed by the game system 1. [Figure 16] A subroutine showing a detailed example of the return movement process performed in step S127 in FIG. DETAILED DESCRIPTION OF THE INVENTION

[0034] A game system according to an example of this embodiment will be described below. An example of a game system 1 according to this embodiment includes a main unit (information processing device; in this embodiment, it functions as a game device main unit) 2, a left controller 3, and a right controller 4, and also functions as an information processing system. The left controller 3 and the right controller 4 are each detachable from the main unit 2. In other words, the game system 1 can be used as an integrated device by attaching the left controller 3 and the right controller 4 to the main unit 2. The game system 1 can also be used as a separate unit from the main unit 2, the left controller 3, and the right controller 4 (see FIG. 2). Below, the hardware configuration of the game system 1 according to this embodiment will be described, followed by a description of the control of the game system 1 according to this embodiment.

[0035] FIG. 1 is a diagram showing an example of a state in which a left controller 3 and a right controller 4 are attached to a main unit 2. As shown in FIG. 1, the left controller 3 and the right controller 4 are each attached to and integrated with the main unit 2. The main unit 2 is a device that executes various processes (e.g., game processes) in the game system 1. The main unit 2 is equipped with a display 12. The left controller 3 and the right controller 4 are devices that have operation units that allow the user to perform inputs.

[0036] Fig. 2 is a diagram showing an example of the state in which the left controller 3 and the right controller 4 are detached from the main unit 2. As shown in Figs. 1 and 2, the left controller 3 and the right controller 4 are detachable from the main unit 2. Note that, below, the left controller 3 and the right controller 4 may be collectively referred to as "controllers."

[0037] Fig. 3 is a six-sided view showing an example of the main unit 2. As shown in Fig. 3, the main unit 2 includes a substantially plate-shaped housing 11. In this embodiment, the main surface of the housing 11 (in other words, the front surface, i.e., the surface on which the display 12 is provided) is generally rectangular.

[0038] The shape and size of the housing 11 are arbitrary. As an example, the housing 11 may be of a portable size. Furthermore, the main unit 2 alone or an integrated device in which the left controller 3 and right controller 4 are attached to the main unit 2 may be a portable device. Furthermore, the main unit 2 or the integrated device may be a handheld device. Furthermore, the main unit 2 or the integrated device may be a portable device.

[0039] 3, the main unit 2 includes a display 12 provided on the main surface of the housing 11. The display 12 displays images generated by the main unit 2. In this embodiment, the display 12 is a liquid crystal display (LCD). However, the display 12 may be any type of display device.

[0040] The main device 2 also includes a touch panel 13 on the screen of the display 12. In this embodiment, the touch panel 13 is of a type that allows multi-touch input (for example, a capacitance type). However, the touch panel 13 may be of any type, and may be of a type that allows single-touch input (for example, a resistive type).

[0041] The main unit 2 is provided with a speaker (i.e., speaker 88 shown in FIG. 6) inside the housing 11. As shown in FIG. 3, speaker holes 11a and 11b are formed on the main surface of the housing 11. The output sound of the speaker 88 is output from these speaker holes 11a and 11b, respectively.

[0042] The main unit 2 also has a left terminal 17, which is a terminal for the main unit 2 to communicate with the left controller 3 via a wired connection, and a right terminal 21, which is a terminal for the main unit 2 to communicate with the right controller 4 via a wired connection.

[0043] As shown in FIG. 3, the main unit 2 includes a slot 23. The slot 23 is provided on the upper side of the housing 11. The slot 23 has a shape that allows a predetermined type of storage medium to be inserted therein. The predetermined type of storage medium is, for example, a storage medium (e.g., a dedicated memory card) dedicated to the game system 1 and the same type of information processing device. The predetermined type of storage medium is used, for example, to store data used by the main unit 2 (e.g., application save data, etc.) and / or programs executed by the main unit 2 (e.g., application programs, etc.). The main unit 2 also includes a power button 28.

[0044] The main unit 2 has a lower terminal 27. The lower terminal 27 is a terminal through which the main unit 2 communicates with the cradle. In this embodiment, the lower terminal 27 is a USB connector (more specifically, a female connector). When the all-in-one device or the main unit 2 alone is placed on the cradle, the game system 1 can display images generated and output by the main unit 2 on a stationary monitor. In this embodiment, the cradle also has the function of charging the all-in-one device or the main unit 2 alone that is placed on it. The cradle also has the function of a hub device (specifically, a USB hub).

[0045] FIG. 4 is a six-sided view showing an example of the left controller 3. As shown in FIG. 4, the left controller 3 includes a housing 31. In this embodiment, the housing 31 has a vertically long shape, that is, a shape that is long in the up-down direction (i.e., the y-axis direction shown in FIGS. 1 and 4). The left controller 3 can also be held in a vertically long orientation when detached from the main unit 2. The housing 31 has a shape and size that allows it to be held in one hand, particularly the left hand, when held in a vertically long orientation. The left controller 3 can also be held in a horizontally long orientation. When the left controller 3 is held in a horizontally long orientation, it may be held with both hands.

[0046] The left controller 3 includes an analog stick 32. As shown in FIG. 4, the analog stick 32 is provided on the main surface of the housing 31. The analog stick 32 can be used as a direction input unit that can input directions. By tilting the analog stick 32, the user can input a direction corresponding to the tilt direction (and input a magnitude corresponding to the tilt angle). Note that instead of an analog stick, the left controller 3 may be equipped with a cross key or a slide stick that can perform slide inputs as a direction input unit. In this embodiment, input can be made by pressing the analog stick 32.

[0047] The left controller 3 is equipped with various operation buttons. The left controller 3 is equipped with four operation buttons 33 to 36 (specifically, a right button 33, a down button 34, an up button 35, and a left button 36) on the main surface of the housing 31. The left controller 3 also is equipped with a record button 37 and a - (minus) button 47. The left controller 3 is equipped with a first L button 38 and a ZL button 39 on the upper left of the side of the housing 31. The left controller 3 is also equipped with a second L button 43 and a second R button 44 on the side of the housing 31 that is attached to the main unit 2. These operation buttons are used to issue instructions according to various programs (for example, OS programs and application programs) executed on the main unit 2.

[0048] The left controller 3 also includes a terminal 42 for wired communication between the left controller 3 and the main unit 2.

[0049] FIG. 5 is a six-sided view showing an example of the right controller 4. As shown in FIG. 5, the right controller 4 includes a housing 51. In this embodiment, the housing 51 has a vertically long shape, that is, a shape that is long in the up-down direction. The right controller 4 can also be held in a vertically long orientation when detached from the main unit 2. The housing 51 has a shape and size that allows it to be held in one hand, particularly the right hand, when held in a vertically long orientation. The right controller 4 can also be held in a horizontally long orientation. When the right controller 4 is held in a horizontally long orientation, it may be held with both hands.

[0050] Like the left controller 3, the right controller 4 is equipped with an analog stick 52 as a directional input unit. In this embodiment, the analog stick 52 has the same configuration as the analog stick 32 of the left controller 3. The right controller 4 may also be equipped with a cross key or a slide stick that allows slide input, instead of an analog stick. Like the left controller 3, the right controller 4 is equipped with four operation buttons 53 to 56 (specifically, an A button 53, a B button 54, an X button 55, and a Y button 56) on the main surface of the housing 51. The right controller 4 is also equipped with a + (plus) button 57 and a home button 58. The right controller 4 is also equipped with a first R button 60 and a ZR button 61 on the upper right side of the housing 51. Like the left controller 3, the right controller 4 is also equipped with a second L button 65 and a second R button 66.

[0051] The right controller 4 also includes a terminal 64 for wired communication between the right controller 4 and the main unit 2.

[0052] Fig. 6 is a block diagram showing an example of the internal configuration of main unit 2. In addition to the configuration shown in Fig. 3, main unit 2 includes components 81-91, 97, and 98 shown in Fig. 6. Some of these components 81-91, 97, and 98 may be mounted on an electronic circuit board as electronic components and housed in housing 11.

[0053] The main unit 2 includes a processor 81. The processor 81 is an information processing unit that executes various types of information processing executed in the main unit 2, and may be composed of, for example, only a CPU (Central Processing Unit), or may be composed of an SoC (System-on-a-chip) that includes multiple functions such as a CPU function and a GPU (Graphics Processing Unit) function. The processor 81 executes various types of information processing by executing an information processing program (for example, a game program) stored in a storage unit (specifically, an internal storage medium such as flash memory 84, or an external storage medium inserted into slot 23, etc.).

[0054] The main device 2 includes a flash memory 84 and a DRAM (Dynamic Random Access Memory) 85 as examples of internal storage media built into the main device 2. The flash memory 84 and the DRAM 85 are connected to the processor 81. The flash memory 84 is a memory used primarily to store various types of data (which may be programs) saved in the main device 2. The DRAM 85 is a memory used to temporarily store various types of data used in information processing.

[0055] The main device 2 includes a slot interface (hereinafter abbreviated as "I / F") 91. The slot I / F 91 is connected to the processor 81. The slot I / F 91 is connected to the slot 23, and reads and writes data from and to a predetermined type of storage medium (e.g., a dedicated memory card) inserted into the slot 23 in accordance with instructions from the processor 81.

[0056] The processor 81 reads and writes data from and to the flash memory 84, DRAM 85, and the above-mentioned storage media as appropriate, to execute the above-mentioned information processing.

[0057] The main unit 2 includes a network communication unit 82. The network communication unit 82 is connected to the processor 81. The network communication unit 82 communicates with external devices via a network (specifically, wireless communication). In this embodiment, the network communication unit 82 connects to a wireless LAN and communicates with external devices using a method conforming to the Wi-Fi standard as a first communication mode. The network communication unit 82 also performs wireless communication with other main units 2 of the same type using a predetermined communication method (e.g., communication using a proprietary protocol or infrared communication) as a second communication mode. Note that wireless communication using the second communication mode enables wireless communication with other main units 2 located within a closed local network area, and realizes a function that enables so-called "local communication," in which data is transmitted and received by direct communication between multiple main units 2.

[0058] The main unit 2 is equipped with a controller communication unit 83. The controller communication unit 83 is connected to the processor 81. The controller communication unit 83 performs wireless communication with the left controller 3 and / or right controller 4. Any communication method may be used between the main unit 2 and the left controller 3 and right controller 4, but in this embodiment, the controller communication unit 83 performs communication with the left controller 3 and right controller 4 in accordance with the Bluetooth (registered trademark) standard.

[0059] The processor 81 is connected to the left terminal 17, right terminal 21, and lower terminal 27. When performing wired communication with the left controller 3, the processor 81 transmits data to the left controller 3 via the left terminal 17 and receives operation data from the left controller 3 via the left terminal 17. When performing wired communication with the right controller 4, the processor 81 transmits data to the right controller 4 via the right terminal 21 and receives operation data from the right controller 4 via the right terminal 21. When performing wired communication with the right controller 4, the processor 81 transmits data to the cradle via the lower terminal 27. As described above, in this embodiment, the main unit 2 can perform both wired and wireless communication with the left controller 3 and the right controller 4. When an integrated device in which the left controller 3 and the right controller 4 are attached to the main unit 2 or the main unit 2 alone is attached to the cradle, the main unit 2 can output data (e.g., image data and audio data) to a stationary monitor or the like via the cradle.

[0060] Here, the main unit 2 can communicate simultaneously (in other words, in parallel) with multiple left controllers 3. The main unit 2 can also communicate simultaneously (in other words, in parallel) with multiple right controllers 4. Therefore, multiple users can simultaneously input to the main unit 2 using their own sets of left controllers 3 and right controllers 4. For example, a first user can input to the main unit 2 using a first set of left controllers 3 and right controllers 4, while a second user can simultaneously input to the main unit 2 using a second set of left controllers 3 and right controllers 4.

[0061] The main device 2 includes a touch panel controller 86, which is a circuit that controls the touch panel 13. The touch panel controller 86 is connected between the touch panel 13 and the processor 81. Based on a signal from the touch panel 13, the touch panel controller 86 generates data indicating, for example, the position where a touch input was made, and outputs the data to the processor 81.

[0062] The display 12 is also connected to the processor 81. The processor 81 displays on the display 12 an image generated (for example, by executing the above-described information processing) and / or an image acquired from the outside.

[0063] The main unit 2 includes a codec circuit 87 and speakers (specifically, a left speaker and a right speaker) 88. The codec circuit 87 is connected to the speakers 88 and the audio input / output terminal 25, and is also connected to the processor 81. The codec circuit 87 is a circuit that controls the input and output of audio data to and from the speakers 88 and the audio input / output terminal 25.

[0064] The main device 2 includes a power control unit 97 and a battery 98. The power control unit 97 is connected to the battery 98 and the processor 81. Although not shown, the power control unit 97 is also connected to each part of the main device 2 (specifically, each part that receives power from the battery 98, the left terminal 17, and the right terminal 21). The power control unit 97 controls the power supply from the battery 98 to each of the above parts based on instructions from the processor 81.

[0065] Furthermore, battery 98 is connected to lower terminal 27. When an external charging device (e.g., a cradle) is connected to lower terminal 27 and power is supplied to main device 2 via lower terminal 27, battery 98 is charged with the supplied power.

[0066] Figure 7 is a block diagram showing an example of the internal configuration of the main unit 2, left controller 3, and right controller 4. Note that details of the internal configuration of the main unit 2 are omitted in Figure 7 because they are shown in Figure 6.

[0067] The left controller 3 is equipped with a communication control unit 101 that communicates with the main unit 2. As shown in FIG. 7 , the communication control unit 101 is connected to each component, including the terminal 42. In this embodiment, the communication control unit 101 can communicate with the main unit 2 both via wired communication via the terminal 42 and via wireless communication without using the terminal 42. The communication control unit 101 controls the method of communication between the left controller 3 and the main unit 2. That is, when the left controller 3 is attached to the main unit 2, the communication control unit 101 communicates with the main unit 2 via the terminal 42. When the left controller 3 is detached from the main unit 2, the communication control unit 101 communicates wirelessly with the main unit 2 (specifically, with the controller communication unit 83). Wireless communication between the controller communication unit 83 and the communication control unit 101 is performed in accordance with, for example, the Bluetooth (registered trademark) standard.

[0068] The left controller 3 also includes a memory 102, such as a flash memory. The communication control unit 101 is configured, for example, by a microcomputer (also called a microprocessor), and executes firmware stored in the memory 102 to perform various processes.

[0069] The left controller 3 includes buttons 103 (specifically, buttons 33 to 39, 43, 44, and 47). The left controller 3 also includes an analog stick (referred to as "stick" in FIG. 7) 32. Each button 103 and analog stick 32 repeatedly outputs information related to operations performed on the button 103 and analog stick 32 to the communication control unit 101 at appropriate timing.

[0070] The communication control unit 101 acquires information about the input (specifically, information about the operation or the detection results by the sensors) from each input unit (specifically, each button 103, analog stick 32, and each sensor 104 and 105). The communication control unit 101 transmits operation data including the acquired information (or information obtained by performing a predetermined process on the acquired information) to the main unit 2. The operation data is repeatedly transmitted once every predetermined time. The interval at which the information about the input is transmitted to the main unit 2 may or may not be the same for each input unit.

[0071] By transmitting the above operation data to the main unit 2, the main unit 2 can obtain the input made to the left controller 3. In other words, the main unit 2 can determine the operation of each button 103 and analog stick 32 based on the operation data.

[0072] The left controller 3 is equipped with a power supply unit 108. In this embodiment, the power supply unit 108 has a battery and a power control circuit. Although not shown, the power control circuit is connected to the battery and to each part of the left controller 3 (specifically, each part that receives power from the battery).

[0073] As shown in FIG. 7, the right controller 4 is equipped with a communication control unit 111 that communicates with the main unit 2. The right controller 4 also has a memory 112 that is connected to the communication control unit 111. The communication control unit 111 is connected to each component, including the terminal 64. The communication control unit 111 and memory 112 have the same functions as the communication control unit 101 and memory 102 of the left controller 3. Therefore, the communication control unit 111 can communicate with the main unit 2 both via wired communication via the terminal 64 and via wireless communication that does not use the terminal 64 (specifically, communication in accordance with the Bluetooth (registered trademark) standard), and controls the method of communication between the right controller 4 and the main unit 2.

[0074] The right controller 4 has input units similar to those of the left controller 3. Specifically, it has buttons 113 and an analog stick 52. These input units have the same functions as those of the left controller 3 and operate in the same manner.

[0075] The right controller 4 includes a processing unit 121. The processing unit 121 is connected to the communication control unit 111.

[0076] The right controller 4 is equipped with a power supply unit 118. The power supply unit 118 has the same functions as the power supply unit 108 of the left controller 3 and operates in the same manner.

[0077] As described above, in the game system 1 of this embodiment, the left controller 3 and right controller 4 are detachable from the main unit 2. Furthermore, by attaching an all-in-one device in which the left controller 3 and right controller 4 are attached to the main unit 2 or the main unit 2 alone to a cradle, it is possible to output images (and sounds) to an external display device such as a stationary monitor. Below, the game system 1 will be described using an all-in-one device in which the left controller 3 and right controller 4 are attached to the main unit 2.

[0078] In this way, game play is performed using the virtual space displayed on the display 12 in response to operations of the operation buttons and sticks on the left controller 3 and / or right controller 4 of the all-in-one game system 1, touch operations on the touch panel 13 of the main unit 2, operations to move the entire all-in-one device, etc. In this embodiment, as an example, game play using a player character in the virtual space and various objects placed in the virtual space is possible in response to user operations using the operation buttons, sticks, and touch panel 13.

[0079] An overview of the game processing performed in the game system 1 will be described using FIGS. 8 to 13. FIG. 8 is a diagram showing an example of game play using a player character PC appearing in a virtual space, as a game image displayed on the display 12 of the main unit 2. FIG. 9 is a diagram showing an example of the state of the virtual space before a return movement is performed. FIG. 10 is a diagram showing an example of displaying a movable object OBJm to be returned. FIG. 11 is a diagram showing an example of displaying a path display object T when a specified movable object OBJm is returned. FIG. 12 is a diagram showing an example of a state in which a specified movable object OBJm is being returned. FIG. 13 is a diagram showing an example of stored past position data of a movable object OBJm. In the following description, a game is used as an example of an application executed in the game system 1, but other applications may also be executed in the game system 1.

[0080] 8, a game image in which a player character PC and a plurality of objects OBJ are arranged in a virtual space is displayed on the display 12 of the game system 1. For example, the player character PC arranged in the virtual space in this embodiment moves in response to a user's operation on the game system 1. Furthermore, the objects OBJ arranged in the virtual space in this embodiment are divided into movable objects OBJm, whose positions can be moved and whose postures can be changed, and fixed objects OBJf, whose positions cannot be moved and whose postures cannot be changed, in the virtual space. As an example, the movable objects OBJm are objects that are moved or whose states change in response to the actions of the player character PC, and the fixed objects OBJf are objects such as terrain, buildings, and trees that cannot be moved by the actions of the player character PC.

[0081] In this embodiment, the player character PC can move a movable object OBJm and can change the situation in the virtual space using the moving movable object OBJm. Furthermore, in this embodiment, the player character PC has the ability to return a movable object OBJm that has moved naturally or been moved by the player character PC in the virtual space to its position a predetermined time ago. Note that the return movement restores the original movement of the movable object OBJm designated by the user operating the player character PC, but does not restore the state of the movable object OBJm to which it transitioned as a result of the movement. For example, when the user returns a movable object OBJm designated by the user, the position and orientation of the object can be restored, but the state of the object itself or its contents prior to the return movement cannot be restored, and the effects of the movable object OBJm on other objects prior to the return movement cannot be restored. Here, the possible transition states set for the movable object OBJm can be various, depending on the material of the object, such as damage, burning, electricity resistance, leakage, freezing, disappearance, etc., and the above-mentioned return movement does not return to a past state up to such a transition state, but rather a transition process is performed that changes the state regardless of the past state even during the return movement.

[0082] 9, before the user operating the player character PC performs an operation to instruct a return movement, the player character PC, three movable objects OBJm1 to OBJm3, and two fixed objects OBJf1 and OBJf2 are arranged in the virtual space displayed on the display 12. Then, by performing a predetermined operation, the user can cause at least one of the movable objects OBJm that moved immediately before (a predetermined time ago (e.g., 20 seconds ago)) to return by reversing the path of that movement.

[0083] In Fig. 10, when a user performs an operation to instruct the start of selection of an object to be returned to (an operation to start a return movement action), the game mode is transitioned from a normal state in which selection of an object to be returned to (a designated object) is not accepted to a selectable state in which selection is possible, based on the instruction. Then, in the selectable state, objects that can be selected as targets for return movement are drawn in a display manner different from that in the normal state. As an example, in the example of Fig. 10, the color of the entire object is changed so that the objects that can be selected as targets for return movement are drawn in a display manner different from that in the normal state.

[0084] Here, the movable object OBJm can be moved back and is an object that can be selected as a target for the movement back. Therefore, in this embodiment, when the game mode transitions to the selectable state, the display mode of the movable object OBJm among the objects arranged in the virtual space changes. This allows the user to perceive the options for the object that can be designated as a target for the movement back as distinct from other objects.

[0085] 11, when an object (movable object OBJm) that can be selected as a target for restoration and movement is drawn in a display mode different from the normal state, a cursor C is displayed as a sight for selecting and specifying an object to be restored and moved from among the objects. The cursor C may be displayed fixedly at a predetermined position on the display 12 (for example, the center of the screen), or may be displayed at an arbitrary position on the display 12 in response to a user operation. In the former case, the user can superimpose the cursor C at an arbitrary position in the virtual space by changing the position and / or attitude of a virtual camera for controlling the display range displayed on the display 12 in response to a user operation.

[0086] When one of the objects (movable objects OBJm) that can be selected as a target for return movement is placed in a position overlapping with the display position of cursor C, that object is designated as a designated object to be returned. For example, in the example of Fig. 11, movable object OBJm1 is placed overlapping with the display position of cursor C, and therefore, of the multiple movable objects OBJm1 to OBJm that are displayed, movable object OBJm1 is designated as the designated object.

[0087] When a designated object is designated in this manner, a path display object T is placed and displayed in virtual space, indicating the path of movement of the designated object as it returns. The path display object T is a trajectory effect that indicates the positions through which the designated object will return and the movement of the designated object as it returns. When the designated object starts its return movement, the path along which the designated object will move and the orientation of the designated object during the return movement are displayed. In this embodiment, the positions and orientations of each movable object OBJm for a predetermined period of time going back from the current time are stored, and the path display object T is generated based on this storage. That is, in the example shown in FIG. 11 , it can be said that the movable object OBJm1 was located at the position of the return orientation object Pe a predetermined time before it was designated, and that it has moved from there to its current position by tracing the path indicated by the path display object T in the reverse direction.

[0088] For example, the return movement of the designated object is performed by replaying the movement of the designated object from the current time point up to a predetermined time ago (for example, 20 seconds ago) in reverse from the current time point. Therefore, the path display object T shows the movement path of the return movement that is performed by reversing the movement of the designated object from the predetermined time ago to the current time point from the current time point to the predetermined time ago.

[0089] Therefore, when a designated object is designated as described above, if more than the predetermined time has already passed since the designated object last moved, there is no path for the designated object to return to, and therefore the path display object T for the designated object is not displayed. Even when a path display object T for the designated object is displayed in response to the designation of the designated object as described above, if the designated object was in the middle of its movement at the time before the predetermined time from the current time, the path displayed by the path display object T will only extend up to that intermediate position. Furthermore, even when a path display object T for the designated object is displayed in response to the designation of the designated object as described above, the path available for the designated object to return to may become gradually shorter as time passes while the path display object T is displayed in a standby state. In this way, the memory of the position and orientation for the predetermined time is continuously updated even while the path display object T is displayed, and the older stored path in the path display object T is erased while the path display object T is displayed, resulting in a gradual change in the path.

[0090] Note that the position and orientation of each movable object OBJm for a predetermined period of time may be stored only for the period while the movable object OBJm is moving. In this case, even if more than the predetermined period of time has elapsed since the movable object OBJm last moved, the changes in position and orientation of the movable object OBJm at the time of the last movement are stored. Therefore, in this example, when a designated object is designated, even if more than the predetermined period of time has already elapsed since the designated object last moved, a path for the designated object to return to exists, and a path display object T for the designated object is displayed.

[0091] Furthermore, the posture of the designated object during the return movement displayed by the path display object T shows the state at each predetermined time interval during the return movement and the final state after the return movement. For example, in the example of Fig. 11, return posture objects P1, P2, and P3 showing the postures of the designated object at three points in time during the return movement are displayed in the path display object T. Furthermore, in the example of Fig. 11, a return posture object Pe showing the final position and final posture of the designated object after the return movement is displayed in the path display object T.

[0092] 12, when an operation to instruct the designated object to start moving backward is performed, the designated object starts moving backward so as to play back its previous movement in reverse. Specifically, the designated object is moved backward in time based on data indicating its position in time series from the present time to a predetermined time ago (position data) and data indicating its attitude (attitude data) that are stored in each movable object OBJm.

[0093] As shown in FIG. 13 , the position data PD and the orientation data AD indicating the time-series positioning from the current time to a predetermined time ago indicate the position and orientation of each movable object OBJm corresponding to the elapsed time t up to the current time. In this embodiment, data indicating the time-series position and orientation from the current time to a predetermined time ago (e.g., 20 seconds ago (elapsed time tmax)) (i.e., time-series data up to the most recent predetermined time up to the current time) is stored for each frame, which is the unit time of display. Note that the time interval for storing the position data and orientation data does not have to be every frame, and may be other time intervals (e.g., every second). Note that the data indicating the time-series position and orientation from the current time to a predetermined time ago may be stored for objects located within a predetermined range in the virtual space. For example, the position data PD and the orientation data AD may be stored for objects displayed on the display 12, objects located within a predetermined distance from the player character PC, or objects located in one of multiple game worlds or game stages in which the player character PC is located.

[0094] In this embodiment, when the designated object is caused to return to a position and orientation stored in the past, tracing back from the time when the operation to start the return movement was performed. For example, as the return movement progresses, the most recent positions and orientations stored in the past are sequentially set as the target for the return movement. Then, as the return movement progresses, parameters related to the movement used in virtual physics calculations to return the designated object to the target position and orientation set at each time point are calculated, and the designated object is returned to the target using these parameters. As an example, the parameters are data indicating the velocity and angular velocity to be applied to the designated object in order to return to the target set at that time. As another example, the parameters may be data indicating the acceleration and angular acceleration to be applied to the designated object in order to return to the target set at that time point.

[0095] Note that even when the designated object makes a return movement, the designated object does not simply return to a previous state. In other words, the return movement does not return the designated object to a previous state to which it can transition. Here, the state of the virtual space, including each character and object, including the player character PC, is updated based on virtual physics calculations. In addition to the physics calculations, the state of the virtual space is updated based on state change calculations that change the state of objects in the virtual space in response to the actions of each character, including the player character PC, and the surrounding conditions. Such state changes of objects, including the designated object, occur regardless of the previous state of the designated object, even when the designated object is making a return movement.

[0096] In the above-described return movement, at the start of the return movement, parameters related to movement are calculated using the most chronologically recent position and orientation stored in the past (if data is stored for each frame, the position and orientation stored one frame before) as the return movement target from the current position and orientation of the designated object, and the designated object makes the return movement using these parameters. Furthermore, once the designated object has moved to the target, parameters related to movement are calculated using the next most chronologically recent position and orientation stored in the past (if data is stored for each frame, the position and orientation stored one frame before) as a new return movement target, and the designated object makes the return movement using these parameters. Then, when the designated object reaches the final return movement target, which is the most chronologically recent position and orientation stored in the past (i.e., the position and orientation stored a predetermined time ago, that is, the position and orientation stored at elapsed time tmax), the designated object is placed in a stopped state at the target, and the return movement ends.

[0097] 12, it is possible to continue displaying the path display object T even while the designated object is moving back. In this case, the path portion along which the designated object has already moved back is erased, and only the path along which the designated object will move back from now on is continuously displayed.

[0098] Also, a remaining time gauge G indicating the remaining time of the return movement may be displayed while the designated object is making a return movement. In this case, the remaining time gauge G displays the remaining time at full scale (maximum scale) at the start of the return movement, and at each subsequent return movement, the remaining gauge amount is reduced according to the elapsed time of the return movement.

[0099] Here, during the return movement using the above parameters, it is possible that the designated object will not reach the movement target set at that time. For example, the designated object may not reach the movement target due to an obstacle such as a collision with another object or character during the return movement, or the designated object may be affected by the environment in the virtual space during the return movement. Even if the timing for setting the next movement target for the designated object comes when the designated object has not yet reached the movement target set at that time, parameters related to the movement of the designated object to move to the next movement target in that situation are calculated, and the designated object makes the return movement using these parameters. In other words, the return movement process continues even if the designated object encounters an obstacle during the return movement. This means that the player can interfere with the return movement, which can be utilized in gameplay, such as moving the player character using the return movement.

[0100] When a designated object collides with another object or character during its return movement, the state, existence, position, posture, etc. of at least one of the colliding objects may change. For example, the state of at least one of the above objects may change (including disappearance) due to damage caused by the collision, or the position and posture of at least one of the above objects may be affected depending on the motion parameters at the time of the collision.

[0101] Furthermore, when the return movement ends, the designated object may stop and be positioned at a position that was partway through the previous movement, and this position may be in a situation in which the designated object cannot stop, such as in the air in the virtual space. In this way, when the return movement ends at a position where the designated object cannot stop, the designated object may thereafter move from that position based on a physics calculation set in the virtual space. For example, when the designated object ends its return movement at a position in the air in the virtual space, the designated object may move so as to freely fall from that position in the air in the virtual space.

[0102] Furthermore, the return movement of the designated object may be configured to be terminated midway if a user operation indicating a cancellation of the return movement is performed during the return movement or depending on the state of the designated object during the return movement. In this case, the return movement is terminated even if the virtual physical calculation results in the designated object not returning to the position and orientation stored a predetermined time ago. When the return movement can be terminated midway in response to a user operation indicating a cancellation of the return movement, the return movement of the designated object is stopped midway in response to the user operation indicating the cancellation, and the designated object is brought to a standstill at that point. In this case, the designated object may move from the stopped position in accordance with the physical laws established in the virtual space after the return movement is stopped midway. Furthermore, if a state change occurs during the return movement that causes the designated object to disappear, the return movement may be terminated at that point, and the designated object may be erased from the virtual space. In this case, the return movement of the designated object may be terminated not only when the designated object reaches the position and orientation stored a predetermined time ago, but also when a user operation indicating a cancellation of the return movement is performed or when the designated object disappears during the return movement.

[0103] In this way, the designated object selected in response to a user operation moves backward in sequence based on parameters targeting the position and orientation for each of the most recent predetermined time periods stored over time. Note that the designated object is not forcibly returned to a past position and orientation; rather, it is merely given parameters for movement with the past position and orientation as the target. Because the actual behavior is determined based on physics calculations, the designated object may behave differently depending on the physics calculations when other game elements are added. That is, during the return movement, it is possible for the designated object to interfere with other objects and characters in the virtual space. That is, not only the designated object performing the return movement, but also other objects and characters in the virtual space similarly behave based on physics calculations during the return movement. That is, the return movement is different from a representation in which the designated object is simply forced to return to the past. Furthermore, the transitionable states of the designated object performing the return movement do not return to a past state; rather, transition processing is performed regardless of the past state even during the return movement, and the return movement may not be completed and may result in movement that differs from the past movement midway. In this respect, too, the return movement action is different from a representation in which the designated object is simply rewound to the past.

[0104] Next, an example of specific processing executed by the game system 1 in this embodiment will be described with reference to Figures 14 to 16. Figure 14 is a diagram showing an example of a data area set in the DRAM 85 of the main unit 2 in this embodiment. In addition to the data shown in Figure 14, the DRAM 85 also stores data used in other processing, but detailed description thereof will be omitted.

[0105] The program storage area of ​​the DRAM 85 stores various programs Pa executed by the game system 1. In this embodiment, the various programs Pa store application programs (e.g., game programs) for performing information processing based on data acquired from the left controller 3 and / or right controller 4 or the main unit 2. The various programs Pa may be stored in advance in the flash memory 84, or may be acquired from a storage medium removable from the game system 1 (e.g., a predetermined type of storage medium inserted in the slot 23) and stored in the DRAM 85, or may be acquired from another device via a network such as the Internet and stored in the DRAM 85. The processor 81 executes the various programs Pa stored in the DRAM 85.

[0106] Furthermore, the data storage area of ​​the DRAM 85 stores various types of data used in processes such as information processing executed in the game system 1. In this embodiment, the DRAM 85 stores operation data Da, past position data Db, designated object data Dc, target data Dd, movement parameter data De, cursor data Df, player character data Dg, object data Dh, return movement flag data Di, path display object data Dj, and image data Dk, etc.

[0107] The operation data Da is operation data acquired appropriately from the left controller 3 and / or right controller 4 and the main unit 2. As described above, the operation data acquired from the left controller 3 and / or right controller 4 and the main unit 2 includes information (specifically, information related to the operation and detection results from the sensors) related to inputs from the input units (specifically, the buttons, analog stick touch panels, and sensors). In this embodiment, the operation data is acquired from the left controller 3 and / or right controller 4 and the main unit 2 via wireless communication, and the acquired operation data is used to update the operation data Da as appropriate. The update cycle of the operation data Da may be every frame, which is the cycle of processing executed by the game system 1 (described later), or may be every cycle in which the operation data is acquired.

[0108] The past position data Db is position data that indicates the time-series position of each movable object OBJm from the present time until a predetermined time ago, and includes data that indicates past positions and orientations over time. For example, the past position data Db indicates the position and orientation of each movable object OBJm corresponding to the time that has elapsed up to the present time, and data that indicates the time-series positions and orientations from the present time until a predetermined time ago (for example, 20 seconds ago) (i.e., time-series data up to the most recent predetermined time up to the present time) is stored for each frame, which is the unit time of display.

[0109] The designated object data Dc is data indicating a designated object selected in response to a user operation. For example, the designated object data Dc is data indicating information for identifying the designated object, the placement position, placement orientation, placement state, etc. of the designated object.

[0110] The target data Dd indicates the target position and orientation that are sequentially set when the designated object returns to its original position. The motion parameter data De indicates parameters related to the motion used in the virtual physical calculation for the designated object to reach the target.

[0111] The cursor data Df is data indicating a position in the virtual space that is superimposed on the cursor C used to designate a designated object.

[0112] The player character data Dg is data that indicates the position and posture of the player character PC placed in the virtual space, as well as the movement and state in the virtual space, etc. The object data Dh is data that indicates the type, position, posture, state, etc. of each object placed in the virtual space.

[0113] The return movement flag data Di is data indicating the state of a return movement flag that is set to ON when the designated object is in the process of return movement.

[0114] The route display object data Dj is data that indicates the shape, arrangement position, and arrangement attitude of the route display object T.

[0115] The image data Dk is data for displaying an image (for example, an image of a character or object, an image of a virtual space, a background image, etc.) on a display screen (for example, the display 12 of the main device 2).

[0116] Next, a detailed example of information processing in this embodiment will be described with reference to Figures 15 and 16. Figure 15 is a flowchart showing an example of information processing executed by the game system 1. Figure 16 is a subroutine showing a detailed example of the return movement processing performed in step S127 in Figure 15. In this embodiment, the series of processing shown in Figures 15 and 16 is performed by the processor 81 executing a predetermined application program (game program) included in the various programs Pa. In addition, the timing at which the information processing shown in Figures 15 and 16 is started is arbitrary.

[0117] 15 and 16 are merely examples, and the order of the steps may be changed, or other processes may be performed in addition to (or instead of) the steps, as long as the same results are obtained. In addition, although the present embodiment describes the steps of the flowcharts as being executed by the processor 81, some of the steps in the flowcharts may be executed by a processor other than the processor 81 or a dedicated circuit. Some of the processes executed by the main unit 2 may be executed by another information processing device capable of communicating with the main unit 2 (for example, a server capable of communicating with the main unit 2 via a network). That is, the processes shown in FIGS. 15 and 16 may be executed by cooperation between multiple information processing devices, including the main unit 2.

[0118] 15, processor 81 performs initial settings for information processing (step S121) and proceeds to the next step. For example, in the initial settings, processor 81 initializes parameters for performing the processing described below. For example, processor 81 initially places a player character PC and multiple objects in the virtual space based on a preset virtual space setting, and initially sets player character data Dg and object data Dh. Furthermore, processor 81 updates past position data Db using the initially placed position and orientation of each movable object OBJm that can be selected as a target for return movement among the multiple objects.

[0119] Next, processor 81 acquires operation data from left controller 3, right controller 4, and / or main unit 2, updates operation data Da (step S122), and proceeds to the next step.

[0120] Next, the processor 81 moves the player character PC in the virtual space (step S123) and proceeds to the next step. For example, the processor 81 moves the player character PC and updates the player character data Dg based on the operation data Da acquired in step S122. The processor 81 also moves the player character PC placed in the virtual space based on virtual physical calculations in the player and virtual space in response to the movement of the player character PC and the surrounding state, and updates the player character data Dg. The processor 81 also changes the state of the player character PC and updates the player character data Dg based on a state change calculation that changes the state of the player character PC. Note that the processor that controls the player character in the virtual space based on the user's operation input corresponds to the processor 81 that performs the processing of step S123, for example. The processor that updates the state in the virtual space, including the player character, based on virtual physical calculations corresponds to the processor 81 that performs the processing of step S123, for example.

[0121] Next, processor 81 operates each object in the virtual space (step S124) and proceeds to the next step. For example, processor 81 operates each object located in the virtual space based on the movement of the player character PC, the movement of the object itself and other objects, and virtual physical calculations in the virtual space, thereby updating the object data Dh. Furthermore, processor 81 changes the state of each object based on a state change calculation that changes the state of each object, thereby updating the object data Dh. Note that an object designated as a designated object and currently moving backward is excluded from the object movement processing of step S124, as its movement is controlled in the return movement processing of step S127, which will be described later. Note that a processor that updates the state of the virtual space, including the object, based on virtual physical calculations corresponds, for example, to processor 81 that performs the processing of step S124. Furthermore, a processor that updates the state of the virtual space based on a state change calculation that changes the state of an object in the virtual space in accordance with the player character's actions and the surrounding conditions, in addition to physical calculations, corresponds, for example, to processor 81 that performs the processing of step S124.

[0122] Next, processor 81 stores the object placement information (step S125) and proceeds to the next step. For example, processor 81 adds, as the latest data in past placement data Db, the current position and orientation of each movable object OBJm that can be selected as a target for return movement among the multiple objects, and updates the elapsed time in the already stored data according to the time since the data was stored. Furthermore, processor 81 deletes, as necessary, from the past placement data Db, the placement data of objects that have been stored for a predetermined time or more. Note that the processor that stores the time-varying positions and orientations of objects within a predetermined range in the virtual space in memory over time corresponds to, for example, processor 81 that performs the processing of step S125.

[0123] Next, processor 81 determines whether or not to perform a return movement (step S126). For example, processor 81 determines the current game mode based on a user operation, and if the current game mode is a selectable state in which an object to be returned (designated object) can be selected or a return movement in progress state in which a return movement is being executed, processor 81 makes a positive determination in step S126. Also, if the current game mode is a normal state in which selection of a designated object to be returned is not accepted and a return movement is not being executed, processor 81 makes a negative determination in step S126. Then, if processor 81 determines to perform a return movement, processor 81 proceeds to process step S127. On the other hand, if processor 81 determines not to perform a return movement, processor 81 proceeds to process step S128.

[0124] In step S127, processor 81 performs a return movement process, and the process proceeds to step S128. The return movement process performed in step S127 will be described below with reference to FIG. 16. Note that the processor that changes parameters related to motion used in virtual physical calculations so that a designated object selected based on an operation input among the objects performs a return movement returning to a position and posture previously stored in memory, tracing back in order from the time when the start instruction was issued based on the operation input, corresponds to processor 81 that performs the processing of step S127, for example. Also, the processor that transitions the state from a normal state in which selection of a designated object is not accepted to a selectable state in which selection of a designated object can be made, based on a selection start instruction based on an operation input, corresponds to processor 81 that performs the processing of steps S126 and S127, for example.

[0125] 16, the processor 81 determines whether the return movement flag is on (step S141). For example, the processor 81 refers to the return movement flag data Di, and when the return movement flag is set to on, the processor 81 makes a positive determination in the above step S141. Then, when the return movement flag is off, the processor 81 proceeds to the process of step S143. On the other hand, when the return movement flag is on, the processor 81 proceeds to the process of step S151.

[0126] In step S143, processor 81 sets the object to be returned to a display mode that allows it to be distinguished from other objects, and proceeds to the next step. For example, processor 81 changes the color of the entire movable object OBJm to be returned to, thereby rendering the object selectable as the designated object in a display mode that differs from the normal state (see FIG. 10).

[0127] Next, processor 81 sets the cursor (step S144) and proceeds to the next step. For example, processor 81 sets the cursor so that cursor C is displayed in the center of the display screen of display 12, and updates cursor data Df (see FIG. 10).

[0128] Next, the processor 81 determines whether or not a return movement target is located at a position superimposed on the cursor C (step S145). If a return movement target is located at a position superimposed on the cursor C (see FIG. 11), the processor 81 proceeds to step S146. On the other hand, if a return movement target is not located at a position superimposed on the cursor C, the processor 81 proceeds to step S147.

[0129] In step S146, the processor 81 displays a path display object indicating a movement path along which the return movement target will move when it returns, at a position superimposed on the cursor C, and proceeds to step S147. For example, the processor 81 references the past position data Db of the object selected as the return movement target, and extracts the placement positions and placement orientations of the object from the current time up to a predetermined time ago (e.g., 20 seconds ago). The processor 81 then calculates a movement path by chronologically connecting the placement positions up to the predetermined time ago, and creates a path display object T (see FIG. 11 ) and updates the path display object data Dj by setting a return orientation object P within the movement path using the placement orientations at predetermined time intervals up to the predetermined time ago and the final placement orientation of the return movement at the predetermined time ago. Note that the processor that places a path display object in the virtual space to indicate the movement path along which the specified object will move when it returns, based on the position and orientation stored in memory, corresponds to the processor 81 that performs the processing of step S146, for example.

[0130] In step S147, processor 81 determines whether or not to start return movement. For example, processor 81 refers to operation data Da, and when the user performs an operation to start return movement, makes a positive determination in step S147. Then, when processor 81 determines to start return movement, processor 81 proceeds to the process of step S148. On the other hand, when processor 81 determines not to start return movement, processor 81 ends the process of this subroutine.

[0131] In step S148, processor 81 determines the object currently selected as the return movement target as the designated object, and proceeds to the next step. For example, processor 81 updates designated object data Dc using information about the determined designated object (information identifying the object, the current object position, orientation, and state, etc.). Processor 81 also erases cursor C from the virtual space and initializes cursor data Df (for example, to null). Note that, in the selectable state, when there is an object selectable as the designated object at the display position of the crosshair placed at a predetermined position on the screen, the processor that selects that object as the designated object corresponds, for example, to processor 81 that performs the processing of step S148.

[0132] Next, processor 81 sets the return movement flag to ON (step S149) and ends the processing of this subroutine. For example, processor 81 sets the return movement flag to ON and updates the return movement flag data Di. Note that in the case where a selected designated object exists, the processor that starts the return movement of the designated object when a start instruction is given corresponds to, for example, processor 81 that performs the processing of step S149.

[0133] On the other hand, if it is determined in step S141 that the return movement flag is on, processor 81 sets a target for the return movement (step S151) and proceeds to the next step. For example, processor 81, as the return movement of the designated object progresses, sequentially sets the chronologically most recent placement position and placement orientation of the designated object stored in the past as the target of the return movement, and updates the target data Dd. Specifically, processor 81 references the past position data Db of the designated object to be returned, and sets the most recent placement position and placement orientation of the object from the current time up to a predetermined time ago (e.g., 20 seconds ago) as the first target. Then, when the elapsed time since the start of the return movement reaches the elapsed time stored in the past position data Db associated with the placement information set as the target, processor 81 sets the next chronologically most recent placement position and placement orientation stored in the past position data Db as the new target of the return movement, and updates the target data Dd. As a result, the targets that are set sequentially when the designated object moves back are set according to the elapsed time so that the designated object returns to a previously stored position and posture, going back in order from the time when the operation to start the return movement was performed.

[0134] Next, processor 81 calculates motion parameters for moving the designated object back (step S152) and proceeds to the next step. For example, processor 81 calculates parameters related to motion used in virtual physical calculations for making the current position and orientation of the designated object coincide with the target placement position and orientation set in target data Dd, and updates motion parameter data De using the parameters. As one example, processor 81 calculates, as the motion parameters, the velocity and angular velocity imparted to the designated object in virtual space to reach the target from its current position. As another example, processor 81 calculates, as the motion parameters, the acceleration and angular acceleration imparted to the designated object in virtual space to reach the target from its current position.

[0135] Next, processor 81 operates the designated object based on the parameters calculated in step S152 (step S153), and proceeds to the next step. For example, processor 81 changes the current position and orientation of the designated object indicated by the designated object data Dc in the virtual space based on the parameters calculated in step S152, and updates the designated object data Dc using the changed position and orientation. Furthermore, processor 81 changes the state of the designated object during return movement based on a state change calculation that changes the current state of the designated object indicated by the designated object data Dc in the virtual space, and updates the designated object data Dc. Note that the processor that updates the state in the virtual space, including the designated object, based on virtual physical calculation corresponds to, for example, processor 81 that performs the processing of step S153.

[0136] The path display object T may continue to be displayed while the designated object is making a return movement. In this case, it is possible to erase the portion of the path along which the designated object has already made a return movement, and continue to display only the path along which the designated object will make a return movement (see FIG. 12). In this case, in step S153, processor 81 deletes the portion of the path along which the designated object has already made a return movement, and updates the path display object data Dj. Furthermore, when displaying the remaining time gauge G while the designated object is making a return movement, processor 81 displays the remaining time gauge G at full scale (maximum scale) at the start of the return movement, and reduces the remaining amount of the gauge according to the elapsed time of the return movement during subsequent return movements.

[0137] Next, processor 81 determines whether the designated object during its return movement has collided with another object or character (step S154). For example, processor 81 determines whether or not there has been a collision with the designated object using designated object data Dc, player character data Dg, and object data Dh. If the designated object during its return movement has collided with another object or character, processor 81 proceeds to step S155. On the other hand, if the designated object during its return movement has not collided with another object or character, processor 81 proceeds to step S156.

[0138] In step S155, processor 81 performs collision processing for the two colliding objects, and then proceeds to step S156. For example, processor 81 changes the state, existence, position, posture, etc. of at least one of the colliding objects, and updates the designated object data Dc, player character data Dg, and object data Dh. As one example, processor 81 changes the state (including disappearance) of at least one of the colliding objects due to damage or the like caused by the collision, and updates the designated object data Dc, player character data Dg, and / or object data Dh using the changed state. As another example, processor 81 changes the position and posture of at least one of the colliding objects in accordance with the motion parameters at the time of the collision, and updates the designated object data Dc, player character data Dg, and / or object data Dh using the changed position and posture. Note that the processor that updates the state in the virtual space, including the designated object and other objects, based on virtual physics calculations corresponds, for example, to processor 81 that performs the processing of step S156.

[0139] In step S156, it is determined whether the designated object during its return movement has disappeared from the virtual space. As an example, if a change in state occurs in the designated object during its return movement such that it disappears from the virtual space in the process of step S155 above, processor 81 makes an affirmative determination in step S156 above. If the designated object has disappeared from the virtual space, processor 81 then proceeds to step S157. On the other hand, if the designated object has not disappeared from the virtual space, processor 81 proceeds to step S159.

[0140] In step S157, processor 81 performs an erasure process to erase the designated object from the virtual space, and proceeds to the next step. For example, processor 81 erases the designated object from the virtual space, and initializes (to null, for example) the designated object data Dc, the target data Dd, and the motion parameter data De, as well as the past placement data Db and object data Dh related to the designated object. Furthermore, if the designated object is moving back while the path display object T is being displayed, processor 81 erases the path display object T from the virtual space, and initializes (to null, for example) the path display object data Dj. In this way, these erasure processes end the returning movement of the designated object.

[0141] Next, processor 81 transitions the game mode to the normal state, sets the return movement flag to OFF (step S158), and proceeds to step S159. For example, processor 81 sets the return movement flag to OFF and updates the return movement flag data Di.

[0142] In step S159, processor 81 determines whether the return movement has ended. For example, processor 81 determines that the return movement being executed has ended when the return movement toward the position and orientation stored in memory a predetermined time ago has been completed, or when a user operation indicating an instruction to cancel the return movement is performed during the return movement. If the return movement has ended, processor 81 proceeds to step S160. On the other hand, if the return movement has not ended, processor 81 ends the processing of this subroutine. Note that the processor that ends the return movement when the designated object returns to the position and orientation stored in memory a predetermined time ago, or when an instruction to cancel the return movement is given by operation input, corresponds to processor 81 that performs the processing of step S159, for example.

[0143] In step S160, processor 81 performs a return movement end process and proceeds to the next step. For example, processor 81 stops the designated object at its current position in the virtual space, and updates the object data Dh of the designated object using the current placement position, placement attitude, placement state, etc. of the designated object. Processor 81 also initializes (to null, for example) the designated object data Dc, the target data Dd, the motion parameter data De, and the past placement data Db related to the designated object that has completed its return movement. If the designated object has performed its return movement while displaying the path display object T, processor 81 erases the path display object T from the virtual space and initializes (to null, for example) the path display object data Dj. In this way, the return movement of the designated object is ended by this return movement end process, and the operation of the object after the end of the return movement is performed by the process in step S124. In addition, the processor that performs the return movement of the designated object toward the position and posture stored in memory a predetermined time ago, or that terminates the return movement when an instruction to cancel the return movement is given by operation input, corresponds to, for example, processor 81 that performs the processing of step S160.

[0144] Next, processor 81 transitions the game mode to the normal state, sets the return movement flag to OFF (step S161), and ends the processing of this subroutine. For example, processor 81 sets the return movement flag to OFF and updates the return movement flag data Di.

[0145] Returning to FIG. 15, in step S128, processor 81 performs display control processing and proceeds to the next step. For example, processor 81 places a player character PC, each object including the designated object, and a path display object T in the virtual space based on designated object data Dc, cursor data Df, player character data Dg, object data Dh, and path display object data Dj. Furthermore, processor 81 sets the position and / or orientation of a virtual camera for generating a display image based on operation data Da, and places the virtual camera in the virtual space. Then, an image of the virtual space as seen from the set virtual camera is generated, and the virtual space image is displayed on display 12. Note that the processor that controls the virtual camera based on operation input corresponds to processor 81 that performs the processing of step S128, for example.

[0146] Next, processor 81 determines whether or not to end the game processing (step S129). Conditions for ending the game processing in step S129 above include, for example, a condition for ending the game processing being satisfied, or the user performing an operation to end the game processing. If processor 81 does not end the game processing, it returns to step S122 above and repeats the process, and if it ends the game processing, it ends the process according to this flowchart. Thereafter, the series of processes from step S122 to step S129 are repeatedly executed until it is determined in step S129 that the process should end.

[0147] In this way, in this embodiment, it is possible to realize a game in which the returning movement of a designated object can be utilized while returning the position, posture, etc. of the designated object.

[0148] In the above-described embodiment, when the designated object is moved back, the designated object is operated to return to a previously stored position and orientation of the designated object by tracing back in order from the time when the instruction to start the movement was given, but the parameters of the designated object to be returned are not limited to this. For example, when the designated object is moved back, the designated object may be operated to return to at least a previous position and orientation of the designated object as a target.

[0149] As an example, if the designated object to be returned has a shape of a body of revolution about a predetermined axis, such as a cylinder, cone, truncated cone, disk, ring, barrel, or hollow cylinder, the shape of the object itself does not change even when it is rotated about that axis. Therefore, rather than using the orientation of the object about such an axis as the target of the return movement, it is conceivable to use the direction of that axis in virtual space as the object's orientation, thereby causing the object to return with the object's position and orientation as the target. Furthermore, even for objects with shapes other than those described above, the direction of the axis defined for the object in virtual space may be used as the orientation, and the object may be returned with the object's position and orientation as the target, rather than its orientation as the target.

[0150] Furthermore, the attitude of an object in virtual space may also include the concept of the object's orientation in virtual space. For example, if at least two directions (e.g., the upward and forward directions of the object, or three orthogonal directions) are defined for an object to be returned to, and the orientations of these two directions in virtual space are defined as the attitude of the object, controlling the position and attitude of the object during its return movement also controls the orientation of the object (e.g., the orientation of the object relative to the up, down, left, right, front, and back directions in virtual space toward which the forward direction of the object faces). Thus, in this embodiment, when a designated object is returned to, the attitude and position of the object, including the concept of the object's orientation, may each be controlled as a target.

[0151] Furthermore, in the above-described embodiment, the position and orientation of the object from the present time up to a predetermined time ago are stored, and the position and orientation included in the predetermined time are updated as time passes, so that the previously stored positions and orientations are lost in order. However, it is also possible to prevent the stored position and orientation from being updated during a period after the object has moved and stopped. In this way, the stored position and orientation for the predetermined time period becomes the position and orientation of the object at the time of its last movement. In other words, since it is possible to perform a return movement using the movement from the most recent movement, it is possible to prevent the return movement from being impossible even if, for example, it takes a long time to specify the designated object and start the return movement.

[0152] In the above-described embodiment, the object information stored going back from the time when the instruction to start the return movement is given is stored for the most recent predetermined time period (for example, 20 seconds) up to the start instruction, but it is also possible to store information on all objects from the start of the game to the present time. Furthermore, the object information stored going back from the time when the instruction to start the return movement is given may be stored for objects within a predetermined range in the virtual space, or may be stored for all objects placed in the virtual space.

[0153] Furthermore, the game system 1 may be any device, such as a portable game device or any portable electronic device (PDA (Personal Digital Assistant), mobile phone, personal computer, camera, tablet, etc.). In this case, the input device for performing the operation of moving an object does not have to be the left controller 3 or the right controller 4, and may be another controller, a mouse, a touchpad, a touch panel, a trackball, a keyboard, a cross key, a slide pad, etc.

[0154] Furthermore, although the above description uses an example in which information processing is performed by the game system 1, at least some of the above processing steps may be performed by another device. For example, if the game system 1 is configured to be able to communicate with yet another device (e.g., another server, another image display device, another game device, or another mobile terminal), the above processing steps may be executed by cooperation with the other device. In this way, by performing at least some of the above processing steps in another device, processing similar to the above-described processing becomes possible. Furthermore, the above-described information processing may be executed by one processor or cooperation between multiple processors included in an information processing system composed of at least one information processing device. Furthermore, in the above embodiment, information processing can be performed by the processor 81 of the game system 1 executing a predetermined program, but some or all of the above processing may be performed by a dedicated circuit provided in the game system 1.

[0155] According to the above-described modified example, the present invention can also be realized in a so-called cloud computing system configuration, or in a distributed wide area network or local network system configuration. For example, in a distributed local network system configuration, the above processing can be performed cooperatively between a stationary information processing device (stationary game device) and a portable information processing device (portable game device). Note that in these system configurations, there is no particular limitation on which device performs the above processing, and it goes without saying that the present invention can be realized regardless of the processing division.

[0156] Furthermore, the processing order, setting values, conditions used for judgment, etc. used in the information processing described above are merely examples, and it goes without saying that this embodiment can be realized even with other orders, values, and conditions.

[0157] The program may be supplied to the game system 1 not only through an external storage medium such as an external memory, but also through a wired or wireless communication line. The program may be pre-recorded in a nonvolatile storage device within the device. The information storage medium for storing the program may be a nonvolatile memory, a CD-ROM, a DVD, or similar optical disk-shaped storage media, a flexible disk, a hard disk, a magneto-optical disk, or a magnetic tape. The information storage medium for storing the program may also be a volatile memory for storing the program. Such a storage medium may be a recording medium readable by a computer or the like. For example, the various functions described above can be provided by having a computer or the like read and execute the program from such a recording medium.

[0158] Although the present invention has been described in detail above, the above description is merely illustrative of the present invention in all respects and is not intended to limit its scope. It goes without saying that various improvements and modifications can be made without departing from the scope of the present invention. Furthermore, those skilled in the art will understand that, from the description of specific embodiments of the present invention, they will be able to implement equivalents based on the description of the present invention and common technical knowledge. Furthermore, unless otherwise specified, it should be understood that the terms used in this specification are used in the same sense as commonly used in the art. Therefore, unless otherwise defined, all technical and technical terms used in this specification have the same meaning as commonly understood by those skilled in the art to which this invention belongs. In the event of any conflict, the present specification (including definitions) will prevail. [Industrial Applicability]

[0159] As described above, the present invention can be used as a game program, a game device, a game system, a game processing method, etc. that enable returning the position, posture, etc. of an object in a virtual space while making the returning movement available. [Explanation of symbols]

[0160] 1. Information processing system 2...Main unit 3...Left controller 4...Right controller 11. Housing 12...Display 13...Touch panel 32, 52...Analog stick 42, 64...Terminals 81...Processor 82...Network Communication Department 83...Controller communication section 85...DRAM 101, 111...Communication control unit

Claims

1. A game program executed by a computer included in an information processing device, The computer, storing in a memory the position and orientation of an object within a predetermined range in the virtual space at least over time while the object is moving, along with the passage of time; changing parameters relating to motion used in virtual physical calculations for a designated object selected based on an operation input from among the objects, so that the designated object makes a return movement to a position and posture previously stored in the memory, tracing back in order from a point in time when a start instruction was given based on the operation input; A game program that updates a state in a virtual space including the designated object and other objects based on the virtual physical calculation.

2. 2. The game program according to claim 1, wherein when the designated object is caused to perform the return movement, a position and orientation stored in the memory more recently as the return movement progresses is set as a target, and the parameters of the designated object, such as velocity and angular velocity, or acceleration and angular acceleration, are changed so that the designated object reaches the target position and orientation.

3. the position and orientation for each time are stored in the memory for each frame, which is a unit time of display; 3. The game program according to claim 2, wherein the position and orientation stored in the memory in an earlier frame becomes the target depending on the number of frames that have passed during the return movement.

4. 4. The game program according to claim 1, wherein the position and orientation for each time period are stored in the memory for at least a most recent predetermined time period during the period up to the start instruction.

5. The computer further comprises:

5. The game program according to claim 4, wherein the designated object makes the return movement toward the position and posture stored in the memory the predetermined time before, or terminates the return movement when an instruction to cancel the return movement is given by the operation input.

6. The computer further comprises:

6. A game program according to claim 1, wherein a path display object is placed in the virtual space to indicate a movement path of the designated object when it makes the return movement, based on the position and orientation stored in the memory.

7. the position and orientation for each time period are stored in the memory for each frame that is a unit time of display up to at least the latest predetermined time period in the period up to the start instruction; The computer further comprises: when the designated object is selected based on the operation input, placing a path display object in the virtual space based on the position and orientation stored in the memory, the path display object being for indicating a movement path for the predetermined time period when the designated object makes the return movement; when causing the designated object to perform the return movement based on the start instruction, a position and orientation stored in the memory in an earlier frame according to the elapsed frames of the return movement are set as targets, and a velocity and angular velocity, or an acceleration and angular acceleration, as the parameters of the designated object are changed so that the designated object reaches the target position and orientation; The computer further comprises:

2. The game program according to claim 1, wherein the designated object makes the return movement to the position and posture stored in the memory the predetermined time ago, or terminates the return movement when an instruction to cancel the return movement is given by the operation input.

8. 8. The game program according to claim 5, wherein, when the designated object makes the return movement toward the position and orientation stored in the memory the predetermined time period ago, the return movement is terminated even if the designated object does not return to the position and orientation stored in the memory the predetermined time period ago as a result of the virtual physical calculation.

9. The computer further comprises: transitioning from a normal state in which selection of the designated object is not accepted to a selectable state in which selection of the designated object can be performed based on a selection start instruction based on the operation input; 9. The game program according to claim 1, wherein, in the selectable state, the object selectable as the designated object is rendered in a display manner different from that in the normal state.

10. The computer further comprises: controlling a virtual camera based on the operation input; In the selectable state, when an object selectable as the designated object is located at a display position of a crosshair arranged at a predetermined position on the screen, the object is selected as the designated object; 10. The game program according to claim 9, wherein, in a case where the designated object is selected, when the start instruction is given, the return movement of the designated object is started.

11. The object has preset state changes that it can transition to, The computer further comprises: updating a state in the virtual space based on a state change calculation that causes the object in the virtual space to undergo the state change in addition to the physical calculation; 11. The game program according to claim 1, wherein the state change is performed even during the return movement, regardless of a past state.

12. The state change includes at least the disappearance of an object; The game program according to claim 11 , wherein, when the designated object disappears during the return movement, the return movement ends.

13. 4. The game program according to claim 1, wherein the position and orientation at each time point during the period are the position and orientation at each time point during the last time the object was moving.

14. a processor; The processor: storing in a memory the position and orientation of an object within a predetermined range in the virtual space at least over time while the object is moving, along with the passage of time; changing parameters relating to motion used in virtual physical calculations for a designated object selected based on an operation input from among the objects, so that the designated object makes a return movement to a position and posture previously stored in the memory, tracing back in order from a point in time when a start instruction was given based on the operation input; The game device updates the state of a virtual space including the designated object and other objects based on the virtual physical calculation.

15. 15. The game device according to claim 14, wherein the processor, when causing the designated object to perform the return movement, targets a position and orientation that was stored in the memory more recently as the return movement progresses, and changes the velocity and angular velocity, or acceleration and angular acceleration, as the parameters of the designated object so that the designated object reaches the target position and orientation.

16. the processor stores the time-series position and orientation in the memory for each frame, which is a unit time of display; The game device according to claim 15 , wherein the processor sets the position and orientation stored in the memory in an earlier frame as the target depending on the number of frames that have elapsed during the return movement.

17. 17. The game device according to claim 14, wherein the processor stores the position and orientation for each time period in the memory for at least a predetermined most recent time period during the period up to the start instruction.

18. 20. The game device according to claim 17, further comprising: the processor causing the designated object to perform the return movement toward the position and orientation stored in the memory the predetermined time prior; or ending the return movement when an instruction to cancel the return movement is given by the operation input.

19. 19. The game device according to claim 14, further comprising: a processor that places, in the virtual space, a path display object that indicates a movement path of the designated object when the designated object makes the return movement, based on the position and orientation stored in the memory.

20. the processor stores the position and orientation for each time period in the memory for each frame that is a unit time of display, up to at least a latest predetermined time period during the period up to the start instruction; Furthermore, when the designated object is selected based on the operation input, the processor places, in the virtual space, a path display object for indicating a movement path for the predetermined time period when the designated object makes the return movement, based on the position and orientation stored in the memory; when causing the designated object to perform the return movement based on the start instruction, the processor targets a position and orientation stored in the memory in an earlier frame according to the elapsed frames of the return movement, and changes the velocity and angular velocity, or acceleration and angular acceleration, as the parameters of the designated object so that the designated object reaches the target position and orientation; 15. The game device according to claim 14, further comprising: the processor causing the designated object to perform the return movement to the position and posture stored in the memory the predetermined time prior, or terminating the return movement when an instruction to cancel the return movement is given by the operation input.

21. 21. The game device according to claim 18, wherein the processor, when the designated object has made the return movement toward the position and orientation stored in the memory the predetermined time period ago, terminates the return movement even if the designated object does not return to the position and orientation stored in the memory the predetermined time period ago as a result of the virtual physical calculation.

22. Further, the processor transitioning from a normal state in which selection of the designated object is not accepted to a selectable state in which selection of the designated object can be performed based on a selection start instruction based on the operation input; 22. The game device according to claim 14, wherein, in the selectable state, an object selectable as the designated object is rendered in a display manner different from that in the normal state.

23. Further, the processor controlling a virtual camera based on the operation input; In the selectable state, when an object selectable as the designated object is present at a display position of a crosshair arranged at a predetermined position on the screen, the object is selected as the designated object; The game device according to claim 22, wherein, in a case where the designated object is selected, when the start instruction is given, the return movement of the designated object is started.

24. The object has preset state changes that it can transition to, Furthermore, the processor updates the state in the virtual space based on a state change calculation that causes the object in the virtual space to undergo the state change in addition to the physics calculation, 24. The game device according to claim 14, wherein the state change is performed even during the return movement, regardless of a past state.

25. The state change includes at least the disappearance of an object; 25. The game device according to claim 24, wherein when the designated object disappears during the return movement, the return movement ends.

26. 17. The game device according to claim 14, wherein the position and orientation at each time point during the period are the position and orientation at each time point during the last time the object was moving.

27. a processor; The processor: storing in a memory the position and orientation of an object within a predetermined range in the virtual space at least over time while the object is moving, along with the passage of time; changing parameters relating to motion used in virtual physical calculations for a designated object selected based on an operation input from among the objects, so that the designated object makes a return movement to a position and posture previously stored in the memory, tracing back in order from a point in time when a start instruction was given based on the operation input; The game system updates the state of the virtual space, including the designated object and other objects, based on the virtual physics calculation.

28. 28. The game system of claim 27, wherein the processor, when causing the designated object to perform the return movement, targets a position and orientation stored in the memory earlier as the return movement progresses, and changes the velocity and angular velocity, or acceleration and angular acceleration, as the parameters of the designated object so that the designated object reaches the target position and orientation.

29. the processor stores the position and orientation for each time period in the memory for each frame that is a unit time of display, up to at least a latest predetermined time period during the period up to the start instruction; Furthermore, when the designated object is selected based on the operation input, the processor places, in the virtual space, a path display object for indicating a movement path for the predetermined time period when the designated object makes the return movement, based on the position and orientation stored in the memory; when causing the designated object to perform the return movement based on the start instruction, the processor targets a position and orientation stored in the memory in an earlier frame according to the elapsed frames of the return movement, and changes the velocity and angular velocity, or acceleration and angular acceleration, as the parameters of the designated object so that the designated object reaches the target position and orientation; The game system of claim 27, further comprising: the processor causing the designated object to perform the return movement to the position and posture stored in the memory the predetermined time prior, or terminating the return movement when an instruction to cancel the return movement is given by the operation input.

30. 28. The game system according to claim 27, wherein the position and orientation at each time during the period are the position and orientation at each time during the last time the object was moving.

31. The processor of the information processing device storing, in a memory of the information processing device, the position and orientation of an object within a predetermined range in the virtual space at each time point over time while the object is moving, changing parameters relating to motion used in virtual physical calculations for a designated object selected based on an operation input from among the objects, so that the designated object makes a return movement to a position and posture previously stored in the memory, tracing back in order from a point in time when a start instruction was given based on the operation input; A game processing method that updates a state in a virtual space including the designated object and other objects based on the virtual physical calculation.

32. 32. The game processing method according to claim 31, wherein, when the designated object is caused to perform the return movement, a position and orientation that was stored in the memory more recently is set as a target depending on the progress of the return movement, and the velocity and angular velocity, or the acceleration and angular acceleration, as the parameters of the designated object are changed so that the designated object reaches the target position and orientation.

33. the position and orientation for each time period are stored in the memory for each frame that is a unit time of display up to at least the latest predetermined time period in the period up to the start instruction; further, when the designated object is selected based on the operation input, the processor places, in the virtual space, a path display object for indicating a movement path for the predetermined time period when the designated object makes the return movement based on the position and orientation stored in the memory; when causing the designated object to perform the return movement based on the start instruction, a position and orientation stored in the memory in an earlier frame according to the elapsed frames of the return movement are set as targets, and a velocity and angular velocity, or an acceleration and angular acceleration, as the parameters of the designated object are changed so that the designated object reaches the target position and orientation; 32. The game processing method according to claim 31, further comprising causing the processor to perform the return movement of the designated object to the position and posture stored in the memory the predetermined time ago, or to terminate the return movement when an instruction to cancel the return movement is given by the operation input.

34. 32. The game processing method according to claim 31, wherein the position and orientation at each time during the period are the position and orientation at each time during the last time the object was moving.

Citation Information

Patent Citations

  • Game program and game apparatus

    JP2003299879A

  • Video game console and game program

    JP2010094338A

  • Game program, information processing system, information processor, and information processing method

    JP2019209115A