JP2011076620A - Image generation system, program, and information storage medium - Google Patents

Image generation system, program, and information storage medium Download PDF

Info

Publication number
JP2011076620A
JP2011076620A JP2010258979A JP2010258979A JP2011076620A JP 2011076620 A JP2011076620 A JP 2011076620A JP 2010258979 A JP2010258979 A JP 2010258979A JP 2010258979 A JP2010258979 A JP 2010258979A JP 2011076620 A JP2011076620 A JP 2011076620A
Authority
JP
Japan
Prior art keywords
particle
particles
image generation
image
virtual camera
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.)
Pending
Application number
JP2010258979A
Other languages
Japanese (ja)
Inventor
Hidetoshi Aoyanagi
秀俊 青柳
Akiko Wakabayashi
明子 若林
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 JP2010258979A priority Critical patent/JP2011076620A/en
Publication of JP2011076620A publication Critical patent/JP2011076620A/en
Pending legal-status Critical Current

Links

Landscapes

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

Abstract

<P>PROBLEM TO BE SOLVED: To provide an image generation system capable of generating a real and good-looking image with a little processing load in the case of using particles to generate an image, a program and an information storage medium. <P>SOLUTION: A particle load reduction processing part 134 performs processing that changes at least one of the number of particle occurrence points, the number of particles and particle life on the basis of information about a processing load. It also performs depth queuing processing of a reference color of a particle set object on the basis of depth information of the particle occurrence points, and applies a depth queuing effect to each particle belonging to a particle set by using a base color. It also controls the number of partitions constituting a particle object on the basis of at least one of the depth information of the particle object, a positional relation to a virtual camera, and the ratio of a drawing area that occupies in a primitive picture constituting the particle object. <P>COPYRIGHT: (C)2011,JPO&INPIT

Description

本発明は、画像生成システムプログラム及び情報記憶媒体に関する。   The present invention relates to an image generation system program and an information storage medium.

従来より、仮想的な3次元空間であるオブジェクト空間内の所与の視点から見える画像を生成するゲームシステムが知られており、いわゆる仮想現実を体験できるものとして人気が高い。   Conventionally, a game system that generates an image that can be seen from a given viewpoint in an object space that is a virtual three-dimensional space is known, and is popular as a device that can experience so-called virtual reality.

特開2000−242807公報JP 2000-242807 A

さてこのようなゲームシステムでは、プレーヤの仮想現実向上のために、よりリアルな画像を生成することが重要な技術的課題になっている。ここにおいて例えばゲーム空間内で発生する水しぶき等がある場合にはリアルな水しぶきの表現が重要となる。   Now, in such a game system, it is an important technical problem to generate a more realistic image in order to improve the player's virtual reality. Here, for example, when there is a splash generated in the game space, a realistic expression of the splash is important.

このような水しぶき等を表現する手法としてパーティクルシステムとよばれる手法が知られている。すなわち自然物の中には1つひとつの識別が困難であるような微粒子の集まりとして表現すると便利なものがある。例えば立ち込める湯気や霧、噴煙、土煙、揺らめく炎、爆発、噴水や滝、泡や水しぶき、花火、飛び散る粉末、降りしきる雨や雪、霞、渦巻きや竜巻、風に舞い散る桜吹雪等がその例としてあげられる。   A technique called a particle system is known as a technique for expressing such splashes. That is, some natural objects are useful when expressed as a collection of fine particles that are difficult to identify one by one. Examples include steam, fog, eruptions, earth smoke, shimmering flames, explosions, fountains and waterfalls, bubbles and splashes, fireworks, splashing powder, falling rain and snow, firewood, swirls and tornadoes, and cherry blossoms flying in the wind. can give.

パーティクルシステムでは、このように形が不安定であるばかりでなく明確な表面が存在しないような物体や現象のモデルとして多数の粒子の動きとして表現し、そのような粒子をパーティクルと呼ぶ。   In the particle system, not only the shape is unstable but also a model of an object or phenomenon in which a clear surface does not exist is expressed as a movement of a large number of particles, and such particles are called particles.

ここでパーティクルは、色や寿命などの特性を有し、所与の規則(エミッターによって与えられる)や作用する力(フォース)によって、発生、移動、消滅する。また各フレームにおけるパーティクルの位置はエミッターやフォースに基づき流体計算、衝突計算、運動計算等のパーティクルの3次元空間における位置を決定する演算を行い決定されることになる。   Here, particles have characteristics such as color and lifetime, and are generated, moved, and disappeared by a given rule (given by the emitter) and acting force (force). The position of the particle in each frame is determined by performing an operation for determining the position of the particle in the three-dimensional space such as fluid calculation, collision calculation, and motion calculation based on the emitter and force.

かかるパーティクルを用いて水しぶき等を表現すると、リアルな水しぶき等の画像を生成することができる。   When splashing or the like is expressed using such particles, a realistic image such as splashing can be generated.

ところがこのようなパーティクルを用いて水しぶき等の画像を生成すると処理負荷が非情に重くなってしまうという欠点がある。   However, when an image such as splashing is generated using such particles, there is a drawback that the processing load becomes heavy.

例えばリアルで見栄えのよい水しぶきの画像を生成するためには単位時間に放出されるパーティクルの数がより多いことが好ましい。しかしパーティクル数が増える画像生成に必要な各種処理が増大するという問題点がある。   For example, it is preferable that the number of particles emitted per unit time is larger in order to generate a realistic and good-looking splash image. However, there is a problem that various processes necessary for image generation in which the number of particles increases increases.

特に限られたハード資源でリアルタイム画像生成を行う必要があるゲームシステムでは、パーティクルを用いて画像を生成する場合に、いかにして少ない処理負荷でリアルで見栄えのよい画像を生成するかが問題になる。   Especially in game systems that need to generate real-time images with limited hardware resources, the problem is how to generate real-looking images with less processing load when generating images using particles. Become.

本発明は、以上のような課題に鑑みてなされたものであり、その目的とするところは、パーティクルを用いて画像を生成する場合に、少ない処理負荷でリアルで見栄えのよい画像を生成可能な画像生成システム、プログラム及び情報記憶媒体を提供することである。   The present invention has been made in view of the above-described problems, and an object of the present invention is to generate a real and good-looking image with a small processing load when generating an image using particles. An image generation system, a program, and an information storage medium are provided.

(1)本発明は画像生成を行うシステムであって、
画像生成時の処理負荷に関する情報に基づき、パーティクル発生地点の数、パーティクル数及びパーティクルの寿命の少なくともひとつを変更する手段と、
パーティクルを用いてオブジェクト空間の所与の視点から見える画像を生成する手段と、
含むことを特徴とする。
(1) The present invention is a system for generating an image,
A means for changing at least one of the number of particle generation points, the number of particles, and the lifetime of particles based on information on a processing load at the time of image generation;
Means for generating an image that is visible from a given viewpoint in the object space using particles;
It is characterized by including.

また本発明にかかるプログラムは、コンピュータにより使用可能なプログラム(情報記憶媒体又は搬送波に具現化されるプログラム)であって、上記手段をコンピュータに実現させることを特徴とする。また本発明にかかる情報記憶媒体は、コンピュータにより使用可能な情報記憶媒体、上記手段をコンピュータに実現させるためのプログラムを含むことを特徴とする。   A program according to the present invention is a program that can be used by a computer (a program embodied in an information storage medium or a carrier wave), and causes the computer to realize the above means. An information storage medium according to the present invention includes an information storage medium usable by a computer and a program for causing the computer to realize the above means.

画像生成時の処理負荷に関する情報とは、例えばリフレッシュレートやグローバルクロックやCPUクロック等のように1フレームあたりの描画速度が判断可能な所与の値で与えられる。ここで画像生成時の処理負荷とは、CPUで行う演算負荷でもよいし描画チップで発生する演算負荷でもよく、画像生成に必要な各種処理負荷を含む。   The information related to the processing load at the time of image generation is given as a given value by which the drawing speed per frame can be determined, such as a refresh rate, a global clock, or a CPU clock. Here, the processing load at the time of image generation may be a calculation load performed by the CPU or a calculation load generated by the drawing chip, and includes various processing loads necessary for image generation.

パーティクルの寿命は例えばパーティクルの特性情報として与えられるものであり、例えば半透明描画を行う際のα値の形式で与えられる場合でもよい。   The lifetime of the particles is given as, for example, particle characteristic information. For example, the life of the particles may be given in the form of an α value when performing translucent drawing.

本発明によれば、処理負荷が高いと判断した場合には、パーティクル発生地点の数を減らしたり、パーティクル数を減らしたり、パーティクルの寿命を短く設定したりすることにより、処理負荷の低減を図り処理落ち等を防ぐことができる。   According to the present invention, when it is determined that the processing load is high, the processing load is reduced by reducing the number of particle generation points, the number of particles, or setting the particle life to be short. It is possible to prevent processing failures and the like.

(2)また本発明に係る画像生成システム、プログラム及び情報記憶媒体は、
前記パーティクル数は、一画面に存在するパーティクル数又は所与の発生地点から発生させるパーティクル数であることを特徴とする。
(2) Further, an image generation system, a program, and an information storage medium according to the present invention are:
The number of particles is the number of particles existing on one screen or the number of particles generated from a given generation point.

(3)また本発明に係る画像生成システム、プログラム及び情報記憶媒体は、
パーティクルの奥行き情報に基づき仮想カメラから離れたパーティクルから優先して寿命を短くすることにより、処理負荷を軽減することを特徴とする。
(3) Further, an image generation system, a program, and an information storage medium according to the present invention are:
The processing load is reduced by preferentially shortening the lifetime based on the particles far from the virtual camera based on the depth information of the particles.

パーティクルの寿命を短く設定することにより当該パーティクルを速く消滅させることができるため、その分処理負荷の低減をはかることができる。   By setting the particle life to be short, the particles can be quickly eliminated, so that the processing load can be reduced accordingly.

ここにおいて遠くに位置するパーティクルほど見た目の影響が少ないため、パーティクルの奥行き情報に基づき仮想カメラから遠くに位置するパーティクルから優先して寿命を短くすることが好ましい。   Here, the farther away the particles, the less the influence of the appearance, so it is preferable to prioritize the particles far from the virtual camera and shorten the life based on the depth information of the particles.

このように本発明によればパーティクルの奥行き情報に基づき、その寿命を短くしても見た目に影響の少ないものを選択することができるので、見た目の効果を最大に保って、処理負荷を軽減することができる。   As described above, according to the present invention, it is possible to select a particle that has little effect on the appearance even if the lifetime is shortened based on the depth information of the particle, so that the effect of the appearance is kept at the maximum and the processing load is reduced. be able to.

(4)また本発明に係る画像生成システム、プログラム及び情報記憶媒体は、
パーティクルの発生地点の奥行き情報に基づき仮想カメラから離れたパーティクル発生地点から発生するパーティクル集合から優先して画像生成の対象外とすることにより、処理負荷を軽減することを特徴とする。
(4) Further, an image generation system, a program, and an information storage medium according to the present invention are:
A processing load is reduced by preferentially excluding an image generation target from a set of particles generated from a particle generation point distant from the virtual camera based on depth information of the particle generation point.

パーティクル発生地点から発生するパーティクル集合を画像生成の対象外とすることによりその分処理負荷の低減をはかることができる。   By excluding the particle set generated from the particle generation point from the image generation target, the processing load can be reduced accordingly.

ここにおいて遠くに位置するパーティクル発生地点から発生するパーティクル集合の画像生成をカットしたほうが見た目の影響が少ないため、パーティクル発生地点の奥行き情報に基づき仮想カメラから遠くに位置するパーティクル発生地点から発生するパーティクル集合から優先して画像生成の対象外とすることが好ましい。   Particles generated from a particle generation point located far from the virtual camera based on the depth information of the particle generation point because the image effect of the particle generation generated from the particle generation point located far away is less affected by the appearance. It is preferable to preferentially exclude the image from the set.

このように本発明によればパーティクルの奥行き情報に基づき、画像生成の対象外としても見た目に影響の少ないものを選択して画像生成の対象外とすることができるので、見た目の効果を最大に保って、処理負荷を軽減することができる。   As described above, according to the present invention, based on the depth information of the particle, it is possible to select an image that has little visual influence even if it is not subject to image generation and exclude it from the subject of image generation. And the processing load can be reduced.

(5)また本発明に係る画像生成システム、プログラム及び情報記憶媒体は、
パーティクルの発生地点の奥行き情報に基づき仮想カメラから離れたパーティクル発生地点から優先して発生させるパーティクルの数を削減することにより、処理負荷を軽減することを特徴とする。
(5) An image generation system, a program, and an information storage medium according to the present invention include
The processing load is reduced by reducing the number of particles to be generated with priority from the particle generation point distant from the virtual camera based on the depth information of the particle generation point.

パーティクル発生地点から発生させるパーティクルの数を削減することによりその分処理負荷を軽減することができる。   By reducing the number of particles generated from the particle generation point, the processing load can be reduced accordingly.

ここにおいて遠くに位置するパーティクル発生地点から発生するパーティクルの数を削減したほうが見た目の影響が少ないため、パーティクル発生地点の奥行き情報に基づき仮想カメラから遠くに位置するパーティクル発生地点から優先して発生させるパーティクルの数を削減することが好ましい。   In this case, reducing the number of particles generated from a distant particle generation point has less visual effect, so it is generated with priority from the particle generation point far from the virtual camera based on the depth information of the particle generation point. It is preferable to reduce the number of particles.

このように本発明によればパーティクル発生地点の奥行き情報に基づき、画像生成の対象外としても見た目に影響の少ないものを選択して発生させるパーティクルの数を削減することができるので、見た目の効果を最大に保って、処理負荷を軽減することができる。   As described above, according to the present invention, it is possible to reduce the number of particles to be generated by selecting a particle that has little visual influence even when it is not an image generation target based on the depth information of the particle generation point. Can be kept at a maximum to reduce the processing load.

(6)また本発明に係る画像生成システム、プログラム及び情報記憶媒体は、
パーティクルの奥行き情報に基づき仮想カメラから離れたパーティクルに割り当てるオブジェクトから優先してオブジェクトの精密度を下げることにより、処理負荷を軽減することを特徴とする。
(6) An image generation system, a program, and an information storage medium according to the present invention are:
The processing load is reduced by lowering the precision of the object in preference to the object assigned to the particles away from the virtual camera based on the particle depth information.

オブジェクトの精密度を下げるとは、使用するモデルをより簡易なものにする場合等である。本発明によればパーティクルに割り当てるオブジェクトについてパーティクルの奥行き情報に基づきLOD(レベルオブデテール)を行うことができるため、見た目の効果を最大に保って、処理負荷を軽減することができる。   Decreasing the precision of an object is to make a model to be used simpler. According to the present invention, LOD (level of detail) can be performed on an object assigned to a particle based on the depth information of the particle, so that the visual effect can be kept at the maximum and the processing load can be reduced.

(7)また本発明に係る画像生成システム、プログラム及び情報記憶媒体は、
パーティクル発生地点の奥行き情報に基づき仮想カメラから離れたパーティクル発生地点から発生したパーティクルに割り当てるオブジェクトから優先してオブジェクトの精密度を下げることにより、処理負荷を軽減することを特徴とする。
(7) An image generation system, a program, and an information storage medium according to the present invention include
The processing load is reduced by lowering the precision of the object in preference to the object assigned to the particle generated from the particle generation point remote from the virtual camera based on the depth information of the particle generation point.

オブジェクトの精密度を下げるとは、使用するモデルをより簡易なものにする場合等である。本発明によればパーティクルに割り当てるオブジェクトについてパーティクル発生地点の奥行き情報に基づきLOD(レベルオブデテール)を行うことができるため、見た目の効果を最大に保って、処理負荷を軽減することができる。   Decreasing the precision of an object is to make a model to be used simpler. According to the present invention, LOD (level of detail) can be performed on an object to be assigned to a particle based on the depth information of the particle generation point, so that the visual effect can be kept at the maximum and the processing load can be reduced.

(8)本発明は画像生成を行うシステムであって、
パーティクル又はパーティクルに割り当てたオブジェクトに与えられた透明度が所定値より小さくなった場合には、当該パーティクル又はパーティクルに割り当てたオブジェクトを画像生成の対象から除外する手段と、
パーティクルを用いてオブジェクト空間の所与の視点から見える画像を生成する手段と、
を含むことを特徴とする。
(8) The present invention is a system for generating an image,
Means for excluding the particle or the object assigned to the particle from the target of image generation when the transparency given to the particle or the object assigned to the particle is smaller than a predetermined value;
Means for generating an image that is visible from a given viewpoint in the object space using particles;
It is characterized by including.

また本発明にかかるプログラムは、コンピュータにより使用可能なプログラム(情報記憶媒体又は搬送波に具現化されるプログラム)であって、上記手段をコンピュータに実現させることを特徴とする。また本発明にかかる情報記憶媒体は、コンピュータにより使用可能な情報記憶媒体、上記手段をコンピュータに実現させるためのプログラムを含むことを特徴とする。   A program according to the present invention is a program that can be used by a computer (a program embodied in an information storage medium or a carrier wave), and causes the computer to realize the above means. An information storage medium according to the present invention includes an information storage medium usable by a computer and a program for causing the computer to realize the above means.

パーティクル(又はパーティクルに割り当てたオブジェクト)に与えられた透明度がパーティクル発生からの時間経過に応じて変化する場合に有効である。ここにおいて透明度は例えば半透明描画処理を行う際のα値等で与えられる。   This is effective when the transparency given to a particle (or an object assigned to the particle) changes with the passage of time from the generation of the particle. Here, the transparency is given by, for example, an α value when performing the semi-transparent drawing process.

パーティクル又はパーティクルに割り当てたオブジェクトに与えられた透明度が所定値より小さくなった場合には、当該パーティクル又はパーティクルに割り当てたオブジェクトを画像生成の対象から除外することにより、例えば画像生成のために行う位置の演算処理や、座標変換処理や、描画処理等のその後に行われる処理等の画像生成に関する各種処理を省略することが可能となり、処理負荷の軽減を図ることができる。   When the transparency given to a particle or an object assigned to a particle becomes smaller than a predetermined value, the particle or the object assigned to the particle is excluded from the object of image generation, for example, a position for image generation It is possible to omit various processes relating to image generation, such as subsequent processing such as calculation processing, coordinate conversion processing, and drawing processing, thereby reducing the processing load.

(9)本発明は画像生成を行うシステムであって、
パーティクルの高さが所定の値になったらパーティクル又はパーティクルに割り当てたオブジェクトの消滅処理を行う手段と、
パーティクルを用いてオブジェクト空間の所与の視点から見える画像を生成する手段と、
を含むことを特徴とする。
(9) The present invention is a system for generating an image,
Means for performing the annihilation process of the particle or the object assigned to the particle when the height of the particle reaches a predetermined value;
Means for generating an image that is visible from a given viewpoint in the object space using particles;
It is characterized by including.

また本発明にかかるプログラムは、コンピュータにより使用可能なプログラム(情報記憶媒体又は搬送波に具現化されるプログラム)であって、上記手段をコンピュータに実現させることを特徴とする。また本発明にかかる情報記憶媒体は、コンピュータにより使用可能な情報記憶媒体、上記手段をコンピュータに実現させるためのプログラムを含むことを特徴とする。   A program according to the present invention is a program that can be used by a computer (a program embodied in an information storage medium or a carrier wave), and causes the computer to realize the above means. An information storage medium according to the present invention includes an information storage medium usable by a computer and a program for causing the computer to realize the above means.

本発明によれば例えばパーティクルを用いて生成した水しぶきの高さが水面の高さになった場合や、パーティクルを用いて生成した雪等の高さが地面の高さになった場合等に水しぶきや雪を消滅させることができる。   According to the present invention, for example, when the height of the splash generated using particles becomes the height of the water surface, or when the height of snow or the like generated using particles becomes the height of the ground, etc. And can eliminate snow.

このようにパーティクルの高さが所定の値になったらパーティクル又はパーティクルに割り当てたオブジェクトの消滅処理を行うことにより、以降の当該パーティクルに関する処理を省略できるため処理負荷を軽減することができる。   As described above, when the height of the particle reaches a predetermined value, by performing the annihilation process of the particle or the object assigned to the particle, the subsequent process regarding the particle can be omitted, so that the processing load can be reduced.

またパーティクルの高さによって消滅処理を行うか否かを判断できるため、判断に要する処理負荷が軽くてすむ。従ってパーティクルの高さによって当該パーティクルが可視範囲外になる状態が発生する場合に有効である。   In addition, since it can be determined whether or not the annihilation process is performed based on the height of the particles, the processing load required for the determination can be reduced. Therefore, this is effective when a state occurs in which the particle is outside the visible range depending on the height of the particle.

(10)また本発明に係る画像生成システム、プログラム及び情報記憶媒体は、
前記消滅処理には、所定時間経過後にパーティクル又はパーティクルに割り当てたオブジェクトが消滅する場合も含むことを特徴とする。
(10) An image generation system, a program, and an information storage medium according to the present invention include
The annihilation process includes a case where a particle or an object assigned to the particle annihilates after a predetermined time has elapsed.

(11)本発明は画像生成を行うシステムであって、
パーティクルの奥行き情報に基づきその前に視界をさえぎるオブジェクトがあるか否か判断し、視界をさえぎるオブジェクトがある場合には当該パーティクル又はパーティクルに割り当てたオブジェクトを画像生成の対象から除外する手段と、
パーティクルを用いてオブジェクト空間の所与の視点から見える画像を生成する手段と、
を含むことを特徴とする。
(11) The present invention is a system for generating an image,
Based on the depth information of the particle, it is determined whether there is an object that blocks the field of vision in front of it, and when there is an object that blocks the field of view, the means to exclude the particle or the object assigned to the particle from the target of image generation,
Means for generating an image that is visible from a given viewpoint in the object space using particles;
It is characterized by including.

また本発明にかかるプログラムは、コンピュータにより使用可能なプログラム(情報記憶媒体又は搬送波に具現化されるプログラム)であって、上記手段をコンピュータに実現させることを特徴とする。また本発明にかかる情報記憶媒体は、コンピュータにより使用可能な情報記憶媒体、上記手段をコンピュータに実現させるためのプログラムを含むことを特徴とする。   A program according to the present invention is a program that can be used by a computer (a program embodied in an information storage medium or a carrier wave), and causes the computer to realize the above means. An information storage medium according to the present invention includes an information storage medium usable by a computer and a program for causing the computer to realize the above means.

例えば水しぶきが他のオブジェクトに隠れる場合等、水しぶきの描画処理を省略できるので、処理負荷を削減することができる。   For example, when the splash is hidden by another object, the drawing process of the splash can be omitted, so that the processing load can be reduced.

