JP2011096018A - Program, information storage medium, terminal, and network system - Google Patents

Program, information storage medium, terminal, and network system Download PDF

Info

Publication number
JP2011096018A
JP2011096018A JP2009249542A JP2009249542A JP2011096018A JP 2011096018 A JP2011096018 A JP 2011096018A JP 2009249542 A JP2009249542 A JP 2009249542A JP 2009249542 A JP2009249542 A JP 2009249542A JP 2011096018 A JP2011096018 A JP 2011096018A
Authority
JP
Japan
Prior art keywords
virtual camera
terminal
effect
performs
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
JP2009249542A
Other languages
Japanese (ja)
Other versions
JP5443129B2 (en
Inventor
Koji Yamaguchi
幸司 山口
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.)
Bandai Namco Entertainment Inc
Original Assignee
Namco Bandai Games Inc
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 Namco Bandai Games Inc filed Critical Namco Bandai Games Inc
Priority to JP2009249542A priority Critical patent/JP5443129B2/en
Publication of JP2011096018A publication Critical patent/JP2011096018A/en
Application granted granted Critical
Publication of JP5443129B2 publication Critical patent/JP5443129B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Processing Or Creating Images (AREA)
  • Image Generation (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a program, an information storage medium, a terminal, and a network system capable of improving probability of disposing an effect object within a visual field area of a virtual camera, and capable of producing a natural effect image. <P>SOLUTION: A predetermined position is calculated based on movement information of a mobile body when a predetermined condition for causing an effect to generate within an object space is satisfied, a process is performed for disposing the effect object toward the predetermined position from a position where the effect is generated in the object space, and a process for producing an image which can be viewed from the virtual camera is performed. <P>COPYRIGHT: (C)2011,JPO&INPIT

Description

本発明は、プログラム、情報記憶媒体、端末及びネットワークシステムに関する。   The present invention relates to a program, an information storage medium, a terminal, and a network system.

従来から、オブジェクトが配置設定されるオブジェクト空間(仮想的な3次元空間)内において仮想カメラ(所与の視点)から見える画像を生成する端末(画像生成システム、ゲーム装置、携帯端末など)が知られており、いわゆる仮想現実を体験できるものとして人気が高い。   Conventionally, a terminal (an image generation system, a game device, a portable terminal, etc.) that generates an image that can be seen from a virtual camera (a given viewpoint) in an object space (virtual three-dimensional space) in which an object is set is known. It is popular as a place to experience so-called virtual reality.

例えば、プレーヤが移動体を操作して、ミサイルをターゲットオブジェクトにヒットさせてターゲットオブジェクトを撃墜させるフライトシューティングゲーム処理の場合に、ターゲットオブジェクトの移動可能な範囲を設定する従来技術がある(特許文献1の0009、0059、図3参照)。   For example, in the case of a flight shooting game process in which a player operates a moving body to hit a target object by hitting a missile and shoot down the target object, there is a conventional technique for setting a movable range of the target object (Patent Document 1). 0009, 0059, see FIG.

特許3470822号公報Japanese Patent No. 3470822

従来のフライトシューティングゲーム処理では、ミサイルがターゲットオブジェクトにヒットした場合に、そのヒット位置に爆発、炎、煙などのエフェクトオブジェクトを配置して、エフェクトを表現した3次元画像を生成することが多い。   In conventional flight shooting game processing, when a missile hits a target object, an effect object such as explosion, flame, smoke, etc. is often placed at the hit position to generate a three-dimensional image representing the effect.

しかし、フライトシューティングゲームのように、移動体や仮想カメラがオブジェクト空間を移動する場合には、プレーヤはオブジェクト空間にエフェクトオブジェクトが配置されている状況を視認できないことがある。   However, when a moving object or a virtual camera moves in the object space as in a flight shooting game, the player may not be able to visually recognize the situation where the effect object is arranged in the object space.

例えば、ミサイルを発射時には、仮想カメラの視野範囲内にターゲットオブジェクトがあったとしても、ミサイルがターゲットオブジェクトにヒットしてエフェクトが発生したときには、移動体或いは仮想カメラが移動しているために、仮想カメラの視野範囲外にエフェクトオブジェクトがあり、その仮想カメラから見える画像を生成した場合、エフェクトオブジェクトを描画することができなくなってしまう。   For example, when a missile is launched, even if there is a target object within the field of view of the virtual camera, when the missile hits the target object and an effect occurs, the moving object or virtual camera moves, If there is an effect object outside the field of view of the camera and an image that can be seen from the virtual camera is generated, the effect object cannot be drawn.

また、エフェクト発生位置が仮想カメラの視野範囲外にあるときは、発射したミサイルがターゲットオブジェクトにヒットし、ターゲットオブジェクトが撃墜したか否かという推測すら難しくなってしまう。   In addition, when the effect generation position is outside the visual field range of the virtual camera, it is difficult to guess whether the missile that has been launched hits the target object and the target object has been shot down.

本発明は、上記課題に鑑みたものであり、その目的は、移動体又は仮想カメラが移動する場合においても、エフェクトオブジェクトを仮想カメラの視野範囲内に配置する可能性を高め、自然なエフェクト画像を生成することが可能なプログラム、情報記憶媒体、端末及びネットワークシステムを提供することにある。   The present invention has been made in view of the above problems, and its purpose is to increase the possibility of arranging an effect object within the visual field range of a virtual camera, even when a moving object or a virtual camera moves, and to achieve a natural effect image. It is an object to provide a program, an information storage medium, a terminal, and a network system that can generate the program.

(1)本発明は、オブジェクト空間における仮想カメラから見える画像を生成する処理を行うプログラムであって、前記オブジェクト空間において、入力部の入力情報に基づき移動体を移動させる処理を行う移動処理部と、前記仮想カメラを前記移動体の移動に追従させる制御を行う仮想カメラ制御部と、前記オブジェクト空間内でエフェクトを発生させるための所定条件を満たしたか否かを判断する判断部と、前記所定条件を満たした場合に、前記移動体の移動情報に基づいて、特定位置を算出する処理を行う算出部と、前記オブジェクト空間において、エフェクト発生位置から前記特定位置に向かって、エフェクトオブジェクトを配置する処理を行うエフェクトオブジェクト配置部と、前記仮想カメラから見える画像を生成する処理を行う描画部として、コンピュータを機能させるプログラムに関する。また、本発明は、上記プログラムを記憶した情報記憶媒体、上記各部として構成する端末に関係する。   (1) The present invention is a program for performing processing for generating an image that can be viewed from a virtual camera in an object space, and a movement processing unit that performs processing for moving a moving body based on input information of the input unit in the object space; A virtual camera control unit that controls the virtual camera to follow the movement of the moving body, a determination unit that determines whether a predetermined condition for generating an effect in the object space is satisfied, and the predetermined condition When the above condition is satisfied, a calculation unit that performs a process of calculating a specific position based on movement information of the moving body, and a process of arranging an effect object from the effect occurrence position toward the specific position in the object space And an effect object placement unit that performs the process of generating an image visible from the virtual camera. As the drawing unit, a program that causes a computer to function. The present invention also relates to an information storage medium storing the program and a terminal configured as each unit.

本発明によれば、移動体の移動情報に基づいて算出される特定位置に向かって、エフェクトオブジェクトが配置されるので、エフェクトオブジェクトを視野範囲内に配置させる可能性を高くすることができる。また、エフェクトオブジェクトがエフェクト発生位置から特定位置に向かって配置されるので、プレーヤはエフェクト発生位置を推測することができる。例えば、画面右側から黒煙などのエフェクトが見える場合には、移動体の移動に追従する仮想カメラの右側において、エフェクトが発生したことをプレーヤは推測することができる。   According to the present invention, since the effect object is arranged toward the specific position calculated based on the movement information of the moving body, it is possible to increase the possibility that the effect object is arranged in the visual field range. Further, since the effect object is arranged from the effect generation position toward the specific position, the player can guess the effect generation position. For example, when an effect such as black smoke is visible from the right side of the screen, the player can guess that the effect has occurred on the right side of the virtual camera following the movement of the moving object.

(2)また、本発明のプログラム、情報記憶媒体及び端末は、前記算出部が、前記移動体の移動速度及び移動方向に基づいて、前記特定位置を算出するようにしてもよい。本発明によれば、エフェクトオブジェクトを視野範囲内に配置させる可能性を高くすることができる。   (2) In the program, the information storage medium, and the terminal of the present invention, the calculation unit may calculate the specific position based on a moving speed and a moving direction of the moving body. According to the present invention, it is possible to increase the possibility of arranging the effect object within the visual field range.

(3)また、本発明のプログラム、情報記憶媒体及び端末は、前記算出部が、前記移動体の移動速度及び移動方向に基づいて、所定期間後の前記移動体の位置を推定し、推定された位置を前記特定位置とするようにしてもよい。本発明によれば、エフェクトオブジェクトを視野範囲内に配置させる可能性を高くすることができる。   (3) In the program, the information storage medium, and the terminal of the present invention, the calculation unit estimates and estimates the position of the moving body after a predetermined period based on the moving speed and moving direction of the moving body. The specified position may be set as the specific position. According to the present invention, it is possible to increase the possibility of arranging the effect object within the visual field range.

(4)また、本発明のプログラム、情報記憶媒体及び端末は、前記描画部が、前記オブジェクト空間に存在する複数の移動体のうち、特定の移動体の移動に追従する仮想カメラから見える画像を生成する場合には、前記算出部が、前記特定の移動体の移動情報に基づいて、特定位置を算出する処理を行い、前記エフェクトオブジェクト配置部が、前記特定の移動体の移動情報に基づいて算出された前記特定位置に向かって、エフェクトオブジェクトを配置する処理を行うようにしてもよい。本発明によれば、複数の移動体が存在する場合において特定の移動体の移動に追従する仮想カメラに基づいて画像を生成する場合には、特定の移動体以外の移動体の移動情報に左右されることなく、その特定の移動体の移動情報に基づくエフェクトオブジェクトの配置を行うことができる。   (4) In the program, the information storage medium, and the terminal of the present invention, the drawing unit displays an image that can be seen from a virtual camera that follows the movement of a specific moving body among a plurality of moving bodies existing in the object space. In the case of generating, the calculation unit performs a process of calculating a specific position based on the movement information of the specific moving body, and the effect object placement unit performs the processing based on the movement information of the specific moving body. You may make it perform the process which arrange | positions an effect object toward the calculated said specific position. According to the present invention, when an image is generated based on a virtual camera that follows the movement of a specific moving body when there are a plurality of moving bodies, the movement information of the moving bodies other than the specific moving body depends on the movement information. Instead, the effect object can be arranged based on the movement information of the specific moving object.

(5)また、本発明のプログラム、情報記憶媒体及び端末は、第1の端末のためのプログラム、第1の端末のプログラムを記憶した情報記憶媒体及び第1の端末であって、前記第1の端末が第2の端末とネットワークを介して相互にエフェクト発生情報を含むデータを送受信する処理を行う通信制御部として、コンピュータを更に機能させ、前記第1の端末の判断部が、前記第2の端末から、エフェクト発生情報を受信した場合には、前記所定条件を満たしたと判断する処理を行い、前記第1の端末の算出部が、前記1の端末で移動処理を行う前記移動体の移動情報に基づいて、特定位置を算出する処理を行い、前記第1の端末の前記エフェクトオブジェクト配置部が、前記第1の端末で移動処理を行う前記移動体の移動情報に基づいて算出された前記特定位置に向かって、エフェクトオブジェクトを配置する処理を行い、前記第1の端末の描画部が、前記第1の端末で移動処理を行う前記移動体の移動に追従する仮想カメラから見える画像を生成する処理を行うようにしてもよい。本発明によれば、第1の端末が独立して、特定位置を算出してその特定位置に向かってエフェクトオブジェクトを配置する処理を行うので、第2の端末の処理の影響を受けずにエフェクトオブジェクトを配置することができる。   (5) A program, an information storage medium, and a terminal according to the present invention are a program for a first terminal, an information storage medium storing a program for a first terminal, and a first terminal, wherein the first terminal The terminal further causes the computer to function as a communication control unit that performs processing of transmitting and receiving data including effect generation information to and from the second terminal via the network, and the determination unit of the first terminal includes the second terminal. When the effect occurrence information is received from the terminal, a process for determining that the predetermined condition is satisfied is performed, and the moving unit performs a movement process on the first terminal by the calculation unit of the first terminal Based on the information, a process for calculating a specific position is performed, and the effect object placement unit of the first terminal calculates based on the movement information of the moving body that performs the movement process on the first terminal. The effect object is placed toward the specified position, and the drawing unit of the first terminal can be seen from the virtual camera that follows the movement of the moving body that performs the movement process on the first terminal. You may make it perform the process which produces | generates an image. According to the present invention, since the first terminal independently performs the process of calculating the specific position and arranging the effect object toward the specific position, the effect is not affected by the process of the second terminal. Objects can be placed.

(6)本発明は、オブジェクト空間における仮想カメラから見える画像を生成する処理を行うプログラムであって、前記オブジェクト空間内でエフェクトを発生させるための所定条件を満たしたか否かを判断する判断部と、前記所定条件を満たした場合に、前記仮想カメラの移動情報に基づいて、特定位置を算出する処理を行う算出部と、前記オブジェクト空間において、エフェクト発生位置から特定位置に向かって、エフェクトオブジェクトを配置する処理を行うエフェクトオブジェクト配置部と、前記仮想カメラから見える画像を生成する処理を行う描画部として、コンピュータを機能させるプログラムに関する。また、本発明は、上記プログラムを記憶した情報記憶媒体、上記各部として構成する端末に関係する。   (6) The present invention is a program for performing processing for generating an image that can be viewed from a virtual camera in an object space, and a determination unit that determines whether or not a predetermined condition for generating an effect in the object space is satisfied. A calculation unit that performs processing for calculating a specific position based on movement information of the virtual camera when the predetermined condition is satisfied, and an effect object in the object space from the effect occurrence position toward the specific position. The present invention relates to a program that causes a computer to function as an effect object placement unit that performs a placement process and a drawing unit that performs a process of generating an image visible from the virtual camera. The present invention also relates to an information storage medium storing the program and a terminal configured as each unit.

本発明によれば、仮想カメラの移動情報に基づいて算出される特定位置に向かって、エフェクトオブジェクトが配置されるので、エフェクトオブジェクトを視野範囲内に配置させる可能性を高くすることができる。また、エフェクトオブジェクトがエフェクト発生位置から特定位置に向かって配置されるので、プレーヤはエフェクト発生位置を推測することができる。例えば、画面右側から黒煙などのエフェクトが見える場合には、仮想カメラに対して右側において、エフェクトが発生したことをプレーヤは推測することができる。   According to the present invention, since the effect object is arranged toward the specific position calculated based on the movement information of the virtual camera, it is possible to increase the possibility that the effect object is arranged in the visual field range. Further, since the effect object is arranged from the effect generation position toward the specific position, the player can guess the effect generation position. For example, when an effect such as black smoke is visible from the right side of the screen, the player can guess that the effect has occurred on the right side of the virtual camera.

(7)また、本発明のプログラム、情報記憶媒体及び端末は、前記算出部が、前記仮想カメラの移動速度及び移動方向に基づいて、前記特定位置を算出するようにしてもよい。本発明によれば、エフェクトオブジェクトを視野範囲内に配置させる可能性を高くすることができる。   (7) In the program, the information storage medium, and the terminal of the present invention, the calculation unit may calculate the specific position based on a moving speed and a moving direction of the virtual camera. According to the present invention, it is possible to increase the possibility of arranging the effect object within the visual field range.

(8)また、本発明のプログラム、情報記憶媒体及び端末は、前記算出部が、前記仮想カメラの移動速度及び移動方向に基づいて、所定期間後の前記仮想カメラの位置を推定し、推定された位置を前記特定位置とするようにしてもよい。本発明によれば、エフェクトオブジェクトを視野範囲内に配置させる可能性を高くすることができる。   (8) In the program, the information storage medium, and the terminal of the present invention, the calculation unit estimates and estimates the position of the virtual camera after a predetermined period based on the moving speed and moving direction of the virtual camera. The specified position may be set as the specific position. According to the present invention, it is possible to increase the possibility of arranging the effect object within the visual field range.

(9)また、本発明のプログラム、情報記憶媒体及び端末は、前記描画部が複数の仮想カメラのうち、いずれかの仮想カメラから見える画像を生成する場合には、前記算出部が、前記画像生成で用いられる仮想カメラの移動情報に基づいて、特定位置を算出し、前記エフェクトオブジェクト配置部が、前記画像生成で用いられる仮想カメラの移動情報に基づいて算出された前記特定位置に向かって、エフェクトオブジェクトを配置する処理を行うようにしてもよい。   (9) In the program, the information storage medium, and the terminal according to the present invention, when the drawing unit generates an image that can be seen from any one of a plurality of virtual cameras, the calculation unit Based on the movement information of the virtual camera used in the generation, the specific position is calculated, and the effect object placement unit moves toward the specific position calculated based on the movement information of the virtual camera used in the image generation. You may make it perform the process which arrange | positions an effect object.

本発明によれば、複数の仮想カメラが存在する場合には、画像生成で用いられる仮想カメラの移動情報に基づいて特定位置を算出するので、その仮想カメラの移動情報に基づくエフェクトオブジェクトの配置を行うことができる。   According to the present invention, when there are a plurality of virtual cameras, the specific position is calculated based on the movement information of the virtual camera used for image generation. It can be carried out.

(10)また、本発明のプログラム、情報記憶媒体及び端末は、第1の端末のためのプログラム、第1の端末のためのプログラムを記憶した情報記憶媒体及び第1の端末であって、前記第1の端末が第2の端末とネットワークを介して相互にエフェクト発生情報を含むデータを送受信する処理を行う通信制御部として、コンピュータを更に機能させ、前記第1の端末の判断部が、前記第2の端末から、エフェクト発生情報を受信した場合には、前記所定条件を満たしたと判断する処理を行い、前記第1の端末の算出部が、前記所定条件を満たした場合に、前記1の端末で制御される前記仮想カメラの移動情報に基づいて、特定位置を算出する処理を行い、前記第1の端末の前記エフェクトオブジェクト配置部が、前記1の端末で制御される前記仮想カメラの移動情報に基づいて算出された前記特定位置に向かって、エフェクトオブジェクトを配置する処理を行い、前記第1の端末の描画部が、前記1の端末で制御される前記仮想カメラから見える画像を生成する処理を行うようにしてもよい。本発明によれば、第1の端末が独立して、特定位置を算出してその特定位置に向かってエフェクトオブジェクトを配置する処理を行うので、第2の端末の処理の影響を受けずにエフェクトオブジェクトを配置することができる。   (10) A program, an information storage medium, and a terminal according to the present invention are a program for a first terminal, an information storage medium that stores a program for a first terminal, and the first terminal, The first terminal causes the computer to further function as a communication control unit that performs processing for transmitting and receiving data including effect occurrence information to and from the second terminal via the network, and the determination unit of the first terminal When the effect occurrence information is received from the second terminal, a process for determining that the predetermined condition is satisfied is performed, and when the calculation unit of the first terminal satisfies the predetermined condition, Based on movement information of the virtual camera controlled by the terminal, a process for calculating a specific position is performed, and the effect object placement unit of the first terminal is controlled by the first terminal. The effect object is arranged toward the specific position calculated based on the movement information of the virtual camera, and the drawing unit of the first terminal is seen from the virtual camera controlled by the first terminal You may make it perform the process which produces | generates an image. According to the present invention, since the first terminal independently performs the process of calculating the specific position and arranging the effect object toward the specific position, the effect is not affected by the process of the second terminal. Objects can be placed.

(11)また、本発明は、オブジェクト空間における仮想カメラから見える画像を生成する処理を行う第1の端末と第2の端末とが、ネットワークを介して相互にデータを送受信する処理を行うネットワークシステムであって、各端末が、他の端末とネットワークを介して相互にエフェクト発生情報を含むデータを送受信する処理を行う通信制御部と、前記オブジェクト空間において、入力部の入力情報に基づき移動体を移動させる処理を行う移動処理部と、前記仮想カメラを前記移動体の移動に追従させる制御を行う仮想カメラ制御部と、前記オブジェクト空間内でエフェクトを発生させるための所定条件を満たしたか否かを判断する判断部と、前記所定条件を満たした場合に、前記移動体の移動情報に基づいて、特定位置を算出する処理を行う算出部と、前記オブジェクト空間において、エフェクト発生位置から前記特定位置に向かって、エフェクトオブジェクトを配置する処理を行うエフェクトオブジェクト配置部と、前記仮想カメラから見える画像を生成する処理を行う描画部とを含み、前記第1の端末の判断部が、前記第2の端末から、エフェクト発生情報を受信した場合には、前記所定条件を満たしたと判断する処理を行い、前記第1の端末の算出部が、前記1の端末で移動処理を行う前記移動体の移動情報に基づいて、特定位置を算出する処理を行い、前記第1の端末の前記エフェクトオブジェクト配置部が、前記第1の端末で移動処理を行う前記移動体の移動情報に基づいて算出された前記特定位置に向かって、エフェクトオブジェクトを配置する処理を行い、前記第1の端末の描画部が、前記第1の端末で移動処理を行う前記移動体の移動に追従する仮想カメラから見える画像を生成する処理を行うネットワークシステムに関する。本発明によれば、各端末が独立して、特定位置を算出してその特定位置に向かってエフェクトオブジェクトを配置する処理を行うので、各端末が他の端末の影響を受けずにエフェクトオブジェクトを配置することができる。   (11) Further, the present invention provides a network system in which a first terminal and a second terminal that perform processing for generating an image that can be viewed from a virtual camera in an object space perform processing for transmitting and receiving data to and from each other via a network. A communication control unit that performs processing for each terminal to transmit and receive data including effect occurrence information to and from other terminals via a network; and in the object space, a mobile unit is configured based on input information of the input unit. A movement processing unit for performing movement processing, a virtual camera control unit for controlling the virtual camera to follow the movement of the moving body, and whether or not a predetermined condition for generating an effect in the object space is satisfied. A process for calculating a specific position based on movement information of the moving body when the determination unit satisfies the predetermined condition A calculation unit that performs, an effect object placement unit that performs a process of placing an effect object from the effect generation position toward the specific position in the object space, and a drawing unit that performs a process of generating an image visible from the virtual camera; And when the first terminal determination unit receives the effect occurrence information from the second terminal, the determination unit performs a process of determining that the predetermined condition is satisfied, and the calculation unit of the first terminal Performs a process of calculating a specific position based on movement information of the moving body that performs a movement process on the first terminal, and the effect object placement unit of the first terminal moves on the first terminal. A process of arranging an effect object toward the specific position calculated based on movement information of the moving object to be processed; Rendering unit of the first terminal, a network system that performs processing for generating an image viewed from the virtual camera follows the movement of the moving body for moving processing in the first terminal. According to the present invention, each terminal independently performs a process of calculating a specific position and arranging an effect object toward the specific position, so that each terminal can receive an effect object without being influenced by other terminals. Can be arranged.

(12)また、本発明は、オブジェクト空間における仮想カメラから見える画像を生成する処理を行う第1の端末と第2の端末とが、ネットワークを介して相互にデータを送受信する処理を行うネットワークシステムであって、各端末が、他の端末とネットワークを介して相互にエフェクト発生情報を含むデータを送受信する処理を行う通信制御部と、前記オブジェクト空間内でエフェクトを発生させるための所定条件を満たしたか否かを判断する判断部と、前記所定条件を満たした場合に、前記仮想カメラの移動情報に基づいて、特定位置を算出する処理を行う算出部と、前記オブジェクト空間において、エフェクト発生位置から特定位置に向かって、エフェクトオブジェクトを配置する処理を行うエフェクトオブジェクト配置部と、前記仮想カメラから見える画像を生成する処理を行う描画部とを含み、前記第1の端末の判断部が、前記第2の端末から、エフェクト発生情報を受信した場合には、前記所定条件を満たしたと判断する処理を行い、前記第1の端末の算出部が、前記所定条件を満たした場合に、前記1の端末で制御される前記仮想カメラの移動情報に基づいて、特定位置を算出する処理を行い、前記第1の端末の前記エフェクトオブジェクト配置部が、前記1の端末で制御される前記仮想カメラの移動情報に基づいて算出された前記特定位置に向かって、エフェクトオブジェクトを配置する処理を行い、前記第1の端末の描画部が、前記1の端末で制御される前記仮想カメラから見える画像を生成する処理を行うことをネットワークシステムに関する。本発明によれば、各端末が独立して、特定位置を算出してその特定位置に向かってエフェクトオブジェクトを配置する処理を行うので、各端末が他の端末の影響を受けずにエフェクトオブジェクトを配置することができる。   (12) The present invention also provides a network system in which a first terminal and a second terminal that perform processing for generating an image viewed from a virtual camera in an object space perform processing for transmitting and receiving data to and from each other via a network. Each terminal satisfies a predetermined condition for generating an effect in the object space, and a communication control unit that performs processing for transmitting / receiving data including effect generation information to / from other terminals via a network. A determination unit that determines whether or not, a calculation unit that performs a process of calculating a specific position based on movement information of the virtual camera when the predetermined condition is satisfied, and an effect occurrence position in the object space. An effect object placement unit that performs a process of placing an effect object toward a specific position; A drawing unit that performs processing for generating an image that can be viewed from a virtual camera, and the determination unit of the first terminal satisfies the predetermined condition when receiving the effect occurrence information from the second terminal A process of determining, and when the calculation unit of the first terminal satisfies the predetermined condition, a process of calculating a specific position based on movement information of the virtual camera controlled by the first terminal The effect object placement unit of the first terminal performs a process of placing the effect object toward the specific position calculated based on movement information of the virtual camera controlled by the first terminal. In addition, the present invention relates to a network system in which a drawing unit of the first terminal performs a process of generating an image visible from the virtual camera controlled by the first terminal. According to the present invention, each terminal independently performs a process of calculating a specific position and arranging an effect object toward the specific position, so that each terminal can receive an effect object without being influenced by other terminals. Can be arranged.

図1は、本実施形態の端末の構成の一例である。FIG. 1 is an example of a configuration of a terminal according to the present embodiment. 図2は、オブジェクトデータの説明図。FIG. 2 is an explanatory diagram of object data. 図3(A)〜(C)は、仮想カメラ制御の説明図。3A to 3C are explanatory diagrams of virtual camera control. 図4は、スケーリング対象のオブジェクトと、スケーリング対象外のオブジェクトをワールド座標系に配置する例。FIG. 4 shows an example in which objects to be scaled and objects not to be scaled are arranged in the world coordinate system. 図5は、本実施形態において倍率を算出する手法を説明するための図。FIG. 5 is a diagram for explaining a method of calculating a magnification in the present embodiment. 図6(A)は、スケーリング処理を行わずに画像を生成する例。FIG. 6A shows an example of generating an image without performing scaling processing. 図6(B)は、スケーリング処理を行って画像を生成する例。FIG. 6B shows an example of generating an image by performing scaling processing. 図7(A)は、スケーリング処理を行わずに画像を生成する例。FIG. 7A illustrates an example in which an image is generated without performing scaling processing. 図7(B)は、スケーリング処理を行って画像を生成する例。FIG. 7B shows an example of generating an image by performing scaling processing. 図8(A)(B)は、倍率が変化する値域を説明するための図。FIGS. 8A and 8B are diagrams for explaining a range in which the magnification changes. 図9は、遠近感に矛盾が生じる場合を説明するための図。FIG. 9 is a diagram for explaining a case where contradiction occurs in perspective. 図10は、補正処理の説明図。FIG. 10 is an explanatory diagram of correction processing. 図11は、補正処理の説明図。FIG. 11 is an explanatory diagram of correction processing. 図12は、スケーリング処理のフローチャート図。FIG. 12 is a flowchart of scaling processing. 図13(A)〜(C)は、エフェクト発生を説明するための図。FIGS. 13A to 13C are diagrams for explaining the effect generation. 図14(A)〜(C)は、エフェクトオブジェクトを配置する処理の説明図。14A to 14C are explanatory diagrams of processing for arranging effect objects. 図15(A)〜(C)は、エフェクトオブジェクトを配置する処理の説明図。FIGS. 15A to 15C are explanatory diagrams of processing for arranging effect objects. 図16は、エフェクトオブジェクトを配置する処理の説明図。FIG. 16 is an explanatory diagram of processing for arranging an effect object. 図17(A)は、エフェクトオブジェクトを配置する処理の説明図。FIG. 17A is an explanatory diagram of processing for arranging effect objects. 図17(B)は、エフェクトオブジェクトを配置する処理の説明図。FIG. 17B is an explanatory diagram of processing for arranging an effect object. 図17(C)は、エフェクトオブジェクトを配置する処理の説明図。FIG. 17C is an explanatory diagram of processing for arranging an effect object. 図18(A)(B)は、エフェクトオブジェクトを配置する処理の説明図。18A and 18B are explanatory diagrams of processing for arranging effect objects. 図19(A)〜(C)は、エフェクトオブジェクトを配置する処理の説明図。19A to 19C are explanatory diagrams of processing for arranging effect objects. 図20は、本実施形態のネットワークシステムの一例を示す図。FIG. 20 is a diagram illustrating an example of a network system according to the present embodiment. 図21は、本実施形態のネットワークシステムの一例を示す図。FIG. 21 is a diagram illustrating an example of a network system according to the present embodiment. 図22は、本実施形態のエフェクトオブジェクトを配置する処理のフローチャート。FIG. 22 is a flowchart of processing for arranging effect objects according to the present embodiment.

以下、本実施形態について説明する。なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また本実施形態で説明される構成の全てが、本発明の必須構成要件であるとは限らない。   Hereinafter, this embodiment will be described. In addition, this embodiment demonstrated below does not unduly limit the content of this invention described in the claim. In addition, all the configurations described in the present embodiment are not necessarily essential configuration requirements of the present invention.

1.構成
図1に本実施形態の端末(画像生成装置、ゲーム装置、携帯電話、携帯端末、携帯型ゲーム装置)の機能ブロック図の例を示す。なお本実施形態の端末は図1の構成要素(各部)の一部を省略した構成としてもよい。
1. Configuration FIG. 1 shows an example of a functional block diagram of a terminal (an image generating device, a game device, a mobile phone, a mobile terminal, and a portable game device) according to the present embodiment. Note that the terminal of this embodiment may have a configuration in which some of the components (each unit) in FIG. 1 are omitted.

入力部160は、プレーヤ(操作者)からの入力情報を入力するための入力機器(コントローラ)であり、プレーヤの入力情報を処理部に出力する。本実施形態の入力部160は、プレーヤの入力情報(入力信号)を検出する検出部162を備える。入力部160は、例えば、レバー、ボタン、ステアリング、マイク、タッチパネル型ディスプレイなどがある。また、入力部160は、振動信号に基づいて振動させる処理を行う振動部を備えていてもよい。   The input unit 160 is an input device (controller) for inputting input information from the player (operator), and outputs the input information of the player to the processing unit. The input unit 160 of this embodiment includes a detection unit 162 that detects input information (input signal) of the player. The input unit 160 includes, for example, a lever, a button, a steering, a microphone, a touch panel display, and the like. The input unit 160 may include a vibration unit that performs a process of vibrating based on the vibration signal.

また、入力部160は、3軸の加速度を検出する加速度センサや、角速度を検出するジャイロセンサ、撮像部を備えた入力機器でもよい。例えば、入力部160は、プレーヤが把持して動かすものであってもよいし、プレーヤが身につけて動かすものであってもよい。また、入力部160は、プレーヤが把持する刀型コントローラや銃型コントローラ、あるいはプレーヤが身につける(プレーヤが手に装着する)グローブ型コントローラなど実際の道具を模して作られた入力機器でもよい。また入力部160は、入力機器と一体化されている端末(携帯電話、携帯端末、携帯型ゲーム装置)なども含まれる。   The input unit 160 may be an input device including an acceleration sensor that detects triaxial acceleration, a gyro sensor that detects angular velocity, and an imaging unit. For example, the input unit 160 may be held and moved by the player, or may be worn by the player and moved. The input unit 160 may be an input device imitating an actual tool such as a sword-type controller or gun-type controller held by the player, or a glove-type controller worn by the player (attached to the hand of the player). Good. The input unit 160 also includes a terminal (a mobile phone, a mobile terminal, a portable game device) integrated with an input device.

記憶部170は、処理部100や通信部196などのワーク領域となるもので、その機能はRAM(VRAM)などにより実現できる。例えば、図2に示すように、オブジェクトデータ記憶部173では、オブジェクト空間に配置される、倍率が1倍のオブジェクトのモデルデータが記憶されている。   The storage unit 170 serves as a work area for the processing unit 100, the communication unit 196, and the like, and its function can be realized by a RAM (VRAM) or the like. For example, as shown in FIG. 2, the object data storage unit 173 stores model data of an object with a magnification of 1 that is arranged in the object space.

情報記憶媒体180(コンピュータにより読み取り可能な媒体)は、プログラムやデータなどを格納するものであり、その機能は、光ディスク(CD、DVD)、光磁気ディスク(MO)、磁気ディスク、ハードディスク、磁気テープ、或いはメモリ(ROM)などにより実現できる。処理部100は、情報記憶媒体180に格納されるプログラム(データ)に基づいて本実施形態の種々の処理を行う。情報記憶媒体180には、本実施形態の各部としてコンピュータを機能させるためのプログラム(各部の処理をコンピュータに実行させるためのプログラム)を記憶することができる。   The information storage medium 180 (computer-readable medium) stores programs, data, and the like, and functions as an optical disk (CD, DVD), magneto-optical disk (MO), magnetic disk, hard disk, and magnetic tape. Alternatively, it can be realized by a memory (ROM). The processing unit 100 performs various processes of the present embodiment based on a program (data) stored in the information storage medium 180. The information storage medium 180 can store a program for causing a computer to function as each unit of the present embodiment (a program for causing a computer to execute processing of each unit).

表示部190は、本実施形態により生成された画像を出力するものであり、その機能は、CRT、LCD、タッチパネル型ディスプレイ、或いはHMD(ヘッドマウントディスプレイ)などにより実現できる。   The display unit 190 outputs an image generated according to the present embodiment, and its function can be realized by a CRT, LCD, touch panel display, HMD (head mounted display), or the like.

音出力部192は、本実施形態により生成された音を出力するものであり、その機能は、スピーカ、或いはヘッドフォンなどにより実現できる。   The sound output unit 192 outputs the sound generated by the present embodiment, and its function can be realized by a speaker, headphones, or the like.

通信部196は外部(例えば他の端末、サーバ)との間で通信を行うための各種制御を行うものであり、その機能は、各種プロセッサ又は通信用ASICなどのハードウェアや、プログラムなどにより実現できる。   The communication unit 196 performs various controls for communicating with the outside (for example, other terminals and servers), and the functions are realized by hardware such as various processors or communication ASICs, programs, and the like. it can.

なお、サーバが有する情報記憶媒体や記憶部に記憶されている本実施形態の各部としてコンピュータを機能させるためのプログラムやデータを、ネットワークを介して受信し、受信したプログラムやデータを情報記憶媒体180や記憶部170に記憶してもよい。このようにプログラムやデータを受信して端末を機能させる場合も本発明の範囲内に含む。   Note that a program or data for causing a computer to function as each unit of the present embodiment stored in the information storage medium or storage unit of the server is received via the network, and the received program or data is received by the information storage medium 180. Or may be stored in the storage unit 170. The case where the terminal is functioned by receiving the program or data as described above is also included in the scope of the present invention.

処理部100(プロセッサ)は、入力部160からの入力データやプログラムなどに基づいて、ゲーム処理、画像生成処理、或いは音生成処理などの処理を行う。   The processing unit 100 (processor) performs processing such as game processing, image generation processing, or sound generation processing based on input data from the input unit 160, a program, and the like.

この処理部100は記憶部170内の主記憶部171をワーク領域として各種処理を行う。処理部100の機能は各種プロセッサ(CPU、DSP等)、ASIC(ゲートアレイ等)などのハードウェアや、プログラムにより実現できる。   The processing unit 100 performs various processes using the main storage unit 171 in the storage unit 170 as a work area. The functions of the processing unit 100 can be realized by hardware such as various processors (CPU, DSP, etc.), ASIC (gate array, etc.), and programs.

処理部100は、受け付け部110、オブジェクト配置部111、エフェクトオブジェクト配置部111a、移動・動作処理部112、移動処理部112a、倍率制御部113、スケーリング処理部114、ゲーム演算部115、判断部116、算出部117、仮想カメラ制御部118、通信制御部119、描画部120、音処理部130を含む。なおこれらの一部を省略する構成としてもよい。   The processing unit 100 includes a reception unit 110, an object placement unit 111, an effect object placement unit 111a, a movement / motion processing unit 112, a movement processing unit 112a, a magnification control unit 113, a scaling processing unit 114, a game calculation unit 115, and a determination unit 116. A calculation unit 117, a virtual camera control unit 118, a communication control unit 119, a drawing unit 120, and a sound processing unit 130. Note that some of these may be omitted.

受け付け部110は、プレーヤの入力情報を受け付ける処理を行う。例えば、自機(プレーヤの操作対象の移動体)を移動させるための移動入力情報を受け付ける処理や、自機から弾(ミサイル、機関砲)を発射させる発射入力情報を受け付ける処理を行う。   The accepting unit 110 performs processing for accepting player input information. For example, a process for accepting movement input information for moving the own aircraft (moving body to be operated by the player) and a process for accepting firing input information for firing bullets (missiles, machine guns) from the own aircraft are performed.

オブジェクト配置部111は、オブジェクトをオブジェクト空間に配置する処理を行う。例えば、オブジェクト配置部111は、自機、敵機(コンピュータプログラムに基づいて移動・動作、攻撃を行う移動体、ノンプレーヤキャラクター)の他に、建物、球場、車、樹木、柱、壁、マップ(地形)などの表示物を、オブジェクト空間に配置する処理を行う。ここでオブジェクト空間とは、仮想的なゲーム空間であり、例えば、ワールド座標系、仮想カメラ座標系のように、3次元座標(X,Y,Z)においてオブジェクトが配置される空間である。   The object placement unit 111 performs processing for placing an object in the object space. For example, the object placement unit 111 may include a building, a stadium, a car, a tree, a pillar, a wall, a map, in addition to its own aircraft and enemy aircraft (moving body / moving based on a computer program, an attacking mobile body, non-player character) The display object such as (terrain) is arranged in the object space. Here, the object space is a virtual game space, for example, a space in which objects are arranged in three-dimensional coordinates (X, Y, Z) such as a world coordinate system and a virtual camera coordinate system.

例えば、オブジェクト配置部111は、ワールド座標系にオブジェクト(ポリゴン、自由曲面又はサブディビジョンサーフェスなどのプリミティブで構成されるオブジェクト)を配置する。また、例えば、ワールド座標系でのオブジェクトの位置や回転角度(向き、方向と同義)を決定し、その位置(X、Y、Z)にその回転角度(X、Y、Z軸回りでの回転角度)でオブジェクトを配置する。   For example, the object placement unit 111 places an object (an object composed of a primitive such as a polygon, a free-form surface, or a subdivision surface) in the world coordinate system. Also, for example, the position and rotation angle (synonymous with direction and direction) of the object in the world coordinate system is determined, and the rotation angle (X, Y, Z axis rotation) is determined at that position (X, Y, Z). Position the object at (Angle).

特に、本実施形態のオブジェクト配置部111は、予めモデリングされた(倍率1の大きさの)オブジェクトについて、スケーリング(拡大或いは縮小)する処理を行い、スケーリングされたオブジェクトをオブジェクト空間に配置する処理を行っている。   In particular, the object placement unit 111 according to the present embodiment performs a process of scaling (enlarging or reducing) an object modeled in advance (having a magnification of 1), and a process of placing the scaled object in the object space. Is going.

例えば、オブジェクト配置部111は、図2に示すように、スケーリング対象のオブジェクト(例えば、スケーリングフラグが1であるオブジェクト)について、スケーリング処理を行い、スケーリングされたオブジェクト配置する処理を行う。一方、スケーリング対象でないオブジェクト(例えば、スケーリングフラグが0であるオブジェクト)については、スケーリング処理を行わずに、オブジェクトデータ記憶部173において記憶されているオブジェクトをそのままオブジェクト空間に配置する処理を行う。   For example, as illustrated in FIG. 2, the object placement unit 111 performs a scaling process on an object to be scaled (for example, an object whose scaling flag is 1), and performs a process of placing the scaled object. On the other hand, for an object that is not a scaling target (for example, an object having a scaling flag of 0), the object stored in the object data storage unit 173 is directly placed in the object space without performing the scaling process.

エフェクトオブジェクト配置部111aは、オブジェクト空間において、エフェクト発生位置から仮想カメラが追従する移動体の移動情報に基づき算出された特定位置に向かって、エフェクトオブジェクトを配置する処理を行う。例えば、移動情報とは、移動方向、移動速度、移動加速度、位置、向き(回転角度)等を含む。   The effect object placement unit 111a performs processing to place the effect object in the object space from the effect occurrence position toward the specific position calculated based on the movement information of the moving body that the virtual camera follows. For example, the movement information includes a movement direction, a movement speed, a movement acceleration, a position, a direction (rotation angle), and the like.

また、エフェクトオブジェクト配置部111aは、描画部120が、オブジェクト空間に存在する複数の移動体のうち、特定の移動体の移動に追従する仮想カメラから見える画像を生成する場合には、特定の移動体の移動情報に基づいて算出された特定位置に向かって、エフェクトオブジェクトを配置する処理を行う。   Further, the effect object placement unit 111a performs specific movement when the drawing unit 120 generates an image that can be seen from a virtual camera that follows the movement of a specific moving body among a plurality of moving bodies existing in the object space. A process of placing an effect object toward a specific position calculated based on body movement information is performed.

また、エフェクトオブジェクト配置部111aは、端末(第1の端末)で移動処理を行う移動体の移動情報又は端末(第1の端末)で制御される仮想カメラの移動情報に基づいて算出された特定位置に向かって、エフェクトオブジェクトを配置する処理を行う。つまり、本実施形態では、ネットワークを介して他の端末とデータの送受信処理を行い、いわゆるマルチプレーヤオンラインゲームを行う場合には、各端末が独立してエフェクトオブジェクトの配置処理を行う。   Further, the effect object placement unit 111a is specified based on movement information of a moving body that performs movement processing at the terminal (first terminal) or movement information of a virtual camera controlled by the terminal (first terminal). A process of placing the effect object toward the position is performed. That is, in the present embodiment, data transmission / reception processing is performed with other terminals via a network, and when a so-called multiplayer online game is played, each terminal independently performs effect object placement processing.

また、エフェクトオブジェクト配置部111aは、画像生成で用いられる仮想カメラの移動情報に基づいて算出された特定位置に向かって、エフェクトオブジェクトを配置する処理を行う。   Further, the effect object placement unit 111a performs a process of placing the effect object toward a specific position calculated based on movement information of the virtual camera used for image generation.

なお、エフェクトオブジェクト配置部111aは、スケーリング処理部114によってスケーリングされたエフェクトオブジェクトを、特定位置に向かって配置するようにしてもよい。   The effect object placement unit 111a may place the effect object scaled by the scaling processing unit 114 toward a specific position.

移動・動作処理部112は、オブジェクト空間にあるオブジェクトの移動・動作演算を行う。すなわち入力部160から受け付けた入力情報や、プログラム(移動・動作アルゴリズム)や、各種データ(モーションデータ)などに基づいて、オブジェクトをオブジェクト空間内で移動させたり、オブジェクトを動作(モーション、アニメーション)させたりする処理を行う。具体的には、オブジェクトの移動情報(移動速度、移動速度、移動加速度、位置、向きなど)や動作情報(オブジェクトを構成する各パーツの位置、或いは回転角度)を、1フレーム(1/60秒)毎に順次求める処理を行う。なおフレームは、オブジェクトの移動・動作処理や画像生成処理を行う時間の単位である。   The movement / motion processing unit 112 performs a movement / motion calculation of an object in the object space. That is, based on input information received from the input unit 160, a program (movement / motion algorithm), various data (motion data), etc., the object is moved in the object space, or the object is moved (motion, animation). Process. Specifically, object movement information (movement speed, movement speed, movement acceleration, position, orientation, etc.) and movement information (positions or rotation angles of each part constituting the object) are stored in one frame (1/60 second). ) The processing for obtaining each is sequentially performed. Note that a frame is a unit of time for performing object movement / motion processing and image generation processing.

