JP4680670B2 - Program, information storage medium, and image generation system - Google Patents

Program, information storage medium, and image generation system Download PDF

Info

Publication number
JP4680670B2
JP4680670B2 JP2005139928A JP2005139928A JP4680670B2 JP 4680670 B2 JP4680670 B2 JP 4680670B2 JP 2005139928 A JP2005139928 A JP 2005139928A JP 2005139928 A JP2005139928 A JP 2005139928A JP 4680670 B2 JP4680670 B2 JP 4680670B2
Authority
JP
Japan
Prior art keywords
virtual camera
pixel
image
unit
control information
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.)
Expired - Fee Related
Application number
JP2005139928A
Other languages
Japanese (ja)
Other versions
JP2006318195A (en
Inventor
隆 今給黎
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.)
Namco Ltd
Bandai Namco Entertainment Inc
Original Assignee
Namco Ltd
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 Ltd, Namco Bandai Games Inc filed Critical Namco Ltd
Priority to JP2005139928A priority Critical patent/JP4680670B2/en
Publication of JP2006318195A publication Critical patent/JP2006318195A/en
Application granted granted Critical
Publication of JP4680670B2 publication Critical patent/JP4680670B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Image Generation (AREA)

Description

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

従来より、仮想的な3次元空間であるオブジェクト空間内において仮想カメラ(所与の視点)から見える画像を生成する画像生成システム(ゲームシステム)が知られており、いわゆる仮想現実を体験できるものとして人気が高い。ロールプレイングゲーム(RPG)を楽しむことができる画像生成システムを例にとれば、プレーヤは、自身の分身であるプレーヤキャラクタ(プレーヤオブジェクト)を操作してオブジェクト空間内のマップ上で移動させ、敵キャラクタ(敵オブジェクト)と対戦したり、他のキャラクタと対話したり、様々な町を訪れたりすることでゲームを楽しむ。   Conventionally, an image generation system (game system) that generates an image that can be seen from a virtual camera (a given viewpoint) in an object space that is a virtual three-dimensional space is known. Popular. Taking an image generation system capable of enjoying a role-playing game (RPG) as an example, a player operates a player character (player object), which is his or her own character, to move it on a map in the object space, and to create an enemy character. Enjoy the game by playing against (enemy objects), interacting with other characters, and visiting various towns.

さて、このような画像生成システムでは、一度描画した画像(元画像)に対して、さらなる処理を施して、元の画像とは異なる雰囲気の画像を作成するポストフィルタ手法(ポストエフェクト手法)が知られている。例えば、ぼかしフィルタを用いて元画像をぼかす手法や、色差フィルタを用いて輪郭強調を行う手法などが知られている。また時間経過に応じて元画像をゆがませることにより、陽炎や水面の揺らぎ(さざ波)を表現する揺らぎフィルタなどもある。   In such an image generation system, a post-filter method (post-effect method) is known in which an image drawn once (original image) is further processed to create an image having an atmosphere different from that of the original image. It has been. For example, a technique for blurring an original image using a blur filter, a technique for performing edge enhancement using a color difference filter, and the like are known. In addition, there is a fluctuation filter that distorts the original image with the passage of time to express the heat and fluctuations (ripples) of the water surface.

しかしながら、ポストフィルタ手法というものは、2次元画像の処理手法であって、その多くは、元の画像に表現されたオブジェクトのオブジェクト空間におけるオブジェクトの変化や仮想カメラの変化とは無関係に画像エフェクトを付加するものである。このため、時間経過に応じて元画像をゆがませるようなフィルタ処理を行う場合には、仮想カメラが動いてしまうとゆがみのパターンが干渉して、フィルタ処理後の画像の見栄えが悪くなってしまう課題があった。
特許第3401204号公報
However, the post-filter method is a two-dimensional image processing method, and many of them apply image effects regardless of the change of the object in the object space of the object represented in the original image or the change of the virtual camera. It is to be added. For this reason, when performing a filtering process that distorts the original image over time, the distortion pattern interferes with the movement of the virtual camera, resulting in a poor-looking image after filtering. There was a problem.
Japanese Patent No. 3401204

本発明は、上記事情に鑑みてなされたものであり、その目的は、フィルタ処理が施された高品質な映像を作成することができるプログラム、情報記憶媒体及びプログラムを提供することにある。   The present invention has been made in view of the above circumstances, and an object of the present invention is to provide a program, an information storage medium, and a program that can create a high-quality video image that has been subjected to filter processing.

(1)本発明は、画像を生成するための画像生成システムであって、所与の制御情報に基づいて仮想カメラを制御する仮想カメラ制御部と、オブジェクト空間における前記仮想カメラから見た画像を描画した元画像に対してフィルタ処理を行う描画部と、前記仮想カメラの制御情報に基づいて、前記仮想カメラの位置、方向、および画角の少なくとも一つが変化したと判断される場合に、前記フィルタ処理のフィルタ強度パラメータを変更するパラメータ設定部と、を含む画像生成システムに関係する。また、本発明は、上記各部としてコンピュータを機能させるプログラムに関係する。また、本発明は、コンピュータ読み取り可能な情報記憶媒体であって、上記各部としてコンピュータを機能させるプログラムを記憶(記録)した情報記憶媒体に関係する。   (1) The present invention is an image generation system for generating an image, and a virtual camera control unit that controls a virtual camera based on given control information, and an image viewed from the virtual camera in an object space When it is determined that at least one of the position, direction, and angle of view of the virtual camera has changed based on the rendering unit that performs filtering on the rendered original image and the control information of the virtual camera, And a parameter setting unit that changes a filter strength parameter of the filter processing. The present invention also relates to a program that causes a computer to function as each of the above-described units. The present invention also relates to an information storage medium that can be read by a computer and stores (records) a program that causes the computer to function as each of the above-described units.

コンピュータとは、プロセッサ(処理部:CPUあるいはGPUなど)、メモリ(記憶部)、入力装置、及び出力装置を基本的な構成要素とする物理的装置(システム)をいう。以下においても同様である。   The computer refers to a physical device (system) having basic components such as a processor (processing unit: CPU or GPU), a memory (storage unit), an input device, and an output device. The same applies to the following.

本発明によれば、仮想カメラの位置、方向、及び画角の少なくとも一つが変化したと判断される場合にフィルタ強度パラメータが変更されるので、フィルタ処理の元画像への影響度を適切に調整することができる。このため本発明によれば、フィルタ処理後の画像が見栄えの悪い不自然なものとなることを防止することができ、高品質な映像を作成することができるようになる。   According to the present invention, the filter strength parameter is changed when it is determined that at least one of the position, direction, and angle of view of the virtual camera has changed, so that the degree of influence of the filtering process on the original image is appropriately adjusted. can do. For this reason, according to the present invention, it is possible to prevent the image after filtering from being unnatural and poor in appearance, and a high-quality video can be created.

(2)また本発明の画像生成システム、プログラム及び情報記憶媒体では、前記フィルタ処理が、ピクセル入れ替え処理であって、前記パラメータ設定部が、前記仮想カメラの位置、方向、および画角の少なくとも一つが変化したと判断される場合に、前記ピクセル入れ替え処理におけるピクセルの入れ替え距離が減少するように前記フィルタ強度パラメータを変更するようにしてもよい。このようにすれば、仮想カメラの位置、方向、及び画角の少なくとも一つが変化した場合に、ピクセル配列の入れ替わりが緩やかになるため、画像の見栄えが悪くなることを防止することができる。   (2) In the image generation system, the program, and the information storage medium of the present invention, the filter process is a pixel replacement process, and the parameter setting unit includes at least one of the position, direction, and angle of view of the virtual camera. The filter strength parameter may be changed so that the pixel replacement distance in the pixel replacement process is reduced when it is determined that one has changed. In this way, when at least one of the position, direction, and angle of view of the virtual camera changes, the pixel arrangement is gradually replaced, so that it is possible to prevent the appearance of the image from being deteriorated.

(3)また本発明の画像生成システム、プログラム及び情報記憶媒体では、前記フィルタ処理が、周期関数に基づいてピクセルの入れ替え距離が決定されるピクセル入れ替え処理であって、前記パラメータ設定部が、前記仮想カメラの位置、方向、および画角の少なくとも一つが変化したと判断される場合に、前記周期関数の振幅成分が小さくなるように前記フィルタ強度パラメータを変更するようにしてもよい。このようにすれば、ピクセル入れ替え処理における1周期内でのピクセルの入れ替え距離の変動量が小さくなる。すなわちピクセル配列の入れ替わる様子が緩やかに変化するため、画像の見栄えが悪くなることを防止することができる。   (3) In the image generation system, the program, and the information storage medium of the present invention, the filtering process is a pixel replacement process in which a pixel replacement distance is determined based on a periodic function, and the parameter setting unit includes the parameter setting unit, When it is determined that at least one of the position, direction, and angle of view of the virtual camera has changed, the filter strength parameter may be changed so that the amplitude component of the periodic function becomes small. In this way, the fluctuation amount of the pixel replacement distance within one cycle in the pixel replacement process is reduced. That is, since the state of changing the pixel array changes gradually, it is possible to prevent the appearance of the image from deteriorating.

(4)また本発明の画像生成システム、プログラム及び情報記憶媒体では、前記フィルタ処理が、周期関数に基づいてピクセルの入れ替え距離が決定されるピクセル入れ替え処理であって、前記パラメータ設定部が、前記仮想カメラの位置、方向、および画角の少なくとも一つが変化したと判断される場合に、前記周期関数の周波数成分が大きくなるように前記フィルタ強度パラメータを変更するようにしてもよい。このようにすれば、ピクセル入れ替え処理におけるピクセルの入れ替え周期が長くなる。すなわち単位時間あたりのピクセル配列の入れ替わりが緩やかになるため、画像の見栄えが悪くなることを防止することができる。   (4) In the image generation system, the program, and the information storage medium of the present invention, the filter process is a pixel replacement process in which a pixel replacement distance is determined based on a periodic function, and the parameter setting unit includes the parameter setting unit, When it is determined that at least one of the position, direction, and angle of view of the virtual camera has changed, the filter strength parameter may be changed so that the frequency component of the periodic function is increased. In this way, the pixel replacement period in the pixel replacement process becomes longer. That is, since the replacement of the pixel array per unit time becomes gradual, it is possible to prevent the appearance of the image from being deteriorated.

(5)また本発明の画像生成システム、プログラム及び情報記憶媒体では、前記制御情報が、前記仮想カメラの注視点の移動距離情報を含み、前記パラメータ設定部が、前記仮想カメラの注視点の移動距離情報に基づいて、前記仮想カメラの位置、方向、および画角の少なくとも一つが変化したと判断される場合に、前記フィルタ強度パラメータを変更するようにしてもよい。このようにすれば、仮想カメラの注視点の移動に伴い、仮想カメラの位置、方向、及び画角の少なくとも一つが変化した場合に、フィルタ処理の元画像への影響度が適切になるようにフィルタ強度パラメータを変更することができる。   (5) In the image generation system, the program, and the information storage medium of the present invention, the control information includes movement distance information of the gazing point of the virtual camera, and the parameter setting unit moves the gazing point of the virtual camera. The filter strength parameter may be changed when it is determined that at least one of the position, the direction, and the angle of view of the virtual camera has changed based on the distance information. In this way, when at least one of the position, direction, and angle of view of the virtual camera changes with the movement of the gazing point of the virtual camera, the degree of influence of the filtering process on the original image is made appropriate. The filter strength parameter can be changed.