(12)本発明は画像生成を行うシステムであって、
同一のパーティクル発生地点から発生したパーティクル集合によって表現するパーティクル集合オブジェクトに対して設定された基準色に対してパーティクル発生地点の奥行き情報に基づきデプスキューング処理を行う手段と、
前記デプスキューング処理で得られた色をパーティクル集合オブジェクトのベースカラーとし、同一のパーティクル発生地点から発生したパーティクル集合に属する各パーティクルに対して前記ベースカラーを用いてデプスキューング効果を適用して画像生成処理を行う手段と、
を含むことを特徴とする。
(12) The present invention is a system for generating an image,
Means for performing depth cueing processing based on depth information of the particle generation point with respect to a reference color set for the particle set object represented by the particle set generated from the same particle generation point;
The color obtained by the depth cueing process is used as the base color of the particle set object, and the depth cueing effect is applied to each particle belonging to the particle set generated from the same particle generation point using the base color. Means for performing image generation processing;
It is characterized by including.

また本発明にかかるプログラムは、コンピュータにより使用可能なプログラム(情報記憶媒体又は搬送波に具現化されるプログラム)であって、上記手段をコンピュータに実現させることを特徴とする。また本発明にかかる情報記憶媒体は、コンピュータにより使用可能な情報記憶媒体、上記手段をコンピュータに実現させるためのプログラムを含むことを特徴とする。   A program according to the present invention is a program that can be used by a computer (a program embodied in an information storage medium or a carrier wave), and causes the computer to realize the above means. An information storage medium according to the present invention includes an information storage medium usable by a computer and a program for causing the computer to realize the above means.

一般にポリゴンオブジェクトに対してデプスキューイング処理を行う場合には、各頂点ごとにその頂点の奥行き値に応じてその頂点色と背景色の合成を行い、奥行き値に応じてその頂点色を変化させる。このためパーティクル集合オブジェクトを構成する各パーティクルオブジェクトの頂点ごとにデプスキューイング処理が必要となるため、処理負荷が著しく増大することになる。   In general, when depth cueing processing is performed on a polygon object, the vertex color and the background color are combined for each vertex according to the depth value of the vertex, and the vertex color is changed according to the depth value. . For this reason, since the depth cueing process is required for each vertex of each particle object constituting the particle aggregate object, the processing load is remarkably increased.

しかし本発明によれば、同一のパーティクル発生地点から発生したパーティクル集合によって表現するパーティクル集合オブジェクトに対して設定された基準色に対してパーティクル発生地点の奥行き情報に基づきデプスキューング処理を行い、これにより得られた色をパーティクル集合オブジェクトのベースカラーとし、同一のパーティクル発生地点から発生したパーティクル集合に属する各パーティクルに対して前記ベースカラーを用いてデプスキューング効果を適用して画像生成処理を行う。   However, according to the present invention, depth cueing processing is performed based on the depth information of the particle generation point for the reference color set for the particle set object represented by the particle set generated from the same particle generation point. The color obtained by the above is used as the base color of the particle set object, and image generation processing is performed by applying the depth queuing effect to each particle belonging to the particle set generated from the same particle generation point using the base color. .

このため1のパーティクル集合オブジェクトに対してベースカラーを求めるための演算は1回だけでよい。パーティクル集合オブジェクトを構成する各パーティクル又はパーティクルオブジェクトの全ての頂点に対してデプスキューング処理により変化する頂点色を演算する場合に比べて大幅に少ない処理負荷でFOG効果を出すことができる。   For this reason, the calculation for obtaining the base color for one particle aggregate object is only required once. The FOG effect can be achieved with a processing load that is significantly smaller than when calculating vertex colors that change by depth cueing processing for all the vertices of each particle or particle object constituting the particle aggregate object.

(13)本発明は画像生成を行うシステムであって、
パーティクルオブジェクトの奥行き情報、仮想カメラに対する位置関係及びパーティクルオブジェクトを構成するプリミティブの画面に占める描画面積の割合の少なくともひとつに基づきパーティクルオブジェクトを構成するプリミティブの分割数を制御する手段と、
パーティクルを用いてオブジェクト空間の所与の視点から見える画像を生成する手段と、
を含むことを特徴とする。
(13) The present invention is a system for generating an image,
Means for controlling the number of divisions of the primitive constituting the particle object based on at least one of the depth information of the particle object, the positional relationship with the virtual camera, and the ratio of the drawing area in the screen of the primitive constituting the particle object;
Means for generating an image that is visible from a given viewpoint in the object space using particles;
It is characterized by including.

また本発明にかかるプログラムは、コンピュータにより使用可能なプログラム(情報記憶媒体又は搬送波に具現化されるプログラム)であって、上記手段をコンピュータに実現させることを特徴とする。また本発明にかかる情報記憶媒体は、コンピュータにより使用可能な情報記憶媒体、上記手段をコンピュータに実現させるためのプログラムを含むことを特徴とする。   A program according to the present invention is a program that can be used by a computer (a program embodied in an information storage medium or a carrier wave), and causes the computer to realize the above means. An information storage medium according to the present invention includes an information storage medium usable by a computer and a program for causing the computer to realize the above means.

ここにおいてプリミティブとはポリゴンやスプライト等である。   Here, the primitive is a polygon, a sprite, or the like.

パーティクルオブジェクトの奥行き情報又は仮想カメラからの距離が大きくなった場合にパーティクルオブジェクトを構成するプリミティブの分割数が大きくなるように制御することが好ましい。   It is preferable to control so that the number of divisions of primitives constituting the particle object is increased when the depth information of the particle object or the distance from the virtual camera is increased.

一般にメモリ資源に制約のあるハードウエアを用いて画像生成を行う場合には、VRAM(フレームバッファ)の実記憶領域の容量も限られているため大きなプリミティブをVRAM(フレームバッファ)に描画しようとするとプリミティブの描画途中でページングが発生し処理負荷や処理時間が増大することになる。   In general, when image generation is performed using hardware with limited memory resources, since the capacity of the real storage area of the VRAM (frame buffer) is limited, when trying to draw a large primitive in the VRAM (frame buffer) Paging occurs during the rendering of primitives, increasing the processing load and processing time.

本発明によればパーティクルオブジェクトの奥行き情報又は仮想カメラからの距離が大きくなった場合にはパーティクルオブジェクトを構成するプリミティブの分割数を大きくすることができるので、プリミティブの描画途中でページングが発生するのを防止することができ処理負荷や処理時間を削減することができる。   According to the present invention, when the depth information of the particle object or the distance from the virtual camera is increased, the number of divisions of the primitives constituting the particle object can be increased, and thus paging occurs during the rendering of the primitives. Can be prevented, and the processing load and processing time can be reduced.

(14)また本発明に係る画像生成システム、プログラム及び情報記憶媒体は、
パーティクルオブジェクトの奥行き情報又は仮想カメラからの距離が大きくなった場合にパーティクルオブジェクトを構成するプリミティブの分割数を大きくすることを特徴とする。
(14) An image generation system, a program, and an information storage medium according to the present invention include
When the depth information of the particle object or the distance from the virtual camera is increased, the number of divisions of primitives constituting the particle object is increased.

(15)また本発明に係る画像生成システム、プログラム及び情報記憶媒体は、
パーティクルオブジェクトを構成するプリミティブの画面に占める描画面積の割合が大きくなった場合にはパーティクルを構成するプリミティブの分割数を大きくすることを特徴とする。
(15) An image generation system, a program, and an information storage medium according to the present invention include
When the ratio of the drawing area to the screen of the primitives constituting the particle object increases, the number of divisions of the primitives constituting the particles is increased.

(16)また本発明に係る画像生成システム、プログラム及び情報記憶媒体は、
パーティクルに割り当てたプリミティブを再分割することで分割数を大きくすることを特徴とする。
(16) An image generation system, a program, and an information storage medium according to the present invention include
The number of divisions is increased by subdividing the primitives assigned to the particles.

本実施形態の画像生成システム(ゲームシステム)のブロック図の一例を示す。An example of the block diagram of the image generation system (game system) of this embodiment is shown. 本実施の形態の画像生成装置により生成したゲーム画像の一例を表している。2 shows an example of a game image generated by the image generation apparatus of the present embodiment. 本実施の形態の画像生成装置で水しぶきの画像を生成する際の全体的な処理の流れについて説明するためのフローチャート図である。It is a flowchart figure for demonstrating the flow of the whole process at the time of producing | generating the image of a splash with the image production | generation apparatus of this Embodiment. 本実施の形態の画像生成装置で水しぶきの画像を生成する際の全体的な処理の流れについて説明するためのフローチャート図である。It is a flowchart figure for demonstrating the flow of the whole process at the time of producing | generating the image of a splash with the image production | generation apparatus of this Embodiment. 図5(A)(B)はパーティクルの発生地点単位で描画順序を判断する様子を説明するための図である。FIGS. 5A and 5B are diagrams for explaining how the drawing order is determined in units of particle generation points. 図6(A)(B)(C)はパーティクルの発生地点に基づく描画順序の決定処理について説明するための図である。FIGS. 6A, 6B, and 6C are diagrams for explaining the rendering order determination process based on the generation point of particles. 図7(A)(B)(C)はパーティクルの発生地点に基づく描画順序の決定処理について説明するための図である。FIGS. 7A, 7B, and 7C are diagrams for explaining the rendering order determination process based on the generation point of particles. 図8(A)(B)は、ソーティング区間を設定してソーティング処理の必要性を判断する例について説明するための図である。FIGS. 8A and 8B are diagrams for explaining an example in which a sorting interval is set to determine the necessity of sorting processing. 本実施の形態において半透明描画処理を行う際の描画順序決定処理の流れの一例について説明するためのフローチャート図である。It is a flowchart for demonstrating an example of the flow of the drawing order determination process at the time of performing a translucent drawing process in this Embodiment. 図10(A)(B)(C)はプリミティブ単位で描画順序を判断する場合について説明するための図である。10A, 10B, and 10C are diagrams for explaining a case where the drawing order is determined in units of primitives. 図11(A)(B)(C)はプリミティブ単位で描画順序を判断する場合について説明するための図である。FIGS. 11A, 11B, and 11C are diagrams for explaining a case where the drawing order is determined in units of primitives. 図12(A)(B)はプリミティブの集合として構成されたオブジェクトの単位で描画順序を判断する場合について説明するための図である。FIGS. 12A and 12B are diagrams for explaining the case where the drawing order is determined in units of objects configured as a set of primitives. 図13(A)(B)(C)はオブジェクトの描画順序の決定について説明するための図である。FIGS. 13A, 13B, and 13C are diagrams for explaining determination of the drawing order of objects. 図14(A)(B)(C)はオブジェクトの描画順序の決定について説明するための図である。14A, 14B, and 14C are diagrams for explaining determination of the drawing order of objects. 本実施の形態の半透明描画処理を行う際の描画順序決定処理の流れの他の例について説明するためのフローチャート図である。It is a flowchart for demonstrating the other example of the flow of the drawing order determination process at the time of performing the translucent drawing process of this Embodiment. 図16(A)(B)はパーティクルの水増しについて説明するための図である。FIGS. 16A and 16B are diagrams for explaining the padding of particles. 図17(A)(B)は子パーティクルの位置及びサイズの決定例について説明するための図である。FIGS. 17A and 17B are diagrams for explaining an example of determining the position and size of a child particle. 図18(A)(B)は、生成した子パーティクルにパーティクルオブジェクトを割りあてる例について説明するための図である。18A and 18B are diagrams for explaining an example in which a particle object is assigned to a generated child particle. 図19(A)(B)はパーティクルの時間的な連続性について説明するための図である。19A and 19B are diagrams for explaining the temporal continuity of particles. 図20はパーティクルの水増し処理の流れを説明するためのフローチャート図である。FIG. 20 is a flowchart for explaining the flow of the padding process of particles. 図21は本実施の形態における処理負荷を軽減するための処理の一例を説明するためのフローチャート図である。FIG. 21 is a flowchart for explaining an example of processing for reducing the processing load in the present embodiment. 図22(A)(B)は処理負荷が低い場合と処理負荷が高い場合の画像例である。22A and 22B are examples of images when the processing load is low and when the processing load is high. 奥行き情報を加味してパーティクル発生地点の数を制御する例について説明するためのフローチャート図である。It is a flowchart for demonstrating the example which controls the number of particle generation points in consideration of depth information. 図24(A)(B)は処理負荷が低い場合と処理負荷が高い場合のパーティクル数について説明するための模式的な図である。24A and 24B are schematic diagrams for explaining the number of particles when the processing load is low and when the processing load is high. 奥行き情報を加味してパーティクル発生地点から発生するパーティクル数を制御する例について説明するためのフローチャート図である。It is a flowchart for demonstrating the example which controls the number of particles which generate | occur | produce from a particle generation point in consideration of depth information. 奥行き情報を加味してパーティクル発生地点から発生させるパーティクルの調節を行う場合の処理の流れについて説明するためのフローチャート図である。It is a flowchart for demonstrating the flow of a process in the case of adjusting the particle generated from a particle generation point in consideration of depth information. 図27(A)はパーティクルに与えられた透明度が所定値以下になった場合にパーティクルの描画処理を省略する様子を模式的に表した図であり、図27(B)はパーティクルの高さが一定以下になった場合にパーティクルの描画処理を省略する様子を模式的に表した図である。FIG. 27A is a diagram schematically showing a state where the drawing process of the particles is omitted when the transparency given to the particles becomes a predetermined value or less, and FIG. It is the figure which represented typically a mode that the drawing process of a particle was abbreviate | omitted when it became below fixed. パーティクルに与えられた透明度やパーティクルの高さに基づきパーティクルの描画処理を省略する場合の処理の流れについて説明するためのフローチャート図である。FIG. 6 is a flowchart for explaining a flow of processing in a case where particle drawing processing is omitted based on transparency and particle height given to particles. FOG効果の処理削減について説明するための図である。It is a figure for demonstrating the process reduction of a FOG effect. 図30(A)(B)(C)は、本実施の形態で行うデプスキューング処理について説明するための図である。30A, 30B, and 30C are diagrams for explaining the depth queuing process performed in this embodiment. 本実施の形態のポリゴン分割の一例について説明するためのフローチャート図である。It is a flowchart for demonstrating an example of the polygon division | segmentation of this Embodiment. パーティクルオブジェクトを構成するスプライト(板ポリゴン)を分割する様子を表した図である。It is a figure showing a mode that the sprite (plate polygon) which comprises a particle object is divided | segmented. 本実施形態を実現できるハードウェアの構成の一例を示す図である。It is a figure which shows an example of the structure of the hardware which can implement | achieve this embodiment. 図34(A)、(B)、(C)は、本実施形態が適用される種々の形態のシステムの例を示す図である。FIGS. 34A, 34B, and 34C are diagrams illustrating examples of various types of systems to which the present embodiment is applied.

以下、本発明の好適な実施形態について図面を用いて説明する。   Hereinafter, preferred embodiments of the present invention will be described with reference to the drawings.

1.構成
図1に、本実施形態の画像生成システム(ゲームシステム)のブロック図の一例を示す。なお同図において本実施形態は、少なくとも処理部100を含めばよく(或いは処理部100と記憶部170、或いは処理部100と記憶部170と情報記憶媒体180を含めばよく)、それ以外のブロック(例えば操作部160、表示部190、音出力部192、携帯型情報記憶装置194、通信部196)については、任意の構成要素とすることができる。
1. Configuration FIG. 1 shows an example of a block diagram of an image generation system (game system) of the present embodiment. In this figure, the present embodiment may include at least the processing unit 100 (or may include the processing unit 100 and the storage unit 170, or the processing unit 100, the storage unit 170, and the information storage medium 180), and other blocks. (For example, the operation unit 160, the display unit 190, the sound output unit 192, the portable information storage device 194, and the communication unit 196) can be arbitrary constituent elements.

ここで処理部100は、システム全体の制御、システム内の各ブロックへの命令の指示、ゲーム処理、画像処理、又は音処理などの各種の処理を行うものであり、その機能は、各種プロセッサ(CPU、DSP等)、或いはASIC(ゲートアレイ等)などのハードウェアや、所与のプログラム(ゲームプログラム)により実現できる。   Here, the processing unit 100 performs various processing such as control of the entire system, instruction instruction to each block in the system, game processing, image processing, or sound processing, and functions thereof are various processors ( CPU, DSP, etc.) or hardware such as ASIC (gate array, etc.) or a given program (game program).

操作部160は、プレーヤが操作データを入力するためのものであり、その機能は、レバー、ボタン、筺体などのハードウェアにより実現できる。   The operation unit 160 is for a player to input operation data, and the function can be realized by hardware such as a lever, a button, and a housing.

記憶部170は、処理部100や通信部196などのワーク領域となるもので、その機能はRAMなどのハードウェアにより実現できる。   The storage unit 170 serves as a work area such as the processing unit 100 or the communication unit 196, and its function can be realized by hardware such as a RAM.

情報記憶媒体(コンピュータにより使用可能な記憶媒体)180は、プログラムやデータなどの情報を格納するものであり、その機能は、光ディスク(CD、DVD)、光磁気ディスク(MO)、磁気ディスク、ハードディスク、磁気テープ、或いはメモリ(ROM)などのハードウェアにより実現できる。処理部100は、この情報記憶媒体180に格納される情報に基づいて本発明(本実施形態)の種々の処理を行う。即ち情報記憶媒体180には、本発明(本実施形態)の手段(特に処理部100に含まれるブロック)を実行するための情報(プログラム或いはデータ)が格納される。   An information storage medium (storage medium usable by a computer) 180 stores information such as programs and data, and functions thereof are an optical disk (CD, DVD), a magneto-optical disk (MO), a magnetic disk, and a hard disk. It can be realized by hardware such as a magnetic tape or a memory (ROM). The processing unit 100 performs various processes of the present invention (this embodiment) based on information stored in the information storage medium 180. That is, the information storage medium 180 stores information (program or data) for executing the means of the present invention (this embodiment) (particularly, the blocks included in the processing unit 100).

なお、情報記憶媒体180に格納される情報の一部又は全部は、システムへの電源投入時等に記憶部170に転送されることになる。また情報記憶媒体180に記憶される情報は、本発明の処理を行うためのプログラムコード、画像データ、音データ、表示物の形状データ、テーブルデータ、リストデータ、本発明の処理を指示するための情報、その指示に従って処理を行うための情報等の少なくとも1つを含むものである。   Part or all of the information stored in the information storage medium 180 is transferred to the storage unit 170 when the system is powered on. Information stored in the information storage medium 180 includes program code, image data, sound data, display object shape data, table data, list data, and data for instructing the processing of the present invention. It includes at least one of information, information for performing processing according to the instruction, and the like.

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

音出力部192は、本実施形態により生成された音を出力するものであり、その機能は、スピーカなどのハードウェアにより実現できる。   The sound output unit 192 outputs the sound generated by the present embodiment, and its function can be realized by hardware such as a speaker.

携帯型情報記憶装置194は、プレーヤの個人データやセーブデータなどが記憶されるものであり、この携帯型情報記憶装置194としては、メモリカードや携帯型ゲーム装置などを考えることができる。   The portable information storage device 194 stores player personal data, save data, and the like. As the portable information storage device 194, a memory card, a portable game device, and the like can be considered.

通信部196は、外部(例えばホスト装置や他のゲームシステム)との間で通信を行うための各種の制御を行うものであり、その機能は、各種プロセッサ、或いは通信用ASICなどのハードウェアや、プログラムなどにより実現できる。   The communication unit 196 performs various controls for communicating with the outside (for example, a host device or other game system), and functions thereof are various processors, hardware such as a communication ASIC, It can be realized by a program.

なお本発明(本実施形態)の手段を実行するためのプログラム或いはデータは、ホスト装置(サーバー)が有する情報記憶媒体からネットワーク及び通信部196を介して情報記憶媒体180に配信するようにしてもよい。このようなホスト装置(サーバー)の情報記憶媒体の使用も本発明の範囲内に含まれる。   The program or data for executing the means of the present invention (this embodiment) may be distributed from the information storage medium of the host device (server) to the information storage medium 180 via the network and the communication unit 196. Good. Use of such an information storage medium of the host device (server) is also included in the scope of the present invention.

処理部100は、ゲーム処理部110、画像生成部120、音生成部150を含む。   The processing unit 100 includes a game processing unit 110, an image generation unit 120, and a sound generation unit 150.

ここでゲーム処理部110は、コイン(代価)の受け付け処理、各種モードの設定処理、ゲームの進行処理、選択画面の設定処理、ヒットチェック処理、ゲーム結果(成果、成績)を演算する処理、複数のプレーヤが共通のゲーム空間でプレイするための処理、或いはゲームオーバー処理などの種々のゲーム処理を、操作部160からの操作データや、携帯型情報記憶装置194からの個人データ、保存データや、ゲームプログラムなどに基づいて行う。   Here, the game processing unit 110 receives a coin (price) reception process, various mode setting processes, a game progress process, a selection screen setting process, a hit check process, a process for calculating a game result (results, results), and a plurality of processes. Various game processes such as a process for playing in a common game space or a game over process, operation data from the operation unit 160, personal data from the portable information storage device 194, stored data, Perform based on game programs.

画像生成部120は、ゲーム処理部110からの指示等にしたがって各種の画像処理を行い、例えばオブジェクト空間内で仮想カメラ(視点)から見える画像を生成して、表示部190に出力する処理を行う。   The image generation unit 120 performs various types of image processing in accordance with instructions from the game processing unit 110, for example, generates an image that can be viewed from a virtual camera (viewpoint) in the object space, and outputs the image to the display unit 190. .

例えば画像生成部120はオブジェクト(1又は複数のプリミティブ面)の位置や回転角度(X、Y又はZ軸回り回転角度)を求める処理、オブジェクトを動作させる処理(モーション処理)、視点の位置(仮想カメラの位置)や視線角度(仮想カメラの回転角度)を求める処理、マップオブジェクトなどのオブジェクトをオブジェクト空間へ配置する処理を行う。   For example, the image generation unit 120 obtains the position and rotation angle (rotation angle around the X, Y, or Z axis) of the object (one or a plurality of primitive surfaces), moves the object (motion processing), and positions the viewpoint (virtual). Processing for obtaining the camera position) and line-of-sight angle (rotation angle of the virtual camera) and processing for arranging an object such as a map object in the object space are performed.

また例えば画像生成部120は、ローカル座標系からワールド座標系への座標変換、ワールド座標系から視点座標系への座標変換、スクリーン座標系への透視変換、クリッピングなどの種々のジオメトリ処理(3次元演算)を行う。そして、ジオメトリ処理により得られた描画データ(2次元のプリミティブ面の定義点の位置座標、テクスチャ座標、色(輝度)データ、或いはα値等)は、記憶部170のメインメモリ172に格納されて、保存される。   Further, for example, the image generation unit 120 performs various geometric processes (three-dimensional) such as coordinate conversion from the local coordinate system to the world coordinate system, coordinate conversion from the world coordinate system to the viewpoint coordinate system, perspective conversion to the screen coordinate system, and clipping. (Operation). Then, drawing data (position coordinates, texture coordinates, color (luminance) data, or α value, etc. of definition points of a two-dimensional primitive surface) obtained by geometry processing is stored in the main memory 172 of the storage unit 170. Saved.