例えば、本実施形態の移動処理部112aは、入力部160の入力情報(移動用の入力情報)に基づいて、自機を移動させる処理や、移動処理プログラムに基づいて、敵機を移動させる処理を行う。   For example, the movement processing unit 112a of the present embodiment performs a process of moving the own aircraft based on input information (movement input information) of the input unit 160 or a process of moving an enemy aircraft based on a movement processing program. I do.

なお、移動・動作処理部112は、他の端末とネットワークを介してデータを送受信している場合には、他の端末から受信した移動情報等のデータに基づいて、本端末のオブジェクト空間に配置される他の移動体(他の端末を操作するプレーヤの操作対象の移動体)を移動・動作させるようにしてもよい。   When the movement / motion processing unit 112 transmits / receives data to / from other terminals via the network, the movement / motion processing unit 112 is arranged in the object space of the terminal based on data such as movement information received from the other terminals. It is also possible to move / operate other moving bodies (movable bodies to be operated by players who operate other terminals).

倍率制御部113は、所与のオブジェクトをスケーリング(拡大・縮小)するための倍率を、算出する処理を行う。つまり、倍率制御部113は、スケーリング対象のオブジェクト(例えば、スケーリングフラグが1であるオブジェクト)について、オブジェクトデータ記憶部173において記憶されているオブジェクトをスケーリングするための倍率を算出する。スケーリングする倍率は、スケーリング対象の複数のオブジェクト毎に算出する。   The magnification control unit 113 performs processing for calculating a magnification for scaling (enlarging / reducing) a given object. That is, the magnification control unit 113 calculates the magnification for scaling the object stored in the object data storage unit 173 for the object to be scaled (for example, the object whose scaling flag is 1). The scaling factor is calculated for each of a plurality of objects to be scaled.

より具体的に説明すると、倍率制御部113は、仮想カメラの視線方向と、仮想カメラからオブジェクトに向く方向とに基づいて、倍率を算出する処理を行う。例えば、倍率制御部113は、仮想カメラの視線方向と、仮想カメラからオブジェクトに向く方向とのなす角が小さくなるほど、倍率を増加させる処理を行う。つまり、仮想カメラの視線方向上にオブジェクトが配置される場合には、そのオブジェクトの倍率が最も大きな値になるように倍率が制御され、仮想カメラの視線方向と、仮想カメラからオブジェクトに向く方向とがずれるほど(ずれ角度が大きいほど)倍率が小さな値になるように、そのオブジェクトの倍率を制御する。つまり、倍率制御部113は、オブジェクトの位置が視線方向の軸(視軸)に近いほど、倍率を増加させる処理を行う。例えば、本実施形態の倍率制御部113は、仮想カメラの視線方向を向くベクトルと、仮想カメラからオブジェクトに向くベクトルとの内積値に基づいて、倍率を算出する。   More specifically, the magnification control unit 113 performs a process of calculating the magnification based on the line-of-sight direction of the virtual camera and the direction from the virtual camera toward the object. For example, the magnification control unit 113 performs a process of increasing the magnification as the angle between the line-of-sight direction of the virtual camera and the direction from the virtual camera toward the object decreases. In other words, when an object is placed in the line-of-sight direction of the virtual camera, the magnification is controlled so that the magnification of the object is the largest value, and the line-of-sight direction of the virtual camera The magnification of the object is controlled so that the magnification becomes smaller as the shift occurs (the displacement angle is larger). That is, the magnification control unit 113 performs a process of increasing the magnification as the position of the object is closer to the line of sight direction (visual axis). For example, the magnification control unit 113 according to the present embodiment calculates the magnification based on the inner product value of a vector facing the visual line direction of the virtual camera and a vector facing the object from the virtual camera.

また、倍率制御部113は、仮想カメラからオブジェクトまでの距離に基づいて、倍率を算出してもよい。倍率制御部113は、仮想カメラの視点位置から、スケーリング対象のオブジェクトの位置まで距離に基づいて、そのオブジェクトの倍率を変化させるようにしてもよい。例えば、仮想カメラの視点位置からオブジェクトのまでの距離が300以内である場合には、視点位置からオブジェクトの位置までの距離が増加する(距離が長くなる)につれて倍率を所定値域(例えば、2.0〜2.5)の最小値(例えば、2.0)から最大値(例えば、2.5)に向かって増加させる処理を行い、仮想カメラの視点位置からオブジェクトまでの距離が300を超えると、倍率を所定値域の最大値(2.5)に設定する処理を行う。   Further, the magnification control unit 113 may calculate the magnification based on the distance from the virtual camera to the object. The magnification control unit 113 may change the magnification of the object based on the distance from the viewpoint position of the virtual camera to the position of the object to be scaled. For example, when the distance from the viewpoint position of the virtual camera to the object is within 300, the magnification is increased within a predetermined value range (for example, 2....) As the distance from the viewpoint position to the object position increases (the distance increases). When the distance from the viewpoint position of the virtual camera to the object exceeds 300, a process of increasing the minimum value (for example, 2.0) from 0 to 2.5) to the maximum value (for example, 2.5) is performed. Then, processing for setting the magnification to the maximum value (2.5) in the predetermined value range is performed.

なお、本実施形態の倍率制御部113は、オブジェクトの位置が仮想カメラの視点位置から300以内である場合には、仮想カメラからオブジェクトまでの距離に基づいて、所定値域で変化する第1の倍率と、仮想カメラの視線方向と、仮想カメラから前記オブジェクトに向く方向とに基づいて算出された第2の倍率とに基づいて、スケーリングするための倍率を算出するようにしてもよい。   Note that when the position of the object is within 300 from the viewpoint position of the virtual camera, the magnification control unit 113 according to the present embodiment uses the first magnification that changes in a predetermined range based on the distance from the virtual camera to the object. The scaling factor may be calculated based on the visual line direction of the virtual camera and the second magnification calculated based on the direction from the virtual camera toward the object.

