Information processing program, information processing method, and information processing device

JP2026143158APending Publication Date: 2026-09-08KOEI TECMO GAMES CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2025030618
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2025-02-27
Publication Date
2026-09-08

Smart Images

  • Figure 2026143158000001_ABST
    Figure 2026143158000001_ABST
Patent Text Reader

Abstract

This disclosure aims to simplify the process compared to changing the interval at which the character's state is updated based on the character's actions. [Solution] The information processing program causes the computer to change the interval at which it updates at least one of the position or action of the character in the game space, based on controller input for making the character to be drawn in the game space move.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present disclosure relates to an information processing program, an information processing method, and an information processing apparatus. [Background Art]

[0002] Patent Document 1 describes that "the frequency at which a terminal updates the display position of a virtual character in a graphical user interface may be set in advance, for example, updated once per frame, or updated once every two frames. The higher the update frequency, the smoother and more natural the movement of the virtual character displayed on the graphical user interface becomes." [Prior Art Literature] [Patent Literature]

[0003] [Patent Document 1] Japanese National Publication of International Patent Application No. 2023-528574 [Summary of the Invention] [Problem to be Solved by the Invention]

[0004] In games, a technique for changing the interval at which the state of a character is updated is known (see, for example, Patent Document 1). Here, various characters can be drawn in a game space, and in recent years, the behaviors of characters have become diversified. Here, when an attempt is made to change the interval for updating the state of a character based on the behavior of the character, there has been a problem that the processing becomes complicated along with the diversification of behaviors.

[0005] Therefore, an object of the present disclosure is to provide a program, a method, and an apparatus that can simplify processing compared to a case where the interval for updating the state of a character is changed based on the behavior of the character. [Means for Solving the Problem]

[0006] The information processing program according to the first embodiment causes a computer to change the interval at which it updates at least one of the position or action of the character in the game space, based on controller input for operating the character to be drawn in the game space.

[0007] The information processing program according to the second embodiment causes the computer to independently change the interval for updating the character's position and action, respectively, in the information processing program according to the first embodiment.

[0008] The information processing program according to the third embodiment causes the computer to limit the interval for updating the character's position when the controller input is an input for high-speed movement that moves the character in the game space faster than a predetermined speed.

[0009] The information processing program according to the fourth embodiment causes the computer to determine that the controller input is for high-speed movement when a stick tilt exceeding a predetermined standard is detected, or when a predetermined button is pressed.

[0010] The information processing program according to the fifth embodiment, in the information processing program according to any one of the second to fourth embodiments, causes the computer to limit the interval for updating the character's action when the controller input is an input for at least one of a change of direction that switches the direction of movement of the character in the game space, and a state transition that switches the movement state of the character.

[0011] The information processing program according to the sixth embodiment causes the computer to determine that the controller input is an input for changing direction when a change in the direction of the stick is detected that exceeds a predetermined standard.

[0012] The information processing program according to the seventh embodiment causes the computer to determine that the controller input is an input for the state transition when a change in the tilt of the stick that exceeds a predetermined standard is detected in the information processing program according to the fifth or sixth embodiment.

[0013] The information processing program according to the eighth embodiment is an information processing program according to any one of the first to seventh embodiments, which causes the computer to determine which of the multiple characters to change the interval for updating the state of the character, based on the priority according to the position of each character, when multiple characters are drawn in the game space.

[0014] The information processing program according to the ninth embodiment, in the information processing program according to the eighth embodiment, causes the computer to correct the priority based on the controller input, and to determine the target of modification from among the plurality of characters based on the corrected priority.

[0015] The information processing program according to the tenth embodiment, in the information processing program according to any one of the first to ninth embodiments, causes the computer to extend the interval for updating the state of the character by reducing the number of frames for updating the state of the character.

[0016] The information processing program according to the 11th embodiment is an information processing program according to any one of the first to tenth embodiments, wherein the computer determines the character's actions according to the game situation, and the controller input is determined based on the actions.

[0017] The information processing method according to the 12th embodiment involves changing the interval at which a computer updates at least one of the position or action of a character in the game space based on controller input for operating a character to be drawn in the game space.

[0018] The information processing apparatus according to the 13th aspect comprises a processor, and the processor changes an interval at which at least one of a position and an action of a character in a game space is updated based on a controller input for moving the character drawn in the game space.

[0019] According to the information processing program, information processing method, and information processing apparatus according to the present disclosure, processing can be simplified compared to a case where an interval for updating a state of a character is changed based on the action of the character. BRIEF DESCRIPTION OF THE DRAWINGS

[0020] [Figure 1] It is a diagram showing an example of a schematic configuration of a game system 10 according to the present embodiment. [Figure 2] It is a diagram for explaining an error in movement distance when an interval for updating a position of a character C is changed. [Figure 3] It is a diagram for explaining a problem during high-speed movement. [Figure 4] It is a diagram showing an example of a hardware configuration of an information processing apparatus 100 according to the present embodiment. [Figure 5] It is a diagram showing an example of a functional configuration of an information processing apparatus 100 according to the present embodiment. [Figure 6] It is a diagram showing an example of a flow of information processing executed by an information processing apparatus 100 according to the present embodiment. [Figure 7] It is a diagram showing an example of a table managed when the information processing apparatus 100 according to the present embodiment executes information processing. DESCRIPTION OF EMBODIMENTS

[0021] Hereinafter, an example of an embodiment of the present disclosure will be described with reference to the drawings. In each drawing, identical or equivalent components and parts are assigned the same reference signs. In addition, dimensional ratios in the drawings are exaggerated for convenience of explanation, and may differ from actual ratios.

[0022] Figure 1 shows an example of the schematic configuration of the game system 10 according to this embodiment. Here, a game is a collection of activities and rules for playing or competing. A game is played, for example, by players using strategies and techniques to achieve a specific objective. Games are played to achieve various objectives, such as competitive objectives like winning a championship, combat objectives like defeating an enemy, educational objectives like learning, and narrative objectives like completing the progression of a scenario. A game may be in a competitive format or a non-competitive format.

[0023] From this point forward, we will explain using the example of nine NPC (Non-Player Character) characters C1-C9 (collectively referred to as "Character C") being rendered in the game space. However, this is not the only example.

[0024] Character C may include not only NPCs but also PCs (Player Characters). PCs operate in response to controller inputs actually performed by the player. On the other hand, NPCs are characters not controlled by the player, so the concept of controller input does not exist for them. Therefore, the technology of this disclosure is particularly effective when applied to updating the state of NPCs, for which controller input does not exist. However, it is not limited to this. The technology of this disclosure may be applied to updating the state of PCs, or to updating the state of both PCs and NPCs.

[0025] Furthermore, the number of characters C is not limited to nine, but can be any number. Extending the interval for updating the character state reduces the processing load on the game. Therefore, the more characters there are, the greater the effect of reducing the processing load. Consequently, the technology disclosed herein is particularly compatible with games that have a large number of characters drawn in the game space, such as so-called Musou-style games. However, it is not limited to these. The technology disclosed herein may be applied to any game in which at least one character is drawn in the game space.

[0026] The game system 10 comprises a communication means 20, a server device 30, and a terminal device 40. In this figure, the case where there is one communication means 20, one server device 30, and one terminal device 40 is shown as an example. However, the game system 10 may have two or more of at least one of the communication means 20, the server device 30, and the terminal device 40.

[0027] The communication means 20 connects multiple computers in a way that enables communication. In this figure, the case where the communication means 20 connects a server device 30 and a terminal device 40 is shown as an example. The communication means 20 may be, for example, the Internet. However, the communication means 20 may be any means that can connect multiple computers in a way that enables communication, such as a LAN, WAN, or intranet.

[0028] The server device 30 sends and receives data with the terminal device 40, executes processing in response to the player's operations, and provides the execution results to the terminal device 40. More specifically, the server device 30 may perform processes such as downloading programs (applications) to the terminal device 40, logging in to the player, and managing various databases.

[0029] The server device 30 may be implemented, for example, by cloud computing. In this figure, the case where the server device 30 is a single device is shown as an example, but the server device 30 may distribute the above processing among multiple devices. Also, in this figure, the case where the game to be played is provided as a so-called online game is shown as an example, but it is not limited to this. If the game to be played can be played offline, the game system 10 does not need to have a server device 30. In other words, the server device 30 is not an essential configuration in this disclosure.

[0030] Terminal device 40 is a device for the player to play the game they choose to play. In this figure, terminal device 40 is shown as an example of a smartphone. However, terminal device 40 may be any device capable of playing the game the player chooses to play, such as a game console, mobile phone, tablet device, laptop computer, all-in-one PC, tablet PC, or portable game console.

[0031] Hereafter, we will describe the case where the terminal device 40 is the information processing device 100 according to this embodiment as an example. However, we are not limited to this, and the server device 30 may also be the information processing device 100 according to this embodiment. Furthermore, both the terminal device 40 and the server device 30 may be the information processing device 100 according to this embodiment. In other words, the information processing according to this embodiment may be processed on the terminal side, on the network side, or in a distributed manner on both the terminal side and the network side.

[0032] This figure illustrates an example where a screen displaying multiple characters C1 to C9 in the game space is shown on the terminal device 40. Here, characters C closer to the camera performing the drawing are drawn on the lower part of the screen, and characters C farther from the camera are drawn on the upper part of the screen. That is, for example, focusing on the central row of the screen, the distance from the camera is character C1 < character C2 < character C7.

[0033] Furthermore, characters C whose angle from the camera performing the drawing are small will be drawn in the center of the screen, while characters C whose angle is large will be drawn at the left or right edge of the screen. That is, for example, if we focus on the bottom row of the screen, the angles from the camera are character C1 < character C3 = character C4.

[0034] Here, the actions of characters C1 to C9 are all different. Characters C1, C7, and C9 are assumed to be waiting in place. Characters C2 and C8 are assumed to be walking from left to right on the screen. Walking means moving at a slow speed slower than a predetermined speed. Characters C3 to C6 are assumed to be dashing from left to right on the screen. Dashing means moving at a high speed faster than a predetermined speed.

[0035] Furthermore, assume that there is an obstacle to the right of characters C5 and C8. In this case, characters C5 and C8 will change direction to avoid the obstacle. Also, assume that character C7 has noticed an item object that has been dropped in the game space. In this case, character C7 will transition from a stance motion to a walking motion to move towards the item object. In addition to actions that involve changes in position, character C will also perform various actions that do not involve changes in position, such as jumping, crouching, attacking, and picking up items.

[0036] Thus, the actions of character C as rendered on the game screen are not uniform, but change in a wide variety of ways depending on the game situation. However, if the interval for updating character C's state were uniformly changed, the behavior of character C as rendered in the game space could become unnatural. An example of such a case will be explained below.

[0037] Figure 2 illustrates the error in the distance traveled when the interval for updating the position of character C is changed. Generally, when updating the position of character C in a game, the distance traveled is often calculated from the acceleration and velocity in discrete time. When using the Verlet integral for position updates, it is essentially the same. In this case, suppose the position update process is reduced to decrease the processing load, and the update interval is extended from every frame to every few frames. In this case, an error occurs in the distance traveled by character C.

[0038] This figure shows the distance traveled by character C when the acceleration is 1 cm / frame. In this figure, the horizontal axis represents frames. The vertical axis represents the distance traveled in the game space in centimeters (cm). In this figure, the dotted line shows the distance traveled when character C's position is updated every 1 frame, i.e., without decimation. In this figure, the solid line shows the distance traveled when character C's position is updated every 2 frames, i.e., with decimation.

[0039] Comparing the dotted and solid lines, it can be seen that the error caused by decimation increases with the passage of frames. Note that this figure shows an example where character C's acceleration is fixed, but in actual games, acceleration can also vary depending on the game situation. In this case, the impact of the error caused by decimation can be even greater. Furthermore, even without acceleration or deceleration, problems may arise if decimation occurs while character C is moving at high speed.

[0040] Figure 3 illustrates a problem that occurs during high-speed movement. This figure shows an example where character C enters a downhill slope at high speed. In this figure, the dotted line shows the movement history of character C when its position is updated every frame, i.e., when no decimation is performed. In this way, when the position is updated every frame, character C can move appropriately along the slope through ground contact processing after movement.

[0041] On the other hand, the solid line in this figure shows the movement history of character C when its position is updated every 3 frames, i.e., when decimation is performed. In this way, when the position is updated in batches every few frames, character C moves in a way that makes it appear as if it is flying far out into the air.

[0042] Changing the interval for updating character C's position in this way sometimes resulted in unnatural behavior for character C. While the above explanation focused only on position updates, the same applies to character C's action updates. Here, action updates include both transitions between multiple motions and animation updates within a single motion.

[0043] Therefore, when changing the interval for updating the state of character C, it is necessary to consider the actions of character C. However, in recent years, the actions of character C have become more diverse. When attempting to change the interval for updating the state of character C based on the actions of character C, there is a problem that the processing becomes more complex as the actions become more diverse. The technology disclosed herein was developed in view of this problem and aims to simplify the processing compared to changing the interval for updating the state of character C based on the actions of character C.

[0044] Figure 4 shows an example of the hardware configuration of the information processing device 100 according to this embodiment. The information processing device 100 includes a processor 101, a ROM (Read Only Memory) 102, a RAM (Random Access Memory) 103, storage 104, a communication interface 105, and a user interface 106. These components are connected to each other via a bus 107 so that they can communicate with one another.

[0045] The processor 101 executes various programs and controls each component. The ROM 102 stores various programs and data. The RAM 103 temporarily stores programs or data as a working area. The storage 104 is composed of, for example, an HDD (Hard Disk Drive) or SSD (Solid State Drive) and stores various programs and data, including the operating system.

[0046] In the information processing device 100 according to this embodiment, the information processing program 108 is stored in the ROM 102 or storage 104. In this figure, the case in which the information processing program 108 is stored in the storage 104 is shown as an example. The processor 101 reads the information processing program 108 from the ROM 102 or storage 104 and executes it using the RAM 103 as a work area, thereby performing control of each configuration and various calculation processes according to the information processing program 108.

[0047] The communication interface 105 is an interface for the information processing device 100 to communicate with other devices. The user interface 106 is an input / output interface for the information processing device 100 to exchange information with a user (in this case, a player). The user interface 106 may include input devices such as a controller, touch panel, keyboard, mouse, and microphone, and output devices such as a monitor and speaker.

[0048] Figure 5 shows an example of the functional configuration of the information processing device 100 according to this embodiment. The information processing device 100 includes an action determination unit 110, a calculation unit 120, a correction unit 130, a decision unit 140, and a modification unit 150. These functional configurations may be implemented in the information processing device 100 by the processor 101 reading the information processing program 108 from the ROM 102 or storage 104, expanding it into the RAM 103, and executing it.

[0049] The action determination unit 110 is a functional unit for determining the action of character C. The calculation unit 120 is a functional unit for calculating priority. The correction unit 130 is a functional unit for correcting priority. The decision unit 140 is a functional unit for determining the target of change. The change unit 150 is a functional unit for changing the update interval.

[0050] The information processing method performed by the information processing device 100 equipped with such functional units will be explained in detail using the flowchart in Figure 6 and the table in Figure 7. Figure 6 is a diagram showing an example of the information processing flowchart performed by the information processing device 100 according to this embodiment. This flowchart may be started when the processor 101 reads the information processing program 108 from the ROM 102 or storage 104, loads it into the RAM 103, and executes it. Figure 7 is a diagram showing an example of a table managed by the information processing device 100 according to this embodiment when performing information processing.

[0051] In step S200, the processor 101, acting as an action determination unit 110, determines the action of character C according to the game situation. For example, the processor 101 may read situation data that indicates the game situation. Here, the situation data may include, for example, data such as the position, animation, surrounding environment, and task for each character C in chronological order. The processor 101 may determine the action for each character C by analyzing such situation data, for example, using AI (Artificial Intelligence).

[0052] In step S210, the controller input is determined based on the action. For example, the stick input of the AI ​​controller (a virtual controller owned by the AI) that reflects the action determined in step S200 may be determined.

[0053] For example, the processor 101 may analyze the situation data using AI and determine that the action of character C1 at a predetermined timing is "waiting". Accordingly, the AI ​​controller input for character C1 may be determined to be "left stick = neutral". This means that, assuming character C1 is controlled by the player, the player would not have performed any operation on the left stick in order to put character C1 into waiting mode. As a result, the stance motion and position coordinates of character C1 at the predetermined time are maintained.

[0054] Furthermore, the processor 101 may analyze the situation data using AI to determine that the action of character C2 at a predetermined timing is "walk 3 cm to the right". Accordingly, the AI ​​controller input for character C2 may be determined as "left stick = tilted 15 degrees to the right". This means that, assuming character C2 is controlled by the player, the player would have tilted the left stick 15 degrees to the right in order to make character C2 walk 3 cm to the right. As a result, the change in the position coordinates of character C2 at a predetermined time is controlled by the AI.

[0055] Furthermore, the processor 101 may analyze the situation data using AI and determine that the action of character C3 at a predetermined timing is "dash 9cm to the right". Accordingly, the AI ​​controller input for character C3 may be determined as "left stick = tilted 45 degrees to the right". This means that, assuming character C3 is controlled by the player, the player would have tilted the left stick 45 degrees to the right in order to make character C3 dash 9cm to the right. As a result, the change in the position coordinates of character C3 at a predetermined time is controlled by the AI.

[0056] Similarly, processor 101 may determine that character C4's action is "dash 9cm to the right." Accordingly, the AI ​​controller input for character C4 may be determined as "left stick = tilted 45° to the right." Also, processor 101 may determine that character C5's action is "avoid and bypass an obstacle counterclockwise." Accordingly, the AI ​​controller input for character C5 may be determined as "left stick = changed from tilted 45 degrees to the right to tilted 45 degrees downwards." Also, processor 101 may determine that character C6's action is "dash 9cm to the right." Accordingly, the AI ​​controller input for character C6 may be determined as "left stick = tilted 45 degrees to the right." Also, processor 101 may determine that character C7's action is "start moving to the upper left." Accordingly, the AI ​​controller input for character C7 may be determined as "left stick = changed from neutral to tilted 10 degrees to the upper left." Furthermore, processor 101 may determine that character C8's action is "to avoid and bypass an obstacle in a counterclockwise direction." Accordingly, the AI ​​controller input for character C8 may be determined to be "left stick = change from tilted 45 degrees to the right to tilted 45 degrees down." Also, processor 101 may determine that character C9's action is "waiting." Accordingly, the AI ​​controller input for character C9 may be determined to be "left stick = neutral."

[0057] In addition, for example, if the distance between NPCs is less than a predetermined standard, processor 101 may determine that these NPCs should "maintain distance from each other." Accordingly, the AI ​​controller input for one NPC may be determined as "left stick = tilted 5 degrees to the right," and the AI ​​controller input for the other NPC may be determined as "left stick = tilted 5 degrees to the left."

[0058] In other words, if character C is an NPC, the controller input is the input of a virtual controller emulated by the AI. This virtual controller input is a specification designed to make it easier for developers to reproduce the behavior of NPCs using a controller. Introducing such a specification offers various benefits, such as being able to determine the behavior of NPCs using the same system as a PC. However, it is not limited to this. If character C is a PC, the controller input may be the input of an actual controller (also called a "real controller").

[0059] In step S220, the processor 101, as the calculation unit 120, calculates the priority. For example, the processor 101 may calculate the priority based on at least one of the distance and angle from the camera that performs the drawing.

[0060] In this case, the processor 101 may set the priority so that characters C that are closer to the camera have a higher priority than characters that are farther away from the camera. Also, the processor 101 may set the priority so that characters C that are at a small angle from the camera have a higher priority than characters that are at a large angle from the camera. For example, if the priorities of characters C1 to C9 are P1 to P9 respectively, the processor 101 may calculate, for example, P1=8, P2=6, P3=5, P4=5, P5=3, P6=3, P7=2, P8=1, and P9=1.

[0061] In step S230, the processor 101 determines whether or not to reflect the controller input in the priority. For example, the processor 101 may determine whether or not to reflect the controller input in step S210 in the priority calculated in step S220. If it determines to reflect (Yes), the processor 101 proceeds to step S240. On the other hand, if it determines not to reflect (No), the processor 101 skips the processing in step S240.

[0062] In step S240, the processor 101 corrects the priority as a correction unit 130. For example, the processor 101 may correct the priority calculated in step S220 based on the controller input in step S210. As an example, the processor 101 may improve the priority of character C whose controller input is for at least one of high-speed movement, direction change, and state transition. High-speed movement, as described above, means moving faster than a predetermined speed. Direction change means changing the direction of movement by a larger angle than a predetermined angle. State transition means switching from one movement state to another from among multiple movement states (e.g., waiting, walking, and running).

[0063] For example, the controller input for characters C3 to C6 is "left stick = ... 45-degree tilt," and it is possible to detect a stick tilt of more than a predetermined standard (for example, 30 degrees) from the controller input. Therefore, the processor 101 may determine that the controller input is for high-speed movement. The processor 101 may determine that the controller input is for high-speed movement when it detects a stick tilt of more than a predetermined standard, for example in this way.

[0064] However, this is not the only way. For example, if a dash button or the like is pre-configured on the controller, the processor 101 may determine that the controller input is for high-speed movement when it detects that a predetermined button has been pressed.

[0065] Furthermore, the controller input for characters C5 and C8 is "left stick = to the right... from tilt to down... change to tilt," and it is possible to detect a change in the stick's direction that exceeds a predetermined standard (for example, 60 degrees) from the controller input. Therefore, the processor 101 may determine that the controller input is an input for changing direction. For example, the processor 101 may determine that the controller input is an input for changing direction when it detects a change in the stick's direction that exceeds a predetermined standard.

[0066] Furthermore, the controller input for character C7 is "left stick = change from neutral to a 10-degree tilt," and it is possible to detect a change in stick tilt of more than a predetermined standard (for example, 5 degrees) from the controller input. Therefore, the processor 101 may determine that the controller input is an input for a state transition. For example, the processor 101 may determine that the controller input is an input for a state transition when it detects a change in stick tilt of more than a predetermined standard in this manner.

[0067] In this case, the processor 101 does not adjust the priorities P1, P2, and P9 for characters C1, C2, and C9 because the controller input is not for high-speed movement, direction change, or state transition. On the other hand, the processor 101 improves the priorities P3 to P8 for characters C3 to C8 because the controller input is for at least one of high-speed movement, direction change, or state transition. As an example, the processor 101 may add a uniform value (e.g., 2) to P3 to P8 to adjust them to P3=7, P4=7, P5=5, P6=5, P7=4, and P8=3. Note that the above explanation shows the case of adding a uniform value as an example, but it is not limited to this. The processor 101 may adjust the priorities by adding different values ​​depending on the controller input.

[0068] In step S250, the processor 101, as the determination unit 140, determines the target to be changed. For example, the processor 101 determines the target to change the interval for updating the state of character C based on the priority calculated in step S220 or the corrected priority corrected in step S240. Here, we will explain as an example the case in which the target to be changed is determined based on the corrected priority. In this case, the processor 101 may determine character C to be changed if the corrected priority is less than or equal to a predetermined threshold (for example, 5).

