JP4219766B2 - Image generation program and image generation apparatus - Google Patents
Image generation program and image generation apparatus Download PDFInfo
- Publication number
- JP4219766B2 JP4219766B2 JP2003294378A JP2003294378A JP4219766B2 JP 4219766 B2 JP4219766 B2 JP 4219766B2 JP 2003294378 A JP2003294378 A JP 2003294378A JP 2003294378 A JP2003294378 A JP 2003294378A JP 4219766 B2 JP4219766 B2 JP 4219766B2
- Authority
- JP
- Japan
- Prior art keywords
- projection
- target object
- image generation
- virtual space
- magnification
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
- 238000000034 method Methods 0.000 claims description 32
- 230000008569 process Effects 0.000 claims description 28
- 238000006243 chemical reaction Methods 0.000 claims description 17
- 230000009467 reduction Effects 0.000 claims description 8
- 238000011946 reduction process Methods 0.000 claims description 7
- 238000001514 detection method Methods 0.000 claims description 4
- 239000011159 matrix material Substances 0.000 description 57
- 230000000007 visual effect Effects 0.000 description 16
- 230000001419 dependent effect Effects 0.000 description 12
- 230000003287 optical effect Effects 0.000 description 10
- 230000006870 function Effects 0.000 description 8
- 238000009877 rendering Methods 0.000 description 7
- 238000004364 calculation method Methods 0.000 description 6
- 230000009471 action Effects 0.000 description 3
- 239000004927 clay Substances 0.000 description 3
- 238000013500 data storage Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000001771 impaired effect Effects 0.000 description 3
- 230000005236 sound signal Effects 0.000 description 3
- 238000003860 storage Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 1
- 230000003292 diminished effect Effects 0.000 description 1
- 238000005562 fading Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
Images
Landscapes
- Processing Or Creating Images (AREA)
Description
この発明は画像生成プログラムおよび画像生成装置に関し、特にたとえば、プレイヤオブジェクトのようなプレイヤの操作対象である対象オブジェクトと、地形オブジェクトや建物オブジェクトのような操作対象でない非対象オブジェクトとが配置された3次元の仮想空間の様子を、当該仮想空間に配置される仮想カメラに基づく投影平面に投影変換し、かつ描画領域に描画することにより、仮想カメラから見える画像を生成する、画像生成プログラムおよび画像生成装置に関する。 The present invention relates to an image generation program and an image generation apparatus, and in particular, for example, a target object that is an operation target of a player such as a player object and a non-target object that is not an operation target such as a terrain object or a building object are arranged. Image generation program and image generation for generating an image visible from a virtual camera by projecting and transforming a state of a three-dimensional virtual space onto a projection plane based on a virtual camera arranged in the virtual space and drawing in a drawing area Relates to the device.
この種の従来の画像生成装置の一例が特許文献1に開示されている。この特許文献1に開示されるスポーツゲーム装置では、フィールドの真上に置いた視点から見たフィールドの画像を生成するときに、上側にくるサイドラインを、予め通常よりも太くしておく。このフィールドを透視変換してフィールドを横から斜め下に見下ろした画像を得る。このようにして、画面の奥側に表示されるサイドラインがかすれたり途切れたりすることなく、適正に表示されていた。
このように、通常、カメラは3次元モデルを効果的に見せるために、斜めからのアングルが用いられ、実際には長方形のフィールドが台形に歪んで表示されることになる。また、3次元のゲーム空間におけるゲーム(3Dゲーム)を実現させるための3Dゲームプログラムまたは3Dゲーム装置においては、コントローラに設けられたスティックの傾斜方向が3Dの仮想空間におけるオブジェクトの移動方向に対応しており、たとえば、プレイヤがスティックを45度前方に傾けることによって、3Dの仮想空間内におけるプレイヤオブジェクトが45度の方向(斜め方向)へ移動するようにプログラミングされていることが一般的である。このような3Dゲームプログラム等では、3Dの仮想空間における仮想カメラから見た画像を透視投影法により透視変換して、テレビ画面に表示させているため、2次元の画像でありながら奥行き方向が反映される。このため、3Dゲームでは、テレビ画面で見たそのままの感覚でスティックの操作を行うと、プレイヤの思い通りにオブジェクトを移動させることができないという問題が生じていた。このため、たとえば、本来は長方形であるフィールドのライン際に沿ってオブジェクト(プレイヤオブジェクト)を移動させるには、ある程度の空間把握能力(2次元表示されている画面を見て、その状態を3次元の空間として把握できる能力)を必要とし、したがって、万人にとってその操作は簡単ではなかった。 As described above, in order to effectively show the three-dimensional model, the camera normally uses an angle from an oblique direction, and actually displays a rectangular field distorted in a trapezoidal shape. In a 3D game program or 3D game device for realizing a game (3D game) in a three-dimensional game space, the tilt direction of the stick provided in the controller corresponds to the moving direction of the object in the 3D virtual space. For example, it is common that a player object in a 3D virtual space is programmed to move in a 45-degree direction (oblique direction) by tilting the stick forward by 45 degrees. In such a 3D game program and the like, an image viewed from a virtual camera in a 3D virtual space is perspective-transformed by a perspective projection method and displayed on a television screen, so that the depth direction is reflected even though it is a two-dimensional image. Is done. For this reason, in the 3D game, when the stick is operated as it is seen on the television screen, there is a problem that the object cannot be moved as the player desires. For this reason, for example, in order to move an object (player object) along the line of a field that is originally a rectangle, a certain amount of space grasping ability (seeing a screen displayed in two dimensions, the state is expressed in three dimensions Therefore, the operation was not easy for everyone.
具体的には、3D空間内に配置される立方体の地形オブジェクトの前に、直方体のキャラクタオブジェクト(プレイヤオブジェクト)が存在し、これを斜め(45度)の方向から仮想カメラで撮影している場合には、図15に示すようなゲーム画像がディスプレイ(テレビ画面)に表示される。この図15から分かるように、3D空間において、地形オブジェクトの側面(壁)が45度の方向に延びていても、テレビ画面上におけるその角度は異なり、キャラクタオブジェクトに対面する壁においては、45度よりも小さい角度になっている。たとえば、仮想カメラの角度(仮想カメラと注視点とを結ぶ直線と、3D空間の水平面とがなす角度)が45度である場合には、キャラクタオブジェクトに対面する地形オブジェクトの壁の角度は22度程度で表示されてしまう。プレイヤはこのようなテレビ画面を見ながらキャラクタオブジェクトの移動等を操作するので、たとえば、当該壁に沿うようにキャラクタオブジェクトを移動させる場合には、スティックによって、22度の方向を指示してしまう。その結果、45度方向に延びる壁に沿って移動させるつもりがゲーム空間内においてキャラクタオブジェクトが22度の方向に移動してしまい、テレビ画面上ではより狭い角度(たとえば、10度)で移動するように表示されてしまっていた。 Specifically, there is a rectangular parallelepiped character object (player object) in front of a cubic terrain object placed in the 3D space, and this is taken by a virtual camera from an oblique (45 degrees) direction. The game image as shown in FIG. 15 is displayed on the display (television screen). As can be seen from FIG. 15, even in the 3D space, even if the side surface (wall) of the terrain object extends in the direction of 45 degrees, the angle on the television screen is different, and in the wall facing the character object, 45 degrees. The angle is smaller than that. For example, when the angle of the virtual camera (the angle formed by the straight line connecting the virtual camera and the gazing point and the horizontal plane of the 3D space) is 45 degrees, the angle of the wall of the terrain object facing the character object is 22 degrees. It will be displayed in the degree. Since the player operates the movement of the character object while watching such a television screen, for example, when the character object is moved along the wall, the direction of 22 degrees is instructed by the stick. As a result, the character object moves in the game space in the direction of 22 degrees, but intends to move along the wall extending in the direction of 45 degrees, so that it moves at a narrower angle (for example, 10 degrees) on the television screen. Has been displayed.
それゆえに、この発明の主たる目的は、オブジェクトの簡単な操作を実現できる、画像生成プログラムおよび画像生成装置を提供することである。 SUMMARY OF THE INVENTION Therefore, a main object of the present invention is to provide an image generation program and an image generation apparatus that can realize a simple operation of an object.
また、この発明の他の目的は、斜めのアングルから捕えた3次元空間であっても、真上から見下ろしているように空間を把握できる、画像生成プログラムおよび画像生成装置を提供することできる。 Another object of the present invention is to provide an image generation program and an image generation apparatus capable of grasping a space as if looking down from directly above, even in a three-dimensional space captured from an oblique angle.
上記課題を解決するために、本発明は以下の構成を採用した。なお、括弧内の参照符号や図番号等は、本発明の理解を助けるために後述する実施形態との対応関係を示したものであって、本発明の範囲を何ら限定するものではない。 In order to solve the above problems, the present invention employs the following configuration. Note that reference numerals and figure numbers in parentheses indicate correspondence with embodiments described later to help understanding of the present invention, and do not limit the scope of the present invention.
請求項1は、操作手段(22;実施例で示す参照符号。以下同じ。)の操作対象である対象オブジェクト(82)と操作対象以外の複数の非対象オブジェクト(84)とが配置された3次元の仮想空間の様子を、仮想空間(80;ワールド座標系)における仮想カメラ(86)に基づく投影平面(88)に投影変換し、かつ描画領域(48)に描画することによって仮想カメラから見える画像を生成する処理をコンピュータ(36,42)に実行させる画像生成プログラムであって、コンピュータを倍率算出手段および投影描画手段として昨日させる。倍率算出手段(S23)は、コンピュータを、仮想カメラの投影平面上の第1方向(投影平面の横方向)または第1方向に直行する第2方向(投影平面の縦方向)のいずれか一方向に対して、投影平面上に投影された非対象オブジェクトを拡大または縮小するための倍率を、仮想空間における水平平面(ワールド座標系におけるXZ平面)に対して仮想カメラが向いている角度に基づいて算出するように機能させる。投影描画手段(S11)は、コンピュータを、非対象オブジェクトを投影平面に並行投影変換(S51)し、かつ投影平面に投影された非対象オブジェクトを倍率に基づいて拡大または縮小して、非対象オブジェクトを描画領域に描画するように機能させる。
請求項1の発明によれば、仮想空間の水平平面に対して向いている仮想カメラの角度に基づいて算出した倍率によって非対象オブジェクトを拡大または縮小して描画領域に描画しているので、非対象オブジェクトだけを真上から見たような状態でたとえばテレビ画面に表示させることができる。 According to the first aspect of the present invention, the non-target object is enlarged or reduced by the magnification calculated based on the angle of the virtual camera facing the horizontal plane of the virtual space and drawn in the drawing area. For example, it is possible to display only the target object on a television screen, for example, as viewed from directly above.
請求項2は請求項1に従属し、倍率算出手段が、投影平面に投影された非対象オブジェクトの水平断面形状が、仮想空間における非対象オブジェクトの投影変換前の水平断面形状と略同じ形状になるように、投影平面上の第1方向または第2方向に拡大または縮小するための倍率を、仮想カメラが向いている角度に基づいて算出するように、コンピュータを機能させる。 A second aspect is dependent on the first aspect, wherein the magnification calculating means makes the horizontal cross-sectional shape of the non-target object projected on the projection plane substantially the same as the horizontal cross-sectional shape of the non-target object before the projection conversion in the virtual space. As described above, the computer is caused to function so as to calculate the magnification for enlarging or reducing in the first direction or the second direction on the projection plane based on the angle at which the virtual camera is facing.
請求項2の発明によれば、当該非対象オブジェクトを、仮想空間において真上から見たような形状で表示することができる。言い換えれば、斜めアングルから捕えた3次元空間にであっても、真上から見下ろしたように空間を把握することができる。 According to the invention of claim 2, the non-target object can be displayed in a shape as seen from directly above in the virtual space. In other words, even in a three-dimensional space captured from an oblique angle, the space can be grasped as if viewed from directly above.
請求項3は請求項1または2に従属し、投影描画手段に、仮想空間におけるクリッピング領域内のすべてのオブジェクトに対して拡大または縮小の処理を実行させ、拡大または縮小の処理を実行したときに対象オブジェクトの形状が元の形状に戻るように、対象オブジェクトの水平断面形状を縮小または拡大して配置する配置手段として、コンピュータをさらに機能させる。 A third aspect is dependent on the first or second aspect, wherein the projection / drawing means causes the enlargement / reduction process to be executed on all the objects in the clipping region in the virtual space, and the enlargement / reduction process is executed. The computer further functions as an arrangement unit that arranges the horizontal cross-sectional shape of the target object in a reduced or enlarged manner so that the shape of the target object returns to the original shape.
請求項3の発明によれば、たとえば、投影描画手段(S9,S11)が拡大の処理を実行するときには、対象オブジェクトの水平断面形状を縮小しておき、逆に投影描画手段が縮小の処理を実行するときには、対象オブジェクトの水平断面形状を拡大しておく。したがって、対象オブジェクトはそのままの形状で表示されることとなるので、ゲームのリアリティを必要以上に損なうなどの不都合はなく、ゲームへの興味を減退してしまうこともない。
According to the invention of
請求項4は請求項1ないし3のいずれかに従属し、投影描画手段が、並行投影変換し、かつ倍率に基づく拡大または縮小するための行列式を生成し、行列式に基づいて投影変換および拡大または縮小処理を行わせた後、描画領域にオブジェクトを描画するように、コンピュータを機能させる。 A fourth aspect of the present invention is dependent on any one of the first to third aspects, wherein the projection drawing means generates a determinant for performing parallel projection conversion and enlarging or reducing based on the magnification, and performing the projection conversion and the conversion based on the determinant. After enlarging or reducing the image, the computer is caused to function so as to draw the object in the drawing area.
請求項4の発明によれば、行列式に従って、投影変換および拡大または縮小の処理を実行するので、座標変換を簡単に行うことができる。 According to the fourth aspect of the present invention, the projection conversion and the enlargement / reduction process are executed according to the determinant, so that the coordinate conversion can be easily performed.
請求項5は請求項1ないし4のいずれかに従属し、仮想空間の水平平面に対する仮想カメラの向いている角度を検出するカメラ角度検出手段として、コンピュータをさらに機能させる。 A fifth aspect is dependent on any one of the first to fourth aspects, and further causes the computer to function as camera angle detection means for detecting an angle at which the virtual camera faces the horizontal plane of the virtual space.
請求項5の発明によれば、検出された角度に基づく倍率で、投影平面に投影されたオブジェクトが縮小されるので、たとえば、当該倍率の逆数で拡大すれば、対象オブジェクトの形状を元の形状に戻すことができる。
According to the invention of
請求項6は請求項1ないし5のいずれかに従属し、拡大する方向は投影平面に対する縦方向であり、縮小する方向は投影平面に対する横方向である。 A sixth aspect is dependent on any one of the first to fifth aspects, wherein the enlargement direction is a vertical direction relative to the projection plane, and the reduction direction is a horizontal direction relative to the projection plane.
請求項6の発明によれば、仮想カメラによって斜め上方から見た非対象オブジェクトを、真上から見たように表示することができる。 According to the sixth aspect of the present invention, the non-target object viewed obliquely from above with the virtual camera can be displayed as viewed from directly above.
請求項7は請求項1ないし6のいずれかに従属し、非対象オブジェクトは地形オブジェクトまたは建物オブジェクトを含む。 A seventh aspect is dependent on any one of the first to sixth aspects, and the non-target object includes a terrain object or a building object.
請求項7の発明によれば、形状を変化させるのは、地形オブジェクトまたは建物オブジェクトのような背景オブジェクトであり、プレイヤオブジェクトのようなキャラクタオブジェクトはそのままの形状で表示するようにするので、ゲームのリアリティを必要以上に損なうことがない。すなわち、ゲームへの興味減退を防止することができる。
According to the invention of
請求項8は、操作手段の操作対象である対象オブジェクトと操作対象以外の複数の非対象オブジェクトとが配置された3次元の仮想空間の様子を、仮想空間における仮想カメラに基づく投影平面に投影変換し、かつ描画領域に描画することによって仮想カメラから見える画像を生成する画像生成装置である。この画像生成装置は、仮想カメラの投影平面上の第1方向または第1方向に直行する第2方向のいずれか一方向に対して、投影平面上に投影された非対象オブジェクトを拡大または縮小するための倍率を、仮想空間における水平平面に対して仮想カメラが向いている角度に基づいて算出する倍率算出手段、および非対象オブジェクトを投影平面に並行投影変換し、かつ投影平面に投影された非対象オブジェクトを倍率に基づいて拡大または縮小して、非対象オブジェクトを描画領域に描画する投影描画手段を備える。 According to another aspect of the present invention, a state of a three-dimensional virtual space in which a target object that is an operation target of the operation means and a plurality of non-target objects other than the operation target are arranged is projected and converted to a projection plane based on a virtual camera in the virtual space. And an image generation device that generates an image that can be seen from a virtual camera by drawing in a drawing area. The image generation apparatus enlarges or reduces the non-target object projected on the projection plane with respect to either the first direction on the projection plane of the virtual camera or the second direction orthogonal to the first direction. A magnification calculating means for calculating a magnification for the image based on an angle at which the virtual camera is facing the horizontal plane in the virtual space, and a non-target object that is parallel projected on the projection plane and projected onto the projection plane Projection drawing means for drawing a non-target object in a drawing area by enlarging or reducing the target object based on a magnification.
請求項8の発明においても請求項1の発明と同様に、仮想空間の水平平面に対して向いている仮想カメラの角度に基づいて算出した倍率によって非対象オブジェクトを拡大または縮小して描画領域に描画しているので、非対象オブジェクトだけを真上から見たような状態でテレビ画面に表示させることができる。
In the invention of claim 8, as in the invention of
請求項9は請求項8に従属し、倍率算出手段は、投影平面に投影された非対象オブジェクトの水平断面形状が、仮想空間における非対象オブジェクトの投影変換前の水平断面形状と略同じ形状になるように、投影平面上の第1方向または第2方向に拡大または縮小するための倍率を、仮想カメラが向いている角度に基づいて算出する。 A ninth aspect is dependent on the eighth aspect, wherein the magnification calculating means makes the horizontal cross-sectional shape of the non-target object projected onto the projection plane substantially the same as the horizontal cross-sectional shape of the non-target object before the projection conversion in the virtual space. Thus, the magnification for enlarging or reducing in the first direction or the second direction on the projection plane is calculated based on the angle at which the virtual camera is facing.
請求項10は請求項8または9に従属し、投影描画手段は、仮想空間におけるクリッピング領域内のすべてのオブジェクトに対して拡大または縮小の処理を実行し、投影描画手段によって拡大または縮小の処理が実行されたときに、対象オブジェクトの形状が元の形状に戻るように、対象オブジェクトの水平断面形状を縮小または拡大して配置する配置手段をさらに備える。 A tenth aspect is dependent on the eighth or ninth aspect, wherein the projection / drawing means executes enlargement / reduction processing for all objects in the clipping region in the virtual space, and the enlargement / reduction processing is performed by the projection / drawing means. Arrangement means is further provided for reducing or enlarging the horizontal cross-sectional shape of the target object so that the shape of the target object returns to the original shape when executed.
請求項11は請求項8ないし10のいずれかに従属し、投影描画手段は、並行投影変換し、かつ倍率に基づく拡大または縮小するための行列式を生成し、行列式に基づいて投影変換および拡大または縮小の処理を実行した後、描画領域にオブジェクトを描画する。 An eleventh aspect is dependent on any one of the eighth to tenth aspects, wherein the projection drawing means generates a determinant for performing parallel projection conversion and enlarging or reducing based on magnification, and performing projection conversion and After executing the enlargement or reduction process, the object is drawn in the drawing area.
請求項12は請求項8ないし11のいずれかに従属し、仮想空間の水平平面に対する仮想カメラの向いている角度を検出するカメラ角度検出手段をさらに備える。 A twelfth aspect is dependent on any one of the eighth to eleventh aspects, and further includes camera angle detection means for detecting an angle of the virtual camera facing the horizontal plane of the virtual space.
請求項13は請求項8ないし12のいずれかに従属し、拡大する方向は投影平面に対する縦方向であり、縮小する方向は投影平面に対する横方向である。 A thirteenth aspect is dependent on any one of the eighth to twelfth aspects, wherein the enlargement direction is a vertical direction with respect to the projection plane, and the reduction direction is a horizontal direction with respect to the projection plane.
請求項14は請求項8ないし13のいずれかに従属し、非対象オブジェクトは地形オブジェクトまたは建物オブジェクトを含む。 A fourteenth aspect is dependent on any one of the eighth to thirteenth aspects, and the non-target object includes a terrain object or a building object.
この発明によれば、投影平面に投影された建物オブジェクトや壁オブジェクトのような非対象オブジェクトを仮想カメラの角度に基づく倍率で拡大または縮小するので、画面上の当該非対象オブジェクトが真上から見たように表示される。これにより、たとえばテレビ画面などに表示された非対象オブジェクトに沿って対象オブジェクトを移動させる場合、操作手段の操作による対象オブジェクトの移動方向とテレビ画面上の対象オブジェクトの移動方向とが一致するので、対象オブジェクトの操作を簡単に行うことができる。すなわち、操作性を向上できる。 According to the present invention, a non-target object such as a building object or a wall object projected on the projection plane is enlarged or reduced at a magnification based on the angle of the virtual camera, so that the non-target object on the screen is viewed from directly above. Is displayed. Thereby, for example, when moving the target object along the non-target object displayed on the TV screen or the like, the movement direction of the target object by the operation of the operation means matches the movement direction of the target object on the TV screen. The target object can be easily operated. That is, operability can be improved.
この発明の上述の目的,その他の目的,特徴および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。 The above object, other objects, features and advantages of the present invention will become more apparent from the following detailed description of embodiments with reference to the drawings.
図1を参照して、この発明の一実施例である画像生成プログラムまたは画像生成装置を備えるビデオゲーム装置12を含むビデオゲームシステム10について説明する。ビデオゲーム装置12には電源が与えられるが、この電源は、実施例では、一般的なACアダプタ(図示せず)であってよい。ACアダプタは家庭用の標準的な壁ソケットに差し込まれ、家庭用電源を、ビデオゲーム装置12を駆動するのに適した低いDC電圧に変換する。他の実施例としては、電源として、バッテリが用いられてもよい。
With reference to FIG. 1, a
ビデオゲーム装置12は、略立方体のハウジング14を含み、ハウジング14の上端には光ディスクドライブ16が設けられる。光ディスクドライブ16には、ゲームプログラム等を記憶した情報記憶媒体の一例である光ディスク18が装着される。ハウジング14の前面には複数の(実施例では4つの)コネクタ20が設けられる。これらコネクタ20は、ケーブル24によって、コントローラ22をビデオゲーム装置12に接続するためのものであり、この実施例では最大4つのコントローラ22をビデオゲーム装置12に接続することができる。
The
コントローラ22には、その上面,下面,或いは側面などに、操作部(操作スイッチ)26が設けられる。操作部26は、たとえば2つのアナログジョイスティック,1つの十字キー,複数のボタンスイッチ等を含む。1つのアナログジョイスティックは、スティックの傾き量と方向とによって、プレイヤオブジェクト(プレイヤがコントローラ22によって操作可能な動画オブジェクト)の移動方向および/または移動速度ないし移動量などを入力するために用いられる。他のアナログジョイスティックは、傾斜方向によって、仮想カメラの移動を制御する。十字スイッチは、アナログジョイスティックに代えてプレイヤオブジェクトの移動方向を指示するために用いられる。ボタンスイッチは、プレイヤオブジェクトの動作を指示するために利用されたり、3次元画像の仮想カメラの視点を切り換えたり、プレイヤオブジェクトの移動スピード調節等に用いられる。ボタンスイッチは、さらに、たとえばメニュー選択やポインタあるいはカーソル移動を制御する。
The
なお、この実施例ではコントローラ22がそれと一体的に設けられるケーブル24によってビデオゲーム装置12に接続された。しかしながら、コントローラ22は、他の方法、たとえば電磁波(たとえば電波または赤外線)を介してワイヤレスで、ビデオゲーム装置12に接続されてもよい。また、コントローラ22の操作部26の具体的構成は、もちろん実施例の構成に限られるものではなく、任意の変形が可能である。たとえば、アナログジョイスティックは1つだけでもよいし、用いられなくてもよい。十字スイッチは用いられなくてもよい。
In this embodiment, the
ビデオゲーム装置12のハウジング14の前面であり、コネクタ20の下方には、1つまたは複数の(この実施例では2つの)メモリスロット28が設けられる。このメモリスロット28にはメモリカード30が挿入される。メモリカード30は、光ディスク18から読み出したゲームプログラム等をローディングして一時的に記憶したり、このゲームシステム10を利用してプレイしたゲームのゲームデータ(たとえばゲームの結果)を保存(セーブ)しておいたりするために利用される。
One or more (two in this embodiment)
ビデオゲーム装置12のハウジング14の後面には、AVケーブルコネクタ(図示せず)が設けられ、そのコネクタを用いて、AVケーブル32を通してビデオゲーム装置12にモニタ34を接続する。このモニタ34は典型的にはカラーテレビジョン受像機であり、AVケーブル32は、ビデオゲーム装置12からの映像信号をカラーテレビのビデオ入力端子に入力し、音声信号を音声入力端子に入力する。したがって、カラーテレビ(モニタ)34の画面上にたとえば3次元(3D)ビデオゲームのゲーム画像が表示され、左右のスピーカ34aからゲーム音楽や効果音などのステレオゲーム音声、または2スピーカであってもサラウンド効果を出すことが可能な場合は、サラウンド音声を含むゲーム音声が出力される。
An AV cable connector (not shown) is provided on the rear surface of the
このゲームシステム10において、ユーザまたはゲームプレイヤがゲーム(または他のアプリケーション)をプレイするために、ユーザはまずビデオゲーム装置12の電源をオンし、次いで、ユーザはビデオゲーム(もしくはプレイしたいと思う他のアプリケーション)をストアしている適宜の光ディスク18を選択し、その光ディスク18をビデオゲーム装置12のディスクドライブ16にローディングする。応じて、ビデオゲーム装置12がその光ディスク18にストアされているソフトウェアに基づいてビデオゲームもしくは他のアプリケーションを実行し始めるようにする。ユーザはビデオゲーム装置12に入力を与えるためにコントローラ22を操作する。たとえば、操作部26のどれかを操作することによってゲームもしくは他のアプリケーションをスタートさせる。操作部26の他のものを動かすことによって、動画オブジェクト(プレイヤオブジェクト)を異なる方向に移動させ、または3次元(3D)のゲーム世界におけるユーザの視点(カメラ位置)を変化させることができる。
In this
図2は図1実施例のビデオゲームシステム10の電気的な構成を示すブロック図である。ビデオゲーム装置12には、中央処理ユニット(以下、「CPU」という。)36が設けられる。このCPU36は、コンピュータ或いはプロセサなどとも呼ばれ、ビデオゲーム装置12の全体的な制御を担当する。CPU36ないしコンピュータは、ゲームプロセサとして機能し、このCPU36には、バスを介して、メモリコントローラ38が結合される。メモリコントローラ38は主として、CPU36の制御の下で、バスを介して結合されるメインメモリ40の書込みや読出しを制御する。このメモリコントローラ38にはGPU(Graphics Processing Unit:グラフィックス処理装置) 42が結合される。
FIG. 2 is a block diagram showing an electrical configuration of the
GPU42は、描画手段の一部を形成し、たとえばシングルチップASICで構成され、メモリコントローラ38を介してCPU36からのグラフィクスコマンド(graphics command :作画命令) を受け、そのコマンドに従って、ジオメトリユニット44およびレンダリングユニット46によって3次元(3D)ゲーム画像を生成する。つまり、ジオメトリユニット44は、3次元座標系の各種オブジェクトやオブジェクト(複数のポリゴンで構成されている。そして、ポリゴンとは少なくとも3つの頂点座標によって定義される多角形平面をいう。)の回転,移動,変形等の座標演算処理を行う。レンダリングユニット46は、各種オブジェクトの各ポリゴンにテクスチャ(Texture :模様画像)を貼り付けるなどの画像生成処理を施す。したがって、GPU42によって、ゲーム画面上に表示すべき3D画像データが作成され、その画像データがフレームバッファ48内に記憶される。
The
なお、GPU42が作画コマンドを実行するにあたって必要なデータ(プリミティブまたはポリゴンやテクスチャ等)は、GPU42がメモリコントローラ38を介して、メインメモリ40から入手する。
Note that data (primitives, polygons, textures, etc.) necessary for the
フレームバッファ48は、たとえばラスタスキャンモニタ34の1フレーム分の画像データを描画(蓄積)しておくためのメモリであり、GPU42によって1フレーム毎に書き換えられる。具体的には、フレームバッファ48は、1画素(ピクセル)毎に、画像の色情報を順序立てて記憶している。ここで、色情報は、R,G,B,Aについてのデータであり、たとえば、8ビットのR(赤)データ、8ビットのG(緑)データ、8ビットのB(青)データおよび8ビットのA(アルファ)データである。なお、Aデータは、マスク(マット画像)についてのデータである。後述のビデオI/F58がメモリコントローラ38を介してフレームバッファ48のデータを読み出すことによって、モニタ34の画面上に3Dゲーム画像が表示される。
The
また、Zバッファ50は、フレームバッファ48に対応する画素数×1画素当たりの奥行きデータのビット数に相当する記憶容量を有し、フレームバッファ48の各記憶位置に対応するドットの奥行き情報または奥行きデータ(Z値)を記憶するものである。
The
なお、フレームバッファ48およびZバッファ50は、ともにメインメモリ40の一部を用いて構成されてもよい。
Note that both the
メモリコントローラ38はまた、DSP(Digital Signal Processor)52を介して、ARAM54に結合される。したがって、メモリコントローラ38は、メインメモリ40だけでなく、サブメモリとしてのARAM54の書込みおよび/または読出しを制御する。
The
DSP52は、サウンドプロセサとして働き、メインメモリ40に記憶されたサウンドデータ404b(図3参照)を用いたり、ARAM54に書き込まれている音波形データ(図示せず)を用いたりして、ゲームに必要な音、音声或いは音楽に対応するオーディオデータを生成する。
The
メモリコントローラ38は、さらに、バスによって、各インタフェース(I/F)56,58,60,62および64に結合される。コントローラI/F56は、コントローラ22のためのインタフェースであり、コントローラ22の操作部26の操作信号またはデータを、メモリコントローラ38を通してCPU36に与える。ビデオI/F58は、フレームバッファ48にアクセスし、GPU42で作成した画像データを読み出して、画像信号または画像データ(ディジタルRGBAピクセル値)をAVケーブル32(図1)を介してモニタ34に与える。
外部メモリI/F60は、ビデオゲーム装置12の前面に挿入されるメモリカード30(図1)をメモリコントローラ38に連係させる。それによって、メモリコントローラ38を介して、CPU36がこのメモリカード30にデータを書込み、またはメモリカード30からデータを読み出すことができる。オーディオI/F62は、メモリコントローラ38を通してDSP52から与えられるオーディオデータまたは光ディスク18から読み出されたオーディオストリームを受け、それらに応じたオーディオ信号(音声信号)をモニタ34のスピーカ34aに与える。
The external memory I /
なお、ステレオ音声の場合には、スピーカ34aは、少なくとも、左右1つずつ設けられる。また、サラウンド処理することで、左右2つのスピーカのみであっても後方から音が発生しているように音を聞かせることも可能である。
In the case of stereo sound, at least one
そして、ディスクI/F64は、そのディスクドライブ16をメモリコントローラ38に結合し、したがって、CPU36がディスクドライブ16を制御する。このディスクドライブ16によって光ディスク18から読み出されたプログラムデータやテクスチャデータ等が、CPU36の制御の下で、メインメモリ40に書き込まれる。
The disk I /
図3にはメインメモリ40のメモリマップが示される。メインメモリ40は、プログラム記憶領域402およびデータ記憶領域404を含む。プログラム記憶領域402には、ゲームメイン処理プログラム402a,画像生成プログラム402bおよび画像表示プログラム402cなどのプログラムが記憶される。
FIG. 3 shows a memory map of the
ゲームメイン処理プログラム402aは、ビデオゲーム装置12によって実行されるゲームについてのメインルーチンを処理するプログラムである。画像生成プログラム402bは、当該ゲームに登場するプレイヤオブジェクトや敵(対戦相手)オブジェクトなどの動画オブジェクト、そのような動画オブジェクトによって使用されるアイテムのオブジェクト(アイテムオブジェクト)および当該ゲームの背景オブジェクト(地形オブジェクト、壁オブジェクト、建物オブジェクトおよび床オブジェクトなど)などのゲーム画像を生成するプログラムである。以下、この実施例においては、上述の動画オブジェクトとアイテムオブジェクトとをまとめて「キャラクタオブジェクト」と呼ぶことがある。画像表示プログラム402cは、画像生成プログラム402bによって生成されたゲーム画像をモニタ34に表示するためのプログラムである。
The game
また、データ記憶領域404には、画像データ404a,サウンドデータ404bおよび行列式データ404cなどのデータが記憶される。画像データ404aは、上述したようなゲーム画像を生成するためのポリゴンデータやテクスチャデータのようなデータである。具体的には、当該ゲームに登場するキャラクタオブジェクトの画像データおよび背景オブジェクトの画像データである。サウンドデータ404bは、ゲーム中に演奏される音楽(BGM)や効果音のような音(音楽)についてのデータである。行列式データ404cは、後述するように、画像生成処理において生成される行列式(モデル行列、カメラ行列および射影行列)についてのデータである。
The
なお、図示は省略するが、メインメモリ40には、当該ゲームの進行に従って発生するゲームデータやフラグデータなども記憶される。
Although not shown, the
たとえば、図4(A)に示すように、3Dの仮想空間80においては、コントローラ22(コントロール手段26)の操作に従って、移動等の任意のアクションを制御されるプレイヤオブジェクトのようなキャラクタオブジェクト82が配置される。また、コントローラ22の操作を伴わないで、仮想空間80の所定位置に、地形オブジェクト、壁オブジェクト、建物オブジェクトおよび床オブジェクト等の背景オブジェクト84が配置される。このような仮想空間80の所定位置には、さらに、仮想カメラ86が配置され、この仮想カメラ86によって撮影された画像(ゲーム画像)がモニタ34に表示される。
For example, as shown in FIG. 4A, in the 3D
このような3Dの仮想ゲームでは、3Dの仮想空間80が2次元画像でモニタ34に表示される。このため、3次元物体を2次元平面(スクリーン)に投影して表示する必要がある。また、3次元空間内に配置された物体を眺めた場合には、視点に近い物体ほど大きく、遠い物体ほど小さく見えるため、スクリーンに投影する場合には、透視投影されるのが一般的である。これにより、パースのかかったゲーム画像がモニタ34に表示される。たとえば、図4(A)の仮想カメラ86で撮影されたゲーム画像は、図4(B)に示すように、モニタ34に表示される。この図4(B)から分かるように、仮想空間80に配置される正方形の板状の背景オブジェクト84は、画面表示する場合に、台形形状に変形される。
In such a 3D virtual game, the 3D
プレイヤは、このゲーム画像を見ながらコントローラ22を操作するが、通常、コントローラ22に設けられるジョイスティックの傾斜方向は、3Dの仮想空間80(ワールド座標系)の方向に対応しているため、キャラクタオブジェクト82を背景オブジェクト84の側面に沿って、画面の奥に向けて移動させる場合には、ジョイスティックを真上方向に傾ければよい。
The player operates the
しかし、ゲーム画像では、背景オブジェクト84が台形形状で表示されるため、プレイヤは、台形形状の背景オブジェクト84の斜辺に沿うように、キャラクタオブジェクト82を移動させるべく、ジョイスティックを斜め上方に傾けてしまうことがある。すると、キャラクタオブジェクト82は、背景オブジェクト84の内部に向けて移動してしまい、プレイヤの操作方向(ジョイスティックの傾斜方向)と画面上のキャラクタオブジェクト82の移動方向とが一致しない。このように、3Dの仮想ゲームでは、キャラクタオブジェクト82を移動させるには、ある程度の空間把握能力(2次元表示されている画面を見て、その状態を3次元空間として把握できる)を要する。
However, since the
そこで、この実施例では、空間把握能力を要しなくても、簡単にキャラクタオブジェクト82を移動させることができるゲーム画像をモニタ34に表示するようにしてある。以下、その内容について説明する。
Therefore, in this embodiment, a game image that can easily move the
まず、図5ないし図7を参照して、この実施例におけるゲーム画像の生成方法の考え方について説明することにする。図5に示すように、この実施例では、仮想カメラ86によって撮影されたゲーム画像すなわち仮想カメラ86から見たゲーム画像は、2次元平面(スクリーン)88に並行投影(直交投影或いは正射影とも呼ばれる。)される。ただし、図5は、図4(A)に示した仮想空間80を視野空間に配置し直した状態を示しており、また、簡単のため、キャラクタオブジェクト82を省略してある。このとき、スクリーン88に投影されたオブジェクト(投影オブジェクト)84´の長さX´は、元の背景オブジェクト84の長さXよりも短くされる。図5に示す例では、投影オブジェクト84´の長さX´は、背景オブジェクト84の長さXのcos(90−θ)倍となる。ただし、θは仮想カメラ86の角度(以下、「カメラ角度」という。)である。
First, the concept of the game image generation method in this embodiment will be described with reference to FIGS. As shown in FIG. 5, in this embodiment, a game image taken by the
つまり、図6(A)に示すように、スクリーン88には、長方形に変形された(縦方向につぶされた)背景オブジェクト84の画像が表示される。ここで、この並行投影されたゲーム画像をそのままテレビモニタ34に表示した場合であっても、コントローラ22の操作方向と画面上のキャラクタオブジェクト82の移動方向とは一致する。しかし、並行投影した際に、背景オブジェクト84の縦方向の長さが短くされるため、プレイヤがコントローラ22を操作してキャラクタオブジェクト82を背景オブジェクト84に沿ってその周囲を移動させた場合には、キャラクタオブジェクト82が縦の辺に沿って移動する速度と横の辺に沿って移動する速度とに違いが生じてしまい、プレイヤは違和感を覚えてしまう。これは、3Dの仮想空間80に配置される背景オブジェクト84は正方形であり、その辺の長さはすべて同じだからである。
That is, as shown in FIG. 6A, the
したがって、この実施例では、単に並行投影するだけでなく、さらに、スクリーン88に投影された背景オブジェクト84の形状を変形させて、そのような違和感が生じるのを回避してある。つまり、cos(90−θ)倍された背景オブジェクト84を元の大きさ(形状)と同じ或いは略同じに戻すようにしてある。具体的には、図6(A)に示すように、スクリーン88の長さHからそのスクリーン88の中央を基準に、長さcos(90−θ)Hに相当する部分だけ抜き出し、抜き出した部分が長さHとなるように拡大して、描画バッファ(フレームバッファ48)に描画するようにしてある。すると、背景オブジェクト84は、図7に示すように、3Dの仮想空間80における大きさと同じ或いは略同じ大きさであり、真上から見たように、モニタ34に表示される。
Therefore, in this embodiment, not only parallel projection but also the shape of the
このように、通常より小さな範囲を描画領域として指定する(抜き出す)ことにより、それが通常と同じビューポート設定で同じ範囲のフレームバッファ48に対応させられると、結果として拡大されたように見えるのである。
In this way, by specifying (extracting) a range smaller than normal as a drawing area, if it is made to correspond to the
ただし、プレイヤオブジェクトのように、コントローラ22によってその移動等のアクションを制御されるキャラクタオブジェクト82(操作対象のオブジェクト)については、その形状を変化させると、ゲームのリアリティを損なう恐れがあるため、その形状は変形させずに、図6(B)に示すように、背景オブジェクト84の拡大に伴って、その位置のみを移動させるようにしてある。
However, for a character object 82 (object to be operated) whose action such as movement is controlled by the
また、敵オブジェクトのようなキャラクタオブジェクト82は、ゲームプログラムに従って移動等の任意のアクションを制御されるため、コントローラ22の操作対象ではないが、これらを変形して表示した場合にも、ゲームのリアリティを損ない、ゲーム自体への興味を減退させる恐れがあるため、非操作対象から除外してある。つまり、敵オブジェクトのようなキャラクタオブジェクト82についても、プレイヤオブジェクトと同様に、その形状を変化させないようにしてある。
The
詳しく説明すると、レンダリングでは、3Dモデル(キャラクタオブジェクトおよび背景オブジェクト等)のモデルデータについてのローカル座標データがモデル行列に従って仮想空間80に配置され、次にカメラ行列に従って視野空間に配置し直され、そして、射影行列に従って2次元に投影され、最後にビューポート設定により2次元座標系がフレームバッファ48の座標系(アドレス)に変換されて色が塗られる。
Specifically, in rendering, local coordinate data for model data of a 3D model (such as a character object and a background object) is placed in the
この実施例では、このような処理のうち、モデル行列、カメラ行列および射影行列の行列生成時に、通常とは異なる計算方法を採用することにより、上述したような拡大スケーリング(scale倍)が行われるようにする。以下、図面を参照しながら、具体的に説明する。 In this embodiment, among the above processes, when generating a model matrix, a camera matrix, and a projection matrix, enlargement scaling (scale multiplication) as described above is performed by adopting a calculation method different from the normal method. Like that. Hereinafter, it demonstrates concretely, referring drawings.
図8(A)に示すように、3次元の仮想空間80に、立方体形状のキャラクタオブジェクト82と同じく立方体形状の背景オブジェクト84を通常のモデル行列で配置し、それらを撮影するように、カメラ角度θを45度に設定した仮想カメラ86を配置する。ただし、ここでは、簡単に説明するために、キャラクタオブジェクト82および背景オブジェクト84の各辺の長さを「1」としてある。
As shown in FIG. 8 (A), the camera angle is set so that a cube-shaped
次に、図8(A)に示す仮想空間80が、通常のカメラ行列に従って計算処理が施されると、図8(B)に示すように、仮想カメラ86を中心とした視野空間に配置し直される。そして、通常の射影行列に従って視野空間が2次元平面(スクリーン88)に並行投影される。このとき、図8(A)における、キャラクタオブジェクト82および背景オブジェクト84の上面(仮想空間80の地面に対して水平な面(辺))および側面(仮想空間80の地面に対して垂直な面(辺))の長さがcosθ倍(ここでは、θ=45°であるため、1/√2倍)される。ただし、簡単のため、√2≒1.4とし、1/√2≒0.7としてある。以下、同様である。
Next, when the
ここで、上述したように、拡大スケーリングだけを行うとすると、上面だけでなく、側面も拡大されてしまう。かかる場合には、全体がテレビモニタ34の縦方向に延びて表示されるだけであり、通常の並行投影を行った画面とほとんど変わらない。そこで、上面のみに拡大スケーリングを施すべく、オブジェクト(キャラクタオブジェクト82および背景オブジェクト84)が垂直方向につぶれて(1/scale倍)見えるようなカメラ行列を生成するようにしてある。これにより、画面表示されるキャラクタオブジェクト82および背景オブジェクト84は、その上面(水平方向)にのみ拡大スケーリングが施され、側面(垂直方向)には拡大スケーリングが施されていないように見えるのである。
Here, as described above, if only enlargement scaling is performed, not only the upper surface but also the side surface is enlarged. In such a case, the entire screen is only displayed in the vertical direction of the
ただし、キャラクタオブジェクト82については、形の歪みを完全に無くすために、カメラ行列による打消しだけでは補えない水平方向についての拡大スケーリングを打ち消すようなモデル行列が生成される。つまり、水平方向にだけつぶれて(1/scale倍)見えるようなモデル行列が生成される。
However, for the
具体的には、モデル行列は、背景オブジェクト84についてのモデル行列(数1)と、キャラクタオブジェクト82についてのモデル行列(数2)とが生成される。ローカル空間(仮想空間80のうち仮想カメラ86で撮影可能な範囲についての空間)の原点位置を持ってきたい仮想空間80上の座標を(Px,Py,Pz)とし、ローカル空間のX軸を向けたい仮想空間80上での単位ベクトルを(Xx,Xy,Xz)とし、ローカル空間のY軸を向けたい仮想空間80上の単位ベクトルを(Yx,Yy,Yz)とし、ローカル空間のZ軸を向けたい仮想空間80上の単位ベクトルを(Zx,Zy,Zz)とすると、通常のモデル行列は数1で示される。この数1で示されるモデル行列が背景オブジェクト84を仮想空間80に配置するためのモデル行列である。
Specifically, as the model matrix, a model matrix (Equation 1) for the
また、上述したように、キャラクタオブジェクト82については、形の歪みを無くすようにするため、水平面と平行であり、テレビモニタ34画面の縦方向となる方向(nx,0,nz)(;長さ1の単位ベクトル)に形をつぶして(1/scale倍)配置するように、数2に示すようなモデル行列が生成される。この数2に示すモデル行列は、数1に示すモデル行列に基づいて生成される。
As described above, the
このようなモデル行列に従って、キャラクタオブジェクト82および背景オブジェクト84を3次元の仮想空間80に配置すると、図9(A)に示すように、キャラクタオブジェクト82については、水平方向にだけつぶれたように表示される。ここで、キャラクタオブジェクト82を水平方向にだけつぶれたように表示させる割合は、仮想カメラ86のカメラ角度θによって決定される。上述したように、カメラ角度θは45度に設定されるため、キャラクタオブジェクト82は水平方向に1/√2倍される。
When the
次に、仮想空間80は、図9(B)に示すように、仮想カメラ86を中心とする、視野空間に配置し直される。仮想カメラ86が配置されている仮想空間80上の座標を(Px,Py,Pz)とし、注視点から仮想カメラ86へ向く仮想空間80上の単位ベクトルを(Zx,Zy,Zz)とし、仮想カメラ86の上方向が向いている仮想空間80上の単位ベクトルを(Yx,Yy,Yz)とし、仮想カメラ86の背後から見て仮想カメラ86の右方向における仮想空間80上の単位ベクトルを(Xx,Xy,Xz)とすると、通常のカメラ行列は数3で示される。
Next, the
ただし、上述したように、この実施例では、仮想空間80に配置されたキャラクタオブジェクト82および背景オブジェクト84が垂直方向(0,1,0)に1/scale倍されて、視野空間に配置し直すようにしてあるため、数4に示すようなカメラ行列に変換される。
However, as described above, in this embodiment, the
このようなカメラ行列に従って視野空間に配置し直されると、図9(B)に示すように、キャラクタオブジェクト82および背景オブジェクト84の側面(垂直面)が1/√2倍されて、その辺の長さが「0.7」にされる。
When rearranged in the visual field space according to such a camera matrix, the side surfaces (vertical surfaces) of the
そして、図10(A)に示すように、視野空間がスクリーン88に並行投影され、さらに、拡大スケーリングが施される。ここで、スクリーン88に投影する視野空間の左端を「left」、右端を「right」、上端を「top」、下端を「bottom」、手前端を「near」、そして、奥端を「far」とすると、通常の射影行列は数5で示される。
Then, as shown in FIG. 10A, the visual field space is projected in parallel on the
ただし、この実施例では、視野空間の上下幅を1/scale倍に指定するようにしてあるため、数5の射影行列は数6に示すように変換される。
However, in this embodiment, since the vertical width of the visual field space is specified to be 1 / scale times, the projection matrix of
この数6に従って並行投影を行うことにより、並行投影の処理と同時に、拡大スケーリング処理も実行されるのである。 By performing parallel projection according to Equation 6, enlargement scaling processing is executed simultaneously with the parallel projection processing.
なお、射影行列については、ハードウェアの座標系の違いにより、数6に示した場合とは異なる場合がある。たとえば、OpenGLなどの3次元グラフィックス・ライブラリでは、数6の3行目の要素がそれぞれ、0,0,−2/(far−near),−(far+near)/(far−near)となる。 The projection matrix may be different from that shown in Equation 6 due to the difference in the hardware coordinate system. For example, in a three-dimensional graphics library such as OpenGL, the elements in the third row of Equation 6 are 0, 0, -2 / (far-near), and-(far + near) / (far-near), respectively.
したがって、図10(A)に示すように、並行投影されると、すべてのオブジェクトはその上面および側面が1/√2倍され、その後、拡大スケーリングが施されることにより、その上面および側面が√2倍される。したがって、キャラクタオブジェクト82については、並行投影により、その上面および側面についての辺の長さが約「0.5」にされ、その後、拡大スケーリングにより、各辺の長さが約「0.7」にされる。一方、背景オブジェクト84については、並行投影により、その上面についての辺の長さが約「0.7」にされ、その側面についての辺の長さが約「0.5」にされる。その後、拡大スケーリングにより、背景オブジェクト84の上面についての辺の長さが約「1」にされ、その側面についての辺の長さが約「0.7」にされる。
Therefore, as shown in FIG. 10A, when parallel projection is performed, all objects have their top and side surfaces multiplied by 1 / √2 and then subjected to enlargement scaling. √ Doubled. Therefore, for the
このように、並行投影および拡大スケーリングが施されるので、背景オブジェクト84の上面だけが拡大されたようなゲーム画像が生成されるのである。したがって、たとえば、図15に示したゲーム画像の元となる3次元の仮想ゲーム空間を、透視投影によらず、この実施例に従うモデリング、並行投影および拡大スケーリングを施すようにすれば、図10(B)に示すようなゲーム画像がテレビモニタ34に表示されるのである。この図10(B)から分かるように、背景オブジェクト84としての地形オブジェクトについては、その上面を真上から見たように表示される。このため、ゲーム画像に表示される背景オブジェクトの傾き方向とコントローラ22の操作方向とが一致或いはほぼ一致するため、たとえば、キャラクタオブジェクト82をその周囲に沿って移動させる場合であっても、操作し易い。
Thus, since parallel projection and enlargement scaling are performed, a game image in which only the upper surface of the
また、図8〜図10に示した例では、背景オブジェクト84を立方体形状としてあるため、その上面だけが拡大されるように説明した。しかし、土管のような背景オブジェクト84では、仮想カメラ86から見た(視野空間における)画像は、図11(A)のように示され、土管の上面(端面)だけでなく内面の一部も見えてしまう。このため、上述したように、この視野空間を並行投影し、拡大スケーリングを行うと、図11(B)に示すような画像が生成される。つまり、土管の上面と内面の一部とが縦方向に拡大され、円形形状にされる。すなわち、投影後の背景オブジェクト84の水平方向における断面形状(水平断面形状)が、投影前における3次元空間に配置された背景オブジェクト84の水平断面形状に一致するように、拡大スケーリングを施していると言える。したがって、背景オブジェクト84を真上から見たように表示することができるのである。
Further, in the example shown in FIGS. 8 to 10, since the
図12は、図2に示したCPU36のゲーム処理を示すフロー図である。この図12を参照して、CPU36がゲーム処理を開始すると、ステップS1で、地面、建物等を形成するための背景オブジェクト84を読み出し、仮想空間80である3次元のワールド座標系に配置する。次に、ステップS3では、コントローラ22の操作対象のキャラクタオブジェクト82すなわちプレイヤオブジェクトおよび仮想カメラ86を読み出し、同じくワールド座標系に配置する。
FIG. 12 is a flowchart showing the game process of the
続くステップS5〜S11に従ってゲーム画像の生成処理(画像生成処理)を実行する。まず、ステップS5では、キャラクタオブジェクト82に対する移動指示があるかどうかを判断する。つまり、CPU36は、コントローラI/F56に設けられるコントロールバッファ(図示せず)に、ジョイスティックからの操作信号(傾き方向、傾き量)が保持されているかどうかを判断する。ステップS5で“NO”であれば、つまりキャラクタオブジェクト82に対する移動指示がなければ、そのままステップS9に移行する。一方、ステップS5で“YES”であれば、つまりキャラクタオブジェクト82に対する移動指示があれば、ステップS7で、コントローラ22からの入力に応じて、キャラクタオブジェクト82および仮想カメラ86の位置座標を算出する。つまり、ステップS7においては、コントロールバッファに保持されたジョイスティックの傾き方向および傾き量に応じてキャラクタオブジェクト82の移動後の位置を算出する。また、仮想カメラ86の位置は、キャラクタオブジェクト82の足元或いはその近傍に設けられる注視点を向くように、移動後のキャラクタオブジェクト82の位置に基づいて算出される。
A game image generation process (image generation process) is executed in accordance with subsequent steps S5 to S11. First, in step S5, it is determined whether or not there is a movement instruction for the
ステップS9では、後述する行列生成処理(図13参照)を実行し、ステップS11では、後述するジオメトリ・レンダリング処理(図14参照)を実行し、ステップS13で、ゲーム画像を表示する。そして、ステップS15では、ゲーム終了かどうかを判断する。ステップS15で“NO”であれば、つまりゲーム終了でなければ、ステップS5に戻ってゲーム処理を続行する。一方、ステップS15で“YES”であれば、つまりゲーム終了であれば、そのままゲーム処理を終了する。 In step S9, a matrix generation process (see FIG. 13) described later is executed. In step S11, a geometry rendering process (see FIG. 14) described later is executed. In step S13, a game image is displayed. In step S15, it is determined whether or not the game is over. If “NO” in the step S15, that is, if the game is not ended, the process returns to the step S5 to continue the game processing. On the other hand, if “YES” in the step S15, that is, if the game is ended, the game processing is ended as it is.
なお、図12においては、省略してあるが、ゲーム処理においては、ゲーム画像の表示処理だけでなく、ゲームメイン処理を実行したり、敵オブジェクトの移動等を制御したり、ゲームの進行に従って発生するゲームデータを更新したりするなどの処理も実行される。また、ゲームの進行に従って発生されたゲームデータは、所定のイベントやプレイヤの指示に従ってメモリカード30に記憶(セーブ)される。
Although not shown in FIG. 12, in the game process, not only the game image display process but also the game main process, the movement of enemy objects, etc. are controlled, and the game process occurs as the game progresses. Processing such as updating game data to be performed is also executed. Further, game data generated as the game progresses is stored (saved) in the
図13に示すように、CPU36が行列生成処理を開始すると、ステップS21で、仮想カメラ86のカメラ角度θを読み出す(検出する)。なお、カメラ角度θのデフォルト値は45度であるが、プレイヤがコントローラ22によってカメラ角度θを変更することができるため、このステップS21において検出するようにしてある。
As shown in FIG. 13, when the
続くステップS23では、仮想カメラ86のカメラ角度θに基づいて、投影後の水平断面形状が投影前のオブジェクトの水平断面形状(真上から見た形状)と略同じになるようなスケーリング倍率(scale=1/cos(90−θ))を算出する。次に、ステップS25では、ワールド座標系の水平面に平行であり、かつ奥行き方向、言い換えると、テレビモニタ34画面の縦方向であり、ワールド座標系の水平面に平行な方向に、scale倍されて見えるような並行投影による投影変換行列すなわち数6に示した射影行列を生成する。続いて、ステップS27では、ワールド座標系に配置される全オブジェクトが垂直方向に1/scale倍されて見えるようなカメラ行列、すなわち数4に示したカメラ行列を生成する。
In the subsequent step S23, based on the camera angle θ of the
そして、ステップS29では、対象オブジェクトがキャラクタオブジェクト82かどうかを判断する。ステップS29で“YES”であれば、つまり対象オブジェクトがキャラクタオブジェクト82であれば、ステップS31で、テレビモニタ34画面の縦方向に相当する方向(仮想空間における水平平面と平行な方向のみ)に、形状だけを1/scale倍にするためのモデル行列、すなわち数2に示したモデル行列を生成して、ステップS35に進む。一方、ステップS29で“NO”であれば、つまり対象オブジェクトが背景オブジェクト84であれば、ステップS33で、位置も形もそのまま配置するためのモデル行列、すなわち数1に示したモデル行列を生成して、ステップS35に進む。
In step S29, it is determined whether or not the target object is the
なお、図示は省略したが、ステップS31およびS33で生成されたモデル行列のデータ、ステップS25で生成されたカメラ行列のデータおよびステップS23で生成された射影行列のデータは、いずれもデータ記憶領域404に一旦記憶される。
Although not shown, the model matrix data generated in steps S31 and S33, the camera matrix data generated in step S25, and the projection matrix data generated in step S23 are all
ステップS35では、すべてのオブジェクトについてモデル行列を生成したかどうかを判断する。ステップS35で“NO”であれば、つまりモデル行列を生成していないオブジェクトが存在すれば、そのままステップS29に戻る。一方、ステップS35で“YES”であれば、つまりすべてのオブジェクトについてモデル行列を生成すれば、ステップS37で、すべての行列およびオブジェクトを構成するポリゴンの座標データ等をGPU42に与えて、行列生成処理をリターンする。
In step S35, it is determined whether model matrices have been generated for all objects. If “NO” in the step S35, that is, if there is an object for which a model matrix is not generated, the process returns to the step S29 as it is. On the other hand, if “YES” in the step S35, that is, if a model matrix is generated for all the objects, the matrix generating process is performed in step S37 by supplying the coordinate data of the polygons constituting the matrix and the objects to the
また、図14に示すように、CPU36の指示の下、GPU42がジオメトリ・レンダリング処理を開始すると、ステップS41で、キャラクタオブジェクト82の形状を縮小する。つまり、数2に示したようなモデル行列に従って、キャラクタオブジェクト(キャラクタオブジェクト82)の形状を縮小する。つまり、1/scale倍する。続くステップS43では、キャラクタオブジェクト82の配置位置を更新する。つまり、ステップS7において算出された、移動後のキャラクタオブジェクト82の位置にキャラクタオブジェクト82を移動させる。ただし、敵オブジェクトのようなゲームプログラムに従って移動を制御されるキャラクタオブジェクトについては、当該ゲームプログラムに従って計算された位置に移動される。
As shown in FIG. 14, when the
なお、この実施例では、理解を容易にするためにステップS41およびS43が順番に実行されるように記載したが、実際のハードウェアによっては単一の行列式によって同時に実行される。 In this embodiment, the steps S41 and S43 are described in order to facilitate understanding. However, depending on actual hardware, the steps are executed simultaneously by a single determinant.
次のステップS45では、すべてのオブジェクトを仮想カメラ座標系に変換する。つまり、3次元の仮想空間80を、数4に示したようなカメラ行列に従って、視野空間に変換する。そして、ステップS47で、クリッピングおよび隠面処理を施す。詳細な説明は省略するが、クリッピングでは、仮想カメラ86によって撮影可能な範囲からはみ出している部分が切り取られる。また、隠面処理では、仮想カメラ86から見えない部分の線分や面が消去される。
In the next step S45, all objects are converted into a virtual camera coordinate system. That is, the three-dimensional
続くステップS49では、光源を所定位置に配置したり、当該光源の光強度を設定したりするなどの光源処理を実行する。次に、ステップS51で、投影平面(スクリーン88)への並行行列生成処理を実行し、ステップS53で、投影平面における描画領域を指定する。つまり、図6(A)に示したように、scale倍率に応じた描画範囲を指定しているのである。ただし、上述したように、この実施例では、投影行列に変形を加えているため、GPU42は、数6に示したような投影行列を用いて、ステップS51およびステップS53の処理を一度に実行しているのである。これにより、背景オブジェクト84についてのみ、上述したような拡大スケーリングが施される。そして、ステップS55で、指定された描画領域すなわちフレームバッファ48にゲーム画像を描画する描画処理を実行して、ジオメトリ・レンダリング処理をリターンする。
In the subsequent step S49, light source processing such as arranging the light source at a predetermined position and setting the light intensity of the light source is executed. Next, in step S51, parallel matrix generation processing for the projection plane (screen 88) is executed, and in step S53, a drawing area on the projection plane is designated. That is, as shown in FIG. 6A, a drawing range corresponding to the scale magnification is designated. However, as described above, in this embodiment, since the projection matrix is modified, the
この実施例によれば、並行投影によりゲーム画像を生成するとともに、キャラクタオブジェクト以外の背景オブジェクトについて拡大スケーリングを施して、背景オブジェクトを真上から見たように表示するので、テレビ画面などに表示された非対象オブジェクトに沿って対象オブジェクトを移動させる場合、コントローラの操作によるオブジェクトの移動方向と、ゲーム画面上における当該オブジェクトの移動方向とを一致させることができる。つまり、操作が簡単である。 According to this embodiment, the game image is generated by parallel projection and the background object other than the character object is enlarged and displayed as if viewed from directly above, so that the background object is displayed on a television screen or the like. When the target object is moved along the non-target object, the moving direction of the object by the operation of the controller can be matched with the moving direction of the object on the game screen. That is, the operation is simple.
また、拡大スケーリングすることにより、背景オブジェクトの奥行き方向の長さを正確に表現することができるので、操作上の違和感が生じることもない。 Further, since the length of the background object in the depth direction can be accurately expressed by enlarging and scaling, there is no sense of incongruity in operation.
さらに、背景オブジェクト以外のキャラクタオブジェクトについては、拡大スケーリングによる変形が生じないように手当てしてあるため、ゲーム世界のリアリティが必要以上に損なわれることがない。したがって、ゲームに対する興味の減退を防止することができる。 Furthermore, since the character objects other than the background object are dealt with so as not to be deformed due to enlargement scaling, the reality of the game world is not unnecessarily impaired. Therefore, it is possible to prevent a decrease in interest in the game.
なお、上述の実施例では、背景オブジェクトをモニタ画面の縦方向に拡大スケーリングするようにしたが、モニタ画面の横方向に縮小するようにしてもよい。かかる場合には、横方向に1/scale倍するようにすれば、背景オブジェクトを真上方向から見たように表示することができる。 In the above-described embodiment, the background object is enlarged and scaled in the vertical direction of the monitor screen, but may be reduced in the horizontal direction of the monitor screen. In such a case, the background object can be displayed as seen from directly above by multiplying it by 1 / scale in the horizontal direction.
また、上述の実施例では、すべてのオブジェクトに対して拡大スケーリングを施すので、描画時にキャラクタオブジェクトが間延びした画像になることを防止するために、予めキャラクタオブジェクトの水平方向に縮小するようにした。しかし、キャラクタオブジェクトだけ通常の並行投影変換を行い、他のオブジェクトに対してのみ拡大スケーリングを施すようにしてもよい。 In the above-described embodiment, since all objects are enlarged and scaled, the character object is reduced in advance in the horizontal direction in order to prevent the character object from becoming an extended image during drawing. However, normal parallel projection conversion may be performed only on the character object, and enlargement scaling may be performed only on other objects.
さらに、上述の実施例では、ビデオゲーム装置とモニタとが個別に設けられたゲームシステムについて説明したが、モニタとゲーム装置とが一体に設けられる携帯型のゲーム装置、ゲーム機能を備える携帯電話機、PDAやラップトップ型のPCのようなコンピュータにも適用できることは言うまでもない。 Furthermore, in the above-described embodiment, the game system in which the video game apparatus and the monitor are provided separately has been described. However, the portable game apparatus in which the monitor and the game apparatus are provided integrally, the mobile phone having the game function, Needless to say, the present invention can be applied to a computer such as a PDA or a laptop PC.
10 …ゲームシステム
12 …ゲーム装置
18 …光ディスク
22 …コントローラ
34 …モニタ
34a …スピーカ
36 …CPU
38 …メモリコントローラ
40 …メインメモリ
42 …GPU
52 …DSP
54 …ARAM
62 …オーディオI/F
DESCRIPTION OF
38 ...
52 ... DSP
54 ... ARAM
62 ... Audio I / F
Claims (14)
前記コンピュータを、
前記仮想カメラの投影平面上の第1方向または前記第1方向に直行する第2方向のいずれか一方向に対して、前記投影平面上に投影された前記非対象オブジェクトを拡大または縮小するための倍率を、前記仮想空間における水平平面に対して前記仮想カメラが向いている角度に基づいて算出する倍率算出手段、および
前記非対象オブジェクトを前記投影平面に並行投影変換し、かつ前記投影平面に投影された非対象オブジェクトを前記倍率に基づいて拡大または縮小して、前記非対象オブジェクトを前記描画領域に描画する投影描画手段として機能させる、画像生成プログラム。 Projecting and drawing a state of a three-dimensional virtual space in which a target object that is an operation target of the operation means and a plurality of non-target objects other than the operation target are arranged, onto a projection plane based on a virtual camera in the virtual space and drawing An image generation program for causing a computer to execute a process of generating an image visible from the virtual camera by drawing in an area,
The computer,
For enlarging or reducing the non-target object projected on the projection plane with respect to any one of the first direction on the projection plane of the virtual camera or the second direction orthogonal to the first direction Magnification calculating means for calculating a magnification based on an angle at which the virtual camera is directed with respect to a horizontal plane in the virtual space, and parallel projecting the non-target object to the projection plane and projecting to the projection plane An image generation program for causing a non-target object to be enlarged or reduced based on the magnification and to function as a projection drawing unit that draws the non-target object in the drawing area.
拡大または縮小の処理を実行したときに前記対象オブジェクトの形状が元の形状に戻るように、前記対象オブジェクトの水平断面形状を縮小または拡大して配置する配置手段として、前記コンピュータをさらに機能させる、請求項1または2記載の画像生成プログラム。 Causing the projection / drawing means to execute enlargement / reduction processing on all objects in a clipping region in the virtual space;
Causing the computer to further function as an arrangement means for reducing or enlarging the horizontal cross-sectional shape of the target object so that the shape of the target object returns to the original shape when the enlargement or reduction process is executed. The image generation program according to claim 1 or 2.
前記仮想カメラの投影平面上の第1方向または前記第1方向に直行する第2方向のいずれか一方向に対して、前記投影平面上に投影された前記非対象オブジェクトを拡大または縮小するための倍率を、前記仮想空間における水平平面に対して前記仮想カメラが向いている角度に基づいて算出する倍率算出手段、および
前記非対象オブジェクトを前記投影平面に並行投影変換し、かつ前記投影平面に投影された非対象オブジェクトを前記倍率に基づいて拡大または縮小して、前記非対象オブジェクトを前記描画領域に描画する投影描画手段を備える、画像生成装置。 Projecting and drawing a state of a three-dimensional virtual space in which a target object that is an operation target of the operation means and a plurality of non-target objects other than the operation target are arranged, onto a projection plane based on a virtual camera in the virtual space and drawing An image generation device that generates an image visible from the virtual camera by drawing in an area,
For enlarging or reducing the non-target object projected on the projection plane with respect to any one of the first direction on the projection plane of the virtual camera or the second direction orthogonal to the first direction Magnification calculating means for calculating a magnification based on an angle at which the virtual camera is directed with respect to a horizontal plane in the virtual space, and parallel projecting the non-target object to the projection plane and projecting to the projection plane An image generation apparatus comprising: a projection drawing unit that enlarges or reduces the non-target object based on the magnification and draws the non-target object in the drawing area.
前記投影描画手段によって拡大または縮小の処理が実行されたときに、前記対象オブジェクトの形状が元の形状に戻るように、前記対象オブジェクトの水平断面形状を縮小または拡大して配置する配置手段をさらに備える、請求項8または9記載の画像生成装置。 The projection drawing means executes an enlargement or reduction process on all objects in a clipping region in the virtual space,
Arrangement means for reducing or enlarging the horizontal cross-sectional shape of the target object so that the shape of the target object returns to the original shape when enlargement or reduction processing is executed by the projection drawing means The image generation apparatus of Claim 8 or 9 provided.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2003294378A JP4219766B2 (en) | 2003-08-18 | 2003-08-18 | Image generation program and image generation apparatus |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2003294378A JP4219766B2 (en) | 2003-08-18 | 2003-08-18 | Image generation program and image generation apparatus |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2005063266A JP2005063266A (en) | 2005-03-10 |
| JP4219766B2 true JP4219766B2 (en) | 2009-02-04 |
Family
ID=34370968
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2003294378A Expired - Lifetime JP4219766B2 (en) | 2003-08-18 | 2003-08-18 | Image generation program and image generation apparatus |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP4219766B2 (en) |
-
2003
- 2003-08-18 JP JP2003294378A patent/JP4219766B2/en not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| JP2005063266A (en) | 2005-03-10 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US7327361B2 (en) | Three-dimensional image generating apparatus, storage medium storing a three-dimensional image generating program, and three-dimensional image generating method | |
| JP3637031B2 (en) | GAME DEVICE AND GAME PROGRAM | |
| US7753785B2 (en) | Game apparatus, storing medium that stores control program of virtual camera, and control method of virtual camera | |
| US7338373B2 (en) | Method and apparatus for generating sounds in a video game | |
| US7104891B2 (en) | Game machine and game program for displaying a first object casting a shadow formed by light from a light source on a second object on a virtual game space | |
| US20140002456A1 (en) | Image processing apparatus and storing medium that stores image processing program | |
| US8012018B2 (en) | Game apparatus and storage medium storing game program | |
| JP5063990B2 (en) | GAME PROGRAM AND GAME DEVICE | |
| US6326967B1 (en) | Image creating apparatus, image creating method, and computer-readable recording medium containing image creating program | |
| US7023434B2 (en) | Image processing apparatus and image processing program | |
| JP3602835B2 (en) | VIDEO GAME DEVICE, ITS CONTROL METHOD, AND GAME PROGRAM | |
| US6390918B1 (en) | Video game apparatus, model display method for video games, and readable recording medium for storing model display program for video games | |
| EP0948978B1 (en) | Image creating apparatus, image creating method, and computer-readable recording medium containing image creating program | |
| JP4219766B2 (en) | Image generation program and image generation apparatus | |
| JP3839355B2 (en) | GAME DEVICE AND GAME PROGRAM | |
| JP4054708B2 (en) | GAME DEVICE AND GAME PROGRAM | |
| HK1026045A (en) | Video game apparatus, model display and readable recording medium therefor |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060628 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20081017 |
|
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20081112 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111121 Year of fee payment: 3 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 4219766 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111121 Year of fee payment: 3 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111121 Year of fee payment: 3 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121121 Year of fee payment: 4 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121121 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121121 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131121 Year of fee payment: 5 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| EXPY | Cancellation because of completion of term |