倍率制御部113は、仮想カメラの視点位置に基づいて設定された所定範囲内にオブジェクトが位置する場合には、仮想カメラとオブジェクトとの距離が減少するに従って、算出された倍率が1倍に近づくように、算出された倍率を補正する処理を行うようにしてもよい。   When the object is located within a predetermined range set based on the viewpoint position of the virtual camera, the magnification control unit 113 increases the calculated magnification closer to 1 as the distance between the virtual camera and the object decreases. As described above, processing for correcting the calculated magnification may be performed.

スケーリング処理部114は、スケーリング対象のオブジェクトについて倍率制御部113によって求められた倍率に基づいて、当該スケーリング対象のオブジェクトをスケーリングする処理を行う。なお、スケーリング処理部114は、仮想カメラの視点位置に基づいて設定された所定範囲内にオブジェクトが位置する場合には、補正された倍率に基づいて、オブジェクトをスケーリングする処理を行う。   The scaling processing unit 114 performs processing for scaling the object to be scaled based on the magnification obtained by the magnification control unit 113 for the object to be scaled. Note that the scaling processing unit 114 performs processing for scaling the object based on the corrected magnification when the object is located within a predetermined range set based on the viewpoint position of the virtual camera.

ゲーム演算部115は、種々のゲーム処理を行う。例えば、ゲーム開始条件が満たされた場合にゲームを開始する処理、ゲームを進行させる処理、ゲーム終了条件が満たされた場合にゲームを終了する処理、最終ステージをクリアした場合にはエンディングを進行させる処理などがある。   The game calculation unit 115 performs various game processes. For example, a process for starting a game when a game start condition is satisfied, a process for advancing the game, a process for ending a game when the game end condition is satisfied, and an ending when the final stage is cleared There is processing.

本実施形態のゲーム演算部115は、各移動体(自機、敵機を含む)のパラメータを更新する処理を行う。例えば、各移動体の耐久値の初期値を所定値(例えば、100)に設定し、耐久値が「0」になると、その移動体は撃墜されたものとして判定する処理を行う。例えば、自機の耐久値が「0」になると、ゲームクリアできないものと判定し、ゲームを終了させる処理を行う。一方、ゲーム中の全ての敵機の耐久値が「0」になると、ゲームクリアと判定する処理を行う。   The game calculation unit 115 of the present embodiment performs a process of updating the parameters of each moving object (including its own machine and enemy aircraft). For example, the initial value of the durability value of each moving object is set to a predetermined value (for example, 100), and when the durability value becomes “0”, a process of determining that the moving object is shot down is performed. For example, when the durability value of the player's own machine becomes “0”, it is determined that the game cannot be cleared, and a process for ending the game is performed. On the other hand, when the durability value of all enemy aircraft in the game becomes “0”, processing for determining that the game is cleared is performed.

判断部116は、オブジェクト空間内でエフェクトを発生させるための所定条件を満たしたか否かを判断する処理を行う。例えば、判断部116は、自機(プレーヤの操作対象の移動体)から発射されるミサイル(移動体の一例)が、敵機(移動体の一例)にヒットした場合(ヒットして耐久値0になった)には、そのヒット位置又はヒット時の敵機の位置をエフェクト発生位置として制御する。かかる場合には、エフェクトオブジェクト配置部111aが、エフェクトオブジェクトをエフェクト発生位置から特定位置に向かって配置する処理を行う。   The determination unit 116 performs processing for determining whether or not a predetermined condition for generating an effect in the object space is satisfied. For example, the determination unit 116 hits an enemy aircraft (an example of a moving body) hit by an missile (an example of a moving body) fired from the own aircraft (a moving object to be operated by the player) (hit and endurance value 0). The hit position or the position of the enemy aircraft at the time of the hit is controlled as the effect generation position. In such a case, the effect object placement unit 111a performs processing for placing the effect object from the effect occurrence position toward the specific position.

判断部116は、他の端末(第2の端末)から、エフェクト発生情報を受信した場合には、所定条件を満たしたと判断する処理を行う。例えば、他の端末から、ヒットして耐久値0になった敵機のIDを含むエフェクト発生情報を受信した場合には、そのIDに対応する敵機の位置でエフェクトを発生させるための所定条件を満たしたと判断する。   When the effect occurrence information is received from another terminal (second terminal), the determination unit 116 performs a process of determining that a predetermined condition is satisfied. For example, when receiving the effect occurrence information including the ID of the enemy aircraft hitting the durability value 0 from another terminal, the predetermined condition for generating the effect at the position of the enemy aircraft corresponding to the ID It is determined that

算出部117は、所定条件を満たした場合に、移動体の移動情報に基づいて、特定位置を算出する処理を行う。つまり、算出部117は、移動体の移動方向、移動速度、移動加速度、位置、向きの少なくとも1つを含む移動情報に基づいて、特定位置を算出する処理を行う。例えば、算出部117は、移動体の移動速度及び移動方向に基づいて、特定位置を算出する処理を行う。つまり、算出部117は、移動体の移動速度及び移動方向に基づいて、所定期間後(例えば10秒後)の移動体の位置を推定し、推定された位置を特定位置とする。算出部117は、描画部120が、オブジェクト空間に複数の移動体のうち、特定の移動体の移動に追従する仮想カメラから見える画像を生成する場合には、その特定の移動体の移動情報に基づいて、特定位置を算出する処理を行う。また、算出部117は、端末(第1の端末)で移動処理を行う移動体の移動情報又は仮想カメラの移動情報に基づいて、特定位置を算出する処理を行う。   The calculation unit 117 performs a process of calculating a specific position based on movement information of the moving body when a predetermined condition is satisfied. That is, the calculation unit 117 performs a process of calculating the specific position based on the movement information including at least one of the moving direction, moving speed, moving acceleration, position, and orientation of the moving body. For example, the calculation unit 117 performs a process of calculating the specific position based on the moving speed and moving direction of the moving body. That is, the calculation unit 117 estimates the position of the moving body after a predetermined period (for example, after 10 seconds) based on the moving speed and moving direction of the moving body, and sets the estimated position as the specific position. When the drawing unit 120 generates an image that can be seen from a virtual camera that follows the movement of a specific moving body among a plurality of moving bodies in the object space, the calculating unit 117 uses the movement information of the specific moving body. Based on this, a process for calculating the specific position is performed. In addition, the calculation unit 117 performs a process of calculating a specific position based on movement information of a moving body or movement information of a virtual camera that performs a movement process on a terminal (first terminal).

また、本実施形態の算出部117は、所定条件を満たした場合に、仮想カメラの移動情報に基づいて、特定位置を算出する処理を行うようにしてもよい。つまり、算出部117は、仮想カメラの移動方向、移動速度、移動加速度、位置(視点位置)、向き(視線方向)の少なくとも1つを含む移動情報に基づいて、特定位置を算出するようにしてもよい。例えば、算出部117は、仮想カメラの移動速度及び移動方向に基づいて、特定位置を算出する処理を行う。つまり、算出部117は、仮想カメラの移動速度及び移動方向に基づいて、所定期間後(10秒後)の仮想カメラの位置を推定し、推定された位置を特定位置とする。算出部117は、描画部120が複数の仮想カメラのうち、いずれかの仮想カメラから見える画像を生成する場合には、画像生成で用いられる仮想カメラの移動情報に基づいて、特定位置を算出する。   In addition, the calculation unit 117 according to the present embodiment may perform a process of calculating a specific position based on movement information of the virtual camera when a predetermined condition is satisfied. That is, the calculation unit 117 calculates the specific position based on the movement information including at least one of the movement direction, movement speed, movement acceleration, position (viewpoint position), and direction (gaze direction) of the virtual camera. Also good. For example, the calculation unit 117 performs a process of calculating the specific position based on the moving speed and moving direction of the virtual camera. That is, the calculation unit 117 estimates the position of the virtual camera after a predetermined period (10 seconds later) based on the moving speed and moving direction of the virtual camera, and sets the estimated position as the specific position. The calculation unit 117 calculates a specific position based on movement information of the virtual camera used for image generation when the drawing unit 120 generates an image that can be seen from any of the plurality of virtual cameras. .

仮想カメラ制御部118は、オブジェクト空間内の所与(任意)の視点から見える画像を生成するための仮想カメラ(視点)の制御処理を行う。具体的には、3次元の画像を生成する場合には、ワールド座標系における仮想カメラの位置(X、Y、Z)、回転角度(例えば、X、Y、Z軸の各軸の正方向からみて時計回りに回る場合における回転角度)を制御する処理を行う。要するに、仮想カメラ制御部118は、仮想カメラの視点位置、視線方向、画角、移動方向、移動速度の少なくとも1つを制御する処理を行う。   The virtual camera control unit 118 performs a virtual camera (viewpoint) control process for generating an image that can be seen from a given (arbitrary) viewpoint in the object space. Specifically, when generating a three-dimensional image, the position (X, Y, Z) of the virtual camera in the world coordinate system and the rotation angle (for example, from the positive direction of each axis of the X, Y, and Z axes) (Rotation angle when turning clockwise) is controlled. In short, the virtual camera control unit 118 performs processing for controlling at least one of the viewpoint position, the line-of-sight direction, the angle of view, the moving direction, and the moving speed of the virtual camera.

特に、本実施形態の仮想カメラ制御部118は、移動体の移動に追従する仮想カメラを制御する。例えば、図3(A)に示すような、HUD View(一人称視点の一例)や、図3(B)に示すような、Cockpit View(一人称視点の一例)、図3(C)に示す後方視点(三人称視点の一例)によって、仮想カメラを制御する。   In particular, the virtual camera control unit 118 of the present embodiment controls a virtual camera that follows the movement of the moving object. For example, as shown in FIG. 3 (A), HUD View (an example of a first person viewpoint), as shown in FIG. 3 (B), a Cockpit View (an example of a first person viewpoint), and a rear viewpoint as shown in FIG. 3 (C). The virtual camera is controlled by (an example of a third person viewpoint).

例えば、仮想カメラ制御部118は、移動・動作処理部112で得られたオブジェクトの位置、向き又は速度などの移動情報に基づいて、仮想カメラを制御する。つまり、仮想カメラ制御部118は、ワールド座標において、移動・動作処理部112で処理される移動体の移動情報と仮想カメラの移動情報とが所定の関係を保つように制御する。より具体的には、ワールド座標において、移動・動作処理部112で処理される移動体の位置(移動体の中心点P0)と仮想カメラの位置(CP)とが所定の関係を保つように制御する。例えば、所定の距離を保つように制御する。また、移動体の移動方向及び移動速度と、仮想カメラの移動方向及び移動速度とが所定の関係性を保つように制御する。例えば、移動体の移動方向と仮想カメラの移動方向が同一の方向になるように制御したり、移動体の移動速度と仮想カメラの移動速度とが同一の速度になるように制御する。また、仮想カメラ制御部118は、移動体の向きと、仮想カメラの向き(視線方向)とが所定の関係を保つように仮想カメラの向き(視線方向)を制御する。例えば、移動体の向きと仮想カメラの向きとが同一の方向を向くように制御する。   For example, the virtual camera control unit 118 controls the virtual camera based on movement information such as the position, orientation, or speed of the object obtained by the movement / motion processing unit 112. That is, the virtual camera control unit 118 controls the movement information of the moving object processed by the movement / motion processing unit 112 and the movement information of the virtual camera to maintain a predetermined relationship in the world coordinates. More specifically, in the world coordinates, control is performed so that the position of the moving object (central point P0 of the moving object) processed by the movement / motion processing unit 112 and the position (CP) of the virtual camera maintain a predetermined relationship. To do. For example, control is performed so as to maintain a predetermined distance. Also, control is performed so that the moving direction and moving speed of the moving body and the moving direction and moving speed of the virtual camera maintain a predetermined relationship. For example, the moving direction of the moving body and the moving direction of the virtual camera are controlled to be the same direction, or the moving speed of the moving body and the moving speed of the virtual camera are controlled to be the same speed. In addition, the virtual camera control unit 118 controls the direction (line-of-sight direction) of the virtual camera so that the direction of the moving body and the direction of the virtual camera (line-of-sight direction) maintain a predetermined relationship. For example, the moving body and the virtual camera are controlled so that they face the same direction.

なお、仮想カメラ制御部118は、仮想カメラを予め決められた向きに設定したり、予め決められた移動経路で移動させる制御を行うようにしてもよい。かかる場合には、仮想カメラの位置(移動経路)又は向きを制御するための仮想カメラデータ(記憶部170、情報記憶媒体180等に記憶されている仮想カメラデータ)に基づいて、仮想カメラを制御する。   Note that the virtual camera control unit 118 may set the virtual camera in a predetermined direction or perform control to move the virtual camera along a predetermined movement route. In such a case, the virtual camera is controlled based on virtual camera data (virtual camera data stored in the storage unit 170, the information storage medium 180, etc.) for controlling the position (movement path) or orientation of the virtual camera. To do.

また、仮想カメラ制御部118は、オブジェクト空間において所与の位置から見下ろすような俯瞰用仮想カメラを配置させて当該俯瞰用仮想カメラを制御するようにしてもよい。   Further, the virtual camera control unit 118 may control an overhead virtual camera by arranging an overhead virtual camera that looks down from a given position in the object space.

また、仮想カメラ制御部118は、リプレイ用で画像を生成するためのリプレイ用仮想カメラをオブジェクト空間に配置させて、当該リプレイ用仮想カメラを制御するように使用してもよい。リプレイ用仮想カメラは、移動体の移動に必ずしも追従させる必要はないが、移動体の移動情報に応じて、リプレイ用仮想カメラを制御するようにしてもよい。   Further, the virtual camera control unit 118 may use a replay virtual camera for generating an image for replay arranged in the object space so as to control the replay virtual camera. The replay virtual camera does not necessarily follow the movement of the moving body, but may control the replay virtual camera according to the movement information of the moving body.

通信制御部119は、端末(例えば第1の端末)が他の端末(例えば第2の端末)とネットワークを介して相互にエフェクト発生情報を含むデータを送受信する処理を行う。   The communication control unit 119 performs a process in which a terminal (for example, a first terminal) transmits / receives data including effect generation information to / from another terminal (for example, a second terminal) via a network.

なお、本実施形態の端末では、通信制御で必要となるネットワーク情報をゲームサーバから取得し、管理する処理等を行う。例えば、端末は、各端末に個別に付与される端末の識別情報(オンラインゲームに参加できる端末を識別するために個別に付与されたデータ、ID)と、端末の識別情報に対応付けられたパケットの送信先を指定する宛先情報(IPアドレスなど)とを取得し、管理する処理を行う。   Note that the terminal of the present embodiment performs processing for acquiring and managing network information necessary for communication control from the game server. For example, the terminal has a packet associated with terminal identification information (data and ID individually assigned to identify a terminal that can participate in an online game) and terminal identification information that is individually assigned to each terminal. Destination information (IP address or the like) for designating the destination of transmission is acquired and managed.

通信制御部119は、他の端末(第2の端末)に送信するパケットを生成する処理、パケット送信先の端末のIPアドレスやポート番号を指定する処理、受信したパケットに含まれるデータを記憶部170に保存する処理、受信したパケットを解析する処理、その他のパケットの送受信に関する制御処理等を行う。   The communication control unit 119 stores a process for generating a packet to be transmitted to another terminal (second terminal), a process for designating the IP address and port number of a packet transmission destination terminal, and data included in the received packet Processing to be stored in 170, processing to analyze received packets, control processing related to other packet transmission / reception, and the like are performed.

本実施形態の通信制御部119は、画像を描画するフレームレートに応じてパケットを生成し、接続先の他の端末に生成したパケットを送信する処理を行うようにしてもよい。   The communication control unit 119 of the present embodiment may generate a packet according to a frame rate for drawing an image, and perform processing for transmitting the generated packet to another terminal to which the image is connected.

ここで、端末間で送受信されるデータは、入力部の入力情報としてもよいし、各移動体の位置情報としてもよい。特に、本実施形態において端末間で送受信されるデータは、撃墜を受けた敵機を特定するための情報(例えば、耐久値が0になった敵機のID等)などのエフェクト発生情報を含む。   Here, the data transmitted / received between the terminals may be input information of the input unit, or may be position information of each mobile unit. In particular, data transmitted and received between terminals in the present embodiment includes effect occurrence information such as information for identifying an enemy aircraft that has been shot down (for example, an ID of an enemy aircraft whose durability value has become 0). .

また、本実施形態の通信制御部119は、他の端末(第2の端末)から送信されたパケットを受信すると、受信したパケットを解析し、パケットに含まれるエフェクト発生情報などのデータを記憶部に記憶する処理を行う。   In addition, when receiving a packet transmitted from another terminal (second terminal), the communication control unit 119 of the present embodiment analyzes the received packet and stores data such as effect occurrence information included in the packet. The process to memorize is performed.

また本実施形態の通信制御部119は、複数の端末間においての接続(第1の端末と第2の端末との接続)が確立されてから接続が切断されるまで、データを互いに送受信する処理を行う。   In addition, the communication control unit 119 according to the present embodiment transmits / receives data to / from each other until the connection is disconnected after the connection (connection between the first terminal and the second terminal) is established between a plurality of terminals. I do.

なお、複数の端末で構成されるネットワークシステムの場合は、複数の端末間でデータの送受信を行いながらオンラインゲームを実行するピア・ツー・ピア(いわゆるP2P)方式としてもよいし、特定のサービスを提供するためのサーバと端末間においてデータを送受信できるものであってもよい。また、サーバを介して各端末がデータ(情報)の送受信を行いながらオンラインゲームを実行するクライアント・サーバ方式によるものであってもよい。また、本実施形態のネットワークシステムでは、有線通信のみならず無線通信でデータを送受信してもよい。   In the case of a network system composed of a plurality of terminals, a peer-to-peer (so-called P2P) method for executing an online game while transmitting / receiving data between the plurality of terminals may be used. Data that can be transmitted and received between the server for providing and the terminal may be used. Further, a client-server system in which each terminal executes an online game while transmitting and receiving data (information) via the server may be used. In the network system of the present embodiment, data may be transmitted / received not only by wired communication but also by wireless communication.

描画部120は、処理部100で行われる種々の処理の結果に基づいて描画処理を行い、これにより画像を生成し、表示部190に出力する。言い換えると、描画部120は、オブジェクト空間において、仮想カメラから見える画像を生成する。   The drawing unit 120 performs drawing processing based on the results of various processes performed by the processing unit 100, thereby generating an image and outputting the image to the display unit 190. In other words, the drawing unit 120 generates an image that can be seen from the virtual camera in the object space.

例えば、描画部120は、オブジェクト(モデル)の各頂点の頂点データ(頂点の位置座標、テクスチャ座標、色データ、法線ベクトル或いはα値等)を含むオブジェクトデータ(モデルデータ)が入力され、入力されたオブジェクトデータに含まれる頂点データに基づいて、頂点処理(頂点シェーダによるシェーディング)が行われる。なお頂点処理を行うに際して、必要に応じてポリゴンを再分割するための頂点生成処理(テッセレーション、曲面分割、ポリゴン分割)を行うようにしてもよい。   For example, the drawing unit 120 receives object data (model data) including vertex data (vertex position coordinates, texture coordinates, color data, normal vector, α value, etc.) of each vertex of the object (model). Based on the vertex data included in the object data, vertex processing (shading by a vertex shader) is performed. When performing the vertex processing, vertex generation processing (tessellation, curved surface division, polygon division) for re-dividing the polygon may be performed as necessary.

頂点処理では、頂点処理プログラム(頂点シェーダプログラム、第1のシェーダプログラム)に従って、頂点の移動処理や、座標変換、例えばワールド座標変換、視野変換(カメラ座標変換)、クリッピング処理、透視変換(投影変換)、ビューポート変換等のジオメトリ処理が行われ、その処理結果に基づいて、オブジェクトを構成する頂点群について与えられた頂点データを変更(更新、調整)する。   In the vertex processing, according to the vertex processing program (vertex shader program, first shader program), vertex movement processing, coordinate transformation, for example, world coordinate transformation, visual field transformation (camera coordinate transformation), clipping processing, perspective transformation (projection transformation) ), Geometry processing such as viewport conversion is performed, and based on the processing result, the vertex data given to the vertex group constituting the object is changed (updated or adjusted).

そして、頂点処理後の頂点データに基づいてラスタライズ(走査変換)が行われ、ポリゴン(プリミティブ)の面とピクセルとが対応づけられる。そしてラスタライズに続いて、画像を構成するピクセル(表示画面を構成するフラグメント)を描画するピクセル処理(ピクセルシェーダによるシェーディング、フラグメント処理)が行われる。ピクセル処理では、ピクセル処理プログラム(ピクセルシェーダプログラム、第2のシェーダプログラム)に従って、テクスチャの読出し(テクスチャマッピング)、色データの設定/変更、半透明合成、アンチエイリアス等の各種処理を行って、画像を構成するピクセルの最終的な描画色を決定し、透視変換されたオブジェクトの描画色を画像バッファ172(ピクセル単位で画像情報を記憶できるバッファ。VRAM、レンダリングターゲット)に出力(描画)する。すなわち、ピクセル処理では、画像情報(色、法線、輝度、α値等)をピクセル単位で設定あるいは変更するパーピクセル処理を行う。これにより、オブジェクト空間内において仮想カメラ(所与の視点)から見える画像が生成される。なお、仮想カメラ(視点)が複数存在する場合には、それぞれの仮想カメラから見える画像を分割画像として1画面に表示できるように画像を生成することができる。   Then, rasterization (scan conversion) is performed based on the vertex data after the vertex processing, and the surface of the polygon (primitive) is associated with the pixel. Subsequent to rasterization, pixel processing (shading or fragment processing by a pixel shader) for drawing pixels (fragments forming a display screen) constituting an image is performed. In pixel processing, according to a pixel processing program (pixel shader program, second shader program), various processes such as texture reading (texture mapping), color data setting / change, translucent composition, anti-aliasing, etc. are performed, and an image is processed. The final drawing color of the constituent pixels is determined, and the drawing color of the perspective-transformed object is output (drawn) to the image buffer 172 (a buffer capable of storing image information in units of pixels; VRAM, rendering target). That is, in pixel processing, per-pixel processing for setting or changing image information (color, normal, luminance, α value, etc.) in units of pixels is performed. Thereby, an image that can be seen from the virtual camera (given viewpoint) in the object space is generated. Note that when there are a plurality of virtual cameras (viewpoints), an image can be generated so that an image seen from each virtual camera can be displayed as a divided image on one screen.

なお頂点処理やピクセル処理は、シェーディング言語によって記述されたシェーダプログラムによって、ポリゴン(プリミティブ)の描画処理をプログラム可能にするハードウェア、いわゆるプログラマブルシェーダ(頂点シェーダやピクセルシェーダ)により実現される。プログラマブルシェーダでは、頂点単位の処理やピクセル単位の処理がプログラム可能になることで描画処理内容の自由度が高く、従来のハードウェアによる固定的な描画処理に比べて表現力を大幅に向上させることができる。   The vertex processing and pixel processing are realized by hardware that enables polygon (primitive) drawing processing to be programmed by a shader program written in a shading language, so-called programmable shaders (vertex shaders and pixel shaders). Programmable shaders can be programmed with vertex-level processing and pixel-level processing, so that the degree of freedom of drawing processing is high, and expressive power is greatly improved compared to conventional hardware-based fixed drawing processing. Can do.

そして描画部120は、オブジェクトを描画する際に、ジオメトリ処理、テクスチャマッピング、隠面消去処理、αブレンディング等を行う。   The drawing unit 120 performs geometry processing, texture mapping, hidden surface removal processing, α blending, and the like when drawing an object.

ジオメトリ処理では、オブジェクトに対して、座標変換、クリッピング処理、透視投影変換、或いは光源計算等の処理が行われる。そして、ジオメトリ処理後(透視投影変換後)のオブジェクトデータ(オブジェクトの頂点の位置座標、テクスチャ座標、色データ(輝度データ)、法線ベクトル、或いはα値等)は、記憶部170に保存される。   In the geometry processing, processing such as coordinate conversion, clipping processing, perspective projection conversion, or light source calculation is performed on the object. Then, the object data (positional coordinates of object vertices, texture coordinates, color data (luminance data), normal vector, α value, etc.) after geometry processing (after perspective projection conversion) is stored in the storage unit 170. .

テクスチャマッピングは、記憶部170に記憶されるテクスチャ(テクセル値)をオブジェクトにマッピングするための処理である。具体的には、オブジェクトの頂点に設定(付与)されるテクスチャ座標等を用いて記憶部170からテクスチャ(色(RGB)、α値などの表面プロパティ)を読み出す。そして、2次元の画像であるテクスチャをオブジェクトにマッピングする。この場合に、ピクセルとテクセルとを対応づける処理や、テクセルの補間としてバイリニア補間などを行う。   Texture mapping is a process for mapping a texture (texel value) stored in the storage unit 170 to an object. Specifically, the texture (surface properties such as color (RGB) and α value) is read from the storage unit 170 using texture coordinates or the like set (given) to the vertex of the object. Then, a texture that is a two-dimensional image is mapped to an object. In this case, processing for associating pixels with texels, bilinear interpolation or the like is performed as texel interpolation.

