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

Image generation system, program and information storage medium

Info

Publication number
JP2002216151A
JP2002216151A JP2001005728A JP2001005728A JP2002216151A JP 2002216151 A JP2002216151 A JP 2002216151A JP 2001005728 A JP2001005728 A JP 2001005728A JP 2001005728 A JP2001005728 A JP 2001005728A JP 2002216151 A JP2002216151 A JP 2002216151A
Authority
JP
Japan
Prior art keywords
point
normal vector
constituent
vector
program
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
JP2001005728A
Other languages
Japanese (ja)
Inventor
Shigeru Kikko
繁 橘高
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
Original Assignee
Namco Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Namco Ltd filed Critical Namco Ltd
Priority to JP2001005728A priority Critical patent/JP2002216151A/en
Publication of JP2002216151A publication Critical patent/JP2002216151A/en
Pending legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To provide an image generation system, a program and an information storage medium by which a normal vector of an object is calculated with a small processing load. SOLUTION: Constitutional points CP1 to 15 (apexes) of the object WS are calculated in real time based on sampling points SP1 to SP15 and the normal vector of the object is calculated based on positions of the sampling points and positions of the constitutional points. A shading processing, an environmental texture mapping processing and a hit processing are performed based on the calculated normal vector and an image of the object is generated based on the calculated constitutional points. The normal vector is calculated by correcting the direction of the vector to face the direction to connect the sampling points with the constitutional points (converting the direction to be line symmetrical to a Y axis). Coordinates of the constitutional points of the object are calculated based on a function to use the coordinates of the sampling points and time as an argument. The image of the object to be expressed on a free curved surface by using control points of the free curved surface as the sampling points.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、画像生成システ
ム、プログラム及び情報記憶媒体に関する。
[0001] 1. Field of the Invention [0002] The present invention relates to an image generation system, a program, and an information storage medium.

【0002】[0002]

【背景技術及び発明が解決しようとする課題】従来よ
り、仮想的な3次元空間であるオブジェクト空間内にお
いて仮想カメラ(所与の視点)から見える画像を生成す
る画像生成システム(ゲームシステム)が知られてお
り、いわゆる仮想現実を体験できるものとして人気が高
い。ロールプレイングゲーム(RPG)を楽しむことが
できる画像生成システムを例にとれば、プレーヤは、自
身の分身であるキャラクタ(オブジェクト)を操作して
オブジェクト空間内のマップ上で移動させ、敵キャラク
タと対戦したり、他のキャラクタと対話したり、様々な
町を訪れたりすることでゲームを楽しむ。
2. Description of the Related Art An image generation system (game system) for generating an image viewed from a virtual camera (given viewpoint) in an object space which is a virtual three-dimensional space has been known. It is very popular as a virtual reality experience. Taking an image generation system that can enjoy a role playing game (RPG) as an example, a player operates a character (object), which is his or her own, to move on a map in an object space, and plays against an enemy character. Enjoy the game by playing, interacting with other characters, and visiting various towns.

【0003】さて、このような画像生成システムでは、
プレーヤの仮想現実感の向上のために、よりリアルな画
像を生成することが重要な課題になっている。従って、
オブジェクトの陰影づけ(シェーディング)について
も、よりリアルに表現できることが望まれる。そして、
このようなオブジェクトの陰影づけを正確に行うために
は、オブジェクトの面の向きを表す法線ベクトルの情報
が必要になる。
[0003] In such an image generation system,
To improve the virtual reality of the player, generating a more realistic image has become an important issue. Therefore,
It is desired that shading of an object can be expressed more realistically. And
In order to accurately shade such an object, information on a normal vector representing the direction of the surface of the object is required.

【0004】ところが、オブジェクトの面の法線ベクト
ルを求める演算処理の負荷は非常に重いため、法線ベク
トルの演算を正確に行おうとすると、この種の画像生成
システムに要求されるリアルタイム処理の要請に応える
ことができない。
However, since the load of the calculation processing for obtaining the normal vector of the surface of the object is very heavy, if the calculation of the normal vector is to be performed accurately, the real-time processing required for this type of image generation system is required. Can not respond to

【0005】特に、オブジェクトの構成点(狭義には頂
点)を関数を用いて求める場合には、オブジェクトの面
の2つの接線ベクトルを求め、これらの接線ベクトルの
外積をとる演算が必要になり、演算処理の負荷が非常に
重くなってしまう。
In particular, when the constituent points (vertices in a narrow sense) of an object are obtained by using a function, it is necessary to obtain two tangent vectors of the surface of the object and calculate an outer product of these tangent vectors. The processing load becomes very heavy.

【0006】本発明は、以上のような課題に鑑みてなさ
れたものであり、その目的とするところは、少ない処理
負荷でオブジェクトの法線ベクトルを求めることができ
る画像生成システム、プログラム及び情報記憶媒体を提
供することにある。
SUMMARY OF THE INVENTION The present invention has been made in view of the above problems, and has as its object to provide an image generation system, a program, and an information storage capable of obtaining a normal vector of an object with a small processing load. To provide a medium.

【0007】[0007]

【課題を解決するための手段】上記課題を解決するため
に、本発明は、画像生成を行う画像生成システムであっ
て、オブジェクトの構成点を求めるために設定されたサ
ンプリング点に基づいて、オブジェクトの構成点を求め
る構成点演算手段と、サンプリング点の位置と該サンプ
リング点に対応する構成点の位置とに基づいて、オブジ
ェクトの法線ベクトルを求める法線ベクトル演算手段
と、求められた構成点で形状が特定されるオブジェクト
の画像を生成する画像生成手段とを含むことを特徴とす
る。また本発明に係るプログラムは、コンピュータによ
り使用可能なプログラム(情報記憶媒体又は搬送波に具
現化されるプログラム)であって、上記手段をコンピュ
ータに実現させる(上記手段としてコンピュータを機能
させる)ことを特徴とする。また本発明に係る情報記憶
媒体は、コンピュータにより読み取り可能(使用可能)
な情報記憶媒体であって、上記手段をコンピュータに実
現させる(上記手段としてコンピュータを機能させる)
ためのプログラムを含むことを特徴とする。
According to an aspect of the present invention, there is provided an image generating system for generating an image, comprising: an object generating unit that generates an image based on a sampling point set to obtain a constituent point of the object; A component point calculating means for determining a component point of the object, a normal vector calculating means for determining a normal vector of the object based on the position of the sampling point and the position of the component point corresponding to the sampling point, And an image generating means for generating an image of the object whose shape is specified by. Further, a program according to the present invention is a program usable by a computer (a program embodied in an information storage medium or a carrier wave), and causes the computer to realize the above means (functions the computer as the above means). And The information storage medium according to the present invention is readable (usable) by a computer.
And a computer realizing the above means (making the computer function as the above means)
And a program for executing the program.

【0008】本発明によれば、サンプリング点に基づい
てオブジェクトの構成点がリアルタイムに求められ、こ
の構成点で形状が特定されるオブジェクトの画像を生成
される。
According to the present invention, constituent points of an object are obtained in real time based on sampling points, and an image of an object whose shape is specified by the constituent points is generated.

【0009】そして本発明では、サンプリング点の位置
と、そのサンプリング点に対応する構成点(例えばその
サンプリング点に基づいて求められた構成点)の位置と
に基づいて、オブジェクトの法線ベクトル(オブジェク
トの面の向きを表す擬似的な法線ベクトル。オブジェク
トの各構成点の法線ベクトル)が求められる。従って、
構成点で形状が特定されるオブジェクト(構成点を頂点
とするオブジェクト等)の法線ベクトルを、負荷の少な
い処理(例えばサンプリング点の位置(座標)と構成点
の位置(座標)とに基づく四則演算処理)で求めること
が可能になり、この種の画像生成システムに要求される
リアルタイム処理の要請に応えることができる。また、
求められた法線ベクトルを用いて、レンダリング処理
(シェーディング処理又は環境マッピング処理等)やヒ
ット処理などの種々の処理(画像生成に必要な処理)を
行うことで、よりリアルな画像を生成できるようにな
る。
According to the present invention, a normal vector (object) of an object is determined based on the position of a sampling point and the position of a constituent point corresponding to the sampling point (for example, a constituent point obtained based on the sampling point). A pseudo-normal vector representing the direction of the surface of the object (a normal vector of each constituent point of the object) is obtained. Therefore,
The normal vector of an object whose shape is specified by a constituent point (such as an object having the constituent point as a vertex) is calculated based on a low-load process (for example, the position (coordinate) of the sampling point and the position (coordinate) of the constituent point). Arithmetic processing), and can meet the demand for real-time processing required for this type of image generation system. Also,
By using the obtained normal vectors, various processes (processing necessary for image generation) such as rendering processing (shading processing or environment mapping processing) and hit processing are performed, so that a more realistic image can be generated. become.

【0010】また本発明に係る画像生成システム、プロ
グラム及び情報記憶媒体は、前記法線ベクトル演算手段
が、サンプリング点の位置と構成点の位置とを結ぶ方向
を向くベクトルの方向を補正して、前記法線ベクトルを
求めることを特徴とする。
In the image generation system, the program and the information storage medium according to the present invention, the normal vector calculation means corrects a direction of a vector pointing in a direction connecting a position of a sampling point and a position of a constituent point, The method is characterized in that the normal vector is obtained.

【0011】ここで、サンプリング点の位置と構成点の
位置とを結ぶ方向を向くベクトルは、サンプリング点の
位置から構成点の位置の方へと向く方向のベクトルであ
ってもよいし、構成点の位置からサンプリング点の位置
の方へと向く方向のベクトルであってもよい。また、ベ
クトルの補正は、求められたベクトルの向きをオブジェ
クトの面に垂直な向きに近づけるための補正であり、こ
のような補正としては、求められたベクトルの第1、第
2、第3の座標成分の少なくとも1つを用いた四則演算
処理や、求められた複数のベクトルを補間する処理など
を考えることができる。
Here, the vector pointing in the direction connecting the position of the sampling point and the position of the constituent point may be a vector pointing in the direction from the position of the sampling point toward the position of the constituent point, or May be a vector in a direction from the position of the sampling point to the position of the sampling point. The vector correction is a correction for bringing the obtained vector direction closer to the direction perpendicular to the surface of the object. Such correction includes the first, second, and third corrections of the obtained vector. Four arithmetic operations using at least one of the coordinate components, a process of interpolating a plurality of obtained vectors, and the like can be considered.

【0012】また本発明に係る画像生成システム、プロ
グラム及び情報記憶媒体は、前記法線ベクトル演算手段
が、サンプリング点の位置と構成点の位置とを結ぶ方向
を向くベクトルの第1、第2、第3の座標成分の少なく
とも1つを用いた四則演算により、前記法線ベクトルを
求めることを特徴とする。
Further, in the image generation system, the program and the information storage medium according to the present invention, the normal vector calculation means may include a first vector, a second vector, and a second vector which are directed in a direction connecting the position of the sampling point and the position of the constituent point. The normal vector is obtained by four arithmetic operations using at least one of the third coordinate components.

【0013】このようにすれば、ベクトルの座標成分を
用いた四則演算により法線ベクトルを求めることができ
るため、面の接線ベクトルを求めて法線ベクトルを演算
する手法に比べて、処理負荷を格段に軽減できる。
In this way, since the normal vector can be obtained by the four arithmetic operations using the coordinate components of the vector, the processing load is reduced as compared with the method of calculating the tangent vector of the surface and calculating the normal vector. It can be significantly reduced.

【0014】なお、四則演算とは加算、減算、乗算又は
除算であり、第1、第2、第3の座標成分の少なくとも
1つの符号を反転するような演算も含む。
Note that the four arithmetic operations are addition, subtraction, multiplication, and division, and also include operations for inverting at least one sign of the first, second, and third coordinate components.

【0015】また本発明に係る画像生成システム、プロ
グラム及び情報記憶媒体は、前記法線ベクトル演算手段
が、サンプリング点の位置と構成点の位置とを結ぶ方向
を向くベクトルを、該ベクトルと所与の軸とを含む平面
上において該所与の軸に関して線対称に変換すること
で、前記法線ベクトルを求めることを特徴とする。
Further, in the image generation system, the program and the information storage medium according to the present invention, the normal vector calculating means may assign a vector pointing in a direction connecting the position of the sampling point and the position of the constituent point to the vector and the given vector. The normal vector is obtained by performing a line-symmetric conversion on the given axis on a plane including the following axis.

【0016】このようにすれば、求められたベクトルを
所与の軸に関して線対称に変換するだけという負荷の少
ない処理で法線ベクトルを求めることが可能になる。
In this way, it is possible to obtain the normal vector by a process with a small load of merely converting the obtained vector into a line symmetry with respect to a given axis.

【0017】なお所与の軸は、オブジェクトのローカル
座標系の第1、第2、第3座標軸の中の1つであること
が望ましい。また所与の軸は、求められた複数のベクト
ルの方向を平均した方向に近い方向の軸(座標軸)であ
ることが望ましい。
Preferably, the given axis is one of the first, second and third coordinate axes of the object's local coordinate system. Also, it is desirable that the given axis is an axis (coordinate axis) in a direction close to the direction obtained by averaging the directions of the plurality of obtained vectors.

【0018】また本発明に係る画像生成システム、プロ
グラム及び情報記憶媒体は、前記構成点演算手段が、オ
ブジェクトの構成点を求めるために設定されたサンプリ
ング点の座標と時間とを引数とする関数に基づいて、オ
ブジェクトの構成点の座標を求めることを特徴とする。
Further, the image generation system, the program and the information storage medium according to the present invention are arranged such that the constituent point calculating means converts the coordinates and the time of the sampling points set for obtaining the constituent points of the object into functions. Based on this, the coordinates of the constituent points of the object are obtained.

【0019】このようにすれば、オブジェクトの構成点
の座標が、サンプリング点の座標と時間とを引数とする
関数(関数の返値)に基づき求められるため、モーショ
ンデータに基づき求める手法に比べて、少ないデータ量
で多様な形状のオブジェクトの画像を生成できるように
なる。
According to this method, the coordinates of the constituent points of the object are obtained based on the function (return value of the function) using the coordinates of the sampling point and the time as arguments. Thus, images of objects of various shapes can be generated with a small amount of data.

【0020】また本発明に係る画像生成システム、プロ
グラム及び情報記憶媒体は、前記サンプリング点が所与
のベース面に設定され、前記オブジェクトが、前記構成
点により形状が特定される面を有するオブジェクトであ
ることを特徴とする。
Further, the image generation system, the program and the information storage medium according to the present invention are such that the sampling point is set on a given base plane and the object is an object having a plane whose shape is specified by the constituent points. There is a feature.

【0021】このようにすれば、オブジェクトの面形状
を例えば波のように変形させる処理を、簡素な処理で実
現できるようになる。
According to this configuration, the process of deforming the surface shape of the object like a wave can be realized by a simple process.

