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

The information processing program addresses the challenge of representing a thin outer shell in virtual spaces by dynamically changing textures and patterns based on voxel data, achieving a natural appearance without modifying the mesh structure.

JP2025113066AActive Publication Date: 2025-08-01NINTENDO CO LTD
View PDF 10 Cites 0 Cited by

Patent Information

Application Number
JP2024011587
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-01-30
Publication Date
2025-08-01
Estimated Expiration
2044-01-30

AI Technical Summary

Technical Problem

Conventional methods struggle to express a thin outer shell portion of an object in a virtual space using voxel data, as existing techniques fail to differentiate between the surface and interior appearances effectively.

Method used

An information processing program that generates a mesh of an object based on voxel data, allowing for the setting of different material data before and after a change event to simulate a thin outer shell by altering the texture and pattern of the mesh, without changing the mesh structure.

Benefits of technology

Enables the realistic representation of a thin outer shell portion of an object by dynamically changing the texture and pattern, providing a natural appearance without altering the mesh structure, thus enhancing visual fidelity in virtual environments.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025113066000001_ABST
    Figure 2025113066000001_ABST
Patent Text Reader

Abstract

To represent a thin outer shell portion of an object.SOLUTION: An information processing device is configure to: generate a mesh of an object in a virtual space on the basis of voxel data; acquire first material data and second material data with the color and / or pattern of the object as material data defined for each voxel; before a change event which alters the appearance of the object occurs, set the color and / or pattern of the mesh of the object on the basis of the first material data; and after the change event occurs, set the color and / or pattern of the mesh corresponding to a part of a surface of the object, the mesh being generated on the basis of voxel data related to a voxel to be changed on the basis of the second material data.SELECTED DRAWING: Figure 16
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to an information processing program, an information processing system, an information processing apparatus, and an information processing method for generating an object in a virtual space using voxel data.

Background Art

[0002] Conventionally, objects have been managed using voxel data, and a mesh of an object has been generated in a virtual space based on the voxel data (see, for example, Non-Patent Document 1).

Prior Art Documents

Non-Patent Documents

[0003]

Non-Patent Document 1

Summary of the Invention

Problems to be Solved by the Invention

[0004] Conventionally, when generating an object in a virtual space using voxel data, even if different appearances (for example, textures, etc.) are used for the voxels corresponding to the surface of the object and the voxels corresponding to the inside of the object, it has been difficult to perform an expression such that there is an outer shell portion thinner than the length of one side of the voxel on the surface of the object.

[0005] Therefore, an object of the present invention is to provide an information processing program, an information processing system, an information processing apparatus, and an information processing method capable of expressing a thin outer shell portion of an object.

Means for Solving the Problems

[0006] In order to solve the above problems, the present invention adopts the following configurations (1) to (15).

[0007] (1) An example of the present invention is an information processing program executed by a computer of an information processing apparatus. The information processing program causes a computer to function as an object generation means, a material data acquisition means, an appearance setting means, and an image output means. The object generation means generates a mesh of an object in the virtual space based on voxel data for each voxel defined in a voxel space set in the virtual space. The material data acquisition means acquires first material data and second material data as material data that defines the color and / or pattern of the object for each voxel. The appearance setting means (a) sets the color and / or pattern of the mesh of the object based on the first material data before a change event that changes the appearance of the object occurs, and (b) after the change event occurs, if the second material data is associated with the first material data set for a change target voxel that is a voxel at the position where the change event occurred, based on the second material data, sets the color and / or pattern of the mesh generated based on the voxel data regarding the change target voxel and corresponding to a part of the surface of the object. The image output means outputs an image of the mesh of the object in the virtual space to a display device.

[0008] According to the configuration of (1) above, it is possible to express the state where the thin surface of the object is peeled off by a change event, so that the thin surface of the object can be expressed.

[0009] (2) When an erasure event occurs that erases at least a part of the object, the object generation means may update the voxel data regarding the erasure target voxel so that at least a part of the object is erased in the erasure target voxel where the erasure event has occurred. The information processing program may further cause a computer to function as a change event determination means. The change event determination means determines that a change event has occurred in at least one of the voxels around the erasure target voxel.

[0010] According to the configuration of (2) above, when a part of the object is erased and its interior is exposed, the thin surface of the object can be represented.

[0011] (3) The appearance setting means may set the color and / or pattern based on the second material data for at least one mesh that is generated based on the voxel data regarding the change target voxel and whose position has not changed before and after the erasure event.

[0012] According to the configuration of (3) above, for the part of the object that is the above-mentioned mesh, it is possible to make it appear as if the thin surface of the object has been peeled off without changing the mesh.

[0013] (4) The information processing program may further cause a computer to function as a change event determination means. When an impact application event that imparts an impact to the object occurs, the change event determination means determines that a change event has occurred for the voxel at the position based on the position where the impact application event has occurred.

[0014] According to the configuration of (4) above, for the part of the object that is the above-mentioned mesh, it is possible to make it appear as if the thin surface of the object has been peeled off.

[0015] (5) The information processing program may further cause the computer to function as change event determination means. The change event determination means determines that a change event has occurred for voxels at positions based on the position where the impact application event that applies an impact to the object has occurred, when the impact application event that applies an impact to the object has occurred.

[0016] According to the configuration of (5) above, for the portion of the mesh of the object, without changing the mesh, it is possible to make it appear as if the thin surface of the object has been peeled off.

[0017] (6) The change event determination means may determine that a change event has occurred for voxels in a range corresponding to the impact application event in the object, when the first number of impact application events has occurred for the object. The information processing program may further cause the computer to function as voxel update means. The voxel update means updates the voxel data regarding the erasure target voxels so that at least a part of the object is erased in the erasure target voxels at positions based on the range corresponding to the impact application event in the object, when the second number of impact application events more than the first number has occurred for the object. The change event determination means may determine that a change event has occurred in at least some of the voxels around the erasure target voxels, when the second number of impact application events has occurred for the object.

[0018] According to the configuration of (6) above, it is possible to express events such as the thin surface of the object being peeled off by the impact application event and a part of the object being erased by subsequent additional impact application events.

[0019] (7) The material data acquisition means may acquire the third inner material data. The appearance setting means may set the color and / or pattern of the mesh of the object generated based on the voxel data regarding the change target voxel according to the second material data set in the change target voxel at the position where the first change event has occurred, in response to the occurrence of the first change event. The appearance setting means may set the color and / or pattern of the mesh of the object generated based on the voxel data regarding the change target voxel according to the third material data, when the third material data is associated with the second material data set in the change target voxel at the position where the second change event has occurred, in response to the occurrence of the second change event for the change target voxel.

[0020] According to the configuration of (7) above, a voxel object composed of three layers with different appearances can be expressed.

[0021] (8) The material data is associated with property data that defines the properties of the object for each voxel, and the property data associated with the first material data and the property data associated with the second material data may be the same. The information processing program may further cause the computer to function as property setting means for setting the properties of the object based on the property data.

[0022] According to the configuration of (8) above, the properties of the object can be set without being affected by the appearance of the object.

[0023] (9) The material data may include data indicating a texture. The information processing program may further cause a computer to function as an image generation means. The image generation means generates an image of an object by applying a texture indicated by material data set in a voxel corresponding to the voxel data to a mesh generated based on the voxel data.

[0024] According to the configuration of (9) above, the color and / or pattern of the object can be set for each voxel.

[0025] (10) The image generation means may generate an image of an object by performing drawing so as to be a gradation from the texture indicated by the first material data to the texture indicated by the second material data on a mesh generated based on the voxel data of the change target voxel and the voxel data of a voxel different from the change target voxel.

[0026] According to the configuration of (10) above, the appearance of the object can be made more natural.

[0027] (11) Another example of the present invention is an information processing program executed on a computer of an information processing apparatus. The information processing program causes the computer to function as an object generation means, a drawing means, and an image output means. The object generation means generates a mesh of an object in the virtual space based on voxel data for each voxel defined in a voxel space set in the virtual space. The drawing means draws a first color and / or pattern on the mesh of the object before an erasure event for erasing a part of the object occurs. The image output means outputs an image of the mesh of the object in the virtual space to a display device. After the erasure event occurs, the object generation means updates the voxel data so that a part of the object is erased. The drawing means draws a second color and / or pattern different from the first color and / or pattern on the mesh of the exposed part of the object exposed by the erasure and at least a part of the mesh around the mesh of the exposed part.

[0028] According to the configuration of (11) above, when the inside is exposed due to a part of the object being erased, a thin surface of the object can be represented.

[0029] (12) The drawing means may draw a second color and / or pattern on at least one mesh that is at least a part of the mesh around the mesh of the exposed part and whose position has not changed before and after the erasure event.

[0030] According to the configuration of (12) above, for the part of the mesh of the object, it is possible to make it look as if the thin surface of the object has been peeled off without changing the mesh.

[0031] (13) The information processing program may further cause a computer to function as property data acquisition means and property setting means. The property data acquisition means acquires property data that defines the properties of an object for each voxel. The property setting means sets properties for an object in which a first color and / or pattern, or a second color and / or pattern is drawn on a mesh, based on the property data. The property data corresponding to the mesh of the first color and / or pattern and the property data corresponding to the mesh of the second color and / or pattern may be the same.

[0032] According to the configuration of (13) above, the properties of the object can be changed without being affected by the appearance of the object.

[0033] (14) The drawing means may draw the mesh generated based on the voxel data using a texture associated with the voxel corresponding to the voxel data for the mesh.

[0034] According to the configuration of (14) above, the color and / or pattern of the voxel object can be set for each voxel.

[0035] (15) The drawing means may draw at least a part of the mesh around the mesh of the exposed portion so as to be a gradation from a first color and / or pattern to a second color and / or pattern.

[0036] According to the configuration of (15) above, the appearance of the object can be made more natural.

[0037] Note that another example of the present invention may be an information processing apparatus (for example, a terminal device or a server) or an information processing system including all or part of each means in (1) to (15) above. Another example of the present invention may be an information processing method (specifically, a game processing method) in which an information processing system executes each process in (1) to (15).

Advantages of the Invention

[0038] According to the above information processing program, information processing system, information processing apparatus, and information processing method, when generating an object in a virtual space using voxel data, a thin surface of the object can be expressed.

Brief Description of the Drawings

[0039]

Figure 1

Figure 2

Figure 3

Figure 4

Figure 5

Figure 6

Figure 7

Figure 8

Figure 9

Figure 10

Figure 11

Figure 12

Figure 13

Figure 14

Figure 15

Figure 16

Figure 17

Figure 18

Figure 19

Figure 20

Figure 21

Figure 22