隠面消去処理としては、描画ピクセルのZ値(奥行き情報)が格納されるZバッファ(奥行きバッファ)を用いたZバッファ法(奥行き比較法、Zテスト)による隠面消去処理を行うことができる。すなわちオブジェクトのプリミティブに対応する描画ピクセルを描画する際に、Zバッファに格納されるZ値を参照する。そして参照されたZバッファのZ値と、プリミティブの描画ピクセルでのZ値とを比較し、描画ピクセルでのZ値が、仮想カメラから見て手前側となるZ値(例えば小さなZ値)である場合には、その描画ピクセルの描画処理を行うとともにZバッファのZ値を新たなZ値に更新する。   As the hidden surface removal processing, hidden surface removal processing can be performed by a Z buffer method (depth comparison method, Z test) using a Z buffer (depth buffer) in which Z values (depth information) of drawing pixels are stored. . That is, when drawing pixels corresponding to the primitive of the object are drawn, the Z value stored in the Z buffer is referred to. Then, the Z value of the referenced Z buffer is compared with the Z value at the drawing pixel of the primitive, and the Z value at the drawing pixel is a Z value (for example, a small Z value) on the near side when viewed from the virtual camera. In some cases, the drawing process of the drawing pixel is performed and the Z value of the Z buffer is updated to a new Z value.

αブレンディング(α合成)は、α値(A値)に基づく半透明合成処理(通常αブレンディング、加算αブレンディング又は減算αブレンディング等)のことである。   α blending (α synthesis) is a translucent synthesis process (usually α blending, addition α blending, subtraction α blending, or the like) based on an α value (A value).

例えば、αブレンディングでは、これから画像バッファ172に描画する描画色(上書きする色)C1と、既に画像バッファ172(レンダリングターゲット)に描画されている描画色(下地の色)C2とを、α値に基づいて線形合成処理を行う。つまり、最終的な描画色をCとすると、C=C1*α+C2*(1−α)によって求めることができる。   For example, in α blending, the drawing color (overwriting color) C1 to be drawn in the image buffer 172 and the drawing color (background color) C2 already drawn in the image buffer 172 (rendering target) are set to α values. Based on this, a linear synthesis process is performed. That is, if the final drawing color is C, it can be obtained by C = C1 * α + C2 * (1−α).

なお、α値は、各ピクセル(テクセル、ドット)に関連づけて記憶できる情報であり、例えば色情報以外のプラスアルファの情報である。α値は、マスク情報、半透明度(透明度、不透明度と等価)、バンプ情報などとして使用できる。   The α value is information that can be stored in association with each pixel (texel, dot), for example, plus alpha information other than color information. The α value can be used as mask information, translucency (equivalent to transparency and opacity), bump information, and the like.

なお、描画部120は、他の端末(第2の端末)とネットワークを介してデータを送受信するマルチプレーヤオンラインゲームを行う場合であっても、端末(第1の端末)で移動処理を行う移動体の移動に追従する仮想カメラ(端末(第1の端末)で制御される仮想カメラ)から見える画像を生成する処理を行う。つまり、各端末が独立した描画処理を行う。   It should be noted that the drawing unit 120 performs movement processing on the terminal (first terminal) even when performing a multiplayer online game in which data is transmitted / received to / from another terminal (second terminal) via the network. A process of generating an image that can be seen from a virtual camera (a virtual camera controlled by a terminal (first terminal)) that follows the movement of the body is performed. That is, each terminal performs an independent drawing process.

音処理部130は、処理部100で行われる種々の処理の結果に基づいて音処理を行い、BGM、効果音、又は音声などのゲーム音を生成し、音出力部192に出力する。   The sound processing unit 130 performs sound processing based on the results of various processes performed by the processing unit 100, generates a game sound such as BGM, sound effect, or sound, and outputs the game sound to the sound output unit 192.

なお、本実施形態の端末は、1人のプレーヤのみがプレイできるシングルプレーヤモード、或いは、複数のプレーヤがプレイできるマルチプレーヤモードでゲームプレイできるように制御してもよい。例えば、マルチプレーヤモードで制御する場合には、ネットワークを介して他の端末とデータを送受信してゲーム処理を行うようにしてもよいし、1つの端末が、複数の入力部からの入力情報に基づいて処理を行うようにしてもよい。   Note that the terminal according to the present embodiment may be controlled so that the game can be played in a single player mode in which only one player can play or in a multiplayer mode in which a plurality of players can play. For example, in the case of controlling in the multiplayer mode, game processing may be performed by transmitting / receiving data to / from other terminals via a network, or one terminal may receive input information from a plurality of input units. Processing may be performed based on this.

2.スケーリング処理
本実施形態では、シューティングゲームのための画像生成処理に関するものであり、予めモデリングされた1倍の大きさオブジェクトについて、倍率を乗算してスケーリング処理を行い、スケーリングされたオブジェクトをワールド座標系に配置する処理を行う。そして、スケーリングされたオブジェクトが配置されたオブジェクト空間において、仮想カメラから見える画像を生成する処理を行う。本実施形態では、スケーリングする倍率を1倍以上にし、オブジェクトを誇張表現して迫力、スピード感のある画像を生成する。
2. Scaling processing The present embodiment relates to image generation processing for a shooting game, and performs scaling processing by multiplying a scaled object by multiplying a scaled object with a world coordinate system. Process to place in. Then, in the object space where the scaled objects are arranged, a process of generating an image that can be seen from the virtual camera is performed. In the present embodiment, the scaling factor is set to 1 or more, and the object is exaggerated to generate an image having a powerful and speedy feeling.

(1)スケーリング処理の詳細
まず、本実施形態においてオブジェクトデータ記憶部173に記憶されるオブジェクトについて説明する。本実施形態のオブジェクトデータ記憶部173には、モデリングされたオブジェクトを1倍として記憶している。また、図2に示すように、オブジェクトデータ記憶部173に、スケーリング対象となるオブジェクト、スケーリング対象とはならないオブジェクトとを、それぞれ識別して記憶する。より具体的には、スケーリング対象となるオブジェクトのスケーリングフラグを「1」とし、スケーリング対象とはならないオブジェクトのスケーリングフラグを「0」として、各オブジェクトのIDに対応づけて記憶する。
(1) Details of Scaling Processing First, objects stored in the object data storage unit 173 in the present embodiment will be described. In the object data storage unit 173 of the present embodiment, the modeled object is stored as one time. Also, as shown in FIG. 2, the object data storage unit 173 identifies and stores objects to be scaled and objects that are not to be scaled. More specifically, the scaling flag of the object to be scaled is set to “1”, the scaling flag of the object that is not to be scaled is set to “0”, and stored in association with the ID of each object.

例えば、敵機NPC(ノンプレーヤキャラクター、ターゲットオブジェクト、標的オブジェクト、移動体)、ミサイルMI、エフェクトオブジェクト(爆発オブジェクト、煙オブジェクト、炎オブジェクト)などはスケーリング対象として記憶している。一方、地上物オブジェクト(木、陸地、戦車など)、プレーヤの操作対象の自機POB(プレーヤオブジェクト、移動体)は、スケーリング対象外のオブジェクトとして記憶する。例えば、図3(C)に示すような後方視点で画像を生成する場合には、自機POBの倍率はスケーリング対象とならずに(倍率は1倍のままで)オブジェクト空間に配置される。   For example, enemy aircraft NPC (non-player character, target object, target object, moving object), missile MI, effect object (explosion object, smoke object, flame object), etc. are stored as scaling targets. On the other hand, the ground object (tree, land, tank, etc.) and the player's operation target POB (player object, moving object) are stored as objects not to be scaled. For example, when an image is generated at a rear viewpoint as shown in FIG. 3C, the magnification of the own POB is not set as a scaling target (the magnification remains 1) and is arranged in the object space.

本実施形態では、スケーリング対象となるオブジェクト(スケーリングフラグ「1」のオブジェクト)については、そのオブジェクトの倍率を算出し、オブジェクトを構成する各ポリゴンの各頂点座標それぞれに算出された倍率を乗算することによって、オブジェクトをスケーリングする処理を行う。   In the present embodiment, for an object to be scaled (an object with scaling flag “1”), the magnification of the object is calculated, and each vertex coordinate of each polygon constituting the object is multiplied by the calculated magnification. To scale the object.

例えば、図4に示すように、オブジェクトOB1を構成する各ポリゴンの各頂点座標それぞれに2倍の倍率を乗算してスケーリング処理(拡大処理)を行い、スケーリング処理後のオブジェクトOB1をワールド座標系に配置する。   For example, as shown in FIG. 4, scaling processing (enlargement processing) is performed by multiplying each vertex coordinate of each polygon constituting the object OB1 by a factor of 2, and the scaled object OB1 is converted into the world coordinate system. Deploy.

そして、本実施形態では、スケーリング対象とはならないオブジェクト(スケーリングフラグ「0」のオブジェクト)については、オブジェクトデータ記憶部173に格納されているオブジェクトをそのまま(つまり、1倍の大きさのまま)ワールド座標系の配置位置に配置する。例えば、図4に示すように、オブジェクトOB2については、倍率1のままで、ワールド座標系のオブジェクトOB2に配置する処理を行う。   In the present embodiment, for an object that is not a scaling target (an object with a scaling flag “0”), the object stored in the object data storage unit 173 is used as it is (that is, the size is 1 time). Arrange at the position of the coordinate system. For example, as shown in FIG. 4, the object OB2 is placed on the object OB2 in the world coordinate system while maintaining the magnification 1.

なお、一般的に、スケーリング処理は拡大処理又は縮小処理のことをいうが、本実施形態は、迫力やスピード感の得られる画像を生成するために拡大を目的とするスケーリング処理を行っている。   In general, the scaling process refers to an enlargement process or a reduction process, but in the present embodiment, a scaling process is performed for the purpose of enlargement in order to generate an image with a powerful feeling and speed.

なお、スケーリング処理は、カメラ座標系において原点(視点位置)を中心に、オブジェクトをスケーリングする処理を行ってもよいし、オブジェクトのローカル座標系の原点を中心に、オブジェクトをスケーリングする処理を行ってもよい。また、スケーリング処理を行うことによってオブジェクトの配置位置がずれてしまう場合には、オブジェクトを、スケーリング処理前の配置位置に配置されるように補正する処理を行ってもよい。   The scaling process may be performed by scaling the object around the origin (viewpoint position) in the camera coordinate system, or by scaling the object around the origin of the object's local coordinate system. Also good. Further, when the placement position of the object is shifted by performing the scaling process, a process of correcting the object so that it is placed at the placement position before the scaling process may be performed.

(2)仮想カメラの視線方向と、仮想カメラからオブジェクトに向く方向とに基づいて、倍率を算出する手法
図5に示すように、本実施形態では、仮想カメラCの視線方向CVと、仮想カメラCからオブジェクトOB1に向く方向OVに基づいて、オブジェクトOB1の倍率を算出する処理を行う。例えば、仮想カメラCの視線方向CVと、仮想カメラの視点位置CPからオブジェクトOB1の配置位置P1に向く方向のOVとのなす角度θ(0度≦θ≦90度)が小さいほど、倍率が大きくなるように倍率を変化させる。つまり、視線方向CVと、方向OVとが一致する場合、つまり角度θが0度である場合には、倍率は最大値となり、視線方向CVと、方向OVとのなす角度θが90度である場合には、倍率は最小の値となる。
(2) A method for calculating the magnification based on the viewing direction of the virtual camera and the direction from the virtual camera toward the object As shown in FIG. 5, in the present embodiment, the viewing direction CV of the virtual camera C and the virtual camera Based on the direction OV from C toward the object OB1, a process of calculating the magnification of the object OB1 is performed. For example, the smaller the angle θ (0 ° ≦ θ ≦ 90 °) between the viewing direction CV of the virtual camera C and the OV in the direction from the viewpoint position CP of the virtual camera toward the arrangement position P1 of the object OB1, the larger the magnification. Change the magnification so that That is, when the line-of-sight direction CV and the direction OV coincide, that is, when the angle θ is 0 degree, the magnification is the maximum value, and the angle θ formed by the line-of-sight direction CV and the direction OV is 90 degrees. In this case, the magnification is the minimum value.

要するに、本実施形態では、オブジェクトOB1の位置P1が視線方向CV軸(視軸)に近いほど、倍率を増加させる。例えば、投影面に投影されたオブジェクトの代表点と、投影面の中心点(注視点)の距離が変化(増加)するにしたがって倍率を変化(減少)させるように制御する。具体的には、投影面の中心点にオブジェクトの代表点が一致するときは、所定値域(例えば2.0〜2.5)の最大値(例えば、2.5)を倍率の値とし、投影面の中心点とオブジェクトの代表点との距離が長くなるに従い、倍率を最小値(例えば、2.0)に向かって減少させる。   In short, in the present embodiment, the magnification is increased as the position P1 of the object OB1 is closer to the visual line direction CV axis (visual axis). For example, the magnification is changed (decreased) as the distance between the representative point of the object projected on the projection plane and the center point (gaze point) of the projection plane changes (increases). Specifically, when the representative point of the object coincides with the center point of the projection plane, the maximum value (for example, 2.5) in a predetermined range (for example, 2.0 to 2.5) is set as the magnification value, and the projection is performed. As the distance between the center point of the surface and the representative point of the object becomes longer, the magnification is decreased toward the minimum value (for example, 2.0).

例えば、本実施形態では、仮想カメラCの視線方向CVの単位ベクトルEcと、仮想カメラの位置CPからオブジェクトOB1に向く方向のOVの単位ベクトルEoとの内積値IPを求め、倍率を算出することができる。例えば、下式(1)によって内積値IPを求める。   For example, in this embodiment, the inner product value IP of the unit vector Ec in the line-of-sight direction CV of the virtual camera C and the unit vector Eo of OV in the direction from the virtual camera position CP toward the object OB1 is obtained, and the magnification is calculated. Can do. For example, the inner product value IP is obtained by the following equation (1).

IP=Ec・Eo・・・(1)
そして、本実施形態では、所定の値(例えば、2)と、内積値IPに0.5を乗算した値との合計値を、スケーリング処理で用いられる倍率として求める。例えば、下式(2)によって、スケーリング処理で用いられる倍率(scale)を求める。
IP = Ec · Eo (1)
In the present embodiment, a total value of a predetermined value (for example, 2) and a value obtained by multiplying the inner product value IP by 0.5 is obtained as a magnification used in the scaling process. For example, the scale used in the scaling process is obtained by the following equation (2).

scale=2+IP*0.5・・・(2)
つまり、視線方向CVと、方向OVとのなす角度θが0°≦θ≦90°の範囲で変化すると、倍率は2〜2.5の値域で変化することになる。
scale = 2 + IP * 0.5 (2)
That is, when the angle θ formed by the line-of-sight direction CV and the direction OV changes within a range of 0 ° ≦ θ ≦ 90 °, the magnification changes within a range of 2 to 2.5.

このようにすれば、画面中央部に近づくほどオブジェクトが2.5倍の大きさで拡大され、画面端部になるほど2倍の大きさで拡大されるような画像を生成することができる。   In this way, it is possible to generate an image in which the object is enlarged by a factor of 2.5 as it approaches the center of the screen, and is enlarged by a factor of 2 as it approaches the screen edge.

さらに、図6(A)(B)を用いて、スケーリング処理を行わない場合と、スケーリング処理を行う場合とを対比して説明する。   Furthermore, the case where the scaling process is not performed and the case where the scaling process is performed will be described using FIGS. 6A and 6B in comparison.

まず、図6(A)は、スケーリング処理を行わずに画像を生成する場合の例を示す。例えば、オブジェクトOB1が、倍率1のまま視線方向CV上の配置位置P11に配置されている場合、生成される画像F1においてオブジェクトOB1は画面中央に表示される。そして、オブジェクトOB1が、倍率1のまま視線方向CVからθ1だけずれた角度の方向に移動して配置位置P12に位置されると、生成される画像F2においてオブジェクトOB1は画面右端に表示される。そして、オブジェクトOB1が倍率1のまま視線方向CVからθ2だけずれた角度方向に移動して配置位置P13に位置されると仮想カメラCの視野範囲CAの外に配置されてしまうので、生成される画像F3においてオブジェクトOB1は、表示されなくなる。つまり、仮想カメラCの視野範囲(ビューボリューム、視錘台)の外にオブジェクトOB1が配置されるので、画像F3においてオブジェクトは表示されなくなる。   First, FIG. 6A shows an example in which an image is generated without performing scaling processing. For example, when the object OB1 is arranged at the arrangement position P11 in the line-of-sight direction CV with the magnification of 1, the object OB1 is displayed in the center of the screen in the generated image F1. Then, when the object OB1 is moved in the direction of the angle shifted by θ1 from the line-of-sight direction CV while maintaining the magnification 1, the object OB1 is displayed at the right end of the screen in the generated image F2. Then, if the object OB1 is moved in the angular direction shifted by θ2 from the line-of-sight direction CV with the magnification 1 and is positioned at the arrangement position P13, the object OB1 is generated outside the visual field range CA of the virtual camera C. The object OB1 is not displayed in the image F3. That is, since the object OB1 is disposed outside the visual field range (view volume, frustum base) of the virtual camera C, the object is not displayed in the image F3.

一方、図6(B)は、仮想カメラの視線方向と、仮想カメラからオブジェクトに向く方向とに基づいて倍率を算出し、算出された倍率に基づいてスケーリング処理を行い画像を生成する場合の例を示す。例えば、オブジェクトOB1が、視線方向CV上の配置位置P11に配置されている場合、オブジェクトOB1は最大の倍率で(例えば、2.5倍)で拡大される。したがって、生成される画像F4においてオブジェクトOB1は画面中央に拡大されて表示される。例えば、図6(A)の画像F1と比較すると、より大きく画面中央に表示されることになる。   On the other hand, FIG. 6B illustrates an example in which a magnification is calculated based on the viewing direction of the virtual camera and the direction from the virtual camera toward the object, and an image is generated by performing scaling processing based on the calculated magnification. Indicates. For example, when the object OB1 is arranged at the arrangement position P11 in the line-of-sight direction CV, the object OB1 is enlarged at the maximum magnification (for example, 2.5 times). Therefore, the object OB1 is enlarged and displayed in the center of the screen in the generated image F4. For example, as compared with the image F1 in FIG. 6A, the image is displayed larger in the center of the screen.

そして、オブジェクトOB1が、視線方向CVからθ1だけずれた角度の方向に移動して配置位置P12に位置されると、P11に位置していたときよりも倍率が減少され、例えば、オブジェクトがP12に位置している場合において生成される画像F5では、画像F4よりも小さいサイズでオブジェクトOB1が画面右端に表示される。しかし、図6(A)の画像F2よりも、大きくオブジェクトOB1が表示される。   Then, when the object OB1 moves in the direction of the angle deviated by θ1 from the line-of-sight direction CV and is positioned at the arrangement position P12, the magnification is reduced compared to when it is positioned at P11. In the image F5 generated when it is located, the object OB1 is displayed at the right end of the screen with a size smaller than that of the image F4. However, the object OB1 is displayed larger than the image F2 in FIG.

そして、オブジェクトOB1が視線方向CVからθ2だけずれた角度方向に移動して配置位置P13に位置されると、オブジェクトOB1の倍率は、P12に位置していたときよりも減少されるが、オブジェクトOB1は、視野範囲外に位置するので画像F6において表示されなくなる。   When the object OB1 moves in the angular direction deviated by θ2 from the line-of-sight direction CV and is positioned at the arrangement position P13, the magnification of the object OB1 is reduced compared to when it is positioned at P12, but the object OB1. Is not displayed in the image F6 because it is located outside the visual field range.

このように、図6(B)に示すように、仮想カメラの視線方向と、仮想カメラからオブジェクトに向く方向とに基づいて、倍率を算出してスケーリング処理を行うと、画面中央部に表示されるほどオブジェクトOB1が拡大して表示される。通常、画面中央部は、プレーヤの意識が最も集中しやすい箇所である。したがって、画面端部よりも画面中央部に近づくほどオブジェクトOB1を大きくした方が、オブジェクトOB1の大きさの変化に抑揚をつけることができ、迫力感、スピード感のある画像を生成することができる。つまり、プレーヤがあまり意識しない画面端部では、画面中央部よりもオブジェクトOB1の大きさを小さくすることで、画面中央部にオブジェクトOB1が表示される際の迫力、スピード感をより増大させることができる。   As shown in FIG. 6B, when scaling processing is performed by calculating the magnification based on the viewing direction of the virtual camera and the direction from the virtual camera toward the object, the image is displayed in the center of the screen. The object OB1 is enlarged and displayed. Usually, the center of the screen is the place where the player's consciousness is most likely to concentrate. Therefore, the larger the object OB1 is, the closer to the center of the screen than the edge of the screen, the more inflection can be made to the change in the size of the object OB1, and an image with a sense of power and speed can be generated. . That is, by reducing the size of the object OB1 at the edge of the screen where the player is not so conscious, the force and speed when the object OB1 is displayed at the center of the screen can be further increased. it can.

(3)仮想カメラとオブジェクトとの距離に応じて倍率を算出する手法
本実施形態では、仮想カメラの視点位置からスケーリング対象のオブジェクトの位置までの距離に基づいて、倍率を求めてもよい。なお、仮想カメラの視点位置からスケーリング対象のオブジェクトの位置までの距離は、仮想カメラの視点位置からオブジェクトの位置までの直線距離でもよいし、仮想カメラの視点位置から、オブジェクトまでの視線方向についての距離でもよい(カメラ座標系におけるZ方向への距離でもよい)。
(3) Method of calculating magnification according to distance between virtual camera and object In this embodiment, the magnification may be obtained based on the distance from the viewpoint position of the virtual camera to the position of the object to be scaled. Note that the distance from the viewpoint position of the virtual camera to the position of the object to be scaled may be a linear distance from the viewpoint position of the virtual camera to the object position, or the line-of-sight direction from the viewpoint position of the virtual camera to the object. It may be a distance (may be a distance in the Z direction in the camera coordinate system).

例えば、仮想カメラの位置からスケーリング対象のオブジェクトの位置までの距離をDとし、距離Dが0以上であってLmax以下にあるとき(0≦D≦Lmax)は、仮想カメラとオブジェクトとの距離Dが増加するに従って、倍率を増加させるように変化させる。   For example, when the distance from the position of the virtual camera to the position of the object to be scaled is D, and the distance D is not less than 0 and not more than Lmax (0 ≦ D ≦ Lmax), the distance D between the virtual camera and the object As the value increases, the magnification is changed to increase.

例えば、シューティングゲームにおける画像を生成する場合には、Lmaxは、プレーヤがターゲットオブジェクトを射撃可能な範囲の値とすることが望ましい。このようにすれば、射撃可能なターゲットオブジェクトを拡大して表示させることができ、識別し易いからである。   For example, when generating an image in a shooting game, Lmax is preferably set to a value within a range in which the player can shoot the target object. This is because the target object that can be shot can be enlarged and displayed, and can be easily identified.

より具体的に、図7(A)(B)を用いて、スケーリング処理を行わない場合と、仮想カメラからオブジェクトまでの距離Dに基づいて倍率を制御してスケーリング処理を行う場合とを対比して説明する。   More specifically, FIGS. 7A and 7B are used to compare the case where the scaling process is not performed and the case where the scaling process is performed by controlling the magnification based on the distance D from the virtual camera to the object. I will explain.

図7(A)は、スケーリング処理を行わずに画像を生成する場合の例を示す。例えば、オブジェクトOB1が、倍率1のまま視線方向CV上の配置位置P14に配置されている場合、生成される画像F7においてオブジェクトOB1は画面中央に表示される。しかし、P14が視点CPからあまりに遠いところにある場合には、画像F7に示すように、表示されるオブジェクトOB1は数ドットで表示されるので識別しづらいものとなっている。   FIG. 7A shows an example in which an image is generated without performing scaling processing. For example, when the object OB1 is arranged at the arrangement position P14 in the line-of-sight direction CV with the magnification of 1, the object OB1 is displayed in the center of the screen in the generated image F7. However, when P14 is too far from the viewpoint CP, as shown in the image F7, the displayed object OB1 is displayed with several dots, which makes it difficult to identify.

そして、オブジェクトOB1が、倍率1のまま仮想カメラCから相対的に遠ざかりP15に位置する。すると、生成される画像F8においてオブジェクトOB1は画面中央に表示されるが、数ドットで表示されたままであり、識別しづらいものとなっている。   Then, the object OB1 is relatively far away from the virtual camera C with the magnification of 1, and is positioned at P15. Then, in the generated image F8, the object OB1 is displayed at the center of the screen, but remains displayed with a few dots, making it difficult to identify.

