Program, virtual space generation device, and virtual space generation method

By calculating occlusion ratios to adjust virtual wind generation, the system ensures realistic and natural wind patterns in virtual spaces, enhancing the realism of wind effects.

JP7733312B2Active Publication Date: 2025-09-03CAPCOM CO LTD
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
JP2022146114
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2022-09-14
Publication Date
2025-09-03
Estimated Expiration
2042-09-14

AI Technical Summary

Technical Problem

Existing virtual space generation technologies do not account for objects blocking wind, leading to unnatural wind patterns and a lack of realism.

Method used

A computer system calculates the shielding rate of objects in a virtual space to determine whether to generate virtual wind, using volume elements to discretize objects and adjust wind generation parameters based on occlusion ratios.

Benefits of technology

Creates a natural wind effect in virtual spaces by preventing wind from blowing through obstructing objects and maintaining consistency between visual and auditory representations of wind.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007733312000001
    Figure 0007733312000001
  • Figure 0007733312000002
    Figure 0007733312000002
  • Figure 0007733312000003
    Figure 0007733312000003
Patent Text Reader

Abstract

To enable a performance of a natural wind in a virtual space.SOLUTION: A computer is caused to function as: a calculation unit 562 for obtaining a shielding ratio, which is a degree of an object in a virtual space shielding a virtual wind in the virtual space, in a predetermined range of the virtual space; a determination unit 563 for obtaining a wind generation parameter indicating whether or not a virtual wind is to be generated newly on the basis of the shielding ratio on the predetermined range that the shielding ratio is calculated; and a wind generation unit 564 for executing simulation of the wind in the virtual space on the basis of the wind generation parameter.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present disclosure relates to a program, a virtual space generation device, and a virtual space generation method. [Background technology]

[0002] Some game programs generate virtual wind in a virtual space (see, for example, Patent Document 1). In the example of Patent Document 1, multiple wind generation sources are set at given positions in the object space (virtual space), and the wind strength of the wind generated from each generation source is determined at regular intervals. [Prior art documents] [Patent documents]

[0003] [Patent Document 1] Japanese Patent Application Laid-Open No. 2001-276416 Summary of the Invention [Problem to be solved by the invention]

[0004] The example in Patent Document 1 does not take into consideration objects blocking the wind. As a result, wind may blow in unnatural places in the virtual space. The example in Patent Document 1 may result in a lack of realism.

[0005] An object of the present disclosure is to enable the creation of a natural wind effect in a virtual space. [Means for solving the problem]

[0006] A first aspect provides a computer comprising: a calculation unit that calculates a shielding rate, which is the degree to which an object in a virtual space shields a virtual wind in the virtual space, within a predetermined range in the virtual space; a determination unit that determines a wind generation parameter indicating whether or not to newly generate the virtual wind based on the shielding ratio for the predetermined range for which the shielding ratio has been calculated; a wind generation unit that performs a wind simulation in the virtual space based on the wind generation parameters; It is a program that functions as a

[0007] In the first aspect, the determination unit may obtain the wind generation parameter for a predetermined area around the predetermined range.

[0008] In the above aspect, the calculation section may determine the predetermined range based on a shape of the object.

[0009] In the above aspect, The calculation unit representing the object discretized by a plurality of first volume elements; When a portion of the object contained in each first volume element is discretized and represented by a second volume element having a volume smaller than that of the first volume element, The number of the second volume elements included in the first volume element may be determined as the shielding ratio in the first volume element.

[0010] In the above aspect, The computer may function as a game progression unit that progresses a game within the virtual space based on user operations.

[0011] In the above aspect, The computer may be caused to function as an acoustic processing unit that reproduces the sound based on the wind based on the results of the simulation.

[0012] A second aspect is a storage unit that stores the program of the above aspect; a control unit that executes the program; It is a virtual space generation device equipped with the above.

[0013] A third aspect is a method for, by a computer, a calculation step of calculating a shielding rate, which is a degree to which an object in a virtual space shields a virtual wind in the virtual space, within a predetermined range in the virtual space; a determination step of determining a wind generation parameter indicating whether or not to newly generate the virtual wind based on the shielding ratio for the predetermined range for which the shielding ratio has been calculated; a wind generating step of simulating wind in the virtual space based on the wind generation parameters; This is a virtual space generation method that executes the above. [Effects of the Invention]