(6)また本発明の画像生成システム、プログラム及び情報記憶媒体では、前記パラメータ設定部が、前記仮想カメラの注視点の移動距離が所与のしきい値より大きい場合に、前記フィルタ強度パラメータを第1のレベルから該第1のレベルより低い第2のレベルへ近づける処理を行うようにしてもよい。このようにしきい移動量を設けることで、仮想カメラの注視点がわずかに動くだけで、頻繁にフィルタ強度パラメータが変動してしまうことを防ぐことができる。   (6) In the image generation system, the program, and the information storage medium of the present invention, the parameter setting unit sets the filter strength parameter when the moving distance of the gazing point of the virtual camera is larger than a given threshold value. You may make it perform the process which approaches from a 1st level to the 2nd level lower than this 1st level. By providing the threshold moving amount in this way, it is possible to prevent the filter strength parameter from fluctuating frequently only by slightly moving the gazing point of the virtual camera.

(7)また本発明の画像生成システム、プログラム及び情報記憶媒体では、前記パラメータ設定部が、前記仮想カメラの注視点の移動距離が前記しきい値を超えた後に該しきい値を下回るように変化した場合に、前記フィルタ強度パラメータを前記第2のレベルから前記第1のレベルへ戻す処理を行うようにしてもよい。このようにすれば、仮想カメラの注視点の動きが少なくなった時点でフィルタ処理の効果が元画像に反映されるようになり、画像が不自然に見えることを防止することができる
(8)また本発明の画像生成システム、プログラム及び情報記憶媒体では、移動体オブジェクトに対して前記仮想カメラの注視点が設定され、前記パラメータ設定部が、前記移動体オブジェクトが前記オブジェクト空間内を移動することによって前記仮想カメラの注視点が移動した場合に、その移動距離に応じて前記フィルタ強度パラメータを変更するようにしてもよい。このようにすれば、注目すべき移動体オブジェクトがオブジェクト空間内で移動する場合に限って、フィルタ強度パラメータを変更すればよいので、処理が簡便になる。
(7) In the image generation system, the program, and the information storage medium of the present invention, the parameter setting unit is configured so that the moving distance of the gazing point of the virtual camera falls below the threshold after the threshold is exceeded. When it has changed, the filter strength parameter may be returned from the second level to the first level. In this way, when the movement of the gazing point of the virtual camera decreases, the effect of the filtering process is reflected in the original image, and it is possible to prevent the image from appearing unnatural (8). In the image generation system, program, and information storage medium of the present invention, a gazing point of the virtual camera is set for a moving object, and the parameter setting unit moves the moving object in the object space. When the gazing point of the virtual camera moves, the filter strength parameter may be changed according to the moving distance. In this way, the filter strength parameter may be changed only when the mobile object to be noticed moves in the object space, so that the processing becomes simple.

(9)また本発明の画像生成システム、プログラム及び情報記憶媒体では、前記描画部が、フィルタ処理対象オブジェクトを他のオブジェクトとは異なるα値で描画した元画像のαプレーンに設定されたα値をマスク情報として、該元画像に対して前記フィルタ処理を行うようにしてもよい。このようにすれば、元画像に対して局所的にフィルタ処理を施す場合に、処理内容を簡便化することができる。   (9) In the image generation system, the program, and the information storage medium of the present invention, the drawing unit sets the α value set in the α plane of the original image in which the filtering target object is drawn with an α value different from other objects. May be used as mask information to perform the filtering process on the original image. In this way, the processing content can be simplified when locally filtering the original image.

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

1.構成
図1に本実施形態の画像生成システム(ゲームシステム)の機能ブロック図の例を示す。なお本実施形態の画像生成システムは図1の構成要素(各部)の一部を省略した構成としてもよい。
1. Configuration FIG. 1 shows an example of a functional block diagram of an image generation system (game system) of the present embodiment. Note that the image generation system of the present embodiment may have a configuration in which some of the components (each unit) in FIG. 1 are omitted.

操作部160は、プレーヤがプレーヤオブジェクト(移動体オブジェクトの一例、プレーヤが操作するプレーヤキャラクタ)の操作データを入力するためのものであり、その機能は、レバー、ボタン、ステアリング、マイク、タッチパネル型ディスプレイ、或いは筺体などにより実現できる。記憶部170は、処理部100や通信部196などのワーク領域となるもので、その機能はRAM(VRAM)などにより実現できる。   The operation unit 160 is for a player to input operation data of a player object (an example of a moving object, a player character operated by the player), and functions thereof are a lever, a button, a steering, a microphone, and a touch panel display. Alternatively, it can be realized by a housing or the like. The storage unit 170 serves as a work area for the processing unit 100, the communication unit 196, and the like, and its function can be realized by a RAM (VRAM) or the like.

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

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

携帯型情報記憶装置194は、プレーヤの個人データやゲームのセーブデータなどが記憶されるものであり、この携帯型情報記憶装置194としては、メモリカードや携帯型ゲーム装置などがある。通信部196は外部(例えばホスト装置や他の画像生成システム)との間で通信を行うための各種制御を行うものであり、その機能は、各種プロセッサ又は通信用ASICなどのハードウェアや、プログラムなどにより実現できる。   The portable information storage device 194 stores player personal data, game save data, and the like. Examples of the portable information storage device 194 include a memory card and a portable game device. The communication unit 196 performs various controls for communicating with the outside (for example, a host device or other image generation system), and functions thereof are hardware such as various processors or communication ASICs, programs, and the like. It can be realized by.

なお本実施形態の各部としてコンピュータを機能させるためのプログラム(データ)は、ホスト装置(サーバー)が有する情報記憶媒体からネットワーク及び通信部196を介して情報記憶媒体180(記憶部170)に配信してもよい。このようなホスト装置(サーバー)の情報記憶媒体の使用も本発明の範囲内に含めることができる。   Note that a program (data) for causing a computer to function as each unit of this embodiment is distributed from the information storage medium of the host device (server) to the information storage medium 180 (storage unit 170) via the network and communication unit 196. May be. Use of the information storage medium of such a host device (server) can also be included in the scope of the present invention.

処理部100(プロセッサ)は、操作部160からの操作データやプログラムなどに基づいて、ゲーム処理、画像生成処理、或いは音生成処理などの処理を行う。ここでゲーム処理としては、ゲーム開始条件が満たされた場合にゲームを開始する処理、ゲームを進行させる処理、キャラクタやマップなどのオブジェクトを配置する処理、オブジェクトを表示する処理、ゲーム結果を演算する処理、或いはゲーム終了条件が満たされた場合にゲームを終了する処理などがある。この処理部100は記憶部170内の主記憶部171をワーク領域として各種処理を行う。処理部100の機能は各種プロセッサ(CPU、DSP等)、ASIC(ゲートアレイ等)などのハードウェアや、プログラムにより実現できる。   The processing unit 100 (processor) performs processing such as game processing, image generation processing, or sound generation processing based on operation data and programs from the operation unit 160. Here, as the game process, a process for starting a game when a game start condition is satisfied, a process for advancing the game, a process for placing an object such as a character or a map, a process for displaying an object, and a game result are calculated. There is a process or a process of ending a game when a game end condition is satisfied. The processing unit 100 performs various processes using the main storage unit 171 in the storage unit 170 as a work area. The functions of the processing unit 100 can be realized by hardware such as various processors (CPU, DSP, etc.), ASIC (gate array, etc.), and programs.

処理部100は、オブジェクト空間設定部110、移動・動作処理部112、仮想カメラ制御部114、パラメータ設定部116、描画部120、音生成部130を含む。なおこれらの一部を省略する構成としてもよい。   The processing unit 100 includes an object space setting unit 110, a movement / motion processing unit 112, a virtual camera control unit 114, a parameter setting unit 116, a drawing unit 120, and a sound generation unit 130. Note that some of these may be omitted.

オブジェクト空間設定部110は、キャラクタ、建物、球場、車、樹木、柱、壁、マップ(地形)などの表示物を表す各種オブジェクト(ポリゴン、自由曲面又はサブディビジョンサーフェスなどのプリミティブで構成されるオブジェクト)をオブジェクト空間に配置設定する処理を行う。即ちワールド座標系でのオブジェクトの位置や回転角度(向き、方向と同義)を決定し、その位置(X、Y、Z)にその回転角度(X、Y、Z軸回りでの回転角度)でオブジェクトを配置する。   The object space setting unit 110 is an object composed of various objects (polygons, free-form surfaces, subdivision surfaces, etc.) representing display objects such as characters, buildings, stadiums, cars, trees, pillars, walls, and maps (terrain). ) Is set in the object space. In other words, the position and rotation angle of the object in the world coordinate system (synonymous with direction and direction) are determined, and the rotation angle (rotation angle around the X, Y, and Z axes) is determined at that position (X, Y, Z). Arrange objects.

移動・動作処理部112は、オブジェクト(キャラクタ、車、又は飛行機等)の移動・動作演算(移動・動作シミュレーション)を行う。すなわち操作部160によりプレーヤが入力した操作データや、プログラム(移動・動作アルゴリズム)や、各種データ(モーションデータ)などに基づいて、オブジェクトをオブジェクト空間内で移動させたり、オブジェクトを動作(モーション、アニメーション)させる処理を行う。具体的には、オブジェクトの移動情報(位置、回転角度、速度、或いは加速度)や動作情報(オブジェクトを構成する各パーツの位置、或いは回転角度)を、1フレーム(1/60秒)毎に順次求めるシミュレーション処理を行う。なおフレームは、オブジェクトの移動・動作処理(シミュレーション処理)や画像生成処理を行う時間の単位である。   The movement / motion processing unit 112 performs a movement / motion calculation (movement / motion simulation) of an object (such as a character, a car, or an airplane). That is, based on operation data input by the player through the operation unit 160, a program (movement / motion algorithm), various data (motion data), or the like, the object is moved in the object space, or the object is moved (motion, animation). ) Is performed. Specifically, object movement information (position, rotation angle, speed, or acceleration) and motion information (position or rotation angle of each part that constitutes the object) are sequentially transmitted every frame (1/60 seconds). Perform the required simulation process. A frame is a unit of time for performing object movement / motion processing (simulation processing) and image generation processing.

仮想カメラ制御部114は、オブジェクト空間内の所与(任意)の視点から見える画像を生成するための仮想カメラ(視点)の制御処理を行う。具体的には、仮想カメラの位置(X、Y、Z)又は回転角度(X、Y、Z軸回りでの回転角度)を制御する処理(視点位置、視線方向あるいは画角を制御する処理)を行う。   The virtual camera control unit 114 performs a virtual camera (viewpoint) control process for generating an image viewed from a given (arbitrary) viewpoint in the object space. Specifically, processing for controlling the position (X, Y, Z) or rotation angle (rotation angle about the X, Y, Z axis) of the virtual camera (processing for controlling the viewpoint position, the line-of-sight direction or the angle of view) I do.