また例えば画像生成部120は、ジオメトリ処理により得られ、メインメモリ172に保存された描画データに基づいて、テクスチャマッピングや色(輝度)データの補間処理や陰面消去などを行いながら、オブジェクトのプリミティブ面をフレームバッファ174に描画する処理を行う。これによりオブジェクトが配置されるオブジェクト空間内の所与の視点(仮想カメラ)での画像が生成されるようになる。   In addition, for example, the image generation unit 120 performs the texture mapping, color (luminance) data interpolation processing, hidden surface removal, and the like based on the drawing data obtained by the geometry processing and stored in the main memory 172, and the primitive surface of the object. Is rendered in the frame buffer 174. As a result, an image at a given viewpoint (virtual camera) in the object space where the object is arranged is generated.

また例えば画像生成部120は、パーティクルを時間経過に伴い順次発生させたり、移動させたり、消滅させたりする処理を行う。より具体的には、パーティクル(仮想光源プリミティブ)の発生量、発生位置、移動状態(速度、加速度等)又は寿命をランダムに変化させる処理を行う。これにより、水しぶき等の不定形の表示物もリアルに表現できるようになる。   Further, for example, the image generation unit 120 performs a process of sequentially generating, moving, or annihilating particles with time. More specifically, a process of randomly changing the generation amount, generation position, movement state (speed, acceleration, etc.) or lifetime of particles (virtual light source primitive) is performed. As a result, it is possible to realistically represent an irregularly shaped display object such as a splash.

また画像生成部120は描画順序決定処理部130、パーティクル水増し処理部132、パーティクル負荷軽減処理部134の少なくともひとつを含む。   The image generation unit 120 includes at least one of a drawing order determination processing unit 130, a particle padding processing unit 132, and a particle load reduction processing unit 134.

描画順序決定処理部130は、所与の条件に基づき複数の半透明プリミティブの描画順序を決定するためのソーティング処理の必要性を判断する処理と、ソーティング処理が必要である判断された場合には複数の半透明プリミティブのソーティング処理を行い当該ソーティング処理の処理結果に基づき複数の半透明プリミティブの描画順序を決定し、ソーティング処理が必要ないと判断された場合には前回のソーティング処理結果に基づいて、半透明プリミティブの描画順序を決定する処理を行うようにしてもよい。   The drawing order determination processing unit 130 determines the necessity of a sorting process for determining the drawing order of a plurality of semi-transparent primitives based on a given condition, and if it is determined that the sorting process is necessary. Sorting a plurality of semi-transparent primitives, determining the drawing order of the plurality of semi-transparent primitives based on the processing result of the sorting process, and if it is determined that the sorting process is not necessary, based on the previous sorting process result A process for determining the drawing order of the semi-transparent primitives may be performed.

また描画順序決定処理部130は、所与の条件に基づき複数の半透明プリミティブ集合の描画順序を決定するためのソーティング処理の必要性を判断する処理と、ソーティング処理が必要であると判断された場合には複数の半透明プリミティブ集合の代表位置に基づき半透明プリミティブ集合単位でソーティング処理を行い当該ソーティング処理の処理結果に基づき複数の半透明プリミティブ集合の描画順序を決定し、ソーティング処理が必要ないと判断された場合には前回のソーティング処理結果に基づいて半透明プリミティブ集合の描画順序を決定する処理を行うようにしてもよい。   In addition, the drawing order determination processing unit 130 determines the necessity of the sorting process for determining the drawing order of the plurality of semi-transparent primitive sets based on a given condition and the sorting process is necessary. In this case, sorting processing is performed in units of semi-transparent primitive sets based on the representative positions of the plurality of semi-transparent primitive sets, and the drawing order of the plurality of semi-transparent primitive sets is determined based on the processing result of the sorting process, so that sorting processing is not necessary. If it is determined that the drawing order of the semi-transparent primitive set is determined based on the previous sorting process result, the process may be performed.

また描画順序決定処理部130は、所与の条件に基づき複数のパーティクル発生地点から発生したパーティクル集合によって表現するパーティクル集合オブジェクトの描画順序を決定するためのソーティング処理の必要性を判断する処理と、ソーティング処理が必要であると判断された場合には複数のパーティクル発生地点の奥行き情報に基づきパーティクル集合オブジェクトのソーティング処理を行い当該ソーティング処理の処理結果に基づきパーティクル集合オブジェクトの描画順位を決定し、ソーティング処理が必要ないと判断された場合には前回のソーティング処理の処理結果に基づきパーティクル集合オブジェクトの描画順位を決定する処理を行うようにしてもよい。   In addition, the drawing order determination processing unit 130 determines the necessity of the sorting process for determining the drawing order of the particle set object expressed by the particle set generated from a plurality of particle generation points based on a given condition, If it is determined that the sorting process is necessary, the sorting process of the particle aggregate object is performed based on the depth information of a plurality of particle generation points, and the drawing order of the particle aggregate object is determined based on the processing result of the sorting process. When it is determined that the processing is not necessary, a process of determining the drawing order of the particle aggregate object based on the processing result of the previous sorting process may be performed.

また描画順序決定処理部130は、仮想カメラの位置及び回転の少なくとも一方に基づき前記所定の条件を満たすか否かを判断することを特徴とする画像生成システム。   Further, the drawing order determination processing unit 130 determines whether or not the predetermined condition is satisfied based on at least one of the position and rotation of the virtual camera.

また描画順序決定処理部130は、キャラクタオブジェクトの位置及び回転の少なくとも一方に基づき前記所定の条件を満たすか否かを判断するようにしてもよい。   The drawing order determination processing unit 130 may determine whether or not the predetermined condition is satisfied based on at least one of the position and rotation of the character object.

また描画順序決定処理部130は、あらかじめソーティング処理が必要なエリアを設定しておき、仮想カメラ及びキャラクタオブジェクトの少なくとも一方が前記ソーティングが必要なエリアにいるか否かに基づきいて前記所定の条件を満たすかいなかを判断するようにしてもよい。   The drawing order determination processing unit 130 sets an area that requires sorting processing in advance, and satisfies the predetermined condition based on whether or not at least one of the virtual camera and the character object is in the area that requires sorting. You may make it judge whether it is too big.

なお前記ソーティング処理が必要なエリアは、当該エリア内を仮想カメラ及びキャラクタオブジェクトの少なくとも一方が移動すると前記複数の半透明プリミティブ又半透明プリミティブ集合又はパーティクルの発生地点の仮想カメラに対する前後関係が変化する可能性があるエリアにすることが好ましい。   In the area that requires the sorting process, when at least one of the virtual camera and the character object moves in the area, the context of the plurality of semi-transparent primitives, the semi-transparent primitive set, or the generation point of the particles changes with respect to the virtual camera. It is preferable to make it a possible area.

また前記ソーティング処理が必要なエリアは、当該エリア内に仮想カメラ及びキャラクタオブジェクトの少なくとも一方がある場合には半透明プリミティブ又半透明プリミティブ集合又はパーティクルの発生地点から発生するパーティクルによって表現するオブジェクトが表示されない状態が発生するエリアにしてもよい。   In addition, the area that needs to be sorted is displayed as a semi-transparent primitive, a semi-transparent primitive set, or an object represented by particles generated from a particle generation point when at least one of a virtual camera and a character object exists in the area. You may make it the area where the state which is not performed occurs.

また描画順序決定処理部130は、複数の半透明プリミティブ集合の代表点の奥行き情報に基づきソーティングし、半透明プリミティブ集合単位に描画順位を決定するようにしてもよい。   In addition, the drawing order determination processing unit 130 may perform sorting based on the depth information of the representative points of a plurality of semi-transparent primitive sets, and determine the drawing order for each semi-transparent primitive set.

また描画順序決定処理部130は、所与の発生地点から発生したパーティクル集合によって表現する複数のパーティクル集合オブジェクトを発生地点の奥行き情報に基づきソーティング処理を行いパーティクル集合オブジェクトの描画順位を決定する処理を行うようにしてもよい。   The drawing order determination processing unit 130 performs a process of sorting a plurality of particle aggregate objects expressed by a particle aggregate generated from a given generation point based on the depth information of the generation point and determining a drawing order of the particle aggregate object. You may make it perform.

パーティクル水増し処理部132は、3次元空間に与えられたパーティクルを親パーティクルとし、親パーティクルの位置座標に基づき発生させる水増し点の座標を演算する処理と、前記水増し点に子パーティクルを生成する処理を行うようにしてもよい。   The particle padding processing unit 132 uses a particle given to the three-dimensional space as a parent particle, calculates a padding point coordinate generated based on the position coordinates of the parent particle, and generates a child particle at the padding point. You may make it perform.

またパーティクル水増し処理部132は、3次元空間に与えられたパーティクルを親パーティクルとし、スクリーン平面へ透視変換された親パーティクルの位置座標に基づきスクリーン平面に発生させる水増し点の座標を演算する処理と、前記スクリーン平面の水増し点に子パーティクルを生成する処理を行うようにしてもよい。   Further, the particle padding processing unit 132 calculates the coordinates of the padding point generated on the screen plane based on the position coordinates of the parent particle that is perspective-transformed to the screen plane, with the particle given to the three-dimensional space as the parent particle, You may make it perform the process which produces | generates a child particle in the padding point of the said screen plane.

なお水増しして生成される子パーティクルは、親パーティクルの特性情報を引き継ぐようにしてもよい。   The child particles generated by adding water may take over the characteristic information of the parent particles.

またパーティクル水増し処理部132は、親パーティクルの奥行き情報を加味して生成する水増し点の位置を決定するようにしてもよい。   The particle padding processing unit 132 may determine the position of the padding point to be generated in consideration of the depth information of the parent particle.

またパーティクル水増し処理部132は、時間又はフレームの進行を表す情報を加味して生成する水増し点の位置を決定するようにしてもよい。   In addition, the particle padding processing unit 132 may determine the position of the padding point to be generated in consideration of information indicating the progress of time or frame.

またパーティクル水増し処理部132は、時間又はフレームの進行を表す情報を加味して水増しして生成する子パーティクルの数を制御するようにしてもよい。   In addition, the particle padding processing unit 132 may control the number of child particles generated by padding in consideration of information indicating the progress of time or frame.

またパーティクル水増し処理部132は、親パーティクルの奥行き情報に基づいて子パーティクルに割り当てるオブジェクトの大きさを決定するようにしてもよい。   Further, the particle padding processing unit 132 may determine the size of the object to be assigned to the child particle based on the depth information of the parent particle.

またパーティクル水増し処理部132は、時間又はフレームの経過に従って子パーティクルに割り当てるオブジェクトのサイズを変化させるようにしてもよい。   In addition, the particle padding processing unit 132 may change the size of the object assigned to the child particles as time elapses or frames.

またパーティクル水増し処理部132は、所与の親パーティクルに対してn+1フレーム目に生成する所与子パーティクルは、同一の親パーティクルに対してnフレーム目に生成した所与の子パーティクルと連続性を有する位置に生成する処理を行うようにしてもよい。   In addition, the particle padding processing unit 132 determines that the given child particle generated in the (n + 1) th frame for the given parent particle has continuity with the given child particle generated in the nth frame for the same parent particle. You may make it perform the process produced | generated in the position which has.

またパーティクル水増し処理部132は、nフレーム目の所与の親パーティクルの位置情報(xn、yn)に対して関数fx1、fy1を適用して得られた位置情報(xn’、yn’)に基づきnフレーム目の所与の子パーティクルの位置を決定した場合、n+1フレーム目の同一の親パーティクルの位置情報(xn+1、yn+1)に対して関数fx1、fy1を適用して得られた位置情報(xn+1’、yn+1’)に基づきn+1フレーム目の所与の子パーティクルの位置を決定するようにしてもよい。 The particle padding processing unit 132 also applies position information (x n ′, f y1 ) obtained by applying the functions f x1 and f y1 to the position information (x n , y n ) of a given parent particle in the nth frame. When the position of a given child particle in the n frame is determined based on y n ′), the function f x1 is applied to the position information (x n + 1 , y n + 1 ) of the same parent particle in the n + 1 frame. , F y1 may be used to determine the position of a given child particle in the ( n + 1 ) th frame based on position information (x n + 1 ′, y n + 1 ′) obtained by applying f y1 .

またパーティクル水増し処理部132は、所与の親パーティクルに対して第1の子パーティクルと第2の子パーティクルを含む複数の子パーティクルを発生させる場合には、第1の子パーティクルと第2の子パーティクルの生成位置は異なる関数を適用して得られた位置情報に基づき決定するようにしてもよい。   Further, the particle padding processing unit 132 generates the first child particle and the second child when generating a plurality of child particles including the first child particle and the second child particle for the given parent particle. The generation position of the particles may be determined based on position information obtained by applying different functions.

またパーティクル水増し処理部132は、親パーティクルの奥行き情報又はパーティクル発生地点の奥行き情報に応じて水増しして生成する子パーティクルの数を制御するようにしてもよい。   The particle padding processing unit 132 may control the number of child particles generated by padding in accordance with the depth information of the parent particle or the depth information of the particle generation point.

またパーティクル水増し処理部132は、画像生成時の処理負荷に関する情報に基づき、水増しして生成する子パーティクルの数を制御するようにしてもよい。   Further, the particle padding processing unit 132 may control the number of child particles generated by padding based on the information regarding the processing load at the time of image generation.

パーティクル負荷軽減処理部134は、画像生成時の処理負荷に関する情報に基づき、パーティクル発生地点の数、パーティクル数及びパーティクルの寿命の少なくともひとつを変更する処理を行うようにしてもよい。   The particle load reduction processing unit 134 may perform a process of changing at least one of the number of particle generation points, the number of particles, and the lifetime of particles based on information regarding the processing load at the time of image generation.

なお前記パーティクル数は、一画面に存在するパーティクル数でもよいし所与の発生地点から発生させるパーティクル数でもよい。   The number of particles may be the number of particles existing on one screen or the number of particles generated from a given generation point.

またパーティクル負荷軽減処理部134は、パーティクルの奥行き情報に基づき仮想カメラから離れたパーティクルから優先して寿命を短くすることにより、処理負荷を軽減するようにしてもよい。   Further, the particle load reduction processing unit 134 may reduce the processing load by shortening the lifetime in preference to particles away from the virtual camera based on the depth information of the particles.

またパーティクル負荷軽減処理部134は、パーティクルの発生地点の奥行き情報に基づき仮想カメラから離れたパーティクル発生地点から発生するパーティクル集合から優先して画像生成の対象外とすることにより、処理負荷を軽減するようにしてもよい。   Further, the particle load reduction processing unit 134 reduces the processing load by excluding the image generation target from the particle set generated from the particle generation point away from the virtual camera based on the depth information of the particle generation point. You may do it.

パーティクル負荷軽減処理部134は、パーティクルの発生地点の奥行き情報に基づき仮想カメラから離れたパーティクル発生地点から優先して発生させるパーティクルの数を削減することにより、処理負荷を軽減するようにしてもよい。   The particle load reduction processing unit 134 may reduce the processing load by reducing the number of particles to be generated with priority from the particle generation point away from the virtual camera based on the depth information of the particle generation point. .

またパーティクル負荷軽減処理部134は、パーティクルの奥行き情報に基づき仮想カメラから離れたパーティクルに割り当てるオブジェクトから優先してオブジェクトの精密度を下げることにより、処理負荷を軽減するようにしてもよい。   Further, the particle load reduction processing unit 134 may reduce the processing load by lowering the precision of an object in preference to an object assigned to a particle far from the virtual camera based on the depth information of the particle.

またパーティクル負荷軽減処理部134は、パーティクル発生地点の奥行き情報に基づき仮想カメラから離れたパーティクル発生地点から発生したパーティクルに割り当てるオブジェクトから優先してオブジェクトの精密度を下げることにより、処理負荷を軽減するようにしてもよい。   Further, the particle load reduction processing unit 134 reduces the processing load by lowering the precision of the object in preference to the object assigned to the particle generated from the particle generation point away from the virtual camera based on the depth information of the particle generation point. You may do it.

パーティクル負荷軽減処理部134は、パーティクル又はパーティクルに割り当てたオブジェクトに与えられた透明度が所定値より小さくなった場合には、当該パーティクル又はパーティクルに割り当てたオブジェクトを画像生成の対象から除外する処理を行うようにしてもよい。   When the transparency given to a particle or an object assigned to the particle becomes smaller than a predetermined value, the particle load reduction processing unit 134 performs processing to exclude the particle or the object assigned to the particle from the target of image generation. You may do it.

またパーティクル負荷軽減処理部134は、パーティクルの高さが所定の値になったらパーティクル又はパーティクルに割り当てたオブジェクトの消滅処理を行うようにしてもよい。   Further, the particle load reduction processing unit 134 may perform the annihilation process of the particle or the object assigned to the particle when the height of the particle reaches a predetermined value.

なお前記消滅処理には、所定時間経過後にパーティクル又はパーティクルに割り当てたオブジェクトが消滅する場合も含むようにすることが好ましい。   The annihilation process preferably includes a case where a particle or an object assigned to the particle annihilates after a predetermined time has elapsed.

またパーティクル負荷軽減処理部134は、パーティクルの奥行き情報に基づきその前に視界をさえぎるオブジェクトがあるか否か判断し、視界をさえぎるオブジェクトがある場合には当該パーティクル又はパーティクルに割り当てたオブジェクトを画像生成の対象から除外する処理を行うようにしてもよい。   Further, the particle load reduction processing unit 134 determines whether there is an object that blocks the field of vision based on the depth information of the particle, and when there is an object that blocks the field of view, generates an image of the particle or an object assigned to the particle. You may make it perform the process excluded from.

またパーティクル負荷軽減処理部134は、同一のパーティクル発生地点から発生したパーティクル集合によって表現するパーティクル集合オブジェクトに対して設定された基準色に対してパーティクル発生地点の奥行き情報に基づきデプスキューング処理を行い、前記デプスキューング処理で得られた色をパーティクル集合オブジェクトのベースカラーとし、同一のパーティクル発生地点から発生したパーティクル集合に属する各パーティクルに対して前記ベースカラーを用いてデプスキューング効果を適用するようにしてもよい。   The particle load reduction processing unit 134 performs depth cueing processing based on the depth information of the particle generation point with respect to the reference color set for the particle set object represented by the particle set generated from the same particle generation point. The color obtained by the depth cueing process is used as the base color of the particle set object, and the depth cueing effect is applied to each particle belonging to the particle set generated from the same particle generation point using the base color. You may do it.

またパーティクル負荷軽減処理部134は、パーティクルオブジェクトの奥行き情報、仮想カメラに対する位置関係及びパーティクルオブジェクトを構成するプリミティブの画面に占める描画面積の割合の少なくともひとつに基づきパーティクルオブジェクトを構成するプリミティブの分割数を制御する処理を行うようにしてもよい。   Further, the particle load reduction processing unit 134 determines the number of divisions of the primitives constituting the particle object based on at least one of the depth information of the particle object, the positional relationship with the virtual camera, and the ratio of the drawing area in the screen of the primitive constituting the particle object. You may make it perform the process to control.

またパーティクル負荷軽減処理部134は、パーティクルオブジェクトの奥行き情報又は仮想カメラからの距離が大きくなった場合にパーティクルオブジェクトを構成するプリミティブの分割数を大きくするようにしてもよい。   In addition, the particle load reduction processing unit 134 may increase the number of divisions of primitives constituting the particle object when the depth information of the particle object or the distance from the virtual camera increases.

またパーティクル負荷軽減処理部134は、パーティクルオブジェクトを構成するプリミティブの画面に占める描画面積の割合が大きくなった場合にはパーティクルを構成するプリミティブの分割数を大きくするようにしてもよい。   Further, the particle load reduction processing unit 134 may increase the number of divisions of the primitives constituting the particles when the ratio of the drawing area to the screen of the primitives constituting the particle object increases.

またパーティクル負荷軽減処理部134は、パーティクルに割り当てたプリミティブを再分割することで分割数を大きくするようにしてもよい。   The particle load reduction processing unit 134 may increase the number of divisions by re-dividing the primitives assigned to the particles.

音生成部150は、ゲーム処理部110からの指示等にしたがって各種の音処理を行い、BGM、効果音、又は音声などの音を生成し、音出力部192に出力する。   The sound generation unit 150 performs various types of sound processing in accordance with instructions from the game processing unit 110, generates a sound such as BGM, sound effect, or sound, and outputs the sound to the sound output unit 192.

なお、ゲーム処理部110、画像生成部120、音生成部150の機能は、その全てをハードウェアにより実現してもよいし、その全てをプログラムにより実現してもよい。或いは、ハードウェアとプログラムの両方により実現してもよい。   Note that all the functions of the game processing unit 110, the image generation unit 120, and the sound generation unit 150 may be realized by hardware, or all of them may be realized by a program. Alternatively, it may be realized by both hardware and a program.

なお、本実施形態のゲームシステムは、1人のプレーヤのみがプレイできるシングルプレーヤモード専用のシステムにしてもよいし、このようなシングルプレーヤモードのみならず、複数のプレーヤがプレイできるマルチプレーヤモードも備えるシステムにしてもよい。   Note that the game system according to the present embodiment may be a system dedicated to the single player mode in which only one player can play, and not only such a single player mode but also a multiplayer mode in which a plurality of players can play. A system may be provided.

また複数のプレーヤがプレイする場合に、これらの複数のプレーヤに提供するゲーム画像やゲーム音を、1つの端末を用いて生成してもよいし、ネットワーク(伝送ライン、通信回線)などで接続された複数の端末を用いて生成してもよい。   Further, when a plurality of players play, game images and game sounds to be provided to the plurality of players may be generated using one terminal, or connected via a network (transmission line, communication line) or the like. Alternatively, it may be generated using a plurality of terminals.

2.本実施形態の特徴
図2は本実施の形態の画像生成装置により生成したゲーム画像の一例を表している。本実施の形態ではパーティクルシステムを用いて同図に示すような水しぶきの画像を生成している。
2. Features of this Embodiment FIG. 2 shows an example of a game image generated by the image generation apparatus of this embodiment. In the present embodiment, a spray image as shown in the figure is generated using a particle system.

以下本実施の形態の画像生成装置でパーティクルシステムを用いて水しぶきの画像を生成する場合を例にとり、本発明の各特長について説明する。   Hereinafter, each feature of the present invention will be described with reference to an example in which the image generation apparatus of the present embodiment generates a splash image using a particle system.

(1)処理の流れ
図3、図4は本実施の形態の画像生成装置で水しぶきの画像を生成する際の全体的な処理の流れについて説明するためのフローチャート図である。
(1) Process Flow FIGS. 3 and 4 are flowcharts for explaining the overall process flow when a splash image is generated by the image generation apparatus of the present embodiment.