【0022】なおベース面の設定を、イベント発生(ゲ
ームステージ変化イベント、ゲーム場面変化イベント、
ヒットイベント、消滅イベント、アイテム取得イベント
又はゲームパラメータ更新イベント等)及び時間経過
(仮想空間での時間経過又は現実世界での時間経過等)
の少なくとも一方に応じて変化させるようにしてもよ
い。
Note that the setting of the base plane is defined as event occurrence (game stage change event, game scene change event,
Hit event, disappearance event, item acquisition event, game parameter update event, etc.) and time lapse (time lapse in virtual space or time lapse in the real world, etc.)
May be changed according to at least one of the following.

【0023】また本発明に係る画像生成システム、プロ
グラム及び情報記憶媒体は、前記サンプリング点が自由
曲面の形状を定義するための制御点であり、前記オブジ
ェクトが自由曲面で表されるオブジェクトであることを
特徴とする。
In the image generation system, the program and the information storage medium according to the present invention, the sampling point is a control point for defining a shape of a free-form surface, and the object is an object represented by a free-form surface. It is characterized by.

【0024】このようにオブジェクトを自由曲面(複数
の自由曲面)で表すことで、オブジェクトの面の形状を
より滑らかにすることが可能になると共に、分割数の設
定を変えることで任意の精密度のオブジェクトを表現で
きるようになる。また本発明によれば、このようにオブ
ジェクトを自由曲面で表した場合にも、簡素な処理でオ
ブジェクトの法線ベクトルを求めることができるため、
よりリアルな画像を少なし処理負荷で生成できる。
By expressing the object as a free-form surface (a plurality of free-form surfaces) in this way, it is possible to make the shape of the surface of the object smoother, and to change the setting of the number of divisions to obtain an arbitrary precision. Objects can be expressed. According to the present invention, even when the object is represented by a free-form surface, the normal vector of the object can be obtained by simple processing.
More realistic images can be generated with less processing load.

【0025】また本発明に係る画像生成システム、プロ
グラム及び情報記憶媒体は、求められた法線ベクトルに
基づいて、オブジェクトのシェーディング処理、オブジ
ェクトへの環境テクスチャのマッピング処理、及びオブ
ジェクトと他のオブジェクトとの間のヒット処理の少な
くとも1つを行うことを特徴とする。
Further, the image generation system, the program and the information storage medium according to the present invention provide an object shading process, an environment texture mapping process for an object, and an object and another object, based on the obtained normal vector. And performing at least one of the hit processes during the period.

【0026】このように、法線ベクトルに基づいてシェ
ーディング処理や環境マッピング処理やヒット処理を行
うことで、プレーヤの仮想現実感を更に向上できるよう
になる。
As described above, by performing the shading process, the environment mapping process, and the hit process based on the normal vector, the virtual reality of the player can be further improved.

【0027】[0027]

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

【0028】1.構成 図1に、本実施形態の画像生成システム(ゲームシステ
ム)の機能ブロック図の一例を示す。なお同図において
本実施形態は、少なくとも処理部100を含めばよく
(或いは処理部100と記憶部170を含めばよく)、
それ以外のブロックについては任意の構成要素とするこ
とができる。
1. Configuration FIG. 1 shows an example of a functional block diagram of an image generation system (game system) of the present embodiment. In this figure, in the present embodiment, at least the processing unit 100 may be included (or the processing unit 100 and the storage unit 170 may be included).
The other blocks can be optional components.

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

【0030】記憶部170は、処理部100や通信部1
96などのワーク領域となるもので、その機能はRAM
などのハードウェアにより実現できる。
The storage unit 170 stores the processing unit 100 and the communication unit 1
A work area such as 96
It can be realized by hardware such as.

【0031】情報記憶媒体180(コンピュータにより
読み取り可能な媒体)は、プログラムやデータなどを格
納するものであり、その機能は、光ディスク(CD、D
VD)、光磁気ディスク(MO)、磁気ディスク、ハー
ドディスク、磁気テープ、或いはメモリ(ROM)など
のハードウェアにより実現できる。処理部100は、こ
の情報記憶媒体180に格納されるプログラム(デー
タ)に基づいて本発明(本実施形態)の種々の処理を行
う。即ち情報記憶媒体180には、本発明(本実施形
態)の手段(特に処理部100に含まれるブロック)を
コンピュータに実現(実行、機能)させるためのプログ
ラムが格納され、このプログラムは、例えば1又は複数
のモジュール(オブジェクト指向におけるオブジェクト
も含む)を含む。
The information storage medium 180 (computer readable medium) stores programs, data, and the like, and functions as an optical disk (CD, D
VD), a magneto-optical disk (MO), a magnetic disk, a hard disk, a magnetic tape, or a hardware such as a memory (ROM). The processing unit 100 performs various processes of the present invention (the present embodiment) based on the program (data) stored in the information storage medium 180. That is, the information storage medium 180 stores a program for causing a computer to realize (execute and function) the means (particularly, the blocks included in the processing unit 100) of the present invention (the present embodiment). Or a plurality of modules (including objects in the object orientation).

【0032】なお、情報記憶媒体180に格納される情
報の一部又は全部は、システムへの電源投入時等に記憶
部170に転送されることになる。また情報記憶媒体1
80には、本発明の処理を行うためのプログラム、画像
データ、音データ、表示物の形状データ、本発明の処理
を指示するための情報、或いはその指示に従って処理を
行うための情報などを含ませることができる。
A part or all of the information stored in the information storage medium 180 is transferred to the storage unit 170 when the power to the system is turned on. Information storage medium 1
80 includes a program for performing the processing of the present invention, image data, sound data, shape data of a display object, information for instructing the processing of the present invention, information for performing the processing according to the instruction, and the like. Can be made.

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

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

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

【0036】通信部196は、外部(例えばホスト装置
や他の画像生成システム)との間で通信を行うための各
種の制御を行うものであり、その機能は、各種プロセッ
サ、或いは通信用ASICなどのハードウェアや、プロ
グラムなどにより実現できる。
The communication unit 196 performs various controls for communicating with the outside (for example, a host device or another image generation system), and has a function of various processors, a communication ASIC, or the like. Hardware and programs.

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

【0038】処理部100(プロセッサ)は、操作部1
60からの操作データやプログラムなどに基づいて、ゲ
ーム処理、画像生成処理、或いは音生成処理などの各種
の処理を行う。この場合、処理部100は、記憶部17
0内の主記憶部172をワーク領域として使用して、各
種の処理を行う。
The processing unit 100 (processor) includes the operation unit 1
Various processes such as a game process, an image generation process, and a sound generation process are performed based on the operation data from 60 or a program. In this case, the processing unit 100
Various processes are performed using the main storage unit 172 in 0 as a work area.

【0039】ここで、処理部100が行う処理として
は、コイン(代価)の受け付け処理、各種モードの設定
処理、ゲームの進行処理、選択画面の設定処理、オブジ
ェクト(1又は複数のプリミティブ)の位置や回転角度
(X、Y又はZ軸回り回転角度)を求める処理、オブジ
ェクトを動作させる処理(モーション処理)、視点の位
置(仮想カメラの位置)や視線角度(仮想カメラの回転
角度)を求める処理、マップオブジェクトなどのオブジ
ェクトをオブジェクト空間へ配置する処理、ヒットチェ
ック処理、ゲーム結果(成果、成績)を演算する処理、
複数のプレーヤが共通のゲーム空間でプレイするための
処理、或いはゲームオーバー処理などを考えることがで
きる。
Here, the processing performed by the processing unit 100 includes coin (price) reception processing, various mode setting processing, game progress processing, selection screen setting processing, and the position of an object (one or more primitives). For determining the angle and rotation angle (rotation angle around the X, Y or Z axis), processing for moving the object (motion processing), and processing for obtaining the viewpoint position (virtual camera position) and line-of-sight angle (virtual camera rotation angle) , Processing for arranging objects such as map objects in the object space, hit check processing, processing for calculating game results (results, results),
Processing for a plurality of players to play in a common game space, game over processing, or the like can be considered.

【0040】処理部100は、パラメータ設定部11
0、関数設定部112、構成点演算部114、法線ベク
トル演算部116、ヒット処理部118、画像生成部1
20、音生成部130を含む。なお、処理部100に、
これらの全ての機能ブロック110〜130を含ませる
必要はなく、一部の機能ブロックを省略する構成にして
もよい。
The processing section 100 includes a parameter setting section 11
0, function setting unit 112, constituent point calculation unit 114, normal vector calculation unit 116, hit processing unit 118, image generation unit 1
20, including a sound generation unit 130. Note that the processing unit 100
It is not necessary to include all of these functional blocks 110 to 130, and some of the functional blocks may be omitted.

【0041】ここでパラメータ設定部110は、水面オ
ブジェクト等のオブジェクトの構成点(狭義には頂点又
はプリミティブ点等。以下の説明でも同様)を生成する
関数に使用するパラメータである振幅パラメータ、波長
(波数と等価)パラメータ又は角振動数(振動数、周期
と等価)パラメータ等を設定したり、構成点を求めるた
めに使用するベース面(複数のサンプリング点が設定さ
れる面。メッシュ)を設定する処理などを行う。
Here, the parameter setting unit 110 determines the amplitude parameter and the wavelength (wavelength (parameters) used in the function for generating the constituent points (vertices or primitive points in a narrow sense, etc. in the narrow sense) of an object such as a water surface object. A parameter (equivalent to a wave number) or an angular frequency (equivalent to a frequency and a period) is set, and a base surface (a surface on which a plurality of sampling points are set; a mesh) used to determine a constituent point is set. Perform processing, etc.

【0042】関数設定部112は、オブジェクト(面オ
ブジェクト、水面オブジェクト又は波オブジェクト等)
の構成点を生成する関数(ベース面を変形して面オブジ
ェクトを得るための関数)を設定する処理を行う。より
具体的には本実施形態では、オブジェクトの構成点を求
めるために設定されたサンプリング点(メッシュ点)の
座標(第1、第2、第3の座標。X、Z、Y座標)と時
間(仮想空間での経過時間又は現実世界での経過時間
等)とを引数とする関数を用意する。
The function setting unit 112 is an object (surface object, water surface object, wave object, etc.)
Is performed to set a function (a function for deforming the base plane to obtain a plane object) that generates the constituent points of. More specifically, in the present embodiment, the coordinates (first, second, and third coordinates; X, Z, and Y coordinates) of sampling points (mesh points) set to obtain constituent points of an object and time (Elapsed time in the virtual space or elapsed time in the real world) is prepared as an argument.

【0043】構成点演算部114は、オブジェクトの構
成点を求めるために設定されたサンプリング点(自由曲
面における制御点を含む)に基づいてオブジェクトの構
成点をリアルタイムに求める処理を行う。より具体的に
は、関数設定部112で設定された関数(関数の返値)
に基づいて、オブジェクトの構成点(頂点)の座標(第
1、第2、第3の座標。X、Z、Y座標)を求める処理
を行い、オブジェクト(面オブジェクト)の形状を時間
経過に応じて変形させる。
The composing point calculation unit 114 performs a process for obtaining the composing points of the object in real time based on the sampling points (including the control points on the free-form surface) set for obtaining the composing points of the object. More specifically, the function (return value of the function) set by the function setting unit 112
Is performed to determine the coordinates (first, second, and third coordinates; X, Z, and Y coordinates) of the constituent points (vertexes) of the object based on the shape of the object (plane object) according to the passage of time. To deform.

【0044】そして本実施形態では、このようにして求
められた構成点(或いはせん断変形で変位させた構成
点)に基づいて、オブジェクトの画像が生成される。よ
り具体的には、求められた構成点に基づいてプリミティ
ブデータ(ポリゴンデータ)が作成され、このプリミテ
ィブデータを用いてプリミティブを描画することで、オ
ブジェクトの画像(波の画像)が生成される。
In the present embodiment, an image of the object is generated based on the constituent points (or constituent points displaced by shear deformation) determined in this way. More specifically, primitive data (polygon data) is created based on the obtained constituent points, and an image of the object (wave image) is generated by drawing the primitive using the primitive data.

【0045】なお本実施形態では、構成点演算部114
が、オブジェクトの構成点の第3の座標(例えばY座
標)を、サンプリング点(メッシュ点)の第1の座標
(例えばX座標)と時間を引数とする第1の周期関数
(三角関数又は楕円関数等。以下の説明でも同様)と、
サンプリング点の第2の座標(例えばZ座標)と時間を
引数とする第2の周期関数との合成関数(第1、第2の
周期関数の加算、減算、乗算又は除算等により得られる
第3の周期関数)を用いて求めることが望ましい。この
ようにすることで、水面の波等の多様な表現を少ない処
理負荷で実現できるようになる。
In this embodiment, the constituent point calculation unit 114
Is a first periodic function (a trigonometric function or an ellipse) using the third coordinate (for example, the Y coordinate) of the constituent point of the object as the first coordinate (for example, the X coordinate) of the sampling point (mesh point) and time as arguments. Functions, etc.)
A composite function of the second coordinate (for example, the Z coordinate) of the sampling point and a second periodic function having time as an argument (third obtained by addition, subtraction, multiplication, division, or the like of the first and second periodic functions) It is desirable to use a periodic function). In this way, various expressions such as waves on the water surface can be realized with a small processing load.

【0046】また本実施形態では、パラメータ設定部1
10が、これらの第1、第2の周期関数(第3の周期関
数)の波長パラメータや角振動数パラメータや振幅パラ
メータの値を可変に設定(任意の値に設定)することが
望ましい。より具体的には、これらのパラメータの値を
イベント発生や時間経過に応じて変化させることが望ま
しい。このようにすることで、オブジェクトの第1、第
2の座標軸方向での波形状(波の高さに相当する第3の
座標)の波長(波数)や角振動数(振動数、周期)や振
幅が可変に設定されるようになる。
In this embodiment, the parameter setting unit 1
It is desirable that the variably set (set to an arbitrary value) the wavelength parameter, the angular frequency parameter, and the amplitude parameter of the first and second periodic functions (third periodic function). More specifically, it is desirable to change the values of these parameters according to the occurrence of an event or the passage of time. By doing so, the wavelength (wave number), angular frequency (frequency, period) of the wave shape (the third coordinate corresponding to the wave height) in the first and second coordinate axis directions of the object, The amplitude is set variably.

【0047】またオブジェクトがNURBS(Non Unif
orm Rational B-Spline)などの自由曲面で表される場
合には、構成点演算部114は、設定された分割数と制
御点(サンプリング点)とに基づき、分割数により決め
られる生成間隔でオブジェクトの構成点を求める処理を
行う。より具体的には、パラメータを変化させながら自
由曲面上の各構成点を順次求める処理を行う。
If the object is a NURBS (Non Unif
or a free-form surface such as a Rational B-Spline), the constituent point calculation unit 114 generates an object at a generation interval determined by the number of divisions based on the set number of divisions and the control points (sampling points). Is performed to obtain the constituent points of More specifically, a process of sequentially obtaining each constituent point on the free-form surface while changing parameters is performed.