例えば仮想カメラによりオブジェクト(例えばキャラクタ、ボール、車)を後方から撮影する場合には、オブジェクトの位置又は回転の変化に仮想カメラが追従するように、仮想カメラの位置又は回転角度(仮想カメラの向き)を制御する。この場合には、移動・動作処理部112で得られたオブジェクトの位置、回転角度又は速度などの情報に基づいて、仮想カメラを制御できる。或いは、仮想カメラを、予め決められた回転角度で回転させたり、予め決められた移動経路で移動させる制御を行ってもよい。この場合には、仮想カメラの位置(移動経路)又は回転角度を特定するための仮想カメラデータに基づいて仮想カメラを制御する。なお、仮想カメラ(視点)が複数存在する場合には、それぞれの仮想カメラについて上記の制御処理が行われる。   For example, when an object (eg, character, ball, car) is photographed from behind using a virtual camera, the position or rotation angle of the virtual camera (the direction of the virtual camera is set so that the virtual camera follows changes in the position or rotation of the object. ) To control. In this case, the virtual camera can be controlled based on information such as the position, rotation angle, or speed of the object obtained by the movement / motion processing unit 112. Alternatively, the virtual camera may be controlled to rotate at a predetermined rotation angle or to move along a predetermined movement path. In this case, the virtual camera is controlled based on the virtual camera data for specifying the position (movement path) or rotation angle of the virtual camera. When there are a plurality of virtual cameras (viewpoints), the above control process is performed for each virtual camera.

なお仮想カメラ制御部114は、所与の制御情報に基づいて、位置(視点位置)、方向(視線方向)、画角などを制御する。仮想カメラの位置、方向、画角の変化情報、注視点の移動情報(移動距離、移動方向)、オブジェクトの移動情報や回転情報、あるいは操作部160の操作情報など、種々の情報を仮想カメラの制御情報として任意に定めることができる。例えば、注視点の移動情報を仮想カメラの制御情報とした場合には、オブジェクト空間において注視点の位置が変更された場合に、その移動距離や移動方向、言い換えれば注視点のワールド座標(X、Y、Z)の変化に応じて仮想カメラの視点位置(位置)、視線方向(方向)、画角等を制御することができる。なお注視点の移動情報という場合、広義には、ワールド座標系での注視点の位置座標の変化情報のみならず、カメラ座標系(視点座標系)やスクリーン座標系での注視点の位置座標の変化情報をも含む。また仮想カメラの注視点は、オブジェクトに関連づけて設定することができ、例えば、操作部160の操作情報に基づいて、移動体オブジェクトをオブジェクト空間内で移動あるいは動作させることができるようなシステムにおいては、移動体オブジェクトの任意の代表点(例えば、中心座標)を注視点として設定することができる。この場合には、移動体オブジェクトの移動あるいは動作に追従して注視点が移動するため、結果的には移動体オブジェクトの移動に追従するように仮想カメラの位置、方向、画角等が制御されることになる。   The virtual camera control unit 114 controls the position (viewpoint position), the direction (gaze direction), the angle of view, and the like based on given control information. Various information such as virtual camera position, direction, angle of view change information, gazing point movement information (movement distance, movement direction), object movement information and rotation information, or operation information of the operation unit 160 are stored. Control information can be arbitrarily determined. For example, when the movement information of the gazing point is used as the control information of the virtual camera, when the position of the gazing point is changed in the object space, the movement distance and movement direction, in other words, the world coordinates (X, The viewpoint position (position), line-of-sight direction (direction), angle of view, etc. of the virtual camera can be controlled in accordance with changes in Y, Z). Note that the movement information of the gazing point in a broad sense includes not only the change information of the position coordinates of the gazing point in the world coordinate system, but also the position coordinates of the gazing point in the camera coordinate system (view point coordinate system) and the screen coordinate system. Also includes change information. In addition, the gazing point of the virtual camera can be set in association with the object. For example, in a system in which a moving object can be moved or operated in the object space based on operation information of the operation unit 160. An arbitrary representative point (for example, center coordinates) of the moving object can be set as the gazing point. In this case, the point of interest moves following the movement or movement of the moving object, and as a result, the position, direction, angle of view, etc. of the virtual camera are controlled so as to follow the movement of the moving object. Will be.

パラメータ設定部116は、フィルタ処理の影響度を決めるフィルタ強度パラメータを設定する処理を行い、特に仮想カメラの制御情報に基づいて、仮想カメラの位置、方向、および画角の少なくとも一つが変化したと判断される場合には、フィルタ処理のフィルタ強度パラメータを変更する処理を行う。例えば、仮想カメラの注視点の移動距離情報に基づいて、仮想カメラの位置、方向、および画角の少なくとも一つが変化したと判断される場合に、フィルタ強度パラメータを変更することができる。なお移動体オブジェクトに対して注視点が設定されている場合には、移動体オブジェクトがオブジェクト空間内を移動することによって仮想カメラの注視点が移動した場合に、その移動距離に応じてフィルタ強度パラメータを変更してもよい。   The parameter setting unit 116 performs a process of setting a filter strength parameter that determines the degree of influence of the filter process. In particular, based on the control information of the virtual camera, at least one of the position, direction, and angle of view of the virtual camera has changed. If it is determined, a process for changing the filter strength parameter of the filter process is performed. For example, the filter strength parameter can be changed when it is determined that at least one of the position, direction, and angle of view of the virtual camera has changed based on the moving distance information of the gazing point of the virtual camera. When a gazing point is set for a moving object, when the moving object moves in the object space and the gazing point of the virtual camera moves, a filter strength parameter is set according to the moving distance. May be changed.

ここでフィルタ処理の一例としてピクセル入れ替え処理を含むフィルタ処理を行う場合には、ピクセル入れ替え処理におけるピクセル入れ替え距離が減少するようにフィルタ強度パラメータを変更することができる。例えば、ピクセル入れ替え処理が周期関数に基づいてピクセル入れ替え距離が決定される処理である場合に、周期関数の振幅成分パラメータを減少させたり、周波数成分パラメータを増加させたりするパラメータ変更処理を行うことができる。ピクセル入れ替え処理とは、第Kのピクセルの色情報を所与のルールに従って第Lのピクセルの色情報に入れ替える処理であって、ピクセル入れ替え距離とは、第Kのピクセルと第Lのピクセルとの間の変位(距離)のことである。なおピクセル入れ替え処理では、ピクセルの入れ替えが生じないピクセルが存在していてもよく、あるピクセルの色情報が複数のピクセルの色情報として入れ替えられてもよい。   Here, when performing a filter process including a pixel replacement process as an example of the filter process, the filter strength parameter can be changed so that the pixel replacement distance in the pixel replacement process is reduced. For example, when the pixel replacement process is a process in which the pixel replacement distance is determined based on the periodic function, the parameter changing process for decreasing the amplitude component parameter of the periodic function or increasing the frequency component parameter may be performed. it can. The pixel replacement process is a process of replacing the color information of the Kth pixel with the color information of the Lth pixel according to a given rule, and the pixel replacement distance is the difference between the Kth pixel and the Lth pixel. It is the displacement (distance) between them. In the pixel replacement process, there may be pixels in which pixel replacement does not occur, and the color information of a certain pixel may be replaced as the color information of a plurality of pixels.

またフィルタ強度パラメータの変更処理は、仮想カメラの注視点の移動距離と予め設定しておいたしきい値との関係において、その許否を制御することができる。このようにすれば、頻繁にフィルタ強度パラメータが変更されてしまって、画像の見栄えが悪くなることを防ぐことができる。具体的には、仮想カメラの注視点の移動距離が所与のしきい値より大きい場合に、フィルタ強度パラメータを第1のレベルから第1のレベルより低い第2のレベルへ連続的に近づける処理を行うことができる。この場合に、フィルタ強度パラメータを第1のレベルから第2のレベルに向かって徐々に近づくように変化させることが好ましい。また仮想カメラの注視点の移動距離が一旦しきい値を超えた後にしきい値を下回るように変化した場合には、フィルタ強度パラメータを第2のレベルから第1のレベルへ戻す処理を行うことができる。この場合にも、フィルタ強度パラメータを第2のレベルから第1のレベルに向けて連続的に変化させるようにすることが好ましい。   Further, the filter strength parameter changing process can control whether or not the filter strength parameter is permitted based on the relationship between the moving distance of the gazing point of the virtual camera and a preset threshold value. In this way, it can be prevented that the filter strength parameter is frequently changed to deteriorate the appearance of the image. Specifically, when the moving distance of the gazing point of the virtual camera is greater than a given threshold, the process of continuously bringing the filter strength parameter from the first level to the second level lower than the first level It can be performed. In this case, it is preferable to change the filter strength parameter so as to gradually approach the second level from the first level. In addition, when the moving distance of the gazing point of the virtual camera once exceeds the threshold value and then changes to fall below the threshold value, processing for returning the filter strength parameter from the second level to the first level is performed. Can do. Also in this case, it is preferable to continuously change the filter strength parameter from the second level toward the first level.

描画部120は、処理部100で行われる種々の処理(ゲーム処理)の結果に基づいて描画処理を行い、これにより画像を生成し、表示部190に出力する。いわゆる3次元ゲーム画像を生成する場合には、まず、座標変換(ワールド座標変換、カメラ座標変換)、クリッピング処理、或いは透視変換等のジオメトリ処理が行われ、その処理結果に基づいて、描画データ(プリミティブの頂点の位置座標、テクスチャ座標、色データ、法線ベクトル或いはα値等)が作成される。そして、この描画データ(オブジェクトデータ)に基づいて、透視変換後(ジオメトリ処理後)のモデルオブジェクト(1又は複数のプリミティブ)を描画バッファ174(フレームバッファや中間バッファ(ワークバッファ)などのピクセル単位で画像情報を記憶できるバッファ。VRAM)に描画する。これにより、オブジェクト空間内において仮想カメラ(所与の視点)から見える画像が生成される。なお、仮想カメラ(視点)が複数存在する場合には、それぞれの仮想カメラから見える画像を分割画像として1画面に表示できるように描画処理を行うこともできる。   The drawing unit 120 performs drawing processing based on the results of various processing (game processing) performed by the processing unit 100, thereby generating an image and outputting the image to the display unit 190. In the case of generating a so-called three-dimensional game image, first, geometric processing such as coordinate transformation (world coordinate transformation, camera coordinate transformation), clipping processing, or perspective transformation is performed, and drawing data ( Primitive vertex position coordinates, texture coordinates, color data, normal vector, α value, etc.) are created. Based on the drawing data (object data), the model object (one or a plurality of primitives) after perspective transformation (after the geometry processing) is converted into a pixel unit such as a drawing buffer 174 (frame buffer or intermediate buffer (work buffer)). The image information is stored in a buffer (VRAM). Thereby, an image that can be seen from the virtual camera (given viewpoint) in the object space is generated. In addition, when there are a plurality of virtual cameras (viewpoints), the drawing process can be performed so that an image seen from each virtual camera can be displayed as a divided image on one screen.

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

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

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