[0040] [1. Configuration of Game System] Hereinafter, a game system according to an example of the present embodiment will be described. FIG. 1 is a diagram showing an example of a game system. An example of the game system 1 in the present embodiment includes a main body device (information processing device; functioning as a game device main body in the present embodiment) 2, a left controller 3, and a right controller 4. The main body device 2 is a device that executes various processes (for example, game processes) in the game system 1. The left controller 3 and the right controller 4 are devices provided with operation units for a user to input.

[0041] The main body device 2 is configured such that the left controller 3 and the right controller 4 can be attached to and detached from it respectively. That is, the game system 1 can be used as an integrated device with the left controller 3 and the right controller 4 attached to the main body device 2. Also, the game system 1 can be used with the main body device 2, the left controller 3, and the right controller 4 separated from each other. In the following, the left controller 3 and the right controller 4 may be collectively referred to as the "controller".

[0042] Figure 2 is a block diagram showing an example of the internal configuration of the main body device 2. The main body device 2 includes each of the components 17, 21, 23, 81 to 85, and 91 shown in Figure 2, in addition to the configuration shown in Figure 1. Some of these components 17, 21, 23, 81 to 85, and 91 may be mounted on an electronic circuit board as electronic components and housed within the housing 11.

[0043] The main body device 2 includes a display 12. The display 12 displays an image generated by the main body device 2. In the present embodiment, the display 12 is a liquid crystal display device (LCD). However, the display 12 may be any type of display device.

[0044] Furthermore, the main body device 2 includes a left terminal 17 which is a terminal for the main body device 2 to perform wired communication with the left controller 3, and a right terminal 21 which is a terminal for the main body device 2 to perform wired communication with the right controller 4.

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

[0046] As an example of an internal storage medium built in the main body device 2, the main body device 2 includes a flash memory 84 and a DRAM (Dynamic Random Access Memory) 85. The flash memory 84 and the DRAM 85 are connected to the processor 81. The flash memory 84 is mainly a memory used to store various data (which may be a program) stored in the main body device 2. The DRAM 85 is a memory used to temporarily store various data used in information processing.

[0047] The main body device 2 includes a slot 23. The slot 23 has a shape capable of mounting a storage medium of a predetermined type. The storage medium of the predetermined type is, for example, a storage medium (for example, a dedicated memory card) dedicated to the game system 1 and information processing devices of the same type. The storage medium of the predetermined type is used to store, for example, data used in the main body device 2 (for example, save data of an application, etc.) and / or a program executed in the main body device 2 (for example, a program of an application, etc.).

[0048] The main body device 2 is provided with 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 to and from a predetermined type of storage medium (for example, a dedicated memory card) mounted on the slot 23 according to the instructions of the processor 81.

[0049] The processor 81 appropriately reads and writes data between the flash memory 84, the DRAM 85, and each of the above storage media to execute the above information processing.

[0050] The main body device 2 is provided with a network communication unit 82. The network communication unit 82 is connected to the processor 81. The network communication unit 82 communicates (specifically, wirelessly) with an external device via a network. In the present embodiment, the network communication unit 82 connects to a wireless LAN and communicates with an external device by a method compliant with the Wi-Fi standard as a first communication mode. Also, the network communication unit 82 performs wireless communication with another main body device 2 of the same type by a predetermined communication method (for example, communication by a proprietary protocol or infrared communication) as a second communication mode. Note that the wireless communication by the above second communication mode enables wireless communication with another main body device 2 arranged in a closed local network area, and realizes a function enabling so-called "local communication" in which data is transmitted and received by direct communication between a plurality of main body devices 2.

[0051] The main body device 2 is provided with a controller communication unit 83. The controller communication unit 83 is connected to the processor 81. The controller communication unit 83 performs wireless communication with the left controller 3 and / or the right controller 4. The communication method between the main body device 2 and the left controller 3 and the right controller 4 is arbitrary, but in the present embodiment, the controller communication unit 83 communicates according to the Bluetooth (registered trademark) standard between the left controller 3 and between the right controller 4.

[0052] The processor 81 is connected to the above-described left terminal 17 and right terminal 21. 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. Also, 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. Thus, in the present embodiment, the main body device 2 can perform both wired communication and wireless communication with the left controller 3 and the right controller 4, respectively.

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

[0054] FIG. 3 is a block diagram showing an example of the internal configurations of the main body device 2, the left controller 3, and the right controller 4. Note that details of the internal configuration of the main body device 2 are shown in FIG. 2 and thus are omitted in FIG. 3.

[0055] The left controller 3 includes a terminal 42 for the left controller 3 to perform wired communication with the main body device 2. The left controller 3 also includes a communication control unit 101 that communicates with the main body device 2. As shown in FIG. 3, the communication control unit 101 is connected to each component including the terminal 42. In the present embodiment, the communication control unit 101 can communicate with the main body device 2 by both wired communication via the terminal 42 and wireless communication without using the terminal 42. The communication control unit 101 controls the communication method that the left controller 3 performs with the main body device 2. That is, when the left controller 3 is attached to the main body device 2, the communication control unit 101 communicates with the main body device 2 via the terminal 42. Also, when the left controller 3 is removed from the main body device 2, the communication control unit 101 performs wireless communication with the main body device 2 (specifically, the controller communication unit 83).

[0056] Further, the left controller 3 includes a memory 102 such as a flash memory. The communication control unit 101 is composed of, for example, a microcomputer (also referred to as a microprocessor), and executes various processes by executing the firmware stored in the memory 102.

[0057] The left controller 3 includes one or more buttons 103. Further, the left controller 3 includes an analog stick (described as "stick" in FIG. 3) 32. The button 103 and the analog stick 32 repeatedly output information regarding the operations performed on themselves to the communication control unit 101 at appropriate timings.

[0058] The communication control unit 101 acquires information regarding the input (specifically, information regarding the operation) from each input unit (specifically, the button 103 and the analog stick 32). The communication control unit 101 transmits operation data including the acquired information (or information obtained by performing predetermined processing on the acquired information) to the main body device 2. Note that the operation data is repeatedly transmitted at a rate of once every predetermined time. Note that the intervals at which the information regarding the input is transmitted to the main body device 2 may be the same for each input unit or may not be the same.

[0059] By transmitting the above operation data to the main body device 2, the main body device 2 can obtain the input performed on the left controller 3. That is, the main body device 2 can determine the operation of moving the left controller 3 and the operations on the button 103 and the analog stick 32 based on the operation data.

[0060] The left controller 3 includes a power supply unit 108. In the present 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 is also connected to each part of the left controller 3 (specifically, each part that receives power supply from the battery).

[0061] As shown in FIG. 3, the right controller 4 includes a communication control unit 111 that communicates with the main body device 2. The right controller 4 also includes a memory 112 connected to the communication control unit 111. The communication control unit 111 is connected to each component including the terminal 64. The communication control unit 111 and the memory 112 have the same functions as the communication control unit 101 and the memory 102 of the left controller 3. Therefore, the communication control unit 111 can communicate with the main body device 2 both by wired communication via the terminal 64 and by wireless communication without using the terminal 64 (specifically, communication according to the Bluetooth (registered trademark) standard), and controls the communication method performed by the right controller 4 with respect to the main body device 2.

[0062] The right controller 4 includes the same input units as the input units of the left controller 3. Specifically, the right controller 4 includes a button 113 and an analog stick 52. These input units have the same functions as the input units of the left controller 3 and operate in the same manner.

[0063] The right controller 4 includes a power supply unit 118. The power supply unit 118 has the same function as the power supply unit 108 of the left controller 3 and operates in the same manner.

[0064] [2. Outline of Processing in the Game System] Next, with reference to FIGS. 4 to 19, the outline of the processing executed in the game system 1 will be described. In the present embodiment, the game system 1 generates a game image in which terrain objects and characters (for example, player objects operated by a player) are arranged in a game space that is a three-dimensional virtual space, and displays the game image on a display device. Note that in the present embodiment, the display device on which the game image is displayed may be the above-described display 12 or a display device different from the display 12 (for example, a stationary monitor connected to the game system 1).

[0065] [2-1. Voxel] In this embodiment, for some objects in the game space, their shapes are defined by voxel data. Here, a voxel is a rectangular parallelepiped-shaped (more specifically, cube-shaped) region arranged in a grid pattern in the game space, and voxel data is the data set for each voxel. Hereinafter, an object whose shape is defined by voxel data is referred to as a "voxel object". In this embodiment, the game system 1 stores voxel data for each of a plurality of voxels set in the game space as data for generating voxel objects in the game space.

[0066] FIG. 4 is a diagram showing an example of a terrain object that is a voxel object. As shown in FIG. 4, in this embodiment, a terrain object representing terrain such as the ground is defined in shape by voxel data (that is, it is a voxel object). Each cube shown in FIG. 4 represents a terrain object. In FIG. 4, the boundaries of the voxels are shown by thin lines, and the portions that form the sides of the terrain object are shown by thick lines, but these lines are added for the purpose of making the drawing easier to view. Actually, it is not necessary to display the lines indicating the boundaries of the voxels, nor is it necessary to display the sides of the terrain object thickly.

[0067] Also, the terrain object shown in FIG. 4 is generated, for example, according to the rule that "when the parameter (specifically, the density described later) included in the voxel data set for a voxel is greater than a predetermined value, a cube is placed at the position of the voxel, and when it is less than or equal to the predetermined value, nothing is placed at the position of the voxel". In FIG. 4, for the purpose of clearly illustrating the relationship between the voxels and the voxel objects, a terrain object generated according to the above rule is shown. However, in the present embodiment, actually, for example, like the terrain object shown in FIG. 11 described later, voxel objects are generated according to a rule that results in a more complex shape compared to the length of one side of a voxel. Note that the rule for determining the shape of the voxel object based on the voxel data is arbitrary. In other embodiments, the game system 1 may generate a voxel object as shown in FIG. 4 or a voxel object as shown in FIG. 11 based on the voxel data.

[0068] Regarding the voxel object, its shape can be changed by changing the voxel data of each voxel. FIGS. 5 and 6 are diagrams showing an example of the state before and after a part of the terrain object shown in FIG. 4 is erased. That is, when the hatched portion of the terrain object shown in FIG. 5 is erased, the terrain object changes to the shape shown in FIG. 6. At this time, the game system 1 can easily erase the terrain object by rewriting the voxel data for the voxels in the hatched portion to indicate that no terrain object exists. Note that when the game system 1 adds a terrain object, it can also easily change the shape of the terrain object by changing the voxel data of each voxel, in the same way as when erasing the terrain object.

[0069] In this way, the game system 1 can freely change the shape of the voxel object by rewriting the voxel data. For example, in the game, the terrain object may be destroyed for some reason (for example, the player object strikes the terrain object, etc.), resulting in a change in the shape of the terrain object. In such a case, the game system 1 does not directly change the data indicating the outer shape of the terrain object (that is, the mesh described later), but can freely change the shape of the terrain object by changing the voxel data used to generate the terrain object.