【0048】なお、分割数とは、制御点(オブジェクト
の形状を定義するための点)からオブジェクトの構成点
を求める際の、構成点の生成間隔を決めるパラメータで
ある。別の言い方をすれば、制御点の個数とその制御点
により生成される構成点の個数との比に相当するパラメ
ータである。
The number of divisions is a parameter for determining a generation interval of constituent points when obtaining constituent points of an object from control points (points for defining the shape of the object). In other words, it is a parameter corresponding to a ratio between the number of control points and the number of constituent points generated by the control points.

【0049】この分割数を変化させることで、オブジェ
クトの精密度(構成点数、プリミティブ数、ポリゴン
数)を可変に制御できるようになる。
By changing the number of divisions, the precision of the object (the number of constituent points, the number of primitives, the number of polygons) can be variably controlled.

【0050】法線ベクトル演算部116は、各構成点で
のオブジェクトの法線ベクトル(オブジェクトの面の向
きを表す擬似的な法線ベクトル)を求める処理を行う。
The normal vector calculation unit 116 performs a process for obtaining a normal vector of the object at each constituent point (a pseudo normal vector representing the direction of the object surface).

【0051】そして本実施形態では法線ベクトル演算部
116が、サンプリング点の位置(座標)と、このサン
プリング点に対応する構成点の位置(座標)とに基づい
て、各構成点でのオブジェクトの法線ベクトル(擬似的
な法線ベクトル)を求める処理を行う。より具体的に
は、サンプリング点の位置と構成点の位置とを結ぶ方向
のベクトルを求め、このベクトルの第1、第2、第3の
座標成分(X、Z、Y座標成分)を用いた四則演算(加
算、減算、乗算又は除算)を行うことで、このベクトル
の方向を補正し、オブジェクトの各構成点の法線ベクト
ルを求める。この場合、上記四則演算により、上記ベク
トルを第2の座標軸(例えばY座標軸)に関して線対称
変換することで、法線ベクトルを求めることが望まし
い。
In the present embodiment, the normal vector calculation unit 116 calculates the position of the object at each of the constituent points based on the position (coordinate) of the sampling point and the position (coordinate) of the constituent point corresponding to the sampling point. A process for obtaining a normal vector (a pseudo normal vector) is performed. More specifically, a vector in a direction connecting the position of the sampling point and the position of the constituent point is obtained, and the first, second, and third coordinate components (X, Z, and Y coordinate components) of this vector are used. By performing four arithmetic operations (addition, subtraction, multiplication, or division), the direction of this vector is corrected, and the normal vector of each constituent point of the object is obtained. In this case, it is desirable to obtain a normal vector by subjecting the vector to line symmetric transformation with respect to a second coordinate axis (for example, a Y coordinate axis) by the above four arithmetic operations.

【0052】ヒット処理部118は、オブジェクト(第
1のオブジェクト)と他のオブジェクト(第2のオブジ
ェクト)との間のヒット処理を行う。
The hit processing section 118 performs a hit process between an object (first object) and another object (second object).

【0053】より具体的にはヒット処理部118は、第
1のオブジェクト(例えばキャラクタ)と第2のオブジ
ェクト(例えば矢や弾等のショット)との間にヒットイ
ベントが発生したか否かを判定する処理(ヒットチェッ
ク処理)を行う。そして、ヒットイベントが発生したと
判定された場合には、ヒット時の状況に応じた種々の処
理を行う。例えば、第2のオブジェクトが第1のオブジ
ェクトにヒットした方向と、ヒット位置(第1のオブジ
ェクトの構成点)に設定されている法線ベクトルとに基
づいて、第2のオブジェクトの跳ね返り方向を計算し、
その方向に第2のオブジェクトを跳ね返す処理などを行
う。或いは、第2のオブジェクトが壁などにヒットした
場合には、第2のオブジェクトを消滅させる処理などを
行う。
More specifically, hit processing section 118 determines whether or not a hit event has occurred between a first object (for example, a character) and a second object (for example, a shot such as an arrow or a bullet). (Hit check processing). If it is determined that a hit event has occurred, various processes are performed according to the situation at the time of the hit. For example, the rebound direction of the second object is calculated based on the direction in which the second object hits the first object and the normal vector set at the hit position (the constituent point of the first object). And
For example, a process of bouncing the second object in that direction is performed. Alternatively, when the second object hits a wall or the like, a process of deleting the second object is performed.

【0054】なお、第2のオブジェクトとして、画面に
表示されない仮想的なオブジェクトを用いてもよい。
Note that a virtual object that is not displayed on the screen may be used as the second object.

【0055】画像生成部120は、処理部100で行わ
れる種々の処理の結果に基づいて画像処理を行い、ゲー
ム画像を生成し、表示部190に出力する。例えば、い
わゆる3次元のゲーム画像を生成する場合には、まず、
座標変換、クリッピング処理、透視変換、或いは光源計
算等のジオメトリ処理が行われ、その処理結果に基づい
て、プリミティブデータ(プリミティブの構成点(頂
点)の位置座標、テクスチャ座標、色(輝度)データ、
法線ベクトル或いはα値等)が作成される。そして、こ
のプリミティブデータ(ポリゴン、自由曲面又はサブデ
ィビジョンサーフェス等のプリミティブのデータ。描画
データ)に基づいて、ジオメトリ処理後のオブジェクト
(1又は複数のプリミティブ)の画像が、描画バッファ
174(フレームバッファ、ワークバッファ等のピクセ
ル単位で画像情報を記憶できるバッファ)に描画され
る。これにより、オブジェクト空間内において仮想カメ
ラ(所与の視点)から見える画像が生成されるようにな
る。
The image generator 120 performs image processing based on the results of various processes performed by the processor 100, generates a game image, and outputs the game image to the display 190. For example, when generating a so-called three-dimensional game image, first,
Geometry processing such as coordinate conversion, clipping processing, perspective conversion, or light source calculation is performed. Based on the processing results, primitive data (position coordinates of primitive constituent points (vertexes), texture coordinates, color (luminance) data,
Normal vector or α value) is created. Based on the primitive data (primitive data such as a polygon, a free-form surface, or a subdivision surface; drawing data), an image of the object (one or more primitives) after the geometry processing is drawn into the drawing buffer 174 (frame buffer, The image is drawn on a buffer such as a work buffer that can store image information in pixel units. As a result, an image that can be viewed from the virtual camera (given viewpoint) in the object space is generated.

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

【0057】画像生成部120は、伸張部122、テク
スチャマッピング部124、シェーディング部126を
含む。
The image generation unit 120 includes a decompression unit 122, a texture mapping unit 124, and a shading unit 126.

【0058】ここで、伸張部122(展開部、デコード
部)は、JPEG、MPEG等の圧縮方法で圧縮された
データを伸張(展開、デコード)する処理を行う。より
具体的には、MPEGで圧縮された一連のIピクチャを
伸張する。
Here, the decompression unit 122 (decompression unit, decoding unit) decompresses (decompresses and decodes) data compressed by a compression method such as JPEG or MPEG. More specifically, a series of I pictures compressed by MPEG are expanded.

【0059】テクスチャマッピング部124は、テクス
チャ記憶部176に記憶されるテクスチャをオブジェク
トにマッピングするための処理を行う。
The texture mapping unit 124 performs a process for mapping a texture stored in the texture storage unit 176 to an object.

【0060】ここで本実施形態では、テクスチャ記憶部
176が、一連の第1〜第Nの圧縮テクスチャを含む圧
縮ムービーテクスチャのデータを記憶する。
Here, in the present embodiment, the texture storage unit 176 stores compressed movie texture data including a series of first to N-th compressed textures.

【0061】そして伸張部122が、この圧縮ムービー
テクスチャのデータに基づいて伸張処理を行い、テクス
チャマッピング部124が、一連の第1〜第Nの圧縮テ
クスチャを伸張することで得られる一連の第1〜第Nの
伸張テクスチャをオブジェクトに順次マッピングするた
めの処理を行う。
The decompression unit 122 performs decompression processing based on the data of the compressed movie texture, and the texture mapping unit 124 decompresses a series of first to N-th compressed textures obtained by decompression. A process for sequentially mapping the Nth expanded texture to the object is performed.

【0062】また本実施形態では、テクスチャ記憶部1
76が環境テクスチャマッピングのための環境テクスチ
ャを記憶する。そしてテクスチャマッピング部124
が、法線ベクトル演算部116により求められたオブジ
ェクトの法線ベクトルに基づいて、テクスチャ記憶部1
76に記憶される環境テクスチャをオブジェクトにマッ
ピングするための処理を行う。
In this embodiment, the texture storage unit 1
76 stores an environment texture for environment texture mapping. And the texture mapping unit 124
Is stored in the texture storage unit 1 based on the normal vector of the object obtained by the normal vector operation unit 116.
A process for mapping the environment texture stored in 76 to the object is performed.

【0063】シェーディング処理部126はオブジェク
トに陰影をつけるための処理を行う。より具体的には、
光源情報(光源の位置又は方向等)や、法線ベクトル演
算部116により求められたオブジェクトの法線ベクト
ルに基づいて、例えばグーロー(Gouraud)やフォン(P
hong)などの手法によりオブジェクトのシェーディング
処理を行う。
The shading processing unit 126 performs a process for shading an object. More specifically,
Based on the light source information (such as the position or direction of the light source) and the normal vector of the object obtained by the normal vector calculation unit 116, for example, Gouraud or Phong (P
hong) and other methods.

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

【0065】また複数のプレーヤがプレイする場合に、
これらの複数のプレーヤに提供するゲーム画像やゲーム
音を、1つの端末を用いて生成してもよいし、ネットワ
ーク(伝送ライン、通信回線)などで接続された複数の
端末(ゲーム機、携帯電話)を用いて生成してもよい。
When a plurality of players play,
The game image and the game sound to be provided to the plurality of players may be generated using one terminal, or may be generated using a plurality of terminals (game machine, mobile phone, etc.) connected via a network (transmission line, communication line) or the like. ) May be generated.

【0066】2.本実施形態の特徴 次に本実施形態の特徴について図面を用いて説明する。
なお、以下では、水面表現に本発明を適用した場合を主
に例にとり説明するが、本発明は、水面表現以外の他の
画像表現にも適用できる。
2. Features of the present embodiment Next, features of the present embodiment will be described with reference to the drawings.
In the following, a case where the present invention is applied to the water surface expression will be mainly described as an example, but the present invention can be applied to other image expressions other than the water surface expression.

【0067】2.1 関数を用いた構成点の生成 本実施形態では図2(A)に示すように、サンプリング
点SP1〜16(K×L個のサンプリング点。複数のサ
ンプリング点)がメッシュ状に等間隔で配置されるベー
ス面BS(メッシュ)を用意する。そして、このベース
面BSを変形(変換)して水面オブジェクトWS(広義
には面オブジェクト又はオブジェクト。以下の説明でも
同様)を得る。
2.1 Generation of Constituent Points Using Function In this embodiment, as shown in FIG. 2A, sampling points SP1 to SP16 (K × L sampling points; a plurality of sampling points) are meshed. A base surface BS (mesh) arranged at equal intervals is prepared. Then, the base surface BS is deformed (converted) to obtain a water surface object WS (a surface object or an object in a broad sense; the same applies to the following description).

【0068】より具体的には下式のように、ベース面B
Sのサンプリング点SP1〜16の座標(X、Y、Z)
と時間tとを引数とする関数Fを用いて、水面オブジェ
クトWSの構成点CP1〜16(K×L個の構成点。複
数の構成点)の座標(XN、YN、ZN)を求める。
More specifically, as shown in the following equation, the base surface B
Coordinates (X, Y, Z) of S sampling points SP1-16
The coordinates (XN, YN, ZN) of the constituent points CP1 to 16 (K × L constituent points; a plurality of constituent points) of the water surface object WS are obtained by using the function F having the argument and the time t as arguments.

【0069】 (XN、YN、ZN)=F(X、Y、Z、t) (1) なお、時間t(仮想空間での経過時間又は現実世界での
経過時間等)は、フレーム更新のタイミング(表示部に
出力する垂直同期信号VSYNCがアクティブになるタ
イミング)でカウントアップされるカウント値(カウン
ト値の変数)を用いて取得してもよいし、画像生成シス
テムが有するリアルタイムクロックのタイマを用いて取
得してもよい。
(XN, YN, ZN) = F (X, Y, Z, t) (1) The time t (elapsed time in the virtual space or elapsed time in the real world) is a frame update timing. It may be obtained using a count value (variable of the count value) that is counted up at (the timing when the vertical synchronization signal VSYNC output to the display unit becomes active), or using a real-time clock timer included in the image generation system. May be obtained.

【0070】本実施形態では、上式(1)の関数Fとし
てトロコイド曲線の関数(トロコイド関数)を採用して
いる。ここでトロコイド曲線とは、図3に示すように、
半径aの円SPHが直線SL(底線)上を回転して転が
る場合に、回転する円SPHの中心の点Pから距離bだ
け離れた点PN(XN、YN)が描く軌跡である。
In the present embodiment, a function of a trochoid curve (trochoid function) is adopted as the function F of the above equation (1). Here, the trochoid curve is, as shown in FIG.
When a circle SPH having a radius a rolls on a straight line SL (bottom line) and rolls, a point PN (XN, YN) separated by a distance b from a center point P of the rotating circle SPH is a locus drawn.

【0071】このトロコイド関数は、媒介変数θを用い
て下式のように表すことができる。
The trochoid function can be expressed by the following equation using the parameter θ.

【0072】XN=aθ−bsinθ (2) YN=b−bcosθ (3) このトロコイド曲線の軌跡は、a、bの設定値により、
インフェリアトロコイド(a>bの場合)、サイクロイ
ド(a=bの場合)、スーパートロコイド(a<bの場
合)の3つのパターンに分けることができる。
XN = aθ−bsinθ (2) YN = b−bcosθ (3) The trajectory of the trochoid curve is represented by the set values of a and b.
It can be divided into three patterns: inferior trochoid (when a> b), cycloid (when a = b), and supertrochoid (when a <b).

【0073】今、点P(X、Y)=(aθ、b)を図2
(A)のサンプリング点とし、点PN(XN、YN)=
(aθ−bsinθ、b−bcosθ)を図2(A)の
構成点とすると、上式(2)、(3)は下式のように変
形できる。
Now, the point P (X, Y) = (aθ, b) is shown in FIG.
(A), the point PN (XN, YN) =
Assuming that (aθ-bsinθ, b-bcosθ) is the configuration point in FIG. 2A, the above equations (2) and (3) can be transformed into the following equations.

