[go: up one dir, main page]

JP2024041355A - Program, virtual space generation device, and virtual space generation method - Google Patents

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

Info

Publication number
JP2024041355A
JP2024041355A JP2022146114A JP2022146114A JP2024041355A JP 2024041355 A JP2024041355 A JP 2024041355A JP 2022146114 A JP2022146114 A JP 2022146114A JP 2022146114 A JP2022146114 A JP 2022146114A JP 2024041355 A JP2024041355 A JP 2024041355A
Authority
JP
Japan
Prior art keywords
wind
virtual space
program
virtual
unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2022146114A
Other languages
Japanese (ja)
Other versions
JP7733312B2 (en
Inventor
哲平 米山
Teppei Yoneyama
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Capcom Co Ltd
Original Assignee
Capcom Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Capcom Co Ltd filed Critical Capcom Co Ltd
Priority to JP2022146114A priority Critical patent/JP7733312B2/en
Publication of JP2024041355A publication Critical patent/JP2024041355A/en
Application granted granted Critical
Publication of JP7733312B2 publication Critical patent/JP7733312B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Processing Or Creating Images (AREA)

Abstract

【課題】仮想空間において、自然な風の演出ができるようにする。【解決手段】コンピュータを、仮想空間内のオブジェクトが仮想空間内における仮想の風を遮蔽する程度である遮蔽率を、仮想空間内の所定範囲において求める算出部562と、遮蔽率が算出された所定範囲について、遮蔽率に基づいて、仮想の風を新たに発生させるか否かを示す風発生パラメータを求める決定部563と、風発生パラメータに基づいて、仮想空間における風のシミュレーションを実施する風発生部564として機能させる。【選択図】図1[Problem] To create a natural wind effect in a virtual space. [Solution] A computer is made to function as a calculation unit (562) that calculates a shielding rate, which is the degree to which an object in the virtual space shields virtual wind in the virtual space, within a predetermined range in the virtual space, a determination unit (563) that calculates a wind generation parameter indicating whether or not to generate new virtual wind based on the shielding rate for the predetermined range for which the shielding rate has been calculated, and a wind generation unit (564) that performs a simulation of wind in the virtual space based on the wind generation parameter. [Selected Figure] Figure 1

Description

本開示は、プログラム、仮想空間生成装置、および仮想空間生成方法に関する。 The present disclosure relates to a program, a virtual space generation device, and a virtual space generation method.

ゲームプログラムのなかには、仮想空間において仮想的な風を生成するものがある(例えば特許文献1を参照)。特許文献1の例では、オブジェクト空間(仮想空間)の所与の位置に風の生成源を複数設定し、各生成源から生成される風の風力を一定時刻毎に決定するとされている。 Some game programs generate virtual wind in a virtual space (for example, see Patent Document 1). In the example of Patent Document 1, a plurality of wind generation sources are set at a given position in an object space (virtual space), and the wind force generated from each generation source is determined at regular time intervals.

特開2001-276416号公報Japanese Patent Application Publication No. 2001-276416

特許文献1の例では、風の遮蔽物について考慮されていない。そのため、仮想空間内の不自然な場所でも風が吹く可能性がある。特許文献1の例では、リアルさに欠ける演出が行なわれる可能性がある。 In the example of Patent Document 1, wind shields are not considered. Therefore, the wind may blow even in unnatural places in the virtual space. In the example of Patent Document 1, there is a possibility that an effect that lacks realism will be performed.

本開示の目的は、仮想空間において、自然な風の演出ができるようにすることである。 An object of the present disclosure is to enable the production of natural wind in a virtual space.

第1の態様は、コンピュータを、
仮想空間内のオブジェクトが前記仮想空間内における仮想の風を遮蔽する程度である遮蔽率を、前記仮想空間内の所定範囲において求める算出部と、
前記遮蔽率が算出された前記所定範囲について、前記遮蔽率に基づいて、前記仮想の風を新たに発生させるか否かを示す風発生パラメータを求める決定部と、
前記風発生パラメータに基づいて、前記仮想空間における風のシミュレーションを実施する風発生部
として機能させるプログラムである。
The first aspect is that the computer is
a calculation unit that calculates a shielding rate, which is the extent to which an object in the virtual space blocks virtual wind in the virtual space, in a predetermined range in the virtual space;
a determining unit that calculates a wind generation parameter indicating whether or not to newly generate the virtual wind based on the shielding rate for the predetermined range in which the shielding rate has been calculated;
This program functions as a wind generation unit that performs a wind simulation in the virtual space based on the wind generation parameters.

第1の態様において、前記決定部は、前記所定範囲の周辺の所定領域について前記風発生パラメータを求めてもよい。 In a first aspect, the determining unit may determine the wind generation parameter for a predetermined area around the predetermined range.

前記態様においては、前記算出部は、前記所定範囲を前記オブジェクトの形状に基づいて定めてもよい。 In the aspect, the calculation unit may determine the predetermined range based on the shape of the object.

前記態様においては、
前記算出部は、
前記オブジェクトを複数の第1体積要素で離散化して表し、
それぞれの第1体積要素内に包含される前記オブジェクトの部位を、前記第1体積要素よりも小さな体積の第2体積要素で離散化して表した場合の、
前記第1体積要素に含まれる前記第2体積要素の数を、その第1体積要素における前記遮蔽率として求めてもよい。
In the above aspect,
The calculation unit is
The object is discretized and represented by a plurality of first volume elements,
When the part of the object included in each first volume element is discretized and represented by a second volume element having a smaller volume than the first volume element,
The number of the second volume elements included in the first volume element may be determined as the shielding rate of the first volume element.

前記態様においては、
ユーザの操作に基づいて前記仮想空間内でゲームを進行させるゲーム進行部として前記コンピュータを機能させてもよい。
In the above aspect,
The computer may function as a game progression unit that advances the game in the virtual space based on user operations.

前記態様においては、
前記シミュレーションの結果に基づいて、前記風に基づく音を再生する音響処理部として前記コンピュータを機能させてもよい。
In the above aspect,
Based on the result of the simulation, the computer may function as a sound processing unit that reproduces the sound based on the wind.

第2の態様は、前記態様のプログラムを記憶した記憶部と、
前記プログラムを実行する制御部と、
を備えた仮想空間生成装置である。
A second aspect includes a storage unit storing the program according to the aspect;
a control unit that executes the program;
This is a virtual space generation device equipped with

第3の態様は、コンピュータによって、
仮想空間内のオブジェクトが前記仮想空間内における仮想の風を遮蔽する程度である遮蔽率を、前記仮想空間内の所定範囲において求める算出ステップと、
前記遮蔽率が算出された前記所定範囲について、前記遮蔽率に基づいて、前記仮想の風を新たに発生させるか否かを示す風発生パラメータを求める決定ステップと、
前記風発生パラメータに基づいて、前記仮想空間における風のシミュレーションを実施する風発生ステップ
とを実行する仮想空間生成方法である。
In a third aspect, by a computer,
calculating a shielding rate, which is the extent to which an object in the virtual space blocks virtual wind in the virtual space, in a predetermined range in the virtual space;
a determining step of determining a wind generation parameter indicating whether or not to newly generate the virtual wind based on the shielding rate for the predetermined range in which the shielding rate has been calculated;
The present invention is a virtual space generation method that executes a wind generation step of performing a wind simulation in the virtual space based on the wind generation parameters.

本開示によれば、仮想空間において、自然な風の演出ができる。 According to the present disclosure, it is possible to produce a natural breeze in a virtual space.

ゲーム装置の構成を示すブロック図である。FIG. 2 is a block diagram showing the configuration of a game device. ブリックによるオブジェクトの離散化を説明する図である。FIG. 3 is a diagram illustrating discretization of objects using bricks. 図2のオブジェクトの側面図である。3 is a side view of the object of FIG. 2; FIG. セルによるオブジェクトの離散化を説明する図である。FIG. 3 is a diagram illustrating discretization of objects using cells. オブジェクトが存在しない領域に配置されたブリックを例示する図である。FIG. 3 is a diagram illustrating bricks placed in an area where no object exists.

[実施形態]
以下、プログラム、仮想空間生成装置、および仮想空間生成方法の実施形態について説明する。実施形態では、プログラムはゲームプログラムとして実装されている。仮想空間生成装置は、ゲーム装置として実現されている。仮想空間生成方法は、ゲームプログラムを実行するゲーム装置において実施される。
[Embodiment]
Embodiments of a program, a virtual space generation device, and a virtual space generation method will be described below. In the embodiment, 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 a game program.

このゲームプログラムによるゲームは、仮想空間(三次元)で実施される。ゲームの種別等には限定はない。例えば、ゲームは、プレイヤキャラクタが敵キャラクタを攻撃して倒していく対戦型のアクションゲームとすることができる。 A game based on this game program is played in a virtual space (three-dimensional). There are no restrictions on the type of game. For example, the game can be a competitive action game in which the player character attacks and defeats enemy characters.

《ゲーム装置の構成》
〈ハードウェアの構成〉
図1は、ゲーム装置5の構成を示すブロック図である。ゲーム装置5は、ユーザの操作に基づいて所定のゲームを実行する。ゲーム装置5には、ディスプレイ61、スピーカ62およびコントローラ63が外部接続または内蔵される。
《Game device configuration》
<Hardware configuration>
FIG. 1 is a block diagram showing the configuration of the game device 5. As shown in FIG. Game device 5 executes a predetermined game based on a user's operation. A display 61, a speaker 62, and a controller 63 are externally connected or built into the game device 5.

ゲーム装置5には、例えば、パーソナルコンピュータ、プレイステーション(登録商標)、XBox(登録商標)、PlayStation Vita(登録商標)、Nintendo Switch(登録商標)などの、市販の装置を利用できる。 As the game device 5, commercially available devices such as a personal computer, PlayStation (registered trademark), XBox (registered trademark), PlayStation Vita (registered trademark), and Nintendo Switch (registered trademark) can be used.

ゲーム装置5では、インストールされたゲームプログラムおよびゲームデータに基づいてゲームが進行する。ゲーム装置5同士も、通信ネットワーク(図示を省略)または近距離無線通信装置(図示せず)を用いて、互いにデータ通信を行うことができる。 In the game device 5, the game progresses based on the installed game program and game data. The game devices 5 can also perform data communication with each other using a communication network (not shown) or a short-range wireless communication device (not shown).

ゲーム装置5は、ネットワークインターフェース51、グラフィック処理部52、オーディオ処理部53、操作部54、記憶部55および制御部56を有する。ネットワークインターフェース51、グラフィック処理部52、オーディオ処理部53、操作部54および記憶部55は、バス59を介して制御部56と電気的に接続されている。 The game device 5 includes a network interface 51, a graphic processing section 52, an audio processing section 53, an operation section 54, a storage section 55, and a control section 56. The network interface 51, the graphic processing section 52, the audio processing section 53, the operation section 54, and the storage section 55 are electrically connected to the control section 56 via a bus 59.

ネットワークインターフェース51は、例えば、他のゲーム装置5や外部のサーバ装置(図示を省略)との間で各種データを送受信するために、前記通信ネットワークに通信可能に接続される。 The network interface 51 is communicably connected to the communication network in order to transmit and receive various data with, for example, other game devices 5 and an external server device (not shown).

グラフィック処理部52は、制御部56から出力されるゲーム画像情報に従って、プレイヤキャラクタおよび仮想空間における各種オブジェクトを含むゲーム画像を、動画形式で描画する。グラフィック処理部52はディスプレイ61(例えば液晶ディスプレイ)と接続されている。動画形式に描画されたゲーム画像は、ゲーム画面としてディスプレイ61上に表示される。 The graphic processing unit 52 draws a game image including a player character and various objects in the virtual space in a moving image format according to the game image information output from the control unit 56. The graphic processing unit 52 is connected to a display 61 (for example, a liquid crystal display). The game image drawn in a moving image format is displayed on the display 61 as a game screen.

このゲームプログラムでは、ユーザ(プレイヤ)の視点として仮想のカメラ(以下、仮想カメラCという)が仮想空間に設定されている。グラフィック処理部52は、仮想カメラCで仮想空間内を撮影したかのように、3Dの映像(動画像)を構成してディスプレイ61に表示する。仮想カメラCの方向、拡大率等は、ユーザがコントローラ63を介して設定できる。 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 graphic processing unit 52 composes a 3D video (moving image) and displays it on the display 61 as if the inside of the virtual space was photographed by the virtual camera C. The direction, magnification, etc. of the virtual camera C can be set by the user via the controller 63.

オーディオ処理部53は、スピーカ62と接続されている。オーディオ処理部53は、制御部56の指示に従ってデジタルのゲーム音声を再生する。具体的には、オーディオ処理部53は、制御部56が出力した音声データをアナログ信号に変換し、スピーカ62に出力する。 The audio processing section 53 is connected to the speaker 62. The audio processing unit 53 reproduces digital game audio according to instructions from the control unit 56. Specifically, the audio processing unit 53 converts the audio data output by the control unit 56 into an analog signal and outputs it to the speaker 62.

オーディオ処理部53は、3次元的な音の再生を行うために、多チャンネルの音声出力ができるように構成されている。それに合わせて、ゲーム装置5には、複数のスピーカ62が接続されている。これらのスピーカ62は、3次元的な音の再生ができるように、聴取者(例えばゲームのプレイヤ)の左右、前後、上方などに配置される場合がある。 The audio processing unit 53 is configured to output multi-channel audio 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 on the left, right, front, back, or above the listener (for example, a game player) so that three-dimensional sound can be reproduced.

操作部54は、コントローラ63と接続されている。操作部54は、信号をコントローラ63との間で送受信する。ゲームのプレイヤは、コントローラ63のボタン等の各種操作子を操作することで、ゲーム装置5に信号(命令やデータなど)を入力する。 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 inputs signals (commands, data, etc.) to the game device 5 by operating various operators such as buttons on the controller 63.

記憶部55は、HDD、SSD、RAM、ROMなどで構成される。記憶部55には、ゲームデータ、ゲームプログラムを含む各種プログラムなどが格納されている。ゲームデータとしては、ゲーム媒体やユーザのアカウント情報などを例示できる。 The storage unit 55 includes an HDD, SSD, RAM, ROM, and the like. The storage unit 55 stores game data, various programs including game programs, and the like. Examples of game data include game media and user account information.

制御部56は、ゲーム装置5の動作を制御する。制御部56は、CPU(マイクロコンピュータ)、および半導体メモリを備えている。半導体メモリには、CPUを動作させるためのプログラムやデータなどが格納される。 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, data, etc. for operating the CPU.

〈制御部56の機能的構成〉
制御部56は、ゲームプログラムを実行することによって、ゲーム進行部561、算出部562、決定部563、風発生部564、表示部565、音響処理部566として機能する(図1参照)。
<Functional configuration of control unit 56>
The control unit 56 functions 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 by executing the game program (see FIG. 1).

-ゲーム進行部561-
ゲーム進行部561は、ユーザ(ここではゲームのプレイヤ)の操作に応じて、仮想空間内でプレイヤキャラクタを動作させる。ゲーム進行部561は、ノンプレイヤキャラクタや所定のオブジェクト(例えば乗り物など)も仮想空間内で動作させる。
-Game progress section 561-
The game progression unit 561 causes the player character to move within the 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 operate in the virtual space.

ゲーム進行部561は、例えばAI(artificial intelligence)によってノンプレイヤキャラクタや所定のオブジェクトの動作を制御する。ゲーム進行部561は、プレイヤキャラクタやノンプレイヤキャラクタの動作に応じて、ゲームを進行させる。 The game progress unit 561 controls the actions of non-player characters and predetermined objects using, for example, AI (artificial intelligence). The game progression unit 561 advances the game according to the actions of the player character and the non-player character.

-算出部562-
算出部562は、ゲーム中に、リアルタイムで仮想空間内の所定範囲(以下、算出範囲という)において遮蔽率を求める(算出ステップ)。遮蔽率は、仮想空間内のオブジェクトが、仮想空間内における仮想の風を、遮蔽する程度を示す値である。遮蔽率の算出法は後述する。
-Calculation unit 562-
The calculation unit 562 calculates the shielding rate in a predetermined range (hereinafter referred to as 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 for calculating the shielding rate will be described later.

算出部562は、プレイヤキャラクタの移動に応じて、算出範囲を移動させながら遮蔽率を求める。算出範囲は、ディスプレイ61に表示されている仮想空間の範囲(以下、表示範囲)内に定めることが考えられる。 The calculation unit 562 calculates the shielding rate while moving the calculation range according to the movement of the player character. The calculation range may be set within the range of the virtual space displayed on the display 61 (hereinafter referred to as the display range).

算出部562は、算出範囲の一部を表示範囲内のオブジェクトの形状に基づいて定める。このようなオブジェクトとしては、仮想空間内に配置されている建造物(家屋、塀など)、仮想空間内に設定されている地形(崖、洞窟の壁など)を例示できる。 The calculation unit 562 determines a part of the calculation range based on the shape of the object within the display range. Examples of such objects include buildings (houses, walls, etc.) placed in the virtual space, and terrain (cliffs, cave walls, etc.) set in the virtual space.

算出部562は、算出範囲(一部)を定めるために、オブジェクトを複数の体積要素(以下、第1体積要素とする)で離散化して表す。以下では、第1体積要素をブリックと呼ぶ場合がある。 The calculation unit 562 discretizes and represents the object using a plurality of volume elements (hereinafter referred to as first volume elements) in order to define (a part of) the calculation range. Below, the first volume element may be referred to as a brick.

図2は、ブリックによるオブジェクトの離散化を説明する図である。図2では、仮想空間VS内のオブジェクトOBJが斜視図によって示されている。オブジェクトOBJは、階段状の物体である。 FIG. 2 is a diagram illustrating discretization of objects using bricks. In FIG. 2, an object OBJ in the virtual space VS is shown in a perspective view. Object OBJ is a step-like object.

図2において、破線で示されている立方体のそれぞれがブリックV1(第1体積要素)である。これらのブリックV1は、ユーザ(ここではゲームのプレイヤ)には視認できない(ディスプレイ61に表示されない)。 In FIG. 2, each cube indicated by a broken line is a brick V1 (first volume element). These bricks V1 are not visible to the user (here, the game player) (they are not displayed on the display 61).

図3は、図2のオブジェクトOBJの側面図である。図3でもブリックV1は、破線で示されている。図2、図3に図示された各ブリックV1には、オブジェクトOBJの一部分(部位)が包含されている。 FIG. 3 is a side view of object OBJ in FIG. 2. In FIG. 3, the brick V1 is also indicated by a broken line. Each brick V1 illustrated in FIGS. 2 and 3 includes a portion (part) of the object OBJ.

算出部562は、第1体積要素よりも小さな体積の体積要素(第2体積要素とする)によって、オブジェクトを離散化して表す。換言すると、算出部562は、それぞれの第1体積要素内に包含されるオブジェクトの部位を、第1体積要素よりも小さな体積の第2体積要素で離散化する。以下では、第2体積要素をセルと呼ぶ場合がある。 The calculation unit 562 discretizes and represents the object using a volume element (referred to as a second volume element) having a smaller volume than the first volume element. In other words, the calculation unit 562 discretizes the part of the object included in each first volume element into a second volume element having a smaller volume than the first volume element. Below, the second volume element may be referred to as a cell.

図4は、セルによるオブジェクトの離散化を説明する図である。図4は、図2のオブジェクトOBJの側面図である。図4では、所定のブリックV1を識別するために、参照符号に枝番を付している(例えば、V1-1、V1-2等)。 FIG. 4 is a diagram illustrating discretization of objects using cells. FIG. 4 is a side view of object OBJ in FIG. 2. In FIG. 4, a branch number is attached to the reference numeral (for example, V1-1, V1-2, etc.) in order to identify a predetermined brick V1.

図4においてブリックV1内に包含された立方体がセルV2(第2体積要素)である。図4ではセルV2は、破線の正方形で表されている。これらのセルV2は、ユーザ(ここではゲームのプレイヤ)には視認できない(ディスプレイ61に表示されない)。 In FIG. 4, the cube contained within the brick V1 is the cell V2 (second volume element). In FIG. 4, cell V2 is represented by a dashed square. These cells V2 are not visible to the user (here, the game player) (they are not displayed on the display 61).

算出部562は、オブジェクトを離散化している各ブリックV1について、遮蔽率を求める。具体的に、算出部562は、オブジェクトを離散化しているブリックV1に順次着目し、着目したブリックV1(第1体積要素)に含まれるセルV2(第2体積要素)の数を、そのブリックV1における遮蔽率として求めている。 The calculation unit 562 calculates the shielding rate for each brick V1 whose object is discretized. Specifically, the calculation unit 562 sequentially focuses on the bricks V1 in which the object is discretized, and calculates the number of cells V2 (second volume elements) included in the focused brick V1 (first volume element) as the number of cells V2 (second volume elements) included in the brick V1. It is calculated as the shielding rate at .

説明の便宜のため、図4の例では、セルV2の一辺の長さは、ブリックV1の一辺の長さの1/5であるとする。この場合、ブリックV1が含み得るセルV2の最大数は、5×5×5=125である。図4の各ブリックV1は、同図紙面の鉛直方向に最大で5個のセルを含み得る。 For convenience of explanation, in the example of FIG. 4, it is assumed that the length of one side of the cell V2 is 1/5 of the length of one side of the brick V1. In this case, the maximum number of cells V2 that brick V1 can include is 5×5×5=125. Each brick V1 in FIG. 4 can include up to five cells in the vertical direction of the plane of the drawing.

例えば、ブリックV1-1では、図4で確認できるブリックV1-1内の17個のセルV2のそれぞれの位置において、5個のセルV2が同図紙面の鉛直方向に連なっているとする。この場合、ブリックV1-1における遮蔽率は17×5=85である。 For example, in brick V1-1, it is assumed that five cells V2 are connected in the vertical direction of the plane of the figure at each position of the 17 cells V2 in brick V1-1 that can be seen in FIG. In this case, the shielding rate in brick V1-1 is 17×5=85.

また、ブリックV1-2では、図4で確認できるブリックV1-2内の25個のセルV2のそれぞれの位置において、同図紙面の鉛直方向に5個のセルV2が連なっているとする。この場合、ブリックV1-2における遮蔽率は25×5=125(最大数)である。 Further, in brick V1-2, it is assumed that five cells V2 are connected in the vertical direction of the plane of the figure at each position of the 25 cells V2 in brick V1-2 that can be seen in FIG. In this case, the shielding rate in brick V1-2 is 25×5=125 (maximum number).

算出部562は、オブジェクトが存在しない領域(一例として表示範囲内の領域に限定する)についてもブリックV1を配置する。図5は、オブジェクトが存在しない領域に配置されたブリックV1-3~V1-9を例示する図である。 The calculation unit 562 also arranges the bricks V1 in areas where no objects exist (limited to areas within the display range, for example). FIG. 5 is a diagram illustrating bricks V1-3 to V1-9 placed in an area where no object exists.

実際には、オブジェクトが存在しない領域に更に多くのブリックV1が配置されるが、図5では図示の都合で、一部のブリックV1-3~V1-9のみを表している。なお、オブジェクトの不存在箇所へのブリックV1の配置は、ブリックV1によるオブジェクトの離散化と同時ないしは連続して行えばよい。 In reality, more bricks V1 are placed in the area where no object exists, but for convenience of illustration, only some of the bricks V1-3 to V1-9 are shown in FIG. Note that the placement of the brick V1 at the location where the object does not exist may be performed simultaneously or consecutively with the discretization of the object using the brick V1.

算出部562は、オブジェクトが存在しない領域のブリックV1についても遮蔽率を求める。具体的には、算出部562は、オブジェクトに対応して算出された遮蔽率を用いて、オブジェクトが存在しない領域のブリックV1における遮蔽率を補完(外挿)している。 The calculation unit 562 also calculates the occlusion rate for the brick V1 in the area where no object exists. Specifically, the calculation unit 562 uses the occlusion rate calculated corresponding to the object to complement (extrapolate) the occlusion rate in the brick V1 in the area where the object does not exist.

例えば、算出部562は、何も存在しない地面などでは遮蔽率がより小さくなるようなルール(算出式)によって遮蔽率を補完する。算出部562は、地形が入り組んだ箇所では、遮蔽率が比較的大きくなるようなルールによって遮蔽率を補完する。なお、本プログラムは、例えば、補完した遮蔽率が所定値を下回ったら補間をやめるように実装してもよい。 For example, the calculation unit 562 complements the shading rate according to a rule (calculation formula) such that the shading rate is smaller on areas such as the ground where nothing is present. The calculation unit 562 complements the shading rate according to a rule such that the shading rate is relatively large in areas with complex terrain. Note that the program may be implemented to stop the interpolation when the complemented shading rate falls below a predetermined value, for example.

-決定部563-
決定部563は、仮想空間の所定箇所における新たな風の発生要否を決定する。具体的に、決定部563は、ゲーム中にリアルタイムで、各遮蔽率に対応する風発生パラメータを求める(決定ステップ)。風発生パラメータは、仮想空間の所定箇所において仮想の風を新たに発生させるか否かを示すパラメータである。
-Decision section 563-
The determining unit 563 determines whether new wind needs to be generated at a predetermined location in the virtual space. Specifically, the determining unit 563 determines wind generation parameters corresponding to each shielding rate in real time during the game (determining step). The wind generation parameter is a parameter indicating whether or not virtual wind is newly generated at a predetermined location in the virtual space.

本ゲームプログラムでは、仮想空間において「風を発生させる」とは、以下の2つを意味している。 In this game program, "generating wind" in virtual space means the following two things.

(1)風に関わる特性(風速、風圧など)を何らかの手法で算出すること
風に関わる特性の算出は、例えば流体シミュレーションによって実現できる。
(1) Calculating wind-related characteristics (wind speed, wind pressure, etc.) using some method Calculation of wind-related characteristics can be realized, for example, by fluid simulation.

(2)風に関わる特性を仮想空間で利用すること
風に関わる特性の利用態様には、仮想空間における風の可視化、風よって生ずる音の再生を例示できる。
(2) Utilizing wind-related characteristics in virtual space Examples of ways to use wind-related characteristics include visualization of wind in virtual space and reproduction of sounds generated by wind.

風の可視化は、オブジェクト(キャラクタを含む)の動きを画面(ディスプレイ61)に表示することによって実現できる。例えば、キャラクタの髪の毛の揺れ、樹木の枝や葉の揺れ、草の揺れ、吹雪の様子、霧の流れ等をディスプレイ61に表示することによって風を可視化できる。風よって生ずる音の再生は、風切音、吹雪の風、樹木の葉が揺れる音の再生を例示できる。 Visualization of the wind can be realized by displaying the movement of objects (including characters) on the screen (display 61). For example, the wind can be visualized by displaying on the display 61 the swaying of a character's hair, the swaying of tree branches and leaves, the swaying of grass, the appearance of a blizzard, the flow of fog, and the like. Examples of the reproduction of sounds caused by the wind include wind noise, the wind of a blizzard, and the reproduction of the sound of swaying tree leaves.

決定部563は、風発生パラメータを求めるために、遮蔽率と閾値を比較する。決定部563は、遮蔽率が閾値以下の場合に風を発生させることを意味する風発生パラメータを生成する。決定部563は、遮蔽率が閾値よりも大きい場合には、風を発生させないことを意味する風発生パラメータを生成する。 The determining unit 563 compares the shielding rate with the threshold value in order to obtain the wind generation parameter. The determining unit 563 generates a wind generation parameter that means that wind is generated when the shielding rate is less than or equal to a threshold value. The determining unit 563 generates a wind generation parameter that means that no wind is generated when the shielding rate is larger than the threshold value.

この閾値は、ゲームプログラムの開発者が任意に定めてよい。また、閾値は、ゲームプログラムの動作中に動的に変化させてもよい。 This threshold value may be arbitrarily determined by the game program developer. Further, the threshold value may be dynamically changed during operation of the game program.

決定部563は、風発生パラメータを半導体メモリに保存する。半導体メモリに保存される風発生パラメータは、ブリックV1を特定する情報(例えばブリックV1のID番号)をクエリに用いて検索できるようにデータ形式が定められている。 The determining unit 563 stores the wind generation parameters in a semiconductor memory. The data format of the wind generation parameters stored in the semiconductor memory is determined so that they can be searched using information that specifies the brick V1 (for example, the ID number of the brick V1) as a query.

-風発生部564-
風発生部564は、仮想空間において風を発生させる。具体的に、風発生部564は、ゲームの実行中に、プレイヤキャラクタの移動(換言すると算出範囲の移動)に応じて、算出範囲について流体シミュレーションを行なう。つまり、風発生部564は、風に関わる特性を算出する。
-Wind generating part 564-
The wind generator 564 generates wind in virtual space. Specifically, the wind generation unit 564 performs fluid simulation for the calculation range in response to the movement of the player character (in other words, movement of the calculation range) during execution of the game. In other words, the wind generation unit 564 calculates characteristics related to wind.

風発生部564は、流体シミュレーションの実施に際して、流体シミュレーション用パラメータを設定する。流体シミュレーション用パラメータとしては、仮想空間全体に吹く風(広域風)を規定する条件、仮想空間に満たされた仮想の気体の物性値、圧力値等を例示できる。仮想の気体の物性値としては、例えば空気の物性値を採用することができる。 The wind generator 564 sets parameters for fluid simulation when performing fluid simulation. Examples of fluid simulation parameters include conditions that define the wind that blows in the entire virtual space (wide-area wind), physical property values and pressure values of virtual gas that fills the virtual space. As the physical property value of the virtual gas, for example, the physical property value of air can be adopted.

風発生部564は、それぞれの第1体積要素V1に対応した風発生パラメータに基づいて、仮想空間に満たされた仮想の気体について流体シミュレーションを実施する(風発生ステップ)。 The wind generation unit 564 performs a fluid simulation for 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).

まず、風発生部564は、流体シミュレーション用パラメータの設定に際して、ブリックV1毎に対応する風発生パラメータを確認する。風発生部564は、確認した風発生パラメータに応じて、以下のように流体シミュレーション用パラメータを設定する。 First, when setting the fluid simulation parameters, the wind generation unit 564 checks the wind generation parameters corresponding to each brick V1. The wind generation unit 564 sets fluid simulation parameters as follows according to the confirmed wind generation parameters.

(1)風発生パラメータが風を発生させることを意味している場合
風発生部564は、風発生パラメータが対応するブリックV1の位置(以下、着目位置)において新たな風が発生するように、流体シミュレーション用パラメータを設定する。
(1) When the wind generation parameter means to generate wind The wind generation unit 564 generates a new wind at the position of the brick V1 (hereinafter referred to as the position of interest) corresponding to the wind generation parameter. Set parameters for fluid simulation.

(2)風発生パラメータが風を発生さないことを意味している場合
風発生部564は、着目位置において新たな風が発生しないように、流体シミュレーション用パラメータを設定する。
(2) When the wind generation parameter means that no wind is generated The wind generation unit 564 sets the fluid simulation parameters so that no new wind is generated at the position of interest.

なお、流体シミュレーションにおいて「風が発生する」とは、算出された風に関わる特性が風の存在を意味することである。例えば、風速が所定値以上の場合に「風が発生する」と言ってよい。また、流体シミュレーションの結果において「風が発生しない」とは、算出された風に関わる特性が風の不存在を意味することである。例えば、風速が所定値よりも小さい場合に「風が発生しない」と言ってよい。 Note that in the fluid simulation, "wind occurs" means that the calculated wind-related characteristics indicate the presence of wind. For example, it may be said that "wind occurs" when the wind speed is equal to or higher than a predetermined value. Furthermore, in the fluid simulation results, "no wind occurs" means that the calculated wind-related characteristics are the absence of wind. For example, if the wind speed is lower than a predetermined value, it may be said that "no wind is generated."

風発生部564は、設定した流体シミュレーション用パラメータを用いて、仮想の気体についての流体シミュレーションを行なう。その結果として、仮想空間VS内における風に関わる特性(例えば、風速)が算出される。風発生部564は、流体シミュレーションの結果を表示部565および音響処理部566に出力する。 The wind generation unit 564 performs a fluid simulation for virtual gas using the set fluid simulation parameters. As a result, characteristics related to wind (for example, wind speed) in the virtual space VS are calculated. The wind generating section 564 outputs the results of the fluid simulation to the display section 565 and the sound processing section 566.

-表示部565-
表示部565は、流体シミュレーション結果に応じて、仮想空間における風の可視化を行なう。換言すると、表示部565は、仮想空間において風を発生させる。例えば、表示部565は、流体シミュレーション結果(例えば風速)に応じて、プレイヤキャラクタの髪の毛がなびいたり、草原の草や樹木の葉が揺れたりする動画像データ(ゲーム画像情報)を生成する。
-Display section 565-
The display unit 565 visualizes the 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) in which the hair of the player character is fluttering, or the grass and leaves of trees in a meadow are swaying, depending on the fluid simulation result (for example, wind speed).