[0014] According to the present disclosure, it is possible to create a natural wind effect in a virtual space. [Brief explanation of the drawings]

[0015] [Figure 1] FIG. 2 is a block diagram showing the configuration of the game device. [Figure 2] FIG. 1 is a diagram illustrating the discretization of an object using bricks. [Figure 3] FIG. 3 is a side view of the object of FIG. 2. [Figure 4] FIG. 1 is a diagram illustrating discretization of an object using cells. [Figure 5] FIG. 10 is a diagram illustrating bricks placed in an area where no objects exist. DETAILED DESCRIPTION OF THE INVENTION

[0016] [Embodiment] Hereinafter, embodiments of a program, a virtual space generation device, and a virtual space generation method will be described. In the embodiments, the program is implemented as a game program. The virtual space generation device is realized as a game device. The virtual space generation method is implemented in a game device that executes the game program.

[0017] A game based on this game program is played in a virtual space (three-dimensional). There are no limitations on the type of game. For example, the game may be a fighting action game in which a player character attacks and defeats enemy characters.

[0018] <<Configuration of the Game Device>> <Hardware configuration> 1 is a block diagram showing the configuration of a game device 5. The game device 5 executes a predetermined game based on user operations. The game device 5 has a display 61, a speaker 62, and a controller 63 either externally connected or built-in.

[0019] The game device 5 may be a commercially available device such as a personal computer, PlayStation (registered trademark), XBox (registered trademark), PlayStation Vita (registered trademark), or Nintendo Switch (registered trademark).

[0020] The game progresses on the game device 5 based on the installed game program and game data. Game devices 5 can also communicate data with each other using a communication network (not shown) or a short-range wireless communication device (not shown).

[0021] The game device 5 has a network interface 51, a graphics processing unit 52, an audio processing unit 53, an operation unit 54, a storage unit 55, and a control unit 56. The network interface 51, the graphics processing unit 52, the audio processing unit 53, the operation unit 54, and the storage unit 55 are electrically connected to the control unit 56 via a bus 59.

[0022] The network interface 51 is communicably connected to the communication network in order to transmit and receive various data to and from, for example, other game devices 5 and external server devices (not shown).

[0023] The graphics processing unit 52 renders game images including the player character and various objects in the virtual space in a moving image format in accordance with game image information output from the control unit 56. The graphics processing unit 52 is connected to a display 61 (e.g., a liquid crystal display). The game images rendered in a moving image format are displayed on the display 61 as a game screen.

[0024] In this game program, a virtual camera (hereinafter referred to as virtual camera C) is set in the virtual space as the user's (player's) viewpoint. The graphics processing unit 52 creates a 3D image (moving image) as if the virtual space were photographed by the virtual camera C, and displays it on the display 61. The user can set the direction, magnification, etc. of the virtual camera C via the controller 63.

[0025] The audio processing unit 53 is connected to the speaker 62. The audio processing unit 53 plays digital game sounds in accordance with instructions from the control unit 56. Specifically, the audio processing unit 53 converts the sound data output by the control unit 56 into an analog signal and outputs it to the speaker 62.

[0026] The audio processing unit 53 is configured to be capable of multi-channel audio output in order to reproduce three-dimensional sound. Accordingly, a plurality of speakers 62 are connected to the game device 5. These speakers 62 may be placed to the left and right, front and rear, or above a listener (e.g., a game player) in order to reproduce three-dimensional sound.

[0027] The operation unit 54 is connected to the controller 63. The operation unit 54 transmits and receives signals to and from the controller 63. A game player operates various controls such as buttons on the controller 63 to input signals (commands, data, etc.) to the game device 5.

[0028] The storage unit 55 is composed of an HDD, SSD, RAM, ROM, etc. Game data, various programs including game programs, etc. are stored in the storage unit 55. Examples of game data include game media and user account information.

[0029] The control unit 56 controls the operation of the game device 5. The control unit 56 includes a CPU (microcomputer) and a semiconductor memory. The semiconductor memory stores programs and data for operating the CPU.

[0030] <Functional Configuration of Control Unit 56> The control unit 56 executes the game program to function as a game progression unit 561, a calculation unit 562, a determination unit 563, a wind generation unit 564, a display unit 565, and a sound processing unit 566 (see FIG. 1).