【0074】XN=X+Rsinβ (4) YN=Y+Rcosβ (5) 但し上式(4)、(5)において、振幅パラメータR=
bであり、媒介変数β=θ−πである。
XN = X + Rsinβ (4) YN = Y + Rcosβ (5) However, in the above equations (4) and (5), the amplitude parameter R =
b, and the parameter β = θ−π.

【0075】また、媒介変数βは、座標Xと時間tを用
いてβ=X×2π/λ+t×ωと表すことができるた
め、上式(4)、(5)は下式のように変形できる。
Since the parameter β can be expressed as β = X × 2π / λ + t × ω using the coordinate X and the time t, the above equations (4) and (5) are transformed as the following equations. it can.

【0076】 XN=X+Rsin(X×2π/λ+t×ω) (6) YN=Y+Rcos(X×2π/λ+t×ω) (7) ここで、λは波長パラメータ(トロコイド曲線の回転角
サンプリングスケール)であり、ωは角振動数パラメー
タ(時間サンプリングスケール)である。
XN = X + R sin (X × 2π / λ + t × ω) (6) YN = Y + Rcos (X × 2π / λ + t × ω) (7) where λ is a wavelength parameter (rotation angle sampling scale of trochoid curve). And ω is the angular frequency parameter (time sampling scale).

【0077】更に、座標XをX=MX×MSXと表すと、
上式(6)、(7)は下式のように変形できる。
Further, when the coordinate X is expressed as X = M X × MS X ,
The above equations (6) and (7) can be modified as the following equations.

【0078】 XN=MX×MSX+Rsin(MX×MSX×2π/λ+t×ω) (8) YN=Y+Rcos(MX×MSX×2π/λ+t×ω) (9) ここで、MXはX軸方向でのサンプリングカウンタ(サ
ンプリング点のカウンタ)であり、MSXはX軸方向で
のサンプリングスケール(X軸方向でのサンプリング点
間の距離)である。
XN = M X × MS X + R sin (M X × MS X × 2π / λ + t × ω) (8) YN = Y + R cos (M X × MS X × 2π / λ + t × ω) (9) where M X is a sampling counter (counter of sampling points) in the X-axis direction, and MS X is a sampling scale (distance between sampling points in the X-axis direction) in the X-axis direction.

【0079】なお、ゲーム中において各フレーム(イン
ター)での水面(波)を描画する際には、tはフレーム
カウンタになり、MXはループカウンタになる。
When drawing a water surface (wave) at each frame (inter) during the game, t is a frame counter and MX is a loop counter.

【0080】上式(8)、(9)を3次元に拡張すると
下式のようになる。但し、ベース面をX−Z平面とす
る。
When the above equations (8) and (9) are extended to three dimensions, the following equations are obtained. However, the base surface is an XZ plane.

【0081】 XN=MX×MSX+RXsin(MX×MSX×2π/λX+t×ωX)(10) YN=Y+H×{RXcos(MX×MSX×2π/λX+t×ωX)+ RZcos(MZ×MSZ×2π/λZ+t×ωZ)}(11) ZN=MZ×MSZ+RZsin(MZ×MSZ×2π/λZ+t×ωZ)(12) 但し、 MX:X軸方向でのサンプリングカウンタ MZ:Z軸方向でのサンプリングカウンタ MSX:X軸方向でのサンプリングスケール MSZ:Z軸方向でのサンプリングスケール RX:X軸方向での振幅パラメータ(回転半径) RZ:Z軸方向での振幅パラメータ(回転半径) λX:X軸方向での波長パラメータ λZ:Z軸方向での波長パラメータ ωX:X軸方向での角振動数パラメータ ωZ:Z軸方向での角振動数パラメータ H :波形のY軸方向スケール(振幅パラメータ) である。XN = M X × MS X + R x sin (M X × MS X × 2π / λ X + t × ω X ) (10) YN = Y + H × {R X cos (M X × MS X × 2π / λ) X + t × ω X ) + R z cos (M Z × MS Z × 2π / λ Z + t × ω Z )} (11) ZN = M Z × MS Z + R Z sin (M Z × MS Z × 2π / λ) Z + t × ω Z ) (12) where M X : sampling counter in the X-axis direction M Z : sampling counter in the Z-axis direction MS X : sampling scale in the X-axis direction MS Z : sampling in the Z-axis direction Scale R X : Amplitude parameter in X-axis direction (rotation radius) R Z : Amplitude parameter in Z-axis direction (rotation radius) λ X : Wavelength parameter in X-axis direction λ Z : Wavelength parameter in Z-axis direction ω X : angular frequency parameter in the X-axis direction ω Z : angular frequency parameter H in the Z-axis direction : Y-axis scale (amplitude parameter) of waveform.

【0082】なお、前述のように、 (XN、YN、ZN)=F(X、Y、Z、t) =F(MX×MSX、Y、MZ×MSZ、t) (13) の関係が成り立つ。Incidentally, as described above, (XN, YN, ZN) = F (X, Y, Z, t) = F (M x × MS x , Y, M z × MS z , t) (13) Holds.

【0083】上式(11)は下式のように変形できる。The above equation (11) can be modified as the following equation.

【0084】 YN=Y+H×{F1(MX×MSX、t)+F2(MZ×MSZ、t)} =Y+H×{F1(X、t)+F2(Z、t)} (14) 但し、 F1(X、t)=F1(MX×MSX、t) =RXcos(MX×MSX×2π/λX+t×ωX) (15) F2(Z、t)=F2(MZ×MSZ、t) =RZcos(MZ×MSZ×2π/λZ+t×ωZ) (16) である。[0084] YN = Y + H × {F1 (M X × MS X, t) + F2 (M Z × MS Z, t)} = Y + H × {F1 (X, t) + F2 (Z, t)} (14) where , F1 (X, t) = F1 (M X × MS X, t) = R X cos (M X × MS X × 2π / λ X + t × ω X) (15) F2 (Z, t) = F2 ( M Z × MS Z, t) = R Z cos (M Z × MS Z × 2π / λ Z + t × ω Z) is (16).

【0085】即ち本実施形態では図4に示すように、サ
ンプリング点の座標X(第1の座標)と時間tを引数と
する周期関数F1(X、t)(第1の周期関数)と、サ
ンプリング点の座標Z(第2の座標)と時間tを引数と
する周期関数F2(Z、t)(第2の周期関数)との合
成(加算、減算、乗算又は除算等)により得られる関数
(式(14))に基づいて、構成点の座標YN(第3の
座標)が求められる。
That is, in the present embodiment, as shown in FIG. 4, a periodic function F1 (X, t) (first periodic function) having a coordinate X (first coordinate) of a sampling point and a time t as arguments, A function obtained by synthesis (addition, subtraction, multiplication, division, etc.) of a sampling point coordinate Z (second coordinate) and a periodic function F2 (Z, t) (second periodic function) having time t as an argument. The coordinates YN (third coordinates) of the constituent points are obtained based on (Equation (14)).

【0086】このようにして構成点の座標YN(波の高
さ)を求めることで、水面の波の形状を多様に変化させ
ることが可能になり、周期関数を用いているのにもかか
わらず、生成される波画像が単調になる事態を防止でき
る。
By obtaining the coordinates YN (wave height) of the constituent points in this way, it is possible to change the shape of the water surface wave in various ways, and despite the fact that a periodic function is used, In addition, it is possible to prevent the generated wave image from becoming monotonous.

【0087】即ち、波長パラメータλX、λZ、角振動数
パラメータωX、ωZ、振幅パラメータRX、RZを種々の
値に設定することで、水面オブジェクトのX、Z座標軸
方向での波形状の波長や角振動数や振幅を多様に変化さ
せることが可能になり、各ゲーム場面に応じた適切な波
画像を生成できるようになる。
That is, by setting the wavelength parameters λ X , λ Z , the angular frequency parameters ω X , ω Z , and the amplitude parameters R X , R Z to various values, the water surface object in the X and Z coordinate axis directions can be obtained. The wavelength, angular frequency, and amplitude of the wave shape can be varied in various ways, and an appropriate wave image according to each game scene can be generated.

【0088】図5(A)、(B)、(C)に、本実施形
態において水面オブジェクトにマッピングされるムービ
ーテクスチャの画像例を示す。これらのムービーテクス
チャは水面(波の表面の絵柄)を表現するためのテクス
チャであり、これらのムービーテクスチャを連続して巡
回的に再生することで、水面をリアルに表現できる。
FIGS. 5A, 5B, and 5C show examples of movie texture images mapped to water surface objects in the present embodiment. These movie textures are textures for expressing the water surface (a pattern on the surface of a wave), and the water surface can be realistically reproduced by continuously and cyclically reproducing these movie textures.

【0089】本実施形態では上式(10)、(11)、
(12)によりその座標が求められた構成点(頂点)に
基づいて、図6(A)のワイヤーフレーム表示に示され
るように、水面オブジェクトを構成する複数のポリゴン
(広義にはプリミティブ)を生成する。
In this embodiment, the above equations (10), (11),
Based on the constituent points (vertexes) whose coordinates have been obtained by (12), a plurality of polygons (primitives in a broad sense) constituting the water surface object are generated as shown in the wire frame display of FIG. I do.

【0090】そして本実施形態では、これらの各ポリゴ
ンに対して図5(A)、(B)、(C)に示すムービー
テクスチャを巡回的にマッピングすることで、図6
(B)〜図8(B)に示すようなリアルな波画像の生成
に成功している。
In the present embodiment, the movie textures shown in FIGS. 5A, 5B, and 5C are cyclically mapped to these polygons, whereby the polygons shown in FIGS.
(B) to FIG. 8 (B), the generation of a realistic wave image has been successful.

【0091】例えば図6(B)、図7(A)、(B)で
は、1つ目の波がプレーヤの視点の方に徐々に迫ってい
る。そして1つ目の波が通り過ぎると、今度は、図8
(A)、(B)に示すように2つ目の波がプレーヤの視
点の方に徐々に近づいて来る。
For example, in FIGS. 6B, 7A and 7B, the first wave gradually approaches the viewpoint of the player. And when the first wave passes, this time, FIG.
(A) and (B), the second wave gradually approaches the viewpoint of the player.

【0092】この時、図6(B)と図8(A)、(B)
を比較すればわかるように本実施形態では、1つ目の波
と2つ目の波はその形状が全く異なったものになってい
る。同様に、2つ目の波の次に来る3つ目の波も、1つ
目、2つ目の波とはその形状が全く異なったものになっ
ている。
At this time, FIGS. 6B and 8A and 8B
As can be seen from the comparison, in the present embodiment, the first wave and the second wave have completely different shapes. Similarly, the third wave following the second wave has a completely different shape from the first and second waves.

【0093】このように本実施形態によれば、周期関数
を用いて波を表現しているのにもかかわらず、得られる
波画像が単調にならず、現実世界のようなリアルな波画
像を少ない処理負荷で生成でき、プレーヤの仮想現実感
を向上できる。
As described above, according to the present embodiment, although a wave is expressed using a periodic function, the obtained wave image is not monotonous, and a real wave image such as the real world is obtained. It can be generated with a small processing load, and the virtual reality of the player can be improved.

【0094】なお、上式(10)に示すように、オブジ
ェクトの構成点(頂点)の座標XN(第1の座標)につ
いては、サンプリング点の座標Xと時間tを引数とする
周期関数F3(X、t)=RXsin(MX×MSX×2
π/λX+t×ωX)(第3の周期関数)に基づき求める
ことが望ましい。
As shown in the above equation (10), as for the coordinates XN (first coordinates) of the constituent points (vertexes) of the object, the periodic function F3 ( X, t) = R x sin (M x × MS x × 2
π / λ X + t × ω X ) (third periodic function).

【0095】また、上式(12)に示すように、オブジ
ェクトの構成点の座標ZN(第2の座標)については、
サンプリング点の座標Zと時間tを引数とする周期関数
F4(Z、t)=RZsin(MZ×MSZ×2π/λZ
t×ωZ)(第4の周期関数)に基づき求めることが望
ましい。
As shown in the above equation (12), the coordinates ZN (second coordinates) of the constituent points of the object are calculated as follows.
Periodic function F4 to a coordinate Z and time t of the sampling point and the argument (Z, t) = R Z sin (M Z × MS Z × 2π / λ Z +
t × ω Z ) (fourth periodic function).

【0096】このように構成点の座標XN、ZNを周期
関数に基づいて求めるようにすれば、図9に示すよう
に、等間隔のサンプリング点SP1〜15を用いながら
も、波の波頭部分における構成点の密度を高くすること
が可能になる。
As described above, when the coordinates XN and ZN of the constituent points are obtained based on the periodic function, as shown in FIG. It is possible to increase the density of the constituent points.

【0097】即ち、極大値又は極小値に近づくほど傾き
(変化量)が小さくなるという周期関数(sin、co
s)の特徴により、波形が急峻な波頭部分(図9のA
1)での構成点数が多くなり(構成点の密度が高くな
り)、その部分でのポリゴン(プリミティブ)の分割数
が多くなる。一方、波形が緩やかな部分(図9のA2)
での構成点数が少なくなり、その部分でのポリゴンの分
割数が少なくなる。
That is, a periodic function (sin, co) in which the slope (change amount) becomes smaller as approaching the maximum value or the minimum value.
s), the waveform has a steep wave front (A in FIG. 9).
The number of constituent points in 1) increases (the density of constituent points increases), and the number of polygon (primitive) divisions in that part increases. On the other hand, a portion with a gentle waveform (A2 in FIG. 9)
And the number of polygons at that portion is reduced.

【0098】従って、波の波頭部分(A1)については
形状が時間経過に伴い大きく変化するためポリゴン分割
数をなるべく多くすべきであるという要請と、波形が緩
やかな部分(A2)については処理負荷を軽くするため
にポリゴン分割数をなるべく小さくすべきであるという
要請を両立できるようになる。これにより、少ない処理
負荷でよりリアルな画像をできる。
Therefore, since the shape of the wave front part (A1) changes greatly with the passage of time, the number of polygon divisions should be increased as much as possible, and the processing load is applied to the part (A2) having a gentle waveform. , The requirement that the number of polygon divisions should be reduced as much as possible. Thus, a more realistic image can be obtained with a small processing load.

【0099】なお、構成点の座標XN、ZNを周期関数
に基づいて求めずに、周期関数ではない別の関数に基づ
いて求めたり、構成点の座標XN、ZNをサンプリング
点の座標X、Zに設定したりすることも可能である。
It should be noted that the coordinates XN and ZN of the constituent point are not obtained based on the periodic function but based on another function other than the periodic function, or the coordinates XN and ZN of the constituent point are obtained based on the coordinates X and Z of the sampling point. It is also possible to set to.

【0100】2.2 法線ベクトルの演算 さて、以上のようにしてオブジェクトの構成点を求め、
求められた構成点に基づきポリゴンを生成すれば、リア
ルな形状のオブジェクトの画像を生成できる。
2.2 Calculation of Normal Vector Now, the constituent points of the object are obtained as described above.
If a polygon is generated based on the obtained constituent points, an image of an object having a realistic shape can be generated.