表示部565は、生成した動画像データをグラフィック処理部52に出力する。グラフィック処理部52は、動画像データを動画形式でディスプレイ61に描画する。 The display unit 565 outputs the generated moving image data to the graphic processing unit 52. The graphic processing unit 52 draws the moving image data on the display 61 in moving image format.

-音響処理部566-
このゲームプログラムでは、種々の音声データが予め用意されている。音響処理部566は、ゲームの進行に応じて、音声データを再生する。具体的に音響処理部566は、ゲームの進行に応じて音声データを選択し、選択した音声データをオーディオ処理部53に出力する。
-Sound processing section 566-
In this game program, various audio data are prepared in advance. The audio processing unit 566 reproduces audio data according to the progress of the game. Specifically, the audio processing unit 566 selects audio data according to the progress of the game, and outputs the selected audio data to the audio processing unit 53.

音響処理部566は、音声データを出力する際に、オーディオ処理部53に、その音量を指示する。オーディオ処理部53は、音響処理部566が出力した音声データを、指示された音量のアナログ信号に変換し、スピーカ62に出力する。 When outputting audio data, the audio processing unit 566 instructs the audio processing unit 53 about the volume. The audio processing section 53 converts the audio data outputted by the acoustic processing section 566 into an analog signal of a specified volume, and outputs it to the speaker 62.