図3及び図4の処理は画像生成部(図1の130)が行う処理である。ここにおいて画像生成部は例えばCPUと描画ユニット(画像生成用の専用チップ)で構成されているものとする。   3 and 4 are processes performed by the image generation unit (130 in FIG. 1). Here, it is assumed that the image generation unit includes, for example, a CPU and a drawing unit (dedicated chip for image generation).

図3のステップS10〜S30は主にCPUがパーティクルの発生地点単位で行う処理である。   Steps S10 to S30 in FIG. 3 are processes performed mainly by the CPU in units of particle generation points.

まず複数の水しぶきの発生地点の奥行き情報に基づき、発生地点単位で描画順序を決定するための処理を行う(ステップS10)。本実施の形態では水しぶきを構成するパーティクルに半透明オブジェクトを割り当てるため、正確に描画するためには仮想カメラから遠くにある発生地点のものから先にフレームバッファに半透明描画する必要がある。このため本実施の形態では発生地点単位で描画順序を決定するための処理を行う。   First, a process for determining the drawing order for each occurrence point is performed based on the depth information of the occurrence points of the plurality of splashes (step S10). In this embodiment, since a semi-transparent object is assigned to the particles constituting the splash, it is necessary to draw semi-transparent in the frame buffer first from the generation point far from the virtual camera in order to draw accurately. For this reason, in the present embodiment, processing for determining the drawing order for each occurrence point is performed.

ここにおいて本実施の形態では、各フレーム毎に無条件に複数の発生地点のソーティング処理を行うのではなく、各フレームのキャラクタオブジェクト(仮想カメラ)の位置に基づきソーティング処理の必要性を判断し、必要ない場合にはソーティング処理を省略することにより処理の高速化を図っている。(詳細については(2)描画順序決定処理を参照)。   In this embodiment, instead of unconditionally sorting a plurality of occurrence points for each frame, the necessity of the sorting process is determined based on the position of the character object (virtual camera) of each frame, When it is not necessary, the processing speed is increased by omitting the sorting process. (For details, see (2) Drawing Order Determination Processing).

次に各種パラメータの設定処理を行う(ステップS20)。   Next, various parameter setting processing is performed (step S20).

例えば、発生地点単位で各パーティクル集合オブジェクトのベースカラーを決定する処理(詳細については(5)FOG効果の処理削減を参照)や、各発生地点から発生させるパーティクル数を決定する処理や各パーティクルの特性(とくに透明度や寿命に関する情報)を決定する処理(詳細については(4)処理負荷を軽減するための処理を参照)を行う。   For example, the process of determining the base color of each particle aggregate object for each generation point (see (5) FOG effect processing reduction for details), the process of determining the number of particles generated from each generation point, Processing for determining characteristics (particularly information on transparency and lifetime) (for details, see (4) Processing for reducing processing load) is performed.

そして決定された描画順序に基づき奥のパーティクル発生地点のデータから描画ユニットに転送する(ステップ30)。   Then, based on the determined drawing order, the data of the back particle generation point is transferred to the drawing unit (step 30).

図4のステップS40〜S90は主にベクトルユニットがパーティクル単位に行う処理である。   Steps S40 to S90 in FIG. 4 are processes mainly performed by the vector unit for each particle.

まずフレーム番号に基づきパーティクルの透明度を減少させる。そして透明度が負になった場合には処理を打ち切る。またフレーム番号に基づきパーティクルに割り当てるスプライト(一枚ポリゴン)のサイズを拡大させる(ステップS40)。   First, the transparency of the particles is reduced based on the frame number. If the transparency becomes negative, the process is terminated. Further, the size of the sprite (single polygon) assigned to the particles is enlarged based on the frame number (step S40).

次にフレーム番号に基づき3次元空間を所与の規則に従って移動するパーティクルの移動地点の位置座標を演算する(ステップS50)。   Next, based on the frame number, the position coordinates of the moving point of the particle moving in the three-dimensional space according to a given rule are calculated (step S50).

次に移動後のパーティクル(これを親パーティクルとする)の位置座標について透視変換を行いスクリーン平面に配置する(ステップS60)。   Next, perspective transformation is performed on the position coordinates of the moved particles (this is used as a parent particle) and arranged on the screen plane (step S60).

次に透視変換後の親パーティクルの周囲に子パーティクルを水増生成する処理をおこなう(ステップS70)。   Next, a process of generating child particles around the parent particles after the perspective transformation is performed (step S70).

次に水増しされた子パーティクルにスプライト(一枚ポリゴン)を割り当てる。このとき発生地点と仮想カメラからの距離に応じてポリゴン分割を行う(ステップS80)。   Next, a sprite (one polygon) is assigned to the inflated child particle. At this time, polygon division is performed according to the distance from the generation point and the virtual camera (step S80).

次に求まったスプライトポリゴンに、色とテクスチャコーディネイト座標を付加してパケットを生成し、描画する(ステップS90)。   Next, a color and texture coordinate coordinates are added to the obtained sprite polygon to generate a packet and draw it (step S90).

(2)描画順序決定処理
まず本実施の形態において水しぶきの画像を生成する際に行う描画順序の決定処理について説明する。
(2) Drawing Order Determination Process First, a drawing order determination process that is performed when a splash image is generated in the present embodiment will be described.

一般に半透明描画処理を行う際の描画順序は例えばポリゴンオブジェクトの場合にはポリゴン単位というようにプリミティブ単位に決定するが、本実施の形態では、パーティクルの発生地点ごとに描画順序を決定している。   In general, the rendering order when performing translucent rendering processing is determined in units of primitives, for example, in the case of polygon objects, in units of polygons. In this embodiment, the rendering order is determined for each particle generation point. .

図5(A)(B)はパーティクルの発生地点単位で描画順序を判断する様子を説明するための図である。   FIGS. 5A and 5B are diagrams for explaining how the drawing order is determined in units of particle generation points.

図5(A)は仮想カメラと発生地点H1〜H4の位置関係を表している。M1〜M4は発生地点H1〜H4から発生したパーティクルによって表現される水しぶき(パーティクル集合オブジェクト)を模式的に示したものである。   FIG. 5A shows the positional relationship between the virtual camera and the generation points H1 to H4. M1 to M4 schematically show splashes (particle aggregate objects) expressed by particles generated from the generation points H1 to H4.

本実施の形態ではパーティクルの発生地点単位で半透明描画に必要なソーティング処理を行う。例えば図5(A)の場合には仮想カメラ210から見た場合の発生地点H1〜H4の前後関係は、奥から順にH4、H3、H2、H1となる(図5(B)参照)。従って各水しぶきM1〜M4をαブレンディング処理を行ってフレームバッファ220に半透明描画する際には、M4、M3、M2、M1の順で発生地点の奥行き情報に基づき水しぶき単位で奥から先に描画する。   In this embodiment, sorting processing necessary for translucent drawing is performed in units of particle generation points. For example, in the case of FIG. 5A, the front-rear relationship of the generation points H1 to H4 when viewed from the virtual camera 210 is H4, H3, H2, and H1 in order from the back (see FIG. 5B). Therefore, when each of the splashes M1 to M4 is subjected to the α blending process and rendered translucently in the frame buffer 220, the spray is performed in the order of the spray in the order of M4, M3, M2, and M1 in the order of the depth based on the depth information of the occurrence point. To do.

例えば発生地点H3から発生するパーティクルに割り当てられたオブジェクトOP3は、発生地点H4から発生するパーティクルに割り当てられたオブジェクトOP4の後に描画される。   For example, the object OP3 assigned to the particles generated from the generation point H3 is drawn after the object OP4 allocated to the particles generated from the generation point H4.

このように本実施の形態では複数のパーティクル発生地点をその奥行き情報に基づきソーティングし、発生地点単位に描画順位を決定する。そして決定された描画順位に従い複数のパーティクル発生地点から発生したパーティクルに割り当てられた半透明プリミティブの半透明描画処理を行う。   As described above, in this embodiment, a plurality of particle generation points are sorted based on the depth information, and the drawing order is determined for each generation point. Then, according to the determined drawing order, the semi-transparent drawing process of the semi-transparent primitive assigned to the particles generated from the plurality of particle generation points is performed.

これにより描画順位の高い(より奥に位置する)発生地点から発生したパーティクルに割り当てられた半透明プリミティブは描画順位の低い(より手前に位置する)発生地点から発生したパーティクルに割り当てられた半透明プリミティブより先に半透明描画処理を行うことができる。   As a result, translucent primitives assigned to particles generated from an occurrence point with a higher drawing order (located deeper) are translucent assigned to particles generated from an occurrence point with a lower drawing order (positioned closer) A translucent drawing process can be performed prior to the primitive.

このようにすると各パーティクル単位にソーティングを行い描画順序を決定する場合に比べ、大幅に処理負荷を軽減することができる。   In this way, the processing load can be greatly reduced as compared with the case where the drawing order is determined by sorting for each particle.

図6(A)(B)(C)及び図7(A)(B)(C)はパーティクルの発生地点に基づく描画順序の決定処理について説明するための図である。   FIGS. 6A, 6B, 7C, and 7A, 7B, and 7C are diagrams for explaining the drawing order determination process based on the generation point of particles.

図6(A)及び図7(A)は仮想カメラの移動前後における仮想カメラとパーティクルの発生地点との位置関係を表している。M1〜M4は発生地点H1〜H4から発生したパーティクルによって表現される水しぶき(パーティクル集合オブジェクト)を模式的に示したものである。210−1は移動前の仮想カメラであり、210−2は移動後の仮想カメラである。   6A and 7A show the positional relationship between the virtual camera and the generation point of the particles before and after the movement of the virtual camera. M1 to M4 schematically show splashes (particle aggregate objects) expressed by particles generated from the generation points H1 to H4. 210-1 is a virtual camera before movement, and 210-2 is a virtual camera after movement.

例えば図6(A)の場合には仮想カメラ210−1から見た場合のパーティクルの発生地点H1〜H4の前後関係は、奥から順にH4、H3、H2、H1となる(図6(B)参照)。   For example, in the case of FIG. 6A, the front-rear relationship of the particle generation points H1 to H4 when viewed from the virtual camera 210-1 is H4, H3, H2, and H1 in order from the back (FIG. 6B). reference).

また仮想カメラ210−2から見た場合の半透明ポリゴンH1〜H4の前後関係は、奥から順にH3、H1、H2、H4となる(図6(C)参照)。   Further, the front-rear relations of the translucent polygons H1 to H4 when viewed from the virtual camera 210-2 are H3, H1, H2, and H4 in order from the back (see FIG. 6C).

このように発生地点と仮想カメラの位置関係の変化により仮想カメラに対する発生地点の奥行き関係が変位する場合にはソーティング処理が必要となる。   As described above, when the depth relationship between the generation point and the virtual camera is displaced due to the change in the positional relationship between the generation point and the virtual camera, a sorting process is required.

ところが例えば図7(A)の場合には仮想カメラ210’−1から見た場合のパーティクルの発生地点H1〜H4の前後関係は、奥から順にH4、H3、H2、H1となり(図7(B)参照)、仮想カメラ210’−2から見た場合のパーティクルの発生地点H1〜H4の前後関係も、奥から順にH4、H3、H2、H1となる(図7(C)参照)。従って仮想カメラが図7(A)のように動くような場合には、仮想カメラ210’−2から見た画像を描画する場合には、改めてソーティング処理を行わなくても仮想カメラ210’−1から見た画像を描画する場合に行ったソーティング結果を用いることができる。   However, in the case of FIG. 7A, for example, the front-rear relationship of the particle generation points H1 to H4 when viewed from the virtual camera 210′-1 is H4, H3, H2, and H1 in order from the back (FIG. 7B )), The front-rear relationship of the particle generation points H1 to H4 when viewed from the virtual camera 210′-2 is also H4, H3, H2, and H1 in order from the back (see FIG. 7C). Therefore, when the virtual camera moves as shown in FIG. 7A, when drawing an image viewed from the virtual camera 210′-2, the virtual camera 210′-1 does not need to be sorted again. The result of sorting performed when drawing an image viewed from the above can be used.

従って本実施の形態では、所与の条件に基づき複数のパーティクル発生地点から発生したパーティクル集合によって表現するパーティクル集合オブジェクトの描画順序を決定するためのソーティング処理の必要性を判断し、ソーティング処理が必要であると判断された場合には複数のパーティクル発生地点の奥行き情報に基づきパーティクル集合オブジェクトのソーティング処理を行い当該ソーティング処理の処理結果に基づきパーティクル集合オブジェクトの描画順位を決定し、ソーティング処理が必要ないと判断された場合には前回のソーティング処理の処理結果に基づきパーティクル集合オブジェクトの描画順位を決定する処理を行う。   Therefore, in the present embodiment, the necessity of the sorting process for determining the drawing order of the particle aggregate object expressed by the particle aggregate generated from a plurality of particle generation points based on a given condition is necessary, and the sorting process is necessary. If it is determined, the sorting process of the particle aggregate object is performed based on the depth information of the plurality of particle generation points, the drawing order of the particle aggregate object is determined based on the processing result of the sorting process, and the sorting process is not necessary. When it is determined that the drawing order of the particle aggregate object is determined based on the processing result of the previous sorting process.

図8(A)(B)は、ソーティング区間を設定してソーティング処理の必要性を判断する例について説明するための図である。   FIGS. 8A and 8B are diagrams for explaining an example in which a sorting interval is set to determine the necessity of sorting processing.

図8(A)の230はプレーヤキャラクタであり、240はプレーヤキャラクタの移動ルートとなるゲーム空間に設けられた道である。プレーヤキャラクタ230は、予め決められた移動ルート240(ゲーム空間に設けられた道)上を進行し、仮想カメラは前記プレーヤキャラクタ230に追従するように構成されている。   In FIG. 8A, reference numeral 230 denotes a player character, and reference numeral 240 denotes a road provided in the game space as a moving route of the player character. The player character 230 travels on a predetermined moving route 240 (a road provided in the game space), and the virtual camera is configured to follow the player character 230.

H1〜H4は水しぶきの発生地点であり、M1〜M4は発生地点H1〜H4から発生したパーティクルによって表現される水しぶき(パーティクル集合オブジェクト)の範囲を模式的に示したものである。   H1 to H4 are points where splashing occurs, and M1 to M4 schematically show the range of the splashing (particle aggregate object) expressed by the particles generated from the generating points H1 to H4.

また250−1は前記移動ルート上に設けられたソーティング区間である。図8(A)に示すように道が大きくカーブしている区間がソーティング区間250−1として設定されている。かかる区間を移動する仮想カメラから水しぶきM1〜M4を見る場合には、図6(A)〜(C)で説明したように仮想カメラに対する水しぶきの奥行き関係が変化する可能性があるからである。   Reference numeral 250-1 denotes a sorting section provided on the moving route. As shown in FIG. 8A, a section where the road is largely curved is set as a sorting section 250-1. This is because, when the splashes M1 to M4 are viewed from the virtual camera moving in such a section, the depth relationship of the splashes with respect to the virtual camera may change as described with reference to FIGS.

このように本実施の形態では、仮想カメラが移動すると水しぶき(パーティクル集合オブジェクト)の発生地点の仮想カメラに対する前後関係が変化する可能性があるエリアをソーティング区間として指定しておく。   As described above, in this embodiment, when the virtual camera moves, an area where the front-to-back relationship with respect to the virtual camera at the occurrence point of the splash (particle aggregate object) may be specified as the sorting section.

そして各フレームにおいてプレーヤキャラクタ230の位置が前記ソーティング区間内にある場合にはソーティング処理の必要性ありと判断し、プレーヤキャラクタ230の位置が前記ソーティング区間内にない場合には水しぶきの発生地点のソーティング処理の必要性なしと判断する。   Then, if the position of the player character 230 is within the sorting section in each frame, it is determined that the sorting process is necessary. If the position of the player character 230 is not within the sorting section, the spraying point is sorted. Judged that there is no need for processing.

例えばソーティング区間250−1はスタート地点からの道のりで指定することができる。また予め決められた移動ルート240(ゲーム空間に設けられた道)上を進行するプレーヤキャラクタもスタート地点から道のり値を現在位置として有している。従って例えばソーティング区間250−1として(2000〜2050)が設定されている場合には、プレーヤキャラクタの現在位置の道のり値xが2000<x<2050である場合にはソーティング処理の必要性ありと判断される。   For example, the sorting section 250-1 can be specified by a route from the start point. A player character traveling on a predetermined moving route 240 (a road provided in the game space) also has a road value as a current position from the start point. Therefore, for example, when (2000 to 2050) is set as the sorting section 250-1, if the path value x of the current position of the player character is 2000 <x <2050, it is determined that the sorting process is necessary. Is done.

このようにすることでプレーヤキャラクタがソーティング区間以外に位置する場合にはソーティング処理を省略することができるため処理負荷を軽減することができる。   In this way, when the player character is located outside the sorting section, the sorting process can be omitted, so that the processing load can be reduced.

図8(B)のソーティング区間250−2は、移動ルート240上で岩オブジェクト260により視界がさえぎられて水しぶきが見えない区間に設定されている。すなわちソーティング区間250−2をプレーヤキャラクタが移動中は、プレーヤキャラクタに追従する仮想カメラが捕らえる映像には岩オブジェクト260にさえぎられて水しぶきはM1〜M4は移らない。   The sorting section 250-2 in FIG. 8B is set to a section where the field of view is blocked by the rock object 260 on the moving route 240 and the splash is not visible. That is, while the player character is moving in the sorting section 250-2, the image captured by the virtual camera following the player character is blocked by the rock object 260, and the splashes M1 to M4 do not move.

このように本実施の形態では、水しぶきが表示されない状態が発生するエリアをソーティング区間として設定することにより、ソーティング処理に伴い描画順番が入れ替わることによるちらつきを防止することができる。   As described above, in the present embodiment, by setting an area where the state in which the splash is not displayed is set as the sorting section, it is possible to prevent flickering due to a change in the drawing order accompanying the sorting process.

図9は本実施の形態において半透明描画処理を行う際の描画順序決定処理の流れの一例について説明するためのフローチャート図である。   FIG. 9 is a flowchart for explaining an example of the flow of the drawing order determination process when the translucent drawing process is performed in the present embodiment.

まずキャラクタオブジェクト又は仮想カメラがソーティングが必要なエリアにいるか否かに基づきソーティング処理の必要性を判断する(ステップS110)。   First, the necessity of the sorting process is determined based on whether or not the character object or the virtual camera is in an area that requires sorting (step S110).

そしてキャラクタオブジェクト又は仮想カメラがソーティングが必要なエリアにいる場合には、複数のパーティクル発生地点の奥行き情報に基づき、パーティクル発生地点単位でソーティング処理を行い、パーティクル発生地点単位で描画順序を決定する(ステップS120)。   When the character object or the virtual camera is in an area where sorting is necessary, sorting processing is performed in units of particle generation points based on depth information of a plurality of particle generation points, and the drawing order is determined in units of particle generation points ( Step S120).

またキャラクタオブジェクト又は仮想カメラがソーティングが必要なエリアにいない場合には、前回のソーティング処理の処理結果に基づき、パーティクル発生地点単位で描画順序を決定する(ステップS130)。   If the character object or the virtual camera is not in the area where sorting is necessary, the drawing order is determined for each particle generation point based on the processing result of the previous sorting process (step S130).

次に決定された描画順序に従い、複数のパーティクル発生地点から発生したパーティクル集合オブジェクトの半透明描画処理を行う(ステップS140)。   Next, in accordance with the determined drawing order, translucent drawing processing is performed on the particle aggregate object generated from a plurality of particle generation points (step S140).

なお図8(A)(B)及び図9では、ソーティング区間を設定してソーティング処理の必要性を判断する場合を例にとり説明したがこれに限られない。例えば仮想カメラの配置の変化が所定範囲内か否かに基づきソーティング処理の必要性を判断するような場合でもよい。   In FIGS. 8A, 8B, and 9, the case where the sorting interval is set and the necessity of the sorting process is determined has been described as an example. However, the present invention is not limited to this. For example, the necessity of the sorting process may be determined based on whether or not the change in the placement of the virtual camera is within a predetermined range.

また上記実施の形態では、水しぶきを半透明描画する際に水しぶきを表現するためのパーティクルの発生地点単位で描画順序を決定する場合を例にとり説明したがこれに限られない。   In the above-described embodiment, the case where the drawing order is determined in units of particle generation points for expressing the splash when the splash is drawn translucently is described as an example, but the present invention is not limited thereto.

例えば半透明描画処理を行う際にプリミティブ単位で描画順序を決定する場合でもよい。   For example, the drawing order may be determined in units of primitives when performing the translucent drawing process.

図10(A)(B)(C)及び図11(A)(B)(C)はプリミティブ単位で描画順序を判断する場合について説明するための図である。ここにおいてプリミティブとは例えばポリゴンやスプライト等である。   10A, 10B, 11C, and 11A, 11B, and 11C are diagrams for explaining the case where the drawing order is determined in units of primitives. Here, the primitive is, for example, a polygon or a sprite.

図10(A)及び図11(A)は仮想カメラの移動前後における仮想カメラとプリミティブとの位置関係を表している。P1〜P4は例えば半透明ポリゴンであるとする。210−1は移動前の仮想カメラであり、210−2は移動後の仮想カメラである。   FIGS. 10A and 11A show the positional relationship between the virtual camera and the primitive before and after the movement of the virtual camera. P1 to P4 are assumed to be translucent polygons, for example. 210-1 is a virtual camera before movement, and 210-2 is a virtual camera after movement.

例えば図10(A)の場合には仮想カメラ210−1から見た場合の半透明ポリゴンP1〜P4の前後関係は、奥から順にP4、P3、P2、P1となる(図10(B)参照)。   For example, in the case of FIG. 10A, the front-rear relations of the translucent polygons P1 to P4 when viewed from the virtual camera 210-1 are P4, P3, P2, and P1 in order from the back (see FIG. 10B). ).

また仮想カメラ210−2から見た場合の半透明ポリゴンP1〜P4の前後関係は、おくから順にP3、P1、P2、P4となる(図10(C)参照)。   Further, the front-rear relations of the translucent polygons P1 to P4 when viewed from the virtual camera 210-2 are P3, P1, P2, and P4 in this order (see FIG. 10C).

このように半透明ポリゴンと仮想カメラの位置関係の変化により仮想カメラに対する半透明ポリゴンの奥行き関係が変位する場合にはソーティング処理が必要となる。   As described above, when the depth relationship of the translucent polygon with respect to the virtual camera is displaced due to a change in the positional relationship between the translucent polygon and the virtual camera, a sorting process is required.