さらに、オブジェクトOB1が、倍率1のまま仮想カメラCから相対的に遠ざかりP16に位置する。すると、生成される画像F9においてオブジェクトOB1は画面中央に表示されるが、表示されるオブジェクトOB1の大きさに変化はなく、識別しづらいものとなっている。   Furthermore, the object OB1 is positioned relatively far away from the virtual camera C with the magnification of 1 and located at P16. Then, in the generated image F9, the object OB1 is displayed in the center of the screen, but the size of the displayed object OB1 does not change and is difficult to identify.

一方、図7(B)は、仮想カメラの位置CPからオブジェクトOB1までの距離に基づいてスケーリング処理を行い画像を生成する場合の例を示す。例えば、オブジェクトOB1が、1倍より大きな倍率(例えば、2〜2.5の値域で変化するの倍率)でスケーリングされて配置位置P14に配置されている場合、生成される画像F10においてオブジェクトOB1は画面中央に拡大されて表示される。例えば、図7(A)の画像F7と対比すると、識別し易くなる。   On the other hand, FIG. 7B shows an example in which an image is generated by performing scaling processing based on the distance from the position CP of the virtual camera to the object OB1. For example, when the object OB1 is scaled at a magnification larger than 1 (for example, a magnification that changes in a range of 2 to 2.5) and arranged at the arrangement position P14, the object OB1 is generated in the generated image F10. It is enlarged and displayed in the center of the screen. For example, when compared with the image F7 in FIG.

そして、オブジェクトOB1が、仮想カメラCから相対的に遠ざかりP15に位置すると、P14に位置していたときよりも、倍率が増加するのでオブジェクトOB1が拡大されてオブジェクト空間に配置される。そして、生成される画像F11においては、オブジェクトOB1は画像F10よりも小さく表示され、オブジェクトOB1が識別されつつも遠ざかっていく様子を視認できるようになる。例えば、図7(A)の画像F8と比較すると、識別し易くなる。   When the object OB1 is relatively far away from the virtual camera C and is located at P15, the magnification is increased compared to when the object OB1 is located at P14, so that the object OB1 is enlarged and arranged in the object space. In the generated image F11, the object OB1 is displayed smaller than the image F10, and it is possible to visually recognize how the object OB1 is moving away while being identified. For example, when compared with the image F8 in FIG.

さらに、オブジェクトOB1が、仮想カメラCから相対的に遠ざかりP16に位置すると、P15に位置していたときよりも、倍率が増加するのでオブジェクトOB1がさらに拡大されてオブジェクト空間に配置される。そして、生成される画像F12において、オブジェクトOB1は画像F11よりも小さく表示され、オブジェクトOB1が識別されつつも遠ざかっていく様子を視認できるようになる。例えば、図7(A)の画像F9と比較すると、識別し易くなる。   Furthermore, when the object OB1 is positioned relatively far from the virtual camera C and located at P16, the magnification is increased compared to when the object OB1 is located at P15, so that the object OB1 is further enlarged and arranged in the object space. In the generated image F12, the object OB1 is displayed smaller than the image F11, and it is possible to visually recognize how the object OB1 moves away while being identified. For example, when compared with the image F9 in FIG.

このように、図7(B)では、図7(A)よりも、オブジェクトOB1を視認し易いものとなっており、さらにオブジェクトOB1が仮想カメラCから相対的に遠ざかっていく様子を確認することができる。   In this way, in FIG. 7B, it is easier to visually recognize the object OB1 than in FIG. 7A, and it is confirmed that the object OB1 is moving away from the virtual camera C relatively. Can do.

(4)倍率の変化
本実施形態では、仮想カメラからオブジェクトまでの距離に基づいて、倍率を変化させる場合には、その変化が緩やかになるように制御している。
(4) Change of magnification In this embodiment, when changing the magnification based on the distance from the virtual camera to the object, the change is controlled so as to be gradual.

例えば、本実施形態では、0≦D≦Lmaxにおいて仮想カメラからオブジェクトまでの距離Dが増加するに従って、倍率を所定値域(2から2.5の値域)の最小値から最大値にかけて増加させる処理を行っている。このようにすれば、スケーリング処理を行っても遠近感に矛盾が生じないような画像を生成することができるからである。   For example, in the present embodiment, as the distance D from the virtual camera to the object increases in 0 ≦ D ≦ Lmax, the magnification is increased from the minimum value to the maximum value in a predetermined value range (value range from 2 to 2.5). Is going. This is because it is possible to generate an image in which no contradiction occurs in the perspective even when the scaling process is performed.

具体的に、図8(A)、(B)を用いて説明する。例えば、図8(A)は、仮想カメラの視点位置CPから、スケーリング対象のオブジェクトの位置までの距離Dと、倍率との関係を示す。図8(A)に示すように、視点位置からオブジェクトまでの距離Dが0のときは倍率=2であり、0≦D≦Lmax(例えば、Lmax=300メートル)では、距離Dが増加するに従って倍率が2〜2.5の値域で増加する。   Specifically, description will be made with reference to FIGS. For example, FIG. 8A shows the relationship between the magnification D and the distance D from the viewpoint position CP of the virtual camera to the position of the object to be scaled. As shown in FIG. 8A, magnification = 2 when the distance D from the viewpoint position to the object is 0, and when 0 ≦ D ≦ Lmax (for example, Lmax = 300 meters), the distance D increases as the distance D increases. The magnification increases in the range of 2 to 2.5.

仮に、図8(B)に示すように、0≦D≦Lmaxにおいて、倍率を0〜2.5の値域で変化させようとすると、倍率の変化が急になり、遠近感に矛盾が生じる画像を生成してしまうことになる。   As shown in FIG. 8B, if the magnification is changed in the range of 0 to 2.5 in 0 ≦ D ≦ Lmax, the change in the magnification becomes abrupt, and the perspective is inconsistent. Will be generated.

例えば、図9に示すように、オブジェクトOB1がP14、P15、P16というように、仮想カメラCから相対的に遠ざかる場合であっても、生成される画像では、画像F13、F14、F15に示すように、徐々にオブジェクトOB1が大きく表示されてしまう。つまり、オブジェクト空間においては仮想カメラからオブジェクトOB1が遠ざかっているにもかかわらず、生成される画像F13、14、15では、仮想カメラCは相対的に、オブジェクトOB1に近づいているように表示されてしまう。   For example, as shown in FIG. 9, even when the object OB1 is relatively far from the virtual camera C, such as P14, P15, and P16, the generated images are shown as images F13, F14, and F15. Then, the object OB1 is gradually displayed larger. That is, in the object space, although the object OB1 is away from the virtual camera, the generated images F13, 14, and 15 display the virtual camera C relatively close to the object OB1. End up.

そこで、本実施形態では、このような矛盾が生じないようにするために、所定値域である2〜2.5の値域で、距離Dの増加に応じて、倍率を増加させる処理を行い、遠近感に違和感のない画像を生成するようにしている。つまり、3次元画像を生成する処理では、透視投影変換処理でスケーリング処理(ビューボリュームを正規化するためのスケーリング処理)を行っている。つまり、透視投影変換処理に影響を及ぼさない範囲で、仮想カメラからオブジェクトまでの距離Dに基づいて倍率を変化させる必要がある。したがって、本実施形態では、遠近感に矛盾が生じないような画像を生成するために、これらの透視投影変換に伴うスケーリングの倍率を考慮して、0≦D≦Lmaxにおいて仮想カメラからオブジェクトまでの距離Dに基づいて変化させる倍率の所定値域(例えば、2.0〜2.5)を設定している。   Therefore, in this embodiment, in order to prevent such a contradiction, a process of increasing the magnification according to the increase of the distance D is performed in the range of 2 to 2.5 which is the predetermined range, An image with no sense of incongruity is generated. That is, in the process of generating a three-dimensional image, the scaling process (scaling process for normalizing the view volume) is performed by the perspective projection conversion process. That is, it is necessary to change the magnification based on the distance D from the virtual camera to the object within a range that does not affect the perspective projection conversion process. Therefore, in this embodiment, in order to generate an image in which there is no contradiction in perspective, in consideration of the scaling magnification associated with these perspective projection transformations, the virtual camera to the object is satisfied from 0 ≦ D ≦ Lmax. A predetermined range (for example, 2.0 to 2.5) of the magnification to be changed based on the distance D is set.

このように、仮想カメラからオブジェクトまでの距離に基づいて、スケーリングを行う際には、遠近感に違和感のない画像を生成するために、倍率の変化を緩やかにする必要がある。しかし、倍率の変化を緩やかにすると迫力やスピード感が乏しくなってしまう。本実施形態では、上述したように、仮想カメラの方向CVと、仮想カメラからオブジェクトに向かう方向OVとに基づいて、算出される倍率を用いてスケーリング処理を行うことで、この問題を解決できる。   As described above, when scaling is performed based on the distance from the virtual camera to the object, it is necessary to moderately change the magnification in order to generate an image with a sense of incongruity in perspective. However, if the change in magnification is moderated, the feeling of power and speed will be poor. In the present embodiment, as described above, this problem can be solved by performing the scaling process using the calculated magnification based on the direction CV of the virtual camera and the direction OV from the virtual camera toward the object.

例えば、仮想カメラとオブジェクトとの距離に応じて算出する第1の倍率K1(2≦K1≦2.5)と、仮想カメラの方向CVと、仮想カメラからオブジェクトに向かう方向OVとに基づいて算出される第2の倍率K2(0≦K2≦0.5)とに基づいて、スケーリング処理で用いる倍率を求める。例えば、K1とK2とを加算した値K(K=K1+K2)を、スケーリング処理で用いる倍率とする。このようにすれば、遠近感に矛盾のない画像を生成することができるとともに、画面中央部では拡大されたオブジェクトが表示されるので、迫力やスピード感の得られる画像を生成することができる。   For example, the calculation is based on the first magnification K1 (2 ≦ K1 ≦ 2.5) calculated according to the distance between the virtual camera and the object, the direction CV of the virtual camera, and the direction OV from the virtual camera toward the object. Based on the second magnification K2 (0 ≦ K2 ≦ 0.5), the magnification used in the scaling process is obtained. For example, a value K (K = K1 + K2) obtained by adding K1 and K2 is set as a magnification used in the scaling process. In this way, it is possible to generate an image with no contradiction in perspective, and an enlarged object is displayed in the center of the screen, so that an image with a sense of power and speed can be generated.

(5)倍率の補正
本実施形態では、スケーリング対象のオブジェクトが仮想カメラに接近している場合には、より自然な大きさに見えるように、オブジェクトの倍率を元の大きさになるように補正する処理を行っている。
(5) Correction of magnification In this embodiment, when the object to be scaled is close to the virtual camera, the magnification of the object is corrected to the original size so that it looks more natural. Processing to do.

図10は、仮想カメラCを自機POBの後方視点で制御する場合における、画像F20の一例を示す。   FIG. 10 shows an example of an image F20 when the virtual camera C is controlled from the rear viewpoint of the own device POB.

例えば、倍率=1のときの、自機POBと敵機NPCとのオブジェクトの大きさがほぼ同じであり、敵機NPCがスケーリング対象のオブジェクト、自機POBがスケーリング対象ではないオブジェクトであるとする。そして、敵機NPCが約2倍の大きさでオブジェクト空間に配置されると、図10に示すように、画像F20では敵機NPCが自機POBよりも大きく見える画像が生成される。   For example, when the magnification = 1, the sizes of the objects of the own aircraft POB and the enemy aircraft NPC are substantially the same, and the enemy aircraft NPC is an object to be scaled and the own aircraft POB is an object not to be scaled. . When the enemy aircraft NPC is arranged in the object space with about twice the size, an image in which the enemy aircraft NPC appears larger than the own POB is generated in the image F20 as shown in FIG.

本来ならば、自機POBと敵機NPCは同じ大きさの機体であるにもかかわらず、仮想カメラCから近距離に敵機EOBが位置することになると、スケーリング対象外の自機POBと、スケーリング対象の敵機EOBとの大きさの違いが目立ってしまう。   Originally, when the enemy aircraft EOB is located at a short distance from the virtual camera C even though the own aircraft POB and the enemy aircraft NPC are the same size aircraft, the own aircraft POB that is not subject to scaling, The difference in size from the enemy aircraft EOB to be scaled becomes conspicuous.

そこで、本実施形態では、図11に示すように、仮想カメラCを中心に半径R以内(例えば50メートル以内)にある所定範囲内にスケーリング対象のオブジェクト(例えば敵機NPC)が位置する場合には、仮想カメラCとそのオブジェクトとの距離が零のときに1倍になるように、倍率を補正する処理を行う。そして、補正された倍率に基づいて、オブジェクトをスケーリングする処理を行う。例えば、半径Rに対する仮想カメラの視点位置CPからオブジェクトOB1までの距離の割合に基づいて、1倍と、算出した倍率Kとを線形合成する。   Therefore, in the present embodiment, as shown in FIG. 11, when the object to be scaled (for example, enemy aircraft NPC) is located within a predetermined range within the radius R (for example, within 50 meters) around the virtual camera C. Performs a process of correcting the magnification so that the distance between the virtual camera C and the object becomes zero when the distance between the virtual camera C and the object is zero. Then, a process of scaling the object is performed based on the corrected magnification. For example, based on the ratio of the distance from the viewpoint position CP of the virtual camera to the object OB1 with respect to the radius R, 1 × and the calculated magnification K are linearly combined.

このようにすれば、スケーリング対象のオブジェクトが仮想カメラに近づくほど、本来の大きさ(1倍の大きさ)になるようにスケーリングされるので、より自然な画像を生成することができる。   In this way, the closer the object to be scaled is to the virtual camera, the more the image is scaled to the original size (one time larger), so a more natural image can be generated.

例えば、図11に示すように、敵機NPCが所定範囲内に位置する場合には、敵機NPCは、仮想カメラCとそのオブジェクトとの距離が零のときに1倍になるように倍率が補正され、補正された倍率に基づきスケーリングされた敵機NPCがオブジェクト空間に配置される。そして、生成される画像F21では、敵機NPCと自機POBとの大きさがほぼ同じになり、大きさ差異が目立たなくなり自然な画像が生成される。   For example, as shown in FIG. 11, when the enemy aircraft NPC is located within a predetermined range, the enemy aircraft NPC has a magnification so that it becomes 1 when the distance between the virtual camera C and the object is zero. The enemy aircraft NPC that has been corrected and scaled based on the corrected magnification is arranged in the object space. Then, in the generated image F21, the enemy aircraft NPC and the own aircraft POB have substantially the same size, so that the size difference is not noticeable and a natural image is generated.

(6)リプレイ(再生処理)
本実施形態では、リプレイ用仮想カメラに基づいて、スケーリング処理を行うようにしてもよい。つまり、本実施形態では、各仮想カメラのローカル座標系で、スケーリング処理を行うようにする。
(6) Replay (reproduction processing)
In the present embodiment, the scaling process may be performed based on the virtual camera for replay. That is, in this embodiment, the scaling process is performed in the local coordinate system of each virtual camera.

例えば、リプレイ用仮想カメラでレンダリングするための情報として、ゲーム処理中に、ワールド座標系における自機や敵機などの各オブジェクトの位置情報や、動作情報(回転情報)を、リプレイ用のデータとして記憶部に記憶する。   For example, as information for rendering with a virtual camera for replay, during game processing, position information and motion information (rotation information) of each object such as the own aircraft and enemy aircraft in the world coordinate system are used as data for replay. Store in the storage unit.

そして、リプレイ時では、リプレイ用のデータに基づいて、各オブジェクトの位置、動作演算を行い、リプレイ用仮想カメラから見える画像を生成する。リプレイ時に、スケーリング処理を行う場合には、各オブジェクトの位置情報とリプレイ用仮想カメラの位置情報とに基づいて、1倍の大きさのオブジェクトに対してスケーリング処理を行えばよい。   At the time of replay, the position and motion calculation of each object is performed based on the replay data, and an image that can be seen from the replay virtual camera is generated. When scaling processing is performed at the time of replay, the scaling processing may be performed on an object having a size that is one time based on the position information of each object and the position information of the virtual camera for replay.

(7)フローチャート
図12を用いて、スケーリングの処理のフローチャートの一例について説明する。まず、スケーリング対象のオブジェクトか否かを判断する処理を行う(ステップS1)。スケーリング対象のオブジェクトでない場合は(ステップS1のN)、ステップS13に進み、スケーリング対象のオブジェクトであると判断されると(ステップS1のY)、そのオブジェクトをワールド座標に配置する処理を行う(ステップS2)。
(7) Flowchart An example of the flowchart of the scaling process will be described with reference to FIG. First, processing for determining whether or not the object is a scaling target is performed (step S1). If the object is not the object to be scaled (N in step S1), the process proceeds to step S13, and if it is determined that the object is the object to be scaled (Y in step S1), the process of arranging the object in the world coordinates is performed (step S1). S2).

そして、仮想カメラの視点位置と当該オブジェクトの位置との距離Dの2乗(D)を求める(ステップS3)。そして、D≦0である場合には、r0に0.0を代入する(ステップS4)。一方、0<D<300である場合には、r0にD/300を代入する(ステップS5)。一方、D≧300である場合には、r0に1.0を代入する(ステップS6)。 Then, the square (D 2 ) of the distance D between the viewpoint position of the virtual camera and the position of the object is obtained (step S3). If D 2 ≦ 0, 0.0 is substituted for r0 (step S4). On the other hand, in the case of 0 <D 2 <300 2 substitutes D 2/300 2 to r0 (step S5). On the other hand, in the case of D 2 ≧ 300 2 substitutes r0 to 1.0 (step S6).

次に、仮想カメラの視線ベクトルの単位ベクトルをEc、仮想カメラの視点位置からオブジェクトの位置へのベクトルの単位ベクトルをEoとし、これらの内積から2ベクトルのcosθの値を求める。つまり、cosθ=Ec・Eoを求める(ステップS7)。   Next, the unit vector of the line-of-sight vector of the virtual camera is Ec, the unit vector of the vector from the viewpoint position of the virtual camera to the object position is Eo, and the value of cos θ of the two vectors is obtained from these inner products. That is, cos θ = Ec · Eo is obtained (step S7).

次に、r1に(cosθ)を代入し(ステップS8)、処理対象のオブジェクトが通常オブジェクト(属性が通常である場合)は、scaleに2.0+0.5*r0+0.5*r1を代入する(ステップS9)、処理対象のオブジェクトがエフェクトオブジェクト(属性がエフェクトである場合)は、scaleに1.0+0.5*r0を代入する(ステップS10)。 Next, (cos θ) 2 is substituted for r1 (step S8), and if the object to be processed is a normal object (when the attribute is normal), 2.0 + 0.5 * r0 + 0.5 * r1 is substituted for scale. (Step S9) If the object to be processed is an effect object (when the attribute is an effect), 1.0 + 0.5 * r0 is substituted for scale (step S10).

次に、D<50である場合には、ステップS11に進み、scaleを補正する処理を行う。つまり、r2にD/50を代入し、1.0*(1.0−r2)+scale*r2の値を、新たなscale値として代入する処理を行う(ステップS11)。 Then, in the case of D 2 <50 2, the process proceeds to step S11, performs a process of correcting the scale. That is, substituting D 2/50 2 to r2, the value of 1.0 * (1.0-r2) + scale * r2, it performs a process of substituting a new scale value (step S11).

次に、求めたscale値に基づき、オブジェクトをスケーリングする処理を行う(ステップS12)。   Next, a process for scaling the object is performed based on the obtained scale value (step S12).

そして、フラスタムチェック(視野範囲CA(ビューボリューム、視錘台)にオブジェクトが属するか否かのチェック)を行い(ステップS13)、偽判定である場合にはステップS15に進み、真判定である場合には、拡大されたオブジェクトを描画処理に回すための処理を行う(ステップS14)、そして、次のオブジェクトについて、スケーリング処理を行う。以上で処理が終了する。   Then, a frustum check (check whether or not the object belongs to the field of view range CA (view volume, frustum platform)) is performed (step S13), and if it is false determination, the process proceeds to step S15 and true determination is made. In this case, a process for sending the enlarged object to the drawing process is performed (step S14), and the scaling process is performed for the next object. The process ends here.

3.エフェクトオブジェクトを配置する手法
本実施形態では、自機から発射されたミサイルや機関砲などが敵機にヒットすると敵機が爆発するエフェクトを発生させる処理を行っている。例えば、エフェクトが発生すると爆発、炎、煙などのエフェクトオブジェクトをオブジェクト空間に配置している。本実施形態においてエフェクトオブジェクトを配置する手法について、以下、詳細に説明する。
3. Method of Arranging Effect Objects In the present embodiment, processing is performed to generate an effect that causes an enemy aircraft to explode when a missile or machine gun fired from the aircraft hits the enemy aircraft. For example, when an effect occurs, effect objects such as explosion, flame, and smoke are arranged in the object space. A method for arranging effect objects in the present embodiment will be described in detail below.

なお、本実施形態では、戦闘機を移動させるフライトシミュレーションに関する画像生成処理を行うものであるので、自機が移動する場合には、自機の移動に追従(連動)するように仮想カメラの移動制御を行っている。例えば、図3(A)〜(C)に示すように、自機の移動速度ベクトルPVと、仮想カメラの移動速度ベクトルCMVとが、所定の関係(例えば、速度が同一、移動方向が同一)になるように制御する。ここで移動速度ベクトルとは、その大きさ(長さ)によって移動速度を示し、その向きによって移動方向を示すベクトルである。   In this embodiment, image generation processing related to flight simulation for moving a fighter plane is performed. Therefore, when the aircraft moves, the virtual camera moves so as to follow (link) the movement of the aircraft. Control is in progress. For example, as shown in FIGS. 3A to 3C, the movement speed vector PV of the own device and the movement speed vector CMV of the virtual camera have a predetermined relationship (for example, the speed is the same and the movement direction is the same). Control to become. Here, the moving speed vector is a vector that indicates the moving speed by its size (length) and indicates the moving direction by its direction.

また、フライトシューティングゲームで登場する戦闘機(飛行機など)は前進することによって飛行を行うものであるので、仮想カメラの視線方向と仮想カメラの移動方向とが同一になる傾向にある。本実施形態においては、説明を簡易にするために、特に指摘しない限り、仮想カメラの視線方向CVと仮想カメラの移動速度ベクトルCMVとが同一方向であるものとして説明する。   In addition, since a fighter (airplane or the like) appearing in a flight shooting game performs flight by moving forward, the line-of-sight direction of the virtual camera and the moving direction of the virtual camera tend to be the same. In the present embodiment, in order to simplify the description, the visual direction CV of the virtual camera and the moving speed vector CMV of the virtual camera are assumed to be in the same direction unless otherwise specified.

(1)エフェクトの発生
本実施形態では、オブジェクト空間の所与の位置でエフェクトを発生させるための所定条件を満たしたか否かを判断し、所定条件を満たした場合にエフェクトを発生させる処理を行う。例えば、敵機などの移動体が撃墜したと判断された場合、すなわち、敵機の耐久値が0になった場合(敵機のダメージ率が100%になった場合)に、所定条件を満たすと判断する。なお、プログラムの進行に伴い、イベントを発生させるタイミングが到来した場合に、エフェクトを発生させるための所定条件を満たしたと判断してもよい。
(1) Generation of Effect In this embodiment, it is determined whether or not a predetermined condition for generating an effect is satisfied at a given position in the object space, and processing for generating an effect is performed when the predetermined condition is satisfied. . For example, when it is determined that a moving body such as an enemy aircraft has been shot down, that is, when the durability value of the enemy aircraft becomes 0 (when the damage rate of the enemy aircraft reaches 100%), the predetermined condition is satisfied. Judge. Note that it may be determined that a predetermined condition for generating an effect is satisfied when the timing for generating an event arrives as the program progresses.

本実施形態のエフェクト発生についてより具体的に説明する。図13(A)は、ミサイル発射の入力情報を受け付けてミサイルMIが発射されるときの自機POB、敵機NPCの例を示す。例えば、自機POBの移動に追従する仮想カメラCから見える画像F30が生成される。画像F30では、敵機NPCに向かってミサイルMIが飛ぶ様子が表示されることになる。   The effect generation of this embodiment will be described more specifically. FIG. 13A shows an example of the own aircraft POB and the enemy aircraft NPC when the missile launch input information is received and the missile MI is launched. For example, an image F30 that can be seen from the virtual camera C following the movement of the own device POB is generated. In the image F30, a state in which the missile MI is flying toward the enemy aircraft NPC is displayed.

そして、図13(B)に示すように、自機POBが左方向に移動すると、自機POBに追従する仮想カメラCから見える画像F31では、画面右寄りに、敵機NPC、ミサイルMIが表示されることになる。   As shown in FIG. 13B, when the own device POB moves to the left, in the image F31 seen from the virtual camera C following the own device POB, the enemy aircraft NPC and the missile MI are displayed on the right side of the screen. Will be.

そして、図13(C)に示すように、自機POBが前方に移動すると、自機POBの視野範囲外で、ミサイルMIが敵機NPCにヒットし(交差し)、ミサイルMIのヒットによって敵機NPCの耐久値が0となると、エフェクトが発生したと判断する。   Then, as shown in FIG. 13C, when the own POB moves forward, the missile MI hits (crosses) the enemy aircraft NPC outside the field of view of the own POB, and the enemy is hit by the missile MI hit. When the durability value of the machine NPC becomes 0, it is determined that an effect has occurred.