音響処理部566は、音声の再生において音像定位を行う。音響処理部566は、音像定位を行うために、音声が聴取される仮想の受音点(以下、仮想マイクL)を仮想空間に設定する。この例では仮想マイクLは、プレイヤキャラクタの近傍に設定されている。仮想マイクLは、指向性を有する。仮想マイクLは、プレイヤキャラクタの移動にともなって移動する。仮想マイクLの方向は、仮想カメラCの方向と連動している。 The sound processing unit 566 performs sound image localization during audio reproduction. The acoustic processing unit 566 sets a virtual sound receiving point (hereinafter referred to as virtual microphone L) in the virtual space where the sound is heard in order to perform sound image localization. In this example, the virtual microphone L is set near the player character. The virtual microphone L has directivity. The virtual microphone L moves as the player character moves. The direction of the virtual microphone L is linked to the direction of the virtual camera C.

このゲームプログラムでは、仮想空間内に存在する仮想音源から音声が発せられたように、音響的な演出が行われる。音響処理部566は、仮想の音源(プレイヤキャラクタが所持する武器など)から発せられた音声を、あたかも仮想マイクLで集音したかのような音響表現で、スピーカ62に出力する。仮想マイクLは、仮想の聴取者であり、音響処理部566による音像定位の基準点である。 In this game program, an acoustic presentation is performed so that the sound appears to be emitted from a virtual sound source existing in a virtual space. The sound processing unit 566 outputs the sound emitted from a virtual sound source (such as a weapon owned by the player character) to the speaker 62 in an acoustic representation as if the sound was collected by the virtual microphone L. The virtual microphone L is a virtual listener and is a reference point for sound image localization by the acoustic processing unit 566.

