Game program, information processing system, information processing device, and game processing method
Patent Information
- Application Number
- JP2024122424
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-07-29
- Publication Date
- 2025-10-22
AI Technical Summary
Existing games struggle with ensuring visibility in virtual spaces by only brightening the surrounding area with a light source, leading to inconsistent and undesired brightness ranges.
A game program and processing method that dynamically changes visibility areas in a virtual space by setting a target range based on events, using light sources to ensure visibility within the target range and mask data to control brightness and visibility outside the range through deferred rendering techniques.
Dynamically adjusts visibility in virtual spaces, ensuring consistent brightness and visibility within the target range, enhancing gameplay by making areas outside the target range less visible, and allowing for natural-looking transitions.
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
[Technical field]
[0001] The present invention relates to a game program, an information processing system, an information processing device, and a game processing method for rendering a virtual space. [Background technology]
[0002] Conventionally, there is a game device that executes a game in which a player explores an area with low visibility (e.g., an area displayed darkly) in a virtual space using an item that serves as a light source (see, for example, Non-Patent Document 1). In the above game, the player character holds an item that serves as a light source, such as a torch, in a dark area (e.g., an area inside a cave) in the game field, thereby brightening the surroundings of the player character and ensuring visibility. [Prior art documents] [Non-patent literature]
[0003] [Non-Patent Document 1] "The Legend of Zelda: Breath of the Wild: Nintendo Official Guidebook", Shogakukan, May 11, 2017, p211 Summary of the Invention [Problem to be solved by the invention]
[0004] In the above-mentioned games, the result of setting a light source is that the surrounding area becomes brighter, but brightness is not ensured for a desired range in the virtual space.
[0005] Therefore, an object of the present invention is to provide a game program, an information processing system, an information processing device, and a game processing method that can dynamically change areas of low visibility and areas with ensured visibility in a virtual space based on game processing. [Means for solving the problem]
[0006] In order to solve the above problems, the present invention employs the following configurations (1) to (13).
[0007] (1) An example of the present invention is a game program that causes a computer of an information processing device to perform the following processes. Processing to set a target range within the virtual space when a specific event occurs based on game processing In a rendering process for rendering a virtual space, a process for rendering at least a portion of a terrain object in the virtual space that is included in the target range by reflecting a light source set in the virtual space, and rendering the portion that is not included in the target range in a specified color or with reduced brightness.
[0008] According to the above configuration (1), areas of low visibility in the virtual space (i.e., areas outside the target range) and areas with guaranteed visibility (i.e., areas within the target range) can be dynamically changed based on game processing.
[0009] (2) In the above configuration (1), the computer may generate mask data for at least a portion of the terrain object, for each pixel, in the drawing process, which at least indicates whether or not a position of the terrain object corresponding to the pixel is included in the target range. The computer may also perform drawing in the frame buffer, reflecting a light source, for pixels in which the mask data indicates that the positions of at least a portion of the terrain object are included in the target range. The computer may perform drawing in the frame buffer, in a predetermined color or with reduced brightness, for pixels in which the mask data indicates that the positions of at least a portion of the terrain object are not included in the target range.
[0010] According to the above configuration (2), by using the mask data, it is possible to easily perform a rendering process in which the area outside the target range is made invisible or difficult to view.
[0011] (3) In the above configuration (2), the drawing process may be based on deferred rendering. The computer may write at least a part of a terrain object in the virtual space to a G-buffer and a depth buffer in a first stage of the drawing process. The computer may generate mask data for each pixel based on a position corresponding to the pixel, a depth value stored in the depth buffer, and a target range in a second stage of the drawing process. The computer may perform drawing in the frame buffer based on at least the data stored in the G-buffer and the mask data in a third stage of the drawing process.
[0012] According to the above configuration (3), it is possible to use a deferred rendering technique to render objects outside the target range in a manner that is invisible or difficult to perceive.
[0013] (4) In the above configuration (3), the computer may further perform, in a first stage of the rendering process, writing to the G buffer and the depth buffer for each pixel of a predetermined object, and generate exclusion mask data indicating that application of mask data is to be excluded for pixels corresponding to the object. In a third stage of the rendering process, the computer may perform rendering of pixels indicated by the exclusion mask data in a manner that allows at least a portion of the terrain object that is not included in the target range to be visually distinguished from the predetermined object.
[0014] According to the above configuration (4), a predetermined object can be made visible even if it is outside the target range.
[0015] (5) In any of the above configurations (2) to (4), the mask data may be data indicating, for each pixel, the degree to which a predetermined color is rendered or the degree to which brightness is reduced. In the rendering process, the computer may write, to the frame buffer, a pixel value obtained by combining a predetermined color with a pixel value calculated by reflecting the light source according to the degree, or a pixel value obtained by reducing the brightness according to the degree.
[0016] According to the above configuration (5), it is possible to generate an image of a virtual space in which visibility gradually changes depending on the position, so that it is possible to generate an image showing a more natural looking virtual space.
[0017] (6) In any of the above configurations (1) to (5), at least a light source that is set to a predetermined brightness regardless of the position in the virtual space may be set as a light source in the virtual space.
[0018] According to the above configuration (6), a certain level of brightness can be ensured for the target range, and visibility of the target range can be ensured regardless of the shape of the terrain in the virtual space.
[0019] (7) In any of the configurations (1) to (6) above, the computer may set a reference point of the target range in the virtual space in response to the occurrence of a predetermined event. The computer may set the target range based on a distance from the reference point so as to include a range in which the distance is equal to or less than a threshold value.
[0020] According to the above feature (7), in response to the occurrence of a predetermined event, a position corresponding to the event and its surroundings can be set as the target range.
[0021] (8) In the above configuration (7), the computer may set a reference point in response to the occurrence of a predetermined event, and then expand the target range by increasing the threshold value over time.
[0022] According to the above configuration (8), an image can be generated such that an area in which visibility is ensured in the virtual space gradually expands in response to the occurrence of a predetermined event.
[0023] (9) In the above configuration (7) or (8), the computer may further install a point light source in the virtual space in response to the occurrence of a predetermined event.
[0024] According to the above configuration (9), it is possible to make the player easily recognize that a predetermined event has occurred, and that the virtual space has become brighter as a result of the occurrence of the predetermined event.
[0025] (10) In any of the above configurations (7) to (9), the event may be an event in which a predetermined item is placed in the virtual space. The computer may set the position of the reference point based on the position where the predetermined item is placed.
[0026] According to the above feature (10), the player can place an item at a desired position in the virtual space, thereby setting the target range at that position.
[0027] (11) In any of the above configurations (7) to (10), the computer may further control a player character in the virtual space based on an operation input. The predetermined event may be an event whose target range is the periphery of the player character based on the operation input. The computer may further set the position of the player character as the position of a reference point.
[0028] According to the above configuration (11), visibility of the surroundings of the player character can be continuously ensured.
[0029] (12) In any of the above configurations (2) to (6), the computer may further control the player character in the virtual space based on an operation input. The event may be an event that occurs when a predetermined operation input is performed when the player character is located at an event occurrence position set in the virtual space. The computer may further update, in response to the occurrence of the event, two-dimensional range data that two-dimensionally indicates a target range in the virtual space so that at least a range in the virtual space that corresponds to the event occurrence position becomes the target range. The computer may further generate mask data based on the two-dimensional range data.
[0030] According to the above configuration (12), it is possible to provide a game in which the range in which visibility is ensured in the virtual space is expanded as the player character reaches the event occurrence position.
[0031] (13) In the configuration of (1) or (2) above, the computer may determine whether or not at least some of the terrain objects are included in the target range for each pixel in the drawing process. The computer may perform drawing in the frame buffer for pixels included in the target range by reflecting a light source in the drawing process. The computer may perform drawing in the frame buffer for pixels not included in the target range by using a predetermined color or by lowering the brightness in the drawing process.
[0032] According to the above configuration (13), it is possible to use forward rendering technology to render objects outside the target range in a manner that is invisible or difficult to perceive.
[0033] Another example of the present invention may be an information processing device or information processing system that executes the processes in the above (1) to (13). Also, another example of the present invention may be a game processing method that executes the processes in the above (1) to (13). Effect of the Invention
[0034] According to the above game program, information processing system, information processing device, and game processing method, areas of low visibility and areas with ensured visibility in the virtual space can be dynamically changed in response to the occurrence of an event. [Brief description of the drawings]
[0035] [Figure 1] A diagram showing an example of a state in which a left controller and a right controller are attached to a main unit. [Diagram 2] A diagram showing an example of the state when the left controller and the right controller are removed from the main unit. [Diagram 3] Six-sided views showing an example of a main unit [Figure 4] Six-sided diagram showing an example of the left controller [Diagram 5] Six-sided diagram showing an example of the right controller [Figure 6] FIG. 1 is a block diagram showing an example of the internal configuration of a main unit. [Figure 7] A block diagram showing an example of the internal configuration of the main unit, the left controller, and the right controller. [Figure 8] FIG. 1 is a diagram showing an overview of an example game according to the present embodiment. [Figure 9] FIG. 1 is a diagram showing the relationship between the field correspondence plane and the judgment value when one reference point is released. [Figure 10] FIG. 10 is a diagram showing an example of a map image displayed when the circular area shown in FIG. 9 is a released area; [Figure 11] A diagram showing the relationship between the field correspondence plane and the judgment value when two reference points are released. [Figure 12] FIG. 12 is a diagram showing an example of a map image displayed when the area shown in FIG. 11 becomes a released area. [Figure 13] FIG. 13 is a diagram showing an example of a field correspondence plane in which a released region is set when two reference points are released and one reference point is not released; [Figure 14] FIG. 1 is a diagram showing an example of a method for generating a map image in this embodiment. [Figure 15]FIG. 13 is a diagram showing an example of a game image including a field image showing a field including a player character. [Figure 16] FIG. 13 is a diagram showing an example of a game image in which a player character is located near a reference point; [Figure 17] FIG. 13 is a diagram showing an example of a game image showing the field after the reference point has been released. [Figure 18] Top view of the field when one reference point is released [Figure 19] Top view of the field when two reference points are released [Figure 20] FIG. 13 is a diagram showing an example of a game image showing a field on which light source items are arranged. [Figure 21] FIG. 13 is a diagram showing an example of a game image showing a field when a light source item is placed within an illumination range due to a release event; [Figure 22] FIG. 1 illustrates an example of a method for generating a field image to be written to a frame buffer. [Diagram 23] FIG. 2 is a diagram showing an example of a storage area for storing various data used in information processing in the game system 1. [Figure 24] A flowchart showing an example of the flow of game processing executed by the game system 1. [Diagram 25] A sub-flowchart showing an example of a detailed flow of the player-related control process in step S8 shown in FIG. 24. [Figure 26] A sub-flowchart showing an example of a detailed flow of the other object control process in step S9 shown in FIG. 24. [Figure 27] A sub-flowchart showing an example of a detailed flow of the drawing process in step S10 shown in FIG. 24. [Figure 28] 11 is a sub-flowchart showing an example of a detailed flow of a drawing process according to another embodiment. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0036] [1. Game system configuration] A game system according to an example of this embodiment will be described below. An example of the game system 1 in this embodiment includes a main unit (information processing device; in this embodiment, it functions as a game device main unit) 2, a left controller 3, and a right controller 4. The left controller 3 and the right controller 4 are each detachable from the main unit 2. In other words, the game system 1 can be used as an integrated device by attaching the left controller 3 and the right controller 4 to the main unit 2. The game system 1 can also be used as a separate device from the main unit 2, the left controller 3, and the right controller 4 (see FIG. 2). The hardware configuration of the game system 1 of this embodiment will be described below, and then the control of the game system 1 of this embodiment will be described.
[0037] Fig. 1 is a diagram showing an example of a state in which a left controller 3 and a right controller 4 are attached to a main unit 2. As shown in Fig. 1, the left controller 3 and the right controller 4 are each attached to and integrated with the main unit 2. The main unit 2 is a device that executes various processes (e.g., game processes) in the game system 1. The main unit 2 includes a display 12. The left controller 3 and the right controller 4 are devices that include an operation unit that allows the user to perform input.
[0038] Fig. 2 is a diagram showing an example of a state in which the left controller 3 and the right controller 4 have been removed from the main unit 2. As shown in Figs. 1 and 2, the left controller 3 and the right controller 4 are detachable from the main unit 2. In the following, the left controller 3 and the right controller 4 may be collectively referred to as "controller."
[0039] Fig. 3 is a six-sided view showing an example of the main unit 2. As shown in Fig. 3, the main unit 2 includes a substantially plate-shaped housing 11. In this embodiment, the main surface of the housing 11 (in other words, the front surface, i.e., the surface on which the display 12 is provided) is generally rectangular in shape.
[0040] The shape and size of the housing 11 are arbitrary. As an example, the housing 11 may be of a size that is portable. Furthermore, the main unit 2 alone or an integrated device in which the left controller 3 and the right controller 4 are attached to the main unit 2 may be a portable device. Furthermore, the main unit 2 or the integrated device may be a handheld device. Furthermore, the main unit 2 or the integrated device may be a portable device.
[0041] 3, the main unit 2 includes a display 12 provided on a main surface of a housing 11. The display 12 displays an image generated by the main unit 2. In this embodiment, the display 12 is a liquid crystal display (LCD). However, the display 12 may be any type of display device.
[0042] The main unit 2 also includes a touch panel 13 on the screen of the display 12. In this embodiment, the touch panel 13 is of a type that allows multi-touch input (e.g., a capacitive type). However, the touch panel 13 may be of any type, and may be of a type that allows single-touch input (e.g., a resistive film type), for example.
[0043] The main unit 2 includes a speaker (i.e., speaker 88 shown in FIG. 6) inside the housing 11. As shown in FIG. 3, speaker holes 11a and 11b are formed in the main surface of the housing 11. The output sound of the speaker 88 is output from these speaker holes 11a and 11b, respectively.
[0044] The main unit 2 also has a left side terminal 17, which is a terminal through which the main unit 2 performs wired communication with the left controller 3, and a right side terminal 21 through which the main unit 2 performs wired communication with the right controller 4.
[0045] As shown in FIG. 3, the main unit 2 includes a slot 23. The slot 23 is provided on the upper side of the housing 11. The slot 23 has a shape that allows a predetermined type of storage medium to be attached thereto. The predetermined type of storage medium is, for example, a storage medium (e.g., a dedicated memory card) dedicated to the game system 1 and the same type of information processing device. The predetermined type of storage medium is used, for example, to store data used in the main unit 2 (e.g., application save data, etc.) and / or programs executed in the main unit 2 (e.g., application programs, etc.). The main unit 2 also includes a power button 28.
[0046] The main unit 2 includes a lower terminal 27. The lower terminal 27 is a terminal through which the main unit 2 communicates with the cradle. In this embodiment, the lower terminal 27 is a USB connector (more specifically, a female connector). When the all-in-one device or the main unit 2 alone is placed on the cradle, the game system 1 can display images generated and output by the main unit 2 on a stationary monitor. In this embodiment, the cradle also has a function of charging the all-in-one device or the main unit 2 alone that is placed on it. The cradle also has a function of a hub device (more specifically, a USB hub).
[0047] FIG. 4 is a six-sided view showing an example of the left controller 3. As shown in FIG. 4, the left controller 3 includes a housing 31. In this embodiment, the housing 31 has a vertically long shape, that is, a shape that is long in the up-down direction (i.e., the y-axis direction shown in FIG. 1 and FIG. 4). The left controller 3 can also be held in a vertically long orientation when removed from the main unit 2. The housing 31 has a shape and size that allows it to be held in one hand, particularly the left hand, when held in a vertically long orientation. The left controller 3 can also be held in a horizontally long orientation. When the left controller 3 is held in a horizontally long orientation, it may be held with both hands.
[0048] The left controller 3 includes an analog stick 32. As shown in FIG. 4, the analog stick 32 is provided on the main surface of the housing 31. The analog stick 32 can be used as a direction input unit capable of inputting a direction. By tilting the analog stick 32, the user can input a direction according to the tilt direction (and input a magnitude according to the tilt angle). Note that the left controller 3 may include a cross key or a slide stick capable of slide input, instead of an analog stick, as the direction input unit. Also, in this embodiment, input is possible by pressing the analog stick 32.
[0049] The left controller 3 includes various operation buttons. The left controller 3 includes four operation buttons 33 to 36 (specifically, a right button 33, a down button 34, an up button 35, and a left button 36) on the main surface of the housing 31. Furthermore, the left controller 3 includes a record button 37 and a - (minus) button 47. The left controller 3 includes a first L button 38 and a ZL button 39 on the upper left of the side of the housing 31. The left controller 3 also includes a second L button 43 and a second R button 44 on the side of the housing 31 that is attached when the left controller 3 is attached to the main unit 2. These operation buttons are used to give instructions according to various programs (for example, OS programs and application programs) executed on the main unit 2.
[0050] In addition, the left controller 3 is equipped with a terminal 42 that enables the left controller 3 to communicate with the main unit 2 via wire.
[0051] FIG. 5 is a six-sided view showing an example of the right controller 4. As shown in FIG. 5, the right controller 4 includes a housing 51. In this embodiment, the housing 51 has a vertically long shape, that is, a shape that is long in the up-down direction. The right controller 4 can also be held in a vertically long orientation when removed from the main unit 2. The housing 51 has a shape and size that allows it to be held in one hand, particularly the right hand, when held in a vertically long orientation. The right controller 4 can also be held in a horizontally long orientation. When the right controller 4 is held in a horizontally long orientation, it may be held with both hands.
[0052] The right controller 4, like the left controller 3, includes an analog stick 52 as a direction input unit. In this embodiment, the analog stick 52 has the same configuration as the analog stick 32 of the left controller 3. The right controller 4 may include a cross key or a slide stick capable of slide input, instead of the analog stick. The right controller 4, like the left controller 3, includes four operation buttons 53 to 56 (specifically, an A button 53, a B button 54, an X button 55, and a Y button 56) on the main surface of the housing 51. The right controller 4 further includes a + (plus) button 57 and a home button 58. The right controller 4 also includes a first R button 60 and a ZR button 61 on the upper right of the side surface of the housing 51. The right controller 4 also includes a second L button 65 and a second R button 66, like the left controller 3.
[0053] In addition, the right controller 4 is equipped with a terminal 64 for enabling the right controller 4 to communicate with the main unit 2 via wire.
[0054] Fig. 6 is a block diagram showing an example of the internal configuration of main unit 2. In addition to the configuration shown in Fig. 3, main unit 2 includes components 81-85, 87, 88, 91, 97, and 98 shown in Fig. 6. Some of these components 81-85, 87, 88, 91, 97, and 98 may be mounted on an electronic circuit board as electronic components and housed in housing 11.
[0055] The main unit 2 includes a processor 81. The processor 81 is an information processing unit that executes various types of information processing executed in the main unit 2, and may be composed of only a CPU (Central Processing Unit), or may be composed of a SoC (System-on-a-chip) including multiple functions such as a CPU function and a GPU (Graphics Processing Unit) function. The processor 81 executes various types of information processing by executing an information processing program (e.g., a game program) stored in a storage unit (specifically, an internal storage medium such as a flash memory 84, or an external storage medium inserted in the slot 23, etc.).
[0056] The main unit 2 includes a flash memory 84 and a dynamic random access memory (DRAM) 85 as examples of internal storage media built into the main unit 2. The flash memory 84 and the DRAM 85 are connected to the processor 81. The flash memory 84 is a memory used mainly for storing various data (which may be programs) saved in the main unit 2. The DRAM 85 is a memory used for temporarily storing various data used in information processing.
[0057] The main device 2 includes a slot interface (hereinafter abbreviated as "I / F") 91. The slot I / F 91 is connected to the processor 81. The slot I / F 91 is connected to the slot 23, and reads and writes data from and to a predetermined type of storage medium (e.g., a dedicated memory card) inserted in the slot 23 in response to an instruction from the processor 81.
[0058] The processor 81 appropriately reads and writes data from and to the flash memory 84, DRAM 85, and each of the above storage media to execute the above information processing.
[0059] The main unit 2 includes a network communication unit 82. The network communication unit 82 is connected to the processor 81. The network communication unit 82 communicates with an external device via a network (specifically, wireless communication). In this embodiment, the network communication unit 82 connects to a wireless LAN and communicates with an external device using a method conforming to the Wi-Fi standard as a first communication mode. The network communication unit 82 also performs wireless communication with other main units 2 of the same type using a predetermined communication method (for example, communication using a unique protocol or infrared communication) as a second communication mode. Note that the wireless communication using the second communication mode enables wireless communication with other main units 2 located within a closed local network area, and realizes a function that enables so-called "local communication" in which data is transmitted and received by directly communicating between multiple main units 2.
[0060] The main unit 2 includes a controller communication unit 83. The controller communication unit 83 is connected to the processor 81. The controller communication unit 83 performs wireless communication with the left controller 3 and / or the right controller 4. Any communication method may be used between the main unit 2 and the left controller 3 and right controller 4, but in this embodiment, the controller communication unit 83 performs communication with the left controller 3 and the right controller 4 in accordance with the Bluetooth (registered trademark) standard.
[0061] The processor 81 is connected to the left terminal 17, the right terminal 21, and the lower terminal 27. When the processor 81 performs wired communication with the left controller 3, it transmits data to the left controller 3 via the left terminal 17 and receives operation data from the left controller 3 via the left terminal 17. When the processor 81 performs wired communication with the right controller 4, it transmits data to the right controller 4 via the right terminal 21 and receives operation data from the right controller 4 via the right terminal 21. When the processor 81 performs communication with the cradle, it transmits data to the cradle via the lower terminal 27. Thus, in this embodiment, the main unit 2 can perform both wired communication and wireless communication with the left controller 3 and the right controller 4. When the main unit 2 alone or an integrated device with the left controller 3 and the right controller 4 attached to the main unit 2 is attached to the cradle, the main unit 2 can output data (e.g., image data and audio data) to a stationary monitor or the like via the cradle.
[0062] Here, the main unit 2 can communicate with a plurality of left controllers 3 simultaneously (in other words, in parallel). The main unit 2 can also communicate with a plurality of right controllers 4 simultaneously (in other words, in parallel). Therefore, a plurality of users can simultaneously input to the main unit 2 using each set of left controllers 3 and right controllers 4. As an example, a first user can input to the main unit 2 using a first set of left controllers 3 and right controllers 4, while a second user can input to the main unit 2 using a second set of left controllers 3 and right controllers 4.
[0063] The display 12 is also connected to the processor 81. The processor 81 displays on the display 12 an image generated (for example, by executing the above-mentioned information processing) and / or an image acquired from the outside.
[0064] The main unit 2 includes a codec circuit 87 and speakers (specifically, a left speaker and a right speaker) 88. The codec circuit 87 is connected to the speaker 88 and the audio input / output terminal 25, and is also connected to the processor 81. The codec circuit 87 is a circuit that controls the input and output of audio data to and from the speaker 88 and the audio input / output terminal 25.
[0065] The main unit 2 includes a power control unit 97 and a battery 98. The power control unit 97 is connected to the battery 98 and the processor 81. Although not shown, the power control unit 97 is also connected to each unit of the main unit 2 (specifically, each unit that receives power from the battery 98, the left terminal 17, and the right terminal 21). The power control unit 97 controls the supply of power from the battery 98 to each of the above-mentioned units based on instructions from the processor 81.
[0066] Furthermore, battery 98 is connected to lower terminal 27. When an external charging device (e.g., a cradle) is connected to lower terminal 27 and power is supplied to main unit 2 via lower terminal 27, battery 98 is charged with the supplied power.
[0067] Fig. 7 is a block diagram showing an example of the internal configuration of the main unit 2, the left controller 3, and the right controller 4. Note that details of the internal configuration of the main unit 2 are omitted in Fig. 7 because they are shown in Fig. 6.
[0068] The left controller 3 includes a communication control unit 101 that communicates with the main unit 2. As shown in FIG. 7, the communication control unit 101 is connected to each component including the terminal 42. In this embodiment, the communication control unit 101 can communicate with the main unit 2 by both wired communication via the terminal 42 and wireless communication not via the terminal 42. The communication control unit 101 controls the communication method by which the left controller 3 communicates with the main unit 2. That is, when the left controller 3 is attached to the main unit 2, the communication control unit 101 communicates with the main unit 2 via the terminal 42. Also, when the left controller 3 is detached from the main unit 2, the communication control unit 101 performs wireless communication with the main unit 2 (specifically, the controller communication unit 83). The wireless communication between the controller communication unit 83 and the communication control unit 101 is performed according to, for example, the Bluetooth (registered trademark) standard.
[0069] The left controller 3 also includes a memory 102, such as a flash memory. The communication control unit 101 is configured with, for example, a microcomputer (also called a microprocessor), and executes firmware stored in the memory 102 to perform various processes.
[0070] The left controller 3 includes buttons 103 (specifically, buttons 33 to 39, 43, 44, and 47). The left controller 3 also includes an analog stick (referred to as "stick" in FIG. 7) 32. Each button 103 and analog stick 32 repeatedly outputs information relating to operations performed on them to the communication control unit 101 at appropriate timing.
[0071] The communication control unit 101 acquires information related to the input (specifically, information related to the operation, or the detection results by the sensor) from each input unit (specifically, each button 103 and analog stick 32). The communication control unit 101 transmits operation data including the acquired information (or information obtained by performing a specified process on the acquired information) to the main unit 2. The operation data is repeatedly transmitted once every specified time. The interval at which the information related to the input is transmitted to the main unit 2 may or may not be the same for each input unit.
[0072] By transmitting the above operation data to the main unit 2, the main unit 2 can obtain the input performed on the left controller 3. In other words, the main unit 2 can determine the operations performed on each button 103 and analog stick 32 based on the operation data.
[0073] The left controller 3 is equipped with a power supply unit 108. In this embodiment, the power supply unit 108 has a battery and a power control circuit. Although not shown, the power control circuit is connected to the battery and to each part of the left controller 3 (specifically, each part that receives power from the battery).
[0074] As shown in FIG. 7, 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 that is connected to the communication control unit 111. The communication control unit 111 is connected to each component including the terminal 64. The communication control unit 111 and the memory 112 have the same functions as the communication control unit 101 and the memory 102 of the left controller 3. Therefore, the communication control unit 111 can communicate with the main unit 2 by both wired communication via the terminal 64 and wireless communication (specifically, communication in accordance with the Bluetooth (registered trademark) standard) that does not go through the terminal 64, and controls the method of communication that the right controller 4 uses with the main unit 2.
[0075] The right controller 4 has input units similar to those of the left controller 3. Specifically, it has buttons 113 and an analog stick 52. These input units have the same functions as those of the left controller 3, and operate in the same manner.
[0076] The right controller 4 is equipped with a power supply unit 118. The power supply unit 118 has the same functions as the power supply unit 108 of the left controller 3, and operates in the same manner.
[0077] [2. Overview of processing in the game system] An overview of the processing executed in the game system 1 will be described with reference to Figs. 8 to 22. In this embodiment, the game system 1 executes a game in which a player character operable by a player (i.e., a user of the game system 1) moves through a game field (hereinafter simply referred to as "field"), which is a three-dimensional virtual space. The game system 1 is capable of displaying a field image showing the field on which the player character is placed, as well as a map image showing a map of the field. In this embodiment, the map image is switched from the field image at the player's instruction, and may also be constantly displayed at least partially together with the field image.
[0078] FIG. 8 is a diagram showing an outline of an example game in this embodiment. The left column in FIG. 8 shows the state of the field, and the right column shows an example of a map image to be displayed. In this embodiment, a plurality of reference points (for example, reference point 202 shown in FIG. 8) are set in the field. The reference point is released in response to a predetermined operation input by the player (for example, an operation input for making the player character perform an action to check the reference point) in a state in which the player character 201 is located at or near the reference point. That is, the player character 201 can release the reference point by reaching the reference point and performing a predetermined action (for example, an action to check the reference point). Hereinafter, a game event in which a reference point is released is called a "release event." Note that the reference point may be, for example, a place where the player character 201 can warp to another reference point that has already been released (so-called fast travel), where the player character 201 can be recovered, or where the player character 201 can change equipment, skills, or possessed items.
[0079] In this embodiment, before the reference point is released, the field is in a dark state except for some exceptions (for example, the player character 201 itself or its surroundings, and the landmark object 203 described later) (state a shown in FIG. 8). Note that in FIG. 8, the dark areas are shown with diagonal lines for the purpose of making the drawing easier to understand, but the game system 1 displays the dark field in a manner that is invisible or difficult for the player to see (see FIG. 15 described later, etc.). In state a shown in FIG. 8, the field is in darkness except for the surroundings of the player character 201 and the landmark object 203 indicating the reference point 202, so it can be said that it is difficult to explore the field.
[0080] Moreover, before the reference point is released, the map image is displayed in a manner in which the field information is not shown (state a shown in FIG. 8). The field information is information about the field, such as information about the terrain that forms the field (specifically, the shape of the terrain, etc.), information about objects placed in the field, information about items placed in the field, or information about characters existing on the field. In state a shown in FIG. 8, the map image is displayed in a manner in which only the mark 204 indicating the position and orientation of the player character 201 is shown, and other field information other than the mark 204 is not shown. In this way, it is sufficient that the map image before the reference point is released is displayed in a manner in which at least a part of the field information is not shown, and other part of the field information (for example, the mark 204 shown in FIG. 8) may be shown before release.
[0081] On the other hand, when the reference point (reference point 202 in the example shown in FIG. 8) is released by the player character 201, the area of the field around the reference point becomes a range illuminated with light, not in darkness (state b shown in FIG. 8). Hereinafter, the range of the field illuminated with light will be referred to as the "illuminated range." Details will be described later, but the game system 1 displays the illuminated range in a manner that is visible to the player (see FIG. 17, etc., described later).
[0082] Furthermore, when a reference point is released, the area around the reference point on the map image is displayed in a manner showing field information (state b shown in FIG. 8). In the example shown in FIG. 8, in addition to the mark 204 relating to the player character 201, lines showing the shape of the terrain and a mark 205 showing the reference point are displayed around the released reference point.
[0083] As described above, when a release event occurs, the area of the field around the released reference point becomes visible, and field information for the area around the reference point becomes displayed on the map image. This makes it easier for the player to have the player character 201 explore the area around the released reference point. In this embodiment, one of the goals of the player is to release the reference point in the field, and the player progresses through the game while increasing the area that is easy to search by releasing the reference point.
[0084] [2-1. Setting the open area of the map] With reference to Figs. 9 to 14, an example of a method for setting an area (called a "released area") where field information is displayed on a map image by releasing a reference point will be described. Fig. 9 is a diagram showing the relationship between the field corresponding plane and the judgment value when one reference point is released. Here, the field corresponding plane is a two-dimensional plane corresponding to a three-dimensional field. The field corresponding plane can be said to be a plane onto which the three-dimensional field is projected in the vertical direction, and the two-dimensional position of the field corresponding plane is a position indicated by two-dimensional coordinates in the horizontal direction in the field (i.e., two-dimensional coordinates obtained by deleting the coordinates in the height direction from the three-dimensional coordinates indicating the position of the field). In Fig. 9, the field corresponding plane is shown on the upper side, and a graph showing the change in the judgment value on the field corresponding plane is shown on the lower side. Specifically, the graph shows the change in the judgment value on a straight line AB (a straight line indicated by a dashed line in Fig. 9) passing through the released reference point 211.
[0085] The judgment value is a value used to judge a released area on the field corresponding plane. In this embodiment, the game system 1 calculates a judgment value for each position on the field corresponding plane in order to judge a released area on the field corresponding plane. The judgment value is calculated for each position of a predetermined unit section on the field corresponding plane (referred to as a "calculation target position"). Specifically, a judgment is made using the judgment value for each position corresponding to each pixel on the map image.
[0086] In this embodiment, the judgment value at each calculation target position is calculated based on a reference value set at a reference point. That is, the game system 1 sets a reference value for the reference point, and calculates the judgment value at each calculation target position based on the reference value. Note that in this embodiment, the magnitude of the reference value at the reference point is set for each reference point, and the magnitude of the reference value may be different for each reference point. For example, the reference value at each reference point may be set such that the entire field becomes a released area when all reference points are released.
[0087] In this embodiment, the judgment value of a certain position calculated based on one reference point (i.e., the judgment value calculated based on a reference value set at one reference point) is calculated based on the distance from the reference point, and more specifically, is calculated so as to decrease as the distance from the reference point increases (see FIG. 9). For example, in the example shown in FIG. 9, a reference value A1 is set at the released reference point 211, and the judgment value at each calculation target position on the line AB becomes the reference value A1 at the reference point 211, and changes so as to decrease according to the distance from the reference point 211 to the position. The judgment value becomes 0 at a position where the distance is equal to or greater than a certain length. Note that a specific calculation method for determining the judgment value at each calculation target position based on the reference value is arbitrary.
[0088] In this embodiment, when only the reference point 211 is released as shown in Fig. 9, the game system 1 sets the released area taking into consideration only the judgment value based on the reference point 211. Specifically, the game system 1 sets, as the released area, an area on the field corresponding plane consisting of positions where the judgment value based on the reference point 211 is equal to or greater than a predetermined threshold value (threshold value th in Fig. 9). As described above, since the judgment value attenuates according to the distance from the reference point 211 to the position, in the example shown in Fig. 9, the circular area 212 centered on the reference point 211 becomes the released area.
[0089] FIG. 10 is a diagram showing an example of a map image displayed when the circular area 212 shown in FIG. 9 is a released area. In the above case, as shown in FIG. 10, a map image is displayed in which field information is drawn for pixels corresponding to positions in the field corresponding plane where the judgment value is equal to or greater than the threshold value among the pixels of the map image. As shown in FIG. 9 and FIG. 10, the range in which the field information is drawn in the map image corresponds to the circular area 212. In FIG. 10, a line showing the shape of the terrain is displayed as field information for the range corresponding to the area 212. In this embodiment, the mark 205 showing the reference point is displayed when the player character 201 reaches the reference point, regardless of whether the position of the reference point is within the released area or not. In this embodiment, the map image may be displayed on the entire screen of the display 12 as shown in FIG. 10, or may be displayed on a part of the screen of the display 12 in a manner superimposed on a field image showing a field as shown in FIG. 15 described later.
[0090] As described above, in this embodiment, the map image is an image showing field information two-dimensionally. The judgment value is a value that attenuates according to the two-dimensional distance from a two-dimensional position corresponding to a reference point (i.e., the distance on the field corresponding plane). According to the above, since a released area can be set on a two-dimensional plane, an area having high affinity with a two-dimensional map can be set with a small processing load. According to the above, a released area can be set according to the distance from a reference point (for example, such that a range within a certain distance from the reference point becomes a released area). Note that, in another embodiment, the game system 1 may calculate a judgment value for each position on a three-dimensional field and set a released area on the three-dimensional field. At this time, the game system 1 determines a range corresponding to the released area in the two-dimensional map image based on the released area on the three-dimensional field, and generates a map image showing field information within the range. Also, in another embodiment, the map may be three-dimensional, and a released area may be set on the three-dimensional map, and a map image showing the three-dimensional map may be generated and displayed.
[0091] Furthermore, when multiple reference points are released, the game system 1 calculates a judgment value based on each of the released reference points, and calculates the sum of the judgment values (called the "total judgment value") for each calculation target position. The released area is set based on the total judgment value. Note that, when only one reference point is released (see FIG. 9), it can be said that the judgment value based on the reference value set for that reference point becomes the total judgment value.
[0092] Fig. 11 is a diagram showing the relationship between the field corresponding plane and the judgment value when two reference points are released. As in Fig. 9, Fig. 11 also shows the field corresponding plane on the upper side, and a graph showing the change in judgment value and total judgment value on a straight line (straight line CD in Fig. 11) passing through the released reference points is shown on the lower side. Note that straight line CD shown in Fig. 11 passes through the two released reference points 211 and 213.
[0093] In the case shown in FIG. 11, the game system 1 calculates a total judgment value for each of the calculation target positions. The total judgment value is the sum of the judgment values based on the released reference points 211 and 213. That is, for each calculation target position, the game system 1 calculates a judgment value based on the reference point 211 and a judgment value based on the reference point 213. The judgment value based on the reference point 211 is calculated as a value in which a reference value A1 set for the reference point 211 is attenuated according to the distance from the reference point 211 to the position. The judgment value based on the reference point 213 is calculated as a value in which a reference value A2 set for the reference point 213 is attenuated according to the distance from the reference point 213 to the position. The game system 1 calculates a total judgment value for each calculation target position by adding up the judgment value based on the reference point 211 and the judgment value based on the reference point 213 for each calculation target position. In the lower graph of Figure 11, the peak on the right side indicated by a solid line shows the change in the judgment value based on reference point 211, the peak on the left side indicated by a solid line shows the change in the judgment value based on reference point 213, and the curve indicated by a thick dotted line shows the change in the total judgment value.
[0094] The game system 1 sets, as a released area, an area consisting of positions in the field corresponding plane where the total judgment value is equal to or greater than the above-mentioned threshold value th. In the example shown in Fig. 11, a circular area 212 centered on a reference point 211, a circular area 214 centered on a reference point 213, and an area 215 connecting these two circular areas are added to create an area 216 (shown by diagonal lines in Fig. 11) which becomes the released area. In other words, it can be said that the released area in the case where a plurality of reference points are released is generated by a two-dimensional metaball technique.
[0095] FIG. 12 is a diagram showing an example of a map image displayed when the area 216 shown in FIG. 11 is a released area. As shown in FIG. 12, a map image is displayed in which field information is drawn for pixels of the map image whose total judgment value is equal to or greater than a threshold value on the field corresponding plane. The range in which the field information is drawn corresponds to the circular area 216. In FIG. 12, a line showing the shape of the terrain is displayed as the field information. In the example shown in FIG. 12, in addition to the mark 204 showing the position and direction of the player character 201, marks 205 and 221 showing two reference points reached by the player character 201 are displayed. In this way, in this embodiment, the released area is set using the above total judgment value, so that when both the reference point 211 and the reference point 213 are released, an area that is not a released area in either the case where only the reference point 211 is released or the case where only the reference point 213 is released (i.e., the area 215 shown in FIG. 11) may be set as a released area.
[0096] As described above, in this embodiment, the size of the reference value (i.e., the maximum value of the judgment value) set for each of the multiple reference points is set for each reference point. According to this, when a reference point is released, the size of the area to be set as the open area based on the reference point can be set for each reference point. For example, in the example shown in FIG. 11, by changing the size of the reference value A1 set for the reference point 211 or the reference value A2 set for the reference point 213, the size and shape of the open area when the reference points 211 and 213 are released can be changed. For example, by changing the reference value A1 and / or the reference value A2 to a smaller value, it is also possible to make the open area when the reference points 211 and 213 are released into two circular areas that are not connected to each other. Note that, in other embodiments, the reference value set for each of the multiple reference points may be set to the same value. Furthermore, even if the reference values of the multiple reference points are the same, the range of the open area may be made different for each reference point by setting the calculation method of the judgment value so that the degree of attenuation according to the distance differs for each reference point.
[0097] As described above, in this embodiment, the game system 1 specifies, as the released area, an area consisting of a position where a total judgment value obtained by adding up at least one or more judgment values based on one or more reference points that are in a released state among the multiple reference points is equal to or greater than a predetermined value (i.e., the above threshold value th). According to the above, the shape and size of the released area can be varied according to the released state of each of the multiple reference points.
[0098] In the above embodiment, the game system 1 calculates the total judgment value based on the reference values set for the released reference points, but the total judgment value may also be calculated based on the reference values set for the unreleased reference points in addition to the released reference points. Hereinafter, with reference to Fig. 13, an example of calculating the total judgment value based on the reference values set for the unreleased reference points will be described.
[0099] Fig. 13 is a diagram showing an example of a field corresponding plane in which a released area is set when two reference points are released and one reference point is not released. In Fig. 13, it is assumed that three reference points 231 to 233 are arranged in the field. In Fig. 13, it is assumed that the reference points 231 and 232 have been released, and the reference point 233 between the reference points 231 and 232 has not been released.
[0100] In the example shown in FIG. 13, for each of the released reference points 231 and 232, a reference value is set in the same manner as in the above embodiment. Here, in this modification, for the unreleased reference point 233, a reference value different from that in the case of release is set. Hereinafter, the reference value set for the released reference point is referred to as the "first reference value," and the reference value set for the unreleased reference point is referred to as the "second reference value." That is, when the reference point 233 is released in FIG. 13, the first reference value is set in the same manner as for the reference points 231 and 233.
[0101] In the example shown in FIG. 13, similarly to the examples shown in FIG. 9 and FIG. 11, the game system 1 calculates a judgment value based on a first reference value (referred to as a "first judgment value") for each calculation target position. In the example shown in FIG. 13, a first judgment value based on a first reference value set at a reference point 231 and a first judgment value based on a first reference value set at a reference point 232 are calculated for each calculation target position. Furthermore, in the example shown in FIG. 13, a judgment value based on a second reference value (referred to as a "second judgment value") is calculated for each calculation target position. In the example shown in FIG. 13, a second judgment value based on a second reference value set at a reference point 233 is calculated for each calculation target position. The second judgment value is a value that becomes a second reference value at a reference point, decreases as the distance from the reference point becomes longer, and becomes 0 at a position where the distance is equal to or longer than a certain length.
[0102] In Fig. 13, the circular dotted lines centered on reference points 231 and 232 are lines connecting positions where the first judgment value based on the first reference value becomes a predetermined value. Of the above dotted lines, dotted lines 234 and 235 are lines connecting positions where the first judgment value becomes the above-mentioned threshold value. Also, in Fig. 13, the circular dashed dotted line centered on reference point 233 is a line connecting positions where the second judgment value based on the second reference value becomes a predetermined value.
[0103] In the example shown in FIG. 13, the game system 1 calculates a total judgment value based on the second judgment value in addition to the first judgment value. Specifically, the total judgment value at the calculation target position is obtained by subtracting the sum of the second judgment values at the calculation target position from the sum of the first judgment values at the calculation target position. In the example shown in FIG. 13, the game system 1 calculates the total judgment value by subtracting the second judgment value based on the second reference value of the reference point 233 from the sum of the first judgment value based on the first reference value of the reference point 231 and the first judgment value based on the first reference value of the reference point 232. Note that the above calculation method for the total judgment value is synonymous with setting the second reference value to a negative value (as a result, the second judgment value becomes a negative value) and calculating the sum of the first and second judgment values. The absolute values of the first reference value and the second reference value may be the same or different. In addition, the calculation method of the first judgment value based on the first reference value and the calculation method of the second judgment value based on the second reference value may be the same or different.
[0104] In the example shown in FIG. 13, the second judgment value is subtracted from the sum of the first judgment value and the second judgment value, so that in positions affected by the second judgment value (i.e., positions where the second judgment value is a positive value), the sum judgment value is smaller than when the second judgment value is not considered (for example, in the above embodiment). Therefore, in the example shown in FIG. 13, a part of the area that would be a released area when the second judgment value is not considered is not set as a released area. In the example shown in FIG. 13, the area 236 indicated by diagonal lines becomes a released area, and the area 237 (area indicated by solid lines) that would be a released area when the second judgment value is not considered is not a released area. Thus, in the example shown in FIG. 13, the absolute value of the second judgment value becomes large for positions near the unreleased reference point, so that it is less likely to become a released area.
[0105] 13, the total judgment value is a value obtained by subtracting the sum of one or more second judgment values for one or more reference points that are in an unreleased state from the sum of one or more first judgment values for one or more reference points that are in a released state among the multiple reference points. This makes it difficult for the unreleased reference points and their neighboring positions to become released areas.
[0106] Here, if the total judgment value is calculated without reflecting the second judgment value based on the unreleased reference point, for example, in the case shown in FIG. 13, the position near the unreleased reference point 233 will become an open area. As a result, the map will be opened up to the position near the unreleased reference point 233 (that is, field information will be displayed in the map image), and there is a risk of the above-mentioned irradiation range being obtained. In this case, the player's motivation to open the unreleased reference point 233 will be weakened, and the game aspect of expanding the search range by opening the reference point may be lost. In contrast, according to the above-mentioned modified example, the unreleased reference point or a position near it is unlikely to become an open area, so that it is possible to reduce the possibility that the motivation to open the unreleased reference point will be weakened, and the game aspect can be improved.
[0107] In this embodiment, the game system 1 generates a map mask as data indicating the released area. That is, the map mask is two-dimensional data indicating the area of the field that is a released area. Then, the game system 1 generates a map image showing field information about the released area using the map mask.
[0108] 14 is a diagram showing an example of a method for generating a map image in this embodiment. In this embodiment, the game system 1 generates a map image to be displayed based on an original map image and a map mask. The original map image is an image that is the source for generating the map image to be displayed, and indicates a map image that includes field information. It can be said that the original map image is a map image in the case where the entire field is a released area.
[0109] In this embodiment, the map mask data is data indicating a map mask value for each two-dimensional position. The map mask value indicates the degree to which the original map image is reflected in order to generate the map image. For example, the map mask value is a value having a maximum value of 1 and a minimum value of 0. At this time, in a pixel where the map mask value is 1, the original map image is reflected as is in the map image, and in a pixel where the map mask value is 0, the map image is generated so that the original map image is not reflected. In this embodiment, the map mask value is a multi-value value ranging from 0 to 1. Although details will be described later, by making the map mask value a multi-value value, the map image can be displayed in a blurred manner near the boundary of the released area. Note that in other embodiments, the map mask value may be a binary value of 0 or 1.
[0110] The map mask value is set for each of the above-mentioned calculation target positions based on the above-mentioned total judgment value. Specifically, when the total judgment value for a certain position is greater than a first value, the map mask value for that position is set to 1, and when the total judgment value for a certain position is less than a second value, the map mask value for that position is set to 0. The second value is less than the first value and greater than the above-mentioned threshold value th. When the total judgment value for a certain position is greater than or equal to the second value and less than or equal to the first value, the map mask value for that position is set to a value greater than 0 and less than 1, depending on the magnitude of the total judgment value. According to the above, the map mask value is set to 1 for positions within a range within a predetermined distance from the reference point, and is set to a value that decreases depending on the distance from the reference point for positions outside the range, and is set to 0 for positions where the total judgment value is less than the threshold value th (i.e., positions outside the release area). In the map mask shown in Figure 14, positions where the map mask value is 1 are shown in white, positions where the map mask value is 0 are shown in black, and positions where the map mask value is an intermediate value (i.e., a value greater than 0 and less than 1) are shown in gray, with the larger the value, the closer it is to white.
[0111] As an example of a calculation method based on the total judgment value, the map mask value Mp may be calculated by the following formula.
number
[0112] In the above formula, each reference value is set to 1, but as described above, the first reference value and the second reference value may be set to individual values for each reference point. For example, by using a formula in which "Oi" in the above formula is replaced with "Oi*Ai" and the constant ai is deleted, and "Ci" is replaced with "Ci*Bi" and the constant bi is deleted, the map mask value Mp can be calculated in the case where the first reference value and the second reference value are set for each reference point. The variable Ai is the first reference value at the i-th reference point, and the variable Bi is the second reference value at the i-th reference point. In another embodiment, the constants ai and bi may be left in the above formula, and the formula may be replaced with "Oi*Ai" and "Ci" is replaced with "Ci*Bi". In addition, when either the first reference value or the second reference value is set to a fixed value (=1), the map mask value Mp can be calculated by using the formula in which the above replacement is performed on only either "Oi" or "Ci" in the above formula. The formula for calculating the map mask value is not limited to the above formula. In other embodiments, any formula may be used that calculates the map mask value so that the determination value at a certain position attenuates according to the distance from a reference position to the certain position (for example, the determination value is inversely proportional to the square of the distance).
[0113] The game system 1 generates a map image by combining the original map image and an image showing an unreleased state at a ratio according to the map mask value for each pixel with reference to the map mask. Specifically, the game system 1 generates a map image such that the original map image is reflected as is for pixels with a map mask value of 1, the original map image is not reflected for pixels with a map mask value of 0, and the original map image is reflected at a ratio according to the map mask value for pixels with an intermediate map mask value. The image showing an unreleased state may be a single color, or may have a predetermined pattern or the like drawn on it. A grid or the like for making the coordinates easier to understand may be further combined with the combined map image. As a result, the map image is displayed lightly near the boundary within the released area (specifically, the position where the map mask value is an intermediate value) (see FIG. 14). Note that in FIG. 14, the lightly displayed part of the map image is indicated by a dotted line.
[0114] As described above, in this embodiment, when a release event occurs, the game system 1 generates two-dimensional mask data (i.e., a map mask) that indicates the range of the field that is a released area. The game system 1 also generates a map image showing the field information of the portion corresponding to the released area by applying the mask data to an original map image that includes field information. This makes it possible to easily generate a map image showing the portion of the released area. Note that in other embodiments, the specific method of generating the map image is arbitrary and is not limited to a method using mask data.
[0115] In this embodiment, the mask data is data that indicates a multi-value for each position in the field according to the magnitude of the total judgment value at that position. The game system 1 generates a map image by combining the original map image and an image indicating an unreleased state for each pixel at a ratio according to the multi-value indicated by the mask data. This makes it possible to generate a map image in which the vicinity of the boundary of the released area is blurred. Therefore, the released map can be made to look natural.
[0116] [2-2. Setting the irradiation range] With reference to Figs. 15 to 21, an example of a method for setting the above-mentioned illumination range on the field will be described. In this embodiment, in response to the occurrence of a predetermined illumination event during the game, a range of the field corresponding to the illumination event becomes the illumination range. The above-mentioned release event is one of the illumination events. In this embodiment, in addition to the above-mentioned release event, a character light emission event and an item placement event may occur as illumination events. In addition to the illumination range set in response to the occurrence of an illumination event, there may also be an illumination range or the like set in advance on the field.
[0117] A character light-emitting event is an event in which the surroundings of the player character become the illumination range. In this embodiment, the character light-emitting event is an event in which the player character wears light-emitting clothing. The character light-emitting event may be, for example, an event in which the player character holds a light-emitting item or gets on a light-emitting vehicle.
[0118] An item placement event is an event in which an item for which a light source is set (called a "light source item") is placed on a terrain object such as the ground in a field, and the area around the light source item becomes the illumination range.
[0119] FIG. 15 is a diagram showing an example of a game image including a field image showing a field including a player character. In FIG. 15, a character light-emitting event has occurred, and no other illumination events have occurred. In this embodiment, the game system 1 generates a character light-emitting event in response to an instruction from the player (for example, in response to an operation input for equipping the player character with light-emitting clothing). As shown in FIG. 15, when a character light-emitting event has occurred, a range around the player character 201 (called a "character influence range") is set as an illumination range. The character influence range is, for example, a range within a predetermined distance from the position of the player character 201. In the situation shown in FIG. 15, the range outside the character influence range is not set as an illumination range, and therefore is displayed as darkness (i.e., in a manner that is invisible or difficult to see) except for the mark object 203. In addition, objects that are displayed to be visible even outside the illumination range, such as the player character 201 itself and the mark object 203, (non-target objects to be described later) will be described later.
[0120] In this embodiment, the game system 1 sets ambient light in the field, and displays the illuminated range of the character's range of influence by reflecting the ambient light in its rendering. Ambient light is a light source for which a predetermined brightness is set regardless of the position in the field. As will be described in detail later, in this embodiment, the game system 1 displays the range outside the illuminated range in an invisible or difficult-to-visual manner by rendering the range without reflecting a light source (e.g., ambient light or a point light source).
[0121] In this embodiment, the game system 1 displays a map image 241 in a partial area of the screen of the display 12 (here, the area at the bottom right of the screen) together with a field image showing the field. In the situation shown in Fig. 15, since a release event has not yet occurred, the map image 241 is displayed that does not include field information other than marks showing the position and orientation of the player character 201. In other embodiments, the map image does not have to be displayed when the field image is displayed.
[0122] As described above, in the present embodiment, an example of an illumination event is an event in which the periphery of the player character becomes the illumination range based on an operation input by the player (i.e., a character illumination event). At this time, the game system 1 sets the position of the player character as the position of a reference point, and sets the illumination range based on the distance from the reference point so as to include a range in which the distance is equal to or less than a threshold value. According to this, the periphery of the player character can be continuously displayed so as to be visibly recognizable, and therefore, it is possible to reduce the possibility of a situation in which it is difficult to search the field because the periphery of the player character is completely invisible. Note that, in other embodiments, the game system 1 may always set the periphery of the player character to the illumination range regardless of whether a character illumination event occurs. Also, in other embodiments, the game system 1 may not generate a character illumination event as an illumination event.
[0123] In the above, the character light emission event is an event related to the player character, but the game system 1 may execute a character light emission event for a character other than the player character (for example, a companion character of the player character or an enemy character) in addition to (or instead of) the player character, and set an illumination range for the other character as well. For example, in response to a character light emission event in which the other character changes to a state in which the other character emits light by itself, the illumination range may be set based on the position of the other character.
[0124] Fig. 16 is a diagram showing an example of a game image in the case where the player character is located near a reference point. The situation shown in Fig. 16 is a situation in which the player character 201 has moved from the situation shown in Fig. 15 to the vicinity of an unreleased reference point 211. In this embodiment, since the marker object 203 is displayed so as to be visible even outside the illumination range, the player can move the player character 201 toward the reference point 211 outside the illumination range, aiming at the marker object 203.
[0125] As shown in FIG. 16, when the player character 201 is located in the vicinity of the reference point 211 (specifically, within a range within a predetermined distance from the reference point 211), the player character 201 can perform an action to release the reference point 211. That is, in the above case, the game system 1 accepts an operation input for releasing the reference point 211, and releases the reference point 211 in response to the operation input being performed by the player. In this embodiment, the above operation input is an input for executing a "search" command (i.e., a command for making the player character 201 perform an action to search the vicinity), and specifically, an input for pressing the A button 53 of the right controller 4. In the above case, in order to notify the player that the above operation input is in a state in which it is possible to perform the above operation input, the game system 1 displays a command image 242 indicating that the above command is executable (see FIG. 16). In addition, in order to make it easier to perform the above operations after reaching the reference point 211, a limited range, such as directly below the landmark object 203, may be set as a preset illumination range (i.e., set regardless of whether an illumination event occurs or not).
[0126] When an operation input for releasing the reference point 211 is performed, the game system 1 sets the range around the reference point 211 as the illumination range. At this time, in this embodiment, the game system 1 displays an animation of an event scene showing the release event. For example, as the event scene, an animation showing the surroundings of the reference point 211 gradually becoming brighter is displayed.
[0127] FIG. 17 is a diagram showing an example of a game image showing a field after the reference point 211 is released. As shown in FIG. 17, when a release event occurs in which the reference point 211 is released, the range around the reference point 211 is set as an illumination range, and the range is displayed visibly. In FIG. 17, the hills around the reference point 211 of the field are displayed visibly as included in the illumination range, and the area beyond the hills is outside the illumination range and remains displayed in an unvisible manner. In the situation shown in FIG. 17, the map around the reference point 211 is released due to the reference point 211 being released (i.e., a released area including the reference point 211 is set), so the map image 241 includes field information for the released area.
[0128] The mark object 203, which was visible even outside the illumination range, is displayed so as to be visible even within the illumination range. Here, in this embodiment, the game system 1 further sets a point light source at a predetermined position in the field, for example, at the position of the mark object 203, in response to the occurrence of a release event. Although details will be described later, in the drawing process, the game system 1 draws the part of the terrain object included in the illumination range by further reflecting the point light source. Therefore, the periphery of the mark object 203 is drawn by reflecting the ambient light and the point light source, and is displayed brighter than the part of the illumination range where drawing is performed by reflecting only the ambient light. That is, it is possible to express brightness based on the point light source while ensuring visibility of a predetermined range. In addition, in FIG. 17, the part within the illumination range where the light from the point light source set at the position of the mark object 203 is particularly reflected and is bright is shown in a white area, and the part of the illumination range where the influence of the point light source is small is shown in a shaded area. The point light source described above makes it easier for the player to recognize that a release event has occurred.
[0129] The illumination range that is set in response to the occurrence of a release event as an illumination event is set based on a reference point that corresponds to the release event. A method for setting the illumination range in response to the occurrence of a release event will be described with reference to Figs. 18 and 19.
[0130] FIG. 18 is a view of the field seen from above when one reference point is released. The situation shown in FIG. 18 is a situation in which the reference point 211 shown in FIG. 9 is released. In this embodiment, the game system 1 sets the illumination range based on a released area (area 212 in FIG. 18) based on the released reference point and the point influence range corresponding to the reference point (point influence range 251 in FIG. 18). Note that the "point influence range corresponding to the reference point" is a range that is determined in advance for each reference point. In this embodiment, a range within a predetermined distance from the reference point is set as the point influence range. Note that this predetermined distance is set for each reference point, and may be a different value for each reference point, or may be the same value for each reference point. For example, the point influence range at each reference point may be set so that a part of the field is outside the point influence range even when all reference points are released, or may be set so that the entire field is within the point influence range in this case. In the former case, there will be a part of the field that is outside the illumination range even when all reference points are released.
[0131] In this embodiment, the game system 1 sets the range of the field that is within the point influence range and the released area as the illumination range. In the example shown in FIG. 18, the released area 212 is inside the point influence range 251, so the same range as the released area 212 becomes the illumination range. In FIG. 18, the outside of the illumination range is indicated by a hatched area. In this embodiment, the point influence range is set for each reference point as described above, and is set independently of the released area corresponding to the point influence range. Therefore, the point influence range may be set larger than the released area corresponding to the point influence range (i.e., the released area is included in the point influence range), smaller than the released area (i.e., the point influence range is included in the released area), or may be set to be the same as the released area. In addition, the "released area corresponding to the reference point" is a released area that is set when only the reference point is released.
[0132] The illumination range may be set in any manner so as to include at least a part of the open area. For example, in another embodiment, the game system 1 may set the open area as the illumination range as it is, or may set the range inside at least one of the open area and the point influence range as the illumination range.
[0133] Figure 19 is a top view of the field when two reference points are released. The situation shown in Figure 19 is when the reference points 211 and 213 shown in Figure 11 have been released.
[0134] When two reference points 211 and 213 are released as shown in FIG. 19, a released area 216 shown by a dotted line in FIG. 19 is set as shown in FIG. 11. As described above, the game system 1 sets the range within the point influence range corresponding to the released reference point and within the released area as the illumination range. Therefore, in the example shown in FIG. 19, the range inside at least either the point influence range 251 corresponding to the reference point 211 or the point influence range 252 corresponding to the reference point 213 and inside the released area 216 becomes the illumination range. Note that in FIG. 19, the outside of the illumination range is indicated by a shaded area.
[0135] In the example shown in FIG. 19, the point influence range 251 is set larger than the released area when only the reference point 211 is released (i.e., the area 212 shown in FIG. 18), and the point influence range 252 is set larger than the released area when only the reference point 213 is released. Therefore, when the two reference points 211 and 213 are released, the range that is not the illumination range when only one of the reference points 211 or 213 is released also becomes the illumination range. For example, in the example shown in FIG. 19, the point influence ranges 251 and 252 are set to overlap each other partially, so that when the two reference points 211 and 213 are released, one continuous illumination range is set from the reference point 211 to the reference point 213. According to the above, by releasing the two reference points 211 and 213, the player can easily explore the field between these two reference points 211 and 213.
[0136] On the other hand, for two other reference points different from the reference points 211 and 213, the point influence ranges corresponding to the reference points may be set to be the same as or smaller than the released area when only the reference points are released. In this case, unlike the example shown in Fig. 19, even if the above two reference points are released, the illumination range is not set to be continuous across the two reference points, and two discontinuous illumination ranges are set.
[0137] As described above, in this embodiment, the point influence range is set independently of the released area, and the illumination range is set based on the released area and the point influence range, so that the size and shape of the illumination range can be freely set. For example, when two reference points are released, it is possible to set the illumination range so that it is continuous across the two reference points, and it is also possible to set two discontinuous illumination ranges.
[0138] Note that, although details will be described later, in the present embodiment, the game system 1 displays the illumination range set by the release event so that the illumination range is visible by using the above-mentioned ambient light.
[0139] As described above, in this embodiment, an example of an illumination event is an event (i.e., a release event) that occurs when a predetermined operation input is performed when the player character is located at an event occurrence position (i.e., a reference position) set in the field. At this time, the game system 1 sets the illumination range so as to include a predetermined range including the event occurrence position (specifically, the range of the release area based on the reference point, or the point influence range). This makes it possible to provide a game in which the illumination range is expanded by the player character reaching the event occurrence position. At this time, the shape of the illumination range may be a shape based on the distance from the event occurrence position as described above, or in other embodiments, may be a predetermined shape including the event occurrence position.
[0140] In this embodiment, the illumination range is also set by an item placement event. FIG. 20 is a diagram showing an example of a game image showing a field on which a light source item is placed. The situation shown in FIG. 20 is a situation in which a light source item 261 is placed at a position outside the illumination range in the field. The light source item 261 is an object in which a light source (specifically, a point light source) is set at the position of the item. In this embodiment, the player character 201 can place a predetermined light source item on the field. The player character 201 places the light source item on the ground, for example, by placing the light source item on the ground under the feet of the player character 201, throwing it, or shooting it with a bow and arrow. In this embodiment, the player character 201 can possess the light source item as an item, and can place the light source item on the ground at the timing desired by the player. In other embodiments, items such as a torch or a candle may be used as the light source item.
[0141] When the light source item 261 is placed on the ground in the field, the game system 1 sets the range around the light source item (referred to as the "item influence range") as the illumination range. The item influence range is, for example, a range within a predetermined distance from the position of the light source item 261. In the example shown in FIG. 20, the light source item 261 is placed at a position outside the illumination range in the field, so that the item influence range based on the position becomes the illumination range, and the field within the range is displayed visibly. Thus, in this embodiment, the player can expand the visible range in the field by placing a light source item in addition to releasing the reference point. For example, when the player character 201 advances through a dark area (i.e., an area outside the illumination range) toward an unreleased reference point, the player can advance through the field while ensuring visibility by placing a light source item in the area.
[0142] In this embodiment, for the illumination range (i.e., item influence range) set by the item placement event, the game system 1 draws the game image by reflecting the point light source set at the position of the light source item. That is, for the illumination range set by the item placement event, drawing is performed taking into account the point light source in addition to the above-mentioned ambient light. Details of the game image drawing process will be described later.
[0143] FIG. 21 is a diagram showing an example of a game image showing a field when a light source item is placed within the illumination range of the release event. In this case, the item influence range of the light source item 261 is drawn reflecting the ambient light and the point light source, so that it is displayed brighter than the area outside the item influence range and within the illumination range of the release event. In FIG. 21, the area within the illumination range and outside the item influence range is shown by a shaded area, and the item influence range is shown by a white area. As described above, according to this embodiment, the player can easily recognize that the light source item 261 has been placed.
[0144] 21, even when the light source item 261 is placed within the illumination range due to the release event, the game system 1 sets the item influence range of the light source item 261 as the illumination range, in the same way as when the light source item is placed outside the illumination range. However, if the entire item influence range is within the range that has already been set as the illumination range, the illumination range on the field will not change as a result.
[0145] As explained above for the three types of illumination events (i.e., character illumination events, release events, and item placement events), in this embodiment, at least a light source (specifically, ambient light) is set in the field to which a predetermined brightness is set regardless of the position in the field. Then, in the drawing process, the game system 1 draws the portions included in the illumination range of at least some of the terrain objects in the field (e.g., the ground objects shown in FIG. 17) by reflecting the light source. This ensures a certain brightness for the illumination range, so that the illumination range can be displayed in an easy-to-see manner (e.g., without being displayed dark due to the shadows of the terrain) regardless of the shape of the terrain of the field, etc.
[0146] Furthermore, in this embodiment, a point light source is set in addition to the above-mentioned ambient light. That is, the game system 1 further installs a point light source in the field in response to the occurrence of a predetermined event (specifically, a release event and an item placement event). Furthermore, in the drawing process, the game system 1 draws the part included in the illumination range of at least a part of the terrain objects in the field by further reflecting the point light source. This makes it easier for the player to recognize that the above-mentioned predetermined event has occurred and that the field has become brighter due to the occurrence of the predetermined event.
[0147] The type of light source set in the field is arbitrary. In other embodiments, for example, a light source having a shape other than a point light source may be set in the field together with the ambient light. Also, no point light source may be disposed and only ambient light may be set in the field.
[0148] In this embodiment, the predetermined event is an event in which a predetermined item (specifically, a light source item) is placed on the field. At this time, the game system 1 sets the position of a reference point based on the position where the item is placed, and sets the illumination range based on the distance from the reference point so as to include a range where the distance is equal to or less than a threshold (i.e., the item influence range). This makes it easier for the player to set the illumination range to a desired position by placing the item.
[0149] Note that the term "an event in which a specific item is placed on the field" does not necessarily mean an event that occurs when a specific item is simply placed on the field, but also includes an event that occurs when a specific item is placed on the field under certain conditions. For example, an "event in which a specific item is placed on the field" may be an event that is conditioned on a specific impact being applied to the item placed on the field. The above condition may be that a specific impact is applied when the specific item falls on the field, or that a specific impact is applied by another object to the specific item placed on the field.
[0150] The event for which the point light source is set is not limited to an item placement event, and may be another type of event. For example, in another embodiment, the game system 1 may set a point light source at the position of the player character 201 in response to the occurrence of a character light emission event, and may display the illumination range visibly by drawing the character influence range while reflecting the point light source.
[0151] As described above for the three types of illumination events (i.e., character illumination events, release events, and item placement events), in this embodiment, a reference point for the illumination range is set in the virtual space in response to the occurrence of a predetermined event (specifically, an illumination event). Then, based on the distance from the reference point, the illumination range is set so as to include a range where the distance is equal to or less than a threshold value. In this way, in response to the occurrence of an event, a position corresponding to the event and its surroundings can be set as the illumination range.
[0152] Note that the above "range in which the distance is below the threshold value" refers to the character influence range in a character lighting event, the point influence range or the range of the liberation area in a release event, and the item influence range in an item placement event.
[0153] In addition, in this embodiment, the "reference point of the illumination range" is the position of the player character 201 in a character light emission event, the position of the reference point in a release event, and the position of the light source item in an item placement event. However, the "reference point of the illumination range" does not need to be these positions strictly, and may be a position determined based on these positions. For example, the "reference point of the illumination range" may be a position slightly shifted from the position of the player character 201, the position of the reference point, or the position of the light source item.
[0154] In addition, in this embodiment, the illumination range set in response to the occurrence of an illumination event may be controlled to gradually expand from the time of the occurrence. That is, the game system 1 may expand the illumination range by increasing the threshold value for determining the illumination range as time passes after the above-mentioned reference point is set in response to the occurrence of an illumination event. Note that the above threshold value is a distance threshold value set in the character influence range in a character illumination event, a distance threshold value set in the point influence range in a release event, and a distance threshold value set in the item influence range in an item placement event. According to this, when an illumination event occurs, it is possible to display a state in which a bright area in the field gradually expands. Note that, in the above, the illumination range is controlled to stop expanding after a predetermined time has elapsed. Also, the game system 1 does not need to gradually expand the illumination range for all illumination events, and may control the illumination range to gradually expand for predetermined events (for example, release events and item placement events) among the illumination events.
[0155] As described above, in this embodiment, a predetermined object is displayed so as to be visible even when the object is located outside the illumination range. Hereinafter, such an object is referred to as a "non-target object." Specifically, in this embodiment, the non-target object is a predetermined type of character and a self-luminous object. More specifically, the predetermined type of character is a player character and an enemy character. Also, a self-luminous object is an object that is set in the drawing settings to be displayed as if it is shining. For example, the above-mentioned marker object 203 is a self-luminous object.
[0156] Although the details will be described later, when rendering a game image, the game system 1 renders non-target objects based on rendering settings preset for the non-target objects, even if the non-target objects are located outside the illumination range, rather than rendering settings that do not reflect the above-mentioned light source. In this embodiment, when a character of a predetermined type is located outside the illumination range, the character is rendered visibly with a shadow added. Therefore, the character of the predetermined type is displayed in a manner that can be distinguished from other objects outside the illumination range that are displayed as darkness.
[0157] Furthermore, even if a self-luminous object is located outside the illumination range, it is drawn based on the drawing settings such as emission set for the object. As a result, the self-luminous object is displayed in a manner that can be distinguished from other objects outside the illumination range that are displayed as darkness, such as the mark object 203 shown in FIG.
[0158] As described above, in this embodiment, the illumination event is an event (i.e., a release event) that occurs when a predetermined operation input is performed when the player character is located at an event occurrence position set in association with a reference point in the field. As shown in FIG. 15 and FIG. 16, the marker object, which is a self-luminous object, is placed in a position corresponding to each of a plurality of reference points in the field (for example, a position above the reference point). Regardless of whether the marker object is included in the illumination range or not, the game system 1 draws the marker object so that the marker object is displayed in a manner that can be distinguished from other objects that are not included in the illumination range. This makes it easier for the player to move the player character toward the reference point outside the illumination range by targeting the marker object.
[0159] [2-3. Image generation processing] Next, an example of a method for generating a game image in which the part of the field outside the illumination range is displayed in darkness (i.e., in a manner that is invisible or difficult to see) will be described. In this embodiment, the game system 1 draws objects within the illumination range by reflecting the light source set in the field, while for objects outside the illumination range (excluding the above-mentioned non-target objects), the light source is not reflected and pixels corresponding to the objects are drawn in black. This makes it possible to make objects outside the illumination range invisible, effectively giving the player an incentive to release the reference point in order to explore the field. A specific example of a method for generating a game image will be described below.
[0160] In this embodiment, the game system 1 draws game images using a technique based on deferred rendering (also called deferred shading or delayed shading). That is, the game system 1 executes the drawing process through the first to third stages described below during one frame.
[0161] In the first stage, the game system 1 writes information used for drawing each object (including character objects and terrain objects) in the virtual space into a G-buffer (geometry buffer). For each pixel to be drawn, for example, information on the normal of the polygon corresponding to the pixel and information on the color set for the polygon corresponding to the pixel are written into the G-buffer. In this embodiment, in addition to this information, coordinates indicating the position on the field corresponding to the pixel and information indicating that the pixel is a pixel where a non-target object is to be drawn are stored in the G-buffer. Also, in the first stage, the game system 1 writes depth information of the position on the field into the depth buffer for each pixel corresponding to the position.
[0162] In the second stage, the game system 1 writes information about lighting to the light buffer based on the information written to the G buffer and the depth buffer and the information about the light source set in the field. For example, information indicating the brightness of the corresponding position on the field is written to the light buffer for each pixel to be drawn. Note that in other embodiments, the game system 1 performs calculations about lighting in the second stage, but in other embodiments, calculations about lighting may be performed in the third stage described below in which drawing is performed in the frame buffer.
[0163] Also, in this embodiment, in the second stage, the game system 1 generates data of a darkness mask. The darkness mask is data indicating whether or not a position on the field corresponding to each pixel to be drawn is a position to be drawn as darkness (i.e., a position outside the illumination range), or the degree to which the pixel is drawn as darkness. In this embodiment, the darkness mask indicates a darkness mask value indicating the degree to which the pixel is drawn in a color representing darkness (black in this embodiment, as described above) for each pixel. For example, the darkness mask value is a value between 0 and 1, and is set to 1 for pixels drawn in a color representing darkness, and is set to 0 for pixels in which the color representing darkness is not reflected. Also, when the darkness mask value is an intermediate value (i.e., a value greater than 0 and less than 1), the intermediate value takes a larger value as the degree to which the color representing darkness is reflected in the pixel is greater. In this embodiment, for pixels corresponding to positions outside the illumination range, the darkness mask value is set to 1, and for pixels corresponding to positions within the illumination range, the darkness mask value is set to a value less than 1. Therefore, it can be said that the darkness mask is data indicating the illumination range in the field. Although the details will be described later, the darkness mask is generated based on the illumination range in the virtual space and the coordinate data indicating the position on the field stored in the G buffer. Furthermore, for pixels corresponding to the pixels where the above-mentioned non-target object is drawn, a value that does not reflect darkness is set. Note that, in other embodiments, for pixels corresponding to positions outside the illumination range, the darkness mask value may be set to a predetermined value or more (this predetermined value is a value greater than 0 and less than 1), and for pixels corresponding to positions within the illumination range, the darkness mask value may be set to a value less than the predetermined value. Also, in this embodiment, the darkness mask value is a multi-value value ranging from 0 to 1, but in other embodiments, the darkness mask value may be a binary value of 0 or 1.
[0164] In the third stage, the game system 1 writes pixel values of a field image showing a field reflecting the influence of light from a light source and darkness into the frame buffer based on the information written in each buffer (i.e., the G buffer, the depth buffer, and the light buffer) and the darkness mask. That is, the game system 1 writes pixel values reflecting the light source in the virtual space based on the information in the G buffer and the light buffer, and pixel values overwritten with black based on the darkness mask into the frame buffer.
[0165] FIG. 22 is a diagram showing an example of a method for generating a field image to be written to a frame buffer. As shown in FIG. 22, the pixel value of each pixel of the field image is calculated based on color information stored in the G buffer, brightness information stored in the light buffer, and a darkness mask value of the darkness mask. First, by reflecting the brightness information stored in the light buffer, a field image reflecting light from a light source can be obtained. That is, a field image expressed as if illuminated by ambient light or a point light source can be obtained. Furthermore, by using a darkness mask, a field image expressed in darkness outside the illumination range can be generated (see FIG. 22). As a result of the above, the game system 1 can obtain a field image expressed as if illuminated by ambient light or a point light source within the illumination range and expressed in darkness outside the illumination range.
[0166] In the darkness mask shown in FIG. 22, positions where the darkness mask value is 1 are shown in black, positions where the darkness mask value is 0 are shown in white, and positions where the darkness mask value is an intermediate value are shown in gray so that the larger the value, the closer to black it becomes. For the illumination range based on the character light emission event or the item placement event, the darkness mask value is set to 0 for pixels corresponding to positions within a predetermined distance from the reference point of the illumination range, and gradually increases according to the distance from the reference point for pixels corresponding to positions farther away from the reference point than the predetermined distance, and to 1 for pixels corresponding to positions outside the illumination range. Note that the reference point of the illumination range is a position that is the reference for the illumination range, and specifically, for the illumination range based on the release event, it is the reference position, for the illumination range based on the character light emission event, it is the position of the player character, and for the illumination range based on the item placement event, it is the position of the light source item.
[0167] For the illumination range based on the release event, the game system 1 calculates two-dimensional range data used to calculate a darkness mask value, and generates a darkness mask based on the two-dimensional range data and the horizontal plane component of the coordinate data indicating a position on the field stored in the G buffer. The two-dimensional range data is data indicating a degree value used to calculate a darkness mask value for each two-dimensional position on the above-mentioned field corresponding plane. It can be said that the two-dimensional range data is data indicating an illumination range on the field. Note that in this embodiment, the above-mentioned two-dimensional range data related to a position on a two-dimensional plane is generated as data indicating an illumination range, but in other embodiments, the data indicating an illumination range may be data indicating a position on a three-dimensional field.
[0168] The degree value is a value indicating the degree of dark drawing in the drawing process, similar to the darkness mask value. For example, the degree value is maximum at the reference point of the irradiation range, gradually decreases according to the distance from the reference point, and changes to 0 outside the irradiation range. Therefore, the degree value can be calculated based on a value that attenuates according to the distance from the reference point of the irradiation range. In this embodiment, the irradiation range based on the release event is set based on the release area set based on the above-mentioned total determination value and the point influence range based on the distance from the reference point. Therefore, the degree value for the irradiation range based on the release event can be calculated based on the above-mentioned total determination value and a value that attenuates according to the distance from the reference point.
[0169] Next, the game system 1 calculates a darkness mask value for each pixel based on the degree value at each position corresponding to each pixel. For example, the degree value is scaled to a range of 0 to 1, and the scaled value is subtracted from 1 to obtain a darkness mask value. By using the darkness mask value calculated in the above manner, a darkness mask that reflects an illumination range based on a release event can be generated. Note that, when the range of the release area and the point influence range are made the same, the above-mentioned map mask may be used as two-dimensional range data.
[0170] As described above, in this embodiment, the game system 1 generates two-dimensional range data that indicates the illumination range in the field in a planar manner based on the occurrence of a release event, so that at least the range in the field that corresponds to the event occurrence position (i.e., the position of the reference point) becomes the illumination range, and generates a darkness mask based on the two-dimensional range data.
[0171] Furthermore, in this embodiment, the game system 1 generates a darkness mask in the second stage of the drawing process so as to reflect the illumination range based on the position of the player character and the illumination range based on the position of the point light source set for the light source item. This generates a darkness mask that reflects each illumination event (i.e., release event, character light emission event, and item placement event).
[0172] The calculation method of the darkness mask value is arbitrary and is not limited to the above method. For example, in another embodiment, the game system 1 may directly generate a darkness mask in the drawing process without generating the above two-dimensional range data. That is, in the second stage of the drawing process, the game system 1 may generate a darkness mask that reflects the illumination range based on the release event based on the total judgment value for each position on the field corresponding to the pixel and a value that attenuates according to the distance from the reference point.
[0173] As described above, in the present embodiment, the game system 1 generates mask data (i.e., data of a darkness mask) for each pixel of at least a part of terrain objects in the drawing process, which at least indicates whether or not a position of the terrain object corresponding to the pixel is included in the illumination range. Then, for pixels in which the mask data indicates that the position of the terrain object is included in the illumination range, drawing is performed in the frame buffer by reflecting the light source. Furthermore, for pixels in which the mask data indicates that the position of the terrain object is not included in the illumination range, drawing is performed in the frame buffer in a predetermined color. In this way, by using the mask data, a field image can be generated in which the outside of the illumination range is expressed in a manner that is impossible or difficult to see. The predetermined color is, for example, black. However, it is not limited to black, and may be gray or another color. Furthermore, it is not limited to a single color, and may be drawn as an image having a predetermined pattern.
[0174] In the present embodiment, the mask data is data indicating the degree to which the predetermined color is drawn for each pixel. In the drawing process, the game system 1 writes a pixel value obtained by combining a predetermined color with a pixel value calculated by reflecting a light source (i.e., a pixel value based on color information stored in the G buffer and brightness information stored in the light buffer) with the pixel value calculated by reflecting the light source in the frame buffer according to the degree. This allows the degree of darkness to be expressed in multiple stages. For example, as described above, by setting the degree value to be maximum at the reference point of the illumination range, gradually decreasing according to the distance from the reference point, and 0 outside the illumination range, a field image in which the darkness gradually becomes darker at the boundary of the illumination range can be generated (see FIG. 22).
[0175] In addition, in this embodiment, the game system 1 generates two-dimensional range data indicating a degree value indicating the degree to which the field is drawn dark in the drawing process for each two-dimensional coordinate corresponding to a coordinate component other than the height direction. The game system 1 calculates the degree value based on the total judgment value and a value that is a reference value at a two-dimensional position corresponding to a reference point at each of the coordinates and attenuates according to the two-dimensional distance from the two-dimensional position to the coordinate. In the drawing process, for each pixel drawn in the frame buffer, a pixel value calculated by reflecting a light source set in the field and a predetermined color (i.e., black) is mixed with the pixel value calculated by reflecting the light source set in the field and according to the degree value at the two-dimensional coordinate corresponding to the pixel indicated by the two-dimensional range data (also referred to as the darkness mask value based on the degree value) is written into the frame buffer. According to the above, the predetermined color can be reflected in a stepwise manner in an image showing the field. This allows a field image to be generated so that it becomes gradually darker near the boundary of the illumination range, for example, so that a field image that looks more natural can be generated.
[0176] In this embodiment, the game system 1 draws the non-target objects using a method set for each object, rather than using black, which represents darkness. Specifically, in the first stage, the game system 1 writes data of an exclusion mask related to the non-target objects in the G buffer. The exclusion mask is data indicating pixels corresponding to the positions of the non-target objects. It can be said that the exclusion mask indicates that the application of the darkness mask is excluded for pixels corresponding to the non-target objects. The game system 1 writes data indicating a drawing method set for the non-target objects (for example, to emit light by itself or to apply a predetermined shade) in the G buffer.
[0177] In addition, in the third stage of the drawing process, the game system 1 draws the pixels indicated by the exclusion mask in the manner set for non-target objects, regardless of the darkness mask value of the darkness mask. As a result, the non-target objects are not drawn as darkness even if they are outside the illumination range, but are drawn in the manner set. Note that in the second stage, a value indicating that the pixels indicated by the exclusion mask are not darkness may be written into the darkness mask.
[0178] As described above, in this embodiment, in the first stage of the drawing process, the game system 1 writes the non-target object to the G buffer and the depth buffer for each pixel, and generates the exclusion mask data. Then, in the third stage of the drawing process, the game system 1 draws the pixels indicated by the exclusion mask data in a manner that allows the non-target object to be distinguished from the part of the terrain object that is not included in the illumination range (for example, in a manner that makes it appear to be self-luminous or in a manner that casts a predetermined shadow). In this way, the game system 1 can display the non-target object in a manner that allows the non-target object to be visible even if it is outside the illumination range.
[0179] As described above, in this embodiment, the game system 1 renders objects outside the illumination range as darkness by a rendering process based on so-called deferred rendering. That is, in the first stage, the game system 1 writes at least some of the terrain objects in the field to the G buffer and the depth buffer. In the second stage, the game system 1 generates darkness mask data for each pixel based on the position corresponding to the pixel, the depth value stored in the depth buffer, and the illumination range. In the third stage, the game system 1 renders in the frame buffer based on at least the data stored in the G buffer and the darkness mask data. According to the above, the game system 1 can apply the deferred rendering technology to render objects outside the illumination range in an invisible or difficult to see manner.
[0180] In other embodiments, the method for rendering objects outside the illumination range as darkness is arbitrary and is not limited to the rendering process based on deferred rendering. In other embodiments, the rendering process may be performed based on forward rendering (also called forward shading). That is, in the rendering process, the game system 1 may determine whether or not at least some of the terrain objects (for example, objects excluding the above-mentioned non-target objects) are included in the illumination range for each pixel, and may perform rendering of the pixels included in the illumination range in the frame buffer by reflecting the light source, and may perform rendering of the pixels not included in the illumination range in the frame buffer using a predetermined color (for example, black). According to the above, the game system 1 can render objects outside the illumination range in an invisible or difficult-to-visual manner based on forward rendering.
[0181] [3. Specific examples of processing in game systems] Next, a specific example of information processing in the game system 1 will be described with reference to FIGS.
[0182] FIG. 23 is a diagram showing an example of a storage area for storing various data used for information processing in the game system 1. Each storage area shown in FIG. 23 is provided in a storage medium accessible by the main unit 2 (e.g., flash memory 84, DRAM 85, and / or a memory card inserted in the slot 23, etc.). As shown in FIG. 23, the storage medium is provided with a game program area in which a game program is stored. The game program is for executing the game processing in this embodiment (specifically, the game processing shown in FIG. 24). The storage medium is also provided with the above-mentioned G buffer, depth buffer, write buffer, and frame buffer.
[0183] The storage medium is also provided with a darkness mask data area for storing the above-mentioned darkness mask data. The above-mentioned exclusion mask data is stored in the G buffer. The storage medium is also provided with a processing data area for storing various data used in game processing. The processing data area stores, for example, the above-mentioned map mask data. The processing data area also stores, for example, object data (for example, data indicating the position and orientation of an object) related to various objects (for example, a player character and a light source item) appearing in the game.
[0184] 24 is a flow chart showing an example of the flow of game processing executed by the game system 1. Execution of the game processing is started, for example, when the game is started in response to a command from a player during execution of the game program. In this embodiment, the game processing has processing modes including a field mode in which a field image showing a field is displayed, a map display mode in which the above-mentioned map image is displayed over the entire display 12, and a menu display mode in which a menu image is displayed. The processing mode at the start of the game is arbitrary, but here it is set to the field mode, for example.
[0185] In this embodiment, the processor 81 of the main unit 2 executes the game program stored in the game system 1 to execute the processing of each step shown in FIG. 24. However, in other embodiments, some of the processing of each step may be executed by a processor (e.g., a dedicated circuit) other than the processor 81. In addition, if the game system 1 is capable of communicating with another information processing device (e.g., a server), some of the processing of each step shown in FIG. 24 may be executed in the other information processing device. In addition, the processing of each step shown in FIG. 24 is merely an example, and the processing order of each step may be changed as long as the same result is obtained, or another processing may be executed in addition to (or instead of) the processing of each step.
[0186] 24 by using a memory (e.g., DRAM 85). That is, the processor 81 stores information (in other words, data) obtained by each processing step in the memory, and when using the information in the subsequent processing steps, reads the information from the memory and uses it.
[0187] 14, processor 81 obtains the operation data indicating an instruction by the player. That is, processor 81 obtains the operation data received from each controller via controller communication unit 83 and / or each of terminals 17 and 21. Following step S1, the process of step S2 is executed.
[0188] In step S2, processor 81 determines whether or not an event scene such as a release event is being executed. As described above, in this embodiment, in response to the occurrence of a release event, playback of an animation of an event scene indicating the release event is started (see step S26 described below). In step S2, processor 81 determines whether or not the animation of the event scene is being played. If the determination result of step S2 is positive, the process of step S3 is executed. On the other hand, if the determination result of step S2 is negative, the process of step S4 is executed.
[0189] In step S3, processor 81 advances the event scene being executed. That is, processor 81 displays an image of the animation of the event scene on display 12. Note that in one step S3, one frame of image is displayed, and the processing of step S3 is repeatedly executed during execution of the event scene, thereby playing back the animation. Regarding the drawing processing during the event, the same processing as that in the field mode in which the field image is displayed may be executed, but a different drawing processing may be executed when expressing a different scene. The specific content of this different drawing processing is arbitrary, and details are omitted. Note that in this embodiment, the image generated by game system 1 is displayed on display 12, but the image may be displayed on another display device (for example, the above-mentioned stationary monitor). Following step S3, the processing of step S12 described later is executed.
[0190] In step S4, processor 81 determines whether or not the game is in a map display mode in which a map image is displayed. In this embodiment, the map display mode is started in response to a map display instruction being given by the player in the field mode in which a field image is displayed, as will be described in detail later (see step S22 described later). If the determination result in step S4 is positive, the process of step S5 is executed. On the other hand, if the determination result in step S4 is negative, the process of step S6 is executed.
[0191] In step S5, processor 81 causes display 12 to display a map image. That is, processor 81 generates a map image according to the method described in "[2-1. Setting of open areas of map]" above, and causes display 12 to display the generated map image. In step S5 (i.e., in map display mode), the field image is not displayed and the map image is displayed in the entire area of display 12 (see Figs. 10 and 12). Also, in map display mode, processor 81 accepts an instruction to end the display of the map image, and when the instruction is given, the processing mode is shifted to the field mode. In this case, the determination result in step S4 executed next is negative, and the field image is displayed in step S11 described later. Following step S5, processing in step S12 described later is executed.
[0192] In step S6, processor 81 determines whether or not the game is in a menu display mode in which a menu image is displayed. Although details will be described later, in this embodiment, the menu display mode is started in response to a menu display instruction being given by the player in the field mode in which a field image is displayed (see step S22 described later). If the determination result in step S6 is positive, the process of step S7 is executed. On the other hand, if the determination result in step S6 is negative, the process of step S8 is executed.
[0193] In step S7, processor 81 displays a menu image on display 12. Here, in this embodiment, processor 81 accepts, in the menu display mode, at least an operation input for an instruction to change the equipment of the player character among various operations. That is, the player can change the equipment of the player character in the menu image, and can equip the player character with the above-mentioned glowing clothes, for example. Although omitted in the flowchart shown in FIG. 24, in the menu display mode, an operation input for various instructions to the menu image (for example, an instruction to change the equipment of the player character, an instruction to use an item, etc.) is accepted, and processor 81 appropriately changes and displays the contents of the menu image in response to the operation input. Also, in the menu display mode, processor 81 accepts an instruction to end the display of the menu image, and when the instruction is issued, the processing mode is shifted to the field mode. In this case, the determination result in the above step S6 executed next is negative, and a field image is displayed in step S11 described later. Following step S7, a process in step S12 described later is executed.
[0194] In step S8, processor 81 executes a player-related control process. In the player-related control process, various processes (e.g., control processes related to a player character) are executed based on an operation input by the player. Details of the player-related control process will be described later with reference to a flowchart shown in FIG. 25. Following step S8, the process of step S9 is executed.
[0195] In step S9, processor 81 executes another object control processing. In the other object control processing, objects other than the player character (for example, enemy characters, the above-mentioned light source items, etc.) are controlled. Details of the other object control processing will be described later with reference to the flowchart shown in FIG. 26. Following step S9, the processing of step S10 is executed.
[0196] In step S10, the processor 81 executes a drawing process of a field image showing a field. In the drawing process of the field image, as described above, a field image in which the outside of the illumination range is shown in darkness is generated. Details of the drawing process will be described later with reference to the flowchart shown in FIG. 27. Following step S10, the process of step S11 is executed.
[0197] In step S11, processor 81 causes display 12 to display the field image generated in step S10. Note that, as shown in Fig. 15 etc., in the field mode, processor 81 may generate a map image in addition to the field image and display the map image superimposed on the field image. Following step S11, the process of step S12 is executed.
[0198] In step S12, processor 81 determines whether or not to end the game. For example, when a predetermined operation input for ending the game is performed by the player, processor 81 determines to end the game. When the determination result in step S12 is negative, the process of step S1 is executed again. Thereafter, a series of processes from steps S1 to S12 is repeatedly executed until it is determined in step S12 to end the game. On the other hand, when the determination result in step S12 is positive, processor 81 ends the game process shown in FIG. 24.
[0199] Fig. 25 is a sub-flowchart showing an example of a detailed flow of the player-related control process of step S8 shown in Fig. 24. In the player-related control process, first, in step S21, processor 81 determines whether or not an instruction to switch the above-mentioned processing mode has been given by the player based on the operation data acquired in the above-mentioned step S1. The instruction to switch the processing mode is, specifically, an instruction to display a map image or an instruction to display a menu image. If the determination result of step S21 is positive, the process of step S22 is executed. On the other hand, if the determination result of step S21 is negative, the process of step S23 is executed.
[0200] In step S22, processor 81 switches the processing mode in response to the instruction given in step S21. That is, when an instruction to display a map image is given, processor 81 switches the processing mode to the map display mode. In this case, the determination result in the above-mentioned step S4 that is executed next is positive, and processing to display the map image is executed in step S5. Also, when an instruction to display a menu image is given, processor 81 switches the processing mode to the menu display mode. In this case, the determination result in the above-mentioned step S6 that is executed next is positive, and processing to display the menu image is executed in step S7. After step S22, processor 81 ends the player-related control processing.
[0201] In step S23, processor 81 determines whether or not it is an operation acceptance period during which operation input for the player character is accepted. In this embodiment, the operation period during which the player character is performing a predetermined operation (for example, an operation controlled in step S30, described later) in response to operation input for the player character is excluded from the operation acceptance period. If the determination result in step S23 is positive, processing in step S24 is executed. On the other hand, if the determination result in step S23 is negative, processing in step S33, described later, is executed.
[0202] In step S24, processor 81 determines whether or not an operation input for releasing the reference point has been performed based on the operation data acquired in step S1. That is, processor 81 determines whether or not an input for executing the "search" command has been performed in a state in which the player character is located near the reference point. If the determination result in step S24 is positive, the process of step S25 is executed. On the other hand, if the determination result in step S24 is negative, the process of step S29, which will be described later, is executed.
[0203] In step S25, the processor 81 sets the reference point where the operation input is performed to a released state. For example, the processor 81 updates data indicating the state of the reference point stored in the memory to content indicating that the reference point has been released. The processor 81 also sets a point light source at the position of a landmark object indicating the reference point. As a result, in the drawing process described below, drawing is performed so that light shines on the periphery of the landmark object. Following step S25, the process of step S26 is executed.
[0204] In step S26, processor 81 starts an event scene for when a release event occurs. That is, processor 81 starts playing an animation showing the surroundings of the released reference point gradually becoming brighter. After the process of step S26, the determination result in step S2 above remains positive until the playback of the animation ends, and the execution of the event scene continues. Following step S26, the process of step S27 is executed.
[0205] In step S27, processor 81 sets the above-mentioned released area based on the reference point released in step S26. That is, processor 81 generates a map mask indicating the released area set according to the method described in "[2-1. Setting of released area of map]" above. Specifically, at the start of game processing, map mask data is stored in memory, and processor 81 updates the data to indicate the set released area. As a result of the processing of step S27, an area of the field including the released reference point is set as the released area. Following step S27, the processing of step S28 is executed.
[0206] In step S28, processor 81 sets the above-mentioned illumination range based on the reference point released in step S26. That is, processor 81 generates the above-mentioned two-dimensional range data indicating the illumination range set according to the method described in "[2-2. Setting of Illumination Range]" above. Specifically, at the start of the game processing, two-dimensional range data is stored in the memory, and processor 81 updates the data to indicate the set illumination range. By the processing of step S27, an area of the field including the released reference point is set as the illumination range. After step S28, processor 81 ends the player-related control processing. Note that the processing of steps S25, S27, and S28 is not limited to this timing, and may be performed at a predetermined timing in the subsequent event scene.
[0207] In step S29, processor 81 determines whether or not an operation input for instructing the player character to perform an action has been performed based on the operation data acquired in step S1. The action instruction is an instruction for causing the player character to perform, for example, an attack action or a jump action. If the determination result in step S29 is positive, processing in step S30 is executed. On the other hand, if the determination result in step S29 is negative, processing in step S31, which will be described later, is executed.
[0208] In step S30, processor 81 causes the player character to start an action corresponding to the action instruction made in step S29. After the player character starts an action in step S30, the player character is controlled to perform that action for a certain period of time by the process of step S33 described below. After step S30, processor 81 ends the player-related control process.
[0209] In step S31, processor 81 determines whether or not an operation input for instructing the player character to move has been performed based on the operation data acquired in step S1. The movement instruction is an instruction for performing an action of moving the player character on the field. If the determination result in step S31 is positive, the process of step S32 is executed. On the other hand, if the determination result in step S31 is negative, the process of step S33 is executed.
[0210] In step S32, processor 81 causes the player character to move on the field in response to the movement instruction performed in step S29. After step S32, processor 81 ends the player-related control process.
[0211] In step S33, the processor 81 controls the player character to perform various actions, such as the progress of the action started in step S30 and an action when nothing is input. In one step S33, the processor 81 controls the player character to perform an action for one frame time. The process of step S33 is repeatedly executed over multiple frames, so that the player character performs a series of actions according to the action instruction. In addition, if the action to be performed by the player character is not instructed by the player (for example, if the action started in step S30 has ended), in step S33, the processor 81 may not cause the player character to perform an action, or may cause the player character to perform an action to make the behavior of the player character look natural (for example, an action of looking around or swinging the body). After step S33, the processor 81 ends the player-related control process.
[0212] Fig. 26 is a sub-flowchart showing an example of a detailed flow of the other object control process in step S9 shown in Fig. 24. In the other object control process, first, in step S41, processor 81 determines whether or not the process has been completed for each object to be controlled except for the player character. That is, it determines whether or not each of the objects has been designated in step S42, which will be described later. If the determination result in step S41 is negative, the process of step S42 is executed. On the other hand, if the determination result in step S41 is positive, processor 81 ends the other object control process.
[0213] In step S42, processor 81 designates one object to be processed in step S43, which will be described later, from among the objects to be controlled. Note that in step S42, an object that has not yet been the processing target in the current processing loop of steps S41 to S45 is designated. Following step S42, the processing of step S43 is executed.
[0214] In step S43, processor 81 controls the action of the object specified in step S42. For example, if the object is an enemy character, the action of the enemy character is controlled according to an algorithm defined in the game program. Also, for example, if the object is a light source item, the movement of the light source item is controlled in response to an action by another character such as a player character (for example, in response to an action of the player character throwing the light source item). Following step S43, the process of step S44 is executed.
[0215] In step S44, processor 81 determines whether or not an item placement event has occurred based on the processing result of step S43. For example, with respect to a light source item, when a light source item thrown by a player character is placed on the ground in a field, processor 81 determines that an item placement event has occurred. When the determination result of step S44 is positive, the process of step S45 is executed. On the other hand, when the determination result of step S44 is negative, the process of step S41 is executed again.
[0216] In step S45, processor 81 sets a point light source at the position of the light source item that caused the item placement event to occur. As a result, in the drawing process described below, drawing is performed so that light shines on the periphery of the light source item. After step S45, the process of step S41 is executed again. Thereafter, the series of processes in steps S41 to S45 are repeatedly executed until it is determined in step S41 that the process has been completed for all objects to be controlled.
[0217] Fig. 27 is a sub-flowchart showing an example of a detailed flow of the drawing process in step S10 shown in Fig. 24. In the drawing process, first in step S51, processor 81 determines whether or not the process in the first stage described above in "[2-3. Image Generation Process]" has been completed. That is, it determines whether or not writing to the G buffer has been completed for each object to be drawn (for example, an object within the field of view of the virtual camera). If the determination result in step S51 is positive, the process of step S56 described below is executed. On the other hand, if the determination result in step S51 is negative, the process of step S52 is executed.
[0218] In step S52, processor 81 designates one object to be processed in step S53, which will be described later, from among the objects to be drawn. Note that in step S52, an object that has not yet been the processing target in the current processing loop of steps S51 to S55 is designated. Following step S52, the processing of step S53 is executed.
[0219] In step S53, the processor 81 determines whether or not the object designated in step S52 is the above-mentioned non-target object. If the determination result in step S53 is negative, the process proceeds to step S54. On the other hand, if the determination result in step S53 is positive, the process proceeds to step S55.
[0220] In step S54, the processor 81 writes information about the object specified in step S52 into the G buffer and the depth buffer. That is, for pixels corresponding to the polygons of the object, the processor 81 writes information about the position, normal, color, etc. of the polygon into the G buffer, and writes depth information into the depth buffer. Note that the process in step S54 may be the same as the process in conventional deferred rendering. Following step S54, the process of step S51 is executed again.
[0221] On the other hand, in step S55, the processor 81 writes information about the object designated in step S52 into the G buffer and the depth buffer, and writes information indicating that the object is a non-target object into the G buffer. That is, the processor 81 writes the exclusion mask data about the non-target object into the G buffer. After step S55, the process of step S51 is executed again.
[0222] In step S56, the processor 81 determines whether or not the processing in the second stage described above in "[2-3. Image Generation Processing]" has been completed. That is, it determines whether or not writing of values to each pixel in the light buffer and the dark mask has been completed. If the determination result in step S56 is positive, the processing in step S60 described below is executed. On the other hand, if the determination result in step S56 is negative, the processing in step S57 is executed.
[0223] In step S57, processor 81 designates one pixel from among the pixels to be processed in step S58, which will be described later. Note that in step S57, a pixel that has not yet been the processing target in the current processing loop of steps S56 to S59 is designated. Following step S57, the processing of step S58 is executed.
[0224] In step S58, the processor 81 writes the pixel designated in step S57 to the light buffer. That is, the processor 81 calculates brightness information and the like for the pixel based on the ambient light and the point light source set in step S45, and writes the calculated information to the light buffer. Note that the process in step S58 may be the same as the process in conventional deferred rendering. Following step S58, the process in step S59 is executed.
[0225] In step S59, the processor 81 generates a darkness mask (i.e., sets a darkness mask value) for the pixel specified in step S57. Specifically, the processor 81 calculates the darkness mask value for the pixel according to the method described in "[2-3. Image Generation Processing]" above. Specifically, at the start of the game processing, darkness mask data is stored in the memory, and the processor 81 updates the data in response to the new setting of the illumination range. For example, when an illumination range based on a release event is set by the processing of step S28, the processor 81 updates the darkness mask based on the two-dimensional range data. Also, when the player character is equipped with glowing clothing by the menu display mode in which the menu display processing of step S7 is executed, the darkness mask is updated so that the illumination range includes pixels corresponding to positions within the character influence range based on the position of the player character. Furthermore, when a point light source is set by the processing of step S45, the darkness mask is updated so that the illumination range includes pixels corresponding to positions within the item influence range based on the position of the light source item. Following step S59, the processing of step S56 is executed again.
[0226] In step S60, the processor 81 determines whether or not the processing in the third stage described above in "[2-3. Image generation processing]" has been completed. In other words, it determines whether or not writing of values to each pixel in the frame buffer has been completed. If the determination result in step S60 is positive, the processor 81 ends the drawing processing shown in FIG. 27. On the other hand, if the determination result in step S60 is negative, the processing of step S61 is executed.
[0227] In step S61, processor 81 designates one pixel from among the pixels to be processed in step S62, which will be described later. Note that in step S61, a pixel that has not yet been the processing target in the current processing loop of steps S60 to S62 is designated. Following step S61, the processing of step S62 is executed.
[0228] In step S62, the processor 81 calculates a pixel value for the pixel specified in step S61 and writes it to the frame buffer. That is, the processor 81 calculates a pixel value for the pixel according to the method described in “[2-3. Image Generation Processing]” above, based on the information written in each buffer (i.e., the G buffer, the depth buffer, and the light buffer) and the darkness mask. Specifically, the processor 81 calculates a pixel value reflecting the influence of light from the light source based on the information in the G buffer, the depth buffer, and the light buffer, and further calculates a pixel value reflecting darkness based on the calculated pixel value and the darkness mask value in the darkness mask. As a result, the pixel value reflecting the influence of light from the light source and darkness is written to the frame buffer. Following step S62, the process of step S60 is executed again.
[0229] As described above, the drawing process in step S10 may be performed by a method based on forward rendering. Fig. 28 is a sub-flowchart showing an example of a detailed flow of the drawing process performed by the method based on forward rendering. The game system 1 may perform the process shown in Fig. 28 as the drawing process in step S10 instead of the process shown in Fig. 27.
[0230] In the drawing process shown in Fig. 28, first, in step S71, the processor 81 determines whether or not drawing is completed for each object to be drawn (for example, an object within the field of view of the virtual camera). If the determination result in step S71 is positive, the processor 81 ends the drawing process shown in Fig. 28. On the other hand, if the determination result in step S71 is negative, the process of step S72 is executed.
[0231] In step S72, processor 81 designates one object to be processed in the following steps S73 to S81 from among the objects to be drawn. Note that in step S72, an object that has not yet been the processing target in the current processing loop of steps S71 to S81 is designated. Following step S72, the processing of step S73 is executed.
[0232] In step S73, the processor 81 determines whether or not the object designated in step S72 is the above-mentioned non-target object. If the determination result in step S73 is positive, the process proceeds to step S74. On the other hand, if the determination result in step S73 is negative, the process proceeds to step S75.
[0233] In step S74, processor 81 performs drawing for the object designated in step S52 (i.e., for each pixel corresponding to the object) based on drawing settings previously set for the object. As a result, if the object is a self-luminous object, the object is drawn so that it appears to glow, and if the object is a character of the above-mentioned predetermined type, the object is drawn so that it appears to be shaded. Following step S74, the process of step S71 is executed again.
[0234] In step S75, the processor 81 determines whether or not the rendering of each polygon of the object specified in step S72 has been completed. If the determination result in step S75 is positive, the rendering of the object is completed, and the process of step S71 is executed again. On the other hand, if the determination result in step S75 is negative, the process of step S76 is executed.
[0235] In step S76, processor 81 designates one of the polygons of the object designated in step S72. Note that in step S76, a polygon that has not yet become the processing target in the current processing loop of steps S75 to S81 is designated. Following step S76, the processing of step S77 is executed.
[0236] In step S77, the processor 81 judges whether or not rendering has been completed for each pixel corresponding to the polygon designated in step S76. If the judgment result in step S77 is positive, rendering for the polygon is completed, and the process of step S75 is executed again. On the other hand, if the judgment result in step S77 is negative, the process of step S78 is executed.
[0237] In step S78, the processor 81 designates one of the pixels corresponding to the polygon designated in step S76. Note that in step S78, a pixel that has not yet become the processing target in the current processing loop of steps S77 to S81 is designated. Following step S78, the processing of step S79 is executed.
[0238] In step S79, the processor 81 determines whether or not the position (i.e., the position in the field) corresponding to the pixel designated in step S78 is within the illumination range. In an embodiment in which drawing is performed by the drawing process shown in FIG. 28, the processor 81 sets the illumination range based on the release event in the above step S28, sets the illumination range based on the position of the player character when the player character is equipped with luminous clothing in the menu display process in the above step S7, and sets the illumination range based on the position of the light source item when a point light source is set in the process of step S45. If the determination result in step S79 is positive, the process of step S80 is executed. On the other hand, if the determination result in step S79 is negative, the process of step S81 is executed.
[0239] In step S80, the processor 81 performs drawing for the pixel specified in step S78, reflecting the light source (i.e., ambient light and / or point light source) set in the field. Specifically, the processor 81 calculates the pixel value of the pixel based on information on the normal of the polygon corresponding to the pixel, information on the color set in the polygon corresponding to the pixel, and information on the light source set in the field, and writes the pixel value into the frame buffer. As a result, pixels corresponding to positions within the illumination range are drawn taking the light source into consideration. The process in step S80 may be the same as the drawing process based on conventional forward rendering. Following step S80, the process of step S77 is executed again.
[0240] On the other hand, in step S81, the processor 81 renders the pixels designated in step S78 in black. As a result, pixels corresponding to positions outside the irradiation range are rendered in black. After step S81, the process of step S77 is executed again.
[0241] In the drawing process shown in Fig. 28, drawing may be performed such that the black color gradually becomes darker within the irradiation range as it approaches the boundary of the irradiation range, similarly to the drawing process shown in Fig. 27. For example, in the above step S80, the processor 81 may calculate the above-mentioned darkness mask value for the pixel designated in step S78, and calculate the pixel value of the pixel by combining the pixel value reflecting the influence of light from the light source and black color in a ratio according to the darkness mask value.
[0242] [4. Effects and Modifications of the Present Embodiment] The game program in the above embodiment is configured to cause a computer (eg, processor 81) of an information processing device (eg, game device 2) to execute the following processes. Game processing for controlling a player character in a virtual space (a field in the above embodiment) based on an operational input (step S32) When a predetermined event (e.g., a release event) occurs based on the game processing, a process of transitioning a point associated with the occurring event among a plurality of points (e.g., a reference point) set in the virtual space from a first state (e.g., an unreleased state) to a second state (e.g., a released state) (step S25). A process of identifying a region (in the above embodiment, a release region) in which a total determination value obtained by adding up the first determination value based on one or more points in the second state among the multiple points for each position, the first determination value being a first reference value at a position corresponding to the point and attenuating according to the distance from the point, is equal to or greater than a predetermined value (step S27). A process of displaying a map image showing field information of a virtual space, in which the field information of a portion corresponding to the above-mentioned area is shown, in response to a map display instruction given by an operational input (step S5).
[0243] According to the above configuration, the range of the map image to be released (i.e., the range of the released area) can be changed depending on whether or not multiple events occur. Also, since the total judgment value at each position in the virtual space changes in various ways depending on which of the multiple points is in the second state, the released area can be changed in various ways depending on the state at each point (i.e., depending on the occurrence status of the event at each point).
[0244] In the above embodiment, the process of identifying the released area is executed when an event occurs (see step S27 in FIG. 25), but the execution timing of the process is not limited to this. In other embodiments, the process of identifying the released area may be executed every time a map image is generated, or may be executed when the next map image is generated after the event occurs.
[0245] In the above embodiment, the predetermined event is an event that occurs when a predetermined operation input is made when the player character is located at an event occurrence position set in the virtual space corresponding to the location, and specifically, is a release event. Here, the "event that occurs when a predetermined operation input is made when the player character is located at the event occurrence position" is not limited to a release event, but may be another event. For example, the predetermined event may be an event in which the player character reaches the event occurrence position in the virtual space (in this example, the operation input that moves the player character to the event occurrence position corresponds to the predetermined operation), or an event in which the player character uses a specific item at the event occurrence position in the virtual space (in this example, the operation input that causes the item to be used corresponds to the predetermined operation). In other embodiments, the predetermined event is not limited to an event that occurs when a predetermined operation input is made when the player character is located at the event occurrence position, but may be another type of event (for example, an event that does not require a predetermined operation input).
[0246] Moreover, it can also be said that the game program in the above-described embodiment is configured to cause a computer (eg, processor 81) of an information processing device (eg, game device 2) to execute the following processes. When a predetermined event (e.g., a lighting event) occurs based on the game processing, a process of setting a target range (e.g., a lighting range) in a virtual space (steps S28 and S59) In a rendering process for rendering a virtual space, a process of rendering a portion of at least a part of a terrain object in the virtual space that is included in a target range by reflecting a light source set in the virtual space, and rendering a portion that is not included in the target range in a predetermined color (step S62).
[0247] According to the above configuration, it is possible to dynamically change between areas with low visibility and areas with guaranteed visibility in the virtual space in response to the occurrence of an event. This makes it possible to provide a game in which the visible portion of the field is increased by the occurrence of an event. Furthermore, according to the above configuration, it is possible to make the target range portion more visible by drawing it with a light source reflected therein, while it is possible to make the portion outside the target range invisible or difficult to see by drawing it in a predetermined color. In this way, according to the above configuration, it is possible to easily adjust the visibility of the areas in the game field.
[0248] The process of setting the target range may be a process of setting a range in a three-dimensional virtual space (for example, a process of setting the above-mentioned character influence range and item influence range in the virtual space), or a process of setting a range in a two-dimensional plane corresponding to the virtual space (for example, a process of generating two-dimensional range data in the above-mentioned field corresponding plane). Also, while the target range conceptually indicates a range in the virtual space, the data indicating the target range is not limited to data regarding a position in the virtual space, but may be data regarding a position on a two-dimensional plane corresponding to the virtual space (for example, the above-mentioned two-dimensional range data), or may be data regarding a position on a pixel plane corresponding to the virtual space (for example, darkness mask data).
[0249] The above-mentioned "at least some of the terrain objects" means that it is not necessary to change the drawing method for all terrain objects depending on the target range. For example, some of the terrain objects may be set as the above-mentioned non-target objects.
[0250] In the above embodiment, the game system 1 draws the object in the part not included in the target range in black, but it may be drawn in another color. Even if it is drawn in another color, the part can be made invisible or difficult to see, so that the same effect as the above embodiment can be obtained. For example, in the setting of the story of the game, the game system 1 may draw the area that is invisible or difficult to see because of fog in white or gray. In addition, the above "predetermined color" is a color that is set independently of the color that is set for the object corresponding to the pixel to be drawn, and does not need to be a single color. A plurality of pixels corresponding to the part not included in the target range may be drawn so that a pattern is formed by a plurality of types of predetermined colors.
[0251] In another embodiment, the game system 1 may adopt a configuration in which an object in a portion not included in the target range is drawn with a lower brightness. For example, the game system 1 may draw the object in the portion with a lower brightness than that of the pixel in the case where a light source is set. Specifically, the game system 1 may write, in the drawing process, pixel values obtained by lowering the brightness from pixel values reflecting the influence of light from the light source for pixels corresponding to the object in the portion not included in the target range to the frame buffer. Note that a specific method for lowering the brightness is arbitrary, and the original brightness (i.e., the brightness when the influence of light from the light source is taken into consideration) may be lowered by a predetermined ratio, the original brightness may be lowered by a predetermined amount, or the brightness may be lowered to be equal to or lower than a predetermined standard. With the above configuration, the same effect as that of the above embodiment can be obtained.
[0252] Moreover, it can also be said that the game program in the above-described embodiment is configured to cause a computer (eg, processor 81) of an information processing device (eg, game device 2) to execute the following processes. Game processing for controlling a player character in a virtual space based on an operational input (step S32) When a predetermined event (e.g., a release event) occurs based on the game processing, a process of transitioning a point associated with the occurring event among a plurality of points (e.g., a reference point) set in the virtual space from a first state (e.g., an unreleased state) to a second state (e.g., a released state) (step S25). A process of identifying an area (in the above embodiment, a released area) that includes at least a point in the second state among the multiple points (step S27) A rendering process for rendering, in a predetermined color, the portions of at least a part of the terrain object in the virtual space that are not included in the target range (e.g., the illumination range) that includes at least a part of the above-mentioned area (step S62). A process of displaying a map image showing field information of a virtual space, the map image showing field information of a portion corresponding to a released area, in response to a map display instruction given by an operational input (step S5).
[0253] According to the above configuration, the range in which visibility is ensured in the virtual space (i.e., the above target range) can be changed according to a change in the area in the map image where field information is not displayed. That is, the virtual space can be displayed in a display mode that ensures visibility for the released area in the map image where field information is now newly displayed. Furthermore, according to the above configuration, the range in which visibility is ensured in the virtual space expands according to the occurrence of an event, and the area in the map image where field information is displayed also expands, so that a game can be provided in which the gameplay of expanding the search range by generating an event is fully exhibited.
[0254] In another embodiment, in the drawing process in the above configuration, the game system 1 may draw the part not included in the target range darker than the part included in the target range, instead of drawing the part not included in the target range in a predetermined color. Specifically, in the drawing process, the game system 1 may write pixel values that reflect the influence of light from the light source, the brightness of which is reduced by a predetermined method, into the frame buffer. The predetermined method may be, for example, a method of reducing the original brightness by a predetermined rate (or by a predetermined value), or a method of changing the brightness so that the brightness is equal to or lower than a predetermined standard.
[0255] In the above embodiment, the game system 1 sets, as the target range, (a) a range consisting of positions where a total judgment value obtained by summing at least one or more judgment values based on one or more positions in the second state among the multiple positions is equal to or greater than a predetermined value, and (b) a range where a two-dimensional distance from a two-dimensional position corresponding to the position is equal to or less than a threshold value (i.e., a range within the release area and within the position influence range). This makes it possible to prevent the range where visibility is ensured in the virtual space from becoming too large, thereby reducing the possibility of losing the gameplay of expanding the search range by generating an event.
[0256] In the above embodiment, when a process is executed using data (meaning including a program) in an information processing device, a part of the data required for the process may be transmitted from another information processing device different from the information processing device. In this case, the information processing device may execute the process using the data received from the other information processing device and the data stored in the information processing device.
[0257] In other embodiments, the information processing system may not have some of the configurations in the above embodiments, and may not execute some of the processes executed in the above embodiments. For example, in order to achieve some specific effects in the above embodiments, the information processing system may have a configuration for achieving the effect and execute a process for achieving the effect, but may not have other configurations or may not execute other processes. [Industrial Applicability]
[0258] The above embodiment can be used, for example, as a game system or game program for the purpose of dynamically changing areas of low visibility and areas of guaranteed visibility in a virtual space in response to the occurrence of an event. [Explanation of symbols]
[0259] 1. Game System 2. Main Unit 81 Processor 201 Player Character 202 Reference Point 203 Landmark Objects
Claims
1. The computer of the information processing device When a predetermined event occurs based on the game processing, a target range is set in a three-dimensional virtual space; In a drawing process for rendering the virtual space, for at least a part of the terrain objects in the virtual space, pixels of a portion included in the target range are drawn by reflecting a light source set in the virtual space, and pixels of a portion not included in the target range are drawn in a predetermined color or with reduced brightness. Game program.
2. In the drawing process, the computer generating, for each pixel of the at least some of the terrain objects, mask data that indicates at least whether a position of the terrain object corresponding to the pixel is included in the target range; For pixels in the mask data where the position of at least a portion of the terrain object is indicated to be included in the target range, rendering is performed in a frame buffer while reflecting the light source; For pixels in which the mask data indicates that the positions of the at least some of the terrain objects are not included in the target range, the pixels are drawn in the frame buffer using the predetermined color or with reduced brightness. The game program according to claim 1 .
3. The rendering process is based on deferred rendering, In the drawing process, the computer In a first stage, writing data into a G buffer and a depth buffer for at least a part of terrain objects in the virtual space is performed; In a second step, for each pixel, the mask data is generated based on the position corresponding to the pixel, the depth value stored in the depth buffer, and the target area; In a third step, rendering is performed in the frame buffer based on at least the data stored in the G buffer and the mask data. The game program according to claim 2 .
4. The computer further includes, in the drawing process: In the first stage, for a predetermined object, writing to the G buffer and the depth buffer is performed for each pixel, and exclusion mask data indicating that application of the mask data to pixels corresponding to the object is to be excluded is generated; In the third stage, the pixels indicated by the exclusion mask data are rendered in a manner that allows the predetermined object to be visually distinguished from a portion of the at least some of the terrain objects that is not included in the target range. The game program according to claim 3 .
5. The mask data is data that indicates, for each pixel, the degree to which the predetermined color is drawn or the degree to which the brightness is reduced, In the drawing process, the computer a pixel value obtained by combining the predetermined color with the pixel value calculated by reflecting the light source in accordance with the degree, or a pixel value obtained by lowering brightness in accordance with the degree, is written into the frame buffer; The game program according to claim 2 .
6. In the virtual space, at least a light source is set as the light source, and a predetermined brightness is set regardless of a position in the virtual space. The game program according to claim 1 .
7. The computer, In response to the occurrence of the predetermined event, a point serving as a reference for the target range is set in the virtual space; setting the target range based on the distance from the reference point so as to include a range in which the distance is equal to or less than a threshold value; The game program according to any one of claims 1 to 6.
8. The computer, After the reference point is set in response to the occurrence of the predetermined event, the target range is expanded by increasing the threshold value over time. The game program according to claim 7.
9. The computer, and further installing a point light source in the virtual space in response to the occurrence of the predetermined event. The game program according to claim 7.
10. the event is an event in which a predetermined item is placed in the virtual space, The computer, setting the position of the reference point based on the position where the predetermined item is placed; The game program according to claim 7.
11. The computer further comprises: controlling a player character in the virtual space based on an operation input; the predetermined event is an event in which the target range is the periphery of the player character based on an operation input, The computer further comprises: setting the position of the player character as the position of the reference point; The game program according to claim 7.
12. The computer further comprises: controlling a player character in the virtual space based on an operation input; the event is an event that occurs when a predetermined operation input is performed when the player character is located at an event occurrence position set in the virtual space, The computer further comprises: In response to the occurrence of the event, two-dimensional range data that two-dimensionally indicates the target range in the virtual space is updated so that the range in the virtual space that corresponds to the event occurrence position becomes at least the target range; generating the mask data further based on the two-dimensional range data; The game program according to any one of claims 2 to 5.
13. In the drawing process, the computer determining whether or not at least a portion of the terrain objects are included in the target range for each pixel; For pixels included in the target range, rendering is performed in a frame buffer while reflecting the light source; Pixels not included in the target range are drawn to the frame buffer using the predetermined color or with reduced brightness. The game program according to claim 1 .
14. at least one information processing device having a processor; At least one processor of the at least one information processing device When a predetermined event occurs based on the game processing, a target range is set in the three-dimensional virtual space; In a drawing process for rendering the virtual space, for at least a part of the terrain object in the virtual space, pixels of a portion included in the target range are drawn by reflecting a light source set in the virtual space, and pixels of a portion not included in the target range are drawn in a predetermined color or with reduced brightness. Information processing system.
15. At least one of the processors generating, for each pixel of the at least some of the terrain objects, mask data that indicates at least whether a position of the terrain object corresponding to the pixel is included in the target range; For pixels in the mask data where the position of at least a portion of the terrain object is indicated to be included in the target range, rendering is performed in a frame buffer while reflecting the light source; For pixels where the mask data indicates that the positions of the at least some of the terrain objects are not included in the target range, the pixels are drawn in the frame buffer using the predetermined color or with reduced brightness. The information processing system according to claim 14.
16. The rendering process is based on deferred rendering, At least one of the processors, in the drawing process, In a first stage, writing data to a G-buffer and a depth buffer for at least a portion of terrain objects in the virtual space; In a second step, for each pixel, the mask data is generated based on the position corresponding to the pixel, the depth value stored in the depth buffer, and the target area; In a third step, drawing is performed on the frame buffer based on at least the data stored in the G buffer and the mask data.
16. The information processing system according to claim 15.
17. At least one of the processors, in the drawing process, In the first stage, for a predetermined object, writing to the G buffer and the depth buffer is performed for each pixel, and exclusion mask data is generated that indicates that application of the mask data to pixels corresponding to the object is to be excluded; In the third stage, the pixels indicated by the exclusion mask data are drawn in a manner that allows the predetermined object to be visually distinguished from a portion of the at least some of the terrain objects that is not included in the target range.
17. The information processing system according to claim 16.
18. The mask data is data that indicates, for each pixel, the degree to which the predetermined color is drawn or the degree to which the brightness is reduced, At least one of the processors, in the drawing process, writing, into the frame buffer, a pixel value obtained by combining the predetermined color with the pixel value calculated by reflecting the light source in accordance with the degree, or a pixel value obtained by lowering brightness in accordance with the degree; 16. The information processing system according to claim 15.
19. In the virtual space, at least a light source is set as the light source, and a predetermined brightness is set regardless of a position in the virtual space. The information processing system according to claim 14.
20. At least one of the processors setting a point serving as a reference for the target range in the virtual space in response to the occurrence of the predetermined event; and setting the target range based on the distance from the reference point so as to include a range in which the distance is equal to or less than a threshold value.
20. The information processing system according to any one of claims 14 to 19.
21. At least one of the processors After the reference point is set in response to the occurrence of the predetermined event, the target range is expanded by increasing the threshold value over time.
21. The information processing system according to claim 20.
22. At least one of the processors further installing a point light source in the virtual space in response to the occurrence of the predetermined event; 21. The information processing system according to claim 20.
23. the event is an event in which a predetermined item is placed in the virtual space, At least one of the processors setting the position of the reference point based on the position where the predetermined item is placed; 21. The information processing system according to claim 20.
24. At least one of the processors controlling a player character in the virtual space based on an operation input; the predetermined event is an event in which the target range is the periphery of the player character based on an operation input, At least one of the processors setting the position of the player character as the position of the reference point; 21. The information processing system according to claim 20.
25. At least one of the processors controlling a player character in the virtual space based on an operation input; the event is an event that occurs when a predetermined operation input is performed when the player character is located at an event occurrence position set in the virtual space, At least one of the processors In response to the occurrence of the event, two-dimensional range data that two-dimensionally indicates the target range in the virtual space is updated so that the range in the virtual space that corresponds to the event occurrence position becomes at least the target range; generating the mask data further based on the two-dimensional range data; 19. The information processing system according to any one of claims 15 to 18.
26. At least one of the processors, in the drawing process, determining whether or not the at least some of the terrain objects are included in the target range for each pixel; For pixels included in the target range, rendering is performed in a frame buffer while reflecting the light source; Pixels not included in the target range are drawn to the frame buffer using the predetermined color or with reduced brightness. The information processing system according to claim 14.
27. a processor; The processor: When a predetermined event occurs based on the game processing, a target range is set in the three-dimensional virtual space; In a drawing process for rendering the virtual space, for at least a part of the terrain object in the virtual space, pixels of a portion included in the target range are drawn by reflecting a light source set in the virtual space, and pixels of a portion not included in the target range are drawn in a predetermined color or with reduced brightness. Information processing device.
28. In the drawing process, the processor generating, for each pixel of the at least some of the terrain objects, mask data that indicates at least whether a position of the terrain object corresponding to the pixel is included in the target range; For pixels in the mask data where the position of at least a portion of the terrain object is indicated to be included in the target range, rendering is performed in a frame buffer while reflecting the light source; For pixels where the mask data indicates that the positions of the at least some of the terrain objects are not included in the target range, the pixels are drawn in the frame buffer using the predetermined color or with reduced brightness.
28. The information processing device according to claim 27.
29. The rendering process is based on deferred rendering, In the drawing process, the processor In a first stage, writing data to a G-buffer and a depth buffer for at least a portion of terrain objects in the virtual space; In a second step, for each pixel, the mask data is generated based on the position corresponding to the pixel, the depth value stored in the depth buffer, and the target area; In a third step, drawing is performed on the frame buffer based on at least the data stored in the G buffer and the mask data.
29. The information processing device according to claim 28.
30. In the drawing process, the processor In the first stage, for a predetermined object, writing to the G buffer and the depth buffer is performed for each pixel, and exclusion mask data is generated that indicates that application of the mask data to pixels corresponding to the object is to be excluded; In the third stage, the pixels indicated by the exclusion mask data are drawn in a manner that allows the predetermined object to be visually distinguished from a portion of the at least some of the terrain objects that is not included in the target range.
30. The information processing device according to claim 29.
31. In the drawing process, the processor determining whether or not the at least some of the terrain objects are included in the target range for each pixel; For pixels included in the target range, rendering is performed in a frame buffer while reflecting the light source; Pixels not included in the target range are drawn to the frame buffer using the predetermined color or with reduced brightness.
28. The information processing device according to claim 27.
32. A game processing method executed by an information processing system, comprising: The information processing system includes: When a predetermined event occurs based on the game processing, a target range is set in the three-dimensional virtual space; In a drawing process for rendering the virtual space, for at least a part of the terrain object in the virtual space, pixels of a portion included in the target range are drawn by reflecting a light source set in the virtual space, and pixels of a portion not included in the target range are drawn in a predetermined color or with reduced brightness. Game processing method.
33. In the drawing process, the information processing system generating, for each pixel of the at least some of the terrain objects, mask data that indicates at least whether a position of the terrain object corresponding to the pixel is included in the target range; For pixels in the mask data where the position of at least a portion of the terrain object is indicated to be included in the target range, rendering is performed in a frame buffer while reflecting the light source; For pixels where the mask data indicates that the positions of the at least some of the terrain objects are not included in the target range, the pixels are drawn in the frame buffer using the predetermined color or with reduced brightness.
33. The game processing method according to claim 32.
34. The rendering process is based on deferred rendering, In the drawing process, the information processing system In a first stage, writing data to a G-buffer and a depth buffer for at least a portion of terrain objects in the virtual space; In a second step, for each pixel, the mask data is generated based on the position corresponding to the pixel, the depth value stored in the depth buffer, and the target area; In a third step, drawing is performed on the frame buffer based on at least the data stored in the G buffer and the mask data.
34. The game processing method according to claim 33.
35. In the drawing process, the information processing system In the first stage, for a predetermined object, writing to the G buffer and the depth buffer is performed for each pixel, and exclusion mask data is generated that indicates that application of the mask data to pixels corresponding to the object is to be excluded; In the third stage, the pixels indicated by the exclusion mask data are drawn in a manner that allows the predetermined object to be visually distinguished from a portion of the at least some of the terrain objects that is not included in the target range.
35. The game processing method according to claim 34.
36. In the drawing process, the information processing system determining whether or not the at least some of the terrain objects are included in the target range for each pixel; For pixels included in the target range, rendering is performed in a frame buffer while reflecting the light source; Pixels not included in the target range are drawn to the frame buffer using the predetermined color or with reduced brightness.
33. The game processing method according to claim 32.