ところが例えば図11(A)の場合には仮想カメラ210’−1から見た場合の半透明ポリゴンのP1〜P4の前後関係は、奥から順にP4、P3、P2、P1となり(図11(B)参照)、仮想カメラ210’−2から見た場合の半透明ポリゴンのP1〜P4の前後関係も、奥から順にP4、P3、P2、P1となる(図11(C)参照)。従って仮想カメラが図11(A)のように動くような場合には、仮想カメラ210’−2から見た画像を描画する場合には、改めてソーティング処理を行わなくても仮想カメラ210’−1から見た画像を描画する場合に行ったソーティング結果を用いることができる。   However, in the case of FIG. 11A, for example, the front-rear relationship of P1 to P4 of the translucent polygons when viewed from the virtual camera 210′-1 is P4, P3, P2, and P1 in order from the back (FIG. 11B )), The front-rear relationship of P1 to P4 of the translucent polygons when viewed from the virtual camera 210'-2 is also P4, P3, P2, and P1 sequentially from the back (see FIG. 11C). Therefore, when the virtual camera moves as shown in FIG. 11A, when rendering an image viewed from the virtual camera 210′-2, the virtual camera 210′-1 does not need to be sorted again. The result of sorting performed when drawing an image viewed from the above can be used.

従って所与の条件に基づき複数の半透明プリミティブの描画順序を決定するためのソーティング処理の必要性を判断し、ソーティング処理が必要である判断された場合には複数の半透明プリミティブのソーティング処理を行い当該ソーティング処理の処理結果に基づき複数の半透明プリミティブの描画順序を決定し、ソーティング処理が必要ないと判断された場合には前回のソーティング処理結果に基づいて、半透明プリミティブの描画順序を決定するようにしてもよい。   Therefore, the necessity of the sorting process for determining the drawing order of a plurality of translucent primitives based on a given condition is judged, and when the sorting process is judged to be necessary, the sorting process of a plurality of translucent primitives is performed. Determine the drawing order of multiple translucent primitives based on the processing result of the sorting process, and if it is determined that sorting is not necessary, determine the drawing order of semitransparent primitives based on the previous sorting process result You may make it do.

図12(A)(B)はプリミティブの集合として構成されたオブジェクトの単位で描画順序を判断する場合について説明するための図である。   FIGS. 12A and 12B are diagrams for explaining the case where the drawing order is determined in units of objects configured as a set of primitives.

図12(A)は仮想カメラと半透明オブジェクトO1〜O4の位置関係を表している。P31、P32は半透明オブジェクトO3に属する半透明ポリゴンであるとする。またP41、P42は半透明オブジェクトO4に属する半透明ポリゴンであるとする。   FIG. 12A shows the positional relationship between the virtual camera and the translucent objects O1 to O4. P31 and P32 are semi-transparent polygons belonging to the semi-transparent object O3. Further, it is assumed that P41 and P42 are translucent polygons belonging to the translucent object O4.

かかる場合に本実施の形態では、オブジェクト単位でソーティング処理を行う。例えば図12(A)の場合には仮想カメラ210−1から見た場合の半透明オブジェクトO1〜O4の前後関係は、奥から順にO4、O3、O2、O1となる(図12(B)参照)。従って各オブジェクトO1〜O4をαブレンディング処理を行ってフレームバッファ220に半透明描画する際には、O4、O3、O2、O1の順で、オブジェクト単位で奥から先に描画する。   In such a case, in this embodiment, the sorting process is performed in units of objects. For example, in the case of FIG. 12A, the front-rear relationship of the translucent objects O1 to O4 when viewed from the virtual camera 210-1 is O4, O3, O2, and O1 in order from the back (see FIG. 12B). ). Accordingly, when the objects O1 to O4 are subjected to the α blending process and rendered translucently in the frame buffer 220, the objects are rendered in the order of O4, O3, O2, and O1 in the order of the object.

すなわちオブジェクトO3に属するポリゴンP31、P32はオブジェクトO4に属するポリゴンP41、P42の後に描画される。   That is, the polygons P31 and P32 belonging to the object O3 are drawn after the polygons P41 and P42 belonging to the object O4.

図13(A)(B)(C)及び図14(A)(B)(C)はオブジェクトの描画順序の決定について説明するための図である。   FIGS. 13A, 13B, and 14C, and FIGS. 14A, 14B, and 14C are diagrams for explaining determination of the drawing order of objects.

図13(A)及び図14(A)は仮想カメラの移動前後におけるオブジェクトとの位置関係を表している。O1〜O4は例えば半透明オブジェクトであるとする。210−1は移動前の仮想カメラであり、210−2は移動後の仮想カメラである。   FIGS. 13A and 14A show the positional relationship with the object before and after the movement of the virtual camera. Assume that O1 to O4 are translucent objects, for example. 210-1 is a virtual camera before movement, and 210-2 is a virtual camera after movement.

例えば図13(A)の場合には仮想カメラ210−1から見た場合の半透明オブジェクトO1〜O4の前後関係は、奥から順にO4、O3、O2、O1となる(図13(B)参照)。   For example, in the case of FIG. 13A, the front-rear relationship of the translucent objects O1 to O4 when viewed from the virtual camera 210-1 is O4, O3, O2, and O1 in order from the back (see FIG. 13B). ).

また仮想カメラ210−2から見た場合の半透明ポリゴンO1〜O4の前後関係は、奥から順にO3、O1、O2、O4となる(図13(C)参照)。   Further, the front-rear relations of the translucent polygons O1 to O4 when viewed from the virtual camera 210-2 are O3, O1, O2, and O4 in order from the back (see FIG. 13C).

このようにオブジェクトと仮想カメラの位置関係の変化により仮想カメラに対するオブジェクトの奥行き関係が変位する場合にはソーティング処理が必要となる。   Thus, when the depth relationship of the object with respect to the virtual camera is displaced due to a change in the positional relationship between the object and the virtual camera, a sorting process is required.

ところが例えば図14(A)の場合には仮想カメラ210’−1から見た場合のオブジェクトO1〜O4の前後関係は、奥から順にO4、O3、O2、O1となり(図14(B)参照)、仮想カメラ210’−2から見た場合のオブジェクトのO1〜O4の前後関係も、奥から順にO4、O3、O2、O1となる(図14(C)参照)。従って仮想カメラが図14(A)のように動くような場合には、仮想カメラ210’−2から見た画像を描画する場合には、改めてソーティング処理を行わなくても仮想カメラ210’−1から見た画像を描画する場合に行ったソーティング結果を用いることができる。   However, in the case of FIG. 14A, for example, the front-rear relationship of the objects O1 to O4 when viewed from the virtual camera 210′-1 is O4, O3, O2, and O1 in order from the back (see FIG. 14B). The front-rear relationship of the objects O1 to O4 when viewed from the virtual camera 210′-2 is also O4, O3, O2, and O1 in order from the back (see FIG. 14C). Therefore, when the virtual camera moves as shown in FIG. 14A, when drawing an image viewed from the virtual camera 210′-2, the virtual camera 210′-1 does not need to be sorted again. The result of sorting performed when drawing an image viewed from the above can be used.

従って本実施の形態では、所与の条件に基づき複数の半透明プリミティブ集合(オブジェクト)の描画順序を決定するためのソーティング処理の必要性を判断して、ソーティング処理が必要であると判断された場合には複数の半透明プリミティブ集合(オブジェクト)の代表位置に基づき半透明プリミティブ集合単位でソーティング処理を行い当該ソーティング処理の処理結果に基づき複数の半透明プリミティブ集合(オブジェクト)の描画順序を決定し、ソーティング処理が必要ない判断された場合には前回のソーティング処理結果に基づいて半透明プリミティブ集合(オブジェクト)の描画順序を決定する処理を行う。   Therefore, in this embodiment, the necessity of the sorting process for determining the drawing order of a plurality of semi-transparent primitive sets (objects) is determined based on a given condition, and it is determined that the sorting process is necessary. In this case, sorting processing is performed in units of semi-transparent primitive sets based on the representative positions of the plurality of semi-transparent primitive sets (objects), and the drawing order of the plurality of semi-transparent primitive sets (objects) is determined based on the processing result of the sorting process. If it is determined that the sorting process is not necessary, a process of determining the drawing order of the semi-transparent primitive set (object) based on the previous sorting process result is performed.

図15は本実施の形態の半透明描画処理を行う際の描画順序決定処理の流れの他の例について説明するためのフローチャート図である。   FIG. 15 is a flowchart for explaining another example of the flow of the drawing order determination process when the translucent drawing process of the present embodiment is performed.

まず仮想カメラの配置の変化が所定範囲内か否かに基づきソーティング処理の必要性を判断する(ステップS210)。ここにおいて仮想カメラの配置の変化とは例えば仮想カメラの位置や向き(回転)の変化である。   First, the necessity of the sorting process is determined based on whether or not the change in the placement of the virtual camera is within a predetermined range (step S210). Here, the change in the placement of the virtual camera is, for example, a change in the position or orientation (rotation) of the virtual camera.

そして仮想カメラの配置の変化が所定範囲内である場合には、奥行き情報に基づきオブジェクトのソーティング処理を行い、オブジェクト単位で描画順序を決定する(ステップS220)。   If the change in the placement of the virtual camera is within the predetermined range, the object sorting process is performed based on the depth information, and the drawing order is determined for each object (step S220).

また仮想カメラの配置の変化が所定範囲内でない場合には、前回のソーティング処理の処理結果に基づき、オブジェクト単位で描画順序を決定する(ステップS230)。   On the other hand, if the change in the placement of the virtual camera is not within the predetermined range, the drawing order is determined for each object based on the processing result of the previous sorting process (step S230).

次に決定された描画順序に従い、オブジェクトを構成するプリミティブの半透明描画処理を行う(ステップS240)。   Next, in accordance with the determined rendering order, a semi-transparent rendering process for the primitives constituting the object is performed (step S240).

(3)パーティクルの水増し処理
次に本実施の形態において水しぶきの画像を生成する際に行うパーティクルの水増し処理について説明する。
(3) Particle Inflating Process Next, a particle inflating process performed when a splash image is generated in the present embodiment will be described.

図16(A)(B)はパーティクルの水増しについて説明するための図である。   FIGS. 16A and 16B are diagrams for explaining the padding of particles.

図16(A)のPP1〜PP4は既存のパーティクルシステムを用いて所与のフレームに発生させたパーティクルである。各パーティクルは、色や寿命などの特性を有し、所与の規則(エミッターによって与えられる)や作用する力(フォース)によって、発生、移動、消滅すもので、各フレームにおけるパーティクルPP1〜PP4の位置はエミッターやフォースに基づき流体計算、衝突計算、運動計算等のパーティクルの3次元空間における位置を決定する演算を行い決定されたものである。   PP1 to PP4 in FIG. 16A are particles generated in a given frame using an existing particle system. Each particle has characteristics such as color and life, and is generated, moved, and disappeared by a given rule (given by the emitter) and acting force (force). The particles PP1 to PP4 in each frame The position is determined by performing operations for determining the position of the particle in the three-dimensional space, such as fluid calculation, collision calculation, and motion calculation based on the emitter and force.

ここにおいてリアルで見栄えのよい水しぶきを作成するためにはより多くのパーティクルを発生させることが好ましい。しかし既存のパーティクルシステムを用いてパーティクルを発生させるためには各パーティクルについて前記演算が必要となるため、発生させるパーティクル数が増えるとその分演算量が増大することになる。   Here, it is preferable to generate more particles in order to create a realistic and good-looking splash. However, in order to generate particles using an existing particle system, the calculation is required for each particle. Therefore, when the number of particles to be generated increases, the calculation amount increases accordingly.

そこで本実施の形態では、図16(B)に示すように、3次元空間に与えられたパーティクルPP1〜PP4を親パーティクルとし、スクリーン平面へ透視変換された親パーティクルPP1〜PP4の位置座標に基づきスクリーン平面に発生させた水増し点に子パーティクルCP11〜CP44を生成する。   Therefore, in the present embodiment, as shown in FIG. 16B, the particles PP1 to PP4 given to the three-dimensional space are used as parent particles, and based on the position coordinates of the parent particles PP1 to PP4 that are perspective-transformed to the screen plane. Child particles CP11 to CP44 are generated at the padding points generated on the screen plane.

子パーティクルCP11〜CP14は親パーティクルPP1から水増しして生成したものであり、子パーティクルCP21〜CP24は親パーティクルPP2から水増しして生成したものであり、子パーティクルCP31〜CP34は親パーティクルPP3から水増しして生成したものであり、子パーティクルCP41〜CP44は親パーティクルPP4から水増しして生成したものである。   The child particles CP11 to CP14 are generated by padding from the parent particle PP1, the child particles CP21 to CP24 are generated by padding from the parent particle PP2, and the child particles CP31 to CP34 are padded from the parent particle PP3. The child particles CP41 to CP44 are generated by adding water from the parent particle PP4.

このようにすると、子パーティクルについては既存のパーティクルシステムを用いて3次元空間にその位置を決定するまでの演算処理を省略できるので少ない演算付加でボリュームのある水しぶきの画像を生成することができるようになる。   In this way, since it is possible to omit the calculation process until the position of the child particle is determined in the three-dimensional space using the existing particle system, it is possible to generate a splash image having a volume with a small amount of calculation. become.

図17(A)(B)は子パーティクルの位置及びサイズの決定例について説明するための図である。   FIGS. 17A and 17B are diagrams for explaining an example of determining the position and size of a child particle.

図17(A)のPP1(X1、Y1)はnフレーム目にスクリーン平面310に透視変換されたパーティクル(これを親パーティクルとする)の位置座標である。   PP1 (X1, Y1) in FIG. 17A is a position coordinate of a particle (this is referred to as a parent particle) that is perspective-transformed to the screen plane 310 in the nth frame.

本実施の形態ではスクリーン平面へ透視変換された親パーティクルPP1の位置座標に基づきスクリーン平面に発生させる水増し点の座標を演算し、当該水増し点に子パーティクルを生成する。   In the present embodiment, the coordinates of the padding point generated on the screen plane are calculated based on the position coordinates of the parent particle PP1 that is perspective-transformed to the screen plane, and child particles are generated at the padding point.

ここで第1の水増し点M11の座標を(x11、y11)、第2の水増し点のM12の座標を(x12、y12)とすると、x11、y11、x12、y12は以下のようにして求められる。   Here, when the coordinates of the first padding point M11 are (x11, y11) and the coordinates of the second padding point M12 are (x12, y12), x11, y11, x12, y12 are obtained as follows. .

x11=X1+f(S、t、乱数1) …(1)
y11=Y1+f(S、t、乱数1) …(2)
x12=X2+f(S、t、乱数2) …(3)
y12=Y2+f(S、t、乱数2) …(4)
このようにして求められた第1の水増し点M11の座標(x11、y11)、第2の水増し点M12の座標(x12、y12)が子パーティクルCP11、CP12の生成位置となる。すなわち(x11、y11)、(x12、y12)が子パーティクルCP11及びCP12の位置座標となる。
x11 = X1 + f (S, t, random number 1) (1)
y11 = Y1 + f (S, t, random number 1) (2)
x12 = X2 + f (S, t, random number 2) (3)
y12 = Y2 + f (S, t, random number 2) (4)
The coordinates (x11, y11) of the first inflated point M11 and the coordinates (x12, y12) of the second inflated point M12 thus obtained are the generation positions of the child particles CP11, CP12. That is, (x11, y11) and (x12, y12) are the position coordinates of the child particles CP11 and CP12.

ここでSは奥行き値zに関連して与えられる倍率等を表す値であり、tはフレームナンバーである。親パーティクルPP1から子パーティクルCP11、CP12までの距離を例えばl1、l2とすると、(1)〜(4)を使って求めることにより、奥行き値やフレーム番号に応じて親パーティクルから離れた距離l1、l2に子パーティクルCP11、CP12を生成することができる。   Here, S is a value representing a magnification or the like given in relation to the depth value z, and t is a frame number. If the distances from the parent particle PP1 to the child particles CP11 and CP12 are, for example, l1 and l2, the distance l1 away from the parent particle according to the depth value and the frame number is obtained by using (1) to (4). Child particles CP11 and CP12 can be generated in l2.

また乱数1、乱数2は使用する乱数の乱数列における位置を表しており、連続する複数のフレームにおいて、第1の子パーティクルには常に乱数1、第2の子パーティクルには常に乱数2を使用することにより、連続する複数のフレームにおいて子パーティクルの軌跡に連続性を持たせることができる。   Random numbers 1 and 2 represent the positions in the random number sequence of the random numbers to be used. In a plurality of consecutive frames, random number 1 is always used for the first child particle and random number 2 is always used for the second child particle. By doing so, the trajectory of the child particles can be made continuous in a plurality of consecutive frames.

また図17(B)は透視変換時に親パーティクルの奥行き値がz=100である場合の子パーティクルの生成例について説明するための図である。   FIG. 17B is a diagram for explaining a generation example of child particles when the depth value of the parent particle is z = 100 at the time of perspective transformation.

ここでCP’11(x11’、y11’)、CP’12(x’12、y’12)を、親パーティクルの奥行き値がz=100である場合の前記親パーティクルの位置座標PP1(X1、Y1)に基づきスクリーン平面310に生成した子パーティクルCP’11、CP’12の位置座標であるとする。このときは図17(B)に示すように、図17(A)の場合に比べて、子パーティクルが位置が親パーティクルに近い位置に生成される。   Here, CP′11 (x11 ′, y11 ′) and CP′12 (x′12, y′12) are set as the parent particle position coordinates PP1 (X1, X2) when the depth value of the parent particle is z = 100. It is assumed that the position coordinates of the child particles CP′11 and CP′12 generated on the screen plane 310 based on Y1). At this time, as shown in FIG. 17B, the position of the child particles is generated closer to the parent particle than in the case of FIG.

すなわち親パーティクルPP1から子パーティクルCP’11、CP’12までの距離を例えばl’1、l’2とすると、l’1<l1、l’2<l2となる。   That is, if the distances from the parent particle PP1 to the child particles CP′11 and CP′12 are l′ 1 and l′ 2, for example, l′ 1 <l1 and l′ 2 <l2.

このように本実施の形態では親パーティクルの奥行き値(z値)が大きい場合(親パーティクルが仮想カメラから離れた位置にある場合)には近い位置に子パーティクルを生成し、親パーティクルの奥行き値(z値)が小さい場合(親パーティクルが仮想カメラから近い位置にある場合)には離れた位置に子パーティクルを生成する。従って親パーティクルの奥行き値(z値)に応じて自然な遠近関係を有する位置に子パーティクルを生成することができる。   As described above, in this embodiment, when the depth value (z value) of the parent particle is large (when the parent particle is located away from the virtual camera), a child particle is generated at a close position, and the depth value of the parent particle is obtained. When (z value) is small (when the parent particle is close to the virtual camera), a child particle is generated at a distant position. Therefore, a child particle can be generated at a position having a natural perspective according to the depth value (z value) of the parent particle.

また本実施の形態ではフレームナンバーが大きくなるにつれ(パーティクルが発生してからの時間が長くなるにつれ)、親パーティクルから離れた位置に子パーティクルを生成する。このようにすることで時間が経過するにつれ水しぶきが広がっていく様子を表現することができる。   Further, in this embodiment, as the frame number increases (as the time after the generation of particles increases), child particles are generated at positions away from the parent particles. By doing so, it is possible to express how the splashes spread as time passes.

図18(A)(B)は、生成した子パーティクルにパーティクルオブジェクトを割りあてる例について説明するための図である。   18A and 18B are diagrams for explaining an example in which a particle object is assigned to a generated child particle.

図18(A)は子パーティクルCPにパーティクルオブジェクトとしてスプライト350を割り当てる様子を表している。スプライトは2頂点SV1、SV2を与えることにより生成することができるので、親パーティクルの奥行き値に応じて決定されるスプライト350のサイズに基づき、子パーティクルCPの周囲に2頂点SV1、SV2の位置を決定する。   FIG. 18A shows a state in which the sprite 350 is assigned as a particle object to the child particle CP. Since the sprite can be generated by giving two vertices SV1 and SV2, the positions of the two vertices SV1 and SV2 around the child particle CP are determined based on the size of the sprite 350 determined according to the depth value of the parent particle. decide.

ここにおいて子パーティクルCPからスプライトの2頂点SV1、SV2までの移動距離をr1とすると、以下の式で与えられる。   Here, when the movement distance from the child particle CP to the two vertices SV1 and SV2 of the sprite is r1, the following expression is given.

r1 = ローカルパーティクルサイズ × S
ここにおいてローカルパーティクルサイズとはローカル座標系においてパーティクルに割り当てるパーティクルオブジェクトのサイズを表すものである。このようにして移動距離をr1を求めることにより、親パーティクルの奥行き値(z値)が大きくなるにつれ(親パーティクルが仮想カメラから離れるにつれ)、子パーティクルに割り当てるスプライトのサイズを小さくすることができる。従って親パーティクルの奥行き値(z値)に応じて自然な遠近関係を有する大きさのスプライトを子パーティクルに割り当てることができる。
r1 = local particle size x S
Here, the local particle size represents the size of the particle object assigned to the particle in the local coordinate system. By obtaining r1 as the movement distance in this manner, the size of the sprite assigned to the child particle can be reduced as the depth value (z value) of the parent particle increases (as the parent particle moves away from the virtual camera). . Therefore, sprites having a natural perspective relationship can be assigned to the child particles according to the depth value (z value) of the parent particle.

なお子パーティクルCPにパーティクルオブジェクトとしてスプライト350を与える場合に、子パーティクルCPの位置をスプライト350の1の頂点SV1として、子パーティクルCPの周囲に他の頂点SV2の位置を決定するようにしてもよい。このようにするとスプライト350の1の頂点SV1の位置を決定する演算が省略できるので処理負荷を削減することができる。   When the sprite 350 is given as a particle object to the child particle CP, the position of the child particle CP may be determined as the vertex SV1 of one of the sprite 350, and the position of another vertex SV2 may be determined around the child particle CP. . In this way, since the calculation for determining the position of one vertex SV1 of the sprite 350 can be omitted, the processing load can be reduced.

図18(B)は子パーティクルCPにパーティクルオブジェクトとしてポリゴンオブジェクト360を割り当てる様子を表している。当該ポリゴンオブジェクト360はPV1〜PV8の8頂点を与えることにより生成することができるので、親パーティクルの奥行き値に応じて決定されるポリゴンオブジェクトのサイズに基づき子パーティクルCPの周囲に8頂点PV1〜PV8の位置を決定する。   FIG. 18B shows a state in which a polygon object 360 is assigned as a particle object to the child particle CP. Since the polygon object 360 can be generated by giving eight vertices of PV1 to PV8, eight vertices PV1 to PV8 around the child particle CP based on the size of the polygon object determined according to the depth value of the parent particle. Determine the position.

ここにおいて子パーティクルからポリゴンオブジェクトの8頂点PV1〜PV8までの移動距離をr2とすると、以下の式で与えられる。   Here, when the moving distance from the child particle to the eight vertices PV1 to PV8 of the polygon object is r2, the following equation is given.