音響処理部566は、流体シミュレーション結果に応じて、仮想空間における風を音響効果によって表現する。換言すると、音響処理部566は、仮想空間において風を発生させる。例えば、音響処理部566は、流体シミュレーションによって算出された風速、風向に応じて、風切音、樹木の葉が揺れる音等を表す音声データを生成する。 The sound processing unit 566 expresses the wind in the virtual space using sound effects according to the fluid simulation results. 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 wind noise, the sound of swaying tree leaves, etc., depending on the wind speed and wind direction calculated by the fluid simulation.

音響処理部566は、風速に応じて、、音響処理の内容を変更する。例えば、音響処理部566は、風速に応じて、風にかかる音の音量を制御する。 The sound processing unit 566 changes the content of the sound processing depending on the wind speed. For example, the sound processing unit 566 controls the volume of wind sound depending on the wind speed.

音響処理部566は、風向と仮想マイクLの向き(仮想カメラCの向き)との関係に応じて、音響処理の内容を変更する。例えば、仮想マイクLの位置において、仮想マイクLの後方からその前方に向かって風が吹くことが、シミュレーションによって算出されたとする。換言すると、仮想カメラCの後方からその前方に向かって風が吹くことになる。 The acoustic processing unit 566 changes the content of the acoustic processing according to the relationship between the wind direction and the direction of the virtual microphone L (orientation of the virtual camera C). For example, suppose that it is calculated by simulation that at the position of the virtual microphone L, the wind blows from behind the virtual microphone L toward the front thereof. In other words, the wind blows from behind the virtual camera C toward the front.

この場合、音響処理部566は、風の音が、こもった音として聞こえるように処理を行なう。具体的には、音響処理部566は、風の音声データをローパスフィルターで処理する。 In this case, the sound processing unit 566 performs processing so that the sound of the wind is heard as a muffled sound. Specifically, the acoustic processing unit 566 processes the wind audio data using a low-pass filter.

例えば、仮想マイクLの位置において、仮想マイクLの右側から左側に向かって風が吹くことが、シミュレーションによって算出されたとする。この場合、音響処理部566は、左側の音(左側のスピーカ62の音)は、右側の音(右側のスピーカ62の音)よりも音量を下げる。 For example, assume that it has been calculated by simulation that the wind blows from the right side of the virtual microphone L toward the left side at the position of the virtual microphone L. In this case, the sound processing unit 566 lowers the volume of the sound on the left side (the sound from the left speaker 62) than the sound on the right side (the sound from the right speaker 62).

その他にも、音響処理部566は、シミュレーション結果(風速、風向)に応じて、風にかかる音のピッチを変更する場合もある。 In addition, 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).

音響処理部566は、生成した音声データをオーディオ処理部53に出力する。オーディオ処理部53は、音響処理部566が出力した音声データをアナログ信号に変換し、スピーカ62に出力する。 The audio processing unit 566 outputs the generated audio data to the audio processing unit 53. The audio processing section 53 converts the audio data output by the acoustic processing section 566 into an analog signal and outputs it to the speaker 62.