本実施形態では、エフェクト発生時において、敵機NPC及びミサイルMIをオブジェクト空間から削除(消去)し、爆発オブジェクトBO(エフェクトオブジェクトの一例)を、エフェクト発生位置EPに配置する処理を行う。なお、エフェクト発生位置EPは、例えば、ミサイルMIが敵機NPCにヒットしたときの敵機NPCの配置位置、或いは、ミサイルMIと敵機NPCとのヒット位置とすることができる。なお、図13(C)に示すように、爆発オブジェクトBOが仮想カメラCの視野範囲外にあるので、画像F32に示すように、爆発オブジェクトBOを描画することができない。   In the present embodiment, when an effect occurs, the enemy aircraft NPC and the missile MI are deleted (erased) from the object space, and an explosion object BO (an example of an effect object) is placed at the effect occurrence position EP. The effect occurrence position EP can be, for example, an arrangement position of the enemy aircraft NPC when the missile MI hits the enemy aircraft NPC, or a hit position between the missile MI and the enemy aircraft NPC. As shown in FIG. 13C, since the explosion object BO is outside the visual field range of the virtual camera C, the explosion object BO cannot be drawn as shown in the image F32.

(2)エフェクトオブジェクトの配置手法の例1
まず、エフェクト発生位置EPに基づいて、エフェクトオブジェクトの配置手法について説明する。
(2) Effect Object Placement Method Example 1
First, an effect object placement method will be described based on the effect occurrence position EP.

図14(A)は、エフェクト発生時のエフェクトオブジェクトの例を示す。本実施形態では、エフェクト発生時に、エフェクト発生位置EPに爆発オブジェクトBOを配置させる処理を行う。なお、図14(A)に示すように、エフェクト発生位置EPが仮想カメラCの視野範囲外にある場合には、エフェクト発生時において生成される画像F32では、爆発する様子を表現することができない。   FIG. 14A shows an example of an effect object when an effect occurs. In the present embodiment, when an effect is generated, a process of placing the explosion object BO at the effect generation position EP is performed. As shown in FIG. 14A, when the effect occurrence position EP is outside the visual field range of the virtual camera C, the image F32 generated when the effect is generated cannot express the state of explosion. .

図14(B)は、自機が前方に移動したとき(例えば、エフェクト発生時から1秒後)のエフェクトオブジェクトの例を示す。本実施形態では、時間経過に伴い、煙オブジェクト(エフェクトオブジェクトの一例)EOBを、エフェクト発生位置EPを中心に放射状に配置させる。つまり、爆発の後、黒煙などが発生する演出画像を生成している。しかし、図14(B)に示すように、仮想カメラCの視野範囲外において、煙オブジェクトEOBが配置されている場合には、生成される画像F33では煙が発生する様子を表現することができない。   FIG. 14B shows an example of an effect object when the own device moves forward (for example, one second after the effect occurs). In the present embodiment, the smoke object (an example of an effect object) EOB is arranged radially with the effect occurrence position EP as the time passes. That is, an effect image in which black smoke or the like is generated after the explosion is generated. However, as shown in FIG. 14B, when the smoke object EOB is arranged outside the visual field range of the virtual camera C, the generated image F33 cannot express the state in which smoke is generated. .

図14(C)は、自機が更に前方に移動したとき(例えば、エフェクト発生時から2秒後)の煙オブジェクトEOBの例を示す。本実施形態では、さらに時間が経過すると、煙オブジェクトが更に、エフェクト発生位置EPを中心に、放射状に拡散されるように各煙オブジェクトが配置される。つまり、各煙オブジェクトの、EPを中心に放射状に向く移動速度ベクトルEVに基づき、各煙オブジェクトEOBが配置される。しかし、図14(C)に示すように、仮想カメラの視野範囲外において、煙オブジェクトEOBが配置されている場合には、生成される画像F34では、煙が拡散されていく様子を表現することができない。   FIG. 14C shows an example of the smoke object EOB when the own device further moves forward (for example, 2 seconds after the effect occurs). In this embodiment, when the time further elapses, each smoke object is arranged so that the smoke object is further diffused radially around the effect generation position EP. That is, each smoke object EOB is arranged based on the moving speed vector EV of each smoke object that is radially directed around the EP. However, as shown in FIG. 14C, when the smoke object EOB is arranged outside the visual field range of the virtual camera, the generated image F34 expresses how the smoke is diffused. I can't.

なお、これらの煙オブジェクトEOBは、各煙オブジェクトの移動速度ベクトルEVに基づいて配置されるが、エフェクト発生時から3秒後にオブジェクト空間から消去される。   These smoke objects EOB are arranged based on the movement speed vector EV of each smoke object, but are erased from the object space 3 seconds after the effect occurs.

(3)エフェクトオブジェクトの配置手法の例2
エフェクトオブジェクトの配置手法の例1によれば、仮想カメラの視野範囲外にエフェクトオブジェクトが配置されてしまうと、エフェクトを表現した画像を生成できなくなってしまう。そこで、本実施形態では、特定位置を算出し、エフェクト発生位置から特定位置に向かって、エフェクトオブジェクトを配置する手法を採用する。このようにすれば、仮想カメラの視野範囲内にエフェクトを配置する可能性を高くすることができる。また、何れの方向において、エフェクトが発生したのかを有る程度予測することができ、より臨場感のあるエフェクトを表現することができる。
(3) Example 2 of effect object placement method
According to the example 1 of the effect object arrangement method, if an effect object is arranged outside the visual field range of the virtual camera, an image representing the effect cannot be generated. Therefore, in the present embodiment, a method of calculating a specific position and arranging an effect object from the effect generation position toward the specific position is adopted. In this way, it is possible to increase the possibility of arranging the effect within the visual field range of the virtual camera. In addition, in which direction the effect has occurred can be predicted to some extent, and an effect with a more realistic feeling can be expressed.

まず、本実施形態の特定位置の算出手法について説明する。本実施形態では、エフェクト発生時に、自機POBの移動情報に基づいて、自機POBの10秒後(所定期間後)の推定位置(予測位置)を、特定位置として算出する処理を行う。例えば、図15(A)に示すように、エフェクト発生時において、自機POBの移動速度ベクトルPVに基づいて、10秒後の特定位置Qを推定する。   First, the specific position calculation method of this embodiment will be described. In the present embodiment, when an effect occurs, a process of calculating an estimated position (predicted position) 10 seconds after the own apparatus POB (after a predetermined period) as a specific position is performed based on movement information of the own apparatus POB. For example, as shown in FIG. 15A, when the effect is generated, the specific position Q after 10 seconds is estimated based on the moving speed vector PV of the own apparatus POB.

なお、本実施形態では、自機POBの移動に追従する仮想カメラCの移動方向に基づいて、仮想カメラCの10秒後の推定位置を、特定位置として算出してもよい。   In the present embodiment, the estimated position 10 seconds after the virtual camera C may be calculated as the specific position based on the moving direction of the virtual camera C following the movement of the own device POB.

そして、本実施形態では、オブジェクト空間において、エフェクト発生位置EPから特定位置Qに向かって、煙オブジェクトEOBを配置する処理を行う。つまり、エフェクト発生位置EPから特定位置Qに向く方向(特定方向)EQVに、煙オブジェクトEOBを配置する処理を行う。   In this embodiment, a process of arranging the smoke object EOB from the effect generation position EP toward the specific position Q is performed in the object space. That is, the process of arranging the smoke object EOB in the direction (specific direction) EQV from the effect occurrence position EP toward the specific position Q is performed.

図15(B)は、エフェクト発生時から1秒後の煙オブジェクトEOBの例を示す。例えば、本実施形態では、時間が経過するにつれて、煙オブジェクトEOBが、特定位置Qに向かうように順次配置される。   FIG. 15B shows an example of the smoke object EOB 1 second after the effect occurs. For example, in the present embodiment, the smoke object EOB is sequentially arranged toward the specific position Q as time elapses.

図15(C)は、エフェクト発生時から2秒後の煙オブジェクトEOBの例を示す。例えば、自機POBが移動速度ベクトルPVの方向(推定位置Qの方向)に移動すると、煙オブジェクトEOBが、仮想カメラCの視野範囲内に配置されるようになる。例えば、エフェクト発生時から2秒後において生成される画像F36では、煙オブジェクトEOBが描画されているので、敵機などの戦闘機が撃墜された様子を表現することができる。   FIG. 15C shows an example of the smoke object EOB 2 seconds after the effect occurs. For example, when the own machine POB moves in the direction of the moving speed vector PV (direction of the estimated position Q), the smoke object EOB is arranged within the visual field range of the virtual camera C. For example, since the smoke object EOB is drawn in the image F36 generated two seconds after the occurrence of the effect, it is possible to represent a situation in which a fighter such as an enemy aircraft is shot down.

本実施形態では、エフェクト発生時から3秒間経過するまで、煙オブジェクトEOBを、特定位置Qに向かって配置する処理を行っている。そして、エフェクト発生時から3秒後に大爆発エフェクトオブジェクトを配置した後、エフェクトオブジェクトを消去する処理を行う。   In the present embodiment, the process of arranging the smoke object EOB toward the specific position Q is performed until 3 seconds have elapsed since the effect occurred. Then, after placing the large explosion effect object 3 seconds after the effect is generated, the effect object is deleted.

また、図15(C)に示すように画像F36では、煙オブジェクトEOBが、画面右側に描画されているので、自機POBの右側(仮想カメラCの右側)でエフェクトが発生している様子を表現することができる。   Also, as shown in FIG. 15C, in the image F36, the smoke object EOB is drawn on the right side of the screen, so that the effect is generated on the right side of the own device POB (the right side of the virtual camera C). Can be expressed.

このように、本実施形態では、特定位置を算出し、エフェクト発生位置から特定位置に向かって、エフェクトオブジェクトを配置する手法を採用すると、エフェクトオブジェクトが画面に表示される(フレームインする)可能性が高くなり、エフェクト発生の演出効果をより高めることができる。   As described above, in the present embodiment, if a method of calculating a specific position and arranging an effect object from the effect generation position toward the specific position, the effect object may be displayed on the screen (framed in). This increases the effect of producing the effect.

次に、移動体が複数ある場合について説明する。本実施形態では、特定の移動体の移動に追従する仮想カメラから見える画像を生成する場合には、その特定の移動体の移動情報に基づいて、特定位置を算出する処理を行う。   Next, a case where there are a plurality of moving objects will be described. In the present embodiment, when generating an image that can be viewed from a virtual camera that follows the movement of a specific moving body, a process of calculating a specific position is performed based on movement information of the specific moving body.

例えば、図16に示すように、自機POB1、戦闘機POB2、戦闘機POB3がオブジェクト空間に存在し、自機POB1に追従する仮想カメラC1から見える画像を生成する場合には、自機POB1の移動方向ベクトルPV1に基づいて、自機POB1のエフェクト発生時から10秒後の推定位置Q1を、特定位置として算出する処理を行う。そして、本実施形態では、図17(A)に示すように、エフェクト発生位置EPから特定位置Q1に向かって、エフェクトオブジェクトを配置する処理を行う。このようにすれば、自機POB1が推定に近い移動をしている場合には、図17(A)に示すように、自機POB1の移動に追従する仮想カメラC1の視野範囲に、エフェクトオブジェクトが配置されるようになり、プレーヤはエフェクト演出のある画像を生成することができる。   For example, as shown in FIG. 16, in the case where the own aircraft POB1, the fighter aircraft POB2, and the fighter aircraft POB3 are present in the object space and an image seen from the virtual camera C1 following the own aircraft POB1 is generated, Based on the moving direction vector PV1, a process of calculating the estimated position Q1 10 seconds after the effect occurrence of the own apparatus POB1 as the specific position is performed. And in this embodiment, as shown to FIG. 17 (A), the process which arrange | positions an effect object is performed from the effect generation position EP toward the specific position Q1. In this way, when the own device POB1 moves close to the estimation, as shown in FIG. 17A, the effect object is placed in the visual field range of the virtual camera C1 following the movement of the own device POB1. Are arranged, and the player can generate an image with an effect effect.

言い換えると、本実施形態では、仮想カメラC1で画像を生成する場合には、他の仮想カメラC2、C3に追従する戦闘機POB2、POB3の移動速度ベクトルPV2、PV3に基づいて算出された特定位置Q2、Q3に向かってエフェクトオブジェクトを配置させないように制御する。仮に、仮想カメラC2、C3に追従する戦闘機POB2、POB3の移動方向に基づいて算出された特定位置Q2、Q3に向かってエフェクトオブジェクトを配置させてしまうと、不自然な画像が生成されてしまう可能性があるからである。例えば、煙オブジェクトEOBが戦闘機POB2の移動方向上に向かって移動してしまう様子を、仮想カメラC1が撮影することになった場合、煙が不自然に曲がるなど、現実世界では生じ得ない画像が生成されてしまう。したがって、本実施形態では、描画する際に用いられる仮想カメラが追従するオブジェクトの移動方向に基づいて、特定位置を算出し、その特定位置に向かってエフェクトオブジェクトを配置する。   In other words, in this embodiment, when an image is generated by the virtual camera C1, the specific position calculated based on the moving speed vectors PV2 and PV3 of the fighters POB2 and POB3 following the other virtual cameras C2 and C3. Control is performed so that the effect object is not arranged toward Q2 and Q3. If the effect object is arranged toward the specific positions Q2 and Q3 calculated based on the moving directions of the fighters POB2 and POB3 following the virtual cameras C2 and C3, an unnatural image is generated. Because there is a possibility. For example, when the virtual camera C1 takes a picture of the smoke object EOB moving in the moving direction of the fighter POB2, an image that cannot be generated in the real world, for example, smoke is bent unnaturally. Will be generated. Therefore, in the present embodiment, the specific position is calculated based on the moving direction of the object followed by the virtual camera used for drawing, and the effect object is arranged toward the specific position.

したがって、図17(B)に示すように、仮想カメラC2に基づいて画像を生成する場合には、その仮想カメラC2が追従する戦闘機POB2の移動方向ベクトルPV2に基づいて特定位置Q2を算出し、エフェクト発生位置EPから特定位置Q2に向かって、エフェクトオブジェクトを配置する処理を行う。つまり、エフェクト発生位置EPから特定位置Q2の方向に向かってエフェクトオブジェクトが配置されたオブジェクト空間において、仮想カメラC2から見える画像を生成する。このようにすれば、自然な画像を生成することができる。   Therefore, as shown in FIG. 17B, when an image is generated based on the virtual camera C2, the specific position Q2 is calculated based on the moving direction vector PV2 of the fighter POB2 that the virtual camera C2 follows. Then, processing for arranging the effect object is performed from the effect generation position EP toward the specific position Q2. That is, an image that can be seen from the virtual camera C2 is generated in the object space in which the effect object is arranged from the effect generation position EP toward the specific position Q2. In this way, a natural image can be generated.

同様に、図17(C)に示すように、仮想カメラC3に基づいて画像を生成する場合には、その仮想カメラC3が追従する戦闘機POB3の移動方向ベクトルPV3に基づいて特定位置Q3を算出し、エフェクト発生位置EPから特定位置Q3に向かって、エフェクトオブジェクトを配置する処理を行う。つまり、エフェクト発生位置EPから特定位置Q3の方向に向かってエフェクトオブジェクトが配置されたオブジェクト空間において、仮想カメラC3から見える画像を生成する。このようにすれば、自然な画像を生成することができる。   Similarly, as shown in FIG. 17C, when an image is generated based on the virtual camera C3, the specific position Q3 is calculated based on the moving direction vector PV3 of the fighter POB3 followed by the virtual camera C3. Then, processing for arranging the effect object is performed from the effect generation position EP toward the specific position Q3. That is, an image that is visible from the virtual camera C3 is generated in the object space in which the effect object is arranged from the effect generation position EP toward the specific position Q3. In this way, a natural image can be generated.

また、仮想カメラが複数存在する場合において仮想カメラの移動速度ベクトルCMVに基づいて特定位置を算出する場合には、描画部120の画像生成で用いられる仮想カメラの移動方向に基づいて特定位置を算出し、算出された特定位置に向かってエフェクトオブジェクトを配置する。現実世界では生じ得ない不自然な画像が生成されてしまう事態を回避するためである。例えば、描画部120の画像生成で用いられる仮想カメラとは、描画するフレーム(タイミング)で、レンダリング処理、頂点シェーダで用いられる仮想カメラのことをいう。   In addition, when there are a plurality of virtual cameras and the specific position is calculated based on the moving speed vector CMV of the virtual camera, the specific position is calculated based on the moving direction of the virtual camera used in the image generation of the drawing unit 120. Then, the effect object is arranged toward the calculated specific position. This is to avoid a situation in which an unnatural image that cannot occur in the real world is generated. For example, the virtual camera used for image generation of the drawing unit 120 is a virtual camera used for rendering processing and a vertex shader at a drawing frame (timing).

例えば、図17(A)に示すように、仮想カメラC1〜C3が存在する場合において、仮想カメラC1に基づいて画像を生成する場合には、その仮想カメラC1の移動速度ベクトルCMV1に基づいて所定期間後の仮想カメラC1の推定位置を特定位置を算出し、算出された特定位置に向かってエフェクトオブジェクトを配置する。言い換えると、仮想カメラC1に基づいて画像を生成する場合には、仮想カメラC2の移動速度ベクトルCMV2に基づいて算出された(或いは仮想カメラC3の移動速度ベクトルCMV3に基づいて算出された位置)に向かって、エフェクトオブジェクトを配置しないように制御する。   For example, as shown in FIG. 17A, in the case where virtual cameras C1 to C3 exist, when an image is generated based on the virtual camera C1, a predetermined value is set based on the moving speed vector CMV1 of the virtual camera C1. The specific position of the estimated position of the virtual camera C1 after the period is calculated, and the effect object is arranged toward the calculated specific position. In other words, when an image is generated based on the virtual camera C1, it is calculated based on the moving speed vector CMV2 of the virtual camera C2 (or a position calculated based on the moving speed vector CMV3 of the virtual camera C3). Controls not to place the effect object.

なお、本実施形態では、オブジェクト空間に存在する移動体(自機、敵機、戦闘機など)の移動に追従せずに、ワールド座標に配置される仮想カメラに基づいて画像を生成する場合がある。かかる場合には、特定位置に向かって、エフェクトオブジェクトを配置する手法を採用してもよいし、エフェクト発生位置に基づいて、エフェクトオブジェクトを配置する手法(例1)を採用してもよい。   In the present embodiment, there is a case where an image is generated based on a virtual camera arranged at world coordinates without following the movement of a moving object (own aircraft, enemy aircraft, fighter aircraft, etc.) existing in the object space. is there. In such a case, a method of arranging the effect object toward the specific position may be adopted, or a method of arranging the effect object based on the effect generation position (Example 1) may be adopted.

また、エフェクト発生位置を注視するように制御されているターゲット仮想カメラに基づいて、画像を生成する場合には、特定位置に向かって、エフェクトオブジェクトを配置する手法を採用せずに、エフェクト発生位置に基づいて、エフェクトオブジェクトを配置する手法(例1)を採用することが望ましい。自然なエフェクト画像を生成できるからである。   In addition, when generating an image based on a target virtual camera that is controlled so as to gaze at the effect generation position, the effect generation position is not adopted without using the method of arranging the effect object toward the specific position. Based on the above, it is desirable to adopt a method (example 1) of arranging effect objects. This is because a natural effect image can be generated.

また、仮想カメラが移動体の移動に追従するものでなくても、その仮想カメラが移動するものであれば、仮想カメラの移動速度ベクトルに基づいて、仮想カメラの所定期間後(例えば10秒後)の推定位置を特定位置として算出し、算出された特定位置に向かってエフェクトオブジェクトを配置するようにしてもよい。   Further, even if the virtual camera does not follow the movement of the moving object, if the virtual camera moves, the virtual camera moves after a predetermined period (for example, after 10 seconds) based on the moving speed vector of the virtual camera. ) May be calculated as the specific position, and the effect object may be arranged toward the calculated specific position.

また、リプレイ用の画像生成処理の際を考慮すると、特定位置に向かってエフェクトオブジェクトを配置する処理を行う場合には、通常オブジェクトの位置情報、動作情報をリプレイ用のデータとして記憶部に記憶してもよいが、各エフェクトオブジェクトの位置情報、動作情報(回転情報)をリプレイ用のデータとして記憶部に記憶させないように制御してもよい。ゲームプレイ中に配置されたエフェクトオブジェクトをリプレイ用仮想カメラで撮影してしまうと、不自然な画像を生成してしまうことになるからである。   In consideration of the image generation process for replay, when performing the process of arranging the effect object toward the specific position, the position information and motion information of the normal object are stored in the storage unit as the data for replay. However, the position information and the motion information (rotation information) of each effect object may be controlled not to be stored in the storage unit as replay data. This is because if an effect object placed during game play is shot with a virtual camera for replay, an unnatural image is generated.