【0101】しかしながら、より写実的な画像を得るた
めには、オブジェクトの形状をリアルな形状にするだけ
では不十分であり、光源からの光による陰影づけをオブ
ジェクトに対して施すことが望ましい。即ち、オブジェ
クトに陰影をつけることで、プレーヤは、オブジェクト
の各面がどの方向を向いているのかを視覚的に認識でき
るようになり、オブジェクトの形状を正確に把握できる
ようになるからである。
However, in order to obtain a more realistic image, it is not sufficient to make the shape of the object a realistic shape, and it is desirable to apply shading to the object by light from a light source. That is, by shading the object, the player can visually recognize which direction each surface of the object is facing, and can accurately grasp the shape of the object.

【0102】例えば、予め用意されたモデルデータに基
づきオブジェクトの画像を生成する場合には、モデルデ
ータの中に法線ベクトルのデータが含まれており、オブ
ジェクトの各構成点(頂点)に対して法線ベクトルのデ
ータが予め与えられているため、法線ベクトルをリアル
タイムに演算する必要はない。
For example, when an image of an object is generated based on model data prepared in advance, data of a normal vector is included in the model data, and each component point (vertex) of the object is Since the data of the normal vector is given in advance, there is no need to calculate the normal vector in real time.

【0103】しかしながら本実施形態のように、オブジ
ェクトの構成点を求め、オブジェクトをリアルタイムに
生成する手法では、オブジェクトの各構成点に対して法
線ベクトルのデータを予め与えておくことはできず、生
成されたオブジェクトの各面の向きに応じた法線ベクト
ルをリアルタイムに求める必要がある。
However, in the method of generating the object in real time by obtaining the constituent points of the object as in the present embodiment, it is not possible to provide normal vector data to each constituent point of the object in advance. It is necessary to obtain a normal vector corresponding to the direction of each surface of the generated object in real time.

【0104】この場合、生成されたオブジェクトの法線
ベクトルをリアルタイムに求める1つの手法として、オ
ブジェクトの各構成点において2つの接線ベクトルを求
め、これらの接線ベクトルの外積をとることで法線ベク
トルを演算する手法を考えることができる。
In this case, as one method for obtaining the normal vector of the generated object in real time, two tangent vectors are obtained at each constituent point of the object, and the normal vector is obtained by taking the cross product of these tangent vectors. An operation method can be considered.

【0105】しかしながら、この手法では、2つの接線
ベクトルを求める処理(関数の微分演算処理)や接線ベ
クトルの外積を求める処理が各構成点毎に必要になって
しまうため、処理負荷が重くなる。特に、生成されるオ
ブジェクトの構成点数が多い場合には、この処理負荷は
非常に膨大なものとなる。
However, in this method, processing for obtaining two tangent vectors (processing for differentiating a function) and processing for obtaining the cross product of tangent vectors are required for each component point, so that the processing load becomes heavy. In particular, when the number of constituent points of the generated object is large, the processing load becomes extremely enormous.

【0106】そこで本実施形態では、サンプリング点の
位置とそのサンプリング点に対応する構成点の位置とに
基づいて、その構成点でのオブジェクトの法線ベクトル
を求めている。
Therefore, in this embodiment, the normal vector of the object at the constituent point is obtained based on the position of the sampling point and the position of the constituent point corresponding to the sampling point.

【0107】より具体的には図10(A)に示すよう
に、ベース面BSの例えばサンプリング点SP1と水面
オブジェクトWS(広義には面オブジェクト、オブジェ
クト。以下の説明でも同様)の構成点CP1とを結ぶ方
向を向くベクトルV1を求める。
More specifically, as shown in FIG. 10A, for example, the sampling point SP1 of the base plane BS and the constituent points CP1 of the water surface object WS (plane object, object in a broad sense; the same applies to the following description). Is obtained.

【0108】そして、このベクトルV1を、図10
(B)に示すように例えばY軸(広義には所与の軸)を
基準にして線対称変換して、法線ベクトルN1を求め
る。即ち、ベクトルV1とY軸(水面オブジェクトのロ
ーカル座標系のY軸。V1〜V15の平均的な方向に近
い方向の座標軸)のなす角度θVが、法線ベクトルN1
とY軸のなす角度θNに等しくなるように、ベクトルV
1とY軸を含む平面上においてベクトルV1を線対称変
換して、法線ベクトルN1を求める。
Then, this vector V1 is
As shown in (B), for example, a normal vector N1 is obtained by performing line-symmetric conversion on the basis of the Y axis (a given axis in a broad sense). That is, the angle θV formed by the vector V1 and the Y axis (Y axis of the local coordinate system of the water surface object; a coordinate axis close to the average direction of V1 to V15) is the normal vector N1.
Vector V so that it is equal to the angle θN between
The vector V1 is subjected to line-symmetric conversion on a plane including 1 and the Y axis to obtain a normal vector N1.

【0109】例えばベクトルV1の座標成分を(VX、
VY、VZ)とした場合に、法線ベクトルの座標成分
(NX、NY、NZ)は下式のようになる。
For example, the coordinate components of the vector V1 are represented by (VX,
VY, VZ), the coordinate components (NX, NY, NZ) of the normal vector are as follows.

【0110】NX=−VX (17) NY= VY (18) NZ=−VZ (19) 以上のような線対称変換を、サンプリング点SP2〜S
P15と構成点CP2〜CP15を結ぶ方向を向くベク
トルV2〜V15に対しても行うことで、図11に示す
ように、水面オブジェクトWSの擬似的な法線ベクトル
N1〜N15を求めることができる。
NX = -VX (17) NY = VY (18) NZ = -VZ (19) The line symmetric transformation as described above is performed at the sampling points SP2 to SP
By performing this also for the vectors V2 to V15 that are oriented in the direction connecting the P15 and the constituent points CP2 to CP15, the pseudo normal vectors N1 to N15 of the water surface object WS can be obtained as shown in FIG.

【0111】これらの法線ベクトルN1〜N15は、水
面オブジェクトWSの各面に対して正確には垂直になら
ないが、WSの各面の方向を表すベクトルとしては、十
分に使用できる。即ち図11に示すような法線ベクトル
N1〜N15を用いると、正確な陰影づけは実現できな
いが、水面オブジェクトWSの各面が向く方向をプレー
ヤに認識させる程度の陰影づけは可能になる。
Although these normal vectors N1 to N15 are not exactly perpendicular to the respective surfaces of the water surface object WS, they can be sufficiently used as vectors representing the directions of the respective surfaces of the WS. That is, when the normal vectors N1 to N15 as shown in FIG. 11 are used, accurate shading cannot be realized, but shading that allows the player to recognize the direction of each surface of the water surface object WS can be performed.

【0112】そして、これらの法線ベクトルN1〜N1
5は、サンプリング点SP1〜SP15と構成点CP1
〜CP15を結ぶ方向のベクトルV1〜V15を求める
処理と、これらのV1〜V15を線対称変換する処理
(広義にはベクトルの補正処理)だけで求めることがで
きる。従って、オブジェクトの2つの接線ベクトルを求
め、これらの接線ベクトルの外積をとって法線ベクトル
を求める手法に比べて、処理負荷を格段に軽減できる。
The normal vectors N1 to N1
5 denotes sampling points SP1 to SP15 and constituent points CP1
It can be obtained only by the processing of obtaining the vectors V1 to V15 in the direction connecting to CP15 and the processing of performing a line-symmetric conversion of these V1 to V15 (vector correction processing in a broad sense). Therefore, the processing load can be remarkably reduced as compared with a method in which two tangent vectors of an object are obtained and an outer product of these tangent vectors is obtained to obtain a normal vector.

【0113】例えば本実施形態によれば、ベクトルV1
〜15を求める処理は、構成点CP1〜15の座標とサ
ンプリング点SP1〜15の座標の減算処理だけで済
む。また、上式(17)、(18)、(19)の線対称
変換処理も、ベクトルV1〜15のX、Z座標成分の符
号を反転する処理(減算処理)だけで済む。このように
本実施形態によれば、簡単な四則演算だけで法線ベクト
ルN1〜15を求めることができるため、少ない処理負
荷でリアルな画像を生成できるようになる。
For example, according to the present embodiment, the vector V1
The processing for obtaining .about.15 is only required to subtract the coordinates of the constituent points CP1 to CP15 and the coordinates of the sampling points SP1 to SP15. In addition, the line symmetric conversion processing of the above equations (17), (18), and (19) also requires only the processing of inverting the signs of the X and Z coordinate components of the vectors V1 to V15 (subtraction processing). As described above, according to the present embodiment, since the normal vectors N1 to N15 can be obtained only by simple four arithmetic operations, a real image can be generated with a small processing load.

【0114】2.3 自由曲面 さて、本実施形態の法線ベクトル演算手法は、自由曲面
で表されるオブジェクトの法線ベクトルを求める際にも
利用できる。
2.3 Free-Form Surface The normal vector calculation method according to the present embodiment can also be used for obtaining a normal vector of an object represented by a free-form surface.

【0115】まず、オブジェクトを自由曲面で表す手法
について説明する。
First, a method of representing an object by a free-form surface will be described.

【0116】自由曲面の構成点Puv(u,v)のx成
分であるPxuv(u,v)は下式(20)のように求
められる。
P x uv (u, v), which is the x component of the constituent point Puv (u, v) of the free-form surface, is obtained as in the following equation (20).

【0117】[0117]

【数1】 Puv(u,v)のy成分、z成分についても、上式
(20)と同様の式により求めることができる。
(Equation 1) The y component and the z component of Puv (u, v) can also be obtained by the same formula as the above formula (20).

【0118】なお、有理化を行った場合には下式(2
1)のようになる。
When rationalization is performed, the following equation (2)
It becomes like 1).

【0119】[0119]

【数2】 上式(20)、(21)において、Q00〜Q33は制御点
(サンプリング点)である。
(Equation 2) In the above equations (20) and (21), Q 00 to Q 33 are control points (sampling points).

【0120】またNu0,4〜Nu3,4、Nv0,4〜Nv3,4
は混ぜ合わせ関数である。これらの混ぜ合わせ関数は、
下式(22)、(23)の再帰形表現の漸化式(DeBoor
Coxの漸化式)と、下式(24)のノットベクトルT
U、TVとに基づき求めることができる。
Nu 0,4 to Nu 3,4 , Nv 0,4 to Nv 3,4
Is a blending function. These blending functions are
The recurrence formula (DeBoor) of the recursive expression of the following formulas (22) and (23)
Cox recurrence formula) and the knot vector T of the following formula (24)
It can be obtained based on U and TV.

【0121】[0121]

【数3】 (Equation 3)

【0122】[0122]

【数4】 ノットベクトルは、パラメータの節目を数値の列として
与えるベクトルである。ノットベクトルのノット間隔
(ノットベクトルの隣り合う要素間の数値差)が一定で
ある場合には、ユニフォーム(Uniform)と呼ばれ、ノ
ット間隔が一定でない場合は、ノンユニフォーム(Non
Uniform)と呼ばれる。
(Equation 4) The knot vector is a vector that gives a parameter node as a sequence of numerical values. When the knot interval of the knot vector (the numerical difference between adjacent elements of the knot vector) is constant, it is called a uniform. When the knot interval is not constant, the non-uniform (Non-uniform) is used.
Uniform).

【0123】ノンユニフォーム(Non Uniform)で、有
理化(Rational)されたBスプラインが、NURBS
(Non Uniform Rational B-Spline)である。
A non-uniform, Rationalized B-spline is represented by NURBS
(Non Uniform Rational B-Spline).

【0124】図12に、本実施形態により生成された曲
面パッチ20(自由曲面)の例を示す。
FIG. 12 shows an example of a surface patch 20 (free-form surface) generated according to this embodiment.

【0125】上式(20)又は(21)から明らかなよ
うに、曲面パッチ20の各構成点は、制御点Q00〜Q33
(サンプリング点)と混ぜ合わせ関数Nu0,4〜N
3,4、Nv0,4〜Nv3,4に基づき求められる。この場
合、パラメータuの変域はu3≦u<u4となり、パラメ
ータvの変域はv3≦v<v4になる。
As is clear from the above equations (20) and (21), each constituent point of the curved surface patch 20 has control points Q 00 to Q 33.
(Sampling point) and mixing function Nu 0,4 to N
u 3,4 and Nv 0,4 to Nv 3,4 . In this case, the range of the parameter u is u 3 ≦ u <u 4 , and the range of the parameter v is v 3 ≦ v <v 4 .

【0126】一方、曲面パッチ22を生成する場合に
は、使用する制御点のセットが、Q00〜Q33からQ01
34に変わる。そして、曲面パッチ22の各構成点は、
制御点Q01〜Q34と混ぜ合わせ関数Nu1,4〜Nu4,4
Nv0,4〜Nv3,4に基づき求められる。この場合、パラ
メータuの変域はu4≦u<u5となり、パラメータvの
変域はv3≦v<v4になる。
[0126] On the other hand, if you want to generate a curved surface patch 22, a set of control points to be used, Q 01 ~ from Q 00 ~Q 33
It changes to Q 34. And each constituent point of the curved surface patch 22 is:
Control points Q 01 to Q 34 and mixing functions Nu 1,4 to Nu 4,4 ,
It is determined based on Nv 0,4 to Nv 3,4 . In this case, the range of the parameter u is u 4 ≦ u <u 5 , and the range of the parameter v is v 3 ≦ v <v 4 .

【0127】本実施形態により生成された曲面パッチ2
0の各構成点は、ポリゴンの頂点に設定され、これらの
頂点により構成されるポリゴンが画面上に表示されるこ
とになる。
The surface patch 2 generated according to the present embodiment
Each component point of 0 is set to a vertex of the polygon, and the polygon constituted by these vertices is displayed on the screen.

【0128】図13に、自由曲面(NURBS)で表さ
れたオブジェクトOB(ワイヤーフレーム表示)の画像
の例を示す。曲面の分割数を制御することで、オブジェ
クトOBの精密度を変化させることができる。
FIG. 13 shows an example of an image of an object OB (wire frame display) represented by a free-form surface (NURBS). By controlling the number of divisions of the curved surface, the precision of the object OB can be changed.

【0129】さて、このような自由曲面で表されたオブ
ジェクトの法線ベクトルについては、通常は以下に説明
するような手法で求めることになる。
The normal vector of an object represented by such a free-form surface is usually obtained by a method described below.

【0130】例えば、図14において、構成点PでのU
軸方向の接線(傾き)ベクトルUVECのx成分は下式
(25)の計算で求めることができる。y成分、z成分
も同様の計算で求めることができる。
For example, in FIG.
The x component of the axial tangent (inclination) vector UVEC can be obtained by the calculation of the following equation (25). The y component and the z component can be obtained by the same calculation.

【0131】[0131]