《動作例》
ゲームが開始されると、ゲーム進行部561は、ユーザ(ここではゲームのプレイヤ)のコントローラ63の操作に応じて、プレイヤキャラクタを仮想空間VS内で動作させる。ゲーム進行部561は、必要に応じてノンプレイヤキャラクタ等のオブジェクトも仮想空間内で動作させる。
《Operation example》
When the game starts, the game progression unit 561 causes the player character to move within the virtual space VS in response to the operation of the controller 63 by the user (here, the game player). The game progression unit 561 also causes objects such as non-player characters to operate in the virtual space as necessary.

算出部562は、例えば、仮想空間VSの表示範囲について、ブリックV1およびセルV2を配置する。算出部562は、それぞれのブリックV1について、遮蔽率を計算する。 For example, the calculation unit 562 arranges the brick V1 and the cell V2 in the display range of the virtual space VS. The calculation unit 562 calculates the shielding rate for each brick V1.

決定部563は、算出部562が計算した遮蔽率に対応する風発生パラメータを求める。決定部563は、算出した風発生パラメータを半導体メモリに保存する。 The determining unit 563 determines a wind generation parameter corresponding to the shielding rate calculated by the calculating unit 562. The determining unit 563 stores the calculated wind generation parameters in a semiconductor memory.

風発生部564は、算出された風発生パラメータに基づいて、流体シミュレーション用パラメータを設定する。風発生部564は、設定した流体シミュレーション用パラメータに基づいて、流体シミュレーションを実施する。風発生部564は、流体シミュレーションの結果を表示部565、音響処理部566に出力する。 The wind generation unit 564 sets fluid simulation parameters based on the calculated wind generation parameters. The wind generator 564 performs fluid simulation based on the set fluid simulation parameters. The wind generation section 564 outputs the results of the fluid simulation to the display section 565 and the sound processing section 566.

表示部565は、流体シミュレーションの結果に応じて、例えば、草原の草や樹木の葉が揺れる動画像データ(ゲーム画像情報)を生成する。表示部565は、生成した動画像データをグラフィック処理部52に出力する。これにより、ディスプレイ61には、風で揺れる草や葉が表示される。 The display unit 565 generates moving image data (game image information) in which, for example, grass in a meadow or leaves of trees shake, according to the result of the fluid simulation. The display unit 565 outputs the generated moving image data to the graphic processing unit 52. As a result, grass and leaves swaying in the wind are displayed on the display 61.

音響処理部566は、流体シミュレーションによって算出された風速、風向に応じて、例えば樹木の葉が揺れる音を表す音声データを生成する。音響処理部566は、生成した音声データをオーディオ処理部53に出力する。これにより、スピーカ62からは、風で揺れる葉の音が再生される。 The sound processing unit 566 generates audio data representing, for example, the sound of swaying tree leaves, depending on the wind speed and wind direction calculated by the fluid simulation. The audio 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 swaying in the wind.

このゲームプログラムではシミュレーション結果を利用して音声の再生が行なわれるので、その音声と動画像はリンクしている。換言すると、画像の動きと音声との違和感がない。 This game program uses simulation results to play back audio, so the audio and moving images are linked. In other words, there is no sense of incongruity between the movement of the image and the sound.

以上をまとめると、本件態様は、コンピュータ(制御部56)を、仮想空間内のオブジェクトが前記仮想空間内における仮想の風を遮蔽する程度である遮蔽率を、前記仮想空間内の所定範囲において求める算出部562と、前記遮蔽率が算出された前記所定範囲について、前記遮蔽率に基づいて、前記仮想の風を新たに発生させるか否かを示す風発生パラメータを求める決定部563と、前記風発生パラメータに基づいて、前記仮想空間における風のシミュレーションを実施する風発生部564として機能させるプログラムである。 To summarize the above, the present aspect causes the computer (control unit 56) to determine the shielding rate, which is the extent to which an object in the virtual space blocks the virtual wind in the virtual space, in a predetermined range in the virtual space. a calculation unit 562; a determining unit 563 that calculates a wind generation parameter indicating whether or not to newly generate the virtual wind based on the shielding rate for the predetermined range in which the shielding rate has been calculated; This is a program that functions as a wind generation unit 564 that simulates wind in the virtual space based on generation parameters.

《本実施形態の効果》
本プログラムでは、遮蔽率という概念を導入している。遮蔽率は、ゲーム中(ゲームプログラムの実行中)にリアルタイムに算出される。遮蔽率は、仮想空間の所定箇所における仮想の風を、遮蔽する程度を示している。本プログラムでは、遮蔽率が閾値よりも大きい箇所(風を遮蔽しやすい箇所)では新たな風を発生させない。本プログラムでは、遮蔽率が閾値よりも小さい箇所では新たな風を発生させる。
《Effects of this embodiment》
This program introduces the concept of shielding rate. The shielding rate is calculated in real time during the game (while the game program is being executed). The shielding rate indicates the extent to which virtual wind is shielded at a predetermined location in the virtual space. This program does not generate new wind in locations where the shielding rate is greater than the threshold (locations where wind is likely to be shielded). This program generates new wind at locations where the shielding rate is lower than the threshold.

遮蔽率という概念を導入したことによって、本プログラムでは、仮想空間において、自然な風の演出ができる。例えば、本プログラムでは、遮蔽率に応じて風を発生させることによって、壁から不自然な風が発生するのを抑制できる。本プログラムでは、遮蔽率に応じて風を発生させることによって、複雑な地形における風(例えば隙間風)が広域風によって消失(上書き)しないようにできる。本プログラムでは、遮蔽率と比較する閾値を調整すれば、所定範囲における風を強調することができる。 By introducing the concept of occlusion rate, this program can create a natural wind effect in virtual space. For example, with this program, by generating wind according to the shielding rate, it is possible to suppress unnatural wind from being generated from walls. By generating wind according to the shielding rate, this program can prevent wind (for example, drafts) in complex terrain from disappearing (overwriting) by wide-area winds. With this program, by adjusting the threshold value for comparison with the occlusion rate, it is possible to emphasize the wind in a predetermined range.

また、本プログラムでは、音声と動画像とがリンクする。そのため、本プログラムでは、画像の動きと音声との違和感がない。 Additionally, in this program, audio and moving images are linked. Therefore, in this program, there is no sense of incongruity between the movement of images and the sound.

以上の通り、本プログラムでは、仮想空間において、自然な風の演出をリアルタイムに行なうことができる。 As mentioned above, this program can produce natural wind effects in real time in virtual space.

風の演出をリアルタイムに行えると、風を表現するデータ(風速、風向など)を事前に準備してユーザに配布する必要がない。換言すると、本プログラムでは、ユーザに配布するデータ容量が少なくて済む。 If wind effects can be performed in real time, there is no need to prepare and distribute data representing wind (wind speed, wind direction, etc.) to users in advance. In other words, this program requires less data volume to be distributed to users.

[その他の実施形態]
仮想空間の用途は、ゲームには限定されない。仮想空間の管理者(本プログラムのユーザと言ってよい)は、仮想空間を介して種々のサービス(例えばいわゆるメタバースとしての利用)の提供等を行なうことができる。
[Other embodiments]
The use of the virtual space is not limited to games. The administrator of the virtual space (which may be called the user of this program) can provide various services through the virtual space (for example, use as a so-called metaverse).

本プログラムの仕組み(新たな風発生要否を決定する仕組み)の用途は、仮想空間のユーザ(ここでは仮想空間でサービスを受ける者)が使用するプログラム(例えばゲームプログラム)には限定されない。例えば、本プログラムの仕組みは、ゲーム開発時に使用するゲーム開発ツールとして利用できる。 The use of the mechanism of this program (the mechanism for determining whether or not new wind generation is necessary) is not limited to programs (for example, game programs) used by users of the virtual space (here, those receiving services in the virtual space). For example, the structure of this program can be used as a game development tool used when developing games.

ゲーム開発ツールにおいては、本プログラムのユーザである開発者(プログラマ、アーティスト等)は、風に関する事前準備の作業が容易になる。事前準備とは、例えば、風を表現するデータの準備、流体シミュレーションの実施等である。事前準備が容易になれば、開発工程の繰り返し(いわゆるイテレーション)に要するコストを削減することが可能になる。 In the game development tool, developers (programmers, artists, etc.) who are users of this program can easily perform advance preparation work regarding wind. Preparation includes, for example, preparing data representing wind, performing fluid simulation, etc. If advance preparation becomes easier, it becomes possible to reduce the cost required for repeating the development process (so-called iteration).

ブリックやセルは、本プログラムの用途によっては可視化してもよい。例えば、ゲーム開発ツールとして本プログラムを実装する場合は、ブリック、セルを可視化することでユーザ(アーティスト等)の利便性が向上する。 Bricks and cells may be visualized depending on the use of this program. For example, when implementing this program as a game development tool, visualizing bricks and cells improves convenience for users (artists, etc.).

遮蔽率の算出範囲は、上述した表示範囲には限定されない。表示範囲をある程度拡張した領域を算出範囲としてもよいし、表示範囲よりも狭い範囲を算出範囲としてもよい。また、ディスプレイ61に表示されていない領域(例えばプレイヤキャラクタの移動先として想定される領域)を算出範囲として設定してもよい。 The calculation range of the shielding rate is not limited to the display range described above. The calculation range may be an area obtained by expanding the display range to some extent, or may be a range narrower than the display range. Further, an area that is not displayed on the display 61 (for example, an area where the player character is expected to move) may be set as the calculation range.

ゲーム開発ツールにおいては、遮蔽率ないし風発生パラメータは、アーティスト等が手動で仮想空間に埋め込めるようにしてもよい。アーティスト等が、コンピュータ(制御部56)が算出した遮蔽率にバイアスを付与できる仕組みを設けてもよい。 In a game development tool, the shielding rate or wind generation parameter may be manually embedded into the virtual space by an artist or the like. A mechanism may be provided in which an artist or the like can apply a bias to the shielding rate calculated by the computer (control unit 56).

実施形態で説明した遮蔽率の算出法は、例示である。例えば、第1体積要素が含み得る第2体積要素の最大数と、実際に第1体積要素V1に含まれている第2体積要素V2の数との比率を遮蔽率としてもよい。 The method of calculating the shielding rate described in the embodiment is an example. For example, the shielding rate may be a ratio between the maximum number of second volume elements that can be included in the first volume element and the number of second volume elements V2 that are actually included in the first volume element V1.

遮蔽率の値とその意味(風発生の要否)との対応関係は、例示である。例えば、前記実施形態とは逆に、遮蔽率が閾値よりも大きい場合に新たに風を発生させ、遮蔽率が閾値よりも小さい場合に新たに風を発生させないように、遮蔽率の算出法を定義してもよい。そのような定義としては、例えば、第1体積要素V1に含まれている第2体積要素V2の数の逆数を遮蔽率とすることが考えられる。 The correspondence between the value of the shielding rate and its meaning (necessity of wind generation) is an example. For example, contrary to the embodiment described above, the method for calculating the shielding rate may be changed so that a new wind is generated when the shielding rate is larger than the threshold value, and no new wind is generated when the shielding ratio is smaller than the threshold value. May be defined. As such a definition, for example, the shielding rate may be the reciprocal of the number of second volume elements V2 included in the first volume element V1.

本プログラムによる処理は、ユーザ用装置(例えばゲーム装置5)が接続されたサーバ装置で行ってもよいし、ユーザ用装置とサーバ装置とで分担してもよい。この形態は、オンラインゲーム用のゲームプログラムや、上述のメタバース用のプログラムとして本プログラムを実装する場合に想定される形態である。 Processing by this program may be performed by a server device to which a user device (for example, game device 5) is connected, or may be shared between the user device and the server device. This form is a form assumed when this program is implemented as a game program for an online game or a program for the above-mentioned metaverse.

音声データは、必ずしも予め用意しておく必要はない。何らかのデータ(例えばノイズ)、ないしは情報を基に、その都度、合成したり生成したりしてもよい。 The audio data does not necessarily need to be prepared in advance. They may be synthesized or generated each time based on some data (for example, noise) or information.

これらの他の実施形態を採用した場合においても、本態様の作用効果は発揮される。また、本実施形態と他の実施形態、および他の実施形態同士を適宜組み合わせることも可能である。 Even when these other embodiments are adopted, the effects of this aspect can be achieved. Moreover, it is also possible to combine this embodiment with other embodiments, or with other embodiments, as appropriate.

5 ゲーム装置(仮想空間生成装置)
55 記憶部
56 制御部(コンピュータ)
561 ゲーム進行部
562 算出部
563 決定部
564 風発生部
566 音響処理部
OBJ オブジェクト
V1 ブリック(第1体積要素)
V2 セル(第2体積要素)
VS 仮想空間
5 Game device (virtual space generation device)
55 Storage section
56 Control unit (computer)
561 Game progress department
562 Calculation part
563 Decision section
564 Wind generator
566 Sound processing section
OBJ object
V1 brick (first volume element)
V2 cell (second volume element)
VS virtual space

Claims (8)

コンピュータを、
仮想空間内のオブジェクトが前記仮想空間内における仮想の風を遮蔽する程度である遮蔽率を、前記仮想空間内の所定範囲において求める算出部と、
前記遮蔽率が算出された前記所定範囲について、前記遮蔽率に基づいて、前記仮想の風を新たに発生させるか否かを示す風発生パラメータを求める決定部と、
前記風発生パラメータに基づいて、前記仮想空間における風のシミュレーションを実施する風発生部
として機能させるプログラム。
computer,
a calculation unit that calculates a shielding rate, which is the extent to which an object in the virtual space blocks virtual wind in the virtual space, in a predetermined range in the virtual space;
a determining unit that calculates a wind generation parameter indicating whether or not to newly generate the virtual wind based on the shielding rate for the predetermined range in which the shielding rate has been calculated;
A program that functions as a wind generation unit that performs a wind simulation in the virtual space based on the wind generation parameters.
請求項1のプログラムにおいて、
前記決定部は、前記所定範囲の周辺の所定領域について前記風発生パラメータを求める
プログラム。
In the program of claim 1,
The determining unit determines the wind generation parameter for a predetermined area around the predetermined range.
請求項1または請求項2のプログラムにおいて、
前記算出部は、前記所定範囲を前記オブジェクトの形状に基づいて定める
プログラム。
In the program of claim 1 or claim 2,
The calculation unit determines the predetermined range based on the shape of the object.
請求項3のプログラムにおいて、
前記算出部は、
前記オブジェクトを複数の第1体積要素で離散化して表し、
それぞれの第1体積要素内に包含される前記オブジェクトの部位を、前記第1体積要素よりも小さな体積の第2体積要素で離散化して表した場合の、
前記第1体積要素に含まれる前記第2体積要素の数を、その第1体積要素における前記遮蔽率として求める
プログラム。
In the program of claim 3,
The calculation unit is
The object is discretized and represented by a plurality of first volume elements,
When the part of the object included in each first volume element is discretized and represented by a second volume element having a smaller volume than the first volume element,
A program that calculates the number of the second volume elements included in the first volume element as the shielding rate of the first volume element.
請求項1または請求項2のプログラムにおいて、
ユーザの操作に基づいて前記仮想空間内でゲームを進行させるゲーム進行部として前記コンピュータを機能させる
プログラム。
In the program of claim 1 or claim 2,
A program that causes the computer to function as a game progression unit that advances a game in the virtual space based on user operations.
請求項1または請求項2のプログラムにおいて、
前記シミュレーションの結果に基づいて、前記風に基づく音を再生する音響処理部として前記コンピュータを機能させるプログラム。
In the program of claim 1 or claim 2,
A program that causes the computer to function as a sound processing unit that reproduces sound based on the wind based on a result of the simulation.
請求項1または請求項2のプログラムを記憶した記憶部と、
前記プログラムを実行する制御部と、
を備えた仮想空間生成装置。
A storage unit storing the program according to claim 1 or claim 2;
a control unit that executes the program;
A virtual space generation device equipped with
コンピュータによって、
仮想空間内のオブジェクトが前記仮想空間内における仮想の風を遮蔽する程度である遮蔽率を、前記仮想空間内の所定範囲において求める算出ステップと、
前記遮蔽率が算出された前記所定範囲について、前記遮蔽率に基づいて、前記仮想の風を新たに発生させるか否かを示す風発生パラメータを求める決定ステップと、
前記風発生パラメータに基づいて、前記仮想空間における風のシミュレーションを実施する風発生ステップ
とを実行する仮想空間生成方法。
by computer,
calculating a shielding rate, which is the extent to which an object in the virtual space blocks virtual wind in the virtual space, in a predetermined range in the virtual space;
a determining step of determining a wind generation parameter indicating whether or not to newly generate the virtual wind based on the shielding rate for the predetermined range in which the shielding rate has been calculated;
A virtual space generation method that performs a wind generation step of performing a wind simulation in the virtual space based on the wind generation parameters.
JP2022146114A 2022-09-14 2022-09-14 Program, virtual space generation device, and virtual space generation method Active JP7733312B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2022146114A JP7733312B2 (en) 2022-09-14 2022-09-14 Program, virtual space generation device, and virtual space generation method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2022146114A JP7733312B2 (en) 2022-09-14 2022-09-14 Program, virtual space generation device, and virtual space generation method

Publications (2)

Publication Number Publication Date
JP2024041355A true JP2024041355A (en) 2024-03-27
JP7733312B2 JP7733312B2 (en) 2025-09-03

Family

ID=90417032

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022146114A Active JP7733312B2 (en) 2022-09-14 2022-09-14 Program, virtual space generation device, and virtual space generation method

Country Status (1)

Country Link
JP (1) JP7733312B2 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008272296A (en) * 2007-05-01 2008-11-13 Taito Corp Video display device and video display program
JP2018110719A (en) * 2017-01-12 2018-07-19 株式会社コナミデジタルエンタテインメント Game device and program
US20180330546A1 (en) * 2017-05-09 2018-11-15 Microsoft Technology Licensing, Llc Wind rendering for virtual reality computing device
WO2021241431A1 (en) * 2020-05-29 2021-12-02 ソニーグループ株式会社 Information processing device, information processing method, and computer-readable recording medium

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008272296A (en) * 2007-05-01 2008-11-13 Taito Corp Video display device and video display program
JP2018110719A (en) * 2017-01-12 2018-07-19 株式会社コナミデジタルエンタテインメント Game device and program
US20180330546A1 (en) * 2017-05-09 2018-11-15 Microsoft Technology Licensing, Llc Wind rendering for virtual reality computing device
WO2021241431A1 (en) * 2020-05-29 2021-12-02 ソニーグループ株式会社 Information processing device, information processing method, and computer-readable recording medium

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
"ゲーム最高峰のビジュアルクオリティを生み出すNaughty Dogの開発手法[GDC2017レポート Vol.4]", CGWORLD.JP [ONLINE], JPN6025019692, 27 April 2017 (2017-04-27), ISSN: 0005596886 *
"流体シミュレーションの応用", GDEP SOLUTIONS, JPN6025019691, 3 August 2020 (2020-08-03), ISSN: 0005596887 *
VANESSA ROJAS: "Real time wind simulation in a 3D game", LINKOPING UNIVERSITY EXAMENSARBETE [ONLINE], JPN6025019693, 18 June 2021 (2021-06-18), pages 1 - 13, ISSN: 0005596885 *

Also Published As

Publication number Publication date
JP7733312B2 (en) 2025-09-03

Similar Documents

Publication Publication Date Title
JP7758953B2 (en) Virtual space generation program and virtual space generation device
US6760050B1 (en) Virtual three-dimensional sound pattern generator and method and medium thereof
JP6863936B2 (en) Speech generator in virtual space, quadtree generation method, and speech generator
KR20200003022A (en) Role play simulation method and terminal device in VR scenario
US20050182608A1 (en) Audio effect rendering based on graphic polygons
JP2020031303A (en) Voice generating program and voice generating apparatus in virtual space
JP6427212B2 (en) Game program and game apparatus
JP3827693B2 (en) GAME DEVICE, GAME DEVICE CONTROL METHOD, AND PROGRAM
JP7733312B2 (en) Program, virtual space generation device, and virtual space generation method
JP6343048B1 (en) GAME PROGRAM AND GAME DEVICE
JP7071649B2 (en) Voice control program and voice control device
JP7758956B2 (en) Program, virtual space generation device, and virtual space generation method
JP6740297B2 (en) Game program and game device
CN114288656B (en) Virtual sound source object setting method, device, electronic device and medium
JP2020092366A (en) Voice control program and voice control device
JP6737842B2 (en) Game program and game device
JP7795113B2 (en) Game program and game device
JP2023098633A (en) GAME PROGRAM, GAME SYSTEM, GAME DEVICE, AND GAME PROCESSING METHOD
JP6407324B2 (en) GAME PROGRAM AND GAME DEVICE
JP2001346300A (en) Simulated sound generator and method of generating simulated sound
JP7783499B2 (en) Game program and game device
JP2022033546A (en) Audio information generation program, audio reproduction program, and audio reproduction device
JP7773056B2 (en) Game program and game device
JP2019198512A (en) Game program and game device
US20240286038A1 (en) Method And Apparatus Of Dynamic Diegetic Audio Generation

Legal Events

Date Code Title Description
A625 Written request for application examination (by other person)

Free format text: JAPANESE INTERMEDIATE CODE: A625

Effective date: 20240801

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20250516

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20250520

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20250703

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20250722

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20250804

R150 Certificate of patent or registration of utility model

Ref document number: 7733312

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150