なお、リプレイ用仮想カメラで、リプレイ画像を生成する場合には、エフェクトオブジェクトを、そのリプレイ用仮想カメラの移動情報(リプレイ用仮想カメラが移動体に追従している場合には、リプレイ用仮想カメラが追従する移動体の移動情報でもよい)に基づいて特定位置を算出し、その特定位置に向かって配置するようにしてもよい。   When a replay image is generated by the replay virtual camera, the effect object is transferred to the replay virtual camera movement information (if the replay virtual camera follows the moving object, the replay virtual camera The specific position may be calculated on the basis of the movement information of the moving body that follows, and arranged toward the specific position.

(4)エフェクトオブジェクトを配置する速度
本実施形態では、特定位置に向かってエフェクトオブジェクトを配置する場合に、予め定義された配置速度(一定期間あたりに進むエフェクトオブジェクトの配置距離)に基づいて、エフェクトオブジェクトをエフェクト発生位置から特定位置に向かって配置するようにしてもよい。
(4) Speed of placing an effect object In this embodiment, when placing an effect object toward a specific position, the effect object is placed on the basis of a predefined placement speed (the placement distance of the effect object that advances per fixed period). The object may be arranged from the effect generation position toward the specific position.

また、自機POBの移動速度(自機POBに追従する仮想カメラCの移動速度)に基づいて算出された特定位置Qに向かってエフェクトオブジェクトを配置する場合には、その配置速度を、自機POBの移動速度又は仮想カメラCの移動速度に基づいて算出するようにしてもよい。   Further, when the effect object is arranged toward the specific position Q calculated based on the moving speed of the own apparatus POB (the moving speed of the virtual camera C following the own apparatus POB), the arrangement speed is set to the own apparatus POB. It may be calculated based on the moving speed of the POB or the moving speed of the virtual camera C.

また、エフェクト発生時からエフェクト終了時までのエフェクトイベント期間(3秒間)に、確実に特定位置にエフェクトオブジェクトを到達させるために、エフェクトイベント期間あたりの、エフェクト発生位置EPから特定位置Qまでの距離を、配置速度としてもよい。例えば、エフェクト発生位置EPが東京であり、特定位置Qが大阪であるように、明らかに3秒間にエフェクトオブジェクトを特定位置に向かって配置させることが現実的で無い場合もあるので、物理法則に基づき配置速度を求めるようにしてもよい。   Also, in order to ensure that the effect object reaches the specific position during the effect event period (3 seconds) from when the effect occurs until the end of the effect, the distance from the effect generation position EP to the specific position Q per effect event period May be the arrangement speed. For example, it may not be practical to place an effect object toward a specific position in 3 seconds, such as the effect occurrence position EP is Tokyo and the specific position Q is Osaka. The arrangement speed may be obtained based on the above.

また、配置速度は、ミサイルが敵機に衝突したときのミサイルの移動速度(ミサイルの移動速度ベクトルMIVの大きさ)、敵機の移動速度(敵機の移動速度ベクトルNVの大きさ)に基づいて、求めてもよい。   The placement speed is based on the missile movement speed (the magnitude of the missile movement speed vector MIV) and the enemy aircraft movement speed (the magnitude of the enemy aircraft movement speed vector NV) when the missile collides with the enemy aircraft. You may ask for it.

(5)特定位置をリアルタイムに求める手法
本実施形態では、特定位置に向かってエフェクトオブジェクトを配置する場合には、リアルタイム(フレーム毎)に、特定位置を算出するようにしてもよい。このようにすれば、エフェクトオブジェクトが画面に表示される可能性が高くなるからである。
(5) Method for Finding Specific Position in Real Time In this embodiment, when an effect object is arranged toward a specific position, the specific position may be calculated in real time (for each frame). This is because the effect object is more likely to be displayed on the screen.

例えば、図18(A)に示すように、エフェクト発生時に、第Nフレームの自機の移動速度ベクトルPVa(或いは自機の移動に追従する仮想カメラの移動速度ベクトルCMVa)に基づいて、特定位置Qaを算出し、エフェクトオブジェクトを特定位置Qaに向かって配置する。そして、第N+1フレームの自機の移動速度ベクトルPVb(或いは自機の移動に追従する仮想カメラの移動速度ベクトルCMVb)に基づいて、特定位置Qbを算出し、エフェクトオブジェクトを特定位置Qbに向かって配置する。そして、第N+2フレームの自機の移動速度ベクトルPVc(或いは自機の移動に追従する仮想カメラの移動速度ベクトルCMVc)に基づいて、特定位置Qcを算出し、エフェクトオブジェクトを特定位置Qcに向かって配置する。このようにすれば、移動体に追従する仮想カメラの視野範囲CAに、エフェクトオブジェクトが配置される可能性を高くすることができる。例えば、図18(B)に示すように、エフェクトオブジェクトEOBが、エフェクト発生位置EPから、フレーム単位で更新される特定位置に向かって配置されるようになる。   For example, as shown in FIG. 18A, when an effect occurs, the specific position is determined based on the moving speed vector PVa of the own apparatus in the Nth frame (or the moving speed vector CMVa of the virtual camera that follows the movement of the own apparatus). Qa is calculated, and the effect object is arranged toward the specific position Qa. Then, the specific position Qb is calculated based on the moving speed vector PVb of the own apparatus in the (N + 1) th frame (or the moving speed vector CMVb of the virtual camera that follows the movement of the own apparatus), and the effect object is moved toward the specific position Qb. Deploy. Then, the specific position Qc is calculated based on the movement speed vector PVc of the own apparatus in the (N + 2) th frame (or the movement speed vector CMVc of the virtual camera that follows the movement of the own apparatus), and the effect object is moved toward the specific position Qc. Deploy. In this way, it is possible to increase the possibility that the effect object is arranged in the visual field range CA of the virtual camera that follows the moving body. For example, as shown in FIG. 18B, the effect object EOB is arranged from the effect occurrence position EP toward a specific position updated in units of frames.

(6)視線方向に基づいて特定位置を求める手法
本実施形態では、特定位置に向かってエフェクトオブジェクトを配置する場合には、仮想カメラの視線方向CVに基づいて、特定位置を算出するようにしてもよい。このようにすれば、エフェクトオブジェクトが画面に表示される可能性が高くなるからである。
(6) Method for obtaining a specific position based on the line-of-sight direction In the present embodiment, when the effect object is arranged toward the specific position, the specific position is calculated based on the line-of-sight direction CV of the virtual camera. Also good. This is because the effect object is more likely to be displayed on the screen.

例えば、ヘリコプターなどのホバリング(空中で停止可能な状態)や、ホバリング状態から垂直、水平移動が可能な移動体の場合、視線方向CVと移動体の移動速度ベクトルPVの方向が異なる場合がある(視線方向CVと仮想カメラの移動速度ベクトルCMVの方向が異なる場合がある)。かかる場合に、エフェクトオブジェクトが表示されるように視線方向CVに基づいて特定位置を算出することが望ましい。   For example, in the case of a hovering such as a helicopter (which can be stopped in the air) or a moving body that can move vertically and horizontally from the hovering state, the direction of the line-of-sight direction CV and the moving speed vector PV of the moving body may be different ( The direction of the line-of-sight direction CV may be different from the direction of the moving speed vector CMV of the virtual camera). In such a case, it is desirable to calculate the specific position based on the line-of-sight direction CV so that the effect object is displayed.

より具体的に、図19(A)を用いて説明する。例えば、図19(A)に示すように、仮想カメラCの視線方向CVと、仮想カメラCが追従する自機POBの移動速度ベクトルPVの方向が異なる場合、自機POBの移動速度ベクトルPVに基づいて算出された10秒後の推定位置を特定位置Qとすると、エフェクトオブジェクトEOBは、エフェクト発生位置EPから特定位置Qに向かって配置される。しかし、図19(B)に示すように、エフェクトイベント期間が経過するまでに(エフェクト発生時から3秒経過するまで)に、移動体が移動速度ベクトルPVの方向(仮想カメラCの移動速度ベクトルCMVの方向)に上昇したとしてもエフェクトオブジェクトEOBが仮想カメラCの視野範囲に配置されず、エフェクト演出のある画像を生成することができない。   This will be described more specifically with reference to FIG. For example, as shown in FIG. 19A, when the direction of the line-of-sight direction CV of the virtual camera C and the direction of the moving speed vector PV of the own apparatus POB that the virtual camera C follows are different, the moving speed vector PV of the own apparatus POB Assuming that the estimated position after 10 seconds calculated based on this is the specific position Q, the effect object EOB is arranged from the effect generation position EP toward the specific position Q. However, as shown in FIG. 19B, the moving object moves in the direction of the moving speed vector PV (the moving speed vector of the virtual camera C) until the effect event period elapses (until 3 seconds elapse from the time of the effect occurrence). Even if it rises in the CMV direction), the effect object EOB is not arranged in the visual field range of the virtual camera C, and an image with an effect effect cannot be generated.

そこで、本実施形態では、特定位置を次のように算出する処理を行う。例えば、図19(C)に示すように、エフェクト発生時の自機の移動速度ベクトルPV(或いは仮想カメラCの移動速度ベクトルCMV)に基づいて、所定期間後(例えば、10秒後)の推定位置Qを算出する。そして、エフェクト発生時の視線方向CVに基づいて、推定位置Qを視点としたときの推定視線方向CV´に基づく位置Iを、特定位置として算出する。例えば、視線方向CV´は、エフェクト発生時の視線方向CVと同じ方向に設定する。例えば、推定位置Qを視点としたときの推定視野範囲CA´内の位置(例えば注視点)を、特定位置として算出してもよい。   Therefore, in the present embodiment, processing for calculating the specific position is performed as follows. For example, as shown in FIG. 19C, estimation after a predetermined period (for example, 10 seconds later) based on the moving speed vector PV of the own device at the time of effect occurrence (or the moving speed vector CMV of the virtual camera C). The position Q is calculated. Then, based on the line-of-sight direction CV when the effect is generated, a position I based on the estimated line-of-sight direction CV ′ with the estimated position Q as a viewpoint is calculated as a specific position. For example, the line-of-sight direction CV ′ is set in the same direction as the line-of-sight direction CV when the effect is generated. For example, a position (for example, a gazing point) within the estimated visual field range CA ′ with the estimated position Q as the viewpoint may be calculated as the specific position.

このようにすれば、視線方向CVと移動体の移動速度ベクトルPVの方向が異なる場合、或いは、視線方向CVと仮想カメラの移動速度ベクトルCMVの方向が異なる場合においても、よりエフェクトオブジェクトが画面に表示されるような画像を生成することができる。   In this way, even when the direction of the line-of-sight direction CV and the direction of the moving speed vector PV of the moving object are different, or when the direction of the line-of-sight direction CV and the direction of the moving speed vector CMV of the virtual camera are different, the effect object is displayed on the screen. An image that can be displayed can be generated.

(7)ネットワークシステム
本実施形態では、複数の端末とネットワークを介して相互にデータの送受信を行い、オンラインフライトシューティングゲームを実現可能としている。
(7) Network System In this embodiment, an online flight shooting game can be realized by transmitting and receiving data to and from a plurality of terminals via a network.

図20及び図21は、本実施形態のネットワークシステムの構成を示す図である。例えば、本実施形態のネットワークシステムでは、複数の端末GT1〜GT3の間で無線通信を行って、各端末GT1〜GT3の所有者が対戦プレイや協力プレイを行うことができる。   20 and 21 are diagrams showing the configuration of the network system of this embodiment. For example, in the network system of the present embodiment, wireless communication is performed between the plurality of terminals GT1 to GT3, and the owner of each terminal GT1 to GT3 can perform a battle play or a cooperative play.

無線通信の態様としては、図20に示すように、各端末GT1〜GT3が自律分散的にネットワークを構築し、直接的にゲーム情報等を含むパケットの送受信を行うアドホックモードと、図21に示すように、各端末GT1〜GT3がアクセスポイントACSPを介して間接的にゲーム情報等を含むパケットの送受信を行うインフラストラクチャモードとがある。インフラストラクチャモードでは、アクセスポイントACSPを介してインターネットInet(公衆通信網)にアクセスすることができる。そして、各端末GT1〜GT3は、インターネットInetに接続されたゲームサーバGSとの間でゲーム情報あるいはファームウェアのアップデート情報等を含むパケットをアクセスポイントACSPを介して送受信することができる。   As an aspect of wireless communication, as shown in FIG. 20, an ad hoc mode in which each terminal GT1 to GT3 constructs a network in an autonomous and distributed manner and directly transmits / receives a packet including game information and the like is shown in FIG. As described above, there is an infrastructure mode in which each terminal GT1 to GT3 indirectly transmits / receives a packet including game information and the like via the access point ACSP. In the infrastructure mode, the Internet Inet (public communication network) can be accessed through the access point ACSP. Each terminal GT1 to GT3 can transmit / receive a packet including game information or firmware update information to / from the game server GS connected to the Internet Inet via the access point ACSP.

特に、本実施形態では、各端末が相互にエフェクト発生情報を送受信する処理を行う。例えば、端末GT1において、端末GT1の操作対象の移動体POB1(プレーヤ1が操作する移動体)が、敵機NPCにミサイル攻撃を行い敵機NPCを撃墜したと判断されると、敵機NPCのIDと共に、敵機NPCを撃墜したという情報を、エフェクト発生情報として、他の端末GT2、GT3に送信する処理を行う。   In particular, in the present embodiment, each terminal performs processing for transmitting / receiving effect generation information to / from each other. For example, in the terminal GT1, when it is determined that the moving object POB1 (moving object operated by the player 1) of the terminal GT1 has made a missile attack on the enemy aircraft NPC and shot down the enemy aircraft NPC, Along with the ID, information indicating that the enemy aircraft NPC has been shot down is transmitted to other terminals GT2 and GT3 as effect occurrence information.

例えば、端末GT1は、端末GT1で制御している敵機NPCの撃墜に伴って発生したエフェクト発生位置GT1_EPや、端末GT1で制御している自機POB1の移動速度ベクトルGT1_PV(或いは自機POB1の移動に追従する仮想カメラC1の移動速度ベクトルGT1_CMV)に基づいて、端末GT1のオブジェクト空間における特定位置GT1_Qを算出する処理を行う。そして、端末GT1のオブジェクト空間において、エフェクト発生位置GT1_EPから特定位置GT1_Qに向かって、エフェクトオブジェクトを配置する処理を行う。   For example, the terminal GT1 has the effect generation position GT1_EP generated with the shooting down of the enemy aircraft NPC controlled by the terminal GT1, the movement speed vector GT1_PV of the own device POB1 controlled by the terminal GT1, or the own device POB1. Based on the movement speed vector GT1_CMV of the virtual camera C1 following the movement, a process of calculating the specific position GT1_Q in the object space of the terminal GT1 is performed. Then, in the object space of the terminal GT1, processing for arranging the effect object is performed from the effect generation position GT1_EP toward the specific position GT1_Q.

また、端末GT2は、端末GT1からエフェクト発生情報を受信すると、エフェクト発生情報を解析し、敵機NPCが撃墜したと判断する。そして、敵機NPCの配置位置をエフェクト発生位置GT2_EPとして、端末GT2のオブジェクト空間において、エフェクトオブジェクトを配置する処理を行う。   Further, when receiving the effect occurrence information from the terminal GT1, the terminal GT2 analyzes the effect occurrence information and determines that the enemy aircraft NPC has shot down. Then, processing for arranging the effect object is performed in the object space of the terminal GT2 with the arrangement position of the enemy aircraft NPC as the effect generation position GT2_EP.

例えば、端末GT2は、端末GT2で制御している自機POB2(プレーヤ2が操作する移動体)の移動速度ベクトルGT2_PV(或いは自機POB2の移動に追従する仮想カメラC2の移動速度ベクトルGT2_CMV)に基づいて、端末GT2のオブジェクト空間における特定位置GT2_Qを算出する処理を行う。そして、端末GT2のオブジェクト空間において、エフェクト発生位置GT2_EPから特定位置GT2_Qに向かって、エフェクトオブジェクトを配置する処理を行う。   For example, the terminal GT2 sets the movement speed vector GT2_PV of the own apparatus POB2 (moving body operated by the player 2) controlled by the terminal GT2 (or the movement speed vector GT2_CMV of the virtual camera C2 following the movement of the own apparatus POB2). Based on this, a process of calculating the specific position GT2_Q in the object space of the terminal GT2 is performed. Then, in the object space of the terminal GT2, processing for arranging the effect object is performed from the effect generation position GT2_EP toward the specific position GT2_Q.

また、端末GT3においても、端末GT3のオブジェクト空間において、端末GT3で制御している自機POB3(プレーヤ3が操作する移動体)の移動速度ベクトルGT3_PV(或いは自機POB3の移動に追従する仮想カメラC3の移動速度ベクトルGT3_CMV)に基づいて、端末GT3のオブジェクト空間における特定位置GT3_Qを算出する処理を行う。そして、端末GT3のオブジェクト空間において、エフェクト発生位置GT3_EPから特定位置GT3_Qに向かって、エフェクトオブジェクトを配置する処理を行う。   Also in the terminal GT3, in the object space of the terminal GT3, the moving speed vector GT3_PV (or the virtual camera that follows the movement of the own apparatus POB3) of the own apparatus POB3 (moving body operated by the player 3) controlled by the terminal GT3. Based on the moving speed vector GT3_CMV of C3, a process of calculating the specific position GT3_Q in the object space of the terminal GT3 is performed. Then, in the object space of the terminal GT3, processing for arranging the effect object is performed from the effect generation position GT3_EP toward the specific position GT3_Q.

このように、本実施形態のネットワークシステムでは、各端末が、エフェクトの発生情報を互いに送受信し、各端末において特定位置の算出処理、エフェクトの配置処理、描画処理を独立して制御する。つまり、各端末は、エフェクトオブジェクトの配置位置を共有していないので、各端末に応じた自然なエフェクト演出処理を行うことができる。   As described above, in the network system according to the present embodiment, each terminal transmits and receives effect generation information to each other, and each terminal independently controls a specific position calculation process, an effect arrangement process, and a drawing process. That is, since each terminal does not share the arrangement position of the effect object, it is possible to perform natural effect presentation processing according to each terminal.

(8)エフェクトオブジェクトの例
本実施形態では、爆発、炎、煙などのエフェクトオブジェクトを配置する手法について説明したが、例えば、戦闘機が破壊される様子を演出するための破片オブジェクト(パーティクルなど)を、特定位置に向かって移動させるようにしてもよい。つまり、破片オブジェクトを、移動させて配置する手法も、本実施形態のエフェクトオブジェクトの配置に含まれる。また、本実施形態では、戦闘機が撃墜された場合には、撃墜された戦闘機そのものを、エフェクトオブジェクトとしてオブジェクト空間に配置してもよい。つまり、撃墜された戦闘機を、特定位置に向かって移動させて配置する手法も、本実施形態のエフェクトオブジェクトの配置に含まれる。なお、戦闘機が撃墜された場合には、正常時(破壊前)の戦闘機から、破壊用の戦闘機(一部が破壊されているような戦闘機)に切り替えて、破壊用の戦闘機を、特定位置に向かって移動させて配置するようにしてもよい。
(8) Example of effect object In the present embodiment, the method of arranging effect objects such as explosion, flame, and smoke has been described. For example, a debris object (particle or the like) for producing a state in which a fighter is destroyed. May be moved toward a specific position. That is, the method of moving and arranging the fragment object is also included in the arrangement of the effect object of this embodiment. In this embodiment, when a fighter is shot down, the shot down fighter itself may be arranged in the object space as an effect object. That is, the method of moving and arranging the shot down fighter plane toward the specific position is also included in the arrangement of the effect objects of this embodiment. If a fighter is shot down, switch from a normal fighter (before destruction) to a fighter for destruction (a fighter that has been partially destroyed), May be moved toward a specific position.

また、いわゆる、ビルボード表示を行う場合には、オブジェクト(スプライト、ポリゴン)に、エフェクト(爆発、炎、煙など)を表現するテクスチャをマッピングし、エフェクトテクスチャがマッピングされたオブジェクトを、仮想カメラCの視線方向CVに正対するように(オブジェクトの向きが、視線方向CVと逆方向になるように)、オブジェクト空間に配置する。   When so-called billboard display is performed, a texture representing an effect (explosion, flame, smoke, etc.) is mapped to an object (sprite, polygon), and the object to which the effect texture is mapped is mapped to the virtual camera C. Are arranged in the object space so as to face the line-of-sight direction CV (so that the direction of the object is opposite to the line-of-sight direction CV).

(9)フローチャート
仮想カメラが自機POBの移動に追従し、自機POBから発射されたミサイルMIが敵機NPCを撃墜した場合における、エフェクトオブジェクトを配置する処理の流れについて、図22を用いて説明する。
(9) Flowchart The flow of processing for placing an effect object when the virtual camera follows the movement of its own POB and the missile MI launched from its own POB has shot down the enemy NPC will be described with reference to FIG. explain.

まず、敵機NPCの耐久値が0であるか否かを判断する(ステップS31)。敵機NPCの耐久値が0である場合には(ステップS31のY)、エフェクト発生時の自機POBの移動速度ベクトルPVに基づいて、10秒後の自機POBの位置Qを算出(推定)する(ステップS32)。そして、エフェクトオブジェクトを、エフェクト発生位置EPから位置Qに向かって、配置する処理を行う(ステップS33)。   First, it is determined whether or not the durability value of the enemy aircraft NPC is 0 (step S31). When the durability value of the enemy aircraft NPC is 0 (Y in step S31), the position Q of the own aircraft POB after 10 seconds is calculated (estimated) based on the moving speed vector PV of the own aircraft POB when the effect occurs. (Step S32). Then, the effect object is arranged from the effect occurrence position EP toward the position Q (step S33).

(10)スケーリング処理との併用
なお、本実施形態のエフェクトオブジェクトは、仮想カメラの位置CPと、エフェクトオブジェクトの位置とに基づいて倍率を算出し、算出された倍率に基づいてスケーリング処理を行い、スケーリングされたエフェクトオブジェクトをオブジェクト空間に配置するようにしてもよい。このようにすれば、より迫力のある画像を生成することができる。
(10) Combined use with scaling processing The effect object of the present embodiment calculates the magnification based on the virtual camera position CP and the position of the effect object, performs the scaling processing based on the calculated magnification, You may make it arrange | position the scaled effect object in object space. In this way, a more powerful image can be generated.

4.ゲーム処理
本実施形態では、フライトシューティングゲームの処理を行う。例えば、本実施形態では、プレーヤの射撃入力情報に基づいて、機関砲が発射されると機関砲の移動ベクトル方向へのレイと、敵機のヒットボリュームとの交差判定がなされ、交差されると判定されると敵機にヒットしたと判定される。
4). Game Process In this embodiment, a flight shooting game process is performed. For example, in the present embodiment, when a machine gun is fired based on the player's shooting input information, the ray in the direction of the movement vector of the machine gun is determined to intersect with the hit volume of the enemy aircraft. If it is determined, it is determined that the enemy aircraft has been hit.

なお、本実施形態では交差判定で用いられる敵機のヒットボリュームについては、スケーリング処理を行っていないが、スケーリング処理で用いられる倍率に基づいて、ヒットボリュームをスケーリングしてもよい。つまり、倍率制御部113から受け取った倍率を、オブジェクトのモデルデータに適用するとともに、対応するヒットモデルに対しても適用してもよい。このようにすれば、簡易に敵機を撃ち落とすことができるので、初心者用などの技量のないプレーヤに適切なゲーム環境を提供することができる。   In this embodiment, the enemy volume hit volume used in the intersection determination is not subjected to the scaling process, but the hit volume may be scaled based on the magnification used in the scaling process. In other words, the magnification received from the magnification control unit 113 may be applied to the model data of the object and also to the corresponding hit model. In this way, the enemy aircraft can be easily shot down, so that an appropriate game environment can be provided for a player with no skill such as a beginner.

5.応用例
本実施形態において、スケーリング処理を行う場合には、視線方向と仮想カメラからオブジェクトに向く方向の角度の履歴、または仮想カメラとオブジェクトとの距離の履歴に基づいて、倍率を算出してもよい。例えば、描画フレームから所定期間前までの各フレーム(例えば、描画フレームを第Nフレームとすると、第Nフレームから60フレーム前までの各フレーム)の「視線方向と仮想カメラからオブジェクトに向く方向の角度」を角度履歴情報として記憶部に記憶する。そして、角度履歴情報に基づいて、倍率を算出してもよい。また、描画フレームから所定期間前までの各フレームの「仮想カメラとオブジェクトとの距離」を、距離履歴情報として記憶部に記憶する。そして、距離履歴情報に基づいて、倍率を算出してもよい。
5. Application Example In the present embodiment, when scaling processing is performed, the magnification may be calculated based on the history of the direction of the line of sight and the direction from the virtual camera to the object, or the history of the distance between the virtual camera and the object. Good. For example, “the direction of the line of sight and the direction from the virtual camera toward the object” of each frame from the drawing frame to a predetermined period before (for example, each frame from the Nth frame to 60 frames before if the drawing frame is the Nth frame) Is stored in the storage unit as angle history information. Then, the magnification may be calculated based on the angle history information. Further, the “distance between the virtual camera and the object” of each frame from the drawing frame to a predetermined period before is stored in the storage unit as distance history information. Then, the magnification may be calculated based on the distance history information.

例えば、角度履歴情報を参照し、視線方向と仮想カメラからオブジェクトに向く方向の角度が、所定期間(例えば、描画フレームを第Nフレームとすると、第Nフレームから60フレーム前までの間)、所定範囲内(例えば、当該角度が15度以内)である場合には、当該オブジェクトの倍率が大きくなるように変化させてもよい。このようにすれば、オブジェクトを画面中心に捕らえ続けることによって拡大させ、狙いやすくすることができる。   For example, referring to the angle history information, the angle between the line-of-sight direction and the direction from the virtual camera to the object is predetermined for a predetermined period (for example, when the drawing frame is the Nth frame, from the Nth frame to 60 frames before). When it is within the range (for example, the angle is within 15 degrees), the magnification of the object may be changed. In this way, the object can be enlarged and kept easy by aiming at the center of the screen.

また、角度履歴情報を参照し、複数フレーム(例えば、描画フレームを第Nフレームとすると、第Nフレームから60フレーム前までの各フレーム)における、視線方向と仮想カメラからオブジェクトに向く方向の角度の平均値に基づいて倍率を算出してもよい。また、距離履歴情報を参照し、複数フレームにおける、仮想カメラとオブジェクトの距離の平均値に基づいて倍率を算出してもよい。このようにすれば、オブジェクトの位置が急激に変化した場合でも、倍率の変化を緩やかにすることができる。   Further, referring to the angle history information, the angle of the line-of-sight direction and the direction from the virtual camera to the object in a plurality of frames (for example, each frame from the Nth frame to 60 frames before if the drawing frame is the Nth frame) The magnification may be calculated based on the average value. Further, the magnification may be calculated based on the average value of the distance between the virtual camera and the object in a plurality of frames with reference to the distance history information. In this way, even when the position of the object changes suddenly, the change in magnification can be moderated.

また、角度履歴情報を参照し、所定フレーム前(例えば、描画フレームから30フレーム前)の視線方向と、仮想カメラからオブジェクトに向く方向の角度に基づいて、倍率を算出してもよい。また、距離履歴情報を参照し、所定フレーム前(例えば、描画フレームから30フレーム前)の仮想カメラとオブジェクトとの距離に基づいて、倍率を算出してもよい。また、角度履歴情報又は距離履歴情報を基に所定フレーム後の角度又は距離を予測し、予測した角度又は距離に基づいて倍率を決定してもよい。   In addition, referring to the angle history information, the magnification may be calculated based on the viewing direction before a predetermined frame (for example, 30 frames before the drawing frame) and the angle in the direction from the virtual camera toward the object. Further, the magnification may be calculated based on the distance between the virtual camera and the object before a predetermined frame (for example, 30 frames before the drawing frame) with reference to the distance history information. Alternatively, the angle or distance after a predetermined frame may be predicted based on the angle history information or the distance history information, and the magnification may be determined based on the predicted angle or distance.