[0070] FIG. 7 is a diagram showing an example of the content of the voxel data and the content of the material information. Here, in the present embodiment, the game space can be divided into a plurality of voxels arranged in a grid pattern. The game system 1 stores, in association with each other, voxel data for each voxel in the game space. The voxel data indicates the presence or absence of a voxel object in the voxel corresponding to the voxel data.

[0071] As shown in FIG. 7, the voxel data includes density data. The density data indicates the density, which is an index used to define the shape of the voxel object (specifically, the shape defined by the mesh described later) in the voxel corresponding to the voxel data. Although details will be described later, the position and shape of the surface of the voxel object (that is, the mesh described later) are determined based on the above density. That is, in the present embodiment, the above density is used to create the mesh that defines the surface of the voxel object.

[0072] In this embodiment, the density can take an integer value in the range from a lower limit value (e.g., 0) to an upper limit value (e.g., 255). In this embodiment, in the game system 1, when the value of the density set for a voxel is high, the ratio of the volume occupied by the voxel object in the voxel tends to be large, and when the value of the density is low, the ratio tends to be small. Based on the density, the shape of the voxel object is determined. In this way, the density is an index that affects the ratio of the volume occupied by the voxel object within the voxel. It can also be said that the density is an index indicating the degree to which an object is included in the region defined by each voxel. For example, when the density is 0, there is no voxel object in the voxel, when the density is 255, the entire voxel is a voxel object, and when the density is a value between 0 and 255, the voxel object can occupy the voxel at a ratio corresponding to the value. Based on the above density, the shape of the mesh, that is, the shape of the voxel object, can be determined. However, the voxel object generated based on the above density does not necessarily have a volume that exactly matches the ratio indicated by the density. For example, in the method of generating a voxel object as shown in FIG. 8 and the method of generating a voxel object as shown in FIG. 15, even if based on the same density, the volume of the voxel object may be different.

[0073] In other embodiments, the density may indicate either a state where the voxel object occupies the entire region within the voxel or a state where the voxel object is not included in the region within the voxel. For example, the density data may be data that can only take values of 0 or 1.

[0074] As shown in FIG. 7, the voxel data includes material data. The material data indicates the material (in other words, substance) of the voxel object generated from the voxel data. Here, in the present embodiment, materials such as sand, rock, and soil are set for the voxel object. That is, in the present embodiment, a plurality of types of materials are prepared as materials that can be set for the voxel object, and any one of the plurality of types of materials is set for the voxel object.

[0075] As shown in FIG. 7, in the present embodiment, the material data indicates the identification information of the material (referred to as "material ID"). Further, in the present embodiment, the game system 1 stores material information indicating the properties and textures of the materials prepared in the game for each material (see FIG. 7). In the present embodiment, the material information associates the material ID, the properties of the material, and the appearance of the material (specifically, the texture). Specifically, the material information is information that associates the material ID, the identification information of the properties of the material (referred to as "property ID"), and the identification information of the texture of the material (referred to as "texture ID") (see FIG. 7).

[0076] FIG. 8 is a diagram showing an example of property information indicating the properties of the material. As shown in FIG. 8, the game system 1 stores property information that associates the above property ID with information indicating the content of the property indicated by the property ID. The property of the material is a property that the voxel object in which the material is set has in the game (which can also be said to be a property that can affect the progress of the game), and is, for example, information such as the weight and slipperiness shown in FIG. 8. Note that in this specification, the property of the material means that information regarding the appearance such as the texture is not included. For example, the following information may be set as the property of the material. · Temperature · Fragility (for example, the number of times the voxel object breaks when an impact is applied to the voxel object) · Whether other objects are adhered to the voxel object · The amount of health restored to the player object when the player object destroys the voxel object · The amount of in-game currency obtained by the player object when the player object destroys the voxel object Note that the specific content of the properties set for the material is arbitrary. In other embodiments, information different from the above may be set as information indicating the properties of the material.

[0077] FIG. 9 is a diagram showing an example of texture information indicating the texture of the material. As shown in FIG. 9, the game system 1 stores texture information associating the above texture ID with the texture indicated by the texture ID.

[0078] Note that, as data defining the appearance of the voxel object, in addition to the texture information, any information regarding color and / or pattern may be set. For example, as information regarding the appearance of the voxel object, a crack pattern may be set. By using such a pattern, the game system 1 can generate an image of a voxel object representing an appearance with cracks.

[0079] As described above, in the present embodiment, the material data defines the properties of the voxel object and the texture used for the voxel object by the material ID. For example, when the material ID indicated by the material data included in the voxel data is "002", the property indicated by the property ID "001" associated with the material ID in the material information is set as the property of the voxel object corresponding to the voxel data (see the arrow shown in FIG. 7). Also, in the above case, the texture indicated by the texture ID "002" associated with the material ID in the material information is applied to the voxel object corresponding to the voxel data (see the arrow shown in FIG. 7).

[0080] As described above, in the present embodiment, the game system 1 manages the properties of materials and textures separately. Therefore, in the present embodiment, by setting a combination of properties and textures in the material information, it is possible to easily set a plurality of types of materials having the same properties but different appearances (i.e., textures), or a plurality of types of materials having different properties but the same appearance.

[0081] Note that the material data may be any data that can identify the properties and / or textures of the material. For example, in other embodiments, the material data may indicate the above property ID and texture ID, or may have a data structure that actually includes data indicating the properties and textures of the material.

[0082] Also, the material data may be information related to the material and may further indicate other information different from the above properties and textures. For example, the material data may include effect data indicating an effect that occurs when an effect generation condition (for example, a part of the voxel object is destroyed, or a character steps on the voxel object) set for the voxel object is satisfied. Note that the effect data may be data indicating an effect image (for example, an effect image representing that the voxel object has been destroyed), or may be data indicating an effect sound (the sound of footsteps when a character walks on the voxel object).

[0083] As shown in FIG. 7, the voxel data includes state data indicating the state of the voxel object. The specific content of the state data is arbitrary. For example, the state data may be data indicating whether the voxel object is in a wet state, or may be data indicating the amount of damage applied to the voxel object. The content of the state data may be updated during the game.

[0084] [2-2. Mesh] In this embodiment, the surface of the voxel object is represented by a mesh. A mesh is a set of a plurality of faces (specifically, polygons) arranged in the game space. In this embodiment, the game system 1 generates a mesh of the voxel object based on the voxel data of each voxel set in the game space. Hereinafter, an example of generating a mesh based on voxel data will be described.

[0085] FIG. 10 is a diagram showing an example of a method for generating a mesh. Note that in FIG. 10, for the purpose of making the drawing easy to view and the explanation easy to understand, the voxels and the mesh are represented two-dimensionally, but actually, a three-dimensional mesh is generated based on the voxels in the three-dimensional space.

[0086] As described above, in the present embodiment, the density set for each voxel is set in the range of 0 to 255. Also, in the present embodiment, voxels with a density equal to or higher than the reference value are regarded as being inside the object, and voxels with a density lower than the reference value are regarded as being outside the object. It is not necessary to define only voxels with a density of 0 as being outside the object (i.e., reference value = 1), and the reference value may be, for example, 128. In the example shown in FIG. 10, the density of voxel 201 and other outer voxels is 0, the density of voxel 202 is 100 which is lower than the reference value, and the densities of voxels 203 and 204 are set to 150 and 200 which are equal to or higher than the reference value. In the present embodiment, the game system 1 generates vertices between voxels with a density equal to or higher than the reference value and voxels with a density lower than the reference value. Specifically, for each region spanning eight (four in the drawing) adjacent voxels (the region surrounded by the dotted line in the drawing), it is determined whether to generate a vertex. That is, a vertex is generated in a region that straddles both voxels with a density equal to or higher than the reference value and voxels with a density lower than the reference value. Further, when the boundary between adjacent vertices (the boundary of the above-described region including each vertex) passes between voxels with a density equal to or higher than the reference value and voxels with a density lower than the reference value, a polygon mesh is generated by connecting those vertices. The coordinates of the vertices are determined by comparing the densities of adjacent voxels for each of the X, Y, and Z axes and performing interpolation based on the density difference. At this time, coordinate calculation can be further performed based on the normal information. The normal information may be retained in advance for at least some of the voxels, or if not retained, the normal information may also be calculated based on the densities of adjacent voxels. In FIG. 10, since the density of voxel 202 is lower than the reference value, voxel 202 is treated as being outside the object in the determination of the presence or absence of vertices, but the density value of voxel 202 itself is used for the coordinate calculation of the generated vertices. If the reference value is set to a value lower than the density of voxel 202, more vertices will be added to the upper right and upper left sides of voxel 202 in FIG. 10.

[0087] By generating a polygon mesh as described above, it is possible to generate a shape having a volume that reflects the density for each voxel to some extent. However, depending on the relationship with adjacent voxels, it may be the case that a voxel with a density of 0 includes a region within a part of the object, or a voxel with a density of 255 includes a region outside a part of the object. Also, in this embodiment, since voxels with a value less than the reference value are processed as outside the object, the volume is smaller by the amount that the number of vertices is reduced compared to the case of processing them as inside the object. That is, there is no need to calculate the polygon mesh so as to have a volume that exactly corresponds to the density value.

[0088] FIG. 11 is a diagram showing an example of a game image including a terrain object. In this embodiment, by generating a mesh as described above, a voxel object can be made into a shape with complex unevenness, for example, compared to the length of one side of a voxel.

[0089] Note that the method of generating a mesh based on voxel data is arbitrary. For example, in other embodiments, when the density of voxel data is greater than a predetermined value, the mesh may be generated such that a cube is arranged in the voxel corresponding to the voxel data (see FIG. 4).

[0090] For each face of the mesh generated as described above, the game system 1 determines the appearance (i.e., color and / or pattern) of each face according to the material specified by the voxel data. Specifically, the game system 1 determines the texture to be used for rendering each face of the mesh based on the voxel data, and generates an image of the voxel object by mapping the determined texture to each face. Note that the texture mapped to each face of the mesh is determined based on the voxel data of the voxels (referred to as generation target voxels) used to generate the face among the voxels where the voxel object exists. Note that the generation target voxels depend on the method of generating the mesh, but are, for example, one or more voxels arranged around the face. That is, the texture mapped to the face of the mesh is determined to be a texture corresponding to the material set for one or more voxels arranged around the face.

[0091] In other embodiments, one voxel data may include multiple types (e.g., two types) of material data. At this time, the voxel data includes ratio data regarding the multiple types of material data. The ratio data is data for determining the texture to be used for the voxel object, and indicates the ratio of the influence of each material (specifically, the texture corresponding to the material) indicated by the multiple types of material data on the appearance (specifically, color and / or pattern) of the voxel object. Note that the multiple types of material data described above have a different meaning from the main material data and the sub-material data described later. Also, when determining the texture mapped to each face of the mesh, the texture is determined based on various data (specifically, density data, multiple types of material data, and ratio data) included in the voxel data of the generation target voxel. For example, when multiple types of materials are set for the generation target voxel corresponding to one face, the texture corresponding to the material (one type) with the greatest degree of influence may be used considering the above ratio, or each texture corresponding to the multiple types of materials may be used considering the above ratio.

[0092] In other embodiments, there may be both a voxel object using voxel data including one type of material data and a voxel object using voxel data including two types of material data.

[0093] As described above, in this embodiment, the game system 1 stores data indicating a texture as material data that defines the color and / or pattern of a voxel object for each voxel. The game system 1 generates an object image by applying, to a mesh generated based on voxel data, a texture indicated by material data set for a voxel corresponding to the voxel data. According to this, since the color and / or pattern of the voxel object can be drawn using the texture set for the voxel, the color and / or pattern of the voxel object can be set for each voxel.

[0094] [2-3. Processing for changing the appearance of an object] Next, with reference to FIGS. 12 to 20, processing for changing the appearance of a voxel object will be described. FIG. 12 is a diagram showing an example of a state in which a player object performs a punch action on a tree object. Further, FIG. 13 is a diagram showing an example of a state in which a part of the tree object is destroyed by the punch action by the player object. Note that the tree object 212 shown in FIGS. 12 and 13 is a voxel object.

[0095] In the example shown in FIG. 12, on the surface of the tree object 212 (specifically, the mesh of the tree object 212), drawing is performed using a texture representing the appearance of the outer shell portion (i.e., the bark) of the tree object. Here, in the present embodiment, when the player object 211 performs a punch action on the tree object 212, under certain conditions, as shown in FIG. 13, a part of the tree object 212 may be erased. As a result, the inside of the tree object 212 (i.e., the portion inside the outer shell portion) is exposed. At this time, for the exposed inner surface 212a, unlike the surface of the outer shell portion of the tree object 212, drawing is performed using a texture representing the appearance of the inside of the tree (see FIG. 13). Further, in the present embodiment, for the portion 212b around the portion erased by the punch action on the surface of the tree object 212, similar to the above surface 212a, drawing is performed using a texture representing the inside of the tree (see FIG. 13). For the above portion 212b, the texture used changes before and after a part of the tree object 212 is erased.

[0096] As described above, in the present embodiment, when an event occurs to the voxel object (in the above example, when a punch action is performed), the game system 1 changes the appearance (specifically, the texture) of the voxel object under certain conditions. Thereby, it is possible to express the state where the inside of the voxel object is exposed. Also, in the present embodiment, by the method described later, it is possible to make the outer shell portion of the surface of the voxel object appear thinner. For example, for the tree object 212 shown in FIGS. 12 and 13, if the outer shell portion (bark) on the surface is expressed thickly, it will have an unnatural appearance. However, according to the present embodiment, it is possible to express the outer shell portion as being thinner, and the appearance of the tree object 212 when the inside is exposed can be made natural.

[0097] [2-3-1. Material information data in which another material ID is set] When changing the texture of the voxel object, the game system 1 enables the material data included in the voxel data to be able to specify (by switching) the texture after the change and the texture before the change. Specifically, in this embodiment, the game system 1 associates two types of materials, a main material and a sub-material, in the material information. FIG. 14 is a diagram showing an example of the material information in which two types of materials are associated. In this embodiment, as shown in FIG. 14, the material information includes, with respect to the main material, a material ID (referred to as the "main material ID"), a property ID, and a texture ID. These three IDs are the same as the three IDs included in the material information shown in FIG. 7. Here, the material information includes, together with the above three IDs regarding the main material, a material ID (referred to as the "sub-material ID") indicating the sub-material associated with the main material. Here, among the material data included in the voxel data, the material data indicating the main material (that is, indicating the main material ID) is called "main material data", and the material data indicating the sub-material (that is, indicating the sub-material ID) is called "sub-material data". The main material is the material corresponding to the texture before the change, and the sub-material is the material corresponding to the texture after the change. That is, the main material ID indicated by the main material data indicates the material before the change, and the sub-material ID indicated by the sub-material data indicates the material after the change. Although details will be described later, the material before the change is a material mainly used to represent the outer shell portion of the voxel object. Also, the material after the change is a material mainly used to represent the inside of the voxel object.For example, when the voxel object represented by the voxel data is the above-mentioned tree object, the main material data indicates, in the above material information, the material ID associated with the texture ID of the texture (for example, a texture representing a color and pattern of tree bark, such as a texture representing a dark brown color with countless groove patterns). The sub-material data set in the material setting data corresponding to the main material data indicates, in the above material information, the material ID associated with the texture ID of the texture (for example, a texture representing a color and pattern of the inside of a tree, such as a texture representing a light brown color with annual ring patterns).

[0098] In the present embodiment, even when a sub-material is associated with the main material, it is assumed that one type of property is set for one voxel data. For example, in the example shown in FIG. 14, the material ID indicating "001" as the main material is associated with the material ID indicating "002" as the sub-material. However, the same property ID is associated with the material with the material ID of "001" and the material with the material ID of "002". However, in other embodiments, different properties may be set between the main material and the sub-material. For example, when representing an object where the outside is covered with grass and the inside is a rock, the main material is set to grass and the sub-material is set to rock. At this time, as the property indicating hardness, the property of the main material may be set to a soft property, and the property of the sub-material may be set to a hard property.

[0099] Note that the data structure for associating two types of material data before and after the change is arbitrary. For example, in other embodiments, the material data included in the voxel data may indicate both the material ID indicating the main material and the material ID indicating the sub-material.

[0100] The game system 1 does not need to set material data indicating the main material associated with the secondary material in the material information for all voxels in the virtual space as described above. For example, among the voxels where the voxel object exists, material data indicating the main material associated with the secondary material in the material information is set only for the voxels located on the surface of the voxel object (referred to as "surface voxels"), and for the voxels located inside the voxel object (referred to as "internal voxels"), material data indicating the main material not associated with the secondary material in the material information may be set. At this time, the material data included in the voxel data of the internal voxels may indicate a material associated with the texture ID of a texture (for example, in the case of a wooden object, a texture representing a light brown color and the pattern of tree rings) representing the color and pattern expressing the inside of the voxel object. Note that, for example, for a certain voxel whose density is equal to or higher than the reference value, if there is a voxel among the adjacent voxels whose density is set to be less than the reference value, it can be determined that the certain voxel is a surface voxel. On the other hand, for a certain voxel whose density is equal to or higher than the reference value, if the density of all adjacent voxels is also equal to or higher than the reference value, it can be determined that the certain voxel is an internal voxel.

[0101] [2-3-2. Specific Example of Changing the Texture of the Voxel Object] Next, a specific example of changing the texture of the voxel object will be described. In the present embodiment, when a change event occurs for the voxel object, the texture is changed for the portion where the change event has occurred. The change event is an event that changes the appearance (specifically, the texture) of the voxel object. In the present embodiment, when the change condition is satisfied for the voxel object, the change event occurs. In the present embodiment, when an erasure event occurs because an erasure condition is satisfied for a predetermined voxel object (for example, the above-described tree object), the game system 1 determines that the change condition is satisfied.

[0102] Note that the content of the change condition is arbitrary and is not limited to the occurrence of the erasure event. Although details will be described later, in the present embodiment, in addition to the occurrence of the erasure event, when an impact-imparting event occurs for a predetermined voxel object, the game system 1 also determines that the change event has occurred (see FIG. 19). Note that the impact-imparting event is an event in which an impact is imparted to the voxel object. For example, it is an event in which a destruction action such as a punch action by the player object is performed on the voxel object, or an event in which another object collides with the voxel object.

[0103] FIG. 15 is a diagram showing an example of the surface and interior of a tree object. Note that in FIG. 15 (similarly for FIGS. 16, 17, and 20), for the purpose of clearly showing the relationship between a voxel and the voxel object arranged in that voxel, a voxel object (specifically, tree object 212) for which a mesh is generated by the same rule as the case where the mesh of the terrain object shown in FIG. 4 is generated is shown. That is, it is assumed that the mesh of the voxel object shown in FIG. 15 is generated according to the rule of "placing a cube at the position of the voxel when the density set for the voxel is greater than a predetermined value, and not placing anything at the position of the voxel when it is less than or equal to the predetermined value". Note that in FIG. 15, a cross-section of the tree object 212 is shown, the voxels in the rightmost column (the voxels surrounded by a dashed line in FIG. 15) are the surface voxels, and the voxels to the left of them are the interior voxels.

[0104] FIG. 15 is a diagram showing the state before a part of the tree object 212 is erased by a punch action by the player object 211. Here, in the voxel data of each voxel of the tree object 212, main material data in which sub-voxel data is set in the material information is set. In the state shown in FIG. 15, for the mesh of the tree object 212, the game system 1 performs drawing using the texture corresponding to the main material. Therefore, in the state shown in FIG. 15, the mesh of the tree object 212 has the appearance representing the outer shell part of the tree (that is, the bark) (see FIG. 12).

[0105] The dotted-line area 213 shown in FIG. 15 indicates the range (referred to as the "deletion range") within which the tree object 212 is deleted by the punch action of the player object 211. In the example shown in FIG. 15, it is assumed that the deletion condition is satisfied and the deletion event occurs due to the punch action of the player object 211. The deletion range is determined based on the type of impact event (e.g., the type of action by the player object). For example, when an impact event occurs due to a punch action, a spherical area centered slightly in front of the position where the punch of the player object 211 hits the tree object 212 is determined as the deletion range 213. Note that the method for determining the deletion range is arbitrary and may be constant regardless of the type of impact event.

[0106] FIG. 16 is a diagram showing an example of a state in which a part of the tree object has been deleted from the state shown in FIG. 15. In the example shown in FIG. 16, it is assumed that the part corresponding to the voxels (referred to as "deletion target voxels") included in the deletion range 213 shown in FIG. 15 among the tree object 212 is deleted. Specifically, the game system 1 sets the density in the voxel data of the deletion target voxels to 0. In the state shown in FIG. 16, as a result of the deletion of the tree object 212 in the deletion target voxels, a part of the tree object 212 in the internal voxels is newly exposed.

[0107] In the example shown in FIG. 16, for the voxels around the deletion target voxels, where a part of the voxels is included in the deletion range 213, it is explained that the tree object 212 is not deleted. However, in reality, for such voxels, a part of the tree object 212 may be deleted. Specifically, the game system 1 may subtract the density in the voxels around the deletion target voxels based on a predetermined rule. Note that the content of this rule is arbitrary. For example, the game system 1 may adjust the density in the voxels around the deletion target voxels so that a mesh is generated along the outer periphery of the deletion range 213.

[0108] In this embodiment, when a deletion event occurs in the tree object 212, the game system 1 generates a change event for the voxels around the target deletion voxels (the voxels indicated by hatching in FIG. 16) among the voxels where the tree object 212 exists. Hereinafter, the voxels for which the change event is generated are referred to as "target change voxels". That is, in this embodiment, when the object of the target deletion voxels is deleted, the game system 1 changes the texture used for drawing from the texture corresponding to the main material to the texture corresponding to the sub-material for the target change voxels around the target deletion voxels among the voxels where the tree object 212 exists. Specifically, the game system 1 changes the material data set for the target change voxels from the main material data to the sub-material data for the surface (specifically, the mesh) corresponding to the target change voxels. More specifically, the game system 1 updates the material data so that the material data set for the target change voxels indicates the sub-material associated with the main material in the material information instead of the main material indicated by the material data. Then, drawing is performed using the texture specified by the updated material data (see FIG. 16).

[0109] Note that the "surface corresponding to the target change voxels" is, for example, a mesh generated based on the voxel data of the target change voxels and is a mesh affected by the density indicated by the voxel data of the target change voxels. Specifically, the "surface corresponding to the target change voxels" may be a mesh at least partially disposed within the target change voxels.

[0110] Note that, for the material data of the voxels among the voxels to be changed for which sub-material data is not set in the material information, the texture used for drawing is not changed. For example, as described above, for the internal voxels, as the main material, a material corresponding to a texture representing the color and pattern representing the inside of the voxel object may be set, and no sub-material may be set. At this time, when a mesh corresponding to the internal voxel is generated by the deletion event, drawing is performed using a texture representing the color and pattern representing the inside of the voxel object. As a result, for the mesh corresponding to the voxels to be changed including both the internal voxels and the surface voxels, drawing is performed using a texture representing the color and pattern representing the inside of the voxel object.

[0111] Here, in other embodiments, a method is also conceivable in which only the internal voxels of the tree object 212 are specified as the voxels to be changed, and the surface voxels are not specified as the voxels to be changed (that is, only the mesh corresponding to the internal voxels is drawn using a texture representing the color and pattern representing the inside of the tree object 212). FIG. 17 is a diagram showing an example of the surface and inside of a tree object when the surface voxels are not specified as the voxels to be changed. The example shown in FIG. 17 shows a case where, for the voxel data of the surface voxels, (different from this embodiment) the texture is not changed, and drawing is performed using a texture representing the color and pattern of the outer shell of the tree object in the same state as before deletion. In this case, for the part of the mesh corresponding to the surface of the surface voxels among the newly exposed surfaces due to deletion, drawing is performed using a texture representing the color and pattern of the outer shell of the tree object, so that it looks like the bark of a tree. At this time, since the portion with a thickness of one voxel among the newly exposed surfaces due to deletion looks like the bark, the thickness of the bark becomes the thickness of one voxel, and it becomes impossible to represent the thickness of the bark thinner than the thickness of the voxel.

[0112] In contrast, in the present embodiment, the game system 1 performs drawing not only on the mesh representing the newly exposed surface due to the deletion event, but also on the mesh that has not changed since before the deletion event, using the texture corresponding to the sub-material data (see Fig. 16). That is, the game system 1 is a mesh generated based on the voxel data regarding the target voxel to be changed, and sets the texture of the mesh that has not changed before and after the change event based on the sub-material data set for the target voxel to be changed. According to this, among the meshes corresponding to the surface voxels of the tree object 212, for the area around the deleted part, although the position of the mesh has not changed from before the deletion, the appearance representing the inside of the tree changes (see Fig. 13). As a result, the area around the deleted part looks as if a very thin surface has been peeled off, so that the tree object can be made to look as if its outer shell part is thinly formed, and a natural appearance can be realized.

[0113] In the present embodiment, when the textures set for two adjacent voxels are different from each other, drawing is performed so that the boundary of the area where the two types of textures are drawn becomes jagged (see Fig. 13). As a result, due to the impact application event, a part of the tree object 212 is deleted, and the state where a part of the bark is peeled off can be realistically expressed. However, the method of generating the mesh and the method of drawing are arbitrary, and the boundary of the area where the two types of textures are drawn may be formed in any way. For example, the game system 1 may perform drawing so that the boundary is formed along the outer periphery of the deletion range 213, or may perform a process of blurring the boundary.

[0114] FIG. 18 is a diagram showing an example of a mesh at the boundary of an area where two types of textures are drawn. In FIG. 18, similar to FIG. 10, for the purpose of making the drawing easy to view and the explanation easy to understand, voxels and meshes are represented two-dimensionally, but actually, a three-dimensional mesh 221 is generated based on voxels in a three-dimensional space. The mesh 221 is a mesh generated based on the voxel data of surface voxels (it can also be said that it is a mesh whose position does not change before and after a change event).

[0115] In FIG. 18, the circles marked with "a" or "b" indicate the center positions of the voxels. Specifically, the circle marked with "a" is the center position of the voxel where the material associated with the main texture (i.e., the texture representing the color and pattern of, for example, the outer shell of a tree) is set, and the circle marked with "b" is the center position of the voxel where the material associated with the secondary texture (i.e., the texture representing the color and pattern of the interior of the tree) is set. Also, among the vertices of the mesh 221, vertex 222 is set between each voxel where the material corresponding to the secondary texture is set (i.e., set based on the voxel data of each such voxel). Among the vertices of the mesh 211, vertices 223 to 225 are set between the voxel where the material corresponding to the main texture is set and the voxel where the material corresponding to the secondary texture is set (i.e., set based on the voxel data of the voxel where the material corresponding to the main texture is set and the voxel data of the voxel where the material corresponding to the secondary texture is set). However, for vertex 225, the ratio of the material corresponding to the main texture among the materials set for the corresponding voxel is higher than that of vertices 223 and 224. Specifically, for vertices 223 and 224, the ratio of the material corresponding to the main texture and the material corresponding to the secondary texture set for each corresponding voxel is half (in FIG. 18, there are two of the former and two of the latter), whereas for vertex 225, for each material set for the corresponding voxel, the material corresponding to the main texture is higher than the material corresponding to the secondary texture (in FIG. 18, there are three voxels where the material corresponding to the main texture is set and one voxel where the material corresponding to the secondary texture is set).

[0116] As shown in FIG. 18, for a mesh in which textures set for surrounding voxels are arranged at different positions (that is, a mesh generated based on voxel data of a plurality of voxels for which different textures are set), interpolation may be performed to draw a gradation from one texture to the other texture. In the example shown in FIG. 18, it is assumed that the secondary texture is white and the primary texture is black. According to this, it is possible to smooth the change in color and / or pattern at the boundary between the two types of textures, and the appearance of the object can be made more natural.

[0117] As described above, in the present embodiment, the game system 1 generates an image of a voxel object by performing drawing so as to be a gradation from the primary texture indicated by the primary material data to the secondary texture indicated by the secondary material data with respect to a mesh (that is, the mesh serving as the boundary) generated based on the voxel data of the voxel to be changed and the voxel data of voxels different from the voxel to be changed. It can also be said that the game system 1 performs drawing so as to be a gradation from the color and / or pattern represented by the primary texture to the color and / or pattern represented by the secondary texture with respect to at least a part of the mesh surrounding the mesh of the exposed portion exposed by the erasing event among the voxel objects. As a result, the appearance of the object can be made more natural.

[0118] As described above, in this embodiment, when an erasure event occurs that erases at least a part of the voxel object, the game system 1 updates the voxel data regarding the target voxel for erasure so that at least a part of the voxel object is erased in the target voxel for erasure where the erasure event has occurred. Then, the game system 1 determines that a change event has occurred in the voxels around the target voxel for erasure (more specifically, the voxels around the target voxel for erasure that have a voxel object) (specifically, performs rendering using the secondary texture set for the surrounding voxels). According to this, when a part of the voxel object is erased and its interior is exposed, the thin outer shell portion of the voxel object can be expressed.

[0119] Note that the target voxels for change do not necessarily have to be all the voxels around the target voxel for erasure. For example, as described above, for the internal voxels, only one type of material data (that is, the main material data indicating the main material used to represent the interior of the voxel object) may be set, and for the surface voxels, material data indicating the main material associated with the secondary material in the material information may be set. At this time, among the voxels around the target voxel for erasure, for the internal voxels, even if the texture is not changed, the texture representing the interior of the voxel object is applied. Therefore, the game system 1 may specify only the surface voxels among the voxels around the target voxel for erasure as the target voxels for erasure. Also by this, the same effect as in this embodiment can be achieved.

[0120] Note that the game system 1 may execute the deletion of voxel objects due to deletion events and the visual change of the voxels due to change events together. That is, when a deletion event occurs, the game system 1 executes a deletion process (specifically, a process of setting the density to 0) for the voxel objects to be deleted within the deletion range, and also executes a change process (specifically, a process of changing the material data used for drawing to sub-material data) for the voxel objects to be changed within a range slightly larger than the deletion range. Thereby, the visual change of the voxel object corresponding to the deletion event can be performed with good responsiveness.

[0121] In the above, the case where a change event occurs due to a deletion event has been described as an example. Here, the change conditions for the change event to occur are not limited to the occurrence of a deletion event. For example, even when a deletion event does not occur due to an impact application event, the game system 1 may cause a change event to occur due to the impact application event.

[0122] FIG. 19 is a diagram showing an example of how a change event occurs due to an impact application event. In the example shown in FIG. 19, the change condition for the tree object 212 is that an impact application event has occurred to the tree object 212. At this time, the game system 1 causes a change event to occur in a range corresponding to the impact application event in response to the occurrence of the impact application event. That is, the game system 1 changes the texture used for drawing from the main texture to the sub-texture for the part within the above range of the mesh of the tree object 212. As a result, as shown in FIG. 19, for the part within the above range, it has the appearance representing the inside of the tree.

[0123] Note that the "range corresponding to the impact event" described above refers to the affected range of the impact event. For example, when an impact event occurs due to a punch action by the player object 211, a predetermined range including the position where the punch of the player object 211 hits the terrain object becomes the "range corresponding to the impact event".

[0124] FIG. 20 is a diagram showing an example of the surface and the inside of a tree object when the texture is changed without the tree object being deleted. The dotted line area 214 shown in FIG. 20 is the range corresponding to the above-described impact event. In the present embodiment, when a change event occurs due to an impact event, the game system 1 sets, as change target voxels, the voxels (the voxels shown by hatching in FIG. 20) among the surface voxels that are included in the range corresponding to the impact event. For the surface (specifically, the mesh) 212c corresponding to the change target voxels, the game system 1 updates the material data set for the change target voxels from the main material data to the sub-material data, and performs drawing using the sub-texture specified by the sub-material data. As a result, for the portion within the range corresponding to the impact event in the mesh of the tree object 212, (although the position of the mesh has not changed from before deletion,) the appearance changes to represent the inside of the tree (see FIG. 19). As a result, it is possible to make it appear as if the thin outer shell portion (i.e., the bark) of the tree has been peeled off due to the impact event, and the appearance of the tree object 212 can be made to have a natural appearance with a thin outer shell portion.

[0125] Note that in the above case, the change target voxels may be determined by any method based on the range corresponding to the impact event. For example, in another embodiment, the game system 1 may use, as change target voxels, the voxels among the surface voxels that are included in the range corresponding to the impact event and the voxels adjacent to them.

[0126] As described above, in the present embodiment, when an impact application event that applies an impact to the voxel object occurs, the game system 1 determines that a change event has occurred for the voxels at the position based on the position where the impact application event occurred (specifically, the position included in the range corresponding to the impact application event) (specifically, performs drawing using the sub-texture set for the voxels). According to this, when an impact application event is performed on the voxel object, (even if a part of the voxel object is not erased,) it is possible to make it appear as if the thin outer shell part of the voxel object has been peeled off.

[0127] When changing the texture by a change event corresponding to an impact application event, in the present embodiment, the game system 1 does not change the position of the mesh of the voxel object. However, in other embodiments, the game system 1 may change the position of the mesh in the above case. For example, the game system 1 may change the position of the mesh so that the mesh where the change event occurs slightly moves inside the voxel object.

[0128] Note that the game system 1 may execute both the process of generating a change event in response to an erasure event and the process of generating a change event in response to an impact application event. That is, the change condition may be that either "an erasure event has occurred" or "an impact application event has occurred" is satisfied. In the present embodiment, the game system 1 generates a change event as follows.

[0129] In this embodiment, when the impact application event is performed, the game system 1 determines whether the change condition is satisfied and whether the deletion condition is satisfied. Here, in this embodiment, the intensity is set for each voxel in the voxel object, and the intensity is also set for the impact application event according to the type of the impact application event. The type of the impact application event is determined to be different according to, for example, the type of action performed in the impact application event or the type of object that has collided with the voxel object in the impact application event. The game system 1 determines whether the change condition is satisfied and whether the deletion condition is satisfied based on these intensities. In this embodiment, it is assumed that the intensity of the voxel object is set as one of the properties of the material described above. That is, it can be said that the property ID is data indicating the intensity of the voxel object. In this embodiment, the intensity can take an integer value from 1 to the upper limit value.

[0130] Also, in this embodiment, the deletion condition is set according to the relationship between the intensity A of the destruction side (i.e., the impact application event) and the intensity B of the side to be destroyed (i.e., the voxel object). Specifically, the game system 1 determines the deletion condition as follows in (a) to (c) below. (a) When the intensity A of the destruction side is equal to or greater than the intensity B of the side to be destroyed (i.e., when A ≥ B), it is determined that the deletion condition is satisfied. (b) When the value obtained by adding 1 to the intensity A of the destruction side is equal to the intensity B of the side to be destroyed (i.e., when A + 1 = B), damage according to the type of the impact application event is given to the voxel object, and when the damage to the voxel object becomes equal to or greater than the reference value, it is determined that the deletion condition is satisfied. (c) When the value obtained by adding 1 to the intensity A of the destruction side is less than the intensity B of the side to be destroyed (i.e., when A + 1 < B), no damage is given to the voxel object (as a result, the deletion condition is not satisfied). In this embodiment, the damage of the voxel object is managed for each voxel. That is, the game system 1 stores, for each voxel, the data indicating the value of the above-mentioned damage as the above-mentioned state data included in the voxel data.

[0131] As described above, in this embodiment, when the strength A on the destruction side is the same as or greater than the strength B on the side to be destroyed (the above (a)), the erasure condition is satisfied due to the occurrence of the impact application event. Also, when the strength A on the destruction side is slightly smaller than the strength B on the side to be destroyed (the above (b)), the erasure condition is satisfied by the occurrence of the impact application event several times at the same position of the voxel object (that is, the same voxel). That is, in this case, a part of the voxel object is erased in response to the occurrence of the impact application event a certain number of times on a certain part of the voxel object. Also, when the strength A on the destruction side is much smaller than the strength B on the side to be destroyed (the above (c)), the erasure condition is not satisfied even if the impact application event occurs.

[0132] The game system 1 determines the erasure condition for each voxel. Specifically, when the impact application event is performed, for each voxel within the range corresponding to the impact application event, the game system 1 determines the erasure condition based on the strength of the impact application event and the strength set for the voxel.

[0133] In the case of the above (a), since the erasure condition is satisfied, the game system 1 determines that the change condition is also satisfied. In this case, a part of the voxel object is erased in response to the fulfillment of the erasure condition, and the texture is changed for a part of the voxel object (see FIG. 13). Also, in the case of the above (b), the game system 1 determines that the change condition is satisfied even when the erasure condition is not satisfied. In this case, although the voxel object is not erased, the process of changing the texture for a part of the voxel object is executed (see FIG. 19). Also, in the case of the above (c), the game system 1 determines that the change condition is not satisfied.

[0134] As described above, in the present embodiment, in the case of (b) above, in response to the occurrence of the first impact application event, the texture of the voxel object is changed for the range corresponding to the impact application event without the voxel object being erased (see FIG. 19). Then, in response to the occurrence of the second and subsequent impact application events, the voxel object is erased and the texture of the voxel object is changed for the portions around the erased portion (see FIG. 13). In other embodiments, in the case of (b) above, instead of determining that the change condition is satisfied by the first impact application event, the game system 1 may determine that the change condition is satisfied when the damage to the voxel object becomes equal to or greater than a reference value. The reference value for determining the change condition is set to a value smaller than the reference value for determining the erasure condition. That is, the game system 1 sets the number of impact application events for which the change condition is satisfied to be smaller than the number of impact application events for which the erasure condition is satisfied.

[0135] As described above, in the present embodiment, when an impact application event of a first number of times (for example, once) occurs with respect to a voxel object, it is determined that a change event has occurred for the voxels within the range corresponding to the impact application event among the voxel objects. Further, when an impact application event of a second number of times greater than the first number of times (for example, two or more times) occurs with respect to a voxel object, the voxel data regarding the target voxels to be erased is updated such that at least a part of the voxel object is erased from the target voxels to be erased at positions based on the range corresponding to the impact application event among the voxel objects. Further, when an impact application event of the second number of times occurs with respect to a voxel object, it is determined that a change event has occurred in at least some of the voxels around the target voxels to be erased. According to this, first, it is possible to make it appear as if the thin outer shell portion of the voxel object has been peeled off by the impact application event, and it is possible to express the state in which a part of the voxel object is erased by a subsequent additional impact application event (furthermore, the outer shell portion is peeled off around the erased portion).

[0136] Note that the content of the erasure condition and the change condition, as well as the range of the erasure event and the change event, are arbitrary and are not limited to the above. For example, the range of the erasure event and the change event may be set for each type of impact application event.

[0137] Also, in the present embodiment, the game system 1 changes the appearance (specifically, the texture) of the voxel object by a change event, while not changing the properties of the voxel object. That is, in the present embodiment, the material data is associated with the property data that defines the properties of the object for each voxel, and the property data associated with the main material data and the property data associated with the sub-material data are the same. The game system 1 sets the properties of the object based on the property data. More specifically, the game system 1 sets the properties of the voxel object based on the property data set for the voxel object, independently of whether the main texture or the sub-texture is applied to the mesh of the voxel object. According to this, the properties of the voxel object can be set without being affected by the appearance of the voxel object.

[0138] [2-3-3. Example where three or more types of materials are set] When a secondary material is associated with the primary material set in a certain voxel, another material may be further associated with that secondary material. For example, in the example of material information shown in FIG. 14, a secondary material with a material ID of "002" is associated with the primary material with a material ID of "001". Furthermore, taking the material with a material ID of "002" as the primary material, a secondary material with a material ID of "012" is associated. Thus, when a change event first occurs for a voxel object in which voxel data including first material data (for example, material data indicating "001") is set, the game system 1 performs rendering on the mesh corresponding to the changed voxel using second material data (for example, material data indicating "002") instead of the first material data. In this case, the voxel data of the changed voxel is updated to include the second material data instead of the first material data. Then, when a change event next occurs for the above voxel object, the game system 1 performs rendering on the mesh corresponding to the changed voxel using third material data (for example, material data indicating "012") instead of the second material data. In this case, the voxel data of the changed voxel is updated to include the third material data instead of the second material data.

[0139] As described above, in this embodiment, in response to the occurrence of the first change event, the game system 1 sets the color and / or pattern (specifically, texture) of the mesh of the voxel object generated based on the voxel data regarding the change target voxel at the position where the first change event occurred, based on the second material data set in the change target voxel at that position. Further, in response to the occurrence of the second change event for the change target voxel, when the third material data is associated with the second material data set in the change target voxel at the position where the second change event occurred, the color and / or pattern of the mesh of the voxel object generated based on the voxel data regarding the change target voxel is set based on the third material data. In this way, in the material information, by simply being able to set one other material associated with a certain material, it becomes possible to set one more other material associated with the other material. Therefore, for example, by causing a further change event in a part of the mesh drawn based on the second material data, it is possible to represent a voxel object composed of three layers with different appearances. Note that, in the same manner as above, it is also possible to represent a voxel object composed of four or more layers with different appearances. And in this embodiment, since such a multi-layer representation can be realized without setting a large number of material data in each voxel data, even when the number of voxel data increases, the increase in the required memory amount can be made extremely small. Note that the fact that the increase in the required memory amount can be made extremely small is the same even in the case of two layers.

[0140] [3. Specific Examples of Processing in the Game System] Next, with reference to FIGS. 21 and 22, a specific example of the information processing in the game system 1 will be described.

[0141] FIG. 21 is a diagram showing an example of various data used for information processing in the game system 1. As shown in FIG. 21, the game system 1 stores a game program, voxel space data, voxel object data, and mesh data. The game program and the voxel space data are data that are stored in advance in the game system 1 before the execution of the game process. The game program and the voxel space data are stored, for example, in a storage medium mounted in the slot 23 of the main body device 2. Also, the voxel object data and the mesh data are data that are generated during the execution of the game process. These data are stored, for example, in the DRAM 85 of the main body device 2.

[0142] The game program is a game program for executing the game process (specifically, the game process shown in FIG. 22) in the present embodiment.

[0143] The voxel space data is data that defines the voxel space set in the game space. Specifically, the voxel space data indicates the length of one side of the voxel and the direction of each side of the voxel in the game space. Also, when the voxel space is set only in a partial region of the game space, the voxel space data may include data indicating the position and size of the space (i.e., the voxel space) in which the voxels are set (i.e., data indicating the range in the game space in which the voxels are set).

[0144] The voxel object data is data that indicates a voxel object (e.g., the above-mentioned tree object) arranged in the game space. Specifically, the voxel object data includes voxel data for each unit region within a partial or entire range in the game space.

[0145] The mesh data is data that indicates a mesh set for a voxel object arranged in the game space. The mesh data includes, for example, data indicating the positions of the respective vertices in the mesh.

[0146] In addition to the data shown in FIG. 21, the game system 1 stores, as data that is stored in the game system 1 in advance before the execution of game processing, the above-described material information, property information, and texture information data, as well as data related to various characters appearing in the game, and the like.

[0147] FIG. 22 is a flowchart showing an example of the flow of game processing executed by the game system 1. The game processing shown in FIG. 22 is started, for example, in response to an instruction to start the game being given by the player during the execution of the above game program.

[0148] In the present embodiment, the processor 81 of the main body device 2 will be described as executing the processing of each step shown in FIG. 22 by executing the above game program stored in the game system 1. However, in other embodiments, some of the processing of each step may be executed by a processor (for example, a dedicated circuit or the like) different from the processor 81. Also, when the game system 1 can communicate with another information processing device (for example, a server), some of the processing of each step shown in FIG. 22 may be executed in the other information processing device. Also, the processing of each step shown in FIG. 22 is merely an example, and if the same result can be obtained, the processing order of each step may be changed, or another processing may be executed in addition to (or instead of) the processing of each step.

[0149] Also, the processor 81 executes the processing of each step shown in FIG. 22 using a memory (for example, DRAM 85). That is, the processor 81 stores the information (in other words, data) obtained by each processing step in the memory, and when using the information in subsequent processing steps, reads out the information from the memory and uses it.

[0150] In step S1 shown in FIG. 22, the processor 81 sets a voxel object in the initial state in the game space. Specifically, the processor 81 acquires voxel data indicating the arrangement of the voxel object in the initial state, and stores (or writes, in other words) part or all of the acquired voxel data in the DRAM 85 as voxel object data. As a result, data indicating the density for generating a mesh in each voxel, data indicating the texture to be applied to the mesh, data indicating the properties of the voxel object, and the like are acquired by the processor 81. Note that the voxel data indicating the arrangement of the voxel object in the initial state is stored, for example, in a storage medium mounted in the slot 23 of the main device 2. The process of step S2 is executed after step S1.

[0151] Note that the voxel data written in the DRAM 85 as voxel object data may be part of the voxel data in the entire range of the game space, which is used for generating the game image. For example, the processor 81 may generate an object image using voxel data only for a part of the game space (for example, a range within a predetermined distance from the position of the virtual camera). At this time, the voxel object data may include the voxel data within the range. Further, when voxel data for a part of the game space is written, the same process as step S1 is executed at an appropriate timing (for example, the timing when the position of the virtual camera has moved more than a predetermined distance) during the execution of a series of processes in steps S3 to S12 described later.

[0152] In step S2, the processor 81 generates a mesh for the voxel object. The mesh is generated according to the method described in the above "[2-2. Mesh]". Here, the processor 81 generates a mesh based on the voxel object data stored in the DRAM 85 and stores it in the DRAM 85 as mesh data. Through the process of step S2, a voxel object with a texture and properties applied to the mesh is constructed in the game space. After the above step S2, the game is started, and a series of processes from steps S3 to S12 are repeatedly executed during the game.

[0153] In step S3, the processor 81 controls the operations of various objects (e.g., player objects and enemy objects) that appear in the game space. The processor 81 controls the operation of the player object based on, for example, the operation data received from each of the controllers 3 or 4, or controls the operation of the enemy object based on the algorithm defined in the game program. The process of step S4 is executed next after step S3.

[0154] In step S4, the processor 81 determines whether or not the above-described impact-imparting event has occurred as a result of step S3. If the determination result of step S4 is affirmative, the process of step S5 is executed. On the other hand, if the determination result of step S4 is negative, a series of processes from steps S5 to S10 are skipped, and the process of step S11 described later is executed.

[0155] In step S5, the processor 81 determines whether the above-described deletion condition is satisfied based on the result of step S3. As described above, since the determination of the deletion condition is performed for each voxel, in the determination of step S3, if the deletion condition is satisfied for at least one voxel, the determination result is affirmative. If the determination result in step S5 is affirmative, the process of step S6 is executed. On the other hand, if the determination result in step S5 is negative, the series of processes of steps S6 and S7 are skipped and the process of step S8 is executed.

[0156] In step S6, the processor 81 updates the voxel data in the voxel object data stored in the DRAM 85 so as to delete a part of the voxel object. Specifically, the processor 81 deletes a part of the voxel object by the method described in the above “[2-3-2. Specific example of changing the texture of the voxel object]”. The process of step S7 is executed after step S6.

[0157] In step S7, the processor 81 updates the mesh for the voxel object whose voxel data has been changed in step S6. That is, the processor 81 generates a mesh of the voxel object based on the voxel object data after the update in step S6. Thereby, the mesh of the voxel object can be dynamically changed during the game. Note that the processor 81 updates the mesh data stored in the DRAM 85 with the content indicating the newly generated mesh. The process of step S8 is executed after step S7.

[0158] In step S8, the processor 81 determines whether the above-described change condition is satisfied based on the result of step S3. If the determination result in step S8 is affirmative, the process of step S9 is executed. On the other hand, if the determination result in step S8 is negative, the processes of steps S9 and S10 are skipped and the process of step S11 is executed.

[0159] In step S9, the processor 81 identifies the voxels to be changed where a change event occurs. Specifically, when the change condition is satisfied due to the occurrence of an erasure event, the processor 81 identifies the voxels around the voxel to be erased as the voxels to be changed. Also, when the change condition is satisfied by an impact application event, the processor 81 identifies the voxels within the range corresponding to the impact application event as the voxels to be changed. The process of step S10 is executed after step S9.

[0160] In step S10, for the voxels to be changed identified in step S9, the processor 81 changes the texture used for rendering the mesh from the main texture to the secondary texture. Specifically, the processor 81 changes the material data of the voxel data of the voxels to be changed to indicate the secondary material instead of the main material. That is, hereafter, the secondary texture corresponding to the secondary material becomes the texture used for rendering the mesh. The processor 81 updates the voxel object data stored in the DRAM 85 to the content indicating the voxel data changed as described above. The process of step S11 is executed after step S10.

[0161] In step S11, the processor 81 generates a game image representing the game space and causes the display device to display it. Specifically, the processor 81 generates a game image representing a game space including voxel objects and other objects (for example, player objects and enemy objects). Note that the image of the voxel object is generated according to the method described in "[2-2. Mesh]" above using the voxel object data and mesh data stored in the DRAM 85. At this time, for the voxel data in which two types of material data are set, the processor 81 generates a game image (specifically, draws a mesh) using the texture specified by the material data included in the voxel data. Therefore, when the applied texture data is changed in the process of step S10, the texture used for drawing is changed, and the appearance of the voxel object is changed. The processor 81 causes the display device to display the game image generated as described above. Note that during the game, the process of step S11 is repeatedly executed at a rate of once every predetermined time (for example, one frame time). The process of step S12 is executed after step S11.

[0162] In step S12, the processor 81 determines whether to end the game. For example, the processor 81 determines whether an instruction to end the game has been issued by the user. If the determination result in step S12 is negative, the process of step S3 is executed again. Thereafter, the series of processes of steps S3 to S12 are repeatedly executed until it is determined in step S12 that the game is to be ended. On the other hand, if the determination result in step S12 is positive, the processor 81 ends the game process shown in FIG. 22.

[0163] [4. Operational Effects and Modifications of the Present Embodiment] As described above, in the above embodiment, the information processing system (specifically, the game system 1) has a configuration including the following means. ·Based on the voxel data for each voxel defined in the voxel space set in the virtual space, object generation means for generating a mesh of an object (i.e., a voxel object) in the virtual space (step S2) ·Material data acquisition means for acquiring first material data (e.g., main material data) and second material data (e.g., sub - material data) as material data that defines the color and / or pattern (e.g., texture) of the object for each voxel (step S1) ·Appearance setting means for setting the color and / or pattern of the mesh of the object based on the first material data before the change event that changes the appearance of the object occurs, and when the second material data is associated with the first material data after the change event occurs, setting the color and / or pattern of the mesh generated based on the voxel data for the voxel to be changed, which corresponds to a part of the surface of the object (step S10) ·Image output means for outputting an image of the mesh of the object in the virtual space to a display device (step S11)

[0164] According to the above configuration, for the part of the object where the change event occurs, since the color and / or pattern of the mesh changes due to the change event, it can be made to look as if the thin outer shell part of the object has peeled off due to the change event. Thus, the thin outer shell part of the object can be expressed.

[0165] Also, in the above embodiment, it can also be said that the information processing system (specifically, the game system 1) has a configuration including the following means. ·Based on the voxel data for each voxel defined in the voxel space set in the virtual space, object generation means for generating a mesh of an object in the virtual space (step S2) ·Before an erasure event that erases a part of the object occurs, a drawing unit (step S11) draws a first color and / or pattern (for example, a color and / or pattern representing an outer shell portion of the object) on the mesh of the object. ·An image output unit (step S11) outputs an image of the mesh of the object in the virtual space to a display device. After the erasure event occurs, the voxel generation unit updates the voxel data so that a part of the object is erased (step S6). The drawing unit draws a second color and / or pattern (for example, a color and / or pattern representing the inside of the object), which is different from the first color and / or pattern, on the mesh of the exposed portion exposed by the erasure in the object and at least a part of the mesh around the mesh of the exposed portion (see FIG. 13).

[0166] According to the above configuration, when a part of the object is erased, by drawing the color and / or pattern inside the object on the mesh around the exposed portion exposed by the erasure, a thin outer shell portion of the object can be expressed.

[0167] In the above configuration, the material data only needs to include data that defines the color and / or pattern of the object, and does not need to include data indicating the properties of the object.

[0168] Also, in the above-described embodiment, the game system 1 is a mesh generated based on voxel data regarding voxel objects to be changed, and for at least one mesh whose position does not change before and after a change event (when a change event occurs based on a deletion event, it can also be said to be a deletion event), the color and / or pattern is set based on the sub-material data (that is, the color and / or pattern inside the object is drawn). According to this, the boundary between the area where the outer color and / or pattern is drawn and the area where the inner color and / or pattern is drawn is located on the mesh that does not change before and after the change event. As a result, a thin outer shell portion of the object can be represented. Also, since it is not necessary to change the mesh more than necessary, the processing load for changing the appearance of the object can be reduced.

[0169] Also, in the above-described embodiment, as an example of a voxel object whose appearance is made different between the outer shell and the inside, a wooden object was described. Here, in other embodiments, the voxel object whose appearance is made different between the outer shell and the inside may be any object in the virtual space. For example, the above voxel object may be a terrain object, or may be an object movable in the virtual space such as a player object, an enemy object, or a vehicle object on which a player object or the like can ride. Note that the game system 1 may arrange both a voxel object whose appearance is made different between the outer shell and the inside and a voxel object whose appearance is not made different between the outer shell and the inside in the virtual space.

[0170] In other embodiments, the information processing system may not include some of the configurations in the above embodiments, or may not execute some of the processes executed in the above embodiments. For example, in order for the information processing system to achieve some specific effects in the above embodiments, it may include the configurations for achieving the effects and execute the processes for achieving the effects, and may not include other configurations or execute other processes.

Industrial Applicability

[0171] The above embodiments can be used, for example, as a game system or a game program for the purpose of expressing a thin outer shell portion of an object.

Explanation of Signs

[0172] 1 Game system 2 Main body device 3 Left controller 4 Right controller 81 Processor 211 Player object 212 Tree object

Claims

1. An information processing program executed by a computer of an information processing apparatus, object generation means for generating a mesh of an object in the virtual space based on voxel data for each voxel defined in a voxel space set in the virtual space; material data acquisition means for acquiring first material data and second material data as material data for defining the color and / or pattern of the object for each voxel; (a) Before a change event for changing the appearance of the object occurs, setting the color and / or pattern of the mesh of the object based on the first material data; (b) After the change event occurs, when the second material data is associated with the first material data set for a change target voxel that is a voxel at the position where the change event occurred, based on the second material data, for the mesh generated based on the voxel data regarding the change target voxel and corresponding to a part of the surface of the object, appearance setting means for setting the color and / or pattern; An information processing program that causes the computer to function as image output means for outputting an image of the mesh of the object in the virtual space to a display device.

2. When an erasure event for erasing at least a part of the object occurs, the object generation means updates the voxel data regarding the erasure target voxel so that at least a part of the object is erased in the erasure target voxel where the erasure event occurred, The information processing program according to claim 1, further causing the computer to function as change event determination means for determining that the change event has occurred in at least one voxel among the voxels surrounding the erasure target voxel.

3. The information processing program according to claim 2, wherein the appearance setting means sets the color and / or pattern based on the second material data for at least one mesh that is the mesh generated based on the voxel data regarding the change target voxel and whose position has not changed before and after the erasure event.

4. The information processing program according to claim 1, further causing the computer to function as change event determination means for determining that the change event has occurred for voxels at a position based on the position where the impact application event that imparts an impact to the object has occurred when the impact application event occurs.

5. The appearance setting means sets color and / or pattern based on the second material data for at least one mesh that is the mesh generated based on the voxel data regarding the change target voxel and whose position has not changed before and after the impact application event, according to the information processing program of claim 4.

6. When the first number of impact application events occur to the object, the change event determination means determines that the change event has occurred for voxels in a range corresponding to the impact application event among the voxels of the object. The information processing program is When a second number of impact application events more than the first number occur to the object, the computer is further caused to function as voxel update means for updating the voxel data regarding the voxels to be erased so that at least a part of the object is erased in the voxels to be erased at a position based on the range corresponding to the impact application event among the voxels of the object. When the second number of impact application events occur to the object, the change event determination means determines that the change event has occurred in at least some of the voxels around the voxels to be erased, according to the information processing program of claim 4 or claim 5.

7. The material data acquisition means acquires third inner material data. The appearance setting means In response to the first change event occurring, based on the second material data set for the change target voxel at the position where the first change event has occurred, sets the color and / or pattern of the mesh of the object generated based on the voxel data regarding the change target voxel. In response to the occurrence of the second change event for the change target voxel, when the third material data is associated with the second material data set in the change target voxel at the position where the second change event has occurred, based on the third material data, the color and / or pattern of the mesh of the object generated based on the voxel data regarding the change target voxel is set. The information processing program according to any one of claims 1 to 6.

8. The material data is associated with property data that defines the property of the object for each voxel, and the property data associated with the first material data is the same as the property data associated with the second material data. The computer is further caused to function as property setting means for setting the property of the object based on the property data. The information processing program according to any one of claims 1 to 7.

9. The material data includes data indicating a texture. The computer is further caused to function as image generation means for generating an image of the object by applying the texture indicated by the material data set in the voxel corresponding to the voxel data to the mesh generated based on the voxel data. The information processing program according to any one of claims 1 to 8.

10. The image generation means generates an image of the object by performing drawing so as to be a gradation from the texture indicated by the first material data to the texture indicated by the second material data on the mesh generated based on the voxel data of the change target voxel and the voxel data of a voxel different from the change target voxel. The information processing program according to claim 9.

11. An information processing program executed in a computer of an information processing apparatus, object generation means for generating a mesh of an object in the virtual space based on voxel data for each voxel defined in a voxel space set in the virtual space, and drawing means for drawing a first color and / or pattern on the mesh of the object before the occurrence of an erasure event for erasing a part of the object. Function the computer as image output means for outputting an image of a mesh of the object in the virtual space to a display device. After the deletion event occurs, the object generation means updates the voxel data so that a part of the object is deleted. An information processing program in which the drawing means draws a second color and / or pattern different from the first color and / or pattern on a mesh of an exposed portion exposed by deletion of the object and at least a part of a mesh around the mesh of the exposed portion.

12. The information processing program according to claim 11, wherein the drawing means draws the second color and / or pattern on at least one mesh that is at least a part of a mesh around the mesh of the exposed portion and whose position has not changed before and after the deletion event.

13. Property data acquisition means for acquiring property data that defines the property of the object for each voxel, Function the computer further as property setting means for setting properties based on the property data for the object on which the first color and / or pattern or the second color and / or pattern is drawn on the mesh. The information processing program according to claim 11 or claim 12, wherein the property data corresponding to the mesh of the first color and / or pattern and the property data corresponding to the mesh of the second color and / or pattern are the same.

14. The information processing program according to any one of claims 11 to 13, wherein the drawing means draws the mesh based on the voxel data using a texture associated with a voxel corresponding to the voxel data.

15. The information processing program according to any one of claims 11 to 14, wherein the drawing means draws at least a part of a mesh around the mesh of the exposed portion so as to be a gradation from the first color and / or pattern to the second color and / or pattern.

16. Object generation means for generating a mesh of an object in the virtual space based on voxel data for each voxel defined in a voxel space set in the virtual space. Material data acquisition means for acquiring first material data and second material data as material data that defines the color and / or pattern of the object for each voxel; (a) Before a change event that changes the appearance of the object occurs, set the color and / or pattern of the mesh of the object based on the first material data. (b) After the change event occurs, if the second material data is associated with the first material data set for the change target voxel, which is the voxel at the position where the change event occurred, then based on the second material data, for the mesh generated based on the voxel data regarding the change target voxel and corresponding to a part of the surface of the object, set the color and / or pattern of the mesh; Appearance setting means; An information processing system comprising image output means for outputting an image of the mesh of the object in the virtual space to a display device.

17. Object generation means for generating a mesh of an object in the virtual space based on voxel data for each voxel defined in a voxel space set in the virtual space; Drawing means for drawing a first color and / or pattern on the mesh of the object before an erasure event for erasing a part of the object occurs; Comprising image output means for outputting an image of the mesh of the object in the virtual space to a display device; After the erasure event occurs, the object generation means updates the voxel data so that a part of the object is erased; The drawing means draws a second color and / or pattern different from the first color and / or pattern on the mesh of the exposed part of the object exposed by the erasure and at least a part of the mesh around the mesh of the exposed part. An information processing system.

18. Object generation means for generating a mesh of an object in the virtual space based on voxel data for each voxel defined in a voxel space set in the virtual space; Material data acquisition means for acquiring first material data and second material data as material data that defines the color and / or pattern of the object for each voxel; (a) Before a change event that changes the appearance of the object occurs, set the color and / or pattern of the mesh of the object based on the first material data; (b) After the change event occurs, if the second material data is associated with the first material data set for a change target voxel that is a voxel at the position where the change event occurred, based on the second material data, based on the voxel data regarding the change target voxel, for the mesh generated, set the color and / or pattern of the mesh corresponding to a part of the surface of the object. Appearance setting means; An information processing apparatus comprising image output means for outputting an image of the mesh of the object in the virtual space to a display device.

19. Object generation means for generating a mesh of an object in the virtual space based on voxel data for each voxel defined in a voxel space set in the virtual space; Drawing means for drawing a first color and / or pattern on the mesh of the object before an erasure event for erasing a part of the object occurs; Comprising image output means for outputting an image of the mesh of the object in the virtual space to a display device; After the erasure event occurs, the object generation means updates the voxel data so that a part of the object is erased; The drawing means draws a second color and / or pattern different from the first color and / or pattern on the mesh of the exposed part of the object exposed by the erasure and at least a part of the mesh around the mesh of the exposed part. Information processing apparatus.

20. An information processing method executed by an information processing system, An object generation step of generating a mesh of an object in the virtual space based on voxel data for each voxel defined in a voxel space set in the virtual space; A material data acquisition step of acquiring first material data and second material data as material data that defines the color and / or pattern of the object for each voxel, (a) Before a change event that changes the appearance of the object occurs, set the color and / or pattern of the mesh of the object based on the first material data, and (b) after the change event occurs, if the second material data is associated with the first material data set for a change target voxel that is a voxel at the position where the change event occurred, based on the second material data, set the color and / or pattern of the mesh that is generated based on the voxel data regarding the change target voxel and that corresponds to a part of the surface of the object. A visual appearance setting step, An image output step of outputting an image of the mesh of the object in the virtual space to a display device. An information processing method comprising:

21. An information processing method executed by an information processing system, An object generation step of generating a mesh of an object in the virtual space based on voxel data for each voxel defined in a voxel space set in the virtual space, A drawing step of drawing a first color and / or pattern on the mesh of the object before an erasure event that erases a part of the object occurs, An image output step of outputting an image of the mesh of the object in the virtual space to a display device, In the object generation step, after the erasure event occurs, update the voxel data so that a part of the object is erased, In the drawing step, draw a second color and / or pattern different from the first color and / or pattern on the mesh of the exposed part of the object exposed by the erasure and at least a part of the mesh around the mesh of the exposed part. An information processing method.

Citation Information

Patent Citations

  • Voxel object generation method and device and computer readable storage medium

    CN116485969A

  • Program, recording medium, game character drawing method and game machine

    JP2004062666A

  • Image generation system, program, and information storage medium

    JP2005032140A

  • Program, information storage medium, and image generation system

    JP2010033285A

  • Program, information storage medium, and image generation system

    JP2010033300A