また本実施形態では、テクスチャマッピングとして、LUT記憶部175に記憶されるインデックスカラー・テクスチャマッピング用のカラールックアップテーブル(CLUT)を用いたテクスマッピングを行うこともできる。この場合には、元画像の各ピクセルの相対位置あるいは元画像を分割した分割ブロックの各ピクセルの相対的位置に基づいて定められる番号(色)をインデックス番号(インデックス色)として設定したインデックステクスチャを、インデックス番号と画像情報(R成分、G成分、B成分、A成分(α成分))とを対応づけるカラールックアップテーブルを参照しながら、仮想オブジェクト(表示画面サイズのポリゴン、分割ブロックサイズのポリゴン)に対してテクスチャマッピングを行う。ピクセル入れ替え処理を行う場合には、元画像あるいは元画像の分割ブロックに対応するインデックステクスチャの各テクセルに与えられたインデックス番号を入れ替えるためのインデックステクスチャを用意し、そのインデックステクスチャをカラールックアップテーブルを参照しながら仮想オブジェクトにテクスチャマッピングすることによってピクセル入れ替え画像(フィルタ画像)を生成することができる。   In the present embodiment, text mapping using a color look-up table (CLUT) for index color / texture mapping stored in the LUT storage unit 175 can also be performed as texture mapping. In this case, an index texture in which a number (color) determined based on the relative position of each pixel of the original image or the relative position of each pixel of the divided block obtained by dividing the original image is set as an index number (index color) is used. While referring to a color lookup table that associates index numbers with image information (R component, G component, B component, A component (α component)), virtual objects (display screen size polygons, divided block size polygons) ) Texture mapping. When performing pixel replacement processing, prepare an index texture to replace the index number assigned to each texel of the index texture corresponding to the original image or the divided block of the original image, and use the color lookup table for the index texture. A pixel replacement image (filter image) can be generated by texture mapping to a virtual object while referring to the image.

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

αブレンディングとしては、α値(A値)に基づく半透明合成処理(通常αブレンディング、加算αブレンディング又は減算αブレンディング等)を行う。例えば通常αブレンディングの場合には下式(1)〜(3)の処理を行う。   As the α blending, a translucent synthesis process (usually α blending, addition α blending, subtraction α blending, or the like) based on the α value (A value) is performed. For example, in the case of normal α blending, the following processes (1) to (3) are performed.

=(1−α)×R+α×R (1)
=(1−α)×G+α×G (2)
=(1−α)×B+α×B (3)
また、加算αブレンディングの場合には下式(4)〜(6)の処理を行う。なお単純加算の場合はα=1として下式(4)〜(6)の処理を行う。
R Q = (1−α) × R 1 + α × R 2 (1)
G Q = (1−α) × G 1 + α × G 2 (2)
B Q = (1−α) × B 1 + α × B 2 (3)
In addition, in the case of addition α blending, the following expressions (4) to (6) are performed. In the case of simple addition, α = 1 and the following formulas (4) to (6) are performed.

=R+α×R (4)
=G+α×G (5)
=B+α×B (6)
また、減算αブレンディングの場合には下式(7)〜(9)の処理を行う。なお単純減算の場合はα=1として下式(7)〜(9)の処理を行う。
R Q = R 1 + α × R 2 (4)
G Q = G 1 + α × G 2 (5)
B Q = B 1 + α × B 2 (6)
In the case of subtractive α blending, the processing of the following equations (7) to (9) is performed. In the case of simple subtraction, α = 1 and the following formulas (7) to (9) are processed.

=R−α×R (7)
=G−α×G (8)
=B−α×B (9)
ここで、R、G、Bは、描画バッファ172に既に描画されている画像(元画像)のRGB成分であり、R、G、Bは、描画バッファ172に描画すべき画像のRGB成分である。また、R、G、Bは、αブレンディングにより得られる画像のRGB成分である。なお、α値は、各ピクセル(テクセル、ドット)に関連づけて記憶できる情報であり、例えば色情報以外のプラスアルファの情報である。α値は、マスク情報、半透明度(透明度、不透明度と等価)、バンプ情報などとして使用できる。
R Q = R 1 −α × R 2 (7)
G Q = G 1 −α × G 2 (8)
B Q = B 1 −α × B 2 (9)
Here, R 1 , G 1 , B 1 are RGB components of an image (original image) already drawn in the drawing buffer 172, and R 2 , G 2 , B 2 should be drawn in the drawing buffer 172. This is the RGB component of the image. R Q , G Q , and B Q are RGB components of an image obtained by α blending. The α value is information that can be stored in association with each pixel (texel, dot), for example, plus alpha information other than color information. The α value can be used as mask information, translucency (equivalent to transparency and opacity), bump information, and the like.

そして本実施形態では、描画部120が、オブジェクト空間における仮想カメラから見た画像を描画した元画像に対してフィルタ処理を行う。フィルタ処理としては、特に限定されないが、画面単位あるいは画面を複数に分割した分割ブロック単位で行うポストフィルタ処理(ポストエフェクト処理)を行うことができる。   In the present embodiment, the drawing unit 120 performs filter processing on the original image in which the image viewed from the virtual camera in the object space is drawn. Although it does not specifically limit as a filter process, The post filter process (post effect process) performed in the unit of a screen or the division | segmentation block unit which divided | segmented the screen into plurality can be performed.

例えば、ポストフィルタ処理としては、周期関数に基づいてピクセルの入れ替え距離が決定されるピクセル入れ替え処理を行うことができる。すなわち本実施形態で採用するピクセル入れ替え処理では、時間パラメータに応じて周期的に元画像のピクセル配列状態が変更される。このときフィルタ処理においてZバッファ174に格納される各ピクセルのZ値に応じて与えられるα値に基づいて元画像のピクセルの色情報と入れ替えピクセルの色情報とがブレンドされるαブレンディングを行うことによって、入れ替えピクセルの色情報の元画像のピクセルの色情報への影響度を仮想カメラに対する奥行きに応じて可変したものとするようにしてもよい。このようにすれば、陽炎による揺らぎを表現することができる。   For example, as the post-filter process, a pixel replacement process in which a pixel replacement distance is determined based on a periodic function can be performed. That is, in the pixel replacement process employed in the present embodiment, the pixel arrangement state of the original image is periodically changed according to the time parameter. At this time, α blending is performed in which the color information of the pixel of the original image and the color information of the replacement pixel are blended based on the α value given according to the Z value of each pixel stored in the Z buffer 174 in the filter processing. Thus, the degree of influence of the color information of the replacement pixel on the color information of the pixel of the original image may be varied according to the depth with respect to the virtual camera. In this way, it is possible to express fluctuations due to the heat.

また描画部120は、フィルタ処理対象オブジェクトを他のオブジェクトとは異なるα値で描画することにより元画像を生成する。そして元画像のαプレーンに設定されたα値をマスク情報として、元画像に対してフィルタ処理を行う。具体的には、元画像に対応するフィルタ画像を生成しておき、αテストの手法を用いて、フィルタ画像のうち所与のα値で描画されたフィルタ処理対象オブジェクトの描画領域のみを元画像に半透明描画する。これにより、元画像に対して部分的にフィルタ処理が施された画像を生成することができる。   The drawing unit 120 generates an original image by drawing the filtering target object with an α value different from that of other objects. Then, filter processing is performed on the original image using the α value set in the α plane of the original image as mask information. Specifically, a filter image corresponding to the original image is generated, and only the drawing area of the filter processing target object drawn with a given α value in the filter image is obtained using the α test technique. Draw a semi-transparent image. Thereby, it is possible to generate an image in which the original image is partially filtered.

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

なお、本実施形態の画像生成システムは、1人のプレーヤのみがプレイできるシングルプレーヤモード専用のシステムにしてもよいし、複数のプレーヤがプレイできるマルチプレーヤモードも備えるシステムにしてもよい。また複数のプレーヤがプレイする場合に、これらの複数のプレーヤに提供するゲーム画像やゲーム音を、1つの端末を用いて生成してもよいし、ネットワーク(伝送ライン、通信回線)などで接続された複数の端末(ゲーム機、携帯電話)を用いて分散処理により生成してもよい。   Note that the image generation system of the present embodiment may be a system dedicated to the single player mode in which only one player can play, or may be a system having a multiplayer mode in which a plurality of players can play. 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 by distributed processing using a plurality of terminals (game machine, mobile phone).

2.本実施形態の手法
次に本実施形態の手法について図面を用いて説明する。なお以下では、さざ波や陽炎などの表現する際に用いられる揺らぎフィルタ処理に関して本実施形態の手法を採用した場合について主に説明するが、本実施形態の手法は、このような揺らぎフィルタ処理のみならず、種々のフィルタ処理に適用できる。
2. Next, the method of this embodiment will be described with reference to the drawings. In the following description, the case where the method of the present embodiment is employed with respect to the fluctuation filter processing used when expressing ripples, heat, etc. will be mainly described, but the method of the present embodiment can be applied only to such fluctuation filter processing. It can be applied to various filter processes.

2.1 ピクセル入れ替え処理による揺らぎフィルタ手法
本実施の形態では、インデックスカラー・テクスチャマッピングの手法を用いて、周期的にピクセル入れ替え距離が変動するピクセル入れ替え処理を行って、揺らぎフィルタ処理を実現している。
2.1 Fluctuation Filter Method by Pixel Replacement Processing In the present embodiment, fluctuation filter processing is realized by performing pixel replacement processing in which the pixel replacement distance fluctuates periodically using an index color / texture mapping method. Yes.

具体的には、図2のA1に示すように、描画バッファに描画された元画像を複数の分割ブロックに分割して、その分割ブロック単位でピクセル入れ替え処理を行うことによって生成したフィルタ画像(フィルタ処理が施されたオブジェクトの画像)を元画像に合成(半透明描画)するフィルタ処理を行っている。   Specifically, as shown by A1 in FIG. 2, a filter image (filter filter) generated by dividing the original image drawn in the drawing buffer into a plurality of divided blocks and performing pixel replacement processing in units of the divided blocks. A filtering process is performed to synthesize (semi-transparent drawing) the image of the processed object) with the original image.

このとき各分割ブロックは、例えば16×16ピクセルのサイズとし、図2のA2に示すように、この256個のピクセルをそれらの相対位置に基づいてインデックス化したカラールックアップテーブルとして扱うことができる。また図2のA3に示すように、カラールックアップテーブル(CLUT)とは別に分割ブロックの各ピクセルの位置をずらしたずらしテーブルを用意し、そのずらしテーブルをインデックステクスチャとして扱うことができる。ずらしテーブルでは、分割ブロックのピクセルの相対位置に基づいて定めたインデックス番号を分割ブロック内におけるピクセルの座標値として扱い、各ピクセルについてピクセル入れ替え距離ΔYだけずらした位置のピクセルのインデックス番号を設定する。   At this time, each divided block has a size of, for example, 16 × 16 pixels, and can be handled as a color lookup table in which these 256 pixels are indexed based on their relative positions, as shown by A2 in FIG. . In addition to the color lookup table (CLUT), as shown at A3 in FIG. 2, a shift table in which the position of each pixel in the divided block is shifted can be prepared, and the shift table can be handled as an index texture. In the shift table, the index number determined based on the relative position of the pixel of the divided block is handled as the coordinate value of the pixel in the divided block, and the index number of the pixel shifted by the pixel replacement distance ΔY is set for each pixel.

そして、図2のA4に示すように、カラールックアップテーブルを参照しながら、分割ブロックサイズのポリゴン(仮想オブジェクト)に対して、ずらしテーブルに基づいて設定されたインデックステクスチャをテクスチャマッピングする。そして図2のA5に示すように、インデックステクスチャをテクスチャマッピングした分割ブロックサイズのポリゴンを元画像における対応位置に描画する。このようにすることで、元画像のピクセルを入れ替える処理を実現することができる。これらの処理を全ての分割ブロックに対して行って元画像に対応するフィルタ画像を生成することができる。最終的には、図2のA6に示すように、元画像にフィルタ画像を合成することで元画像に対してポストエフェクトを施すフィルタ処理を行うことができる。   Then, as indicated by A4 in FIG. 2, an index texture set based on the shift table is texture-mapped with respect to the polygon (virtual object) having the divided block size while referring to the color lookup table. Then, as shown at A5 in FIG. 2, a polygon having a divided block size obtained by texture mapping the index texture is drawn at a corresponding position in the original image. By doing in this way, the process which replaces the pixel of an original image is realizable. These processes can be performed on all the divided blocks to generate a filter image corresponding to the original image. Finally, as shown by A6 in FIG. 2, a filter process for applying a post-effect to the original image can be performed by synthesizing the filter image with the original image.

2.2 フィルタ強度パラメータの設定手法
本実施形態では、仮想カメラの視点位置、視線方向、および画角の少なくとも一つが変化したと判断される場合に、すなわち仮想カメラが移動、回転、ズーム、あるいはパンなどをする場合に、フィルタ処理のフィルタ強度パラメータを設定変更する手法を採用する。
2.2 Filter Strength Parameter Setting Method In this embodiment, when it is determined that at least one of the viewpoint position, line-of-sight direction, and angle of view of the virtual camera has changed, that is, the virtual camera is moved, rotated, zoomed, or When panning or the like, a method of changing the setting of the filter strength parameter of the filter processing is adopted.

ここで、本実施形態のフィルタ処理はピクセル入れ替え処理を含み、そのピクセル入れ替え処理におけるピクセル入れ替え距離ΔYを図3に示すような周期関数に基づいて設定している。すなわちインデックステクスチャに設定されるずらしテーブルを、周期的に変化するピクセル入れ替え距離ΔYに応じて書き換えている。なおピクセル入れ替え距離ΔYを周期的に変化させた複数枚のインデックステクスチャを予め用意しておいてもよい。その周期関数は下式(A)で表される。   Here, the filter processing of the present embodiment includes pixel replacement processing, and the pixel replacement distance ΔY in the pixel replacement processing is set based on a periodic function as shown in FIG. That is, the shift table set in the index texture is rewritten according to the periodically changing pixel replacement distance ΔY. A plurality of index textures in which the pixel replacement distance ΔY is periodically changed may be prepared in advance. The periodic function is represented by the following formula (A).

ΔY=Asin(ωt+f(x,y)) (A)
図3に示すように、Aは振幅成分パラメータである。ωは周波数成分パラメータである。f(x,y)は、分割ブロック内でのピクセルの位置に基づいて決定される初期位相パラメータである。これらのパラメータのうちフィルタ処理の強さに大きく関連するパラメータは振幅成分パラメータAと周波数成分パラメータωである。振幅成分パラメータAが大きいと、ピクセル入れ替え距離ΔYが大きくなり、揺らぎが大きくなる。また周波数成分パラメータωが小さいと、ピクセル入れ替え周期2π/ωが短くなるため、揺らぎの速度が速くなり単位時間あたりの揺らぎが大きくなる。
ΔY = Asin (ωt + f (x, y)) (A)
As shown in FIG. 3, A is an amplitude component parameter. ω is a frequency component parameter. f (x, y) is an initial phase parameter determined based on the position of the pixel in the divided block. Among these parameters, parameters that are largely related to the strength of the filter processing are the amplitude component parameter A and the frequency component parameter ω. When the amplitude component parameter A is large, the pixel replacement distance ΔY increases and the fluctuation increases. Also, if the frequency component parameter ω is small, the pixel replacement period 2π / ω is shortened, so that the fluctuation speed is increased and the fluctuation per unit time is increased.

また本実施形態では、図4に示すように、オブジェクト空間内を移動する移動体オブジェクトOBに対して仮想カメラVCの注視点VPが設定されており、移動体オブジェクトOBが移動すると、仮想カメラVCの注視点VPもオブジェクト空間内を移動する。仮想カメラVCは、注視点VPを向くように視線方向が制御される。このため、移動体オブジェクトOBが移動して注視点VPの位置(ワールド座標系の3次元座標)が変更されると、仮想カメラVCから見えるシーンは異なるものとなる。   In the present embodiment, as shown in FIG. 4, the gazing point VP of the virtual camera VC is set for the moving object OB that moves in the object space, and when the moving object OB moves, the virtual camera VC The point of interest VP also moves in the object space. The visual line direction of the virtual camera VC is controlled so as to face the gazing point VP. For this reason, when the moving object OB moves and the position of the gazing point VP (three-dimensional coordinates in the world coordinate system) is changed, the scene seen from the virtual camera VC is different.

ところで本実施形態で採用している元画像へのフィルタ処理は、2次元的なピクセル加工処理であるため、仮想カメラの視点位置、視線方向、画角等の変化とは無関係なものである。このため、時間パラメータに応じてその効果が変動するようなフィルタ処理であると、仮想カメラの移動による画像情報の変動とフィルタ処理の効果による画像情報の変動とが干渉を起こしてしまい、ある種のエイリアスのようなものが見えてしまうという不都合が生じうる。   By the way, since the filtering process for the original image employed in the present embodiment is a two-dimensional pixel processing process, it is irrelevant to changes in the viewpoint position, line-of-sight direction, angle of view, etc. of the virtual camera. For this reason, if the filtering process is such that its effect varies depending on the time parameter, the variation in image information due to the movement of the virtual camera and the variation in image information due to the effect of the filtering process cause interference, and some sort of The inconvenience of seeing something like the alias of can occur.

そこで本実施の形態では、仮想カメラVCの注視点VPの移動距離Lに応じてフィルタ処理の強さ、すなわちフィルタ処理の元画像への影響度を決定するフィルタ強度パラメータを設定変更し、フィルタ処理の効果が弱まるように制御している。   Therefore, in the present embodiment, the filter strength parameter that determines the strength of the filtering process, that is, the degree of influence of the filtering process on the original image, is changed according to the moving distance L of the gazing point VP of the virtual camera VC. The effect is controlled so as to weaken.

例えば、ピクセル入れ替え処理を伴う揺らぎフィルタ処理を元画像に対して行う場合には、図3に示した周期関数の振幅成分パラメータAを小さくすることで、ピクセル入れ替え距離ΔYを短く抑えて揺らぎを小さくすることができる。また周波数成分パラメータωを大きくすることによっても単位時間当たりの揺らぎの変化が小さくなるので、フィルタ処理の効果を弱めることができる。もちろん、振幅成分パラメータAを小さくするとともに、周波数成分パラメータωを大きくすることが効果的であることはいうまでもない。   For example, when performing fluctuation filter processing involving pixel replacement processing on the original image, by reducing the amplitude component parameter A of the periodic function shown in FIG. 3, the pixel replacement distance ΔY can be kept short and fluctuation can be reduced. can do. Further, since the change in fluctuation per unit time is reduced by increasing the frequency component parameter ω, the effect of the filter processing can be weakened. Needless to say, it is effective to reduce the amplitude component parameter A and increase the frequency component parameter ω.

またこのようにフィルタ強度パラメータを変更するということは、生成される画像の見栄え変わるということである。このため、フィルタ強度パラメータが頻繁に変更されると、逆に見づらい画像となってしまうおそれもある。このため本実施形態では、図5に示すように、仮想カメラVCの注視点VPの移動距離Lが所与のしきい値Lthを超えると判断される場合に、振幅成分パラメータAを第1の振幅レベルA1から第1の振幅レベルA1より低い第2の振幅レベルA2へ設定変更するようにしている。またいったん注視点VPの移動距離Lがしきい値Lthを上回った後に、しきい値Lthを下回るように推移した場合には、第2の振幅レベルA2から第1の振幅レベルA1へ振幅パラメータAを戻すようにしている。なお第1の振幅レベルA1から第2の振幅レベルA2の変化及び第2の振幅レベルA2から第1の振幅レベルA1への変化は、連続的に目的のレベルへ近づけるようにしている。これにより急激に画像の見栄えが変わってしまうことを防いでいる。また振幅パラメータAを第2の振幅レベルA2から第1の振幅レベルA1へと戻すまでの時間t2を第1の振幅レベルA1から第2の振幅レベルA2へ変化させるまでの時間t1よりも短くしている。揺らぎフィルタ処理を元画像に対して定常的に行う場合には、本来の状態にいち早く戻すことが好ましいからである。   Also, changing the filter strength parameter in this way means changing the appearance of the generated image. For this reason, if the filter strength parameter is frequently changed, there is a risk that the image may be difficult to see. For this reason, in this embodiment, as shown in FIG. 5, when it is determined that the moving distance L of the gazing point VP of the virtual camera VC exceeds a given threshold value Lth, the amplitude component parameter A is set to the first value. The setting is changed from the amplitude level A1 to the second amplitude level A2 lower than the first amplitude level A1. If the movement distance L of the gazing point VP once exceeds the threshold value Lth and then changes below the threshold value Lth, the amplitude parameter A is changed from the second amplitude level A2 to the first amplitude level A1. To return. The change from the first amplitude level A1 to the second amplitude level A2 and the change from the second amplitude level A2 to the first amplitude level A1 are continuously brought close to the target level. This prevents a sudden change in the appearance of the image. The time t2 until the amplitude parameter A is returned from the second amplitude level A2 to the first amplitude level A1 is shorter than the time t1 until the amplitude parameter A is changed from the first amplitude level A1 to the second amplitude level A2. ing. This is because when the fluctuation filter process is constantly performed on the original image, it is preferable to quickly return to the original state.

以上に述べたように本実施形態のフィルタ強度パラメータの設定手法によれば、フィルタ処理の元画像への影響度を適切に調整することができる。このため本手法によれば、フィルタ処理後の画像が見栄えの悪い不自然なものとなることを防止することができ、高品質な映像を作成することができるようになる。特に本実施形態の手法は、時間経過に応じてフィルタ処理の効果が変化する場合に好適である。   As described above, according to the filter strength parameter setting method of the present embodiment, it is possible to appropriately adjust the degree of influence of the filter processing on the original image. For this reason, according to this method, it is possible to prevent the image after filtering from being unnatural and poor in appearance, and it is possible to create a high-quality video. In particular, the method of the present embodiment is suitable when the effect of the filter process changes with time.

2.3 α値を用いた部分フィルタ手法
また本実施形態では、揺らぎフィルタ処理を元画像の特定の領域にだけ施すために、元画像のαプレーンをマスク情報として元画像に対して部分フィルタ処理を行う手法を採用している。
2.3 Partial Filter Method Using α Value In this embodiment, in order to perform fluctuation filter processing only on a specific region of the original image, partial filter processing is performed on the original image using the α plane of the original image as mask information. The method to do is adopted.

具体的には、図6に示すように、フィルタ処理対象オブジェクトOB1(α=α1)を他のオブジェクトOB2(α=α2)、OB3(α=α3)とは異なるα値で描画して元画像を生成している。このときαテストによりα≧α1の領域にだけフィルタ画像が合成(半透明描画)されるようにすることで、フィルタ処理対象オブジェクトOB1の描画領域にだけフィルタ処理が施された画像を生成することができる。すなわち本実施形態の部分フィルタ手法では、ジオメトリ処理されたフィルタ処理対象オブジェクトOB1を描画するだけで、元画像のαプレーンにマスク情報を描き込むことができる。   Specifically, as shown in FIG. 6, the filtering target object OB1 (α = α1) is drawn with an α value different from those of the other objects OB2 (α = α2) and OB3 (α = α3). Is generated. At this time, the filter image is synthesized only in the region of α ≧ α1 by the α test (semi-transparent drawing), thereby generating an image subjected to the filter processing only in the drawing region of the filter processing target object OB1. Can do. That is, with the partial filter method of the present embodiment, mask information can be drawn on the α plane of the original image simply by drawing the filtering target object OB1 that has been subjected to geometry processing.

元画像のαプレーンに設定されるα値をマスク情報となるように描画する手法としては、フィルタ処理対象オブジェクトOB1の頂点の頂点色のα成分をα≧α1に設定しておく手法、フィルタ処理対象オブジェクトOB1にマッピングされるテクスチャのαプレーンにα≧α1を設定しておく手法、あるいはフィルタ処理対象オブジェクトOB1の頂点色のα成分と、そのフィルタ処理対象オブジェクトOB1のテクスチャのαプレーンに設定されたα値を乗算した値αがα≧α1となるように設定しておく手法等がある。フィルタ処理対象オブジェクトOB1の頂点色のα成分にマスク情報を設定した場合、そのオブジェクトデータは、オブジェクトデータ記憶部176に記憶される。テクスチャのαプレーンにマスク情報を設定した場合、フィルタ処理対象オブジェクトOB1にマッピングされるテクスチャは、テクスチャ記憶部173に記憶される。   As a method for drawing the α value set in the α plane of the original image so as to be mask information, a method of setting the α component of the vertex color of the vertex of the filter processing target object OB1 to α ≧ α1, filter processing A method in which α ≧ α1 is set in the α plane of the texture mapped to the target object OB1, or the α component of the vertex color of the filtering target object OB1 and the α plane of the texture of the filtering target object OB1 are set. For example, there is a method of setting a value α obtained by multiplying the α value so that α ≧ α1. When mask information is set for the α component of the vertex color of the filtering target object OB1, the object data is stored in the object data storage unit 176. When mask information is set for the α plane of the texture, the texture mapped to the filtering target object OB1 is stored in the texture storage unit 173.

なおピクセル入れ替えを行ったフィルタ画像をワークバッファに作成する際には、ワークバッファに元画像の全体をコピーすることが好ましい。これとは対照的にフィルタ処理対象オブジェクトOB1だけをワークバッファに描き込むという部分コピーをする手法が考えられるが、このようにすると、フィルタ処理対象オブジェクトOB1以外の色情報が失われてしまい、その状態でピクセル入れ替えを行うと、不自然な色のはみ出しがフィルタ画像に現れてしまう。このため図6に示すように、元画像の全体をワークバッファにコピーして、そのコピー画像(ワーク画像)に対してピクセル入れ替え処理を行ってフィルタ画像を生成することにより、フィルタ画像において不自然な色のはみ出しが現れるという不都合を回避することができる。   Note that when creating a filter image in which pixel replacement has been performed in the work buffer, it is preferable to copy the entire original image to the work buffer. In contrast to this, a method of performing partial copying in which only the filtering target object OB1 is drawn in the work buffer is conceivable. However, in this case, color information other than the filtering target object OB1 is lost, and that If the pixels are replaced in a state, an unnatural color protrusion appears in the filter image. For this reason, as shown in FIG. 6, by copying the entire original image to the work buffer and performing a pixel replacement process on the copy image (work image) to generate a filter image, the filter image is unnatural. It is possible to avoid the inconvenience that a protruding color of a large color appears.

3.本実施形態の処理
次に、本実施形態の詳細な処理例について図7のフローチャートを用いて説明する。
3. Processing of this embodiment Next, a detailed processing example of this embodiment will be described with reference to the flowchart of FIG.

まず、さざ波が起きる領域のα値がα1(例えば128)以上、さざ波が起きない領域のα値がα1未満となるように仮想カメラから見たシーンをフレームバッファに描画して元画像を生成する(ステップS10)。   First, an original image is generated by drawing a scene viewed from the virtual camera in a frame buffer so that the α value of a region where ripples occur is α1 (for example, 128) or more and the α value of a region where ripples do not occur is less than α1. (Step S10).

次に、仮想カメラの位置、方向、画角等の変化情報に基づいて、波を強めるべきか(波面の動きが大きくなるのか)、波を弱めるべきか(波面の動きが小さくなるのか)を決定する(ステップS11)。例えば、仮想カメラの注視点の移動距離がしきい値を超えていれば、波を弱めるべきであると判断する。また例えば、仮想カメラの注視点の移動距離がしきい値を超えていた状態からしきい値を下回るように推移した場合には、波を強めるべきであると判断する。   Next, on the basis of change information such as the position, direction, and angle of view of the virtual camera, whether the wave should be strengthened (whether the wavefront motion will increase) or the wave should be weakened (whether the wavefront motion will be small) Determine (step S11). For example, if the moving distance of the gazing point of the virtual camera exceeds a threshold value, it is determined that the wave should be weakened. In addition, for example, when the moving distance of the point of sight of the virtual camera changes from a state where it exceeds the threshold value to fall below the threshold value, it is determined that the wave should be strengthened.

次に、フィルタ強度パラメータの設定処理を行う。具体的には、波面の動きが大きなさざ波の場合の波の強さレベル(第1のレベル)と波面の動きが小さなさざ波の場合の波の強さレベル(第2のレベル)とを予め設定しておき、現在の波の強さレベルと目的値とを比較することによって、現在の波の強さレベルが目的とする波の強さレベルと異なっていると判断される場合には、波の強さの値(周期関数の振幅成分パラメータあるいは周波数成分パラメータ)を目的値(第1のレベルあるいは第2のレベル)に近づける処理を行う(ステップS12)。   Next, a filter strength parameter setting process is performed. Specifically, the wave strength level (first level) when the wavefront motion is large and the wave strength level (second level) when the wavefront motion is small and ripples are set in advance. If the current wave intensity level is determined to be different from the target wave intensity level by comparing the current wave intensity level with the target value, Is performed so that the intensity value (amplitude component parameter or frequency component parameter of the periodic function) approaches the target value (first level or second level) (step S12).

次に、ステップS12で設定された波の強さレベルに基づいて、ピクセルの各点の位置座標をずらすためのテーブルデータ(ずらしテーブル)を作成する(ステップS13)。このテーブルデータは、インデックスカラー・テクスチャマッピングにおいて、インデックステクスチャとして扱われる。   Next, based on the wave intensity level set in step S12, table data (shift table) for shifting the position coordinates of each point of the pixel is created (step S13). This table data is handled as an index texture in the index color / texture mapping.

次に、フレームバッファ(表示画面)の1/2サイズのワークバッファ(縮小バッファ)を用意し、そのワークバッファに画面全体(元画像)を縮小コピーする(ステップS14)。   Next, a work buffer (reduction buffer) having a size half that of the frame buffer (display screen) is prepared, and the entire screen (original image) is reduced and copied to the work buffer (step S14).

次に、ワークバッファに縮小コピーされた画面(ワーク画像)を16×16(ピクセル)のサイズのブロックに分割し、各分割ブロックを、ブロック内の相対的位置によってインデックス化された256個のカラールックアップテーブル(CLUT)とみなして、インデックスカラー・テクスチャマッピング用のカラールックアップテーブルとして設定する(ステップS15)。   Next, the screen (work image) reduced and copied to the work buffer is divided into blocks each having a size of 16 × 16 (pixels), and each divided block is divided into 256 colors indexed by relative positions in the block. It is regarded as a lookup table (CLUT) and is set as a color lookup table for index color / texture mapping (step S15).

次に、ピクセルの位置座標をずらすテーブルデータを256色のインデックステクスチャとみなして、各分割ブロックに対応する位置にインデックステクスチャを、ステップS15で設定されたカラールックアップテーブルを参照しながらテクスチャマッピングしたポリゴン(仮想オブジェクト)を描画する(ステップS16)。これによりワークバッファにフィルタ画像が作成される。   Next, the table data for shifting the pixel position coordinates is regarded as an index texture of 256 colors, and the index texture is mapped to the position corresponding to each divided block while referring to the color lookup table set in step S15. A polygon (virtual object) is drawn (step S16). As a result, a filter image is created in the work buffer.

次にピクセル入れ替え処理の済んだ画像(フィルタ画像)を格納するワークバッファをフレームバッファのサイズに拡大してフレームバッファに書き込む(ステップS17)。このときαテストを用いて、α値ビット列の最上位ビットの状態を判定して、α値がα1(例えば128)以上のピクセルにだけワークバッファに格納された画像を拡大した画像のピクセルを半透明描画によりフレームバッファの元画像に合成する。   Next, the work buffer for storing the image (filter image) subjected to the pixel replacement process is enlarged to the size of the frame buffer and written to the frame buffer (step S17). At this time, the α test is used to determine the state of the most significant bit of the α value bit string, and the pixels of the image obtained by enlarging the image stored in the work buffer only to pixels whose α value is α1 (for example, 128) or more are half Combine with the original image of the frame buffer by transparent drawing.

4.ハードウェア構成
図8に本実施形態を実現できるハードウェア構成の例を示す。メインプロセッサ900は、DVD982(情報記憶媒体。CDでもよい。)に格納されたプログラム、通信インターフェース990を介してダウンロードされたプログラム、或いはROM950に格納されたプログラムなどに基づき動作し、ゲーム処理、画像処理、音処理などを実行する。コプロセッサ902は、メインプロセッサ900の処理を補助するものであり、マトリクス演算(ベクトル演算)を高速に実行する。例えばオブジェクトを移動させたり動作(モーション)させる物理シミュレーションに、マトリクス演算処理が必要な場合には、メインプロセッサ900上で動作するプログラムが、その処理をコプロセッサ902に指示(依頼)する。
4). Hardware Configuration FIG. 8 shows an example of a hardware configuration capable of realizing this embodiment. The main processor 900 operates based on a program stored in a DVD 982 (information storage medium, which may be a CD), a program downloaded via the communication interface 990, a program stored in the ROM 950, or the like. Perform processing, sound processing, etc. The coprocessor 902 assists the processing of the main processor 900, and executes matrix operation (vector operation) at high speed. For example, when a matrix calculation process is required for a physical simulation for moving or moving an object, a program operating on the main processor 900 instructs (requests) the process to the coprocessor 902.

ジオメトリプロセッサ904は、メインプロセッサ900上で動作するプログラムからの指示に基づいて、座標変換、透視変換、光源計算、曲面生成などのジオメトリ処理を行うものであり、マトリクス演算を高速に実行する。データ伸張プロセッサ906は、圧縮された画像データや音データのデコード処理を行ったり、メインプロセッサ900のデコード処理をアクセラレートする。これにより、オープニング画面やゲーム画面において、MPEG方式等で圧縮された動画像を表示できる。   The geometry processor 904 performs geometry processing such as coordinate conversion, perspective conversion, light source calculation, and curved surface generation based on an instruction from a program operating on the main processor 900, and executes matrix calculation at high speed. The data decompression processor 906 performs decoding processing of the compressed image data and sound data and accelerates the decoding processing of the main processor 900. Thereby, a moving image compressed by the MPEG method or the like can be displayed on the opening screen or the game screen.

描画プロセッサ910は、ポリゴンや曲面などのプリミティブ面で構成されるオブジェクトの描画(レンダリング)処理を実行する。オブジェクトの描画の際には、メインプロセッサ900は、DMAコントローラ970を利用して、描画データ(頂点データや他のパラメータ)を描画プロセッサ910に渡すと共に、必要であればテクスチャ記憶部924にテクスチャを転送する。すると描画プロセッサ910は、描画データやテクスチャに基づいて、Zバッファなどを利用した隠面消去を行いながら、オブジェクトをフレームバッファ922に描画する。また描画プロセッサ910は、αブレンディング(半透明処理)、デプスキューイング、ミップマッピング、フォグ処理、バイリニア・フィルタリング、トライリニア・フィルタリング、アンチエイリアシング、シェーディング処理なども行う。1フレーム分の画像がフレームバッファ922に書き込まれるとその画像はディスプレイ912に表示される。   The drawing processor 910 executes drawing (rendering) processing of an object composed of primitive surfaces such as polygons and curved surfaces. When drawing an object, the main processor 900 uses the DMA controller 970 to pass the drawing data (vertex data and other parameters) to the drawing processor 910 and, if necessary, the texture to the texture storage unit 924. Forward. Then, the drawing processor 910 draws the object in the frame buffer 922 while performing hidden surface removal using a Z buffer or the like based on the drawing data and texture. The drawing processor 910 also performs α blending (translucent processing), depth cueing, mip mapping, fog processing, bilinear filtering, 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を介して出力する。ゲームコントローラ942やメモリカード944からのデータはシリアルインターフェース940を介して入力される。   The sound processor 930 includes a multi-channel ADPCM sound source and the like, generates game sounds such as BGM, sound effects, and sounds, and outputs them through the speaker 932. Data from the game controller 942 and the memory card 944 is input via the serial interface 940.

ROM950にはシステムプログラムなどが格納される。業務用ゲームシステムの場合にはROM950が情報記憶媒体として機能し、ROM950に各種プログラムが格納される。なおROM950の代わりにハードディスクを利用してもよい。RAM960は各種プロセッサの作業領域となる。DMAコントローラ970は、プロセッサ、メモリ間でのDMA転送を制御する。DVDドライブ980(CDドライブでもよい。)は、プログラム、画像データ、或いは音データなどが格納されるDVD982(CDでもよい。)にアクセスする。通信インターフェース990はネットワーク(通信回線、高速シリアルバス)を介して外部との間でデータ転送を行う。   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. The RAM 960 is a work area for various processors. The DMA controller 970 controls DMA transfer between the processor and the memory. The DVD drive 980 (may be a CD drive) accesses a DVD 982 (may be a CD) in which programs, image data, sound data, and the like are stored. The communication interface 990 performs data transfer with the outside via a network (communication line, high-speed serial bus).

なお本実施形態の各部(各手段)の処理は、その全てをハードウェアのみにより実現してもよいし、情報記憶媒体に格納されるプログラムや通信インターフェースを介して配信されるプログラムにより実現してもよい。或いは、ハードウェアとプログラムの両方により実現してもよい。   The processing of each unit (each unit) in this embodiment may be realized entirely by hardware, or may be realized by a program stored in an information storage medium or a program distributed via a communication interface. Also good. Alternatively, it may be realized by both hardware and a program.

そして本実施形態の各部の処理をハードウェアとプログラムの両方により実現する場合には、情報記憶媒体には、ハードウェア(コンピュータ)を本実施形態の各部として機能させるためのプログラムが格納される。より具体的には、上記プログラムが、ハードウェアである各プロセッサ902、904、906、910、930に処理を指示すると共に、必要であればデータを渡す。そして、各プロセッサ902、904、906、910、930は、その指示と渡されたデータとに基づいて本発明の各部の処理を実現する。   When the processing of each part of this embodiment is realized by both hardware and a program, a program for causing the hardware (computer) to function as each part of this embodiment is stored in the information storage medium. More specifically, the program instructs the processors 902, 904, 906, 910, and 930, which are hardware, and passes data if necessary. Each processor 902, 904, 906, 910, 930 realizes the processing of each unit of the present invention based on the instruction and the passed data.

なお本発明は、上記実施形態で説明したものに限らず、種々の変形実施が可能である。例えば、明細書又は図面中の記載において広義や同義な用語として引用された用語は、明細書又は図面中の他の記載においても広義や同義な用語に置き換えることができる。また揺らぎフィルタ手法、フィルタ強度パラメータの設定手法、部分フィルタ手法等は、本実施形態で説明したものに限定されず、これらと均等な手法も本発明の範囲に含まれる。   The present invention is not limited to that described in the above embodiment, and various modifications can be made. For example, terms cited as broad or synonymous terms in the description in the specification or drawings can be replaced with broad or synonymous terms in other descriptions in the specification or drawings. Further, the fluctuation filter method, the filter strength parameter setting method, the partial filter method, and the like are not limited to those described in the present embodiment, and techniques equivalent to these are 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.). Further, the present invention is applied to various image generation systems such as a business game system, a home game system, a large attraction system in which a large number of players participate, a simulator, a multimedia terminal, a system board for generating a game image, and a mobile phone. it can.

本実施形態の画像生成システムの機能ブロック図。The functional block diagram of the image generation system of this embodiment. 本実施形態の手法の説明図。Explanatory drawing of the method of this embodiment. 本実施形態の手法の説明図。Explanatory drawing of the method of this embodiment. 本実施形態の手法の説明図。Explanatory drawing of the method of this embodiment. 本実施形態の手法の説明図。Explanatory drawing of the method of this embodiment. 本実施形態の手法の説明図。Explanatory drawing of the method of this embodiment. 本実施形態の具体的な処理例を示すフローチャート。The flowchart which shows the specific process example of this embodiment. ハードウェア構成例。Hardware configuration example.

符号の説明Explanation of symbols

100 処理部、
110 オブジェクト空間設定部、112 移動・動作処理部、
114 仮想カメラ制御部、116 パラメータ設定部、
120 描画部、122 フィルタ処理部、130 音生成部、
160 操作部、170 記憶部、
171 主記憶部、172 描画バッファ、173 テクスチャ記憶部、
174 Zバッファ、175 LUT記憶部、176 オブジェクトデータ記憶部、
180 情報記憶媒体、190 表示部、192 音出力部、
194 携帯型情報記憶装置、196 通信部
100 processing unit,
110 Object space setting unit, 112 Movement / motion processing unit,
114 virtual camera control unit, 116 parameter setting unit,
120 drawing units, 122 filter processing units, 130 sound generation units,
160 operation unit, 170 storage unit,
171 main storage unit, 172 drawing buffer, 173 texture storage unit,
174 Z buffer, 175 LUT storage unit, 176 Object data storage unit,
180 information storage medium, 190 display unit, 192 sound output unit,
194 Portable information storage device, 196 communication unit

Claims (12)

画像を生成するためのプログラムであって、
所与の制御情報に基づいて仮想カメラを制御する仮想カメラ制御部と、
オブジェクト空間における前記仮想カメラから見た画像を描画した元画像のピクセル毎に、ピクセルを他のピクセルに入れ替えるための当該ピクセルから当該他のピクセルまでの距離値を周期関数に基づいて決定し、当該ピクセルを当該距離値にある当該他のピクセルに入れ替えるフィルタ処理を行う描画部と、
前記仮想カメラの制御情報に基づいて、前記仮想カメラの位置、方向、および画角の少なくとも一つが変化したと判断される場合に、前記周期関数の振幅成分を小さくするパラメータ設定部として、
コンピュータを機能させることを特徴とするプログラム。
A program for generating an image,
A virtual camera control unit that controls the virtual camera based on given control information;
For each pixel of the original image in which the image viewed from the virtual camera in the object space is drawn, a distance value from the pixel to the other pixel for replacing the pixel with another pixel is determined based on a periodic function, A drawing unit that performs a filtering process to replace a pixel with the other pixel at the distance value;
As a parameter setting unit that reduces the amplitude component of the periodic function when it is determined that at least one of the position, direction, and angle of view of the virtual camera has changed based on the control information of the virtual camera,
A program characterized by causing a computer to function.
請求項において、
前記パラメータ設定部が、
前記仮想カメラの位置、方向、および画角の少なくとも一つが変化したと判断される場合に、前記周期関数の周波数成分を大きくすることを特徴とするプログラム。
In claim 1 ,
The parameter setting unit
A program for increasing the frequency component of the periodic function when it is determined that at least one of the position, direction, and angle of view of the virtual camera has changed.
請求項1又は2において、
前記制御情報が、前記仮想カメラの注視点の移動距離情報を含み、
前記パラメータ設定部が、
前記仮想カメラの注視点の移動距離情報に基づいて、前記仮想カメラの位置、方向、および画角の少なくとも一つが変化したと判断される場合に、前記振幅成分を変更することを特徴とするプログラム。
In claim 1 or 2 ,
The control information includes movement distance information of the gazing point of the virtual camera,
The parameter setting unit
A program that changes the amplitude component when it is determined that at least one of the position, direction, and angle of view of the virtual camera has changed based on movement distance information of the gazing point of the virtual camera. .
請求項において、
前記パラメータ設定部が、
前記仮想カメラの注視点の移動距離が所与のしきい値より大きい場合に、前記振幅成分を第1のレベルから該第1のレベルより低い第2のレベルへ近づける処理を行うことを特徴とするプログラム。
In claim 3 ,
The parameter setting unit
When the moving distance of the gazing point of the virtual camera is greater than a given threshold value, the amplitude component is processed from a first level to a second level lower than the first level. Program to do.
請求項において、
前記パラメータ設定部が、
前記仮想カメラの注視点の移動距離が前記しきい値を超えた後に該しきい値を下回るように変化した場合に、前記振幅成分を前記第2のレベルから前記第1のレベルへ戻す処理を行うことを特徴とするプログラム。
In claim 4 ,
The parameter setting unit
A process of returning the amplitude component from the second level to the first level when the moving distance of the gazing point of the virtual camera changes below the threshold after exceeding the threshold; A program characterized by being performed.
請求項3〜5のいずれかにおいて、
移動体オブジェクトに対して前記仮想カメラの注視点が設定され、
前記パラメータ設定部が、
前記移動体オブジェクトが前記オブジェクト空間内を移動することによって前記仮想カメラの注視点が移動した場合に、その移動距離に応じて前記振幅成分を変更することを特徴とするプログラム。
In any one of Claims 3-5 ,
A gazing point of the virtual camera is set for the moving object,
The parameter setting unit
When the moving object moves in the object space and the gazing point of the virtual camera moves, the amplitude component is changed according to the moving distance.
画像を生成するためのプログラムであって、
所与の制御情報に基づいて仮想カメラを制御する仮想カメラ制御部と、
オブジェクト空間における前記仮想カメラから見た画像を描画した元画像のピクセル毎に、ピクセルを他のピクセルに入れ替えるための当該ピクセルから当該他のピクセルまでの距離値を周期関数に基づいて決定し、当該ピクセルを当該距離値にある当該他のピクセルに入れ替えるフィルタ処理を行う描画部と、
前記仮想カメラの制御情報に基づいて、前記仮想カメラの位置、方向、および画角の少なくとも一つが変化したと判断される場合に、前記周期関数の周波数成分を大きくするパラメータ設定部として、
コンピュータを機能させることを特徴とするプログラム。
A program for generating an image,
A virtual camera control unit that controls the virtual camera based on given control information;
For each pixel of the original image in which the image viewed from the virtual camera in the object space is drawn, a distance value from the pixel to the other pixel for replacing the pixel with another pixel is determined based on a periodic function, A drawing unit that performs a filtering process to replace a pixel with the other pixel at the distance value;
As a parameter setting unit that increases the frequency component of the periodic function when it is determined that at least one of the position, direction, and angle of view of the virtual camera has changed based on the control information of the virtual camera,
A program characterized by causing a computer to function.
画像を生成するためのプログラムであって、
所与の制御情報に基づいて仮想カメラを制御する仮想カメラ制御部と、
オブジェクト空間における前記仮想カメラから見た画像を描画した元画像に対してフィルタ処理を行う描画部と、
前記仮想カメラの制御情報に基づいて、前記仮想カメラの位置、方向、および画角の少なくとも一つが変化したと判断される場合に、前記フィルタ処理のフィルタ強度パラメータを変更するパラメータ設定部として、
コンピュータを機能させ、
前記制御情報が、前記仮想カメラの注視点の移動距離情報を含み、
前記パラメータ設定部が、
前記仮想カメラの位置、方向、および画角の少なくとも一つが変化したと判断される場合に、前記仮想カメラの注視点の移動距離情報に基づいて、前記フィルタ強度パラメータを変更することを特徴とするプログラム。
A program for generating an image,
A virtual camera control unit that controls the virtual camera based on given control information;
A drawing unit that performs a filtering process on an original image obtained by drawing an image viewed from the virtual camera in the object space;
Based on the control information of the virtual camera, when it is determined that at least one of the position, direction, and angle of view of the virtual camera has changed, as a parameter setting unit that changes the filter strength parameter of the filtering process,
Make the computer work,
The control information includes movement distance information of the gazing point of the virtual camera,
The parameter setting unit
When it is determined that at least one of the position, direction, and angle of view of the virtual camera has changed, the filter strength parameter is changed based on movement distance information of the gazing point of the virtual camera. program.
コンピュータにより読取可能な情報記憶媒体であって、請求項1〜のいずれかに記載のプログラムを記憶することを特徴とする情報記憶媒体。 An information storage medium readable by a computer, wherein the program according to any one of claims 1 to 8 is stored. 画像を生成するための画像生成システムであって、
所与の制御情報に基づいて仮想カメラを制御する仮想カメラ制御部と、
オブジェクト空間における前記仮想カメラから見た画像を描画した元画像のピクセル毎に、ピクセルを他のピクセルに入れ替えるための当該ピクセルから当該他のピクセルまでの距離値を周期関数に基づいて決定し、当該ピクセルを当該距離値にある当該他のピクセルに入れ替えるフィルタ処理を行う描画部と、
前記仮想カメラの制御情報に基づいて、前記仮想カメラの位置、方向、および画角の少なくとも一つが変化したと判断される場合に、前記周期関数の振幅成分を小さくするパラメータ設定部と、
を含むことを特徴とする画像生成システム。
An image generation system for generating an image,
A virtual camera control unit that controls the virtual camera based on given control information;
For each pixel of the original image in which the image viewed from the virtual camera in the object space is drawn, a distance value from the pixel to the other pixel for replacing the pixel with another pixel is determined based on a periodic function, A drawing unit that performs a filtering process to replace a pixel with the other pixel at the distance value;
A parameter setting unit that reduces the amplitude component of the periodic function when it is determined that at least one of the position, direction, and angle of view of the virtual camera has changed based on the control information of the virtual camera;
An image generation system comprising:
画像を生成するための画像生成システムであって、
所与の制御情報に基づいて仮想カメラを制御する仮想カメラ制御部と、
オブジェクト空間における前記仮想カメラから見た画像を描画した元画像のピクセル毎に、ピクセルを他のピクセルに入れ替えるための当該ピクセルから当該他のピクセルまでの距離値を周期関数に基づいて決定し、当該ピクセルを当該距離値にある当該他のピクセルに入れ替えるフィルタ処理を行う描画部と、
前記仮想カメラの制御情報に基づいて、前記仮想カメラの位置、方向、および画角の少なくとも一つが変化したと判断される場合に、前記周期関数の周波数成分を大きくするパラメータ設定部と、
を含むことを特徴とする画像生成システム。
An image generation system for generating an image,
A virtual camera control unit that controls the virtual camera based on given control information;
For each pixel of the original image in which the image viewed from the virtual camera in the object space is drawn, a distance value from the pixel to the other pixel for replacing the pixel with another pixel is determined based on a periodic function, A drawing unit that performs a filtering process to replace a pixel with the other pixel at the distance value;
A parameter setting unit that increases the frequency component of the periodic function when it is determined that at least one of the position, direction, and angle of view of the virtual camera has changed based on the control information of the virtual camera;
An image generation system comprising:
画像を生成するための画像生成システムであって、
所与の制御情報に基づいて仮想カメラを制御する仮想カメラ制御部と、
オブジェクト空間における前記仮想カメラから見た画像を描画した元画像に対してフィルタ処理を行う描画部と、
前記仮想カメラの制御情報に基づいて、前記仮想カメラの位置、方向、および画角の少なくとも一つが変化したと判断される場合に、前記フィルタ処理のフィルタ強度パラメータを変更するパラメータ設定部とを含み、
前記制御情報が、前記仮想カメラの注視点の移動距離情報を含み、
前記パラメータ設定部が、
前記仮想カメラの位置、方向、および画角の少なくとも一つが変化したと判断される場合に、前記仮想カメラの注視点の移動距離情報に基づいて、前記フィルタ強度パラメータを変更することを特徴とする画像生成システム。
An image generation system for generating an image,
A virtual camera control unit that controls the virtual camera based on given control information;
A drawing unit that performs a filtering process on an original image obtained by drawing an image viewed from the virtual camera in the object space;
A parameter setting unit that changes a filter strength parameter of the filter process when it is determined that at least one of the position, direction, and angle of view of the virtual camera has changed based on the control information of the virtual camera. ,
The control information includes movement distance information of the gazing point of the virtual camera,
The parameter setting unit
When it is determined that at least one of the position, direction, and angle of view of the virtual camera has changed, the filter strength parameter is changed based on movement distance information of the gazing point of the virtual camera. Image generation system.
JP2005139928A 2005-05-12 2005-05-12 Program, information storage medium, and image generation system Expired - Fee Related JP4680670B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005139928A JP4680670B2 (en) 2005-05-12 2005-05-12 Program, information storage medium, and image generation system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005139928A JP4680670B2 (en) 2005-05-12 2005-05-12 Program, information storage medium, and image generation system

Publications (2)

Publication Number Publication Date
JP2006318195A JP2006318195A (en) 2006-11-24
JP4680670B2 true JP4680670B2 (en) 2011-05-11

Family

ID=37538824

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005139928A Expired - Fee Related JP4680670B2 (en) 2005-05-12 2005-05-12 Program, information storage medium, and image generation system

Country Status (1)

Country Link
JP (1) JP4680670B2 (en)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH117543A (en) * 1997-06-13 1999-01-12 Namco Ltd Information storage medium and image generator
JP2002024847A (en) * 2000-07-11 2002-01-25 Dainippon Printing Co Ltd Device and method for forming image and recording medium
JP2002032780A (en) * 2000-05-10 2002-01-31 Namco Ltd Game system, program and information storage medium
JP2002092637A (en) * 2000-09-19 2002-03-29 Namco Ltd Game system and information storage medium
JP2002374523A (en) * 2001-06-18 2002-12-26 Matsushita Electric Ind Co Ltd Monitor system
JP2003051032A (en) * 2001-08-03 2003-02-21 Namco Ltd Game information, information storage medium and game device
JP2004159889A (en) * 2002-11-13 2004-06-10 Sophia Co Ltd Game machine

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH117543A (en) * 1997-06-13 1999-01-12 Namco Ltd Information storage medium and image generator
JP2002032780A (en) * 2000-05-10 2002-01-31 Namco Ltd Game system, program and information storage medium
JP2002024847A (en) * 2000-07-11 2002-01-25 Dainippon Printing Co Ltd Device and method for forming image and recording medium
JP2002092637A (en) * 2000-09-19 2002-03-29 Namco Ltd Game system and information storage medium
JP2002374523A (en) * 2001-06-18 2002-12-26 Matsushita Electric Ind Co Ltd Monitor system
JP2003051032A (en) * 2001-08-03 2003-02-21 Namco Ltd Game information, information storage medium and game device
JP2004159889A (en) * 2002-11-13 2004-06-10 Sophia Co Ltd Game machine

Also Published As

Publication number Publication date
JP2006318195A (en) 2006-11-24

Similar Documents

Publication Publication Date Title
JP2006318389A (en) Program, information storage medium, and image generation system
JP4804120B2 (en) Program, information storage medium, and image generation system
US7479961B2 (en) Program, information storage medium, and image generation system
JP2006318388A (en) Program, information storage medium, and image forming system
JP4305903B2 (en) Image generation system, program, and information storage medium
JP4804122B2 (en) Program, texture data structure, information storage medium, and image generation system
JP2007164557A (en) Program, information recording medium and image generation system
JP4749198B2 (en) Program, information storage medium, and image generation system
JP3280355B2 (en) Image generation system and information storage medium
JP2002063596A (en) Game system, program and information storage medium
JP4743770B2 (en) Image generation system, program, and information storage medium
JP2006252426A (en) Program, information storage medium, and image generation system
JP2004070670A (en) Image generation system, program and information storage medium
JP4632855B2 (en) Program, information storage medium, and image generation system
JP2006011539A (en) Program, information storage medium, and image generating system
JP4187192B2 (en) Image generation system, program, and information storage medium
JP4913399B2 (en) Program, information storage medium, and image generation system
JP4229317B2 (en) Image generation system, program, and information storage medium
JP4698701B2 (en) Image generation system, program, and information storage medium
JP4680670B2 (en) Program, information storage medium, and image generation system
JP2002092640A (en) Game system and information storage medium
JP2008077406A (en) Image generation system, program, and information storage medium
JP4476040B2 (en) Program, information storage medium, and image generation system
JP4521811B2 (en) Program, information storage medium, and image generation system
JP2006252423A (en) Program, information storage medium and image generation system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080411

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100726

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100811

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101012

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101110

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110106

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110126

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110203

R150 Certificate of patent or registration of utility model

Ref document number: 4680670

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140210

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140210

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R370 Written measure of declining of transfer procedure

Free format text: JAPANESE INTERMEDIATE CODE: R370

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees