Game processing method, game system, and game program
The game processing system integrates analog sticks and mouse sensors in detachable controllers for enhanced user interaction, enabling intuitive and precise control of virtual objects through separate hand operations.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- NINTENDO CO LTD
- Filing Date
- 2024-11-26
- Publication Date
- 2026-06-05
AI Technical Summary
There is a need for novel game processing methods that enhance user interaction and operability using multiple controllers with integrated analog stick and mouse sensor functionalities.
A game processing system utilizing a main unit and detachable left and right controllers, each equipped with analog sticks and mouse sensors, allowing for combined analog stick and mouse operations to control virtual objects, enabling intuitive movement and precise actions through separate hand operations.
The system provides enhanced user operability by allowing movement operations with analog sticks and fine position control with mouse operations, improving gameplay intuitiveness and accuracy.
Smart Images

Figure 2026092397000001_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to novel game processing.
Background Art
[0002] Conventionally, game controllers have been known (for example, Patent Document 1).
Prior Art Documents
Patent Documents
[0003]
Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0004] There has been room to provide users with novel game processing.
Means for Solving the Problems
[0005] In view of the above points, for example, the following configuration examples can be cited.
[0006] (Configuration 1) Configuration 1 is a game processing method to be executed by a computer including at least one processor, wherein the processor is caused to acquire at least one of the following from a first controller, which is held in one hand of the user and has a first mouse sensor and a first stick operated by the user: first mouse sensor data based on the output of the first mouse sensor or first stick data based on the operation of the first stick; second mouse sensor data based on the output of the second mouse sensor or second stick data based on the operation of the second stick from a second controller, which is held in the other hand of the user and has a second mouse sensor and a second stick operated by the user; first stick data to move a first virtual object based on the first stick data; and second mouse sensor data to move a second virtual object within a first range from the first virtual object.
[0007] (Configuration 2) Configuration 2 may, in Configuration 1 described above, execute a first process in which one of the second virtual object and the third virtual object performs a predetermined action on the other when the second virtual object and the third virtual object are in a predetermined positional relationship.
[0008] (Composition 3) Configuration 3, in Configuration 2, when the second virtual object and the third virtual object are in a predetermined positional relationship, may, as the first process, cause the second virtual object to hold the third virtual object based on button operation data obtained from an operation on a predetermined button provided by the second controller.
[0009] (Composition 4) Configuration 4 may, in configuration 2 or 3 above, execute a second process in which one of the first virtual object and the third virtual object performs a predetermined action on the other when the first virtual object and the third virtual object are in a predetermined positional relationship.
[0010] (Composition 5) Configuration 5 may move the fourth virtual object within the second range from the first virtual object based on the first mouse sensor data, in any of the above configurations 1 to 4.
[0011] (Composition 6) Configuration 6 is the same as Configuration 5, but the first controller may have a first stick and a first set of multiple buttons or directional input buttons on the front and a first mouse sensor on the side. The second controller may have a second stick and a second set of multiple buttons or directional input buttons on the front and a second mouse sensor on the side. In the first controller, the first stick may be positioned above the first set of multiple buttons or directional input buttons, and in the second controller, the second set of multiple buttons or directional input buttons may be positioned above the second stick.
[0012] (Composition 7) Configuration 7 may, in Configuration 6 above, cause the second virtual object or the fourth virtual object to hold the third virtual object when the second virtual object or the fourth virtual object is in a predetermined positional relationship with the third virtual object, and cause the third virtual object to execute a process that applies a predetermined action when the second virtual object or the fourth virtual object is in a predetermined positional relationship with the other, or when the other of the second virtual object or the fourth virtual object is in a predetermined positional relationship with the third virtual object.
[0013] (Composition 8) Configuration 8 may move the second virtual object at a constant height based on second mouse sensor data, and change the height of the second virtual object based on button operation data or second stick data based on operation on a predetermined button on the second controller, in any of the above configurations 1 to 7. [Brief explanation of the drawing]
[0014] [Figure 1]A diagram showing an example of the state where the left controller 3 and the right controller 4 are attached to the main body device 2 [Figure 2] A diagram showing an example of the state where the main body device 2, the left controller 3, and the right controller 4 are used separately [Figure 3] A six-sided view showing an example of the left controller 3 [Figure 4] A six-sided view showing an example of the right controller 4 [Figure 5] A block diagram showing an example of the internal configuration of the main body device 2 [Figure 6] A block diagram showing an example of the internal configurations of the main body device 2, the left controller 3, and the right controller 4 [Figure 7] An example of the operation mode of the controller in the first embodiment [Figure 8] An example of the game screen of the first embodiment [Figure 9] An example of the game screen of the first embodiment [Figure 10] An example of the game screen of the first embodiment [Figure 11] An example of the game screen of the first embodiment [Figure 12] An example of various data stored in the DRAM 85 of the main body device 2 [Figure 13] An example of the data configuration of the operation data 608 [Figure 14] A flowchart showing the details of the game processing according to the first embodiment [Figure 15] A flowchart showing the details of the right arm control processing [Figure 16] An example of the operation mode of the controller in the second embodiment [Figure 17] An example of the game screen in the second embodiment [Figure 18] An example of the game screen in the second embodiment [Figure 19] An example of the game screen in the second embodiment [Figure 20] A flowchart showing the details of the game processing according to the second embodiment [Figure 21] A flowchart showing the details of the left arm control processing [Modes for carrying out the invention]
[0015] The following describes one embodiment. Figure 1 shows an example of the appearance of the game system according to this embodiment. An example of the game system 1 in this embodiment includes a main unit (information processing device; functioning as the main unit of the game device in this embodiment) 2, which is an example of a computer, and a left controller 3 and a right controller 4. The left controller 3 and the right controller 4 are detachable from the main unit 2. In other words, as shown in Figure 1, 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. Also, as shown in Figure 2, the game system 1 can be used with the main unit 2 and the left controller 3 and right controller 4 as separate units. In the following, the left controller 3 and the right controller 4 may be collectively referred to as "controllers".
[0016] The main unit 2 includes a display 12. The display 12 displays images generated by the main unit 2. The display 12 is, for example, a liquid crystal display (LCD).
[0017] Next, the controller will be described. Figure 3 is a six-view drawing showing an example of the left controller 3. As shown in Figure 3, the left controller 3 has a vertically elongated shape, that is, a shape that is long in the z-axis direction as shown in Figure 3. When the left controller 3 is attached to the main unit 2, it has a protrusion 40 that fits into a recess (not shown) of the main unit 2. When the left controller 3 is removed from the main unit 2, it can also be held in a vertically elongated orientation. When the left controller 3 is held in a vertically elongated orientation, it has a shape and size that allows it to be held with one hand, especially the left hand. The left controller 3 can also be held in a horizontally elongated orientation, and when held in a horizontally elongated orientation, it may be held with both hands.
[0018] The left controller 3 is equipped with a left analog stick (sometimes referred to as the "left stick") 32, which is an example of a directional input device. As shown in Figure 2, the left stick 32 is located on the front of the left controller 3. The left stick 32 can be used as a directional input unit that can input directions. The user can input directions according to the direction of tilt by tilting the left stick 32, and can input an amount of force according to the angle of tilt.
[0019] The left controller 3 is equipped with various operation buttons. On its front, the left controller 3 is equipped with a right direction button 33, a down direction button 34, an up direction button 35, a left direction button 36, a record button 37, and a minus button 47. The left controller 3 is equipped with an L button 38 and a ZL button 39 on its top and left sides. Note that the L button 38 and ZL button 39 may be provided only on the top side of the left controller 3, or only on the left side. The left controller 3 is equipped with buttons 43 and 44 on a protrusion 40 on its right side.
[0020] The left controller 3 is provided with a mouse sensor aperture 70 on a protrusion 40 on its right side. The mouse sensor aperture 70 is an aperture that guides light to a mouse sensor 71 located inside it. The mouse sensor 71 is, for example, a general mouse sensor (e.g., an optical or laser mouse sensor), and acquires data for calculating the movement (direction of movement, distance of movement, speed of movement, etc.) of the left controller 3 on the work surface, which is positioned with its right side (i.e., the upper surface of the protrusion 40) facing the work surface.
[0021] Furthermore, the left controller 3 is equipped with a terminal 72 on the protrusion 40 on its right side for wired communication between the left controller 3 and the main unit 2.
[0022] Figure 4 is a six-view drawing showing an example of the right controller 4. As shown in Figure 4, the right controller 4 has a vertically elongated shape, that is, a shape that is long in the z-axis direction as shown in Figure 4. The right controller 4 has a protrusion 62 that fits into a recess (not shown) of the main unit 2 when it is attached to the main unit 2. When the right controller 4 is removed from the main unit 2, it can also be held in a vertically elongated orientation. When the right controller 4 is held in a vertically elongated orientation, it has a shape and size that allows it to be held with one hand, especially the right hand. The right controller 4 can also be held in a horizontally elongated orientation, and when held in a horizontally elongated orientation, it may be held with both hands.
[0023] The right controller 4 has a right analog stick (sometimes referred to as the "right stick") 52 on its front as a directional input section. In this embodiment, the right stick 52 has the same configuration as the left stick 32 of the left controller 3. The right controller 4 has various operation buttons. On its front, the right controller 4 has an A button 53, a B button 54, an X button 55, a Y button 56, a + (plus) button 57, and a home button 58. The right controller 4 has an R button 60 and a ZR button 61 on its top and right sides. Note that the R button 60 and ZR button 61 may be provided only on the top surface of the right controller 4, or only on the right side. The right controller 4 has buttons 65 and 66 on a protrusion 62 on its left side.
[0024] The right controller 4 is provided with a mouse sensor aperture 73 on a protrusion 62 on its left side. The mouse sensor aperture 73 is an aperture that guides light to a mouse sensor 74 located inside it. The mouse sensor 74 is, for example, a general mouse sensor (e.g., an optical or laser mouse sensor), and acquires data for calculating the movement (direction of movement, distance of movement, speed of movement, etc.) of the right controller 4 on the work surface, which is positioned with its left side (i.e., the upper surface of the protrusion 62) facing the work surface.
[0025] Furthermore, the right controller 4 is equipped with a terminal 75 on a protrusion 62 on its left side for wired communication between the right controller 4 and the main unit 2.
[0026] Figure 5 is a block diagram showing an example of the internal configuration of the main unit 2. The main unit 2 includes a processor 81. The processor 81 is an information processing unit that performs various information processing operations in the main unit 2, and may consist of, for example, one or more CPUs (Central Processing Units), or it may consist of a SoC (System-on-a-chip) that includes multiple functions such as CPU function and GPU (Graphics Processing Unit) function. The processor 81 performs various information processing operations by executing information processing programs (for example, game programs) stored in a storage unit (specifically, an internal storage medium such as flash memory 84, or an external storage medium installed in slot 23).
[0027] The main unit 2 includes a flash memory 84 and a DRAM (Dynamic Random Access Memory) 85 as examples of internal storage media. The flash memory 84 is a memory primarily used to store various types of data (which may be programs) stored in the main unit 2. The DRAM 85 is a memory used to temporarily store various types of data used in information processing. The processor 81 performs various information processing by appropriately reading and writing data to and from storage media such as the flash memory 84 and the DRAM 85.
[0028] Furthermore, the main unit 2 has various configurations as shown in Figure 5. These are briefly explained below. The slot interface (sometimes referred to as "slot I / F") 91 reads and writes data to a predetermined type of storage medium (e.g., a dedicated memory card) installed in slot 23, according to instructions from the processor 81. The network communication unit 82 communicates with external devices via the network (e.g., internet communication).
[0029] The controller communication unit 83 communicates wirelessly with the left controller 3 and / or the right controller 4 (for example, communication in accordance with the Bluetooth® standard). The left terminal 17 is a terminal for data communication between the processor 81 and the left controller 3. The right terminal 21 is a terminal for data communication between the processor 81 and the right controller 4. The lower terminal 27 is a terminal for outputting data (for example, image data or audio data) to a stationary monitor or the like via the cradle when the lower terminal 27 is mounted in the cradle.
[0030] The display 12 displays images generated by the processor 81 and / or images acquired from an external source. The codec circuit 87 controls the input and output of audio data to the speaker 88 and the audio input / output terminal 25. The power control unit 97 controls the power supply from the battery 98 to each part of the main unit 2 (i.e., each part that receives power from the battery 98) based on commands from the processor 81, and also starts or stops the power supply in response to the pressing of the power button 28.
[0031] Figure 6 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 the details of the internal configuration of the main unit 2 are shown in Figure 5 and are therefore omitted in Figure 6.
[0032] The left controller 3 includes a communication control unit 101 that communicates with the main unit 2. As shown in Figure 6, the communication control unit 101 is connected to each component, including terminal 42. When the left controller 3 is mounted on the main unit 2, the communication control unit 101 communicates with the main unit 2 via terminal 42, and when the left controller 3 is detached from the main unit 2, it performs wireless communication with the main unit 2.
[0033] The left controller 3 includes a memory 102, such as flash memory. The communication control unit 101 is composed of a microcontroller (also called a microprocessor) and performs various processes by executing firmware stored in the memory 102.
[0034] The left controller 3 is equipped with various buttons 103 (right direction button 33, down direction button 34, up direction button 35, left direction button 36, L button 38, ZL button 39, etc.) and a left stick 32. Each button 103 and the left stick 32 repeatedly output information about the operation performed on them to the communication control unit 101 at appropriate intervals.
[0035] The left controller 3 is equipped with a mouse sensor 71. The mouse sensor 71 acquires data to calculate the movement of the left controller 3 on the work surface (direction of movement, distance of movement, speed of movement, etc.). The data acquired by the mouse sensor 71 is repeatedly output to the communication control unit 101 at appropriate intervals.
[0036] The communication control unit 101 acquires information related to input (specifically, information related to operation or detection results from sensors) from each input unit (specifically, each button 103, the left stick 32, and each sensor 104, 105, and 71). The communication control unit 101 transmits operation data, which includes the acquired information or information that has been processed in a predetermined manner, to the main unit 2. The operation data is transmitted repeatedly at a rate of once every predetermined time.
[0037] When the above operation data is transmitted to the main unit 2, the main unit 2 can obtain input from the left controller 3. That is, the main unit 2 can determine operations on each button 103 and the left stick 32 based on the operation data. The main unit 2 can also calculate information about at least one of the movement or posture of the left controller 3 based on the operation data (specifically, the detection results of the acceleration sensor 104 and the angular velocity sensor 105). The main unit 2 can also calculate information about mouse operations performed on the left controller 3 based on the operation data (specifically, the detection results of the mouse sensor 71). Various determinations regarding the state of the left controller 3 may also be performed. For example, the main unit 2 may determine whether the mouse sensor opening 70 is in contact with or close to contacting the work surface based on the data transmitted from the communication control unit 101. Such calculations and determinations may be performed, for example, by the system software of the main unit 2, by the game application, or by the controller.
[0038] The left controller 3 includes a power supply unit 108. The power supply unit 108 has a battery and a power control circuit. 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).
[0039] As shown in Figure 6, the right controller 4 includes a communication control unit 111 that communicates with the main unit 2. The right controller 4 also includes a memory 112 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 the 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 by wired communication via the terminal 64 and by wireless communication without the terminal 64 (specifically, communication according to the Bluetooth® standard), and controls the communication that the right controller 4 makes to the main unit 2.
[0040] The right controller 4 is equipped with inputs similar to those of the left controller 3. Specifically, it is equipped with buttons 113 (A button 53, B button 54, X button 55, Y button 56, R button 60, ZR button 61, etc.), a right stick 52, and a mouse sensor 74. These inputs may have the same functions as those of the left controller 3 and may operate in the same manner.
[0041] (First embodiment) Next, the first embodiment will be described. In the first embodiment, the main unit 2, with the left controller 3 and right controller 4 removed, is mounted on the cradle, and the main unit 2 outputs game images to a stationary monitor or the like via the cradle.
[0042] First, we will explain the operation method of the controller assumed in the first embodiment. Figure 7 shows a schematic diagram of the operation method of the controller assumed in the first embodiment. As shown in Figure 7, the left hand grasps and operates the left controller 3. The right hand operates the right controller 4 with the side with the mouse sensor opening in contact with the work surface, and the right hand rests on the right side of the right controller 4. In other words, the right controller 4 is operated as a mouse. Hereafter, the operation method with the left hand as shown in Figure 7 will be called controller operation, and the operation method with the right hand as shown in Figure 7 will be called mouse operation. Also, for the sake of convenience in the explanation below, to distinguish between mouse operations related to the left and right controllers, mouse operations with the left controller 3 will be called "left mouse operation," and mouse operations with the right controller 4 will be called "right mouse operation."
[0043] Next, we will describe the outline of the game envisioned in the first embodiment. The game envisioned in the first embodiment is a game in which the player controls a robot player object (hereinafter referred to as PO) to move blocks in a virtual space. Figure 8 shows the game screen according to the first embodiment. In Figure 8, PO201 and multiple block objects (hereinafter simply referred to as blocks) 210 are displayed in a virtual three-dimensional space. PO201 is composed of a main body object (hereinafter simply referred to as the main body) 202, a right arm object (hereinafter simply referred to as the right arm) 203, and a left arm object (hereinafter simply referred to as the left arm) 204. The tip of the right arm 203 is provided with claws.
[0044] Next, we will explain the operation of this game. In this game, the main body 202 can be moved in the virtual space using the left stick 32. In addition, the right arm 203 and left arm 204 move together with the movement of the main body 202. Hereafter, the integrated movement of the main body 202, right arm 203 and left arm 204 will be referred to as "movement of PO201". In other words, in this game, PO201 can be moved with the left stick 32. Furthermore, by moving the right controller 4 on the work surface (hereinafter referred to as right mouse movement operation), only the right arm 203 can be moved within a predetermined range with the right shoulder of PO201 as the base point. For example, Figure 9 shows the state in which the right arm 203 is extended forward by moving the right controller 4 forward on the work surface. Also, Figure 10 shows the state in which the extended right arm 203 is moved to the right by moving the right controller 4 to the right on the work surface. Then, when the right arm 203 and block 210 are in a predetermined positional relationship, pressing the R button 60 (hereinafter referred to as R-click) allows the character to grab block 210. For example, by moving PO201 to a position close to block 210 using the left stick 32, and then moving the tip of the right arm 203 closer to block 210 using the right mouse and pressing the R button 60, the character will grab one of the stacked blocks 210, as shown in Figure 11. This grabbing action (hereinafter referred to as the grabbing action) involves, for example, the claw at the tip of the right arm 203 descending, grabbing block 210, and then rising back to its original position. Additionally, by R-clicking again while holding block 210, the character can release the grip. Specifically, the claw descends, drops the grabbed block 210, and then rises again (hereinafter referred to as the release action). Therefore, while holding block 210, the user can move PO201 to the designated location set as the destination for block 210 by operating the left stick 32, and then place block 210 at this location by R-clicking.
[0045] The above method of operating the grabbing action is just one example. For example, the system could be controlled so that the grabbing state continues while the R button 60 is pressed, and the grabbing action is released when the finger is released from the R button 60.
[0046] [Examples of data used] Next, we will explain the various data used in the processing of the first embodiment. Figure 12 is a memory map showing an example of the various data stored in the DRAM 85 of the information processing device 2. The DRAM 85 stores the game program 601, game stage data 602, player object data 603, block object data 607, operation data 608, etc.
[0047] Game program 601 is a program for executing game processing.
[0048] Game stage data 602 is data that defines the structure of the game stage. For example, it defines the terrain of the game stage and the placement of the blocks mentioned above.
[0049] The player object data 603 is data relating to the PO201 mentioned above. The player object data 603 includes the main body object data 604, the right arm object data 605, and the left arm object data 606. The main body object data 604 is data relating to the main body 202 mentioned above, and includes data indicating the current position and posture, etc. The right arm object data 605 is data relating to the right arm 203 mentioned above, and includes various data indicating the position, posture, and current state of the right arm 203 (whether or not it is performing a grasping motion, etc.). The left arm object data 606 is data relating to the left arm 204 mentioned above, and includes various data indicating the position, posture, and current state of the left arm 204.
[0050] The block object data 607 is data relating to the block 210 described above. The block object data 607 includes data showing the appearance of the block 210, as well as various data indicating the current position, orientation, and current state (whether or not it is being held, etc.) of each of the multiple blocks 210.
[0051] Operation data 608 is data that indicates the operation performed on the controller. Figure 13 shows an example of the data structure of operation data 608. Operation data 608 includes right controller data 641 and left controller data 651.
[0052] The right controller data 641 includes right button operation data 642, right stick operation data 643, and right mouse operation data 644. The right button operation data 642 is data indicating the pressed state of each button 113 of the right controller 4. The right stick operation data 643 is data indicating the input direction and input amount of the right stick 52. The right mouse operation data 644 is data indicating the detection result of the mouse sensor 74 of the right controller 4. The right mouse operation data 644 may be, for example, data indicating the amount of movement along the x and y axes, or the position coordinates (x, y) on the virtual mouse plane.
[0053] The left controller data 651 includes left button operation data 652, left stick operation data 653, and left mouse operation data 654. The left button operation data 652 is data indicating the pressed state of each button 103 of the left controller 3. The left stick operation data 653 is data indicating the input direction and input amount of the left stick 32. The left mouse operation data 654 is data indicating the detection result of the mouse sensor 71 of the left controller 3.
[0054] [Example flowchart] Next, an example of a game processing flowchart according to the first embodiment will be described. In this example, the flowchart shown below is realized by one or more processors reading and executing programs stored in one or more memories. Furthermore, this flowchart is merely one example of the processing process. Therefore, the processing order of each step may be changed if similar results can be obtained. Also, the values of the variables and the thresholds used in the judgment step are merely examples, and other values may be used as needed.
[0055] Figure 14 is a flowchart detailing a game processing example according to the first embodiment. The processing loop of steps S1 to S7 in Figure 14 is repeated multiple times per second depending on the frame rate.
[0056] When game processing begins, preparation processing is performed first (step S1). In this process, a virtual space as shown in Figure 8 above is constructed, and PO201 and block 210 are placed in predetermined positions defined as initial placement locations. Then, an image of this virtual space captured by a virtual camera is output as the game image, gameplay begins, and processing proceeds to step S2.
[0057] Next, operation data 608 is acquired (step S2). Then, based on the operation data 608, it is determined whether or not some operation (hereinafter referred to as left stick operation) has occurred on the left stick 32 (step S3). If the result of this determination is that an operation has occurred (YES in step S3), movement control of PO201 is performed based on the content of the operation on the left stick 32. That is, the main body 202 is moved based on the left stick operation data 653, and the right arm 203 and left arm 204 are moved together in conjunction with it. On the other hand, if no left stick operation has occurred (NO in step S3), the process in step S4 is skipped.
[0058] Next, the right arm control process is executed (step S5). Figure 15 is a flowchart detailing the right arm control process. In Figure 15, first, it is determined whether or not a right mouse movement operation has been performed based on the operation data 608 (step S21). If, as a result of this determination, a right mouse movement operation has been performed (YES in step S21), the movement of the right arm 203 is controlled based on the right mouse operation data 644 (step S22). On the other hand, if a right mouse movement operation has not been performed (NO in step S21), the process in step S22 is skipped.
[0059] Next, it is determined whether or not an R click has been performed (step S23). If an R click has not been performed (NO in step S23), the right arm control process ends. On the other hand, if an R click has been performed (YES in step S23), it is then determined whether or not the right arm 203 is currently grasping the block 210 while not performing the grasping operation described above (step S24). If it is not grasping the block 210 (NO in step S24), it is then determined whether or not the right arm 203 (more precisely, the tip of the right arm 203) and the block 210 are in a predetermined positional relationship (step S25). For example, it is determined whether or not the distance between the tip of the right arm 203 and any of the blocks 210 is within a predetermined distance. If, as a result of this determination, the predetermined positional relationship is not met (NO in step S25), the right arm control process ends. On the other hand, if the predetermined positional relationship is met (YES in step S25), control of the grasping motion described above is initiated targeting the block 210 closest to the tip of the right arm (step S26). After that, the right arm control process ends.
[0060] On the other hand, if the result of the determination in step S24 is that the block 210 is being grasped (YES in step S24), control of the grasp release operation is started (step S27). After that, the right arm control process ends.
[0061] Returning to Figure 14, a game image reflecting the results of the above processes is generated and output (step S6).
[0062] Next, it is determined whether the conditions for terminating the game process have been met (step S7). If the conditions are not met (NO in step S7), the process returns to step S1 and is repeated. If the conditions are met (YES in step S7), the game process is terminated.
[0063] Thus, in the first embodiment, the left stick 32 is used to move PO201, and the right mouse is used to move the right arm 203 and perform the action of grasping the block 210. This makes it possible to provide a novel game that combines analog stick operation and mouse operation in a configuration where separate controllers are operated with the left and right hands. In particular, movement operations that can significantly change the position in the virtual space are performed with stick operation, and fine position control such as positioning to grasp the block 210 as described above is performed with mouse operation, providing an intuitive and suitable operability. For example, if the position of the right arm 203 is to be fixed at a certain position, if the position of the right arm 203 is to be operated with the right stick 52, it may be necessary to maintain the right stick 52 at a constant angle. However, compared to such operation, controlling movement with the right mouse operation makes it easier to fix the position to the desired location and to grasp the block more accurately.
[0064] In this embodiment, the information processing device 2 acquires left mouse operation data 654 but does not use it in game processing. That is, although the left controller 3 has a device called a mouse sensor 71, it is not used in game processing. The same applies to the right stick 52 of the right controller 4. In this way, the game controller has multiple devices suitable for movement operations, and the information processing device 2 acquires their operation data, but by using only the appropriate data from among them in game processing, the user's operability can be improved. In this embodiment, the right stick 52 may be used in game processing.
[0065] (Second example) Next, a second embodiment will be described. In the first embodiment, an example was given in which the right arm 203 of PO201 is operated with the right controller 4, but in the second embodiment, a game is assumed in which the left arm 204 is also operated in addition to the right arm 203.
[0066] First, the operation method of the controller assumed in the second embodiment will be explained. Figure 16 shows an example of the operation method assumed in the second embodiment. As shown in Figure 16, in the second embodiment, both the left and right controllers are operated using the mouse. The left stick 32 is operated by placing the left thumb on the left stick 32 in this posture. In addition, the game according to the second embodiment does not use the right stick 52, but in other embodiments, the game may also use the right stick 52.
[0067] Next, Figure 17 shows an example of a game screen assumed in the second embodiment. In the second embodiment, the tip of the left arm 204 of PO201 is a drill. The game assumed in the second embodiment is one in which the player grasps a block with the right arm 203 and destroys this block with the drill on the left arm 204, as shown in Figures 18 and 19.
[0068] Next, the operation in the second embodiment will be described. In the second embodiment, as in the first embodiment, PO201 can be moved with the left stick 32. Also, the operation of grasping block 210 using the right mouse is the same as in the first embodiment. In addition to these operations, in the second embodiment, the left arm 204 can be moved within a predetermined range with the left shoulder portion of PO201 as the pivot point by moving the left controller 3 on the work surface (hereinafter referred to as left mouse movement operation). Then, while grasping block 210 with the right arm 203, when the drill portion at the tip of the left arm 204 is brought close to the block, the drill will automatically operate and destroy block 210. Note that the drill operation will automatically stop when the destruction is complete or when the distance between the drill and the block exceeds a certain amount.
[0069] Next, we will describe the details of the game processing according to the second embodiment. First, the data used in the processing in the second embodiment is basically the same as in the first embodiment (see Figure 12 above). Therefore, a detailed explanation will be omitted, but the left arm object data 606 includes, for example, information indicating the operating state of the drill, and other data that is necessary depending on the game content as described above. The block object data 607 also includes, for example, information indicating whether each block 210 has been destroyed.
[0070] Next, an example of a game processing flowchart according to the second embodiment will be described. Figure 20 is a detailed flowchart of the game processing example according to the second embodiment. In the flowchart shown in Figure 20, the same processing as in the flowchart of Figure 14 described in the first embodiment is executed, except for the "left arm control processing" in step S41. Therefore, only the processing related to step S41 will be described here, and the details of the other processing will be omitted.
[0071] In Figure 20, the left arm control process is executed after the process in step S5 (step S41). Figure 21 is a flowchart detailing the left arm control process. In Figure 21, first, it is determined whether or not a left mouse movement operation has been performed based on the operation data 608 (step S51). If the result of this determination is that a left mouse movement operation has been performed (YES in step S51), the movement of the left arm 204 is controlled based on the left mouse operation data 654 (step S52). On the other hand, if a left mouse movement operation has not been performed (NO in step S51), the process in step S52 is skipped.
[0072] Next, it is determined whether the right arm 203 is currently grasping the block (step S53). If it is not grasping the block (NO in step S53), the left arm control process ends. On the other hand, if it is grasping the block (YES in step S53), it is then determined whether the left arm 204 (more precisely, the tip of the left arm 204) and the block 210 being grasped by the right arm 203 are in a predetermined positional relationship (step S54). For example, it is determined whether the distance between the tip of the left arm 204 and the block 210 being grasped by the right arm 203 is within a predetermined distance. If the result of this determination is that the predetermined positional relationship is not achieved (NO in step S54), the left arm control process ends. On the other hand, if the predetermined positional relationship is achieved (YES in step S54), an action to destroy the block 210 being grasped by the right arm 203 is performed (step S55). After that, the left arm control process ends.
[0073] In addition, regarding the determination in step S54 above, in other embodiments, it may be determined whether the left arm 204 and the right arm 203 (which is in a grasping position) are in a predetermined positional relationship.
[0074] Afterward, the process returns to Figure 20, and the steps from step S6 onward described above are executed. This concludes the explanation of the flowchart example for the second embodiment.
[0075] Thus, in the second embodiment, a novel game can be provided that uses both an analog stick and left and right mouse operation. Focusing on the position of the analog sticks in the left and right controllers of this example, the left controller 3 has an L button 38 on the upper part (shoulder) of the left controller 3, as shown in Figure 3 above, and the left stick 32 and buttons 33-36 are located on the front. The left stick 32 is positioned above buttons 33-36. On the other hand, the right controller 4 has a right stick 52 and buttons 53-56 on the front, but the position of buttons 53-56 is positioned above the right stick 52. When considering the case where the left and right controllers are operated with a mouse, the side with the mouse sensor opening is facing downwards, and the index and middle fingers are placed on the upper part of the controller (where the L / R buttons are located). In this case, the thumb will also be relatively high up. Therefore, when moving the PO201, using the left controller 3, which has an analog stick on top, improves the operability of moving the PO201 (compared to when using the right stick 52).
[0076] [Differentiation]
[0077] The game processing in the first and second embodiments described above may be applied in separate games, or in different scenes within a single game. In the latter case, for example, the PO201 being operated may be switched automatically or manually from among several types of PO201, or the PO201 being operated may differ depending on the stage.
[0078] Furthermore, in the above embodiments, an example of PO201 was given as a robot with two arms, one on the left and one on the right. However, the number of arms is not limited; for example, a virtual object with only one arm may also be used.
[0079] Furthermore, the movements of the arms and the body do not need to be clearly distinguished. For example, the body's posture and shape may change in conjunction with the movement of the arms. In such cases, the main part of the player object that is moved by the right mouse operation can be considered the arm object, and the main part that is moved by the left stick operation can be considered the body object.
[0080] Furthermore, PO201 is not limited to virtual objects that resemble human figures as described above; for example, it could be a virtual animal object or a virtual vehicle object.
[0081] Furthermore, while the right arm 203 was used as an example of the target of right-mouse operation in the above example, the target of right-mouse operation is not limited to this. For example, it could be a weapon object or an object such as a viscous substance that extends from the main body in response to right-mouse operation.
[0082] Furthermore, in the above example, the range of motion of the right arm 203 was shown to be within a predetermined range based on the right shoulder of PO201, but the setting of the range of motion is not limited. In other embodiments, for example, the range of motion may be within a circular or spherical area of a predetermined size centered on the main body 202, or it may be configured to be movable only on the circumference of a circle of a predetermined size centered on the main body 202. Also, regarding the range of motion of the right arm 203 and the left arm 204 in the second embodiment described above, in other embodiments they may be different ranges or the same range.
[0083] Furthermore, the above embodiment shows an example of performing a "grab" operation when the right arm 203 and the block 210 are in a predetermined positional relationship. In other words, it shows an example of an operation in which the right arm 203 and the block 210 interact. The example of an operation is not limited to "grab" or "break" as in the second embodiment, but may also be an operation that performs other actions. For example, the right arm 203 may have collision detection so that it pushes the block 201 or other objects, or it may prevent the right arm 203 or PO201 from moving any further. In addition, other operations such as "bounce," "burn," or "push aside" may be performed. In other embodiments, depending on the object corresponding to the right arm, operations such as "attack," "paint," "devour," "open," or "absorb" may be performed. Furthermore, in other embodiments, an operation in which some kind of interaction occurs may be performed not only between the right arm 203 and the block 210, but also between the main body 202 and the block 210. For example, if the "grab" process described above is an example of the first process, a second process may be executed separately when the main body 202 and the block 210 are in a predetermined positional relationship. Examples of the second process include, for example, a process in which the main body 202 takes damage when it collides with the block 210, or a process in which the block 210 is pushed. Note that the right arm 203 and the main body 202 do not necessarily have to be able to interact with other objects. As an example, the above process may be applied to a game in which the position of the main body 202 and the right arm 202 is manipulated and the resulting state is photographed.
[0084] Furthermore, regarding the operation using the right controller 4, the above example shows a game in which the right stick 52 is not used, but the above processing may also be applied to games in which the right stick 52 is used in conjunction. For example, regarding the movement control of the right arm 203, the right mouse operation may be used to move the right arm 203 horizontally at a constant height, and the operation of the right stick 52 may be used to move the right arm 203 vertically. Alternatively, instead of the right stick 52, the operation of the A button 53, B button 54, X button 55, and Y button 56 may be used to control the movement of the right arm 203 vertically.
[0085] Furthermore, while the above example uses a game where players move and break 210 blocks, it goes without saying that the game content is not limited to this. For example, it can be applied to action games such as FPS (First-person shooter) and TPS (Third-person shooter), music games, and puzzle games. Of course, it is not limited to 3D games; it can also be applied to 2D games such as those with an overhead or top-down view. In addition, it can be applied to games in which one user controls two player characters simultaneously. For example, consider a game where character A is controlled by left controller 3, and character B is controlled by right controller 4. Character A is the main character, and its movement is controlled by left stick 32. Character B is a character that can only move within a predetermined range from character A, and can be summoned as needed. By controlling character B's movement with the right mouse, fine control of its destination is possible, and it is also easy to keep character B in a predetermined position.
[0086] Furthermore, in other embodiments, the main unit 2 may be, for example, an information processing device such as a smartphone, tablet terminal, personal computer, or wearable terminal. Also, the main unit 2 may not have a display 12. In addition, the processor 81 may be a general-purpose processor or a dedicated processor, and is not limited to any particular form such as a SoC, CPU, ASIC, or microcontroller.
[0087] Furthermore, the above controller configuration is merely an example, and its shape is not limited to that shown above; it may take other shapes. Also, the controller may not be detachable from the main unit 2. The types and number of input sections are also not limited to those shown above. For example, one controller may have only one of the above-mentioned buttons or a directional input section. The controllers do not necessarily have to come in pairs.
[0088] Furthermore, the above embodiment described a case in which the above processing is performed on a single information processing device 2. The information processing device 2 may include multiple storage devices and processors. The processing may be divided among these and executed by each of them. The information processing device may also be a server, and the above processing may be performed in a distributed system consisting of multiple information processing devices, including at least one server. [Explanation of Symbols]
[0089] 2. Information Processing Device 3 Left controller 4 Right controller 32 Left Stick 38 L button 52 Right Stick 60 R button 71 Mouse Sensor 74 Mouse detection 81 processors 85 DRAM
Claims
1. A game processing method to be executed on a computer including at least one processor, The aforementioned processor, A first controller, which is held in one hand of the user and has a first mouse sensor and a first stick operated by the user, is used to acquire at least one of the first mouse sensor data based on the output of the first mouse sensor or the first stick data based on the operation of the first stick. A second controller, held in the other hand of the user, and having a second mouse sensor and a second stick operated by the user, is used to acquire at least one of the second mouse sensor data based on the output of the second mouse sensor or the second stick data based on the operation of the second stick. Based on the first stick data, the first virtual object is moved. A game processing method that moves a second virtual object within a first range from the first virtual object based on the second mouse sensor data.
2. The game processing method according to claim 1, wherein when the second virtual object and the third virtual object are in a predetermined positional relationship, one of the second virtual object and the third virtual object performs a first process that gives a predetermined effect to the other.
3. The game processing method according to claim 2, wherein, when the second virtual object and the third virtual object are in a predetermined positional relationship, the first processing involves causing the second virtual object to hold the third virtual object based on button operation data obtained from an operation on a predetermined button on the second controller.
4. The game processing method according to claim 2, wherein when the first virtual object and the third virtual object are in a predetermined positional relationship, one of the first virtual object and the third virtual object performs a second process that gives a predetermined effect to the other.
5. The game processing method according to claim 1, wherein a fourth virtual object is moved within a second range from the first virtual object based on the first mouse sensor data.
6. The first controller comprises the first stick and a first set of multiple buttons or directional input buttons on the front, and the first mouse sensor on the side. The second controller comprises the second stick and a second set of multiple buttons or directional input buttons on the front, and the second mouse sensor on the side. In the first controller, the first stick is positioned above the first set of buttons or directional input buttons. The game processing method according to claim 5, wherein in the second controller, the second set of multiple buttons or directional input buttons are positioned above the second stick.
7. When the second virtual object or the fourth virtual object and the third virtual object are in a predetermined positional relationship, the third virtual object is made to be held by the second virtual object or the fourth virtual object. The game processing method according to claim 5, wherein when one of the second virtual object or the fourth virtual object and the other are in a predetermined positional relationship, or when the other of the second virtual object or the fourth virtual object and the third virtual object are in a predetermined positional relationship, a process is executed to apply a predetermined action to the third virtual object.
8. Based on the second mouse sensor data, the second virtual object is moved to a constant height. The game processing method according to claim 1, wherein the height of the second virtual object is changed based on button operation data or second stick data based on operation on a predetermined button on the second controller.
9. A game system having at least one processor, The aforementioned processor, A first controller, which is held in one hand of the user and has a first mouse sensor and a first stick operated by the user, acquires at least one of the first mouse sensor data based on the output of the first mouse sensor or the first stick data based on the operation of the first stick. A second controller, held in the other hand of the user, has a second mouse sensor and a second stick operated by the user, from which at least one of the second mouse sensor data based on the output of the second mouse sensor or the second stick data based on the operation of the second stick is acquired. Based on the first stick data, the first virtual object is moved. A game system that moves a second virtual object within a first range from the first virtual object based on the second mouse sensor data.
10. A game program to be run on a computer containing at least one processor, The aforementioned processor, A first controller, which is held in one hand of the user and has a first mouse sensor and a first stick operated by the user, is used to acquire at least one of the first mouse sensor data based on the output of the first mouse sensor or the first stick data based on the operation of the first stick. A second controller, held in the other hand of the user, and having a second mouse sensor and a second stick operated by the user, is used to acquire at least one of the second mouse sensor data based on the output of the second mouse sensor or the second stick data based on the operation of the second stick. Based on the first stick data, the first virtual object is moved. A game program that moves a second virtual object within a first range from the first virtual object based on the second mouse sensor data.