r2 = ローカルパーティクルサイズ × S
ここにおいてローカルパーティクルサイズとはローカル座標系においてパーティクルに割り当てるパーティクルオブジェクトのサイズを表すものである。このようにして移動距離をr2を求めることにより、親パーティクルの奥行き値(z値)が大きくなるにつれ(親パーティクルが仮想カメラから離れるにつれ)、子パーティクルに割り当てるポリゴンオブジェクトのサイズを小さくすることができる。従って親パーティクルの奥行き値(z値)に応じて自然な遠近関係を有する大きさのポリゴンオブジェクトを子パーティクルに割り当てることができる。
r2 = local particle size x S
Here, the local particle size represents the size of the particle object assigned to the particle in the local coordinate system. By obtaining r2 as the movement distance in this manner, the size of the polygon object assigned to the child particle can be reduced as the depth value (z value) of the parent particle increases (as the parent particle moves away from the virtual camera). it can. Therefore, a polygon object having a natural perspective relationship can be assigned to a child particle according to the depth value (z value) of the parent particle.

図19(A)(B)はパーティクルの時間的な連続性について説明するための図である。図19(A)はt=1〜t=6における親パーティクルと子パーティクルの様子を模式的に表したものである。ここでtは時間の経過を表すパラメータであり、例えばフレーム番号等である。   19A and 19B are diagrams for explaining the temporal continuity of particles. FIG. 19A schematically shows the state of parent particles and child particles at t = 1 to t = 6. Here, t is a parameter representing the passage of time, for example, a frame number or the like.

ここでt=1,2…におけるスクリーン平面310−1、310−1…の親パーティクルの位置をPPt1、PPt2…とし、第1の子パーティクルの位置をCP1t1、CP1t2…、第2の子パーティクルの位置をCP2t1、CP2t2…とする。   Here, the positions of the parent particles of the screen planes 310-1, 310-1,... At t = 1, 2... Are PPt1, PPt2,..., And the positions of the first child particles are CP1t1, CP1t2,. The positions are CP2t1, CP2t2,.

同図に示すように本実施の形態では所与の親パーティクルに対してn+1フレーム目に生成する子パーティクルは、同一の親パーティクルに対してnフレーム目に生成した所与の子パーティクルと連続性を有する位置に生成される。   As shown in the figure, in the present embodiment, a child particle generated at the (n + 1) th frame for a given parent particle is continuity with a given child particle generated at the nth frame for the same parent particle. Is generated at a position having

本実施の形態では、例えば第1の子パーティクルのt=1,2…における位置をh=f1(t)からなる第1の軌跡関数370(図19(B)参照)を用いて生成し、第2の子パーティクルのt=1,2…における位置をh=f2(t)からなる第2の軌跡関数380(図19(B)参照)を用いて生成する。このようにすることにより、第1の子パーティクル及び第2の子パーティクルに前後のフレームで連続した軌跡を描かせることができる。   In the present embodiment, for example, the positions of the first child particles at t = 1, 2,... Are generated using the first trajectory function 370 (see FIG. 19B) consisting of h = f1 (t). The positions of the second child particles at t = 1, 2,... Are generated using a second trajectory function 380 (see FIG. 19B) consisting of h = f2 (t). By doing so, it is possible to cause the first child particle and the second child particle to draw a continuous trajectory in the preceding and following frames.

図20はパーティクルの水増し処理の流れを説明するためのフローチャート図である。   FIG. 20 is a flowchart for explaining the flow of the padding process of particles.

まず所与のパーティクルシステムを用いて3次元空間に当該フレームのパーティクルを生成する(ステップS310)。各パーティクルは、所与のパーティクルシステムによって与えられた色や寿命などの特性を有し、所与の規則(エミッターによって与えられる)や作用する力(フォース)に基づき3次元空間における位置を決定する演算を行い生成されたものである。   First, particles of the frame are generated in a three-dimensional space using a given particle system (step S310). Each particle has characteristics such as color and life given by a given particle system and determines its position in 3D space based on a given rule (given by the emitter) and acting force (force) It is generated by performing an operation.

次に3次元空間のパーティクルをスクリーン平面に透視変換する(ステップS320)。   Next, the particles in the three-dimensional space are perspective-transformed to the screen plane (step S320).

次にスクリーン平面のパーティクルを親パーティクルとして、親パーティクルの位置に基づき水増し点の座標を演算する(ステップS330)。例えば図17(A)(B)で説明した手法で水増し点の位置座標を演算するようにしてもよい。   Next, using the particles on the screen plane as the parent particles, the coordinates of the padding point are calculated based on the position of the parent particles (step S330). For example, the position coordinates of the padding point may be calculated by the method described with reference to FIGS.

次に水増し点に子パーティクルを生成する(ステップS340)。ここで子パーティクルは親パーティクルの色や寿命などの特性情報を引き継ぐようする。   Next, a child particle is generated at the padding point (step S340). Here, the child particle takes over the characteristic information such as the color and life of the parent particle.

次に子パーティクルにパーティクルオブジェクトを割り当てる(ステップS350)。図18(A)(B)で説明したようにパーティクルオブジェクトとしてスプライトやポリゴンオブジェクトを割り当てることができる。例えば半透明テクスチャを張ったスプライトポリゴンを使用することによりリアルな水しぶきの画像を生成することができる。   Next, a particle object is assigned to the child particle (step S350). As described in FIGS. 18A and 18B, a sprite or a polygon object can be assigned as a particle object. For example, by using a sprite polygon with a translucent texture, a realistic splash image can be generated.

なお上記実施の形態では子パーティクルにパーティクルオブジェクトとしてスプライトやポリゴンオブジェクトを割り当てる場合を例にとり説明したがこれに限られない。例えば自由曲面の制御点や他のプリミティブを割り当てる場合でもよい。   In the above embodiment, the case where a sprite or a polygon object is assigned as a particle object to a child particle has been described as an example, but the present invention is not limited to this. For example, a free-form surface control point or another primitive may be assigned.

(4)処理負荷を軽減するための処理
図21は本実施の形態における処理負荷を軽減するための処理の一例を説明するためのフローチャート図である。
(4) Processing for Reducing Processing Load FIG. 21 is a flowchart for explaining an example of processing for reducing processing load in the present embodiment.

まず画像生成時の処理負荷を監視し、処理負荷情報を取得する(ステップ410)。ここで処理負荷情報とは、例えばリフレッシュレートやグローバルクロックやCPUクロック等により与えられる1フレームあたりの描画速度等で与えられる。   First, the processing load at the time of image generation is monitored, and processing load information is acquired (step 410). Here, the processing load information is given by, for example, a drawing rate per frame given by a refresh rate, a global clock, a CPU clock, or the like.

そして処理負荷が高い場合には、パーティクル発生地点の数、パーティクル数及びパーティクルの寿命の少なくともひとつを制御するパラメータを調節する(ステップS420、S430)。処理負荷が高いか否かは、処理負荷情報に基づき判断される。   When the processing load is high, parameters for controlling at least one of the number of particle generation points, the number of particles, and the lifetime of particles are adjusted (steps S420 and S430). Whether or not the processing load is high is determined based on the processing load information.

次に奥行き情報を加味してパーティクル発生地点の数を制御する例について説明する。   Next, an example in which the number of particle generation points is controlled in consideration of depth information will be described.

図22(A)(B)は処理負荷が低い場合と処理負荷が高い場合の画像例である。本実施の形態では、処理負荷が低い場合には岩等にあたって発生する多数の水しぶきを生成する(図22(A)参照)。しかし処理負荷情報により処理負荷が高いと判断した場合には遠くにある水しぶきを画像生成の対象外とする。すなわち図22(B)において×印のつけられた水しぶきの画像を生成しないか又はパラメータの値を調整して処理負荷を軽減する。遠いか否かは水しぶき発生地点の奥行き情報に基づき判断する。このようにすることにより×印のついた水しぶきについては、画像生成に必要なパーティクル発生処理から描画処理に至る一連の画像生成処理を全て省略できるので、処理負荷の軽減を図ることができる。   22A and 22B are examples of images when the processing load is low and when the processing load is high. In this embodiment, when the processing load is low, a large number of splashes generated on a rock or the like are generated (see FIG. 22A). However, when it is determined that the processing load is high based on the processing load information, the distant spray is excluded from image generation. That is, the processing load is reduced by not generating a splash image marked with an X in FIG. 22B or adjusting the parameter value. Whether it is far away is determined based on the depth information of the splashing occurrence point. In this way, for the splashes with X marks, a series of image generation processing from particle generation processing necessary for image generation to drawing processing can be omitted, so that the processing load can be reduced.

図23は奥行き情報を加味してパーティクル発生地点の数を制御する例について説明するためのフローチャート図である。   FIG. 23 is a flowchart for explaining an example of controlling the number of particle generation points in consideration of depth information.

まず画像生成時の処理負荷を監視し、処理負荷情報を取得する(ステップS510)。ここで処理負荷情報とは、例えばリフレッシュレートやグローバルクロックやCPUクロック等により与えられる1フレームあたりの描画速度等で与えられる。   First, the processing load at the time of image generation is monitored, and processing load information is acquired (step S510). Here, the processing load information is given by, for example, a drawing rate per frame given by a refresh rate, a global clock, a CPU clock, or the like.

そして処理負荷が高い場合には、パーティクル発生地点の奥行き情報を取得して、パーティクル発生地点の奥行き情報に基づき、仮想カメラから離れたパーティクル発生地点から発生するパーティクル集合によって表現するパーティクル集合オブジェクトを優先して画像生成の対象とする。(ステップS520、530、540)。   When the processing load is high, the depth information of the particle generation point is acquired, and the particle set object expressed by the particle set generated from the particle generation point away from the virtual camera is prioritized based on the depth information of the particle generation point Thus, the image is generated. (Steps S520, 530, 540).

次に奥行き情報を加味してパーティクル発生地点から発生させるパーティクル数の調節を行う例について説明する。   Next, an example of adjusting the number of particles generated from a particle generation point with depth information taken into account will be described.

図24(A)(B)は処理負荷が低い場合と処理負荷が高い場合のパーティクル数について説明するための模式的な図である。図24(A)の410は水しぶきを表現するパーティクル集合オブジェクトであり、412はパーティクル集合オブジェクトを構成するパーティクルオブジェクトである。   24A and 24B are schematic diagrams for explaining the number of particles when the processing load is low and when the processing load is high. In FIG. 24A, reference numeral 410 denotes a particle aggregate object that represents splashes, and reference numeral 412 denotes a particle object that constitutes the particle aggregate object.

本実施の形態では、処理負荷が低い場合にはパーティクル発生地点から多数のパーティクルが生成され、その結果多数のパーティクルオブジェクトの画像が生成される(図24(A)参照)。   In this embodiment, when the processing load is low, a large number of particles are generated from the particle generation point, and as a result, a large number of particle object images are generated (see FIG. 24A).

しかし処理負荷情報により処理負荷が高いと判断した場合には遠くにあるパーティクル発生地点から発生させるパーティクル数を削減する。   However, if the processing load information determines that the processing load is high, the number of particles generated from a distant particle generation point is reduced.

図24(B)の410’は処理負荷が高い場合の遠くにある発生地点から発生させたパーティクルによって表現された水しぶきを表現するパーティクル集合オブジェクトである。遠いか否かは水しぶき発生地点の奥行き情報に基づき判断する。410’は発生させるパーティクル数が410の場合に比べて削減されているので、410に比べて少ないパーティクルオブジェクトの画像が生成される(図24(B)参照)。   Reference numeral 410 ′ in FIG. 24B denotes a particle aggregate object that represents a splash expressed by particles generated from a distant generation point when the processing load is high. Whether it is far away is determined based on the depth information of the splashing occurrence point. Since 410 'reduces the number of particles to be generated as compared with 410, an image of a particle object that is smaller than 410 is generated (see FIG. 24B).

図25は奥行き情報を加味してパーティクル発生地点から発生するパーティクル数を制御する例について説明するためのフローチャート図である。   FIG. 25 is a flowchart for explaining an example of controlling the number of particles generated from a particle generation point in consideration of depth information.

まず画像生成時の処理負荷を監視し、処理負荷情報を取得する(ステップ610)。ここで処理負荷情報とは、例えばリフレッシュレートやグローバルクロックやCPUクロック等により与えられる1フレームあたりの描画速度等で与えられる。   First, the processing load at the time of image generation is monitored, and processing load information is acquired (step 610). Here, the processing load information is given by, for example, a drawing rate per frame given by a refresh rate, a global clock, a CPU clock, or the like.

そして処理負荷が高い場合には、パーティクル発生地点の奥行き情報を取得して、パーティクル発生地点の奥行き情報に基づき、仮想カメラから離れたパーティクル発生地点から優先して発生するパーティクル数を削減する処理を行う(ステップS620、630、640)。パーティクル数を削減する処理とは例えば発生させるパーティクル数を制御するためのパラメータの値を変更する処理等である。   When the processing load is high, the depth information of the particle generation point is acquired, and the number of particles generated with priority from the particle generation point away from the virtual camera is reduced based on the depth information of the particle generation point. (Steps S620, 630, and 640). The process of reducing the number of particles is, for example, a process of changing a parameter value for controlling the number of particles to be generated.

図26は奥行き情報を加味してパーティクル発生地点から発生させるパーティクルの調節を行う場合の処理の流れについて説明するためのフローチャート図である。   FIG. 26 is a flowchart for explaining the flow of processing when adjusting the particles to be generated from the particle generation point in consideration of the depth information.

まず画像生成時の処理負荷を監視し、処理負荷情報を取得する(ステップ710)。ここで処理負荷情報とは、例えばリフレッシュレートやグローバルクロックやCPUクロック等により与えられる1フレームあたりの描画速度等で与えられる。   First, the processing load at the time of image generation is monitored, and processing load information is acquired (step 710). Here, the processing load information is given by, for example, a drawing rate per frame given by a refresh rate, a global clock, a CPU clock, or the like.

そして処理負荷が高い場合には、パーティクルの奥行き情報を取得して、パーティクルの奥行き情報に基づき、仮想カメラから離れたパーティクルから優先して寿命を短くする処理を行う(ステップS720、730、740)。例えば奥行き情報に基づきパーティクルのソーティング処理を行い遠いほうから所定個数だけパーティクルの寿命を短く設定するようにしてもよい。   If the processing load is high, the depth information of the particles is acquired, and based on the depth information of the particles, processing is performed to shorten the life in preference to the particles far from the virtual camera (steps S720, 730, and 740). . For example, the particle sorting process may be performed based on the depth information, and the lifetime of the particles may be set to be short by a predetermined number from the far side.

次にパーティクルに与えられた透明度やパーティクルの高さに基づきパーティクルの描画処理を省略する場合について説明する。   Next, a case where the drawing process of particles is omitted based on the transparency and the height of the particles given to the particles will be described.

図27(A)はパーティクルに与えられた透明度が所定値以下になった場合にパーティクルの描画処理を省略する様子を模式的に表した図であり、図27(B)はパーティクルの高さが一定以下になった場合にパーティクルの描画処理を省略する様子を模式的に表した図である。   FIG. 27A is a diagram schematically showing a state where the drawing process of the particles is omitted when the transparency given to the particles becomes a predetermined value or less, and FIG. It is the figure which represented typically a mode that the drawing process of a particle was abbreviate | omitted when it became below fixed.

図27(A)のPt1、Pt2、Pt3は所与のパーティクル発生地点から発生したパーティクルの時間的な変化を表した図である。ここでパーティクルは特性情報として透明度情報(α値)を有しており、当該透明度情報(α値)は時間とともに減少するように制御される。例えばPt1ではα=128であり、Pt2ではα=52であり、Pt3ではα=0である。   Pt1, Pt2, and Pt3 in FIG. 27A are diagrams showing temporal changes of particles generated from a given particle generation point. Here, the particles have transparency information (α value) as characteristic information, and the transparency information (α value) is controlled to decrease with time. For example, α = 128 for Pt1, α = 52 for Pt2, and α = 0 for Pt3.

当該透明度情報(α値)はパーティクル又はパーティクルに割り当てたパーティクルオブジェクトをαブレンディング処理等を行い半透明描画する際に用いられるものである。ここにおいて例えばα値が0である場合にはパーティクル又はパーティクルに割り当てたパーティクルオブジェクトを半透明描画しても透明で表示されない。   The transparency information (α value) is used when a particle or a particle object assigned to the particle is subjected to α blending processing or the like to perform translucent rendering. Here, for example, when the α value is 0, even if the particle or the particle object assigned to the particle is rendered translucently, it is not displayed transparently.

そこで本実施の形態では、パーティクルの特性情報として与えられた透明度情報(α値)が0以下になった場合には、当該パーティクルを画像生成の対象から除外し、以降の当該パーティクルに関する画像生成処理を省略するようにしている。   Therefore, in the present embodiment, when the transparency information (α value) given as the particle characteristic information becomes 0 or less, the particle is excluded from the target of image generation, and subsequent image generation processing related to the particle is performed. Is omitted.

なお上記実施の形態では、パーティクルの特性情報として与えられた透明度情報(α値)が0以下になった場合に当該パーティクルを画像生成の対象から除外し、以降の当該パーティクルに関する画像生成処理を省略する場合を例にとり説明したがこれに限られない。例えばパーティクルの特性情報として与えられた透明度情報(α値)が所定値になった場合に当該パーティクルを画像生成の対象から除外し、以降の当該パーティクルに関する画像生成処理を省略するような場合でもよい。   In the above-described embodiment, when the transparency information (α value) given as the particle characteristic information is 0 or less, the particle is excluded from the image generation target, and the subsequent image generation processing regarding the particle is omitted. However, the present invention is not limited to this. For example, when the transparency information (α value) given as the particle characteristic information reaches a predetermined value, the particle may be excluded from the image generation target, and the subsequent image generation processing regarding the particle may be omitted. .

図27(B)のP’t1、P’t2、P’t3は所与のパーティクル発生地点から発生したパーティクルの時間的な高さの変化を表した図である。510は基準面の高さである。ここで基準面とは例えば水面や地面等である。本実施の形態では海面の高さを基準面の高さとして、発生したパーティクルの高さが基準面の高さ以下になった場合には、当該パーティクルを画像生成の対象から除外し、以降の当該パーティクルに関する画像生成処理を省略するようにしている。   P't1, P't2, and P't3 in FIG. 27B represent changes in the temporal height of particles generated from a given particle generation point. 510 is the height of the reference plane. Here, the reference plane is, for example, the water surface or the ground. In the present embodiment, the height of the sea surface is defined as the height of the reference surface, and when the height of the generated particle is equal to or lower than the height of the reference surface, the particle is excluded from the image generation target, Image generation processing related to the particles is omitted.

図28はパーティクルに与えられた透明度やパーティクルの高さに基づきパーティクルの描画処理を省略する場合の処理の流れについて説明するためのフローチャート図である。   FIG. 28 is a flowchart for explaining the flow of processing when the particle drawing processing is omitted based on the transparency and particle height given to the particles.

ステップS810〜S860は、所与のパーティクルが発生してから消滅するまでに各フレーム毎に行う処理であり、S870のパーティクルの終了処理はパーティクルの消滅に際して行う処理である。   Steps S810 to S860 are processes performed for each frame from the generation of a given particle to the disappearance, and the particle termination process of S870 is a process performed when the particle disappears.

まず当該フレームのパーティクルの透明度を演算する(ステップ810)。   First, the transparency of particles in the frame is calculated (step 810).

次にパーティクルの透明度が0以下である場合には、当該パーティクルを消滅させるためのパーティクルの終了処理を行う(ステップS820、S870)。   Next, when the transparency of the particle is 0 or less, a particle termination process is performed to make the particle disappear (steps S820 and S870).

またパーティクルの透明度が0以下でない場合には、パーティクルの移動計算を行い当該フレームにおけるパーティクル位置を求める(ステップS820、S830)。パーティクルの移動演算は、例えば各フレームにおけるパーティクルの位置はエミッターやフォースに基づき流体計算、衝突計算、運動計算等のパーティクルの3次元空間における位置を決定する演算を行い決定されることになる。   If the transparency of the particle is not less than 0, the movement of the particle is calculated to obtain the particle position in the frame (steps S820 and S830). In the particle movement calculation, for example, the position of the particle in each frame is determined by performing an operation for determining the position of the particle in the three-dimensional space, such as fluid calculation, collision calculation, and motion calculation based on the emitter and force.

次に求めた位置の高さに関する値が所定の値になった場合には、当該パーティクルを消滅させるためのパーティクルの終了処理を行う(ステップS840、S870)。   Next, when the obtained value regarding the height of the position becomes a predetermined value, a particle termination process for annihilating the particle is performed (steps S840 and S870).

また求めた位置の高さに関する値が所定の値になっていない場合には、パーティクルを用いた描画処理を行う(ステップS840、S850)。   If the calculated value regarding the height of the position is not a predetermined value, drawing processing using particles is performed (steps S840 and S850).

そして次フレームの処理を行う場合には再びステップS810〜S860の処理を繰り返す(ステップS860)。   When processing the next frame, the processing of steps S810 to S860 is repeated again (step S860).

(5)FOG効果の処理削減
例えば水しぶき等のオブジェクトが仮想カメラからの距離に応じて背景に溶け込んでいく様子をリアルに表現する場合等のようにFOG効果を出す場合には、デプスキューイング処理を行う。例えばポリゴンオブジェクトに対してデプスキューイング処理を行う場合には、各頂点ごとにその頂点の奥行き値に応じてその頂点色と背景色の合成を行い、奥行き値に応じてその頂点色を変化させる。
(5) Reduction of processing of FOG effect For example, when the FOG effect is produced as in the case of realistically expressing the state in which an object such as splashing is blended into the background according to the distance from the virtual camera, the depth cueing process is performed. I do. For example, when depth cueing processing is performed on a polygon object, the vertex color and the background color are combined for each vertex according to the depth value of the vertex, and the vertex color is changed according to the depth value. .

本実施の形態では水しぶき等を1のパーティクル発生地点から発生する多数のパーティクルにパーティクルオブジェクトを割り当て、これらパーティクルオブジェクトの集合(パーティクル集合オブジェクト)として生成する。   In the present embodiment, a particle object is assigned to a large number of particles generated from one particle generation point, such as splashing, and is generated as a set of these particle objects (particle set object).

従って水しぶきに対してFOG効果を出すためには、パーティクル集合オブジェクトを構成する各パーティクルオブジェクトの頂点ごとにデプスキューイング処理が必要となるため、処理負荷が著しく増大することになる。   Therefore, in order to produce the FOG effect against the splash, a depth cueing process is required for each vertex of each particle object constituting the particle aggregate object, so that the processing load is remarkably increased.

そこで本実施の形態では、少ない処理負荷でFOG効果を出すために以下のような処理を行っている。   Therefore, in the present embodiment, the following processing is performed in order to produce the FOG effect with a small processing load.

図29はFOG効果の処理削減について説明するための図である。   FIG. 29 is a diagram for explaining processing reduction of the FOG effect.

610は水しぶきを表現するための第1のパーティクル集合オブジェクトであり、第1のパーティクル発生地点から発生したパーティクルにパーティクルオブジェクトを割り当てこれらパーティクルオブジェクトの集合として構成されている。ここで612及び614は第1のパーティクル集合オブジェクトに属する第1及び第2のパーティクルである。   Reference numeral 610 denotes a first particle set object for expressing splashes, and is configured as a set of particle objects by assigning particle objects to particles generated from the first particle generation point. Here, 612 and 614 are the first and second particles belonging to the first particle aggregate object.

また620は水しぶきを表現するための第2のパーティクル集合オブジェクトであり、第2のパーティクル発生地点から発生したパーティクルにパーティクルオブジェクトを割り当てこれらパーティクルオブジェクトの集合として構成されている。ここで622及び624は第2のパーティクル集合オブジェクトに属する第3及び第4のパーティクルである。   Reference numeral 620 denotes a second particle aggregate object for expressing splashes. The particle object is assigned to particles generated from the second particle generation point and is configured as a set of these particle objects. Here, 622 and 624 are the third and fourth particles belonging to the second particle aggregate object.

ここで本実施の形態では第1のパーティクル集合オブジェクト及び第2のパーティクル集合オブジェクトに水しぶきを表現するための基準色を設定する。この基準色は第1のパーティクル集合オブジェクトと第2のパーティクル集合オブジェクトで同じ色にしてもよいし、異なる色にしてもよい。   Here, in the present embodiment, a reference color for expressing splash is set in the first particle aggregate object and the second particle aggregate object. The reference color may be the same color for the first particle aggregate object and the second particle aggregate object, or may be different colors.

そして当該基準色と各パーティクル集合オブジェクトのパーティクル発生地点の奥行き値に基づきデプスキューング処理を行い、前記デプスキューング処理で得られた色をパーティクル集合オブジェクトのベースカラーとし、同一のパーティクル発生地点から発生したパーティクル集合に属する各パーティクルに対して前記ベースカラーを用いてデプスキューング効果を適用して画像生成処理を行う。   Then, the depth cueing process is performed based on the reference color and the depth value of the particle generation point of each particle aggregate object, and the color obtained by the depth cueing process is set as the base color of the particle aggregate object, from the same particle generation point. Image generation processing is performed by applying a depth cueing effect to each particle belonging to the generated particle set using the base color.

すなわち第1のパーティクル集合オブジェクト610に属する第1のパーティクル612及び第2のパーティクル614に対しては、第1のパーティクル集合オブジェクト610のベースカラーを用いてデプスキューング効果を適用して画像生成処理を行う。   In other words, image generation processing is applied to the first particles 612 and the second particles 614 belonging to the first particle aggregate object 610 by applying a depth cueing effect using the base color of the first particle aggregate object 610. I do.

また第2のパーティクル集合オブジェクト610に属する第3のパーティクル622及び第4のパーティクル624に対しては、第2のパーティクル集合オブジェクト620のベースカラーを用いてデプスキューング効果を適用して画像生成処理を行う。   The third particle 622 and the fourth particle 624 belonging to the second particle aggregate object 610 are applied with a depth queuing effect using the base color of the second particle aggregate object 620 to generate an image. I do.

従って第1のパーティクル集合オブジェクト及び第2のパーティクル集合オブジェクトを構成する各パーティクルに対してそれぞれにデプスキューング処理を行う場合に比べ大幅に処理を削減することができる。   Accordingly, the processing can be greatly reduced as compared with the case where the depth queuing processing is performed on each particle constituting the first particle aggregate object and the second particle aggregate object.

なおここでは説明を簡単にするために612、614、622、624をパーティクルとして話を進めたが、パーティクルに割り当てられたパーティクルオブジェクトの頂点であってもよい。   Here, for simplicity of explanation, the description has been made with 612, 614, 622, and 624 as particles, but it may be the vertex of the particle object assigned to the particle.

図30(A)(B)(C)は、本実施の形態で行うデプスキューング処理について説明するための図である。   30A, 30B, and 30C are diagrams for explaining the depth queuing process performed in this embodiment.

図30(A)はR(赤)についてのデプスキューング処理を説明するための図である。縦軸はR(赤)の値であり横軸はパーティクル発生地点の奥行き値(Z)である。また630はパーティクル集合オブジェクトに設定された基準色のRの値であり、640は背景色のRの値である。そして635は奥行き値に基づきベースカラーのRの値を求めるための関数曲線である。   FIG. 30A is a diagram for explaining the depth cueing process for R (red). The vertical axis represents the value of R (red), and the horizontal axis represents the depth value (Z) of the particle generation point. Reference numeral 630 is the R value of the reference color set for the particle aggregate object, and 640 is the R value of the background color. Reference numeral 635 denotes a function curve for obtaining the R value of the base color based on the depth value.

例えばパーティクル発生地点の奥行き値がZ1である場合にはベースカラーのRの値のR1となり、パーティクル発生地点の奥行き値がZ2である場合にはベースカラーのRの値のR2となる。   For example, when the depth value of the particle generation point is Z1, the base color R value is R1, and when the particle generation point depth value is Z2, the base color R value is R2.

図30(B)はG(緑)についてのデプスキューング処理を説明するための図である。縦軸はG(緑)の値であり横軸はパーティクル発生地点の奥行き値(Z)である。また650はパーティクル集合オブジェクトに設定された基準色のRの値であり、660は背景色のGの値である。そして655は奥行き値に基づきベースカラーのGの値を求めるための関数曲線である。   FIG. 30B is a diagram for explaining the depth cueing process for G (green). The vertical axis represents the value of G (green), and the horizontal axis represents the depth value (Z) at the particle generation point. Reference numeral 650 is an R value of the reference color set for the particle aggregate object, and 660 is a G value of the background color. Reference numeral 655 denotes a function curve for obtaining the G value of the base color based on the depth value.

例えばパーティクル発生地点の奥行き値がZ1である場合にはベースカラーのGの値のG1となり、パーティクル発生地点の奥行き値がZ2である場合にはベースカラーのGの値のG2となる。   For example, when the depth value at the particle generation point is Z1, the base color G value is G1, and when the particle generation point depth value is Z2, the base color G value is G2.

図30(C)はB(青)についてのデプスキューング処理を説明するための図である。縦軸は B(青)の値であり横軸はパーティクル発生地点の奥行き値(Z)である。また670はパーティクル集合オブジェクトに設定された基準色のBの値であり、680は背景色のBの値である。そして675は奥行き値に基づきベースカラーのBの値を求めるための関数曲線である。   FIG. 30C is a diagram for explaining the depth cueing process for B (blue). The vertical axis is the value of B (blue), and the horizontal axis is the depth value (Z) of the particle generation point. Reference numeral 670 denotes a B value of the reference color set in the particle aggregate object, and 680 denotes a B value of the background color. Reference numeral 675 denotes a function curve for obtaining the B value of the base color based on the depth value.

例えばパーティクル発生地点の奥行き値がZ1である場合にはベースカラーのBの値のB1となり、パーティクル発生地点の奥行き値がZ2である場合にはベースカラーのBの値のB2となる。   For example, when the depth value at the particle generation point is Z1, the base color B value is B1, and when the particle generation point depth value is Z2, the base color B value is B2.

(6)ポリゴン分割によるページング発生防止
例えばメモリ資源に制約のあるハードウエアを用いて画像生成を行う場合、VRAM(フレームバッファ)の実記憶領域の容量も限られている。このため大きなポリゴンをVRAM(フレームバッファ)に描画しようとするとページングが発生し処理時間が増大することになる。
(6) Prevention of paging by polygon division For example, when image generation is performed using hardware with limited memory resources, the capacity of a real storage area of a VRAM (frame buffer) is limited. For this reason, if a large polygon is drawn in a VRAM (frame buffer), paging occurs and the processing time increases.

そこで本実施の形態では、パーティクルオブジェクトの奥行き情報又は仮想カメラからの距離が大きくなった場合にパーティクルに割り当てるオブジェクトを構成するポリゴンの分割数を大きくすることでかかるページングの発生を防止している。   Therefore, in this embodiment, when the depth information of the particle object or the distance from the virtual camera is increased, the occurrence of such paging is prevented by increasing the number of polygons constituting the object assigned to the particle.

図31は本実施の形態のポリゴン分割の一例について説明するためのフローチャート図である。   FIG. 31 is a flowchart for explaining an example of polygon division according to this embodiment.

まず処理対象パーティクルの奥行き情報を取得する(ステップS910)。   First, the depth information of the processing target particle is acquired (step S910).

次に奥行き値に基づき分割数を変更するか否か判断し、変更する場合にはパーティクルオブジェクトを構成するポリゴンやスプライトを分割する処理を行う(ステップS920、S930)。   Next, it is determined whether or not to change the number of divisions based on the depth value, and in the case of changing, a process of dividing polygons and sprites constituting the particle object is performed (steps S920 and S930).

図32はパーティクルオブジェクトを構成するスプライト(板ポリゴン)を分割する様子を表した図である。710は分割前のスプライト(板ポリゴン)であり、720は分割後のスプライト(板ポリゴン)である。   FIG. 32 shows a state in which sprites (plate polygons) constituting the particle object are divided. 710 is a sprite (plate polygon) before division, and 720 is a sprite (plate polygon) after division.

分割数を変更するかいなかは、例えば奥行き情報が所定の値になったかいなかによって決めてもよいし、例えば奥行き情報に基づきパーティクルのソーティング処理を行い、手前から所定個数に属するパーティクルに割り当てられたオブジェクトに当該ポリゴンやスプライトが属するか否かによって決めてもよい。   Whether the number of divisions should be changed may be determined, for example, depending on whether the depth information has reached a predetermined value, or, for example, particle sorting processing is performed based on the depth information and assigned to particles belonging to the predetermined number from the front. It may be determined depending on whether the polygon or sprite belongs to the object.

3.ハードウェア構成
次に、本実施形態を実現できるハードウェアの構成の一例について図33を用いて説明する。
3. Hardware Configuration Next, an example of a hardware configuration capable of realizing the present embodiment will be described with reference to FIG.

メインプロセッサ900は、CD982(情報記憶媒体)に格納されたプログラム、通信インターフェース990を介して転送されたプログラム、或いはROM950(情報記憶媒体の1つ)に格納されたプログラムなどに基づき動作し、ゲーム処理、画像処理、音処理などの種々の処理を実行する。   The main processor 900 operates based on a program stored in the CD 982 (information storage medium), a program transferred via the communication interface 990, or a program stored in the ROM 950 (one of information storage media). Various processes such as processing, image processing, and sound processing are executed.

コプロセッサ902は、メインプロセッサ900の処理を補助するものであり、高速並列演算が可能な積和算器や除算器を有し、マトリクス演算(ベクトル演算)を高速に実行する。例えば、オブジェクトを移動させたり動作(モーション)させるための物理シミュレーションに、マトリクス演算などの処理が必要な場合には、メインプロセッサ900上で動作するプログラムが、その処理をコプロセッサ902に指示(依頼)する。   The coprocessor 902 assists the processing of the main processor 900, has a product-sum calculator and a divider capable of high-speed parallel calculation, and executes matrix calculation (vector calculation) at high speed. For example, if a physical simulation for moving or moving an object requires processing such as matrix operation, a program operating on the main processor 900 instructs (requests) the processing to the coprocessor 902. )

ジオメトリプロセッサ904は、座標変換、透視変換、光源計算、曲面生成などのジオメトリ処理を行うものであり、高速並列演算が可能な積和算器や除算器を有し、マトリクス演算(ベクトル演算)を高速に実行する。例えば、座標変換、透視変換、光源計算などの処理を行う場合には、メインプロセッサ900で動作するプログラムが、その処理をジオメトリプロセッサ904に指示する。   The geometry processor 904 performs geometry processing such as coordinate transformation, perspective transformation, light source calculation, and curved surface generation, has a product-sum calculator and a divider capable of high-speed parallel computation, and performs matrix computation (vector computation). Run fast. For example, when processing such as coordinate transformation, perspective transformation, and light source calculation is performed, a program operating on the main processor 900 instructs the geometry processor 904 to perform the processing.

データ伸張プロセッサ906は、圧縮された画像データや音データを伸張するデコード処理を行ったり、メインプロセッサ900のデコード処理をアクセレートする処理を行う。これにより、オープニング画面、インターミッション画面、エンディング画面、或いはゲーム画面などにおいて、所与の画像圧縮方式で圧縮された動画像を表示できるようになる。なお、デコード処理の対象となる画像データや音データは、ROM950、CD982に格納されたり、或いは通信インターフェース990を介して外部から転送される。   The data decompression processor 906 performs a decoding process for decompressing the compressed image data and sound data, and a process for accelerating the decoding process of the main processor 900. As a result, a moving image compressed by a given image compression method can be displayed on an opening screen, an intermission screen, an ending screen, a game screen, or the like. Note that the image data and sound data to be decoded are stored in the ROM 950 and the CD 982 or transferred from the outside via the communication interface 990.

描画プロセッサ910は、ポリゴンや曲面などのプリミティブ面で構成されるオブジェクトの描画(レンダリング)処理を高速に実行するものである。オブジェクトの描画の際には、メインプロセッサ900は、DMAコントローラ970の機能を利用して、オブジェクトデータを描画プロセッサ910に渡すと共に、必要であればテクスチャ記憶部924にテクスチャを転送する。すると、描画プロセッサ910は、これらのオブジェクトデータやテクスチャに基づいて、Zバッファなどを利用した陰面消去を行いながら、オブジェクトをフレームバッファ922に高速に描画する。また、描画プロセッサ910は、αブレンディング(半透明処理)、デプスキューイング、ミップマッピング、フォグ処理、トライリニア・フィルタリング、アンチエリアシング、シェーディング処理なども行うことができる。そして、1フレーム分の画像がフレームバッファ922に書き込まれると、その画像はディスプレイ912に表示される。   The drawing processor 910 performs drawing (rendering) processing of an object composed of primitive surfaces such as polygons and curved surfaces at high speed. When drawing an object, the main processor 900 uses the function of the DMA controller 970 to pass the object data to the drawing processor 910 and transfer the texture to the texture storage unit 924 if necessary. Then, the rendering processor 910 renders the object in the frame buffer 922 at high speed while performing hidden surface removal using a Z buffer or the like based on the object data and texture. The drawing processor 910 can also perform α blending (translucent processing), depth cueing, mip mapping, fog processing, trilinear filtering, anti-aliasing, shading processing, and the like. When an image for one frame is written in the frame buffer 922, the image is displayed on the display 912.

サウンドプロセッサ930は、多チャンネルのADPCM音源などを内蔵し、BGM、効果音、音声などの高品位のゲーム音を生成する。生成されたゲーム音は、スピーカ932から出力される。   The sound processor 930 includes a multi-channel ADPCM sound source and the like, and generates high-quality game sounds such as BGM, sound effects, and sounds. The generated game sound is output from the speaker 932.

ゲームコントローラ942からの操作データや、メモリカード944からのセーブデータ、個人データは、シリアルインターフェース940を介してデータ転送される。   Operation data from the game controller 942, save data from the memory card 944, and personal data are transferred via the serial interface 940.

ROM950にはシステムプログラムなどが格納される。なお、業務用ゲームシステムの場合には、ROM950が情報記憶媒体として機能し、ROM950に各種プログラムが格納されることになる。なお、ROM950の代わりにハードディスクを利用するようにしてもよい。   The ROM 950 stores system programs and the like. In the case of an arcade game system, the ROM 950 functions as an information storage medium, and various programs are stored in the ROM 950. A hard disk may be used instead of the ROM 950.

RAM960は、各種プロセッサの作業領域として用いられる。   The RAM 960 is used as a work area for various processors.

DMAコントローラ970は、プロセッサ、メモリ(RAM、VRAM、ROM等)間でのDMA転送を制御するものである。   The DMA controller 970 controls DMA transfer between the processor and memory (RAM, VRAM, ROM, etc.).

CDドライブ980は、プログラム、画像データ、或いは音データなどが格納されるCD982(情報記憶媒体)を駆動し、これらのプログラム、データへのアクセスを可能にする。   The CD drive 980 drives a CD 982 (information storage medium) in which programs, image data, sound data, and the like are stored, and enables access to these programs and data.

通信インターフェース990は、ネットワークを介して外部との間でデータ転送を行うためのインターフェースである。この場合に、通信インターフェース990に接続されるネットワークとしては、通信回線(アナログ電話回線、ISDN)、高速シリアルバスなどを考えることができる。そして、通信回線を利用することでインターネットを介したデータ転送が可能になる。また、高速シリアルバスを利用することで、他のゲームシステムとの間でのデータ転送が可能になる。   The communication interface 990 is an interface for transferring data to and from the outside via a network. In this case, as a network connected to the communication interface 990, a communication line (analog telephone line, ISDN), a high-speed serial bus, or the like can be considered. By using a communication line, data transfer via the Internet becomes possible. Further, by using the high-speed serial bus, data transfer with other game systems becomes possible.

なお、本発明の各手段は、その全てを、ハードウェアのみにより実行してもよいし、情報記憶媒体に格納されるプログラムや通信インターフェースを介して配信されるプログラムのみにより実行してもよい。或いは、ハードウェアとプログラムの両方により実行してもよい。   All of the means of the present invention may be executed by hardware alone, or may be executed only by a program stored in an information storage medium or a program distributed via a communication interface. Alternatively, it may be executed by both hardware and a program.

そして、本発明の各手段をハードウェアとプログラムの両方により実行する場合には、情報記憶媒体には、本発明の各手段をハードウェアを利用して実行するためのプログラムが格納されることになる。より具体的には、上記プログラムが、ハードウェアである各プロセッサ902、904、906、910、930等に処理を指示すると共に、必要であればデータを渡す。そして、各プロセッサ902、904、906、910、930等は、その指示と渡されたデータとに基づいて、本発明の各手段を実行することになる。   When each means of the present invention is executed by both hardware and a program, a program for executing each means of the present invention using hardware is stored in the information storage medium. Become. More specifically, the program instructs each processor 902, 904, 906, 910, 930, etc., which is hardware, and passes data if necessary. Each processor 902, 904, 906, 910, 930, etc. executes each means of the present invention based on the instruction and the passed data.

図34(A)に、本実施形態を業務用ゲームシステムに適用した場合の例を示す。プレーヤは、ディスプレイ1100上に映し出されたゲーム画像を見ながら、レバー1102、ボタン1104等を操作してゲームを楽しむ。内蔵されるシステムボード(サーキットボード)1106には、各種プロセッサ、各種メモリなどが実装される。そして、本発明の各手段を実行するための情報(プログラム或いはデータ)は、システムボード1106上の情報記憶媒体であるメモリ1108に格納される。以下、この情報を格納情報と呼ぶ。   FIG. 34A shows an example when the present embodiment is applied to an arcade game system. The player enjoys the game by operating the lever 1102, the button 1104, and the like while viewing the game image displayed on the display 1100. Various processors and various memories are mounted on the built-in system board (circuit board) 1106. Information (program or data) for executing each means of the present invention is stored in a memory 1108 which is an information storage medium on the system board 1106. Hereinafter, this information is referred to as storage information.

図34(B)に、本実施形態を家庭用のゲームシステムに適用した場合の例を示す。プレーヤはディスプレイ1200に映し出されたゲーム画像を見ながら、ゲームコントローラ1202、1204を操作してゲームを楽しむ。この場合、上記格納情報は、本体システムに着脱自在な情報記憶媒体であるCD1206、或いはメモリカード1208、1209等に格納されている。   FIG. 34B shows an example in which the present embodiment is applied to a home game system. The player enjoys the game by operating the game controllers 1202 and 1204 while viewing the game image displayed on the display 1200. In this case, the stored information is stored in the CD 1206, which is an information storage medium that is detachable from the main system, or in the memory cards 1208, 1209, and the like.

図34(C)に、ホスト装置1300と、このホスト装置1300とネットワーク1302(LANのような小規模ネットワークや、インターネットのような広域ネットワーク)を介して接続される端末1304-1〜1304-nとを含むシステムに本実施形態を適用した場合の例を示す。この場合、上記格納情報は、例えばホスト装置1300が制御可能な磁気ディスク装置、磁気テープ装置、メモリ等の情報記憶媒体1306に格納されている。端末1304-1〜1304-nが、スタンドアロンでゲーム画像、ゲーム音を生成できるものである場合には、ホスト装置1300からは、ゲーム画像、ゲーム音を生成するためのゲームプログラム等が端末1304-1〜1304-nに配送される。一方、スタンドアロンで生成できない場合には、ホスト装置1300がゲーム画像、ゲーム音を生成し、これを端末1304-1〜1304-nに伝送し端末において出力することになる。   FIG. 34C shows a host device 1300 and terminals 1304-1 to 1304-n connected to the host device 1300 via a network 1302 (a small-scale network such as a LAN or a wide area network such as the Internet). An example of applying this embodiment to a system including In this case, the stored information is stored in an information storage medium 1306 such as a magnetic disk device, a magnetic tape device, or a memory that can be controlled by the host device 1300, for example. When the terminals 1304-1 to 1304-n can generate game images and game sounds stand-alone, the host device 1300 receives a game program and the like for generating game images and game sounds from the terminal 1304-. 1 to 1304-n. On the other hand, if it cannot be generated stand-alone, the host device 1300 generates a game image and a game sound, which is transmitted to the terminals 1304-1 to 1304-n and output at the terminal.

なお、図34(C)の構成の場合に、本発明の各手段を、ホスト装置(サーバー)と端末とで分散して実行するようにしてもよい。また、本発明の各手段を実行するための上記格納情報を、ホスト装置(サーバー)の情報記憶媒体と端末の情報記憶媒体に分散して格納するようにしてもよい。   In the case of the configuration shown in FIG. 34C, each unit of the present invention may be executed in a distributed manner between the host device (server) and the terminal. The storage information for executing each means of the present invention may be distributed and stored in the information storage medium of the host device (server) and the information storage medium of the terminal.

またネットワークに接続する端末は、家庭用ゲームシステムであってもよいし業務用ゲームシステムであってもよい。そして、業務用ゲームシステムをネットワークに接続する場合には、業務用ゲームシステムとの間で情報のやり取りが可能であると共に家庭用ゲームシステムとの間でも情報のやり取りが可能な携帯型情報記憶装置(メモリカード、携帯型ゲーム装置)を用いることが望ましい。   The terminal connected to the network may be a home game system or an arcade game system. When connecting the arcade game system to a network, a portable information storage device capable of exchanging information with the arcade game system and exchanging information with the home game system. It is desirable to use (memory card, portable game device).

なお本発明は、上記実施形態で説明したものに限らず、種々の変形実施が可能である。   The present invention is not limited to that described in the above embodiment, and various modifications can be made.

例えば、本発明のうち従属請求項に係る発明においては、従属先の請求項の構成要件の一部を省略する構成とすることもできる。また、本発明の1の独立請求項に係る発明の要部を、他の独立請求項に従属させることもできる。   For example, in the invention according to the dependent claims of the present invention, a part of the constituent features of the dependent claims can be omitted. Moreover, the principal part of the invention according to one independent claim of the present invention can be made dependent on another independent claim.

また、本発明の手法により表現できる表示物は水しぶきには限定されず、例えば、花火、爆発、稲光、光るアメーバ等、形が不定形に変形しながら光を照射する種々の表示物を表現できる。   In addition, the display object that can be expressed by the method of the present invention is not limited to splashing, and can display various display objects that irradiate light while deforming into an indefinite shape, such as fireworks, explosions, lightning, and shining amoeba. .

また、パーティクルの制御手法も本実施の形態で説明した手法に限定されるものではない。   Further, the particle control method is not limited to the method described in the present embodiment.

また、本実施形態では、オブジェクトがポリゴンで構成される場合について主に説明したが、自由曲面などの他の形態のプリミティブ面でオブジェクトが構成される場合も本発明の範囲に含まれる。   Further, in the present embodiment, the case where the object is composed of polygons is mainly described, but the case where the object is composed of other forms of primitive surfaces such as a free-form surface is also included in the scope of the present invention.

また本発明は種々のゲーム(格闘ゲーム、シューティングゲーム、ロボット対戦ゲーム、スポーツゲーム、競争ゲーム、ロールプレイングゲーム、音楽演奏ゲーム、ダンスゲーム等)に適用できる。   The present invention can also be applied to various games (such as fighting games, shooting games, robot fighting games, sports games, competitive games, role playing games, music playing games, dance games, etc.).

また本発明は、業務用ゲームシステム、家庭用ゲームシステム、多数のプレーヤが参加する大型アトラクションシステム、シミュレータ、マルチメディア端末、ゲーム画像を生成するシステムボード等の種々のゲームシステム(画像生成システム)に適用できる。   The present invention is also applicable to various game systems (image generation systems) such as a commercial game system, a home game system, a large attraction system in which a large number of players participate, a simulator, a multimedia terminal, and a system board for generating game images. Applicable.

100 処理部
110 ゲーム処理部
120 画像生成部
130 描画順序決定処理部
132 パーティクル水増し処理部
134 パーティクル負荷軽減処理部
140 描画部
150 音生成部
160 操作部
170 記憶部
172 メインメモリ
174 フレームバッファ
180 情報記憶媒体
190 表示部
192 音出力部
194 携帯型情報記憶装置
196 通信部
100 processor 110 game processor 120 image generator 130 drawing order determination processor 132 particle padding processor 134 particle load reduction processor 140 drawing unit 150 sound generator 160 operating unit 170 storage unit 172 main memory 174 frame buffer 180 information storage Medium 190 Display unit 192 Sound output unit 194 Portable information storage device 196 Communication unit

Claims (33)

画像生成を行うシステムであって、
画像生成時の処理負荷に関する情報に基づき、パーティクル発生地点の数、パーティクル数及びパーティクルの寿命の少なくともひとつを変更する手段と、
パーティクルを用いてオブジェクト空間の所与の視点から見える画像を生成する手段と、
含むことを特徴とする画像生成システム。
An image generation system,
A means for changing at least one of the number of particle generation points, the number of particles, and the lifetime of particles based on information on a processing load at the time of image generation;
Means for generating an image that is visible from a given viewpoint in the object space using particles;
An image generation system comprising:
請求項1において、
前記パーティクル数は、一画面に存在するパーティクル数又は所与の発生地点から発生させるパーティクル数であることを特徴とする画像生成システム。
In claim 1,
The number of particles is the number of particles existing on one screen or the number of particles generated from a given generation point.
請求項1乃至2のいずれかにおいて、
パーティクルの奥行き情報に基づき仮想カメラから離れたパーティクルから優先して寿命を短くすることにより、処理負荷を軽減することを特徴とする画像生成システム。
In any one of Claims 1 thru | or 2.
An image generation system that reduces processing load by preferentially shortening the lifetime of particles that are away from the virtual camera based on particle depth information.
請求項1乃至3のいずれかにおいて、
パーティクルの発生地点の奥行き情報に基づき仮想カメラから離れたパーティクル発生地点から発生するパーティクル集合から優先して画像生成の対象外とすることにより、処理負荷を軽減することを特徴とする画像生成システム。
In any one of Claims 1 thru | or 3,
An image generation system which reduces processing load by preferentially excluding a set of particles generated from a particle generation point away from a virtual camera based on depth information of a particle generation point, and excluding the image generation target.
請求項1乃至4のいずれかにおいて、
パーティクルの発生地点の奥行き情報に基づき仮想カメラから離れたパーティクル発生地点から優先して発生させるパーティクルの数を削減することにより、処理負荷を軽減することを特徴とする画像生成システム。
In any one of Claims 1 thru | or 4,
An image generation system that reduces processing load by reducing the number of particles that are generated preferentially from a particle generation point remote from a virtual camera based on depth information of the particle generation point.
請求項1乃至5のいずれかにおいて、
パーティクルの奥行き情報に基づき仮想カメラから離れたパーティクルに割り当てるオブジェクトから優先してオブジェクトの精密度を下げることにより、処理負荷を軽減することを特徴とする画像生成システム。
In any one of Claims 1 thru | or 5,
An image generation system that reduces processing load by lowering the precision of an object in preference to an object assigned to a particle far from a virtual camera based on particle depth information.
請求項1乃至6のいずれかにおいて、
パーティクル発生地点の奥行き情報に基づき仮想カメラから離れたパーティクル発生地点から発生したパーティクルに割り当てるオブジェクトから優先してオブジェクトの精密度を下げることにより、処理負荷を軽減することを特徴とする画像生成システム。
In any one of Claims 1 thru | or 6.
An image generation system that reduces processing load by lowering the precision of an object in preference to an object assigned to a particle generated from a particle generation point remote from the virtual camera based on depth information of the particle generation point.
画像生成を行うシステムであって、
パーティクル又はパーティクルに割り当てたオブジェクトに与えられた透明度が所定値より小さくなった場合には、当該パーティクル又はパーティクルに割り当てたオブジェクトを画像生成の対象から除外する手段と、
パーティクルを用いてオブジェクト空間の所与の視点から見える画像を生成する手段と、
を含むことを特徴とする画像生成システム。
An image generation system,
Means for excluding the particle or the object assigned to the particle from the target of image generation when the transparency given to the particle or the object assigned to the particle is smaller than a predetermined value;
Means for generating an image that is visible from a given viewpoint in the object space using particles;
An image generation system comprising:
画像生成を行うシステムであって、
パーティクルの高さが所定の値になったらパーティクル又はパーティクルに割り当てたオブジェクトの消滅処理を行う手段と、
パーティクルを用いてオブジェクト空間の所与の視点から見える画像を生成する手段と、
を含むことを特徴とする画像生成システム。
An image generation system,
Means for performing the annihilation process of the particle or the object assigned to the particle when the height of the particle reaches a predetermined value;
Means for generating an image that is visible from a given viewpoint in the object space using particles;
An image generation system comprising:
請求項9において、
前記消滅処理には、所定時間経過後にパーティクル又はパーティクルに割り当てたオブジェクトが消滅する場合も含むことを特徴とする画像生成システム。
In claim 9,
The annihilation process includes a case where a particle or an object assigned to the particle annihilates after a predetermined time has elapsed.
画像生成を行うシステムであって、
パーティクルの奥行き情報に基づきその前に視界をさえぎるオブジェクトがあるか否か判断し、視界をさえぎるオブジェクトがある場合には当該パーティクル又はパーティクルに割り当てたオブジェクトを画像生成の対象から除外する手段と、
パーティクルを用いてオブジェクト空間の所与の視点から見える画像を生成する手段と、
を含むことを特徴とする画像生成システム。
An image generation system,
Based on the depth information of the particle, it is determined whether there is an object that blocks the field of vision in front of it, and when there is an object that blocks the field of view, the means to exclude the particle or the object assigned to the particle from the target of image generation,
Means for generating an image that is visible from a given viewpoint in the object space using particles;
An image generation system comprising:
画像生成を行うシステムであって、
同一のパーティクル発生地点から発生したパーティクル集合によって表現するパーティクル集合オブジェクトに対して設定された基準色に対してパーティクル発生地点の奥行き情報に基づきデプスキューング処理を行う手段と、
前記デプスキューング処理で得られた色をパーティクル集合オブジェクトのベースカラーとし、同一のパーティクル発生地点から発生したパーティクル集合に属する各パーティクルに対して前記ベースカラーを用いてデプスキューング効果を適用して画像生成処理を行う手段と、
を含むことを特徴とする画像生成システム。
An image generation system,
Means for performing depth cueing processing based on depth information of the particle generation point with respect to a reference color set for the particle set object represented by the particle set generated from the same particle generation point;
The color obtained by the depth cueing process is used as the base color of the particle set object, and the depth cueing effect is applied to each particle belonging to the particle set generated from the same particle generation point using the base color. Means for performing image generation processing;
An image generation system comprising:
画像生成を行うシステムであって、
パーティクルオブジェクトの奥行き情報、仮想カメラに対する位置関係及びパーティクルオブジェクトを構成するプリミティブの画面に占める描画面積の割合の少なくともひとつに基づきパーティクルオブジェクトを構成するプリミティブの分割数を制御する手段と、
パーティクルを用いてオブジェクト空間の所与の視点から見える画像を生成する手段と、
を含むことを特徴とする画像生成システム。
An image generation system,
Means for controlling the number of divisions of the primitive constituting the particle object based on at least one of the depth information of the particle object, the positional relationship with the virtual camera, and the ratio of the drawing area in the screen of the primitive constituting the particle object;
Means for generating an image that is visible from a given viewpoint in the object space using particles;
An image generation system comprising:
請求項13において、
パーティクルオブジェクトの奥行き情報又は仮想カメラからの距離が大きくなった場合にパーティクルオブジェクトを構成するプリミティブの分割数を大きくすることを特徴とする画像生成システム。
In claim 13,
An image generation system characterized by increasing the number of divisions of primitives constituting a particle object when the depth information of the particle object or the distance from the virtual camera increases.
請求項13において、
パーティクルオブジェクトを構成するプリミティブの画面に占める描画面積の割合が大きくなった場合にはパーティクルを構成するプリミティブの分割数を大きくすることを特徴とする画像生成システム。
In claim 13,
An image generation system characterized by increasing the number of divisions of primitives constituting particles when the ratio of the drawing area to the screen of primitives constituting the particle object increases.
請求項13乃至15のいずれかにおいて、
パーティクルに割り当てたプリミティブを再分割することで分割数を大きくすることを特徴とする画像生成システム。
In any one of Claims 13 thru | or 15,
An image generation system characterized in that the number of divisions is increased by subdividing primitives assigned to particles.
コンピュータが使用可能なプログラムであって、
画像生成時の処理負荷に関する情報に基づき、パーティクル発生地点の数、パーティクル数及びパーティクルの寿命の少なくともひとつを変更する手段と、
パーティクルを用いてオブジェクト空間の所与の視点から見える画像を生成する手段と、
をコンピュータに実現させることを特徴とするプログラム。
A computer usable program,
A means for changing at least one of the number of particle generation points, the number of particles, and the lifetime of particles based on information on a processing load at the time of image generation;
Means for generating an image that is visible from a given viewpoint in the object space using particles;
A program characterized by causing a computer to realize.
請求項17において、
前記パーティクル数は、一画面に存在するパーティクル数又は所与の発生地点から発生させるパーティクル数であることを特徴とするプログラム。
In claim 17,
The number of particles is the number of particles existing on one screen or the number of particles generated from a given generation point.
請求項17乃至18のいずれかにおいて、
パーティクルの奥行き情報に基づき仮想カメラから離れたパーティクルから優先して寿命を短くすることにより、処理負荷を軽減することを特徴とするプログラム。
In any of claims 17 to 18,
A program characterized by reducing processing load by shortening the lifetime in preference to particles far from the virtual camera based on particle depth information.
請求項17乃至19のいずれかにおいて、
パーティクルの発生地点の奥行き情報に基づき仮想カメラから離れたパーティクル発生地点から発生するパーティクル集合から優先して画像生成の対象外とすることにより、処理負荷を軽減することを特徴とするプログラム。
In any of claims 17 to 19,
A program that reduces processing load by preferentially excluding a set of particles generated from a particle generation point away from a virtual camera based on depth information of a particle generation point, and excluding it from image generation.
請求項17乃至20のいずれかにおいて、
パーティクルの発生地点の奥行き情報に基づき仮想カメラから離れたパーティクル発生地点から優先して発生させるパーティクルの数を削減することにより、処理負荷を軽減することを特徴とするプログラム。
In any one of claims 17 to 20,
A program that reduces processing load by reducing the number of particles that are generated preferentially from particle generation points far from the virtual camera based on depth information of particle generation points.
請求項17乃至21のいずれかにおいて、
パーティクルの奥行き情報に基づき仮想カメラから離れたパーティクルに割り当てるオブジェクトから優先してオブジェクトの精密度を下げることにより、処理負荷を軽減することを特徴とするプログラム。
A device according to any one of claims 17 to 21.
A program characterized by reducing processing load by lowering the precision of an object in preference to an object assigned to a particle away from a virtual camera based on particle depth information.
請求項17乃至22のいずれかにおいて、
パーティクル発生地点の奥行き情報に基づき仮想カメラから離れたパーティクル発生地点から発生したパーティクルに割り当てるオブジェクトから優先してオブジェクトの精密度を下げることにより、処理負荷を軽減することを特徴とするプログラム。
In any of claims 17 to 22,
A program that reduces processing load by lowering the precision of an object in preference to an object assigned to a particle generated from a particle generation point remote from the virtual camera based on depth information of the particle generation point.
コンピュータが使用可能なプログラムであって、
パーティクル又はパーティクルに割り当てたオブジェクトに与えられた透明度が所定値より小さくなった場合には、当該パーティクル又はパーティクルに割り当てたオブジェクトを画像生成の対象から除外する手段と、
パーティクルを用いてオブジェクト空間の所与の視点から見える画像を生成する手段と、
をコンピュータに実現させることを特徴とするプログラム。
A computer usable program,
Means for excluding the particle or the object assigned to the particle from the target of image generation when the transparency given to the particle or the object assigned to the particle is smaller than a predetermined value;
Means for generating an image that is visible from a given viewpoint in the object space using particles;
A program characterized by causing a computer to realize.
コンピュータが使用可能なプログラムであって、
パーティクルの高さが所定の値になったらパーティクル又はパーティクルに割り当てたオブジェクトの消滅処理を行う手段と、
パーティクルを用いてオブジェクト空間の所与の視点から見える画像を生成する手段と、
をコンピュータに実現させることを特徴とするプログラム。
A computer usable program,
Means for performing the annihilation process of the particle or the object assigned to the particle when the height of the particle reaches a predetermined value;
Means for generating an image that is visible from a given viewpoint in the object space using particles;
A program characterized by causing a computer to realize.
請求項25において、
前記消滅処理には、所定時間経過後にパーティクル又はパーティクルに割り当てたオブジェクトが消滅する場合も含むことを特徴とするプログラム。
In claim 25,
The annihilation process includes a case where a particle or an object assigned to the particle annihilates after a predetermined time has elapsed.
コンピュータが使用可能なプログラムであって、
パーティクルの奥行き情報に基づきその前に視界をさえぎるオブジェクトがあるか否か判断し、視界をさえぎるオブジェクトがある場合には当該パーティクル又はパーティクルに割り当てたオブジェクトを画像生成の対象から除外する手段と、
パーティクルを用いてオブジェクト空間の所与の視点から見える画像を生成する手段と、
をコンピュータに実現させることを特徴とするプログラム。
A computer usable program,
Based on the depth information of the particle, it is determined whether there is an object that blocks the field of vision in front of it, and when there is an object that blocks the field of view, the means to exclude the particle or the object assigned to the particle from the target of image generation,
Means for generating an image that is visible from a given viewpoint in the object space using particles;
A program characterized by causing a computer to realize.
コンピュータが使用可能なプログラムであって、
同一のパーティクル発生地点から発生したパーティクル集合によって表現するパーティクル集合オブジェクトに対して設定された基準色に対してパーティクル発生地点の奥行き情報に基づきデプスキューング処理を行う手段と、
前記デプスキューング処理で得られた色をパーティクル集合オブジェクトのベースカラーとし、同一のパーティクル発生地点から発生したパーティクル集合に属する各パーティクルに対して前記ベースカラーを用いてデプスキューング効果を適用して画像生成処理を行う手段と、
をコンピュータに実現させることを特徴とするプログラム。
A computer usable program,
Means for performing depth cueing processing based on depth information of the particle generation point with respect to a reference color set for the particle set object represented by the particle set generated from the same particle generation point;
The color obtained by the depth cueing process is used as the base color of the particle set object, and the depth cueing effect is applied to each particle belonging to the particle set generated from the same particle generation point using the base color. Means for performing image generation processing;
A program characterized by causing a computer to realize.
コンピュータが使用可能なプログラムであって、
パーティクルオブジェクトの奥行き情報、仮想カメラに対する位置関係及びパーティクルオブジェクトを構成するプリミティブの画面に占める描画面積の割合の少なくともひとつに基づきパーティクルオブジェクトを構成するプリミティブの分割数を制御する手段と、
パーティクルを用いてオブジェクト空間の所与の視点から見える画像を生成する手段と、
をコンピュータに実現させることを特徴とするプログラム。
A computer usable program,
Means for controlling the number of divisions of the primitive constituting the particle object based on at least one of the depth information of the particle object, the positional relationship with the virtual camera, and the ratio of the drawing area in the screen of the primitive constituting the particle object;
Means for generating an image that is visible from a given viewpoint in the object space using particles;
A program characterized by causing a computer to realize.
請求項29において、
パーティクルオブジェクトの奥行き情報又は仮想カメラからの距離が大きくなった場合にパーティクルオブジェクトを構成するプリミティブの分割数を大きくすることを特徴とするプログラム。
In claim 29,
A program for increasing the number of divisions of primitives constituting a particle object when the depth information of the particle object or the distance from the virtual camera increases.
請求項29において、
パーティクルオブジェクトを構成するプリミティブの画面に占める描画面積の割合が大きくなった場合にはパーティクルを構成するプリミティブの分割数を大きくすることを特徴とするプログラム。
In claim 29,
A program characterized by increasing the number of divisions of primitives constituting particles when the ratio of the drawing area to the screen of primitives constituting the particle object increases.
請求項29乃至31のいずれかにおいて、
パーティクルに割り当てたプリミティブを再分割することで分割数を大きくすることを特徴とするプログラム。
Any one of claims 29 to 31
A program characterized by increasing the number of divisions by subdividing primitives assigned to particles.
コンピュータにより使用可能な情報記憶媒体であって、請求項17乃至32のいずれかのプログラムを含むことを特徴とする情報記憶媒体。   An information storage medium usable by a computer, comprising the program according to any one of claims 17 to 32.
JP2010258979A 2010-11-19 2010-11-19 Image generation system, program, and information storage medium Pending JP2011076620A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010258979A JP2011076620A (en) 2010-11-19 2010-11-19 Image generation system, program, and information storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010258979A JP2011076620A (en) 2010-11-19 2010-11-19 Image generation system, program, and information storage medium

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2001005781A Division JP4656615B2 (en) 2001-01-12 2001-01-12 Image generation system, program, and information storage medium

Publications (1)

Publication Number Publication Date
JP2011076620A true JP2011076620A (en) 2011-04-14

Family

ID=44020477

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010258979A Pending JP2011076620A (en) 2010-11-19 2010-11-19 Image generation system, program, and information storage medium

Country Status (1)

Country Link
JP (1) JP2011076620A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023065947A1 (en) * 2021-10-18 2023-04-27 北京字节跳动网络技术有限公司 Special effects processing method, and device

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09231400A (en) * 1996-02-20 1997-09-05 Namco Ltd Method and device for synthesizing picture
WO2000002165A1 (en) * 1998-07-03 2000-01-13 Sega Enterprises, Ltd. Method for generating polygon data and image display using the same
JP2000039130A (en) * 1998-05-19 2000-02-08 Nkk Corp Refuse incinerator with operation supporting device
JP2000215323A (en) * 1995-07-07 2000-08-04 Namco Ltd Game system and image compositing method
JP2000242807A (en) * 1999-02-23 2000-09-08 Fujitsu Ltd Three-dimensional polygon display device

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000215323A (en) * 1995-07-07 2000-08-04 Namco Ltd Game system and image compositing method
JPH09231400A (en) * 1996-02-20 1997-09-05 Namco Ltd Method and device for synthesizing picture
JP2000039130A (en) * 1998-05-19 2000-02-08 Nkk Corp Refuse incinerator with operation supporting device
WO2000002165A1 (en) * 1998-07-03 2000-01-13 Sega Enterprises, Ltd. Method for generating polygon data and image display using the same
JP2000242807A (en) * 1999-02-23 2000-09-08 Fujitsu Ltd Three-dimensional polygon display device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023065947A1 (en) * 2021-10-18 2023-04-27 北京字节跳动网络技术有限公司 Special effects processing method, and device

Similar Documents

Publication Publication Date Title
JP2006285509A (en) Program, information storage medium, and image generation system
JP4610748B2 (en) Image generation system, program, and information storage medium
JP4656615B2 (en) Image generation system, program, and information storage medium
JP4651527B2 (en) Program, information storage medium, and image generation system
JP4502678B2 (en) Program, information storage medium, and image generation system
JP4749198B2 (en) Program, information storage medium, and image generation system
JP2009129167A (en) Program, information storage medium, and image generation system
JP4651436B2 (en) Program, information storage medium, and image generation system
JP4743770B2 (en) Image generation system, program, and information storage medium
JP4698032B2 (en) Image generation system, program, and information storage medium
JP4721382B2 (en) Image generation system, program, and information storage medium
JP2003044876A (en) Image generation system, program, and information storage medium
JP2007272388A (en) Program, information storage medium and image generation system
JP2011076620A (en) Image generation system, program, and information storage medium
JP2005209217A (en) Game system and information storage medium
JP2006318196A (en) Program, information storage medium and image generation system
JP4592087B2 (en) Image generation system, program, and information storage medium
JP4632530B2 (en) GAME SYSTEM, PROGRAM, AND INFORMATION STORAGE MEDIUM
JP4592039B2 (en) GAME SYSTEM AND INFORMATION STORAGE MEDIUM
JP2002329213A (en) Image generation system, program, and information storage medium
JP4624527B2 (en) GAME SYSTEM AND INFORMATION STORAGE MEDIUM
JP4728510B2 (en) Image generation system, program, and information storage medium
JP4476040B2 (en) Program, information storage medium, and image generation system
JP2010231364A (en) Image generation system, program and information recording medium
JP3538392B2 (en) GAME SYSTEM, PROGRAM, AND INFORMATION STORAGE MEDIUM

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120227

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120307

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20120627