【数5】 また、V軸方向の接線ベクトルVVECのx成分は下式
(26)の計算で求めることができる。y成分、z成分
も同様の計算で求めることができる。
(Equation 5) Further, the x component of the tangent vector VVEC in the V-axis direction can be calculated by the following equation (26). The y component and the z component can be obtained by the same calculation.

【0132】[0132]

【数6】 なお、上式(25)、(26)は有理化を行わない場合の式
であるが、有理化を行う場合も同様にして求めることが
できる。
(Equation 6) Although the above equations (25) and (26) are equations in the case where rationalization is not performed, they can be obtained in the same manner when rationalization is performed.

【0133】そして上式(25)、(26)により求め
られた接線ベクトルUVEC、VVECの外積を計算す
ることで、図14に示すように、構成点Pでの法線ベク
トルNを求めることができる。
By calculating the cross product of the tangent vectors UVEC and VVEC obtained by the above equations (25) and (26), the normal vector N at the constituent point P can be obtained as shown in FIG. it can.

【0134】しかしながら、この手法によると、法線ベ
クトルNを求めるために、上式(25)、(26)に示
すような計算や、接線ベクトルUVECとVVECの外
積を求める計算が必要になるため、処理負荷が非常に重
くなってしまう。
However, according to this method, the calculation as shown in the above equations (25) and (26) and the calculation to obtain the outer product of the tangent vector UVEC and VVEC are required to obtain the normal vector N. However, the processing load becomes very heavy.

【0135】これに対して本実施形態の法線ベクトル演
算手法によれば、例えば図15に示すように、オブジェ
クトOBの構成点P1の位置と制御点(サンプリング
点)Q0 0の位置に基づいて、構成点P1での法線ベクト
ルを求めることができる。或いは、構成点P3の位置と
制御点Q01の位置に基づいて、構成点P3での法線ベク
トルを求めることができる。より具体的には、構成点P
1での法線ベクトルは、構成点P1と制御点Q00を結ぶ方
向を向くベクトルやこのベクトルの向きを補正したベク
トルを用いて求めることができる。また、構成点P3
の法線ベクトルは、構成点P3と制御点Q01を結ぶ方向
を向くベクトルやこのベクトルの向きを補正したベクト
ルを用いて求めることができる。
[0135] According to a normal vector computation method of the present embodiment with respect to this. For example, as shown in FIG. 15, the position and the control points of the control points P 1 of the object OB at the position of (sampling point) Q 0 0 based on, it is possible to obtain a normal vector at the control points P 1. Alternatively, based on the position of the control point Q 01 and the position of the control points P 3, it can be determined normal vector at the control points P 3. More specifically, the constituent point P
Normal vector at 1 can be obtained by using a vector obtained by correcting the direction of the vector and the vector oriented in the direction connecting the control points P 1 and the control point Q 00. Further, the normal vector at the control points P 3 can be obtained by using a vector obtained by correcting the direction of the vector and the vector oriented in the direction connecting the control points Q 01 configured point P 3.

【0136】従って、本実施形態の法線ベクトル演算手
法によれば、接線ベクトルの外積を計算して法線ベクト
ルを演算する手法に比べて、格段に負荷の軽い処理で法
線ベクトルを求めることが可能になる。
Therefore, according to the normal vector calculation method of the present embodiment, the normal vector is calculated by a process that is much lighter than the method of calculating the cross product of the tangent vectors and calculating the normal vector. Becomes possible.

【0137】なお、図15の構成点P2での法線ベクト
ルについては、例えば、構成点P2と制御点Q00又はQ
01を結ぶ方向を向くベクトルやこのベクトルの向きを補
正したベクトルを用いて求めてもよいし、構成点P1
の法線ベクトルと構成点P3での法線ベクトルを補間
(線形補間等)することで求めてもよい。
The normal vector at the component point P 2 in FIG. 15 is, for example, the component point P 2 and the control point Q 00 or Q 00.
It vectors and direction of this vector facing direction connecting 01 may be determined using the corrected vector, interpolation normal vectors at the normal vector and configuration point P 3 in the configuration point P 1 (linear interpolation or the like ).

【0138】2.3 環境テクスチャマッピング、シェ
ーディング、ヒット処理 本実施形態では、以上のような手法により得られた法線
ベクトルに基づいて、環境マッピング処理、シェーディ
ング処理などのレンダリング処理や、ヒット処理を行っ
ている。
2.3 Environment Texture Mapping, Shading, Hit Processing In this embodiment, rendering processing such as environment mapping processing, shading processing, and hit processing are performed based on the normal vectors obtained by the above method. Is going.

【0139】例えば図16(A)では、プレーヤが操作
するキャラクタ10(オブジェクト)は、ダンジョンの
中でボスキャラクタ70(オブジェクト)と対峙してい
る。
For example, in FIG. 16A, the character 10 (object) operated by the player faces the boss character 70 (object) in the dungeon.

【0140】この場合に本実施形態では、ボスキャラク
タ70の構成点がリアルタイムに求められると共に、図
16(B)に示すボスキャラクタ70の法線ベクトルN
Vについても、上述した法線ベクトル演算手法によりリ
アルタイムに求められる。
In this case, in this embodiment, the constituent points of the boss character 70 are obtained in real time, and the normal vector N of the boss character 70 shown in FIG.
V is also determined in real time by the normal vector calculation method described above.

【0141】そして本実施形態では図17に示すよう
に、この法線ベクトルNV(NX、NY、NZ)に基づ
いて、環境テクスチャマッピングのためのU、V座標
(広義にはテクスチャ座標)を求める。そして、この
U、V座標に基づいて、テクスチャ記憶部から対応する
テクスチャが読み出されることになる。
In this embodiment, as shown in FIG. 17, U and V coordinates (texture coordinates in a broad sense) for environmental texture mapping are obtained based on this normal vector NV (NX, NY, NZ). . Then, based on the U and V coordinates, the corresponding texture is read from the texture storage unit.

【0142】なお、テクスチャ空間での実際のテクスチ
ャ座標TX、TYは、上記U、V座標と、テクスチャ座
標のオフセットアドレス(ベースアドレス)と、テクス
チャのサイズ情報などに基づいて特定されることにな
る。
The actual texture coordinates TX and TY in the texture space are specified based on the U and V coordinates, the offset address (base address) of the texture coordinates, and the size information of the texture. .

【0143】また、テクスチャ空間に用意される環境テ
クスチャ80は、ボスキャラクタ70から上方向に魚眼
レンズで見た時に得られるような画像になっており、プ
レーヤが操作するキャラクタ10や、ダンジョン内にあ
る出入り口72、炎74、壁76が映し出されている。
The environment texture 80 prepared in the texture space is an image obtained when viewed from the boss character 70 upward with a fisheye lens, and is present in the character 10 operated by the player and in the dungeon. The entrance 72, the flame 74, and the wall 76 are shown.

【0144】このような環境テクスチャ80とボスキャ
ラクタ70の下地テクスチャ(元テクスチャ)とをボス
キャラクタ70にマルチテクスチャマッピングすること
で、図18に示すような画像を生成できる。即ち、ボス
キャラクタ70に、その周囲の環境(キャラクタ10、
出入り口72、炎74、壁76等)が映り込むようにな
り、よりリアルで写実的な画像を生成できる。
The multi-texture mapping of the environment texture 80 and the base texture (original texture) of the boss character 70 onto the boss character 70 can generate an image as shown in FIG. That is, the boss character 70 is provided with the surrounding environment (character 10,
The entrance 72, the flame 74, the wall 76, etc.) are reflected, and a more realistic and realistic image can be generated.

【0145】この場合に本実施形態の法線ベクトル演算
手法には、処理負荷が軽いという優位点がある一方で、
得られる法線ベクトルNVの向く方向がそれほど正確で
はないという不利点がある。
In this case, the normal vector calculation method of the present embodiment has the advantage that the processing load is light,
There is a disadvantage that the direction of the obtained normal vector NV is not very accurate.

【0146】しかしながら、図18に示すような環境テ
クスチャマッピングでは、ボスキャラクタ70に何らか
の画像が映り込んでいれば、プレーヤの仮想現実感を向
上できる。従って、本実施形態の手法で得られるような
それほど正確ではない法線ベクトルNVを用いても、プ
レーヤの仮想現実感を向上させるのには十分な程度の環
境テクスチャマッピングを実現できる。
However, in the environment texture mapping as shown in FIG. 18, if any image is reflected on the boss character 70, the virtual reality of the player can be improved. Therefore, even if a less accurate normal vector NV obtained by the method of the present embodiment is used, it is possible to realize a sufficient degree of environment texture mapping to improve the virtual reality of the player.

【0147】図19では、本実施形態の手法により求め
られた法線ベクトルに基づいて、シェーディング処理を
行っている。
In FIG. 19, shading processing is performed based on the normal vector obtained by the method of the present embodiment.

【0148】即ち、光源82(図18の炎74、キャラ
クタ10が放った光等)からの光の入射方向(或いは光
源の位置)と、法線ベクトルNVの方向と、照明モデル
と基づいて、ボスキャラクタ70のシェーディング処理
を行う。図20(A)を例にとれば、光源82からの光
の入射方向LDと法線ベクトルNVの方向のなす角度θ
(入射角)に基づいて、ピクセル84での輝度を変化さ
せている。例えばcosθが大きいピクセルでは、その
輝度を高くし、cosθが小さいピクセルは、その輝度
を低くする。
That is, based on the incident direction (or the position of the light source) of the light from the light source 82 (the flame 74 in FIG. 18, the light emitted by the character 10, etc.), the direction of the normal vector NV, and the illumination model, The shading process of the boss character 70 is performed. 20 (A) as an example, the angle θ between the incident direction LD of the light from the light source 82 and the direction of the normal vector NV
The luminance at the pixel 84 is changed based on the (incident angle). For example, a pixel having a large cos θ has a high luminance, and a pixel having a small cos θ has a low luminance.

【0149】このようにすることで、光源82からの光
の入射方向(或いは光源の位置)が変化すると、ボスキ
ャラクタ70の陰影づけも変化するようになり、リアル
な画像を生成できる。
In this manner, when the incident direction of the light from the light source 82 (or the position of the light source) changes, the shading of the boss character 70 also changes, and a realistic image can be generated.

【0150】図21(A)では、プレーヤが操作するキ
ャラクタ10が、ボスキャラクタ70に対して矢12
(オブジェクト)を放っている。そして図21(B)で
は、この放った矢12がボスキャラクタ70にヒットし
て跳ね返っている。この場合に、本実施形態では、矢1
2の跳ね返り方向を、ボスキャラクタ70の法線ベクト
ルに基づいて求めている。
In FIG. 21A, the character 10 operated by the player moves the boss character 70 with the arrow 12.
(Object) is released. In FIG. 21B, the released arrow 12 hits the boss character 70 and rebounds. In this case, in the present embodiment, arrow 1
2 is determined based on the normal vector of the boss character 70.

【0151】図20(B)を例にとれば、矢12の入射
方向HDと法線ベクトルNVの方向とのなす角度をα、
矢12の跳ね返り方向RDと法線ベクトルNVの方向と
のなす角度をβとした場合に、α=βとなるように矢1
2を跳ね返らせる。
In the example of FIG. 20B, the angle between the incident direction HD of the arrow 12 and the direction of the normal vector NV is α,
Assuming that the angle between the rebound direction RD of the arrow 12 and the direction of the normal vector NV is β, the arrow 1 is set so that α = β.
Make 2 bounce.

【0152】このようにすれば、矢12がヒットした面
に応じて、矢12の跳ね返り方向が変化するようにな
り、プレーヤの仮想現実感を向上できる。
In this way, the direction in which the arrow 12 rebounds changes according to the surface on which the arrow 12 hits, and the virtual reality of the player can be improved.

【0153】この場合に本実施形態の法線ベクトル演算
手法には、処理負荷が軽いという優位点がある一方で、
得られる法線ベクトルNVの向く方向がそれほど正確で
はないという不利点がある。
In this case, the normal vector calculation method of the present embodiment has the advantage that the processing load is light,
There is a disadvantage that the direction of the obtained normal vector NV is not very accurate.

【0154】しかしながら、図21(A)、(B)に示
すようなヒット処理では、矢12の跳ね返る方向がそれ
ほど正確でなくても、何らかの方向に矢が跳ね返れば、
プレーヤの仮想現実感を向上できる。従って、本実施形
態の手法で得られるようなそれほど正確ではない法線ベ
クトルNVを用いても、プレーヤの仮想現実感を向上さ
せるのには十分な程度のヒット処理を実現できる。
However, in the hit processing shown in FIGS. 21A and 21B, even if the direction in which the arrow 12 rebounds is not so accurate, if the arrow rebounds in any direction,
The virtual reality of the player can be improved. Therefore, even if a less accurate normal vector NV obtained by the method of the present embodiment is used, hit processing can be realized to a sufficient degree to improve the virtual reality of the player.

【0155】3.本実施形態の処理 次に、本実施形態の処理の詳細例について、図22のフ
ローチャートを用いて説明する。
[0155] 3. Next, a detailed example of the process of the present embodiment will be described with reference to the flowchart of FIG.

【0156】まず、フレーム更新(描画バッファの更
新)か否かを判断する(ステップS1)。これは、画像
生成システムのハードウェアが垂直同期のタイミングで
発生する割り込みに基づいて判断できる。
First, it is determined whether or not the frame is to be updated (drawing buffer update) (step S1). This can be determined based on an interrupt generated by the hardware of the image generation system at the timing of vertical synchronization.

【0157】そして、フレーム更新と判断された場合に
は、波長パラメータや角振動数パラメータや振幅パラメ
ータなどの各種のパラメータの値を設定したり、図2
(A)、(B)に示すベース面BSの配置等を設定する
(ステップS2)。
If it is determined that the frame is to be updated, various parameters such as a wavelength parameter, an angular frequency parameter and an amplitude parameter are set,
The arrangement and the like of the base surface BS shown in (A) and (B) are set (step S2).

【0158】次に、設定されたパラメータ等に基づき、
水面オブジェクト生成関数(式(10)、(11)、
(12)参照)を設定する(ステップS3)。より具体
的には、当該フレームでの水面オブジェクト生成関数の
返値を求めるためのテーブル(三角関数のテーブル)等
を用意する。
Next, based on the set parameters and the like,
Water surface object generation function (Equations (10), (11),
(See (12)) (step S3). More specifically, a table (table of trigonometric functions) for obtaining a return value of the water surface object generation function in the frame is prepared.

【0159】次に、座標変換(ローカル座標系からワー
ルド座標系、ワールド座標系からスクリーン座標系への
座標変換等)のための変換マトリックスを予め求めてお
く(ステップS4)。
Next, a transformation matrix for coordinate transformation (coordinate transformation from the local coordinate system to the world coordinate system, from the world coordinate system to the screen coordinate system, etc.) is obtained in advance (step S4).

【0160】次に、ベース面のサンプリング点と、ステ
ップS3で設定された水面オブジェクト生成関数に基づ
き、水面オブジェクトの頂点(構成点)を求める(ステ
ップS5。図2(A)、(B)参照)。
Next, the vertices (constituent points) of the water surface object are obtained based on the sampling points on the base surface and the water surface object generation function set in step S3 (step S5; see FIGS. 2A and 2B). ).

【0161】次に、図10(A)で説明したように、サ
ンプリング点の位置と求められた頂点の位置とを結ぶベ
クトルを求める(ステップS6)。そして図10
(B)、図11で説明したように、求められたベクトル
を、Y軸に関して線対称に変換して、水面オブジェクト
の法線ベクトルを求める(ステップS7)。
Next, as described with reference to FIG. 10A, a vector connecting the position of the sampling point and the position of the obtained vertex is obtained (step S6). And FIG.
(B) As described with reference to FIG. 11, the obtained vector is converted to be line-symmetric with respect to the Y axis to obtain a normal vector of the water surface object (step S7).

【0162】次に、ステップS5で求められた頂点(頂
点座標)とステップS7で求められた法線ベクトル(座
標成分)を、ステップS4で求められた変換マトリック
スを用いて変換する(ステップS8)。
Next, the vertices (vertex coordinates) obtained in step S5 and the normal vectors (coordinate components) obtained in step S7 are converted using the conversion matrix obtained in step S4 (step S8). .

【0163】次に、水面オブジェクトの全ての頂点につ
いての処理が終了したか否かを判断し(ステップS
9)、終了していない場合にはステップS5に処理を戻
す。一方、終了した場合には、ステップS5〜S8の処
理により作成されたポリゴンデータ(頂点の位置座標、
テクスチャ座標、色データ、法線ベクトル或いはα値等
を含むデータ)を描画プロセッサに転送する(ステップ
S10)。そして、このポリゴンデータに基づいて描画
プロセッサが水面オブジェクトを描画する(ステップS
11)。この際に、ステップS7で求められた法線ベク
トルに基づいて、シェーディング処理や環境マッピング
処理を行う。
Next, it is determined whether or not the processing has been completed for all the vertices of the water surface object (step S).
9) If not finished, the process returns to step S5. On the other hand, when the processing is completed, the polygon data (the position coordinates of the vertices,
The data including texture coordinates, color data, normal vector or α value) is transferred to the drawing processor (step S10). Then, the drawing processor draws the water surface object based on the polygon data (step S
11). At this time, shading processing and environment mapping processing are performed based on the normal vector obtained in step S7.

【0164】以上のようにして、図6(B)〜図8
(B)に示すような、リアルな陰影づけが施された波画
像を生成できるようになる。
As described above, FIGS.
As shown in (B), a wave image with realistic shading can be generated.

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

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

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

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

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

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

【0171】サウンドプロセッサ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.

【0172】ゲームコントローラ942(レバー、ボタ
ン、筺体、パッド型コントローラ又はガン型コントロー
ラ等)からの操作データや、メモリカード944からの
セーブデータ、個人データは、シリアルインターフェー
ス940を介してデータ転送される。
Operation data from the game controller 942 (lever, button, housing, pad-type controller, gun-type controller, etc.), save data from the memory card 944, and personal data are transferred via the serial interface 940. .

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

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

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

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

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

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

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

【0180】図24(A)に、本実施形態を業務用ゲー
ムシステム(画像生成システム)に適用した場合の例を
示す。プレーヤは、ディスプレイ1100、1101上
に映し出されたゲーム画像を見ながら、ガン型コントロ
ーラ1102、1103などを操作してゲームを楽し
む。内蔵されるシステムボード(サーキットボード)1
106には、各種プロセッサ、各種メモリなどが実装さ
れる。そして、本発明の各手段を実現するためのプログ
ラム(データ)は、システムボード1106上の情報記
憶媒体であるメモリ1108に格納される。以下、この
プログラムを格納プログラム(格納情報)と呼ぶ。
FIG. 24A shows an example in which the present embodiment is applied to an arcade game system (image generation system). The player enjoys the game by operating the gun-type controllers 1102 and 1103 while watching the game images projected on the displays 1100 and 1101. Built-in system board (circuit board) 1
Various processors, various memories, and the like are mounted on 106. A program (data) for realizing each unit of the present invention is stored in a memory 1108 which is an information storage medium on the system board 1106. Hereinafter, this program is called a storage program (storage information).

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

【0182】図24(C)に、ホスト装置1300と、
このホスト装置1300とネットワーク1302(LA
Nのような小規模ネットワークや、インターネットのよ
うな広域ネットワーク)を介して接続される端末130
4-1〜1304-n(ゲーム機、携帯電話)とを含むシ
ステムに本実施形態を適用した場合の例を示す。この場
合、上記格納プログラム(格納情報)は、例えばホスト
装置1300が制御可能な磁気ディスク装置、磁気テー
プ装置、メモリなどの情報記憶媒体1306に格納され
ている。端末1304-1〜1304-nが、スタンドア
ロンでゲーム画像、ゲーム音を生成できるものである場
合には、ホスト装置1300からは、ゲーム画像、ゲー
ム音を生成するためのゲームプログラム等が端末130
4-1〜1304-nに配送される。一方、スタンドアロ
ンで生成できない場合には、ホスト装置1300がゲー
ム画像、ゲーム音を生成し、これを端末1304-1〜
1304-nに伝送し端末において出力することになる。
FIG. 24C shows a host device 1300,
The host device 1300 and the network 1302 (LA
N or a wide area network such as the Internet).
An example in which the present embodiment is applied to a system including 4-1 to 1304-n (game machine, mobile phone) will be described. In this case, the storage program (storage 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. When the terminals 1304-1 to 1304-n are capable of generating a game image and a game sound in a stand-alone manner, a game program for generating a game image and a game sound is transmitted from the host device 1300 to the terminal 130.
It is delivered to 4-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, and these are generated by the terminals 1304-1 to 1304-1.
1304-n and output at the terminal.

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

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

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

【0186】例えば、オブジェクトの法線ベクトルを求
める手法は、図10(A)、(B)、図11、図15等
で説明した手法に限定されない。
For example, the method of obtaining the normal vector of an object is not limited to the method described with reference to FIGS. 10A, 10B, 11 and 15.

【0187】例えば、サンプリング点と構成点の位置を
結ぶ方向のベクトルを、Y軸ではなく、他のX軸やZ軸
に関して線対称に変換したり、これらのX、Y、Z軸と
は異なる他の軸に関して線対称に変換してもよい。
For example, a vector in the direction connecting the sampling point and the position of the constituent point is not symmetrical with respect to the Y axis but is converted to be symmetrical with respect to another X axis or Z axis, or different from the X, Y and Z axes. The transformation may be symmetrical with respect to other axes.

【0188】また、サンプリング点と構成点の位置を結
ぶ方向のベクトルを補正して法線ベクトルを求める処理
は、線対称変換に限定されない。例えば、求められた複
数のベクトルの補間処理により法線ベクトルを求めても
よいし、求められたベクトルの第1、第2又は第3の座
標成分を用いた他の四則演算(線対称変換以外の変換を
実現する四則演算)により法線ベクトルを求めてもよ
い。
The process of correcting the vector in the direction connecting the sampling point and the position of the constituent point to obtain the normal vector is not limited to the line symmetric transformation. For example, a normal vector may be obtained by interpolation processing of a plurality of obtained vectors, or another four arithmetic operations (other than line symmetric transformation) using the first, second, or third coordinate components of the obtained vectors. The normal vector may be obtained by four arithmetic operations for realizing the conversion.

【0189】また、本発明により得られた法線ベクトル
は、シェーディング処理や環境テクスチャマッピング処
理やヒット処理に利用することが特に望ましいが、これ
に限定されない。例えば、シェーディング処理や環境テ
クスチャマッピング以外のレンダリング処理に利用して
もよい。
It is particularly desirable to use the normal vector obtained by the present invention for shading processing, environment texture mapping processing, and hit processing, but the present invention is not limited to this. For example, it may be used for rendering processing other than shading processing and environmental texture mapping.

【0190】また、本発明のうち従属請求項に係る発明
においては、従属先の請求項の構成要件の一部を省略す
る構成とすることもできる。また、本発明の1の独立請
求項に係る発明の要部を、他の独立請求項に従属させる
こともできる。
Further, in the invention according to the dependent claims of the present invention, a configuration may be adopted in which some of the constituent elements of the dependent claims are omitted. In addition, a main part of the invention according to one independent claim of the present invention may be made dependent on another independent claim.

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

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

【図面の簡単な説明】[Brief description of the drawings]

【図1】本実施形態の画像生成システムの機能ブロック
図の例である。
FIG. 1 is an example of a functional block diagram of an image generation system according to an embodiment.

【図2】図2(A)、(B)は、関数Fを用いた構成点
の生成手法について説明するための図である。
FIGS. 2A and 2B are diagrams for explaining a method of generating constituent points using a function F. FIGS.

【図3】トロコイド曲線について説明するための図であ
る。
FIG. 3 is a diagram for explaining a trochoid curve.

【図4】X軸方向の周期関数F1(X、t)、Z軸方向
の周期関数F2(Z、t)の合成関数に基づいて構成点
の座標YNを求める手法について説明するための図であ
る。
FIG. 4 is a diagram for explaining a method of obtaining coordinates YN of constituent points based on a composite function of a periodic function F1 (X, t) in the X-axis direction and a periodic function F2 (Z, t) in the Z-axis direction. is there.

【図5】図5(A)、(B)、(C)は、水面(波の表
面の絵柄)を表現するムービーテクスチャの例を示す図
である。
FIGS. 5A, 5B, and 5C are diagrams showing examples of a movie texture expressing a water surface (a pattern on the surface of a wave).

【図6】図6(A)は、水面オブジェクトのワイヤーフ
レーム表示の例について示す図であり、図6(B)は、
本実施形態により生成された波画像の例について示す図
である。
FIG. 6A is a diagram illustrating an example of a wire frame display of a water surface object, and FIG.
It is a figure showing about an example of a wave picture generated by this embodiment.

【図7】図7(A)、(B)は、本実施形態により生成
された波画像の例について示す図である。
FIGS. 7A and 7B are diagrams illustrating an example of a wave image generated according to the present embodiment.

【図8】図8(A)、(B)は、本実施形態により生成
された波画像の例について示す図である。
FIGS. 8A and 8B are diagrams illustrating an example of a wave image generated according to the present embodiment.

【図9】波頭部分の構成点の密度(ポリゴン分割数)を
高くする手法について説明するための図である。
FIG. 9 is a diagram for explaining a method of increasing the density of the constituent points of the wave front portion (the number of polygon divisions).

【図10】図10(A)、(B)は、サンプリング点の
位置と構成点の位置に基づいてオブジェクトの法線ベク
トルを求める手法について説明するための図である。
FIGS. 10A and 10B are diagrams for explaining a method of obtaining a normal vector of an object based on the positions of sampling points and the positions of constituent points.

【図11】本実施形態の手法により求められた法線ベク
トルについて示す図である。
FIG. 11 is a diagram showing a normal vector obtained by the method of the present embodiment.

【図12】オブジェクトを自由曲面で表現する手法につ
いて説明するための図である。
FIG. 12 is a diagram for describing a method of expressing an object by a free-form surface.

【図13】オブジェクトを自由曲面で表現する手法につ
いて説明するための図である。
FIG. 13 is a diagram for describing a method of expressing an object by a free-form surface.

【図14】各構成点での2つの接線ベクトルを求めて、
これらの接線ベクトルに基づいて法線ベクトルを求める
手法について説明するための図である。
FIG. 14 shows two tangent vectors at each constituent point,
FIG. 7 is a diagram for describing a method of obtaining a normal vector based on these tangent vectors.

【図15】本実施形態の手法で法線ベクトルを求める手
法について説明するための図である。
FIG. 15 is a diagram for explaining a method of obtaining a normal vector by the method of the present embodiment.

【図16】図16(A)は、ボスキャラクタとキャラク
タが対峙している場面のゲーム画像の例であり、図16
(B)は、ボスキャラクタの法線ベクトルの例について
示す図である。
FIG. 16A is an example of a game image of a scene in which a boss character and a character are facing each other.
(B) is a diagram showing an example of a normal vector of the boss character.

【図17】法線ベクトルに基づき環境テクスチャマッピ
ングを行う手法について説明するための図である。
FIG. 17 is a diagram for describing a method of performing environment texture mapping based on a normal vector.

【図18】本実施形態の環境テクスチャマッピング手法
により生成されるゲーム画像の例である。
FIG. 18 is an example of a game image generated by the environment texture mapping method of the embodiment.

【図19】法線ベクトルに基づきシェーディング処理を
行う手法について説明するための図である。
FIG. 19 is a diagram for describing a method of performing shading processing based on a normal vector.

【図20】図20(A)は、光源からの光の入射方向と
法線ベクトルの方向のなす角度に基づいて、ピクセルの
輝度を変化させる手法について説明するための図であ
り、図20(B)は、矢の入射方向と法線ベクトルの方
向とに基づき矢を跳ね返らせる手法について説明するた
めの図である。
FIG. 20A is a diagram for describing a method of changing the luminance of a pixel based on an angle between an incident direction of light from a light source and a direction of a normal vector, and FIG. (B) is a diagram for explaining a method of bouncing an arrow based on the direction of incidence of the arrow and the direction of a normal vector.

【図21】図21(A)、(B)は、法線ベクトルに基
づきヒット処理を行う手法について説明するための図で
ある。
FIGS. 21A and 21B are diagrams for explaining a method of performing a hit process based on a normal vector.

【図22】本実施形態の処理の詳細例について示すフロ
ーチャートである。
FIG. 22 is a flowchart illustrating a detailed example of a process according to the present embodiment.

【図23】本実施形態を実現できるハードウェアの構成
の一例を示す図である。
FIG. 23 is a diagram illustrating an example of a hardware configuration capable of realizing the present embodiment.

【図24】図24(A)、(B)、(C)は、本実施形
態が適用される種々の形態のシステムの例を示す図であ
る。
FIGS. 24A, 24B, and 24C are diagrams showing examples of various types of systems to which the present embodiment is applied; FIGS.

【符号の説明】[Explanation of symbols]

BS ベース面 WS 水面オブジェクト F1(X、t) 第1の周期関数 F2(Z、t) 第2の周期関数 λX、λZ 波長パラメータ ωX、ωZ 振動数パラメータ RX、RZ、H 振幅パラメータ SP1〜SP15 サンプリング点 CP1〜CP15 構成点 V1〜V15 ベクトル N1〜N15 法線ベクトル 100 処理部 110 パラメータ設定部 112 関数設定部 114 構成点演算部 116 法線ベクトル演算部 118 ヒット処理部 120 画像生成部 122 伸張部 124 テクスチャマッピング部 126 シェーディング処理部 130 音生成部 160 操作部 170 記憶部 172 主記憶部 174 描画バッファ 176 テクスチャ記憶部 180 情報記憶媒体 190 表示部 192 音出力部 194 携帯型情報記憶装置 196 通信部BS Base surface WS Water surface object F1 (X, t) First periodic function F2 (Z, t) Second periodic function λ X , λ Z wavelength parameter ω X , ω Z frequency parameter R X , R Z , H Amplitude parameters SP1 to SP15 Sampling points CP1 to CP15 Constituent points V1 to V15 Vectors N1 to N15 Normal vector 100 Processing unit 110 Parameter setting unit 112 Function setting unit 114 Component point operation unit 116 Normal vector operation unit 118 Hit processing unit 120 Image Generation unit 122 Decompression unit 124 Texture mapping unit 126 Shading processing unit 130 Sound generation unit 160 Operation unit 170 Storage unit 172 Main storage unit 174 Drawing buffer 176 Texture storage unit 180 Information storage medium 190 Display unit 192 Sound output unit 194 Portable information storage Device 196 Communication unit

Claims (17)

【特許請求の範囲】[Claims] 【請求項1】 画像生成を行う画像生成システムであっ
て、 オブジェクトの構成点を求めるために設定されたサンプ
リング点に基づいて、オブジェクトの構成点を求める構
成点演算手段と、 サンプリング点の位置と該サンプリング点に対応する構
成点の位置とに基づいて、オブジェクトの法線ベクトル
を求める法線ベクトル演算手段と、 求められた構成点で形状が特定されるオブジェクトの画
像を生成する画像生成手段とを含むことを特徴とする画
像生成システム。
1. An image generation system for generating an image, comprising: a constituent point calculating means for obtaining a constituent point of an object based on a sampling point set for obtaining a constituent point of the object; Normal vector calculating means for obtaining a normal vector of the object based on the position of the constituent point corresponding to the sampling point; image generating means for generating an image of the object whose shape is specified by the obtained constituent point; An image generation system, comprising:
【請求項2】 請求項1において、 前記法線ベクトル演算手段が、 サンプリング点の位置と構成点の位置とを結ぶ方向を向
くベクトルの方向を補正して、前記法線ベクトルを求め
ることを特徴とする画像生成システム。
2. The method according to claim 1, wherein the normal vector calculating means obtains the normal vector by correcting a direction of a vector connecting a position of the sampling point and a position of the constituent point. Image generation system.
【請求項3】 請求項2において、 前記法線ベクトル演算手段が、 サンプリング点の位置と構成点の位置とを結ぶ方向を向
くベクトルの第1、第2、第3の座標成分の少なくとも
1つを用いた四則演算により、前記法線ベクトルを求め
ることを特徴とする画像生成システム。
3. The method according to claim 2, wherein the normal vector calculation means includes at least one of first, second, and third coordinate components of a vector pointing in a direction connecting a position of the sampling point and a position of the constituent point. An image generation system, wherein the normal vector is obtained by four arithmetic operations using
【請求項4】 請求項2又は3において、 前記法線ベクトル演算手段が、 サンプリング点の位置と構成点の位置とを結ぶ方向を向
くベクトルを、該ベクトルと所与の軸とを含む平面上に
おいて該所与の軸に関して線対称に変換することで、前
記法線ベクトルを求めることを特徴とする画像生成シス
テム。
4. The method according to claim 2, wherein the normal vector calculation means sets a vector pointing in a direction connecting the position of the sampling point and the position of the constituent point on a plane including the vector and a given axis. The image generation system according to claim 1, wherein the normal vector is obtained by performing line-symmetric conversion with respect to the given axis.
【請求項5】 請求項1乃至4のいずれかにおいて、 前記構成点演算手段が、 オブジェクトの構成点を求めるために設定されたサンプ
リング点の座標と時間とを引数とする関数に基づいて、
オブジェクトの構成点の座標を求めることを特徴とする
画像生成システム。
5. The method according to claim 1, wherein the composing point calculating means is configured to calculate coordinates of a sampling point and a time set for obtaining a composing point of an object based on a function using the function as an argument.
An image generation system, wherein coordinates of constituent points of an object are obtained.
【請求項6】 請求項1乃至5のいずれかにおいて、 前記サンプリング点が所与のベース面に設定され、 前記オブジェクトが、前記構成点により形状が特定され
る面を有するオブジェクトであることを特徴とする画像
生成システム。
6. The method according to claim 1, wherein the sampling point is set on a given base plane, and the object is an object having a plane whose shape is specified by the constituent points. Image generation system.
【請求項7】 請求項1乃至6のいずれかにおいて、 前記サンプリング点が自由曲面の形状を定義するための
制御点であり、 前記オブジェクトが自由曲面で表されるオブジェクトで
あることを特徴とする画像生成システム。
7. The method according to claim 1, wherein the sampling point is a control point for defining a shape of a free-form surface, and the object is an object represented by the free-form surface. Image generation system.
【請求項8】 請求項1乃至7のいずれかにおいて、 求められた法線ベクトルに基づいて、オブジェクトのシ
ェーディング処理、オブジェクトへの環境テクスチャの
マッピング処理、及びオブジェクトと他のオブジェクト
との間のヒット処理の少なくとも1つを行うことを特徴
とする画像生成システム。
8. The method according to claim 1, wherein shading processing of the object, mapping processing of the environment texture to the object, and hitting between the object and another object are performed based on the obtained normal vector. An image generation system, which performs at least one of processes.
【請求項9】 コンピュータ使用可能なプログラムであ
って、 オブジェクトの構成点を求めるために設定されたサンプ
リング点に基づいて、オブジェクトの構成点を求める構
成点演算手段と、 サンプリング点の位置と該サンプリング点に対応する構
成点の位置とに基づいて、オブジェクトの法線ベクトル
を求める法線ベクトル演算手段と、 求められた構成点で形状が特定されるオブジェクトの画
像を生成する画像生成手段とをコンピュータに実現させ
ることを特徴とするプログラム。
9. A computer-usable program, comprising: constituent point calculating means for calculating a constituent point of an object based on a sampling point set for determining the constituent point of the object; A computer comprising: a normal vector calculating means for obtaining a normal vector of an object based on a position of a constituent point corresponding to a point; and an image generating means for generating an image of an object whose shape is specified by the obtained constituent point. A program characterized by being realized in.
【請求項10】 請求項9において、 前記法線ベクトル演算手段が、 サンプリング点の位置と構成点の位置とを結ぶ方向を向
くベクトルの方向を補正して、前記法線ベクトルを求め
ることを特徴とするプログラム。
10. The normal vector calculation unit according to claim 9, wherein the normal vector calculating means corrects a direction of a vector pointing in a direction connecting a position of a sampling point and a position of a constituent point to obtain the normal vector. And the program.
【請求項11】 請求項10において、 前記法線ベクトル演算手段が、 サンプリング点の位置と構成点の位置とを結ぶ方向を向
くベクトルの第1、第2、第3の座標成分の少なくとも
1つを用いた四則演算により、前記法線ベクトルを求め
ることを特徴とするプログラム。
11. The method according to claim 10, wherein the normal vector calculating means includes at least one of first, second, and third coordinate components of a vector pointing in a direction connecting the position of the sampling point and the position of the constituent point. A program for obtaining the normal vector by four arithmetic operations using
【請求項12】 請求項10又は11において、 前記法線ベクトル演算手段が、 サンプリング点の位置と構成点の位置とを結ぶ方向を向
くベクトルを、該ベクトルと所与の軸とを含む平面上に
おいて該所与の軸に関して線対称に変換することで、前
記法線ベクトルを求めることを特徴とするプログラム。
12. The method according to claim 10, wherein the normal vector calculating means sets a vector pointing in a direction connecting the position of the sampling point and the position of the constituent point on a plane including the vector and a given axis. The program according to claim 1, wherein the normal vector is obtained by performing line-symmetric conversion with respect to the given axis.
【請求項13】 請求項9乃至12のいずれかにおい
て、 前記構成点演算手段が、 オブジェクトの構成点を求めるために設定されたサンプ
リング点の座標と時間とを引数とする関数に基づいて、
オブジェクトの構成点の座標を求めることを特徴とする
プログラム。
13. The method according to claim 9, wherein the composing point calculating means is configured to calculate coordinates of a sampling point and a time set for obtaining a composing point of an object based on a function using the function as arguments.
A program for determining coordinates of constituent points of an object.
【請求項14】 請求項9乃至13のいずれかにおい
て、 前記サンプリング点が所与のベース面に設定され、 前記オブジェクトが、前記構成点により形状が特定され
る面を有するオブジェクトであることを特徴とするプロ
グラム。
14. The method according to claim 9, wherein the sampling point is set on a given base plane, and the object is an object having a plane whose shape is specified by the constituent points. And the program.
【請求項15】 請求項9乃至14のいずれかにおい
て、 前記サンプリング点が自由曲面の形状を定義するための
制御点であり、 前記オブジェクトが自由曲面で表されるオブジェクトで
あることを特徴とするプログラム。
15. The method according to claim 9, wherein the sampling point is a control point for defining a shape of the free-form surface, and the object is an object represented by the free-form surface. program.
【請求項16】 請求項9乃至15のいずれかにおい
て、 求められた法線ベクトルに基づいて、オブジェクトのシ
ェーディング処理、オブジェクトへの環境テクスチャの
マッピング処理、及びオブジェクトと他のオブジェクト
との間のヒット処理の少なくとも1つを行うことを特徴
とするプログラム。
16. An object shading process, an environment texture mapping process to an object, and a hit between an object and another object based on the obtained normal vector. A program for performing at least one of processes.
【請求項17】 コンピュータにより読み取り可能な情
報記憶媒体であって、請求項9乃至16のいずれかのプ
ログラムを含むことを特徴とする情報記憶媒体。
17. An information storage medium readable by a computer, wherein the information storage medium includes the program according to claim 9. Description:
JP2001005728A 2001-01-12 2001-01-12 Image generation system, program and information storage medium Pending JP2002216151A (en)

Priority Applications (1)

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

Applications Claiming Priority (1)

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

Publications (1)

Publication Number Publication Date
JP2002216151A true JP2002216151A (en) 2002-08-02

Family

ID=18873736

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001005728A Pending JP2002216151A (en) 2001-01-12 2001-01-12 Image generation system, program and information storage medium

Country Status (1)

Country Link
JP (1) JP2002216151A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006318136A (en) * 2005-05-11 2006-11-24 Nintendo Co Ltd Image processing program and image processor
CN1302440C (en) * 2004-04-13 2007-02-28 复旦大学 Three-D texture chartlet method based on master drawing covering and separating
JP2008191985A (en) * 2007-02-06 2008-08-21 Matsushita Electric Ind Co Ltd Image processor and image processing method
US9665334B2 (en) 2011-11-07 2017-05-30 Square Enix Holdings Co., Ltd. Rendering system, rendering server, control method thereof, program, and recording medium

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03210670A (en) * 1990-01-12 1991-09-13 Mitsubishi Electric Corp Sampling of three-dimensional model and calculation method of normal vector
JPH03250273A (en) * 1990-01-12 1991-11-08 Mitsubishi Electric Corp Stereoscopic model drawing method
JPH1049691A (en) * 1996-07-31 1998-02-20 Dainippon Screen Mfg Co Ltd Method and device for tracing dot sequence with bezier curve
JPH1097611A (en) * 1996-09-24 1998-04-14 Mitsubishi Heavy Ind Ltd Method and device for generating video
WO1999024937A1 (en) * 1997-11-07 1999-05-20 Sega Enterprises, Ltd. Image generating device and image generating method

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03210670A (en) * 1990-01-12 1991-09-13 Mitsubishi Electric Corp Sampling of three-dimensional model and calculation method of normal vector
JPH03250273A (en) * 1990-01-12 1991-11-08 Mitsubishi Electric Corp Stereoscopic model drawing method
JPH1049691A (en) * 1996-07-31 1998-02-20 Dainippon Screen Mfg Co Ltd Method and device for tracing dot sequence with bezier curve
JPH1097611A (en) * 1996-09-24 1998-04-14 Mitsubishi Heavy Ind Ltd Method and device for generating video
WO1999024937A1 (en) * 1997-11-07 1999-05-20 Sega Enterprises, Ltd. Image generating device and image generating method

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1302440C (en) * 2004-04-13 2007-02-28 复旦大学 Three-D texture chartlet method based on master drawing covering and separating
JP2006318136A (en) * 2005-05-11 2006-11-24 Nintendo Co Ltd Image processing program and image processor
JP4740644B2 (en) * 2005-05-11 2011-08-03 任天堂株式会社 Image processing program and image processing apparatus
US8297622B2 (en) 2005-05-11 2012-10-30 Nintendo Co., Ltd. Image processing program and image processing apparatus
JP2008191985A (en) * 2007-02-06 2008-08-21 Matsushita Electric Ind Co Ltd Image processor and image processing method
US9665334B2 (en) 2011-11-07 2017-05-30 Square Enix Holdings Co., Ltd. Rendering system, rendering server, control method thereof, program, and recording medium

Similar Documents

Publication Publication Date Title
JP4610748B2 (en) Image generation system, program, and information storage medium
JP2001319244A (en) Game system and information storage medium
JP3442344B2 (en) GAME SYSTEM AND INFORMATION STORAGE MEDIUM
JP3576126B2 (en) Image generation system, program, and information storage medium
JP4743770B2 (en) Image generation system, program, and information storage medium
JP2001224845A (en) Game system and information storage medium
JP2001229403A (en) Game system and information storage medium
JP4245356B2 (en) GAME SYSTEM AND INFORMATION STORAGE MEDIUM
JP2001229395A (en) Game system and information storage medium
JP2002216151A (en) Image generation system, program and information storage medium
JP4187192B2 (en) Image generation system, program, and information storage medium
JP2004341570A (en) Image generation system, program and information storage medium
JP2005209217A (en) Game system and information storage medium
JP4574058B2 (en) Image generation system, program, and information storage medium
JP2002216167A (en) Image generation system, program and information storage medium
JP2002222431A (en) System, program, and information storage medium for image generation
JP3254195B2 (en) Image generation system and information storage medium
JP4577968B2 (en) GAME SYSTEM AND INFORMATION STORAGE MEDIUM
JP3431562B2 (en) GAME SYSTEM AND INFORMATION STORAGE MEDIUM
JP3614340B2 (en) GAME SYSTEM AND INFORMATION STORAGE MEDIUM
JP4592039B2 (en) GAME SYSTEM AND INFORMATION STORAGE MEDIUM
JP2002373348A (en) Image generation system, program and information storage medium
JP2002216165A (en) Image generation system, program and information storage medium
JP2002216159A (en) Image generation system, program and information storage medium
JP4592043B2 (en) Image generation system, program, and information storage medium

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20071210

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100615

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100707

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20101110