[0031] -Game Progression Section 561- The game progression unit 561 causes player characters to move within a virtual space in response to operations by the user (here, the game player). The game progression unit 561 also causes non-player characters and predetermined objects (such as vehicles) to move within the virtual space.

[0032] The game progression unit 561 controls the actions of non-player characters and predetermined objects using, for example, AI (artificial intelligence). The game progression unit 561 progresses the game in accordance with the actions of the player characters and non-player characters.

[0033] -Calculation Unit 562- The calculation unit 562 calculates the shielding rate in a predetermined range (hereinafter referred to as the calculation range) in the virtual space in real time during the game (calculation step). The shielding rate is a value indicating the degree to which an object in the virtual space shields the virtual wind in the virtual space. The method of calculating the shielding rate will be described later.

[0034] The calculation unit 562 calculates the shielding ratio while moving the calculation range in accordance with the movement of the player character. The calculation range may be determined within the range of the virtual space displayed on the display 61 (hereinafter referred to as the display range).

[0035] The calculation unit 562 determines a part of the calculation range based on the shape of an object within the display range. Examples of such an object include structures (houses, fences, etc.) located in the virtual space and topography (cliffs, cave walls, etc.) set in the virtual space.

[0036] In order to determine a calculation range (part), the calculation unit 562 discretizes and represents the object using a plurality of volume elements (hereinafter referred to as first volume elements). Hereinafter, the first volume elements may be referred to as bricks.

[0037] Fig. 2 is a diagram illustrating the discretization of an object using bricks. Fig. 2 shows an object OBJ in a virtual space VS in a perspective view. The object OBJ is a stair-like object.

[0038] 2, each of the cubes indicated by dashed lines is a brick V1 (first volume element). These bricks V1 are invisible to the user (here, the game player) (they are not displayed on the display 61).

[0039] Figure 3 is a side view of the object OBJ in Figure 2. In Figure 3, brick V1 is also indicated by a dashed line. Each brick V1 shown in Figures 2 and 3 includes a portion (site) of the object OBJ.

[0040] The calculation unit 562 discretizes and represents the object using volume elements (referred to as second volume elements) that have a smaller volume than the first volume elements. In other words, the calculation unit 562 discretizes the part of the object contained in each first volume element using second volume elements that have a smaller volume than the first volume elements. Hereinafter, the second volume elements may be referred to as cells.

[0041] Fig. 4 is a diagram illustrating the discretization of an object by cells. Fig. 4 is a side view of the object OBJ of Fig. 2. In Fig. 4, a sub-number is added to the reference number to identify a specific brick V1 (for example, V1-1, V1-2, etc.).

[0042] In Fig. 4, the cube contained in brick V1 is cell V2 (second volume element). In Fig. 4, cell V2 is represented by a dashed square. These cells V2 are invisible to the user (here, the game player) (they are not displayed on the display 61).

[0043] The calculation unit 562 calculates the occlusion ratio for each brick V1 that discretizes the object. Specifically, the calculation unit 562 sequentially focuses on the brick V1 that discretizes the object, and calculates the number of cells V2 (second volume elements) included in the focused brick V1 (first volume element) as the occlusion ratio for that brick V1.

[0044] For ease of explanation, in the example of Fig. 4, the length of one side of cell V2 is assumed to be 1 / 5 of the length of one side of brick V1. In this case, the maximum number of cells V2 that brick V1 can contain is 5 x 5 x 5 = 125. Each brick V1 in Fig. 4 can contain a maximum of five cells in the vertical direction of the drawing.

[0045] For example, in brick V1-1, five cells V2 are connected in the vertical direction of the drawing at each of the 17 cells V2 in brick V1-1, as can be seen in Figure 4. In this case, the shielding factor in brick V1-1 is 17 x 5 = 85.

[0046] In addition, in brick V1-2, five cells V2 are connected in the vertical direction of the drawing at each position of the 25 cells V2 in brick V1-2, as can be seen in Figure 4. In this case, the shielding factor in brick V1-2 is 25 x 5 = 125 (maximum number).

[0047] The calculation unit 562 also places the brick V1 in an area where no object exists (for example, limited to an area within the display range). Fig. 5 is a diagram illustrating bricks V1-3 to V1-9 placed in an area where no object exists.

[0048] In reality, many more bricks V1 are placed in areas where no objects exist, but for convenience of illustration, only some bricks V1-3 to V1-9 are shown in Fig. 5. The placement of bricks V1 in areas where no objects exist can be performed simultaneously or consecutively with the discretization of objects by bricks V1.

[0049] The calculation unit 562 also calculates the occlusion ratio for the brick V1 in the area where no object exists. Specifically, the calculation unit 562 uses the occlusion ratio calculated for the object to complement (extrapolate) the occlusion ratio for the brick V1 in the area where no object exists.

[0050] For example, the calculation unit 562 interpolates the shielding ratio according to a rule (calculation formula) such that the shielding ratio is smaller where there is no ground, etc. The calculation unit 562 interpolates the shielding ratio according to a rule such that the shielding ratio is relatively larger where the terrain is complex. Note that the program may be implemented to stop interpolation when the interpolated shielding ratio falls below a predetermined value, for example.

[0051] -Decision Section 563- The determination unit 563 determines whether or not a new wind is to be generated at a predetermined location in the virtual space. Specifically, the determination unit 563 calculates a wind generation parameter corresponding to each shielding rate in real time during the game (determination step). The wind generation parameter is a parameter indicating whether or not a new virtual wind is to be generated at a predetermined location in the virtual space.

[0052] In this game program, "generating wind" in virtual space means the following two things:

[0053] (1) Calculating wind-related characteristics (wind speed, wind pressure, etc.) using some method The calculation of wind-related characteristics can be realized by, for example, fluid simulation.

[0054] (2) Utilizing wind-related characteristics in virtual space Examples of uses of wind-related properties include visualization of wind in a virtual space and reproduction of sounds produced by wind.

[0055] The visualization of wind can be achieved by displaying the movement of objects (including characters) on the screen (display 61). For example, wind can be visualized by displaying the swaying of a character's hair, the swaying of tree branches and leaves, the swaying of grass, the appearance of a snowstorm, the flow of fog, etc. on the display 61. Examples of the reproduction of sounds caused by wind include the reproduction of the sound of cutting wind, the wind of a snowstorm, and the sound of rustling tree leaves.

[0056] The determination unit 563 compares the shading rate with a threshold to determine a wind generation parameter. The determination unit 563 generates a wind generation parameter that indicates that wind is generated when the shading rate is equal to or less than the threshold. The determination unit 563 generates a wind generation parameter that indicates that wind is not generated when the shading rate is greater than the threshold.

[0057] This threshold value may be set arbitrarily by the developer of the game program, and may also be changed dynamically while the game program is running.

[0058] The determination unit 563 stores the wind generation parameters in a semiconductor memory. The wind generation parameters stored in the semiconductor memory have a data format that allows them to be searched using information that identifies the brick V1 (for example, the ID number of the brick V1) as a query.

[0059] -Wind Generator 564- The wind generation unit 564 generates wind in the virtual space. Specifically, the wind generation unit 564 performs a fluid simulation for the calculation range in accordance with the movement of the player character (in other words, the movement of the calculation range) during execution of the game. In other words, the wind generation unit 564 calculates characteristics related to the wind.

[0060] The wind generation unit 564 sets parameters for the fluid simulation when performing the fluid simulation. Examples of the parameters for the fluid simulation include conditions that define the wind blowing throughout the virtual space (wide-area wind), and the physical property values ​​and pressure values ​​of the virtual gas that fills the virtual space. For example, the physical property values ​​of air can be used as the physical property values ​​of the virtual gas.

[0061] The wind generation unit 564 performs a fluid simulation on the virtual gas filling the virtual space based on the wind generation parameters corresponding to each of the first volume elements V1 (wind generation step).

[0062] First, when setting the parameters for fluid simulation, the wind generation unit 564 checks the wind generation parameters corresponding to each brick V1. The wind generation unit 564 sets the parameters for fluid simulation as follows according to the checked wind generation parameters.

[0063] (1) When the wind generation parameter means that wind is generated The wind generation unit 564 sets the parameters for fluid simulation so that a new wind is generated at the position of the brick V1 corresponding to the wind generation parameters (hereinafter referred to as the target position).

[0064] (2) When the wind generation parameter means that no wind is generated The wind generation unit 564 sets parameters for fluid simulation so that no new wind is generated at the position of interest.

[0065] In a fluid simulation, "wind occurs" means that the calculated wind-related characteristics indicate the presence of wind. For example, it can be said that "wind occurs" when the wind speed is equal to or greater than a predetermined value. In addition, in the results of a fluid simulation, "wind does not occur" means that the calculated wind-related characteristics indicate the absence of wind. For example, it can be said that "wind does not occur" when the wind speed is lower than a predetermined value.

[0066] The wind generation unit 564 performs a fluid simulation of the virtual gas using the set fluid simulation parameters. As a result, characteristics related to the wind (e.g., wind speed) in the virtual space VS are calculated. The wind generation unit 564 outputs the results of the fluid simulation to the display unit 565 and the sound processing unit 566.

[0067] -Display section 565- The display unit 565 visualizes wind in the virtual space according to the fluid simulation results. In other words, the display unit 565 generates wind in the virtual space. For example, the display unit 565 generates moving image data (game image information) showing the player character's hair fluttering, grass in a meadow, and tree leaves swaying according to the fluid simulation results (e.g., wind speed).

[0068] The display unit 565 outputs the generated moving image data to the graphics processing unit 52. The graphics processing unit 52 renders the moving image data on the display 61 in a moving image format.

[0069] -Audio Processing Unit 566- In this game program, various types of sound data are prepared in advance. The sound processing unit 566 plays back the sound data in accordance with the progress of the game. Specifically, the sound processing unit 566 selects sound data in accordance with the progress of the game and outputs the selected sound data to the audio processing unit 53.

[0070] When outputting audio data, the sound processing unit 566 instructs the audio processing unit 53 on the volume of the audio data. The audio processing unit 53 converts the audio data output by the sound processing unit 566 into an analog signal of the instructed volume and outputs it to the speaker 62.

[0071] The sound processing unit 566 performs sound image localization when playing back sound. To perform sound image localization, the sound processing unit 566 sets a virtual sound receiving point (hereinafter referred to as a virtual microphone L) in the virtual space where sound is heard. In this example, the virtual microphone L is set near the player character. The virtual microphone L has directionality. The virtual microphone L moves in accordance with the movement of the player character. The direction of the virtual microphone L is linked to the direction of the virtual camera C.

[0072] In this game program, acoustic effects are produced so that sounds appear to be coming from a virtual sound source existing in the virtual space. The sound processor 566 outputs sounds emitted from a virtual sound source (such as a weapon held by the player character) to the speaker 62 in an acoustic representation that makes it appear as if the sound was collected by a virtual microphone L. The virtual microphone L is a virtual listener and is the reference point for sound image localization by the sound processor 566.

[0073] The sound processing unit 566 expresses wind in the virtual space using sound effects according to the results of the fluid simulation. In other words, the sound processing unit 566 generates wind in the virtual space. For example, the sound processing unit 566 generates audio data representing the sound of wind, rustling leaves, etc. according to the wind speed and wind direction calculated by the fluid simulation.

[0074] The sound processing unit 566 changes the content of the sound processing in accordance with the wind speed. For example, the sound processing unit 566 controls the volume of the sound caused by the wind in accordance with the wind speed.

[0075] The sound processing unit 566 changes the content of the sound processing depending on the relationship between the wind direction and the orientation of the virtual microphone L (the orientation of the virtual camera C). For example, assume that a simulation has calculated that the wind will blow from behind the virtual microphone L to the front of it at the position of the virtual microphone L. In other words, the wind will blow from behind the virtual camera C to the front of it.

[0076] In this case, the sound processor 566 processes the wind sound so that it sounds muffled. Specifically, the sound processor 566 processes the wind sound data using a low-pass filter.

[0077] For example, suppose that a simulation has calculated that the wind blows from the right side to the left side of the virtual microphone L at the position of the virtual microphone L. In this case, the sound processing unit 566 reduces the volume of the sound on the left side (the sound from the left speaker 62) more than the volume of the sound on the right side (the sound from the right speaker 62).

[0078] Additionally, the sound processing unit 566 may change the pitch of the sound caused by the wind depending on the simulation results (wind speed, wind direction).

[0079] The sound processing unit 566 outputs the generated sound data to the audio processing unit 53. The audio processing unit 53 converts the sound data output by the sound processing unit 566 into an analog signal and outputs it to the speaker 62.

[0080] <<Example of operation>> When the game starts, the game progression unit 561 moves the player character within the virtual space VS in accordance with the user's (here, the game player's) operation of the controller 63. The game progression unit 561 also moves objects such as non-player characters within the virtual space as necessary.

[0081] The calculation unit 562, for example, arranges the brick V1 and the cell V2 within the display range of the virtual space VS. The calculation unit 562 calculates the shading rate for each brick V1.

[0082] The determination unit 563 determines a wind generation parameter corresponding to the shielding ratio calculated by the calculation unit 562. The determination unit 563 stores the calculated wind generation parameter in a semiconductor memory.

[0083] The wind generation unit 564 sets parameters for the fluid simulation based on the calculated wind generation parameters. The wind generation unit 564 performs the fluid simulation based on the set parameters for the fluid simulation. The wind generation unit 564 outputs the results of the fluid simulation to the display unit 565 and the sound processing unit 566.

[0084] The display unit 565 generates video image data (game image information) showing, for example, grass in a meadow or leaves of trees swaying in the wind, according to the results of the fluid simulation. The display unit 565 outputs the generated video image data to the graphics processing unit 52. As a result, grass and leaves swaying in the wind are displayed on the display 61.

[0085] The sound processing unit 566 generates audio data representing, for example, the sound of tree leaves rustling, according to the wind speed and wind direction calculated by the fluid simulation. The sound processing unit 566 outputs the generated audio data to the audio processing unit 53. As a result, the speaker 62 reproduces the sound of leaves rustling in the wind.

[0086] In this game program, the sound is played back using the simulation results, so the sound and the moving images are linked. In other words, there is no sense of incongruity between the moving images and the sound.

[0087] To summarize the above, this aspect is a program that causes a computer (control unit 56) to function as a calculation unit 562 that calculates the shielding rate, which is the degree to which an object in a virtual space shields virtual wind in the virtual space, within a predetermined range in the virtual space; a decision unit 563 that calculates a wind generation parameter indicating whether or not to newly generate virtual wind for the predetermined range in which the shielding rate has been calculated, based on the shielding rate; and a wind generation unit 564 that performs a simulation of wind in the virtual space based on the wind generation parameter.

[0088] Effect of this embodiment This program introduces the concept of occlusion rate. The occlusion rate is calculated in real time during the game (while the game program is running). The occlusion rate indicates the degree to which virtual wind is blocked at a specific location in virtual space. In this program, new wind is not generated in locations where the occlusion rate is greater than a threshold (locations that are likely to block wind). In this program, new wind is generated in locations where the occlusion rate is less than the threshold.

[0089] By introducing the concept of occlusion ratio, this program can create a natural wind in a virtual space. For example, by generating wind according to the occlusion ratio, this program can prevent unnatural wind from being generated from walls. By generating wind according to the occlusion ratio, this program can prevent wind in complex terrain (e.g., drafts) from being lost (overwritten) by wide-area wind. By adjusting the threshold value used for comparison with the occlusion ratio, this program can emphasize wind within a specified range.

[0090] In addition, this program links audio and video, so there is no sense of incongruity between the video and audio.

[0091] As described above, this program can create a natural wind effect in real time in a virtual space.

[0092] If wind effects can be created in real time, there is no need to prepare data representing the wind (wind speed, wind direction, etc.) in advance and distribute it to users. In other words, this program requires less data volume to be distributed to users.

[0093] [Other embodiments] The use of the virtual space is not limited to games. The administrator of the virtual space (who may be called the user of this program) can provide various services through the virtual space (for example, use as a metaverse).

[0094] The application of the mechanism of this program (the mechanism for determining whether new wind generation is necessary) is not limited to programs (such as game programs) used by users of the virtual space (those receiving services in the virtual space). For example, the mechanism of this program can be used as a game development tool used in game development.

[0095] In game development tools, this program makes it easier for developers (programmers, artists, etc.) who are users of the program to perform advance preparations related to wind. Advance preparations include, for example, preparing data to represent wind and performing fluid simulations. If advance preparations are made easier, it becomes possible to reduce the costs required for repeating the development process (so-called iterations).

[0096] Bricks and cells may be visualized depending on the intended use of the program. For example, if the program is implemented as a game development tool, the convenience of users (artists, etc.) will be improved by visualizing bricks and cells.

[0097] The calculation range of the shielding rate is not limited to the display range described above. The calculation range may be an area that is a certain extent expanded from the display range, or may be a range that is narrower than the display range. Also, an area that is not displayed on the display 61 (for example, an area that is expected to be the destination of the player character) may be set as the calculation range.

[0098] In the game development tool, the shading rate or wind generation parameters may be manually embedded in the virtual space by an artist, etc. A mechanism may be provided that allows the artist, etc. to bias the shading rate calculated by the computer (control unit 56).

[0099] The calculation method of the shielding ratio described in the embodiment is merely an example. For example, the shielding ratio may be the ratio between the maximum number of second volume elements that a first volume element can contain and the number of second volume elements V2 that are actually contained in the first volume element V1.

[0100] The correspondence between the value of the shielding ratio and its meaning (whether or not wind is generated) is an example. For example, contrary to the above embodiment, the calculation method of the shielding ratio may be defined so that new wind is generated when the shielding ratio is greater than a threshold value and new wind is not generated when the shielding ratio is less than the threshold value. As such a definition, for example, the shielding ratio may be defined as the reciprocal of the number of second volume elements V2 included in the first volume element V1.

[0101] The processing by this program may be performed by a server device to which a user device (e.g., game device 5) is connected, or may be shared between the user device and the server device. This is the form assumed when this program is implemented as a game program for an online game or a program for the above-mentioned metaverse.

[0102] The voice data does not necessarily have to be prepared in advance, but may be synthesized or generated each time based on some data (for example, noise) or information.

[0103] The effects of the present embodiment can be achieved even when these other embodiments are adopted. Furthermore, this embodiment can be combined with other embodiments, and other embodiments can be combined with each other as appropriate. [Explanation of symbols]

[0104] 5. Game device (virtual space generation device) 55 Storage section 56 Control Unit (Computer) 561 Game Progression Department 562 Calculation Unit 563 Decision Section 564 Wind Generator 566 Acoustic Processing Unit OBJ Object V1 brick (first volume element) V2 cell (second volume element) VS Virtual Space

Claims

1. Computer, a calculation unit that calculates a shielding rate, which is the degree to which an object in a virtual space shields a virtual wind in the virtual space, within a predetermined range in the virtual space; a determination unit that determines a wind generation parameter indicating whether or not to newly generate the virtual wind based on the shielding ratio for the predetermined range for which the shielding ratio has been calculated; a wind generating unit that performs a wind simulation in the virtual space based on the wind generation parameters; the calculation unit determines the predetermined range based on a shape of the object; The calculation unit representing the object discretized by a plurality of first volume elements; When a portion of the object contained in each first volume element is discretized and represented by a second volume element having a volume smaller than that of the first volume element, The number of the second volume elements included in the first volume element is calculated as the shielding ratio in the first volume element. program.

2. In the program of claim 1, The determination unit determines the wind generation parameter for a predetermined area around the predetermined range. program.

3. In the program of claim 1 or claim 2, The computer functions as a game progression unit that progresses a game in the virtual space based on user operations. program.

4. In the program of claim 1 or claim 2, A program that causes the computer to function as an acoustic processing unit that reproduces the wind-based sound based on the results of the simulation.

5. a storage unit that stores the program of claim 1 or claim 2; a control unit that executes the program; A virtual space generating device equipped with the above.

6. By computer, a calculation step of calculating a shielding rate, which is a degree to which an object in a virtual space shields a virtual wind in the virtual space, within a predetermined range in the virtual space; a determination step of determining a wind generation parameter indicating whether or not to newly generate the virtual wind based on the shielding ratio for the predetermined range for which the shielding ratio has been calculated; executing a wind generation step of simulating wind in the virtual space based on the wind generation parameters; In the calculation step, the predetermined range is determined based on a shape of the object; In the calculation step, representing the object discretized by a plurality of first volume elements; When a portion of the object contained in each first volume element is discretized and represented by a second volume element having a volume smaller than that of the first volume element, The number of the second volume elements included in the first volume element is calculated as the shielding ratio in the first volume element. A method for generating virtual space.

Citation Information

Patent Citations

  • Game device and information memory medium

    JP2001276416A

  • Video display device and video display program

    JP2008272296A

  • Game device and program

    JP2018110719A

  • Wind rendering for virtual reality computing device

    US20180330546A1

  • Information processing device, information processing method, and computer-readable recording medium

    WO2021241431A1