[0069] The above explanation uses the example of determining which character C has a priority below a predetermined threshold to be modified, but it is not limited to this. The processor 101 may sort the character C in ascending order according to priority and determine a predetermined number (for example, 5) of character C with the lowest priority to be modified. Here, we assume that the processor 101 has determined which characters C5 to C9 to be modified.

[0070] For example, when multiple character Cs are drawn in the game space, the processor 101 can determine which of the multiple character Cs to modify based on the priority corresponding to the position of each character C, thereby changing the interval at which the state of the character C will be updated. In this case, if controller input is reflected in the priority, the processor 101 can correct the priority based on the controller input and then determine which of the multiple character Cs to modify based on the corrected priority.

[0071] In step S260, the processor 101 determines whether character C is to be modified or not. If it is determined that character C is not to be modified (No), the processor 101 proceeds to step S270. In this case, the characters to be modified are C5 to C9, so the processor 101 proceeds to step S270 for characters C1 to C4.

[0072] In step S270, the processor 101 updates the state of character C at the normal interval. That is, the processor 101 does not change the update interval for both position and action. Therefore, for example, if the normal interval is 1 frame, the processor 101 updates the position and action of characters C1 to C4 every 1 frame, as per the normal interval.

[0073] On the other hand, if it is determined in step S260 that the character is subject to change (Yes), the processor 101 proceeds to step S280. In this case, the characters to be changed are C5 to C9, so the processor 101 proceeds to step S280 for characters C5 to C9.

[0074] In step S280, the processor 101 determines whether the controller input is an input for high-speed movement. If it determines that it is an input for high-speed movement (Yes), the processor 101 proceeds to step S290. Here, since the controller inputs for characters C5 and C6 are inputs for high-speed movement, the processor 101 proceeds to step S290 for characters C5 and C6.

[0075] In step S290, the processor 101 determines whether the controller input is an input for changing direction or a state transition. If it determines that it is an input for changing direction or a state transition (Yes), the processor 101 proceeds to step S270. Here, since the controller input for character C5 is an input for changing direction, the processor 101 proceeds to step S270 for character C5.

[0076] On the other hand, if it is determined in step S290 that the input is not for a change of direction or a state transition (No), the processor 101 proceeds to step S300. Here, since the controller input of character C6 is not for a change of direction or a state transition, the processor 101 proceeds to step S300 for character C6.

[0077] In step S300, the processor 101 changes the interval for updating the action of character C as the modification unit 150. In this case, the processor 101 may extend the interval for updating the action of character C by skipping frames in which the action is updated. Here, the processor 101 skips the action update process for character C6 and extends the update interval from every 1 frame to every 3 frames. In this case, the processor 101 performs position updates for character C6 at the normal interval of every 1 frame, while performing action updates every 3 frames.

[0078] On the other hand, if it is determined in step S280 that the input is not for high-speed movement (No), the processor 101 proceeds to step S310. Here, since the controller inputs for characters C7 to C9 are not for high-speed movement, the processor 101 proceeds to step S310 for characters C7 to C9.

[0079] In step S310, the processor 101 determines whether the controller input is an input for changing direction or a state transition. If it determines that it is an input for changing direction or a state transition (Yes), the processor 101 proceeds to step S320. Here, since the controller input for character C7 is an input for a state transition and the controller input for character C8 is an input for changing direction, the processor 101 proceeds to step S320 for characters C7 and C8.

[0080] In step S320, the processor 101 changes the interval for updating the position of character C as the modification unit 150. In this case, the processor 101 may extend the interval for updating the position of character C by skipping frames in which the position is updated. Here, the processor 101 skips the position update process for characters C7 and C8, extending the update interval from every 1 frame to every 3 frames. In this case, the processor 101 performs action updates for characters C7 and C8 at the normal interval of every 1 frame, while performing position updates every 3 frames.

[0081] On the other hand, if it is determined in step S310 that the input is not for a change of direction or a state transition (No), the processor 101 proceeds to step S330. Here, since the controller input of character C9 is not for a change of direction or a state transition, the processor 101 proceeds to step S330 for character C9.

[0082] In step S330, the processor 101 changes the interval for updating the position and action of character C as the modification unit 150. In this case, the processor 101 may extend the interval for updating the position and action of character C by reducing the number of frames in which the position and action are updated. Here, the processor 101 reduces the processing of updating the position and action of character C9, extending the update interval from every 1 frame to every 3 frames. In this case, the processor 101 performs both the position and action updates for character C9 every 3 frames.

[0083] Then, processor 101 terminates this flow. Processor 101 may repeat this flow at predetermined intervals. Such timings may include, for example, when a predetermined number of frames have elapsed or when the game situation changes.

[0084] The processor 101 may, for example, change the interval at which it updates at least one of the position or action of character C in the game space based on controller input. In this case, the processor 101 can independently change the interval at which each of the character C's positions and actions is updated. Note that the above flow is merely an example, and the conditions under which the update interval of each is changed can be varied depending on the game title.

[0085] Furthermore, if it is determined in step S280 that the input is for high-speed movement (Yes), the processor 101 does not change the interval for updating the position, regardless of whether the process proceeds to step S270 or step S300. In other words, the processor 101 may restrict extending the interval for updating the position of character C when the controller input is for high-speed movement that moves character C faster than a predetermined speed in the game space. This is to prevent the behavior of character C from becoming unnatural, as extending the interval for updating the position of a fast-moving character C would cause it to move a large amount in a single update.

[0086] Similarly, if it is determined in step S290 or step S310 that the input is for a change of direction or a state transition (Yes), the processor 101 does not change the interval for updating the action, regardless of whether the process proceeds to step S270 or step S320. In other words, the processor 101 may restrict extending the interval for updating character C's action when the controller input is for at least one of the following: a change of direction that switches the direction of movement of character C in the game space, or a state transition that switches the state of movement. This is to prevent the behavior of character C from becoming unnatural, as a change of direction involves dedicated motion playback and changes acceleration, so extending the interval for updating the action would cause a discrepancy between the motion and the actual speed. Also, extending the interval for updating the action at the moment of starting or stopping movement would cause delays in movement and stopping, preventing the behavior of character C from becoming unnatural.

[0087] As described above, the information processing device 100 according to this embodiment changes the interval for updating at least one of the position or action of character C in the game space based on controller input for operating character C drawn in the game space. In this case, by using controller input as the basis rather than the action of character C itself, it is possible to suppress an increase in the decision processing related to the change even if the types of actions of character C increase. As a result, the information processing device 100 according to this embodiment can simplify the processing compared to changing the interval for updating the state of character C based on the action of character C. Furthermore, after the controller input is determined, the action update (for example, whether to run or not) is executed. This action update itself is a costly process. Therefore, it is necessary to predict in advance whether character C will accelerate or move at high speed before updating the action. In contrast, the information processing device 100 according to this embodiment can make such a prediction from the controller input, so the processing load can be efficiently reduced.

[0088] In this case, the information processing device 100 may independently change the interval for updating the character's position and actions. This allows the information processing device 100 to flexibly change the update interval according to the character C's actions, compared to changing the update interval for the position and actions together.

[0089] Furthermore, the information processing device 100 may limit the interval for updating the character's position when the controller input is for high-speed movement that moves the character faster than a predetermined speed in the game space. This prevents the information processing device 100 from causing the character to move too much in a single update, resulting in unnatural character behavior.

[0090] Furthermore, the information processing device 100 may determine that a controller input is for high-speed movement if it detects a stick tilt exceeding a predetermined standard, or if it detects the pressing of a predetermined button. This allows the information processing device 100 to determine whether or not an input is for high-speed movement with relatively simple processing.

[0091] Furthermore, the information processing device 100 may restrict the extension of the interval for updating the character's action when the controller input is for at least one of the following: a change of direction that switches the character's movement direction in the game space, or a state transition that switches the movement state. This allows the information processing device 100 to suppress unnatural character behavior caused by discrepancies between motion and actual speed, or by delays in movement or stopping.

[0092] Furthermore, the information processing device 100 may determine that the controller input is for changing direction if it detects a change in the stick's direction that exceeds a predetermined standard. This allows the information processing device 100 to determine whether or not an input is for changing direction with a relatively simple process.

[0093] Furthermore, the information processing device 100 may determine that a controller input is an input for a state transition when it detects a change in the stick's tilt that exceeds a predetermined standard. This allows the information processing device 100 to determine whether or not an input is for a state transition with a relatively simple process.

[0094] Furthermore, when multiple characters are drawn in the game space, the information processing device 100 may determine which characters to modify based on a priority corresponding to the position of each character, and which characters will have their update interval changed. As a result, the information processing device 100 can prioritize modifying characters that are far from the camera or at a large angle from the camera, thus reducing the probability that the player will perceive the change as unnatural.

[0095] Furthermore, the information processing device 100 may correct the priority based on the controller input and determine the character to be changed from among the multiple characters based on the corrected priority. If the change in the update interval is completely restricted based on the controller input, there is a concern that the number of characters C to be updated will become too large, causing processing lag or other problems. In contrast, according to the information processing device 100 of this embodiment, the controller input is reflected in the form of correcting the priority for determining the character to be changed, so the number of characters C to be updated can be flexibly controlled by adjusting the degree of correction.

[0096] Furthermore, the information processing device 100 may extend the interval for updating the character's state by reducing the number of frames in which the character's state is updated. As a result, the information processing device 100 can suppress the occurrence of timing discrepancies before and after the change, compared to the case where the update interval can be changed to an arbitrary interval.

[0097] While the embodiments described above are examples of possible implementations, this disclosure is not limited to those described above, and it is of course possible to implement it in various modified forms without departing from its spirit.

[0098] For example, there are situations where the error in the distance traveled is noticeable depending on the terrain in which character C is placed and the type of character movement. Examples of such situations include when character C appears to be floating on steps or slopes, or when character C is in the sky and does not blend in with the background. In such situations, the update interval may be adjusted depending on the terrain in which character C is placed.

[0099] Furthermore, the above explanation provided an example where the priority for all character C is determined based on controller input rather than directly from the actions of character C. However, in the technology of this disclosure, it is sufficient that the priority for at least one character C is determined based on controller input. In that case, the priority for other character C may be determined directly from the actions of character C, as in the conventional method. In other words, the technology of this disclosure can be implemented in a form that combines a novel configuration in which priority is determined based on controller input with an existing configuration in which priority is directly determined from the actions of character C.

[0100] Furthermore, in the above embodiments, the term "processor" refers to a broad type of processor, including general-purpose processors (e.g., CPU: Central Processing Unit, etc.) and dedicated processors (e.g., GPU: Graphics Processing Unit, ASIC: Application Specific Integrated Circuit, FPGA: Field Programmable Gate Array, programmable logic device, etc.).

[0101] Furthermore, the operation of the processor in the above embodiments may not be performed by a single processor, but may be performed by multiple processors located in physically separate locations working together. Also, the order of the processor operations is not limited to the order described in each of the above embodiments, but may be changed as appropriate.

[0102] Furthermore, although the information processing device 100 in this embodiment is described as being composed of a single device, it may be composed of multiple devices.

[0103] Furthermore, the processing performed by the information processing device 100 according to the above embodiment may be performed by software, by hardware, or by a combination of both. In addition, the processing performed by each part of the information processing device 100 may be stored as a program on a storage medium and distributed.

[0104] Furthermore, the program described herein can be provided as a program product. A program product includes any form of product for providing a program. For example, a program product includes a program provided via a network such as the Internet, and non-temporary computer-readable recording media such as CD-ROMs and DVDs on which the program is stored. [Explanation of Symbols]

[0105] 10 Game Systems 20 Communication methods 30 Server Devices 40 Terminal devices 100 Information Processing Devices 101 Processors 102 ROM 103 RAM 104 storage 105 Communication Interface 106 User Interface 107 Bus 108 Information Processing Programs 110 Behavior Judgment Department 120 Calculation Department 130 Correction section 140 Decision Section 150 Changes

Claims

1. On the computer, Based on controller input for controlling a character drawn in the game space, the interval at which at least one of the character's position or action in the game space is updated is changed. Information processing program.

2. The information processing program according to claim 1, which causes the computer to independently change the interval for updating the position and actions of the character, respectively.

3. The information processing program according to claim 2, which causes the computer to limit the interval for updating the character's position when the controller input is an input for high-speed movement that moves the character in the game space faster than a predetermined speed.

4. The information processing program according to claim 3, which causes the computer to determine that the controller input is an input for high-speed movement when it detects a stick tilt exceeding a predetermined standard or when it detects the pressing of a predetermined button.

5. The information processing program according to claim 2, which causes the computer to limit the interval for updating the character's actions when the controller input is an input for at least one of a change of direction that changes the direction of movement of the character in the game space, and a state transition that changes the state of movement.

6. The information processing program according to claim 5, which causes the computer to determine that the controller input is an input for changing direction when it detects a change in the direction of the stick that exceeds a predetermined standard.

7. The information processing program according to claim 5, which causes the computer to determine that the controller input is an input for the state transition when it detects a change in the tilt of the stick that exceeds a predetermined standard.

8. The information processing program according to any one of claims 1 to 7, which causes the computer to determine which of the multiple characters to change the interval at which the state of the character is updated, based on the priority according to the position of each character, when multiple characters are drawn in the game space.

9. To the aforementioned computer, The priority is corrected based on the controller input. Based on the corrected priority, the target of the modification is determined from among the multiple characters. The information processing program according to claim 8.

10. The information processing program according to any one of claims 1 to 7, wherein the computer extends the interval for updating the state of the character by reducing the number of frames for updating the state of the character.

11. To the aforementioned computer, Depending on the game situation, the character's actions are determined. The information processing program according to any one of claims 1 to 7, wherein the controller input is performed based on the action.

12. Computers Based on controller input for controlling a character to be drawn in the game space, the interval at which at least one of the character's position or action in the game space is updated is changed. Information processing methods.

13. The processor comprises, Based on controller input for controlling a character to be drawn in the game space, the interval at which at least one of the character's position or action in the game space is updated is changed. Information processing device.

Citation Information

Patent Citations

  • Widget display method, device, equipment, and computer program

    JP2023528574A