100 処理部、110 受け付け部、111 オブジェクト配置部、
111a エフェクトオブジェクト配置部、
112 移動・動作処理部、112a 移動処理部、
113 倍率制御部、114 スケーリング処理部、115 ゲーム演算部、
116 判断部、117 算出部、118 仮想カメラ制御部、119 通信制御部、
120 描画部、130 音処理部、160 入力部、162 検出部、
170 記憶部、171 主記憶部、172 画像バッファ、
173 オブジェクトデータ記憶部、180 情報記憶媒体、190 表示部、
192 音出力部、196 通信部、
C 仮想カメラ、C1〜C3 仮想カメラ、CP 視点位置、CV 視線方向、
CA 視野範囲、
CMV 仮想カメラの移動速度ベクトル、Ec 視線方向の単位ベクトル、
OB1〜OB6 オブジェクト、NPC 敵機(移動体の一例)、
POB 自機(移動体の一例)、
PV 自機の移動速度ベクトル、P0 自機の代表点(中心位置)、
OV 仮想カメラからオブジェクトに向く方向、
Eo 仮想カメラからオブジェクトに向くベクトルの単位ベクトル、
P1、P2、P10〜P16 配置位置、
θ、θ1、θ2 視線方向と、仮想カメラからオブジェクトに向く方向とのなす角、
K 倍率、
K1 視線方向と、視点からオブジェクトへ向く方向とに基づいて算出される倍率、
K2 仮想カメラからオブジェクトまでの距離に基づいて算出される倍率、
D 仮想カメラの視点位置からオブジェクトまでの距離、
F1〜15、F20、F21、F30〜F36 画像、
BO 爆発オブジェクト(エフェクトオブジェクトの一例)、
EOB 煙オブジェクト(エフェクトオブジェクトの一例)、
EV 煙オブジェクトの移動速度ベクトル、
EP エフェクト発生位置、
Q、Q1〜Q3 特定位置、
EQV、EQV1、EQV2、EQV3 特定方向、
MI ミサイルオブジェクト、MIV ミサイルオブジェクトの移動速度ベクトル
100 processing unit, 110 receiving unit, 111 object placement unit,
111a Effect object placement section,
112 movement / motion processing unit, 112a movement processing unit,
113 magnification control unit, 114 scaling processing unit, 115 game calculation unit,
116 determination unit, 117 calculation unit, 118 virtual camera control unit, 119 communication control unit,
120 drawing units, 130 sound processing units, 160 input units, 162 detection units,
170 storage unit, 171 main storage unit, 172 image buffer,
173 Object data storage unit, 180 information storage medium, 190 display unit,
192 sound output unit, 196 communication unit,
C virtual camera, C1 to C3 virtual camera, CP viewpoint position, CV viewing direction,
CA field of view,
CMV virtual camera moving velocity vector, Ec gaze direction unit vector,
OB1 to OB6 objects, NPC enemy aircraft (an example of a moving object),
POB own machine (an example of a moving body),
PV Movement speed vector of own machine, P0 Representative point (center position) of own machine,
OV direction from the virtual camera to the object,
Eo A unit vector of vectors from the virtual camera to the object,
P1, P2, P10 to P16 arrangement position,
θ, θ1, θ2 Angles between the line-of-sight direction and the direction from the virtual camera toward the object,
K magnification,
K1, a magnification calculated based on the line-of-sight direction and the direction from the viewpoint to the object,
K2 Magnification calculated based on the distance from the virtual camera to the object,
D Distance from the viewpoint of the virtual camera to the object,
F1-15, F20, F21, F30-F36 images,
BO Explosion object (an example of an effect object),
EOB smoke object (an example of an effect object),
EV The speed vector of the smoke object,
EP effect occurrence position,
Q, Q1-Q3 specific position,
EQV, EQV1, EQV2, EQV3 specific direction,
Movement speed vector of MI missile object, MIV missile object

Claims (15)

オブジェクト空間における仮想カメラから見える画像を生成する処理を行うプログラムであって、
前記オブジェクト空間において、入力部の入力情報に基づき移動体を移動させる処理を行う移動処理部と、
前記仮想カメラを前記移動体の移動に追従させる制御を行う仮想カメラ制御部と、
前記オブジェクト空間内でエフェクトを発生させるための所定条件を満たしたか否かを判断する判断部と、
前記所定条件を満たした場合に、前記移動体の移動情報に基づいて、特定位置を算出する処理を行う算出部と、
前記オブジェクト空間において、エフェクト発生位置から前記特定位置に向かって、エフェクトオブジェクトを配置する処理を行うエフェクトオブジェクト配置部と、
前記仮想カメラから見える画像を生成する処理を行う描画部として、コンピュータを機能させることを特徴とするプログラム。
A program for generating an image that can be viewed from a virtual camera in an object space,
In the object space, a movement processing unit that performs a process of moving a moving body based on input information of the input unit;
A virtual camera control unit that controls the virtual camera to follow the movement of the moving body;
A determination unit for determining whether or not a predetermined condition for generating an effect in the object space is satisfied;
A calculation unit that performs a process of calculating a specific position based on movement information of the moving body when the predetermined condition is satisfied;
In the object space, an effect object placement unit that performs a process of placing an effect object from the effect occurrence position toward the specific position;
A program that causes a computer to function as a drawing unit that performs processing for generating an image that can be viewed from the virtual camera.
請求項1において、
前記算出部が、
前記移動体の移動速度及び移動方向に基づいて、前記特定位置を算出することを特徴とするプログラム。
In claim 1,
The calculation unit
The program for calculating the specific position based on a moving speed and a moving direction of the moving body.
請求項1又は2において、
前記算出部が、
前記移動体の移動速度及び移動方向に基づいて、所定期間後の前記移動体の位置を推定し、推定された位置を前記特定位置とすることを特徴とするプログラム。
In claim 1 or 2,
The calculation unit
A program that estimates a position of the moving body after a predetermined period based on a moving speed and a moving direction of the moving body and sets the estimated position as the specific position.
請求項1〜3のいずれかにおいて、
前記描画部が、前記オブジェクト空間に存在する複数の移動体のうち、特定の移動体の移動に追従する仮想カメラから見える画像を生成する場合には、
前記算出部が、
前記特定の移動体の移動情報に基づいて、特定位置を算出する処理を行い、
前記エフェクトオブジェクト配置部が、
前記特定の移動体の移動情報に基づいて算出された前記特定位置に向かって、エフェクトオブジェクトを配置する処理を行うことを特徴とするプログラム。
In any one of Claims 1-3,
When the drawing unit generates an image that can be seen from a virtual camera that follows the movement of a specific moving body among a plurality of moving bodies existing in the object space,
The calculation unit
Based on the movement information of the specific moving body, processing to calculate a specific position,
The effect object placement unit is
The program which performs the process which arrange | positions an effect object toward the said specific position calculated based on the movement information of the said specific moving body.
請求項1〜4のいずれかにおいて、
前記プログラムは、第1の端末のためのプログラムであって、
前記第1の端末が第2の端末とネットワークを介して相互にエフェクト発生情報を含むデータを送受信する処理を行う通信制御部として、コンピュータを更に機能させ、
前記第1の端末の判断部が、
前記第2の端末から、エフェクト発生情報を受信した場合には、前記所定条件を満たしたと判断する処理を行い、
前記第1の端末の算出部が、
前記1の端末で移動処理を行う前記移動体の移動情報に基づいて、特定位置を算出する処理を行い、
前記第1の端末の前記エフェクトオブジェクト配置部が、
前記第1の端末で移動処理を行う前記移動体の移動情報に基づいて算出された前記特定位置に向かって、エフェクトオブジェクトを配置する処理を行い、
前記第1の端末の描画部が、
前記第1の端末で移動処理を行う前記移動体の移動に追従する仮想カメラから見える画像を生成する処理を行うことを特徴とするプログラム。
In any one of Claims 1-4,
The program is a program for a first terminal,
The first terminal further functions as a communication control unit that performs processing for transmitting and receiving data including effect generation information to and from the second terminal via a network,
The determination unit of the first terminal
When effect occurrence information is received from the second terminal, a process is performed to determine that the predetermined condition is satisfied,
The calculation unit of the first terminal
Based on the movement information of the mobile body that performs the movement process on the one terminal, a process of calculating a specific position is performed,
The effect object placement unit of the first terminal is
A process of placing an effect object toward the specific position calculated based on movement information of the moving body that performs a movement process on the first terminal,
The drawing unit of the first terminal is
The program which performs the process which produces | generates the image seen from the virtual camera which follows the movement of the said mobile body which performs a movement process with a said 1st terminal.
オブジェクト空間における仮想カメラから見える画像を生成する処理を行うプログラムであって、
前記オブジェクト空間内でエフェクトを発生させるための所定条件を満たしたか否かを判断する判断部と、
前記所定条件を満たした場合に、前記仮想カメラの移動情報に基づいて、特定位置を算出する処理を行う算出部と、
前記オブジェクト空間において、エフェクト発生位置から特定位置に向かって、エフェクトオブジェクトを配置する処理を行うエフェクトオブジェクト配置部と、
前記仮想カメラから見える画像を生成する処理を行う描画部として、コンピュータを機能させることを特徴とするプログラム。
A program for generating an image that can be viewed from a virtual camera in an object space,
A determination unit for determining whether or not a predetermined condition for generating an effect in the object space is satisfied;
A calculation unit that performs a process of calculating a specific position based on movement information of the virtual camera when the predetermined condition is satisfied;
In the object space, an effect object placement unit that performs a process of placing an effect object from the effect occurrence position toward the specific position;
A program that causes a computer to function as a drawing unit that performs processing for generating an image that can be viewed from the virtual camera.
請求項6において、
前記算出部が、
前記仮想カメラの移動速度及び移動方向に基づいて、前記特定位置を算出することを特徴とするプログラム。
In claim 6,
The calculation unit
The program for calculating the specific position based on a moving speed and a moving direction of the virtual camera.
請求項6又は7において、
前記算出部が、
前記仮想カメラの移動速度及び移動方向に基づいて、所定期間後の前記仮想カメラの位置を推定し、推定された位置を前記特定位置とすることを特徴とするプログラム。
In claim 6 or 7,
The calculation unit
A program that estimates a position of the virtual camera after a predetermined period based on a moving speed and a moving direction of the virtual camera and sets the estimated position as the specific position.
請求項6〜8のいずれかにおいて、
前記描画部が複数の仮想カメラのうち、いずれかの仮想カメラから見える画像を生成する場合には、
前記算出部が、
前記画像生成で用いられる仮想カメラの移動情報に基づいて、特定位置を算出し、
前記エフェクトオブジェクト配置部が、
前記画像生成で用いられる仮想カメラの移動情報に基づいて算出された前記特定位置に向かって、エフェクトオブジェクトを配置する処理を行うことを特徴とするプログラム。
In any one of Claims 6-8,
When the drawing unit generates an image that can be seen from any one of a plurality of virtual cameras,
The calculation unit
Based on the movement information of the virtual camera used in the image generation, a specific position is calculated,
The effect object placement unit is
The program which performs the process which arrange | positions an effect object toward the said specific position calculated based on the movement information of the virtual camera used by the said image generation.
請求項6〜9のいずれかにおいて、
前記プログラムは、第1の端末のためのプログラムであって、
前記第1の端末が第2の端末とネットワークを介して相互にエフェクト発生情報を含むデータを送受信する処理を行う通信制御部として、コンピュータを更に機能させ、
前記第1の端末の判断部が、
前記第2の端末から、エフェクト発生情報を受信した場合には、前記所定条件を満たしたと判断する処理を行い、
前記第1の端末の算出部が、
前記所定条件を満たした場合に、前記1の端末で制御される前記仮想カメラの移動情報に基づいて、特定位置を算出する処理を行い、
前記第1の端末の前記エフェクトオブジェクト配置部が、
前記1の端末で制御される前記仮想カメラの移動情報に基づいて算出された前記特定位置に向かって、エフェクトオブジェクトを配置する処理を行い、
前記第1の端末の描画部が、
前記1の端末で制御される前記仮想カメラから見える画像を生成する処理を行うことを特徴とするプログラム。
In any one of Claims 6-9,
The program is a program for a first terminal,
The first terminal further functions as a communication control unit that performs processing for transmitting and receiving data including effect generation information to and from the second terminal via a network,
The determination unit of the first terminal
When effect occurrence information is received from the second terminal, a process is performed to determine that the predetermined condition is satisfied,
The calculation unit of the first terminal
When the predetermined condition is satisfied, a process of calculating a specific position is performed based on movement information of the virtual camera controlled by the one terminal,
The effect object placement unit of the first terminal is
A process of arranging an effect object toward the specific position calculated based on movement information of the virtual camera controlled by the one terminal;
The drawing unit of the first terminal is
The program which performs the process which produces | generates the image seen from the said virtual camera controlled by said 1 terminal.
コンピュータ読み取り可能な情報記憶媒体であって、請求項1〜10のいずれかのプログラムを記憶したことを特徴とする情報記憶媒体。   A computer-readable information storage medium, wherein the program according to any one of claims 1 to 10 is stored. オブジェクト空間における仮想カメラから見える画像を生成する処理を行う端末であって、
前記オブジェクト空間において、入力部の入力情報に基づき移動体を移動させる処理を行う移動処理部と、
前記仮想カメラを前記移動体の移動に追従させる制御を行う仮想カメラ制御部と、
前記オブジェクト空間内でエフェクトを発生させるための所定条件を満たしたか否かを判断する判断部と、
前記所定条件を満たした場合に、前記移動体の移動情報に基づいて、特定位置を算出する処理を行う算出部と、
前記オブジェクト空間において、エフェクト発生位置から前記特定位置に向かって、エフェクトオブジェクトを配置する処理を行うエフェクトオブジェクト配置部と、
前記仮想カメラから見える画像を生成する処理を行う描画部とを含むことを特徴とする端末。
A terminal that performs processing to generate an image visible from a virtual camera in an object space,
In the object space, a movement processing unit that performs a process of moving a moving body based on input information of the input unit;
A virtual camera control unit that controls the virtual camera to follow the movement of the moving body;
A determination unit for determining whether or not a predetermined condition for generating an effect in the object space is satisfied;
A calculation unit that performs a process of calculating a specific position based on movement information of the moving body when the predetermined condition is satisfied;
In the object space, an effect object placement unit that performs a process of placing an effect object from the effect occurrence position toward the specific position;
And a drawing unit that performs a process of generating an image that is visible from the virtual camera.
オブジェクト空間における仮想カメラから見える画像を生成する処理を行う端末であって、
前記オブジェクト空間内でエフェクトを発生させるための所定条件を満たしたか否かを判断する判断部と、
前記所定条件を満たした場合に、前記仮想カメラの移動情報に基づいて、特定位置を算出する処理を行う算出部と、
前記オブジェクト空間において、エフェクト発生位置から特定位置に向かって、エフェクトオブジェクトを配置する処理を行うエフェクトオブジェクト配置部と、
前記仮想カメラから見える画像を生成する処理を行う描画部とを含むことを特徴とする端末。
A terminal that performs processing to generate an image visible from a virtual camera in an object space,
A determination unit for determining whether or not a predetermined condition for generating an effect in the object space is satisfied;
A calculation unit that performs a process of calculating a specific position based on movement information of the virtual camera when the predetermined condition is satisfied;
In the object space, an effect object placement unit that performs a process of placing an effect object from the effect occurrence position toward the specific position;
And a drawing unit that performs a process of generating an image that is visible from the virtual camera.
オブジェクト空間における仮想カメラから見える画像を生成する処理を行う第1の端末と第2の端末とが、ネットワークを介して相互にデータを送受信する処理を行うネットワークシステムであって、
各端末が、
他の端末とネットワークを介して相互にエフェクト発生情報を含むデータを送受信する処理を行う通信制御部と、
前記オブジェクト空間において、入力部の入力情報に基づき移動体を移動させる処理を行う移動処理部と、
前記仮想カメラを前記移動体の移動に追従させる制御を行う仮想カメラ制御部と、
前記オブジェクト空間内でエフェクトを発生させるための所定条件を満たしたか否かを判断する判断部と、
前記所定条件を満たした場合に、前記移動体の移動情報に基づいて、特定位置を算出する処理を行う算出部と、
前記オブジェクト空間において、エフェクト発生位置から前記特定位置に向かって、エフェクトオブジェクトを配置する処理を行うエフェクトオブジェクト配置部と、
前記仮想カメラから見える画像を生成する処理を行う描画部とを含み、
前記第1の端末の判断部が、
前記第2の端末から、エフェクト発生情報を受信した場合には、前記所定条件を満たしたと判断する処理を行い、
前記第1の端末の算出部が、
前記1の端末で移動処理を行う前記移動体の移動情報に基づいて、特定位置を算出する処理を行い、
前記第1の端末の前記エフェクトオブジェクト配置部が、
前記第1の端末で移動処理を行う前記移動体の移動情報に基づいて算出された前記特定位置に向かって、エフェクトオブジェクトを配置する処理を行い、
前記第1の端末の描画部が、
前記第1の端末で移動処理を行う前記移動体の移動に追従する仮想カメラから見える画像を生成する処理を行うことを特徴とするネットワークシステム。
A network system in which a first terminal and a second terminal that perform processing for generating an image viewed from a virtual camera in an object space perform processing for transmitting and receiving data to and from each other via a network,
Each terminal
A communication control unit that performs processing to transmit / receive data including effect generation information to / from other terminals via a network;
In the object space, a movement processing unit that performs a process of moving a moving body based on input information of the input unit;
A virtual camera control unit that controls the virtual camera to follow the movement of the moving body;
A determination unit for determining whether or not a predetermined condition for generating an effect in the object space is satisfied;
A calculation unit that performs a process of calculating a specific position based on movement information of the moving body when the predetermined condition is satisfied;
In the object space, an effect object placement unit that performs a process of placing an effect object from the effect occurrence position toward the specific position;
A drawing unit that performs a process of generating an image visible from the virtual camera,
The determination unit of the first terminal
When effect occurrence information is received from the second terminal, a process is performed to determine that the predetermined condition is satisfied,
The calculation unit of the first terminal
Based on the movement information of the mobile body that performs the movement process on the one terminal, a process of calculating a specific position is performed,
The effect object placement unit of the first terminal is
A process of placing an effect object toward the specific position calculated based on movement information of the moving body that performs a movement process on the first terminal,
The drawing unit of the first terminal is
A network system that performs processing for generating an image that can be seen from a virtual camera that follows movement of the moving object that performs movement processing on the first terminal.
オブジェクト空間における仮想カメラから見える画像を生成する処理を行う第1の端末と第2の端末とが、ネットワークを介して相互にデータを送受信する処理を行うネットワークシステムであって、
各端末が、
他の端末とネットワークを介して相互にエフェクト発生情報を含むデータを送受信する処理を行う通信制御部と、
前記オブジェクト空間内でエフェクトを発生させるための所定条件を満たしたか否かを判断する判断部と、
前記所定条件を満たした場合に、前記仮想カメラの移動情報に基づいて、特定位置を算出する処理を行う算出部と、
前記オブジェクト空間において、エフェクト発生位置から特定位置に向かって、エフェクトオブジェクトを配置する処理を行うエフェクトオブジェクト配置部と、
前記仮想カメラから見える画像を生成する処理を行う描画部とを含み、
前記第1の端末の判断部が、
前記第2の端末から、エフェクト発生情報を受信した場合には、前記所定条件を満たしたと判断する処理を行い、
前記第1の端末の算出部が、
前記所定条件を満たした場合に、前記1の端末で制御される前記仮想カメラの移動情報に基づいて、特定位置を算出する処理を行い、
前記第1の端末の前記エフェクトオブジェクト配置部が、
前記1の端末で制御される前記仮想カメラの移動情報に基づいて算出された前記特定位置に向かって、エフェクトオブジェクトを配置する処理を行い、
前記第1の端末の描画部が、
前記1の端末で制御される前記仮想カメラから見える画像を生成する処理を行うことを特徴とするネットワークシステム。
A network system in which a first terminal and a second terminal that perform processing for generating an image viewed from a virtual camera in an object space perform processing for transmitting and receiving data to and from each other via a network,
Each terminal
A communication control unit that performs processing to transmit / receive data including effect generation information to / from other terminals via a network;
A determination unit for determining whether or not a predetermined condition for generating an effect in the object space is satisfied;
A calculation unit that performs a process of calculating a specific position based on movement information of the virtual camera when the predetermined condition is satisfied;
In the object space, an effect object placement unit that performs a process of placing an effect object from the effect occurrence position toward the specific position;
A drawing unit that performs a process of generating an image visible from the virtual camera,
The determination unit of the first terminal
When effect occurrence information is received from the second terminal, a process is performed to determine that the predetermined condition is satisfied,
The calculation unit of the first terminal
When the predetermined condition is satisfied, a process of calculating a specific position is performed based on movement information of the virtual camera controlled by the one terminal,
The effect object placement unit of the first terminal is
A process of arranging an effect object toward the specific position calculated based on movement information of the virtual camera controlled by the one terminal;
The drawing unit of the first terminal is
A network system that performs processing for generating an image that can be seen from the virtual camera controlled by the one terminal.
JP2009249542A 2009-10-29 2009-10-29 Program and network system Expired - Fee Related JP5443129B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009249542A JP5443129B2 (en) 2009-10-29 2009-10-29 Program and network system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009249542A JP5443129B2 (en) 2009-10-29 2009-10-29 Program and network system

Publications (2)

Publication Number Publication Date
JP2011096018A true JP2011096018A (en) 2011-05-12
JP5443129B2 JP5443129B2 (en) 2014-03-19

Family

ID=44112849

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009249542A Expired - Fee Related JP5443129B2 (en) 2009-10-29 2009-10-29 Program and network system

Country Status (1)

Country Link
JP (1) JP5443129B2 (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102750723B (en) * 2011-08-15 2017-03-01 新奥特(北京)视频技术有限公司 A kind of generation method of satellite animation and system
JP2017051550A (en) * 2015-09-11 2017-03-16 株式会社バンダイナムコエンターテインメント Game system
JP6276882B1 (en) * 2017-05-19 2018-02-07 株式会社コロプラ Information processing method, apparatus, and program for causing computer to execute information processing method
JP2018195287A (en) * 2018-01-12 2018-12-06 株式会社コロプラ Information processing method, device and program causing computer to execute information processing method
JP2018202097A (en) * 2017-06-09 2018-12-27 株式会社カプコン Game program and game device
JP2019179481A (en) * 2018-03-30 2019-10-17 株式会社バンダイ Computer program and portable terminal device
CN113476840A (en) * 2021-07-06 2021-10-08 网易(杭州)网络有限公司 Special effect processing method, device, equipment and storage medium in game

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001273525A (en) * 2000-01-21 2001-10-05 Sony Computer Entertainment Inc Entertainment device, storage medium, and object display method
JP2005319029A (en) * 2004-05-07 2005-11-17 Namco Ltd Program, information storage medium, and image generating system
JP2009169471A (en) * 2008-01-10 2009-07-30 Namco Bandai Games Inc Program, information storage medium, and image generation system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001273525A (en) * 2000-01-21 2001-10-05 Sony Computer Entertainment Inc Entertainment device, storage medium, and object display method
JP2005319029A (en) * 2004-05-07 2005-11-17 Namco Ltd Program, information storage medium, and image generating system
JP2009169471A (en) * 2008-01-10 2009-07-30 Namco Bandai Games Inc Program, information storage medium, and image generation system

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102750723B (en) * 2011-08-15 2017-03-01 新奥特(北京)视频技术有限公司 A kind of generation method of satellite animation and system
JP2017051550A (en) * 2015-09-11 2017-03-16 株式会社バンダイナムコエンターテインメント Game system
JP6276882B1 (en) * 2017-05-19 2018-02-07 株式会社コロプラ Information processing method, apparatus, and program for causing computer to execute information processing method
JP2018195177A (en) * 2017-05-19 2018-12-06 株式会社コロプラ Information processing method, device and program causing computer to execute information processing method
JP2018202097A (en) * 2017-06-09 2018-12-27 株式会社カプコン Game program and game device
JP2018195287A (en) * 2018-01-12 2018-12-06 株式会社コロプラ Information processing method, device and program causing computer to execute information processing method
JP2019179481A (en) * 2018-03-30 2019-10-17 株式会社バンダイ Computer program and portable terminal device
CN113476840A (en) * 2021-07-06 2021-10-08 网易(杭州)网络有限公司 Special effect processing method, device, equipment and storage medium in game
CN113476840B (en) * 2021-07-06 2024-06-04 网易(杭州)网络有限公司 Special effect processing method, device and equipment in game and storage medium

Also Published As

Publication number Publication date
JP5443129B2 (en) 2014-03-19

Similar Documents

Publication Publication Date Title
JP5390115B2 (en) Program, game system
JP5614956B2 (en) Program, image generation system
US8678898B2 (en) Information storage medium, terminal, image generation method, and network system
JP5161256B2 (en) Program, information storage medium, and image generation apparatus
JP5443129B2 (en) Program and network system
US9345972B2 (en) Information storage medium, image generation system, and image generation method
EP2158948A2 (en) Image generation system, image generation method, and information storage medium
JP2011215920A (en) Program, information storage medium and image generation system
US11110351B2 (en) Information storage media, game devices and servers
JP2012210243A (en) Program, information storage medium, terminal, and server
JP2011053838A (en) Program, information storage medium, and image generation device
JP2011212123A (en) Program, information storage medium and terminal
JP7426462B2 (en) Programs, game devices, server devices and game systems
JP4412715B2 (en) Program, information storage medium, and image generation system
JP2017118979A (en) Game device and program
JP2012215934A (en) Program, information storage medium, terminal, and server
JP2011096017A (en) Program, information storage medium and terminal
JP2012120755A (en) Program, information storage medium, and game machine
JP2012252659A (en) Program, information storage medium, and server
JP2009178479A (en) Program, information storage medium and game system
JP2011255114A (en) Program, information storage medium, and image generation system
JP4420729B2 (en) Program, information storage medium, and image generation system
JP5558008B2 (en) Program, information storage medium, and game system
JP2018171309A (en) Simulation system and program
JP2011215945A (en) Program, information storage medium, and image generation device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120817

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130430

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130508

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130708

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130726

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130904

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131018

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: 20131127

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131219

R150 Certificate of patent or registration of utility model

Ref document number: 5443129

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees