JPH08212357A - Interpolation device, interpolation method, and image generation device - Google Patents

Interpolation device, interpolation method, and image generation device

Info

Publication number
JPH08212357A
JPH08212357A JP7304870A JP30487095A JPH08212357A JP H08212357 A JPH08212357 A JP H08212357A JP 7304870 A JP7304870 A JP 7304870A JP 30487095 A JP30487095 A JP 30487095A JP H08212357 A JPH08212357 A JP H08212357A
Authority
JP
Japan
Prior art keywords
texture
pixel
interpolation
pixels
address
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP7304870A
Other languages
Japanese (ja)
Other versions
JP3071387B2 (en
Inventor
Tsutomu Hashimoto
勉 橋本
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co 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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP7304870A priority Critical patent/JP3071387B2/en
Publication of JPH08212357A publication Critical patent/JPH08212357A/en
Application granted granted Critical
Publication of JP3071387B2 publication Critical patent/JP3071387B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • G06T3/4007Scaling of whole images or parts thereof, e.g. expanding or contracting based on interpolation, e.g. bilinear interpolation

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Image Processing (AREA)
  • Image Generation (AREA)

Abstract

(57)【要約】 【課題】 高速で動作し、かつ、高画質な画像を生成可
能な補間装置を提供する。 【解決手段】 補間装置は、複数の画素を含むテクスチ
ャを格納する第1の原画像格納部207と、そのテクス
チャに対する参照点の位置にかかわらず、そのテクスチ
ャに含まれる所定の数の画素に関連する情報を補間処理
部204に供給する画素値供給部203と、その所定の
数の画素に関連する情報に基づいて補間画素データを計
算することにより、補間処理を実行する補間処理部20
4とを備えている。
(57) An object of the present invention is to provide an interpolating device that operates at high speed and can generate a high-quality image. An interpolation device relates to a first original image storage unit 207 that stores a texture including a plurality of pixels and a predetermined number of pixels included in the texture regardless of the position of a reference point with respect to the texture. The pixel value supply unit 203 that supplies the information to the interpolation processing unit 204, and the interpolation processing unit 20 that executes the interpolation processing by calculating the interpolation pixel data based on the information related to the predetermined number of pixels.
4 and.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【発明の属する技術分野】本発明は、テクスチャマッピ
ングや画像のスケーリングなどの画像処理、コンピュー
タグラフィックスにおいて、高画質な画像を得るために
内挿補間処理を実行する補間装置および補間方法、並び
にその補間装置を含む画像生成装置に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an image processing apparatus such as texture mapping and image scaling, and an interpolation apparatus and method for executing interpolation processing to obtain a high quality image in computer graphics. The present invention relates to an image generation device including an interpolation device.

【0002】[0002]

【従来の技術】近年、コンピュータグラフィックスや、
ゲーム機などの分野では、テクスチャマッピングによ
り、ポリゴンレンダリングを行っているものが多い。通
常、インバースマップと呼ばれるテクスチャマッピング
手法では、スクリーン座標(Xs,Ys)からテクスチ
ャパターンの座標(u,v)が計算され、その座標
(u,v)に対応する色が取得される。計算により得ら
れる座標(u,v)は小数部を有するのに対し、実際の
テクスチャパターンは、座標(u,v)が整数値となる
有限個の格子点上でしか定義されていない。このため、
計算により得られる小数部を有する座標(u,v)を単
に整数に丸めたのでは、テクスチャマッピングにより綺
麗な画像を得ることはできない。折り返しひずみなどの
影響を受けるからである。この格子点間のテクスチャ情
報をどのように補間するかによって、生成画像に差が現
れる。すなわち、テクスチャマッピングにおいてテクス
チャ情報を内挿補間することにより高画質な画像を生成
することができる。
2. Description of the Related Art In recent years, computer graphics and
In fields such as game consoles, polygon mapping is often performed by texture mapping. Usually, in a texture mapping method called an inverse map, the coordinates (u, v) of the texture pattern are calculated from the screen coordinates (Xs, Ys), and the color corresponding to the coordinates (u, v) is acquired. The coordinate (u, v) obtained by calculation has a decimal part, whereas the actual texture pattern is defined only on a finite number of grid points where the coordinate (u, v) has an integer value. For this reason,
If the coordinates (u, v) having the decimal part obtained by the calculation are simply rounded to an integer, a beautiful image cannot be obtained by texture mapping. This is because it is affected by folding back strain. A difference appears in the generated image depending on how the texture information between the grid points is interpolated. That is, a high quality image can be generated by interpolating the texture information in the texture mapping.

【0003】内挿補間とは、サンプル点(非整数)の周
辺に位置する画素の画素値を用いて、サンプル点の画素
値を算出するものである。サンプル点の周辺に位置する
画素とは、サンプル点を中心とし、半径1画素の円の領
域内に存在する画素を表す。この補間処理にはいくつか
の手法がある。高画質な画像を生成することができる手
法としては、例えば、バイリニア補間処理が知られてい
る(George Wolberg,"Digital Image Warping", IEEE C
omputer Society Press発行, 1990, pp147-pp149)。
Interpolation is the calculation of the pixel value of a sample point using the pixel values of the pixels located around the sample point (non-integer). Pixels located around the sample point represent pixels existing in a circular area with a radius of 1 pixel centered on the sample point. There are several methods for this interpolation processing. Bilinear interpolation processing is known as a method capable of generating a high-quality image (George Wolberg, "Digital Image Warping", IEEE C
Published by omputer Society Press, 1990, pp147-pp149).

【0004】[0004]

【発明が解決しようとする課題】しかしながら、従来の
テクスチャパターンのサイズは比較的大きかったので、
そのテクスチャパターンの境界部分の画素データをどの
ように扱うかは考慮されていなかった。
However, since the size of the conventional texture pattern is relatively large,
How to handle the pixel data at the boundary of the texture pattern was not considered.

【0005】本発明の目的は、テクスチャに対するアク
セスが高速であり、かつ、高画質な画像を生成するため
に使用される補間装置および補間方法、並びに画像生成
装置を提供することにある。
An object of the present invention is to provide an interpolating apparatus and an interpolating method and an image generating apparatus which are used to generate a high-quality image with fast access to textures.

【0006】[0006]

【課題を解決するための手段】本発明の補間装置は、複
数の画素を含むテクスチャを格納する第1格納手段と、
該テクスチャに対する参照点の位置にかかわらず、該テ
クスチャに含まれる所定の数の画素に関連する情報を提
供する提供手段と、該所定の数の画素に関連する情報に
基づいて補間画素データを計算することにより、補間処
理を実行する補間処理手段とを備えており、これによ
り、上記目的が達成される。
The interpolation device of the present invention comprises a first storage means for storing a texture including a plurality of pixels,
Providing means for providing information related to a predetermined number of pixels included in the texture regardless of the position of a reference point with respect to the texture, and calculating interpolation pixel data based on the information related to the predetermined number of pixels By doing so, an interpolation processing means for executing the interpolation processing is provided, and the above-mentioned object is achieved thereby.

【0007】前記提供手段は、前記第1格納手段に格納
されているテクスチャから、処理の対象となる第1テク
スチャより少なくとも周囲1画素だけ大きい第2テクス
チャを切り出す切り出し手段と、該第2テクスチャを格
納する第2格納手段と、該第1テクスチャに対する参照
点の位置に応じて、該第2格納手段に格納されている第
2テクスチャの画素にアクセスするためのアドレスを生
成するアドレス生成手段とを備えていてもよい。
The providing means cuts out a second texture, which is larger than the first texture to be processed, by at least one peripheral pixel, from the texture stored in the first storage means, and the second texture. A second storage unit for storing the data, and an address generation unit for generating an address for accessing a pixel of the second texture stored in the second storage unit according to the position of the reference point with respect to the first texture. You may have it.

【0008】前記第2テクスチャは、トーラスを形成す
るように切り出されてもよい。
The second texture may be cut out to form a torus.

【0009】前記提供手段は、前記第1格納手段に格納
されているテクスチャのうち少なくとも一部を含む第1
テクスチャを、該第1テクスチャより少なくとも周囲1
画素だけ大きい第2テクスチャに変換するテクスチャ変
換手段と、該第2テクスチャを格納する第2格納手段
と、該第1テクスチャに対する参照点の位置に応じて、
該第2格納手段に格納されている第2テクスチャの画素
にアクセスするためのアドレスを生成するアドレス生成
手段とを備えていてもよい。
The providing means includes a first storage means including at least a part of the textures stored in the first storage means.
The texture is at least the surrounding 1 from the first texture.
Depending on the texture conversion means for converting the second texture into pixels having a larger size, the second storage means for storing the second texture, and the position of the reference point with respect to the first texture,
Address generating means for generating an address for accessing the pixel of the second texture stored in the second storing means may be provided.

【0010】前記テクスチャ変換手段は、前記第1テク
スチャの境界部分の画素を、前記第1テクスチャの周囲
に複写する手段を備えていてもよい。
The texture conversion means may include means for copying the pixels of the boundary portion of the first texture to the periphery of the first texture.

【0011】前記テクスチャ変換手段は、前記第1テク
スチャの周囲に所定の固定値を挿入する手段を備えてい
てもよい。
The texture converting means may include means for inserting a predetermined fixed value around the first texture.

【0012】前記処理の固定値は、黒色を表す値であっ
てもよい。
The fixed value of the processing may be a value representing black.

【0013】前記処理の固定値は、描画対象の背景色を
表す値であってもよい。
The fixed value of the processing may be a value representing the background color of the drawing target.

【0014】前記提供手段は、前記第1格納手段に格納
されているテクスチャのうち少なくとも一部を含む第1
テクスチャを格納する第2格納手段と、該第1テクスチ
ャを該第2格納手段に転送する転送手段と、該第1テク
スチャに対する参照点の位置に応じて、該第2格納手段
に格納されている第1テクスチャの画素にアクセスする
ためのアドレスを生成するアドレス生成手段とを備えて
いてもよい。
The providing means may include a first means including at least a part of the textures stored in the first storing means.
The second storage means stores the texture, the second storage means stores the texture, the transfer means transfers the first texture to the second storage means, and the second storage means stores the texture according to the position of the reference point with respect to the first texture. An address generation unit that generates an address for accessing a pixel of the first texture may be provided.

【0015】前記提供手段と補間処理手段とは第1のチ
ップ上に形成され、前記第1格納手段は該第1のチップ
とは異なる第2のチップ上に形成されてもよい。
The providing means and the interpolation processing means may be formed on a first chip, and the first storing means may be formed on a second chip different from the first chip.

【0016】前記第2格納手段は、前記第1格納手段よ
りも高速に動作するメモリであってもよい。
The second storage means may be a memory that operates faster than the first storage means.

【0017】本発明の補間方法は、複数の画素を含むテ
クスチャに対する参照点の位置にかかわらず、該テクス
チャに含まれる所定の数の画素に関連する情報を提供す
るステップと、該所定の数の画素に関連する情報に基づ
いて補間画素データを計算することにより、補間処理を
実行するステップとを包含しており、これにより、上記
目的が達成される。
The interpolation method of the present invention provides information relating to a predetermined number of pixels included in a texture regardless of the position of a reference point with respect to the texture including a plurality of pixels, and the predetermined number of pixels. Performing the interpolation process by calculating the interpolated pixel data based on the information related to the pixels, whereby the above object is achieved.

【0018】前記情報を提供するステップは、前記テク
スチャから、処理の対象となる第1テクスチャより少な
くとも周囲1画素だけ大きい第2テクスチャを切り出す
ステップと、該第1テクスチャに対する参照点の位置に
応じて、該第2テクスチャの画素にアクセスするための
アドレスを生成するステップとを包含してもよい。
The step of providing the information includes the step of cutting out from the texture a second texture which is larger than the first texture to be processed by at least one peripheral pixel, and the position of the reference point with respect to the first texture. , Generating an address for accessing a pixel of the second texture.

【0019】前記第2テクスチャは、トーラスを形成す
るように切り出されれてもよい。
The second texture may be cut out to form a torus.

【0020】前記情報を提供するステップは、前記テク
スチャのうち少なくとも一部を含む第1テクスチャを、
該第1テクスチャより少なくとも周囲1画素だけ大きい
第2テクスチャに変換するステップと、該第1テクスチ
ャに対する参照点の位置に応じて、該第2テクスチャの
画素にアクセスするためのアドレスを生成するステップ
とを包含してもよい。
The step of providing the information may include a first texture including at least a part of the textures,
Converting to a second texture that is larger than the first texture by at least one peripheral pixel, and generating an address for accessing a pixel of the second texture according to the position of a reference point with respect to the first texture. May be included.

【0021】前記変換ステップは、前記第1テクスチャ
の境界部分の画素を、前記第1テクスチャの周囲に複写
するステップを包含してもよい。
[0021] The converting step may include a step of copying pixels of a boundary portion of the first texture around the first texture.

【0022】前記変換ステップは、前記第1テクスチャ
の周囲に所定の固定値を挿入するステップを包含しても
よい。
The converting step may include a step of inserting a predetermined fixed value around the first texture.

【0023】前記処理の固定値は、黒色を表す値であっ
てもよい。
The fixed value of the processing may be a value representing black.

【0024】前記処理の固定値は、描画対象の背景色を
表す値であってもよい。
The fixed value of the processing may be a value representing the background color of the drawing target.

【0025】前記情報を提供するステップは、前記テク
スチャのうち少なくとも一部を含む第1テクスチャに対
する参照点の位置に応じて、該第1テクスチャの画素に
アクセスするためのアドレスを生成するステップを包含
してもよい。
The step of providing the information includes the step of generating an address for accessing a pixel of the first texture according to a position of a reference point with respect to a first texture including at least a part of the texture. You may.

【0026】本発明の画像生成装置は、テクスチャをポ
リゴンにマッピングすることにより、画像を生成する画
像生成装置であって、複数の画素を含むテクスチャを格
納する手段と、ポリゴン平面上の点の座標をテクスチャ
平面上の点の座標に変換する手段と、該テクスチャ平面
上の点の座標の値にかかわらず、該テクスチャに含まれ
る所定の数の画素に関連する情報を提供する手段と、該
所定の数の画素に関連する情報に基づいて補間画素デー
タを計算することにより、補間処理を実行する手段と、
該補間画素データに基づいて、画像を生成する手段とを
備えており、これにより、上記目的が達成される。
The image generating apparatus of the present invention is an image generating apparatus for generating an image by mapping a texture on a polygon, and means for storing a texture including a plurality of pixels, and coordinates of points on a polygon plane. To a coordinate of a point on the texture plane, a means for providing information related to a predetermined number of pixels included in the texture regardless of the value of the coordinate of the point on the texture plane, Means for performing interpolation processing by calculating interpolated pixel data based on information associated with a number of pixels of
Means for generating an image based on the interpolated pixel data, thereby achieving the above object.

【0027】[0027]

【発明の実施の形態】以下、図面を参照して、本発明の
実施の形態を説明する。
Embodiments of the present invention will be described below with reference to the drawings.

【0028】(実施の形態1)図1は、テクスチャマッ
ピングによりポリゴンを描画するシステム100の構成
を示す。システム100は、プロセッサ1と、メインメ
モリ2と、レンダリングプロセッサ3と、ピクセルメモ
リ4と、デジタルアナログコンバータ(DAC)5と、
モニタ6とを有している。システム100は、システム
バス7をさらに有している。プロセッサ1とメインメモ
リ2とレンダリングプロセッサ3とピクセルメモリ4と
はシステムバス7に接続されている。入出力装置(不図
示)もまたシステムバス7に接続され得る。
(Embodiment 1) FIG. 1 shows the configuration of a system 100 for drawing polygons by texture mapping. The system 100 includes a processor 1, a main memory 2, a rendering processor 3, a pixel memory 4, a digital-analog converter (DAC) 5,
And a monitor 6. The system 100 further includes a system bus 7. The processor 1, the main memory 2, the rendering processor 3, and the pixel memory 4 are connected to the system bus 7. Input / output devices (not shown) may also be connected to the system bus 7.

【0029】プロセッサ1は、テクスチャマッピングを
行うための三次元図形処理の幾何演算、レンダリングプ
ロセッサ3およびDAC5の動作の制御、並びにシステ
ム全体の動作の制御を行う。
The processor 1 controls geometrical operations for three-dimensional graphic processing for texture mapping, controls the operations of the rendering processor 3 and the DAC 5, and controls the operations of the entire system.

【0030】メインメモリ2は、プロセッサ1によって
実行されるプログラムや、不透明処理やテクスチャマッ
ピングなどの各処理に必要とされるデータを格納する。
そのようなデータには、ポリゴンデータが含まれる。
The main memory 2 stores a program executed by the processor 1 and data required for each processing such as opaque processing and texture mapping.
Such data includes polygon data.

【0031】レンダリングプロセッサ3は、ピクセルメ
モリ4に格納される画像に含まれる各画素ごとにその画
素の色を表す画素データを計算することにより、ポリゴ
ンを表す画像を生成する。レンダリングプロセッサ3に
よって生成される画像もまたピクセルメモリ4に格納さ
れる。このようにして、レンダリングプロセッサ3によ
ってポリゴンの描画が達成される。レンダリングプロセ
ッサ3の動作は、プロセッサ1によって制御される。
The rendering processor 3 generates an image representing a polygon by calculating, for each pixel included in the image stored in the pixel memory 4, pixel data representing the color of the pixel. The image produced by the rendering processor 3 is also stored in the pixel memory 4. In this way, rendering of the polygon is achieved by the rendering processor 3. The operation of the rendering processor 3 is controlled by the processor 1.

【0032】ピクセルメモリ4には、レンダリングプロ
セッサ3による描画の対象となる画像のほか、その画像
の画素データを計算するために使用される原画像(テク
スチャ)が格納される。
The pixel memory 4 stores an image to be drawn by the rendering processor 3 and an original image (texture) used to calculate pixel data of the image.

【0033】レンダリングプロセッサ3によって生成さ
れた画像は、DAC5を介してモニタ6に出力される。
このようにして、ポリゴンを表す画像がモニタ6上に表
示される。
The image generated by the rendering processor 3 is output to the monitor 6 via the DAC 5.
In this way, the image representing the polygon is displayed on the monitor 6.

【0034】図2は、レンダリングプロセッサ3および
ピクセルメモリ4の構成を示す。レンダリングプロセッ
サ3は、DDA(Digital differential analyzer)係数
演算部201と、マッピングアドレス生成部202と、
画素値供給部203と、補間処理部204と、合成処理
部205とを含んでいる。ピクセルメモリ4は、レンダ
リングプロセッサ3によって生成された画像を格納する
生成画像格納部206と、その画像を生成するために使
用される原画像(テクスチャ)を格納する第1の原画像
格納部207とを含んでいる。
FIG. 2 shows the configurations of the rendering processor 3 and the pixel memory 4. The rendering processor 3 includes a DDA (Digital differential analyzer) coefficient calculation unit 201, a mapping address generation unit 202,
The pixel value supply unit 203, the interpolation processing unit 204, and the synthesis processing unit 205 are included. The pixel memory 4 includes a generated image storage unit 206 that stores an image generated by the rendering processor 3, and a first original image storage unit 207 that stores an original image (texture) used to generate the image. Is included.

【0035】DDA係数演算部201には、xyz座標
系で表されるポリゴンの頂点の座標(x,y,z)とu
v座標系で表されるテクスチャの頂点の座標(u,v)
との間の関係がシステムバス7を介して供給される。例
えば、その関係は、u=f(x,y)およびv=g
(x,y)という関数の形式で与えられる。DDA係数
演算部201は、入力されるポリゴンの頂点の座標とテ
クスチャの頂点の座標との関係に基づいて、DDA係数
を生成する。DDA係数は、y方向の微分係数(du/
dy,dv/dy)と、x方向の偏微分係数(∂u/∂
x,∂v/∂x)とからなる。DDA係数演算部201
によって生成されたDDA係数は、マッピングアドレス
生成部202に供給される。
The DDA coefficient calculation unit 201 has the coordinates (x, y, z) of the vertices of the polygon represented by the xyz coordinate system and u.
Coordinates (u, v) of the vertex of the texture expressed in v coordinate system
The relationship between and is supplied via the system bus 7. For example, the relationship is u = f (x, y) and v = g
It is given in the form of a function (x, y). The DDA coefficient calculation unit 201 generates a DDA coefficient based on the relationship between the coordinates of the vertices of the input polygon and the coordinates of the vertices of the texture. The DDA coefficient is the differential coefficient in the y direction (du /
dy, dv / dy) and partial differential coefficient in the x direction (∂u / ∂
x, ∂v / ∂x). DDA coefficient calculator 201
The DDA coefficient generated by is supplied to the mapping address generation unit 202.

【0036】マッピングアドレス生成部202は、DD
A係数に基づいてポリゴンの座標(x,y)を生成する
xy−DDA処理部211と、DDA係数に基づいてそ
のポリゴンの属性値を生成するアルファ−DDA処理部
212と、DDA係数に基づいてそのポリゴンの座標
(x,y)に対応するテクスチャの座標(u,v)を生
成するuv−DDA処理部213とを含んでいる。例え
ば、アルファ−DDA処理部212によって生成される
ポリゴンの属性値は、1つの画素が占める面積のうちそ
のポリゴンが占める面積の割合(面積寄与率)であり得
る。
The mapping address generation unit 202 uses the DD
Based on the xy-DDA processing unit 211 that generates the coordinates (x, y) of the polygon based on the A coefficient, the alpha-DDA processing unit 212 that generates the attribute value of the polygon based on the DDA coefficient, and the DDA coefficient based on the DDA coefficient. And a uv-DDA processing unit 213 for generating texture coordinates (u, v) corresponding to the polygon coordinates (x, y). For example, the attribute value of the polygon generated by the alpha-DDA processing unit 212 may be the ratio of the area occupied by the polygon to the area occupied by one pixel (area contribution rate).

【0037】マッピングアドレス生成部202における
DDA処理は、y方向の微分係数とx方向の偏微分係数
と初期値(ポリゴンの頂点の座標)とに基づいて行われ
る。例えば、uv−DDA処理部213は、y方向の微
分係数とx方向の偏微分係数と初期値(ポリゴンの頂点
の座標)とに基づいて、第1の原画像格納部207に格
納されている原画像(テクスチャ)に対する参照点を示
す座標(u,v)を生成する。第1の原画像格納部20
7に格納されている原画像(テクスチャ)の参照点を示
す座標(u,v)は、以下に説明するようにして得られ
る。
The DDA process in the mapping address generator 202 is performed based on the differential coefficient in the y direction, the partial differential coefficient in the x direction, and the initial value (coordinates of the vertices of the polygon). For example, the uv-DDA processing unit 213 is stored in the first original image storage unit 207 based on the differential coefficient in the y direction, the partial differential coefficient in the x direction, and the initial value (coordinates of the vertices of the polygon). Coordinates (u, v) indicating a reference point for the original image (texture) are generated. First original image storage unit 20
The coordinates (u, v) indicating the reference point of the original image (texture) stored in 7 are obtained as described below.

【0038】ポリゴンのエッジにおけるテクスチャの座
標は、複数のスキャンラインのそれぞれについて(数
1)の漸化式を適用することによって計算される。(数
1)における(u(n+1),v(n+1))は、(u
(n),v(n))に対して1つ下のスキャンライン上
のポリゴンのエッジにおけるテクスチャの座標を表す。
The coordinates of the texture at the edge of the polygon are calculated by applying the recurrence formula of (Equation 1) for each of the plurality of scan lines. (U (n + 1), v (n + 1)) in (Equation 1) is (u
(N), v (n)) represents the coordinates of the texture at the edge of the polygon on the scan line one level below.

【0039】[0039]

【数1】 [Equation 1]

【0040】また、同一のスキャンライン上のポリゴン
内部(以下、「スパン」という)におけるテクスチャの
座標は、(数2)の漸化式によって計算される。(数
2)における(u(n+1),v(n+1))は、(u
(n),v(n))に対してスパン方向に1画素となり
の点におけるテクスチャの座標を表す。
The coordinates of the texture inside the polygon on the same scan line (hereinafter referred to as "span") are calculated by the recurrence formula of (Equation 2). (U (n + 1), v (n + 1)) in (Equation 2) is (u
(N), v (n)) represents the coordinates of the texture at a point that is one pixel in the span direction.

【0041】[0041]

【数2】 [Equation 2]

【0042】画素値供給部203は、uv−DDA処理
部213によって生成されるテクスチャの座標(u,
v)の値にかかわらず、所定数の画素の座標およびその
所定数の画素の値を補間処理部204に供給する。
The pixel value supply unit 203 has coordinates (u, u) of the texture generated by the uv-DDA processing unit 213.
Regardless of the value of v), the coordinates of the predetermined number of pixels and the values of the predetermined number of pixels are supplied to the interpolation processing unit 204.

【0043】補間処理部204には、uv−DDA処理
部213から供給されるテクスチャの座標(u,v)が
参照アドレスとして供給される。また、補間処理部20
4には、画素値供給部203から所定数の画素の座標お
よびその所定数の画素の値が供給される。補間処理部2
04は、参照アドレス(u,v)の値に応じて、画素値
供給部203から供給される所定数の画素の値をそれぞ
れ重みづけすることにより補間画素データの値(P_g
en)を計算する。この処理をバイリニア補間処理とい
う。
The coordinate (u, v) of the texture supplied from the uv-DDA processing unit 213 is supplied to the interpolation processing unit 204 as a reference address. In addition, the interpolation processing unit 20
4, the pixel value supply unit 203 supplies the coordinates of a predetermined number of pixels and the values of the predetermined number of pixels. Interpolation processing unit 2
Reference numeral 04 denotes a value (P_g) of the interpolated pixel data by weighting the values of a predetermined number of pixels supplied from the pixel value supply unit 203 according to the value of the reference address (u, v).
en) is calculated. This processing is called bilinear interpolation processing.

【0044】例えば、図3は、参照アドレス2100
(u,v)の近傍に4つの画素2110〜2140が配
置されている例を示す。この場合、画素値供給部203
(図2)によって、参照アドレス2100(u,v)の
近傍に位置する画素2110〜2140のそれぞれの座
標値と画素値とが補間処理部204に供給される。ここ
で、本明細書では、「参照アドレス(u,v)の近傍」
とは、そのテクスチャの座標(u,v)を中心とし、半
径1画素の円の範囲をいうと定義する。補間処理部20
4は、補間画素データの値(P_gen)を(数3)に
従って求める。
For example, FIG. 3 shows a reference address 2100.
An example in which four pixels 2110 to 2140 are arranged near (u, v) is shown. In this case, the pixel value supply unit 203
As shown in FIG. 2, the coordinate values and pixel values of the pixels 2110 to 2140 located near the reference address 2100 (u, v) are supplied to the interpolation processing unit 204. Here, in the present specification, “the vicinity of the reference address (u, v)”
Is defined as the range of a circle centered on the coordinates (u, v) of the texture and having a radius of 1 pixel. Interpolation processing unit 20
4 obtains the value (P_gen) of the interpolated pixel data according to (Equation 3).

【0045】[0045]

【数3】 (Equation 3)

【0046】ここで、画素2110の座標値を(u0,
v0)、画素2110の画素値をa、画素2120の座
標値を(u0,v1)、画素2120の画素値をb、画
素2130の座標値を(u1,v1)、画素2130の
画素値をc、画素2140の座標値を(u1,v0)、
画素2140の画素値をdとする。
Here, the coordinate value of the pixel 2110 is (u0,
v0), the pixel value of the pixel 2110 is a, the coordinate value of the pixel 2120 is (u0, v1), the pixel value of the pixel 2120 is b, the coordinate value of the pixel 2130 is (u1, v1), and the pixel value of the pixel 2130 is c. , The coordinate value of the pixel 2140 is (u1, v0),
The pixel value of the pixel 2140 is d.

【0047】参照アドレス2100がテクスチャの境界
の近傍に位置する場合には、その参照アドレスを中心と
する半径1画素の円の範囲には4つの画素が存在しない
場合がある。本明細書では、参照アドレスを中心とする
半径1画素の円の範囲には4つの画素が存在しない領域
を「境界領域」といい、それ以外の領域を「中心領域」
という。
When the reference address 2100 is located near the boundary of the texture, four pixels may not exist in the range of a circle having a radius of 1 pixel and having the reference address as the center. In the present specification, an area in which four pixels do not exist in the range of a circle having a radius of 1 pixel centered on the reference address is referred to as a “boundary area”, and other areas are referred to as a “central area”.
Say.

【0048】図4(a)は、画素値のサンプリングポイ
ントを画素の中心とした場合における中心領域(ハッチ
ング部分)と境界領域(ハッチング部分以外)とを示
す。すなわち、中心領域は、(数4)で示される。ここ
で、テクスチャのサイズはm×n画素である。
FIG. 4A shows a central region (hatched portion) and a boundary region (other than the hatched portion) when the pixel value sampling point is the center of the pixel. That is, the central region is represented by (Equation 4). Here, the size of the texture is m × n pixels.

【0049】[0049]

【数4】 [Equation 4]

【0050】図4(b)は、画素値のサンプリングポイ
ントを画素の左上点(すなわち、画素を表す座標系の原
点に最も近い画素の点)とした場合における中心領域
(ハッチング部分)と境界領域(ハッチング部分以外)
とを示す。すなわち、中心領域は、(数5)で示され
る。ここで、テクスチャのサイズはm×n画素である。
FIG. 4B shows the central area (hatched area) and the boundary area when the sampling point of the pixel value is the upper left point of the pixel (that is, the point of the pixel closest to the origin of the coordinate system representing the pixel). (Other than the hatched part)
And That is, the central region is represented by (Equation 5). Here, the size of the texture is m × n pixels.

【0051】[0051]

【数5】 (Equation 5)

【0052】図4(a)および図4(b)において、テ
クスチャは4×4画素からなり、各画素は小さな四角形
で表されている。
In FIGS. 4A and 4B, the texture is composed of 4 × 4 pixels, and each pixel is represented by a small square.

【0053】画素値供給部203は、参照アドレスがテ
クスチャの中心領域内にあるか境界領域内にあるかにか
かわらず、補間処理部204に所定数の画素の座標値と
その所定数の画素の画素値とを供給する。
The pixel value supply unit 203 informs the interpolation processing unit 204 of the coordinate values of a predetermined number of pixels and the predetermined number of pixels regardless of whether the reference address is in the central area or the boundary area of the texture. And the pixel value.

【0054】画素値供給部203は、アドレス生成部2
08と第2の原画像格納部209と原画像格納制御部2
10とを含んでいる。
The pixel value supply unit 203 is connected to the address generation unit 2
08, a second original image storage unit 209, and an original image storage control unit 2
Includes 10 and.

【0055】アドレス生成部208は、uv−DDA処
理部213によって生成されるテクスチャの座標(u,
v)に応じて、第2の原画像格納部209に格納される
テクスチャの画素をアクセスするためのアドレスを生成
する。
The address generation unit 208 has coordinates (u, u) of the texture generated by the uv-DDA processing unit 213.
According to v), an address for accessing the pixel of the texture stored in the second original image storage unit 209 is generated.

【0056】第2の原画像格納部209は、第1の原画
像格納部207に格納されているレンダリングの対象と
なる原画像(テクスチャ)の一部又は全部を格納する。
レンダリングプロセッサ3を1つのチップ上に形成し、
第1の原画像格納部207を別のチップ上に形成しても
よい。例えば、レンダリングプロセッサ3は1つのLS
Iとして実装され得る。また、第1の原画像格納部20
7を外部メモリとして実装され得る。この場合には、第
2の原画像格納部209は、第1の原画像格納部207
のキャッシュ/バッファの役割を果たす。従って、第2
の原画像格納部209は、第1の原画像格納部207よ
り高速に動作するメモリであることが好ましい。これに
より、第2の原画像格納部209に格納されているテク
スチャへのアクセスはLSI内部におけるアクセスとな
る。その結果、テクスチャへの高速なアクセスが可能と
なり、レンダリングプロセッサ3(LSI)と第1の原
画像格納部207(外部メモリ)との間のバスボトルネ
ックが解消される。
The second original image storage unit 209 stores a part or all of the original image (texture) to be rendered, which is stored in the first original image storage unit 207.
The rendering processor 3 is formed on one chip,
The first original image storage unit 207 may be formed on another chip. For example, the rendering processor 3 has one LS
It can be implemented as I. In addition, the first original image storage unit 20
7 can be implemented as an external memory. In this case, the second original image storage unit 209 has the first original image storage unit 207.
Plays the role of cache / buffer. Therefore, the second
The original image storage section 209 is preferably a memory that operates faster than the first original image storage section 207. As a result, access to the texture stored in the second original image storage unit 209 becomes access inside the LSI. As a result, the texture can be accessed at high speed, and the bus bottleneck between the rendering processor 3 (LSI) and the first original image storage unit 207 (external memory) is eliminated.

【0057】原画像格納制御部210は、第1の原画像
格納部207に格納されている原画像(テクスチャ)の
うち少なくとも一部を切り出して、その切り出した原画
像(テクスチャ)を第2の原画像格納部209に転送す
る。
The original image storage control unit 210 cuts out at least a part of the original image (texture) stored in the first original image storage unit 207, and outputs the cut out original image (texture) as a second image. It is transferred to the original image storage unit 209.

【0058】図5(a)は、第1の原画像格納部207
に格納されている原画像(テクスチャ)301の例を示
す。この例では、テクスチャ301は16×16画素か
ら構成されており、テクスチャマッピングを行う最小単
位は4×4画素であると仮定する。従って、テクスチャ
301は、16個の4×4画素に分割されている。例え
ば、テクスチャ302(図5(b))は、(u,v)=
(4,4)、(4,8)、(8,8)、(8,4)に囲
まれる4×4画素のテクスチャである。また、テクスチ
ャ304(図5(b))は、(u,v)=(0,1
2)、(0,16)、(4,16)、(4,12)に囲
まれる4×4画素のテクスチャである。テクスチャマッ
ピングを行う最小単位は、第2の原画像格納部209に
格納可能なテクスチャのサイズに応じて決定される。以
下の説明では、第2の原画像格納部209に格納可能な
テクスチャのサイズは、テクスチャマッピングを行う最
小単位である4×4画素より周囲1画素分だけ大きい6
×6画素であると仮定する。
FIG. 5A shows the first original image storage unit 207.
An example of the original image (texture) 301 stored in FIG. In this example, it is assumed that the texture 301 is composed of 16 × 16 pixels, and the minimum unit for texture mapping is 4 × 4 pixels. Therefore, the texture 301 is divided into 16 4 × 4 pixels. For example, the texture 302 (FIG. 5B) is (u, v) =
This is a 4 × 4 pixel texture surrounded by (4,4), (4,8), (8,8), and (8,4). Further, the texture 304 (FIG. 5B) is (u, v) = (0,1)
2), (0, 16), (4, 16), and (4, 12) are 4 × 4 pixel textures. The minimum unit for texture mapping is determined according to the size of the texture that can be stored in the second original image storage unit 209. In the following description, the size of the texture that can be stored in the second original image storage unit 209 is larger than the minimum unit for texture mapping, which is 4 × 4 pixels, by one peripheral pixel.
Suppose there are × 6 pixels.

【0059】図6は、生成画像格納部206に生成され
るポリゴン401の例を示す。ポリゴン401にはテク
スチャ301(図5(a))がテクスチャマッピングさ
れる。ポリゴン401もテクスチャ301と同様に16
個のポリゴンに分割される。分割ポリゴン402は、テ
クスチャ302に対応し、分割ポリゴン403は、テク
スチャ304に対応する。
FIG. 6 shows an example of the polygon 401 generated in the generated image storage unit 206. The texture 301 (FIG. 5A) is texture-mapped on the polygon 401. Polygon 401 has 16 like texture 301.
It is divided into polygons. The divided polygon 402 corresponds to the texture 302, and the divided polygon 403 corresponds to the texture 304.

【0060】原画像格納制御部210は、第1の原画像
格納部207に格納されているテクスチャ301から、
テクスチャ302より周囲1画素分だけ大きいテクスチ
ャ303(図5(c))を切り出して、その切り出した
テクスチャ303を第2の原画像格納部209に転送す
る。テクスチャ303は、(u,v)=(3,3)、
(3,9)、(9,9)、(9,3)に囲まれる6×6
画素のテクスチャである。テクスチャ301からテクス
チャ303を切り出す処理は、テクスチャ302がテク
スチャ301の境界領域を含まない場合における原画像
格納制御部210による処理の一例である。なお、テク
スチャ301から、テクスチャ302より周囲2画素以
上大きいテクスチャを切り出すようにしてもよい。
The original image storage control unit 210, from the texture 301 stored in the first original image storage unit 207,
A texture 303 (FIG. 5C) that is larger than the texture 302 by one pixel in the surroundings is cut out, and the cut out texture 303 is transferred to the second original image storage unit 209. The texture 303 is (u, v) = (3,3),
6 × 6 surrounded by (3,9), (9,9), (9,3)
This is the pixel texture. The process of cutting out the texture 303 from the texture 301 is an example of the process by the original image storage control unit 210 when the texture 302 does not include the boundary region of the texture 301. Note that a texture larger than the texture 302 by two pixels or more may be cut out from the texture 301.

【0061】原画像格納制御部210は、第1の原画像
格納部207に格納されているテクスチャ301から、
テクスチャ304より周囲1画素分だけ大きいテクスチ
ャ305(図5(c))を切り出して、その切り出した
テクスチャ305を第2の原画像格納部209に転送す
る。テクスチャ305は、(u,v)=(0,11)、
(0,16)、(5,16)、(5,11)に囲まれる
5×5画素のテクスチャ部分と、(u,v)=(15,
11)、(15,16)、(16,16)、(16,1
1)に囲まれる5×1画素のテクスチャ部分と、(u,
v)=(0,0)、(0,1)、(5,1)、(5,
0)に囲まれる1×5画素のテクスチャ部分と、(u,
v)=(15,0)、(15,1)、(16,1)、
(16,0)に囲まれる1画素のテクスチャ部分とから
構成される。このようなテクスチャ305の構成は、テ
クスチャはトーラス状に形成されているという事実に基
づいている。テクスチャ301からテクスチャ305を
切り出す処理は、テクスチャ304がテクスチャ301
の境界領域を含む場合における原画像格納制御部210
による処理の一例である。なお、テクスチャ301か
ら、テクスチャ304より周囲2画素以上大きいテクス
チャを切り出すようにしてもよい。
The original image storage control unit 210 extracts from the texture 301 stored in the first original image storage unit 207,
A texture 305 (FIG. 5C) that is larger than the texture 304 by one peripheral pixel is cut out, and the cut-out texture 305 is transferred to the second original image storage unit 209. The texture 305 is (u, v) = (0,11),
A texture portion of 5 × 5 pixels surrounded by (0,16), (5,16) and (5,11), and (u, v) = (15,
11), (15,16), (16,16), (16,1)
5 × 1 pixel texture part surrounded by 1), and (u,
v) = (0,0), (0,1), (5,1), (5,
1 × 5 pixel texture part surrounded by (0), and (u,
v) = (15,0), (15,1), (16,1),
It is composed of a 1-pixel texture portion surrounded by (16,0). The structure of such a texture 305 is based on the fact that the texture is formed in a torus shape. In the process of cutting out the texture 305 from the texture 301, the texture 304 is the texture 301.
Original image storage control unit 210 in the case of including the boundary area of
It is an example of the processing by. A texture larger than the texture 304 by two pixels or more may be cut out from the texture 301.

【0062】以下、テクスチャ303および305の切
り出し処理についてさらに詳しく説明する。この切り出
し処理は、原画像格納制御部210によって実行され
る。
The cutout processing of the textures 303 and 305 will be described in more detail below. This cutout process is executed by the original image storage control unit 210.

【0063】図7は、分割テクスチャのサイズが4×4
画素であり、切り出されるテクスチャのサイズが6×6
画素である場合における切り出し処理の手順を示す。
In FIG. 7, the size of the divided texture is 4 × 4.
It is a pixel, and the size of the texture to be cut out is 6 x 6
A procedure of cutout processing in the case of pixels is shown.

【0064】図7において、(u,v)は、テクスチャ
マッピングの対象となる分割テクスチャ302(30
4)の原点に最も近い座標点を示す。(cut_u,c
ut_v)は、テクスチャ301から切り出されるべき
テクスチャ303(305)の原点に最も近い座標点を
示す。(H,W)は、テクスチャ301の高さおよび幅
を示す。ここで、H、Wは2のべき乗とする。(i,
j)は、切り出し処理を制御するためのカウンタを示
す。iは切り出すべきテクスチャ303(305)のu
座標方向の画素数をカウントするためのカウンタであ
り、jは切り出すべきテクスチャ303(305)のv
座標方向の画素数をカウントするためのカウンタであ
る。記号”&”は論理積演算を示し、記号”^”は排他
的論理和演算を示す。
In FIG. 7, (u, v) is a divided texture 302 (30) which is the object of texture mapping.
The coordinate point closest to the origin of 4) is shown. (Cut_u, c
ut_v) indicates the coordinate point closest to the origin of the texture 303 (305) to be cut out from the texture 301. (H, W) indicates the height and width of the texture 301. Here, H and W are powers of two. (I,
j) shows a counter for controlling the clipping process. i is the u of the texture 303 (305) to be cut out
This is a counter for counting the number of pixels in the coordinate direction, and j is v of the texture 303 (305) to be cut out.
It is a counter for counting the number of pixels in the coordinate direction. The symbol "&" indicates an AND operation, and the symbol "^" indicates an exclusive OR operation.

【0065】図7において、ステップ605からステッ
プ609は1つのループを形成する。このループは、切
り出すべきテクスチャ303(305)のu座標方向の
座標を計算するために使用される。ステップ602から
ステップ611はもう1つのループを形成する。このル
ープは、切り出すべきテクスチャ303(305)のv
座標方向の座標を計算するために使用される。
In FIG. 7, steps 605 to 609 form one loop. This loop is used to calculate the coordinates of the texture 303 (305) to be cut out in the u coordinate direction. Steps 602 to 611 form another loop. This loop is the v of the texture 303 (305) to be cut out.
Used to calculate coordinates in the coordinate direction.

【0066】以下、図7に示される切り出し処理の手順
を各ステップごとに詳細に説明する。
Hereinafter, the procedure of the clipping process shown in FIG. 7 will be described in detail step by step.

【0067】ステップ601では、(u,v)が入力さ
れる。また、内部カウンタ(i,j)が初期化される。
内部カウンタ(i,j)はそれぞれu座標方向およびv
座標方向のカウンタである。
At step 601, (u, v) is input. Further, the internal counter (i, j) is initialized.
The internal counters (i, j) are respectively in the u coordinate direction and v
It is a counter in the coordinate direction.

【0068】ステップ602では、切り出されるべきテ
クスチャ303(305)のv座標cut_vが計算さ
れる。
In step 602, the v coordinate cut_v of the texture 303 (305) to be cut out is calculated.

【0069】ステップ603では、ステップ602にお
いて計算されたcut_vの値がテクスチャ301の範
囲にあるか否かが判定される。cut_vの値がテクス
チャ301の範囲にある場合には、処理はステップ60
5に進む。cut_vの値がテクスチャ301の範囲に
ない場合には、処理はステップ604を経由してステッ
プ605に進む。
In step 603, it is judged whether or not the value of cut_v calculated in step 602 is within the range of the texture 301. If the value of cut_v is within the range of the texture 301, the process proceeds to step 60.
Go to 5. If the value of cut_v is not within the range of the texture 301, the process proceeds to step 605 via step 604.

【0070】ステップ604では、テクスチャがトーラ
ス状に形成されるようにcut_vの値が変換される。
In step 604, the value of cut_v is converted so that the texture is formed in a torus shape.

【0071】ステップ605では、ステップ602と同
様にして、切り出されるべきテクスチャ303(30
5)のu座標cut_uが計算される。
In step 605, similarly to step 602, the texture 303 (30 to be cut out)
The u coordinate cut_u of 5) is calculated.

【0072】ステップ606では、ステップ603と同
様にして、ステップ605において計算されたcut_
uの値がテクスチャ301の範囲にあるか否かが判定さ
れる。cut_uの値がテクスチャ301の範囲にある
場合には、処理はステップ608に進む。cut_uの
値がテクスチャ301の範囲にない場合には、処理はス
テップ607を経由してステップ608に進む。
In step 606, the cut_calculated in step 605 is calculated similarly to step 603.
It is determined whether the value of u is within the range of the texture 301. If the value of cut_u is within the range of the texture 301, the process proceeds to step 608. If the value of cut_u is not within the range of the texture 301, the process proceeds to step 608 via step 607.

【0073】ステップ607では、ステップ604と同
様にして、テクスチャがトーラス状に形成されるように
cut_uの値が変換される。
In step 607, as in step 604, the value of cut_u is converted so that the texture is formed in a torus shape.

【0074】ステップ608では、v座標方向のカウン
タであるjが1だけインクリメントされる。
In step 608, the counter j in the v coordinate direction is incremented by 1.

【0075】ステップ609では、v座標方向の処理を
終了するか否かが判定される。
In step 609, it is determined whether or not the processing in the v coordinate direction is to be ended.

【0076】ステップ610では、u座標方向のカウン
タであるiが1だけインクリメントされる。
At step 610, the counter i in the u-coordinate direction is incremented by 1.

【0077】ステップ611では、u座標方向の処理を
終了するか否かが判定される。
In step 611, it is determined whether or not the processing in the u-coordinate direction is completed.

【0078】上述したステップ601〜611を実行す
ることにより、テクスチャがトーラス状に形成されてい
ることを考慮して、分割テクスチャ302(304)の
原点に最も近い座標点(u,v)から、テクスチャ30
2から切り出されるべきテクスチャ303(305)の
原点に最も近い座標点(cut_u,cut_v)を得
ることができる。
By executing the above steps 601-611, considering that the texture is formed in a torus shape, from the coordinate point (u, v) closest to the origin of the divided texture 302 (304), Texture 30
The coordinate point (cut_u, cut_v) closest to the origin of the texture 303 (305) to be cut out from 2 can be obtained.

【0079】このように、原画像格納制御部210によ
れば、分割ポリゴンに対応するテクスチャよりも少なく
とも周囲1画素分だけ大きいテクスチャが切り出され、
その切り出されたテクスチャが第2の原画像格納部20
9に格納される。その結果、第2の原画像格納部209
は、アドレス生成部208によって生成される参照アド
レスが第2の原画像格納部209に格納されているテク
スチャの境界領域内に位置するか否かにかかわらず、常
に、その参照アドレスの近傍に配置される4つの画素を
補間処理部204に提供することが可能となる。また、
レンダリングプロセッサ3を1つのLSI上に実装した
場合には、第2の原画像格納部209に格納されるテク
スチャへのアクセスを高速に行うことができるので、メ
モリボトルネックを解消することができる。さらに、単
一のテクスチャを複数のテクスチャに分割して、分割さ
れたテクスチャのそれぞれに対してテクスチャマッピン
グを行うことにより得られる画像の質は、単一のテクス
チャに対してテクスチャマッピングを行うことにより得
られる画像の質に比べて劣らない。
As described above, according to the original image storage control unit 210, a texture that is larger than the texture corresponding to the divided polygon by at least one peripheral pixel is cut out,
The cut-out texture is the second original image storage unit 20.
9 is stored. As a result, the second original image storage unit 209
Is always arranged near the reference address regardless of whether the reference address generated by the address generation unit 208 is located within the boundary area of the texture stored in the second original image storage unit 209. It is possible to provide the four processed pixels to the interpolation processing unit 204. Also,
When the rendering processor 3 is mounted on one LSI, the texture stored in the second original image storage unit 209 can be accessed at high speed, so that the memory bottleneck can be eliminated. Furthermore, the image quality obtained by dividing a single texture into multiple textures and performing texture mapping for each of the divided textures is as follows. It is not inferior to the quality of the image obtained.

【0080】図2を再び参照して、合成処理部205に
は、補間処理部204から補間画素データ(P_ge
n)が供給され、アルファ−DDA処理部212からそ
の補間画素データ(P_gen)の属性値(α_ge
n)が供給される。さらに、合成処理部205には、生
成画像格納部206から画素データ(P_acc_i
n)およびその画素データの属性値(α_acc_i
n)が供給される。合成処理部205は、これらの入力
に基づいて、生成画像の画素データ(P_acc_ou
t)およびその画素データの属性値(α_acc_ou
t)を生成する。合成処理部205によって生成された
生成画像の画素データ(P_acc_out)およびそ
の画素データの属性値(α_acc_out)は、生成
画像格納部206に格納される。この合成処理は、アル
ファブレンディングと呼ばれる。アルファブレンディン
グとは、補間処理部204から供給される補間画素デー
タと、生成画像格納部206に格納されている画素デー
タとを所定の混合率で合成する処理である。その所定の
混合率は、アルファ−DDA処理部212から供給され
る属性値と、生成画像格納部206に格納されている属
性値とに基づいて決定される。具体的には、合成処理部
205によるアルファブレンディングは、(数6)に従
って生成画像の画素データ(P_acc_out)およ
びその画素データの属性値(α_acc_out)を計
算することによって達成される。
Referring again to FIG. 2, the interpolation processing unit 204 instructs the synthesis processing unit 205 to interpolate pixel data (P_ge).
n) is supplied, and the attribute value (α_ge) of the interpolation pixel data (P_gen) is supplied from the alpha-DDA processing unit 212.
n) is supplied. Further, the synthesizing processing unit 205 includes pixel data (P_acc_i) from the generated image storage unit 206.
n) and its pixel data attribute value (α_acc_i
n) is supplied. The synthesizing processing unit 205, based on these inputs, generates pixel data (P_acc_ou) of the generated image.
t) and the attribute value (α_acc_ou) of the pixel data
generate t). The pixel data (P_acc_out) of the generated image generated by the synthesis processing unit 205 and the attribute value (α_acc_out) of the pixel data are stored in the generated image storage unit 206. This compositing process is called alpha blending. The alpha blending is a process of synthesizing the interpolated pixel data supplied from the interpolation processing unit 204 and the pixel data stored in the generated image storage unit 206 at a predetermined mixing ratio. The predetermined mixing ratio is determined based on the attribute value supplied from the alpha-DDA processing unit 212 and the attribute value stored in the generated image storage unit 206. Specifically, the alpha blending by the synthesis processing unit 205 is achieved by calculating the pixel data (P_acc_out) of the generated image and the attribute value (α_acc_out) of the pixel data according to (Equation 6).

【0081】[0081]

【数6】 (Equation 6)

【0082】生成画像格納部206は、生成画像の画素
データおよびその画素データの属性値を格納する。第1
の原画像格納部207は、レンダリングに使用される原
画像(テクスチャ)を格納する。生成画像格納部206
および第1の原画像格納部207としては、一般の大容
量メモリを使用することができる。生成画像格納部20
6および第1の原画像格納部207は、同一のバスを用
いて構成され得る。生成画像格納部206および第1の
原画像格納部207は、図1のピクセルメモリ4に相当
する。
The generated image storage unit 206 stores the pixel data of the generated image and the attribute value of the pixel data. First
The original image storage unit 207 stores the original image (texture) used for rendering. Generated image storage unit 206
A general large-capacity memory can be used as the first original image storage unit 207. Generated image storage unit 20
6 and the first original image storage unit 207 can be configured using the same bus. The generated image storage unit 206 and the first original image storage unit 207 correspond to the pixel memory 4 in FIG.

【0083】このようにして、生成画像格納部206に
生成画像が格納される。
In this way, the generated image is stored in the generated image storage unit 206.

【0084】(実施の形態2)以下、本発明の実施の形
態2を説明する。システム100の構成およびレンダリ
ングプロセッサ3の構成は、実施の形態1と同様であ
る。従って、ここではその説明を省略する。実施の形態
1と比較すると、原画像格納制御部210によって実行
される処理が異なる。
(Second Embodiment) The second embodiment of the present invention will be described below. The configuration of the system 100 and the configuration of the rendering processor 3 are similar to those in the first embodiment. Therefore, the description thereof is omitted here. Compared with the first embodiment, the processing executed by the original image storage control unit 210 is different.

【0085】図8は、第2の原画像格納部209に格納
されるテクスチャの例を示す。原画像格納制御部210
は、テクスチャマッピングの対象となるテクスチャ(例
えば、4×4画素のテクスチャ)を第1の原画像格納部
207から読み出す。次に、原画像格納制御部210
は、読み出されたテクスチャの境界領域に位置する画素
をその境界領域の周囲に複写することにより、テクスチ
ャマッピングの対象となるテクスチャより周囲1画素分
だけ大きいテクスチャ(例えば、6×6画素のテクスチ
ャ)を生成する。あるいは、原画像格納制御部210
は、テクスチャマッピングの対象となるテクスチャより
周囲2画素以上大きいテクスチャを生成してもよい。こ
のようにして生成されたテクスチャが第2の原画像格納
部209に格納される。
FIG. 8 shows an example of textures stored in the second original image storage unit 209. Original image storage control unit 210
Reads the texture to be texture-mapped (for example, the texture of 4 × 4 pixels) from the first original image storage unit 207. Next, the original image storage control unit 210
Is a texture larger than the texture to be texture-mapped by one pixel in the surrounding (for example, a texture of 6 × 6 pixels) by copying the pixels located in the boundary area of the read texture around the boundary area. ) Is generated. Alternatively, the original image storage control unit 210
May generate a texture that is larger than the texture to be texture-mapped by 2 pixels or more around. The texture thus generated is stored in the second original image storage unit 209.

【0086】例えば、図8に示す6×6画素のテクスチ
ャ501は、図5(b)に示す4×4画素のテクスチャ
302の境界領域に位置する画素をその境界領域の周囲
に複写することにより得られる。図8に示す6×6画素
のテクスチャ502は、図5(b)に示す4×4画素の
テクスチャ304の境界領域に位置する画素をその境界
領域の周囲に複写することにより得られる。
For example, the texture 501 of 6 × 6 pixels shown in FIG. 8 is obtained by copying the pixels located in the boundary area of the texture 302 of 4 × 4 pixels shown in FIG. 5B around the boundary area. can get. The 6 × 6 pixel texture 502 shown in FIG. 8 is obtained by copying the pixels located in the boundary area of the 4 × 4 pixel texture 304 shown in FIG. 5B around the boundary area.

【0087】このようにして、第2の原画像格納部20
9に格納されるテクスチャの周囲1画素を複写処理によ
り生成することにより、実施の形態1に比較して、若干
の画質劣化はあるものの、第1の原画像格納部207か
ら第2の原画像格納部209に転送される画素データの
量を削減することができる。
In this way, the second original image storage unit 20
By generating one pixel around the texture stored in No. 9 by the copying process, although the image quality is slightly deteriorated as compared with the first embodiment, the first original image storage unit 207 stores the second original image. The amount of pixel data transferred to the storage unit 209 can be reduced.

【0088】以下、画像格納制御部210による複写処
理についてさらに詳しく説明する。
The copying process by the image storage control unit 210 will be described in more detail below.

【0089】図9は、第1の原画像格納部207に格納
されているテクスチャの一部であって、テクスチャマッ
ピングの対象となるテクスチャT0を示す。この例で
は、テクスチャT0は4×4画素からなり、テクスチャ
T0に含まれる各画素の画素値は配列T0[i][j]
に格納されていると仮定する。ここで、i=0,1,
2,3;j=0,1,2,3である。
FIG. 9 shows a texture T0 which is a part of the texture stored in the first original image storage unit 207 and which is a target of texture mapping. In this example, the texture T0 is composed of 4 × 4 pixels, and the pixel value of each pixel included in the texture T0 is the array T0 [i] [j].
Suppose it is stored in. Where i = 0,1,
2,3; j = 0,1,2,3.

【0090】画像格納制御部210は、図9に示される
テクスチャT0を図10に示されるテクスチャT1に変
換する。この例では、テクスチャT1は6×6(=(4
+2)×(4+2))画素からなる。また、テクスチャ
T1に含まれる各画素の画素値は配列T1[i][j]
に格納される。ここで、i=0,1,2,3,4,5;
j=0,1,2,3,4,5である。テクスチャT1
は、第2の原画像格納部209に格納される。
The image storage control unit 210 converts the texture T0 shown in FIG. 9 into the texture T1 shown in FIG. In this example, the texture T1 is 6 × 6 (= (4
+2) × (4 + 2)) pixels. The pixel value of each pixel included in the texture T1 is the array T1 [i] [j].
Stored in. Where i = 0, 1, 2, 3, 4, 5;
j = 0,1,2,3,4,5. Texture T1
Is stored in the second original image storage unit 209.

【0091】具体的には、テクスチャT0からテクスチ
ャT1への変換は、(数7)に従って行われる。ここで
は、オリジナルテクスチャT0のサイズが4×4画素で
あるから、m=4、n=4である。
Specifically, the conversion from the texture T0 to the texture T1 is performed according to (Equation 7). Here, since the size of the original texture T0 is 4 × 4 pixels, m = 4 and n = 4.

【0092】[0092]

【数7】 (Equation 7)

【0093】ここで、テクスチャT0に対する非整数の
原画像参照アドレスを(u0,v0)、テクスチャT1
に対する非整数の原画像参照アドレスを(u1,v1)
とすると、テクスチャT0からテクスチャT1への変換
式(数7)により、(u1,v1)は、(数8)と表す
ことができる。
Here, the non-integer original image reference address for the texture T0 is (u0, v0), and the texture T1 is
Non-integer original image reference address for (u1, v1)
Then, (u1, v1) can be expressed as (Equation 8) by the conversion equation (Equation 7) from the texture T0 to the texture T1.

【0094】[0094]

【数8】 (Equation 8)

【0095】アドレス生成部208は、(数9)に示す
アドレスを生成し、そのアドレスを用いて第2の原画像
格納部209に格納されるテクスチャの画素にアクセス
する。その結果、補間処理部204には、(数10)に
示す画素データが入力される。(数10)において、外
側の括弧([])は配列を表し、内側の括弧([])は
ガウス記号を表す。
The address generation unit 208 generates the address shown in (Equation 9) and uses the address to access the pixel of the texture stored in the second original image storage unit 209. As a result, the pixel data shown in (Equation 10) is input to the interpolation processing unit 204. In (Equation 10), the outer parentheses ([]) represent the array, and the inner parentheses ([]) represent the Gaussian symbol.

【0096】[0096]

【数9】 [Equation 9]

【0097】[0097]

【数10】 [Equation 10]

【0098】(数10)に示す画素データおよび(数
8)に示す参照アドレス(u1,v1)の一部を入力と
して、補間処理部204は、(数11)に従って補間画
素データ(P_gen)を生成する。以上の処理によ
り、テクスチャT1に対して参照アドレス(u1,v
1)を与えた場合、その補間画素データとして(数1
1)に示すP_genを得ることができる。
Using the pixel data shown in (Equation 10) and a part of the reference address (u1, v1) shown in (Equation 8) as input, the interpolation processing unit 204 obtains interpolated pixel data (P_gen) according to (Equation 11). To generate. Through the above processing, the reference address (u1, v
If 1) is given, the interpolation pixel data (Equation 1)
P_gen shown in 1) can be obtained.

【0099】[0099]

【数11】 [Equation 11]

【0100】次に、テクスチャT0に対して参照アドレ
ス(u0,v0)を与えた場合に得られる補間画素デー
タP_gen’について説明する。テクスチャT0に対
して、バイリニア補間処理可能な参照アドレスの範囲
は、(数4)より(数12)となる。この場合、補間処
理に必要な4つの画素データは、(数13)によって与
えられる(図3参照)。従って、テクスチャT0に対し
て参照アドレス(u0,v0)を与えた場合、その補間
画素データとして(数14)に示すP_gen’を得る
ことができる((数11)参照)。
Next, the interpolated pixel data P_gen 'obtained when the reference address (u0, v0) is given to the texture T0 will be described. With respect to the texture T0, the range of reference addresses that can be subjected to bilinear interpolation processing is (Equation 12) to (Equation 12). In this case, the four pixel data required for the interpolation process are given by (Equation 13) (see FIG. 3). Therefore, when the reference address (u0, v0) is given to the texture T0, P_gen ′ shown in (Equation 14) can be obtained as the interpolation pixel data (see (Equation 11)).

【0101】[0101]

【数12】 (Equation 12)

【0102】[0102]

【数13】 (Equation 13)

【0103】[0103]

【数14】 [Equation 14]

【0104】ここで、(数11)、(数14)におけ
る、p、qは(数8)により一致することは自明であ
る。また、(数15)より、(数10)に示す画素デー
タと(数13)に示す画素データとは一致する。すなわ
ち、(数11)に示す補間画素データP_genと、
(数14)に示す補間画素データP_gen’とは、
(数12)に示す範囲において一致する。すなわち、補
間画素データとしても等しいデータを得ることができ
る。
Here, it is obvious that p and q in (Equation 11) and (Equation 14) are the same as in (Equation 8). From (Equation 15), the pixel data shown in (Equation 10) and the pixel data shown in (Equation 13) match. That is, the interpolation pixel data P_gen shown in (Equation 11),
The interpolated pixel data P_gen ′ shown in (Equation 14) is
They match in the range shown in (Equation 12). That is, the same data can be obtained as the interpolation pixel data.

【0105】[0105]

【数15】 (Equation 15)

【0106】次に、参照アドレス(u0,v0)が、
(数12)に示す範囲外である場合について説明する。
ここでは、参照アドレス(u0,v0)が(数16)の
範囲にあったとする。
Next, the reference address (u0, v0) is
The case where the value is outside the range shown in (Equation 12) will be described.
Here, it is assumed that the reference address (u0, v0) is in the range of (Equation 16).

【0107】[0107]

【数16】 [Equation 16]

【0108】オリジナルのテクスチャT0を参照した場
合、補間処理に必要とされる4つのテクスチャを揃える
ことは不可能である。しかし、本発明の画素値供給部2
03によれば、補間処理に用いるテクスチャデータとし
て(数10)を補間処理に用いることが可能となる。こ
れらのテクスチャデータは(数17)となる。
When referring to the original texture T0, it is impossible to align the four textures required for interpolation processing. However, the pixel value supply unit 2 of the present invention
According to No. 03, it is possible to use (Equation 10) as the texture data used in the interpolation process in the interpolation process. These texture data are (Equation 17).

【0109】[0109]

【数17】 [Equation 17]

【0110】補間処理部204は、(数17)に示すテ
クスチャデータおよび参照アドレス(u1,v1)か
ら、補間画素データ(P_gen)を生成する。補間画
素データ(P_gen)は、(数11)より、(数1
8)となる。
The interpolation processing unit 204 generates interpolation pixel data (P_gen) from the texture data and the reference address (u1, v1) shown in (Equation 17). Interpolation pixel data (P_gen) can be calculated from (Equation 11) to (Equation 1)
8).

【0111】[0111]

【数18】 (Equation 18)

【0112】このようにして、オリジナルテクスチャT
0に対して、参照アドレスを挟む隣り合う2画素による
補間処理を実現することができる。これは、参照アドレ
スが図9のテクスチャの上の境界近傍に位置する場合に
おける補間処理であるが、参照アドレスが(数16)に
示す範囲以外の境界近傍に位置する場合も、同様にし
て、補間処理を実現することができる。
In this way, the original texture T
For 0, it is possible to realize interpolation processing by two adjacent pixels sandwiching the reference address. This is the interpolation processing when the reference address is located near the boundary on the texture in FIG. 9, but similarly when the reference address is located near the boundary other than the range shown in (Expression 16), Interpolation processing can be realized.

【0113】このように、本発明によれば、(数19)
の範囲において補間処理(バイリニア補間処理)を行う
ことができる。ここで、テクスチャのサイズはm×n画
素、サンプリングポイントは画素の中心であるとする。
すなわち、テクスチャの座標位置にかかわらず、ただ1
つの補間処理((数11)参照)方式で、補間処理を実
現できる。
Thus, according to the present invention, (Equation 19)
Interpolation processing (bilinear interpolation processing) can be performed in the range. Here, it is assumed that the size of the texture is m × n pixels and the sampling point is the center of the pixels.
That is, regardless of the coordinate position of the texture, only 1
The interpolation processing can be realized by one interpolation processing (see (Equation 11)) method.

【0114】[0114]

【数19】 [Formula 19]

【0115】合成処理部205は、上述したように、
(数6)に従って画像を生成する。
The synthesizing unit 205, as described above,
An image is generated according to (Equation 6).

【0116】次に、ある1つのテクスチャを複数のテク
スチャに分割した場合におけるテクスチャマッピングに
ついて説明する。
Next, the texture mapping when a certain texture is divided into a plurality of textures will be described.

【0117】図11は、生成画像格納部206に格納さ
れている生成画像の各画素と、描画されるべきポリゴン
と、そのポリゴンに対してマップされるべきテクスチャ
の各画素との対応関係を示したものである。図11にお
いて、点線は、生成画像格納部206に格納されている
生成画像の各画素を示し、太線は、描画されるべきポリ
ゴンを示し、細線は、そのポリゴンに対してマッピング
されるべきテクスチャの各画素を示す。
FIG. 11 shows the correspondence between each pixel of the generated image stored in the generated image storage unit 206, the polygon to be drawn, and each pixel of the texture to be mapped to the polygon. It is a thing. In FIG. 11, a dotted line indicates each pixel of the generated image stored in the generated image storage unit 206, a thick line indicates a polygon to be drawn, and a thin line indicates a texture to be mapped to the polygon. Each pixel is shown.

【0118】図11に示されるように、ポリゴン41と
ポリゴン42とは接している。ポリゴン41には、テク
スチャ0がマッピングされ、ポリゴン42には、テクス
チャ1がマッピングされると仮定する。テクスチャ0
は、画素43aと画素43bとを含む。画素43aは画
素値aを有し、画素43bは画素値bを有している。テ
クスチャ1は、画素43cと画素43dとを含む。画素
43cは画素値cを有し、画素43dは画素値dを有し
ている。ここで、注目画素は画素44であるとする。注
目画素44は、図11において×印で示されている。注
目画素とは、生成画像格納部206において、補間画素
データが適用される画素の位置を表すものである。
As shown in FIG. 11, the polygon 41 and the polygon 42 are in contact with each other. It is assumed that the polygon 0 is mapped to the texture 0 and the polygon 42 is mapped to the texture 1. Texture 0
Includes a pixel 43a and a pixel 43b. The pixel 43a has a pixel value a, and the pixel 43b has a pixel value b. Texture 1 includes pixels 43c and pixels 43d. The pixel 43c has a pixel value c, and the pixel 43d has a pixel value d. Here, it is assumed that the pixel of interest is the pixel 44. The pixel of interest 44 is indicated by a cross in FIG. The pixel of interest represents the position of the pixel to which the interpolation pixel data is applied in the generated image storage unit 206.

【0119】補間処理部204は、画素値a,b,c,
dに基づいて補間画素データを生成し、その補間画素デ
ータを注目画素44に適用する。
The interpolation processing unit 204 determines the pixel values a, b, c,
Interpolation pixel data is generated based on d, and the interpolation pixel data is applied to the target pixel 44.

【0120】図12は、注目画素44の座標をテクスチ
ャ座標((u,v)座標)で表した場合における、注目
画素44とテクスチャ0の画素43aおよび43bとテ
クスチャ1の画素43cおよび43dの配置の例を示
す。図12に示される注目画素44と画素43a〜43
dは、図11に示されるそれらと同一のものである。図
12に示される注目画素44は、生成画像格納部206
の注目画素を第2の原画像格納部209に投影したもの
であり、(u,v)座標系の非整数点に位置する。
FIG. 12 shows the arrangement of the pixel of interest 44, the pixels 43a and 43b of texture 0, and the pixels 43c and 43d of texture 1 when the coordinates of the pixel of interest 44 are represented by texture coordinates ((u, v) coordinates). For example: The target pixel 44 and the pixels 43a to 43 shown in FIG.
d are the same as those shown in FIG. The pixel of interest 44 shown in FIG. 12 is the generated image storage unit 206.
Of the pixel of interest is projected onto the second original image storage unit 209, and is located at a non-integer point in the (u, v) coordinate system.

【0121】図12に示される配置の場合、画素値a,
b,c,dに基づいて補間画素データとして(数20)
が得られるべきである。
In the case of the arrangement shown in FIG. 12, the pixel value a,
Interpolation pixel data based on b, c, and d (Equation 20)
Should be obtained.

【0122】[0122]

【数20】 (Equation 20)

【0123】以下、分割されたテクスチャ0とテクスチ
ャ1とを用いてどのようにして(数20)が得られるか
を説明する。ここで、テクスチャ0をポリゴン41にマ
ッピングした後、テクスチャ1をポリゴン42にマッピ
ングすると仮定する。しかしながら、マッピングする順
序が逆の場合も処理は同様である。
Now, how to obtain (Equation 20) using the divided texture 0 and texture 1 will be described. Here, it is assumed that the texture 1 is mapped to the polygon 42 after the texture 0 is mapped to the polygon 41. However, the processing is the same when the order of mapping is reversed.

【0124】はじめに、補間処理部204は、テクスチ
ャ0に関して補間画素データ(P_gen0)を生成す
る。補間画素データ(P_gen0)は、(数11)に
従って計算される。その結果、(数21)が得られる。
注目画素44が占める面積のうちポリゴン0が占める面
積の割合(寄与率)が0.4である場合には、属性値
(α0_gen)は、(数22)によって表される。生
成画像格納部206の注目画素44に格納される値(P
_acc_out)は、このようにして得られた補間画
素データ(P_gen0)と属性値(α0_gen)と
に基づいて、(数6)に従って計算される。その結果、
(数23)が得られる。
First, the interpolation processing section 204 generates interpolation pixel data (P_gen0) for texture 0. The interpolated pixel data (P_gen0) is calculated according to (Equation 11). As a result, (Equation 21) is obtained.
When the ratio of the area occupied by the polygon 0 (contribution rate) to the area occupied by the pixel of interest 44 is 0.4, the attribute value (α0_gen) is represented by (Equation 22). The value stored in the target pixel 44 of the generated image storage unit 206 (P
_Acc_out) is calculated according to (Equation 6) based on the interpolated pixel data (P_gen0) and the attribute value (α0_gen) thus obtained. as a result,
(Equation 23) is obtained.

【0125】[0125]

【数21】 [Equation 21]

【0126】[0126]

【数22】 [Equation 22]

【0127】[0127]

【数23】 (Equation 23)

【0128】次に、補間処理部204は、テクスチャ1
に関して補間画素データ(P_gen1)を生成する。
補間画素データ(P_gen1)は、(数11)に従っ
て計算される。その結果、(数24)が得られる。注目
画素44が占める面積のうちポリゴン1が占める面積の
割合(寄与率)が0.6である場合には、属性値(α1
_gen)は、(数25)によって表される。生成画像
格納部206の注目画素44に格納される値(P_ac
c_out)は、このようにして得られた補間画素デー
タ(P_gen1)と属性値(α1_gen)と値P_
acc_inと値α_acc_inとに基づいて、(数
6)に従って計算される。その結果、(数26)および
(数27)が得られる。
Next, the interpolation processing section 204 determines the texture 1
Generate interpolated pixel data (P_gen1).
The interpolated pixel data (P_gen1) is calculated according to (Equation 11). As a result, (Equation 24) is obtained. When the ratio (contribution rate) of the area occupied by the polygon 1 to the area occupied by the pixel of interest 44 is 0.6, the attribute value (α1
_Gen) is represented by (Equation 25). The value stored in the pixel of interest 44 of the generated image storage unit 206 (P_ac
c_out) is the interpolation pixel data (P_gen1) thus obtained, the attribute value (α1_gen) and the value P_
It is calculated according to (Equation 6) based on acc_in and the value α_acc_in. As a result, (Equation 26) and (Equation 27) are obtained.

【0129】[0129]

【数24】 [Equation 24]

【0130】[0130]

【数25】 (Equation 25)

【0131】[0131]

【数26】 (Equation 26)

【0132】[0132]

【数27】 [Equation 27]

【0133】このように、(数20)と(数26)とは
一致する。このことから、ある1つのテクスチャを複数
のテクスチャに分割した場合でもテクスチャマッピング
によって理想的な補間を実現することができることが理
解される。
Thus, (Equation 20) and (Equation 26) match. From this, it is understood that even if one certain texture is divided into a plurality of textures, ideal interpolation can be realized by texture mapping.

【0134】また、ある1つのテクスチャを複数のテク
スチャに分割したことにより、テクスチャ間、すなわ
ち、ポリゴン間において、不連続な画像が生成されるこ
とはない。そのため、高画質な画像を提供するテクスチ
ャマッピングを実現することができる。
By dividing a certain texture into a plurality of textures, discontinuous images are not generated between textures, that is, between polygons. Therefore, it is possible to realize texture mapping that provides a high-quality image.

【0135】また、最終的に生成される画素データをP
とし、その画素データに関連する補間画素の数をnと
し、n個の補間画素が有する補間画素データをそれぞれ
P_gen(i)とし、n個の補間画素の寄与率(仮想
的にピクセルを一辺の長さが1の正方形とみなしたとき
に、スクリーン上の画素と生成する補間画素との共有領
域の面積)をそれぞれα_gen(i)とする場合、α
_gen(i)の和は、(数28)に示すように1.0
となり、値Pは、(数29)に従って得られる。
Further, the pixel data finally generated is set to P
Let n be the number of interpolation pixels associated with the pixel data, and P_gen (i) be the interpolation pixel data of each of the n interpolation pixels. When assuming that the length of the square is 1, the area of the shared area between the pixel on the screen and the interpolation pixel to be generated) is α_gen (i),
The sum of _gen (i) is 1.0 as shown in (Equation 28).
And the value P is obtained according to (Equation 29).

【0136】[0136]

【数28】 [Equation 28]

【0137】[0137]

【数29】 [Equation 29]

【0138】(数7)、(数11)、(数28)、(数
29)より、最終的に生成される画素データPには、そ
の画素にかかるポリゴンに対応するテクスチャデータを
反映させることが可能であることが分かる。言い換える
と、隣接するポリゴン間に反映されるそれぞれのテクス
チャの画素データを互いに参照することが可能となる。
すなわち、従来の補間装置に発生するポリゴン間の不連
続を排除することが可能となる。これにより、たとえ独
立したテクスチャであっても、隣接するポリゴン間であ
るならば、連続したテクスチャとして扱ったのと同じ効
果を得ることが可能となり、高画質なテクスチャマッピ
ングを実現することが可能となる。
From (Equation 7), (Equation 11), (Equation 28), (Equation 29), the texture data corresponding to the polygon associated with the pixel should be reflected in the finally generated pixel data P. It turns out that is possible. In other words, it becomes possible to refer to the pixel data of each texture reflected between the adjacent polygons.
That is, it becomes possible to eliminate the discontinuity between polygons that occurs in the conventional interpolation device. As a result, even if the textures are independent, if they are between adjacent polygons, it is possible to obtain the same effect as if they were treated as continuous textures, and it is possible to realize high-quality texture mapping. Become.

【0139】本発明は、内挿補間処理の一手法であるバ
イリニア補間処理に関するものである。バイリニア補間
処理は、コンピュータグラフィックス、特にテクスチャ
マッピングや画像のスケーリングなどの画像処理におい
て、高画質な画像を生成するために必要不可欠な処理で
ある。
The present invention relates to bilinear interpolation processing which is one method of interpolation processing. The bilinear interpolation process is an essential process for generating a high quality image in computer graphics, especially in image processing such as texture mapping and image scaling.

【0140】また、本発明は、そのバイリニア補間処理
を行う回路規模を小さくするとともに、高い処理能力を
備えた、高速で高画質なテクスチャマッピングにおける
補間処理を実現するものである。
Further, the present invention reduces the circuit scale for performing the bilinear interpolation processing and realizes the interpolation processing in high-speed and high-quality texture mapping with high processing capability.

【0141】なお、実施の形態2では、テクスチャのサ
ンリングポイントを画素の中心としたが、サンプリング
ポイントの位置は任意である。
In the second embodiment, the sunring point of the texture is the center of the pixel, but the position of the sampling point is arbitrary.

【0142】(実施の形態3)実施の形態2では、テク
スチャ302の境界領域に位置する画素をその境界領域
の周囲に複写することにより、テクスチャ302より少
なくとも周囲1画素分だけ大きいテクスチャ501を生
成した。このような複写処理による効果と同様の効果
は、第2の原画像格納部209にテクスチャ302を格
納しつつ、アドレス生成部208の処理を変更すること
によっても得られる。すなわち、uv−DDA処理部2
13によって生成されるテクスチャ座標(u,v)がテ
クスチャ302の境界領域に位置する場合には、アドレ
ス生成部208がテクスチャ302の領域を越えてアド
レスを生成しないようにすればよい。これにより、第2
の原画像格納部209に必要とされる記憶領域を小さく
することができる。
(Third Embodiment) In the second embodiment, a pixel located in the boundary area of the texture 302 is copied around the boundary area to generate a texture 501 which is larger than the texture 302 by at least one peripheral pixel. did. The same effect as that of the copying process can be obtained by changing the process of the address generation unit 208 while storing the texture 302 in the second original image storage unit 209. That is, the uv-DDA processing unit 2
When the texture coordinates (u, v) generated by 13 are located in the boundary area of the texture 302, the address generation unit 208 may not generate an address beyond the area of the texture 302. This allows the second
The storage area required for the original image storage unit 209 can be reduced.

【0143】以下、本発明の実施の形態3を説明する。
システム100の構成およびレンダリングプロセッサ3
の構成は、実施の形態2と同様である。従って、ここで
はその説明を省略する。実施の形態2と比較すると、原
画像格納制御部210とアドレス生成部208によって
実行される処理が異なる。
The third embodiment of the present invention will be described below.
Configuration of system 100 and rendering processor 3
The configuration of is the same as that of the second embodiment. Therefore, the description thereof is omitted here. Compared with the second embodiment, the processing executed by the original image storage control unit 210 and the address generation unit 208 is different.

【0144】原画像格納制御部210は、テクスチャマ
ッピングの対象となるテクスチャ(例えば、4×4画素
のテクスチャ)を第1の原画像格納部207から読み出
す。次に、原画像格納制御部210は、読み出されたテ
クスチャを第2の原画像格納部209に格納する。
The original image storage control unit 210 reads out the texture (for example, the texture of 4 × 4 pixels) to be texture-mapped from the first original image storage unit 207. Next, the original image storage control unit 210 stores the read texture in the second original image storage unit 209.

【0145】今、図9に示されるテクスチャT0が第2
の原画像格納部209に格納されていると仮定する。こ
こで、テクスチャT0は4×4画素からなり、テクスチ
ャT0に含まれる各画素の画素値は配列T0[i]
[j]に格納されている。ここで、i=0,1,2,
3;j=0,1,2,3である。
Now, the texture T0 shown in FIG. 9 is the second
It is assumed that the original image is stored in the original image storage unit 209. Here, the texture T0 is composed of 4 × 4 pixels, and the pixel value of each pixel included in the texture T0 is the array T0 [i].
It is stored in [j]. Where i = 0, 1, 2,
3; j = 0,1,2,3.

【0146】アドレス生成部208は、第2の原画像格
納部209に格納されているテクスチャT0に対して参
照アドレス(u0,v0)を与える。参照アドレス(u
0,v0)が(数12)の範囲内にある場合には、補間
処理部204は、補間処理に必要とされる画素データを
第2の原画像格納部209から得ることができる。上述
したように、その補間処理に必要とされる画素データ
は、(数13)によって表される。
The address generator 208 gives a reference address (u0, v0) to the texture T0 stored in the second original image storage 209. Reference address (u
When 0, v0) is within the range of (Equation 12), the interpolation processing unit 204 can obtain the pixel data required for the interpolation processing from the second original image storage unit 209. As described above, the pixel data required for the interpolation processing is represented by (Equation 13).

【0147】以下、参照アドレス(u0,v0)が(数
30)である場合におけるテクスチャマッピングについ
て説明する。(数30)に示される参照アドレスは、実
施の形態2で言及した(数16)の範囲に位置する。
Texture mapping when the reference address (u0, v0) is (Equation 30) will be described below. The reference address shown in (Equation 30) is located in the range of (Equation 16) mentioned in the second embodiment.

【0148】[0148]

【数30】 [Equation 30]

【0149】図13は、テクスチャT0において(数3
0)に示される参照アドレス(u0,v0)の点を示し
たものである。その点は小円71によって表されてい
る。また、図13における×印は、テクスチャ0のサン
プリングポイントを表す。
FIG. 13 shows that in the texture T0 (Equation 3)
0) indicates the point of the reference address (u0, v0). The point is represented by a small circle 71. Further, the X mark in FIG. 13 represents the sampling point of the texture 0.

【0150】図14は、図13に示される参照アドレス
(u0,v0)の近傍を拡大したものである。81は参
照アドレス(u0,v0)を示し、82a〜82dは周
辺の4画素を示す。画素82bと画素82dとは、実際
に存在するテクスチャ0の画素であり、その画素値とし
てT0[1][0]とT0[2][0]とをそれぞれ有
している。他方、画素82aと画素82cとは、実際に
は存在しない仮想的な画素である。
FIG. 14 is an enlarged view of the vicinity of the reference address (u0, v0) shown in FIG. Reference numeral 81 indicates a reference address (u0, v0), and reference numerals 82a to 82d indicate four peripheral pixels. The pixel 82b and the pixel 82d are pixels of the texture 0 that actually exist, and have T0 [1] [0] and T0 [2] [0], respectively, as their pixel values. On the other hand, the pixel 82a and the pixel 82c are virtual pixels that do not actually exist.

【0151】このように、参照アドレス(u0,v0)
がテクスチャ0の境界領域に位置する場合には、アドレ
ス生成部208は、補間処理を行うために必要とされる
画素データ((数13)、(数31)参照)を得るため
のアドレスを生成する。
Thus, the reference address (u0, v0)
Is located in the boundary area of the texture 0, the address generation unit 208 generates an address for obtaining pixel data (see (Equation 13) and (Equation 31)) necessary for performing the interpolation process. To do.

【0152】[0152]

【数31】 [Equation 31]

【0153】このようにして得られる画素データ(数3
1)は、実施の形態2で言及したテクスチャT1に対し
て参照アドレス(u1,v1)を与えることによって得
られる画素データと同一である。このことは、アドレス
生成部208のアドレス生成処理を変更することによっ
て、テクスチャT1を生成することなく、実施の形態1
および2と同様の効果を得ることができることを意味す
る。
Pixel data (Equation 3) thus obtained
1) is the same as the pixel data obtained by giving the reference address (u1, v1) to the texture T1 mentioned in the second embodiment. This means that by changing the address generation processing of the address generation unit 208, the texture T1 is not generated, and
It means that the same effect as that of and can be obtained.

【0154】以下、実施の形態3におけるアドレス生成
部208を詳細に説明する。
The address generator 208 in the third embodiment will be described in detail below.

【0155】図15は、実施の形態3におけるアドレス
生成部208の内部構成を示す。アドレス生成部208
には、2次元アドレスが入力される。その2次元アドレ
スは、uアドレス(u_adr)とvアドレス(v_a
dr)とから構成される。
FIG. 15 shows the internal structure of the address generator 208 in the third embodiment. Address generator 208
Is input with a two-dimensional address. The two-dimensional address is a u address (u_adr) and a v address (v_a
dr)).

【0156】アドレス生成部208は、アドレスインク
リメンタ111および112と、アドレスセレクタ12
1〜124とを含んでいる。
The address generator 208 includes the address incrementers 111 and 112 and the address selector 12.
1-124 are included.

【0157】アドレスインクリメンタ111は、入力さ
れたuアドレス(u_adr)を1だけインクリメント
し、その結果を示すアドレス(u_adr’)を出力す
る。アドレスインクリメンタ112は、入力されたvア
ドレス(v_adr)を1だけインクリメントし、その
結果を示すアドレス(v_adr’)を出力する。
The address incrementer 111 increments the input u address (u_adr) by 1, and outputs the address (u_adr ') indicating the result. The address incrementer 112 increments the input v address (v_adr) by 1, and outputs the address (v_adr ') indicating the result.

【0158】アドレスセレクタ121は、u_adrと
0とを比較することにより、u_adrか0かを選択的
に出力する。その出力をu_adr_out0とする。
アドレスセレクタ122は、v_adrと0とを比較す
ることにより、v_adrか0かを選択的に出力する。
その出力をv_adr_out0とする。アドレスセレ
クタ123は、u_adr’と原画像の横のサイズm
(この例では4)とを比較することにより、u_ad
r’かmかを選択的に出力する。その出力をu_adr
_out1とする。アドレスセレクタ124は、v_a
dr’と原画像の縦のサイズn(この例では4)とを比
較することにより、v_adr’かnかを選択的に出力
する。その出力をv_adr_out1とする。
The address selector 121 selectively outputs u_adr or 0 by comparing u_adr with 0. The output is u_adr_out0.
The address selector 122 selectively outputs v_adr or 0 by comparing v_adr with 0.
Its output is v_adr_out0. The address selector 123 has a size m next to u_adr ′ and the original image.
By comparing with (4 in this example)
It selectively outputs r'or m. The output is u_adr
_Out1. The address selector 124 uses v_a
By comparing dr ′ with the vertical size n (4 in this example) of the original image, v_adr ′ or n is selectively output. The output is v_adr_out1.

【0159】上述した構成を有するアドレス生成部20
8に対して、(数30)に示される参照アドレスを入力
した場合には、u_adrおよびv_adrは、(数3
2)によって表される。
Address generation unit 20 having the above-mentioned configuration
When the reference address shown in (Equation 30) is input to 8, the u_adr and v_adr are
Represented by 2).

【0160】[0160]

【数32】 [Equation 32]

【0161】はじめに、アドレスインクリメンタ111
および112の動作を説明する。アドレスインクリメン
タ111および112への入力(u_adr,v_ad
r)と、アドレスインクリメンタ111および112か
らの出力(u_adr’,v_adr’)との関係は、
(数33)によって表される。
First, the address incrementer 111
The operations of 112 and 112 will be described. Input to address incrementers 111 and 112 (u_adr, v_ad
r) and the outputs (u_adr ′, v_adr ′) from the address incrementers 111 and 112 are as follows.
It is represented by (Equation 33).

【0162】[0162]

【数33】 [Expression 33]

【0163】次に、アドレスセレクタ121〜124の
動作を説明する。ここで、アドレスセレクタ121の動
作を規定する関数をsel1、アドレスセレクタ122
の動作を規定する関数をsel2、アドレスセレクタ1
23の動作を規定する関数をsel3、アドレスセレク
タ124の動作を規定する関数をsel4とする。これ
らの関数を用いて、出力値u_adr_out0、v_
adr_out0、u_adr_out1、v_adr
_out1を表すと(数34)に示すようになる。
Next, the operation of the address selectors 121 to 124 will be described. Here, the function that defines the operation of the address selector 121 is sel1, and the address selector 122 is
The function that defines the operation of sel2, address selector 1
The function defining the operation of 23 is sel3, and the function defining the operation of the address selector 124 is sel4. Using these functions, the output values u_adr_out0, v_
adr_out0, u_adr_out1, v_adr
When _out1 is represented, it becomes as shown in (Equation 34).

【0164】[0164]

【数34】 (Equation 34)

【0165】アドレス生成部208は、補間処理用画素
データアドレス1として(u_adr_out0,v_
adr_out0)を出力し、補間処理用画素データア
ドレス2として(u_adr_out0,v_adr_
out1)を出力し、補間処理用画素データアドレス3
として(u_adr_out1,v_adr_out
0)を出力し、補間処理用画素データアドレス4として
(u_adr_out1,v_adr_out1)を出
力する。
The address generator 208 uses (u_adr_out0, v_) as the pixel data address 1 for interpolation processing.
adr_out0) and outputs (u_adr_out0, v_adr_) as the pixel data address 2 for interpolation processing.
out1) and outputs pixel data address 3 for interpolation processing
As (u_adr_out1, v_adr_out
0) is output, and (u_adr_out1, v_adr_out1) is output as the pixel data address 4 for interpolation processing.

【0166】このようにして、アドレス生成部208
は、第2の原画像格納部209に対して4つのアドレス
(補間処理用画素データアドレス)を出力する。それら
の4つのアドレスは、(数35)によって表される。
In this way, the address generator 208
Outputs four addresses (pixel data addresses for interpolation processing) to the second original image storage unit 209. Those four addresses are represented by (Equation 35).

【0167】[0167]

【数35】 [Equation 35]

【0168】上述したように、図15に示す構成を有す
るアドレス生成部208によれば、画素データを参照す
るためのアドレス(数35)を生成することができる。
このことは、画素82aをアドレスする代わりに画素8
2bをアドレスし、画素82cをアドレスする代わりに
画素82dをアドレスすることを意味する。その結果、
画素値供給部203は、参照アドレスがテクスチャの境
界領域に位置するか否かにかかわらず、補間処理部20
4に所定数の画素データを供給することになる。これに
より、補間処理部204は、(数11)に従って補間画
素データ(P_gen)を計算することが可能になる
((数36)参照)。
As described above, the address generator 208 having the configuration shown in FIG. 15 can generate an address (Equation 35) for referring to pixel data.
This means that instead of addressing pixel 82a, pixel 8
This means addressing 2b and addressing pixel 82d instead of addressing pixel 82c. as a result,
The pixel value supply unit 203 determines whether the reference address is located in the boundary area of the texture or not.
4 will be supplied with a predetermined number of pixel data. Accordingly, the interpolation processing unit 204 can calculate the interpolated pixel data (P_gen) according to (Equation 11) (see (Equation 36)).

【0169】[0169]

【数36】 [Equation 36]

【0170】これに続く処理は、実施の形態2と同様で
ある。すなわち、実施の形態3では、アドレス生成部2
08は、実施の形態2によって生成されたテクスチャT
1があたかもあるかのように、アドレスを生成する。
The subsequent processing is the same as in the second embodiment. That is, in the third embodiment, the address generator 2
08 is the texture T generated according to the second embodiment.
Generate an address as if there were one.

【0171】このように、実施の形態3によれば、実施
の形態2と同様にして、高画質で高速なテクスチャマッ
ピング時の補間処理を実現することができる。しかも、
実施の形態2に比較して、原画像格納制御部210によ
るテクスチャの変換処理が不要となり、第2の原画像格
納部209の記憶容量も少なくて済むという利点があ
る。
As described above, according to the third embodiment, similarly to the second embodiment, it is possible to realize the interpolation processing at the time of texture mapping with high image quality and high speed. Moreover,
Compared to the second embodiment, there is an advantage that the texture conversion processing by the original image storage control unit 210 is unnecessary and the storage capacity of the second original image storage unit 209 can be small.

【0172】(実施の形態4)実施の形態2では、テク
スチャ302の境界領域に位置する画素をその境界領域
の周囲に複写することにより、テクスチャ302より少
なくとも周囲1画素分だけ大きいテクスチャ501を生
成した。このような複写処理による効果と同様の効果
は、第2の原画像格納部209にテクスチャ302を格
納しつつ、補間処理部204の処理を変更することによ
っても得られる。すなわち、補間処理部204に入力さ
れる画素データの数が補間処理に必要とされる画素デー
タの数より少ない場合(例えば、補間処理部204に入
力される画素データの数が4より少ない場合)には、入
力された補間画素データに基づいて補間処理に必要とさ
れる画素データを生成する補間画素データ生成部93a
を設ければよい。これにより、原画像格納制御部210
によるテクスチャの変換処理が不要となるので、実施の
形態2に比較して、第2の原画像格納部209に必要と
される記憶領域を小さくすることができる。
(Embodiment 4) In Embodiment 2, the pixels located in the boundary area of the texture 302 are copied around the boundary area to generate a texture 501 which is larger than the texture 302 by at least one peripheral pixel. did. The same effect as that of the copying process can be obtained by changing the process of the interpolation processing unit 204 while storing the texture 302 in the second original image storage unit 209. That is, when the number of pixel data input to the interpolation processing unit 204 is smaller than the number of pixel data required for the interpolation processing (for example, when the number of pixel data input to the interpolation processing unit 204 is less than 4). Includes an interpolated pixel data generation unit 93a that generates pixel data required for interpolation processing based on the input interpolated pixel data.
Should be provided. As a result, the original image storage control unit 210
Since the conversion processing of the texture due to is unnecessary, the storage area required for the second original image storage unit 209 can be reduced as compared with the second embodiment.

【0173】以下、本発明の実施の形態4を説明する。
システム100の構成およびレンダリングプロセッサ3
の構成は、実施の形態2と同様である。従って、ここで
はその説明を省略する。実施の形態2と比較すると、原
画像格納制御部210と補間処理部204によって実行
される処理が異なる。
The fourth embodiment of the present invention will be described below.
Configuration of system 100 and rendering processor 3
The configuration of is the same as that of the second embodiment. Therefore, the description thereof is omitted here. Compared to the second embodiment, the processing executed by the original image storage control unit 210 and the interpolation processing unit 204 is different.

【0174】原画像格納制御部210は、テクスチャマ
ッピングの対象となるテクスチャ(例えば、4×4画素
のテクスチャ)を第1の原画像格納部207から読み出
す。次に、原画像格納制御部210は、読み出されたテ
クスチャを第2の原画像格納部209に格納する。
The original image storage control unit 210 reads out the texture (for example, the texture of 4 × 4 pixels) to be texture-mapped from the first original image storage unit 207. Next, the original image storage control unit 210 stores the read texture in the second original image storage unit 209.

【0175】今、図9に示されるテクスチャT0が第2
の原画像格納部209に格納されていると仮定する。こ
こで、テクスチャT0は4×4画素からなり、テクスチ
ャT0に含まれる各画素の画素値は配列T0[i]
[j]に格納されている。ここで、i=0,1,2,
3;j=0,1,2,3である。
Now, the texture T0 shown in FIG. 9 is the second
It is assumed that the original image is stored in the original image storage unit 209. Here, the texture T0 is composed of 4 × 4 pixels, and the pixel value of each pixel included in the texture T0 is the array T0 [i].
It is stored in [j]. Where i = 0, 1, 2,
3; j = 0,1,2,3.

【0176】図16は、実施の形態4における補間処理
部204の内部構成を示す。補間処理部204は、補間
データ生成部93aと補間実処理部93bとを含んでい
る。
FIG. 16 shows the internal structure of the interpolation processing unit 204 according to the fourth embodiment. The interpolation processing unit 204 includes an interpolation data generation unit 93a and an interpolation actual processing unit 93b.

【0177】以下、補間データ生成部93aと補間実処
理部93bの動作を説明する。ここで、テクスチャのサ
ンプリングは画素の中心で行うものとし、テクスチャマ
ッピングの対象となるテクスチャは4×4画素からなる
と仮定する。
The operations of the interpolation data generator 93a and the interpolation actual processor 93b will be described below. Here, it is assumed that the sampling of the texture is performed at the center of the pixel and the texture to be texture-mapped has 4 × 4 pixels.

【0178】アドレス生成部208によって第2の原画
像格納部209に格納されているテクスチャT0に対し
て与えられた参照アドレス(u0,v0)が(数12)
の範囲内にある場合には、補間データ生成部93aに
は、4つの画素データが入力される。これら4つの画素
データは、バイリニア補間処理によって要求される適切
な数の画素データである。従って、補間データ生成部9
3aは、入力された4つの画素データに対して何らの加
工を施すことなく、それらの画素データを補間実処理部
93bに出力する。補間実処理部93aは、バイリニア
補間処理を実行する。補間実処理部93aの動作は、実
施の形態1〜3における補間処理部204の動作と同一
である。
The reference address (u0, v0) given to the texture T0 stored in the second original image storage unit 209 by the address generation unit 208 is (Equation 12).
If it is within the range, four pixel data are input to the interpolation data generation unit 93a. These four pixel data are an appropriate number of pixel data required by the bilinear interpolation processing. Therefore, the interpolation data generation unit 9
3a outputs the pixel data to the interpolation actual processing unit 93b without performing any processing on the input four pixel data. The interpolation actual processing unit 93a executes bilinear interpolation processing. The operation of the interpolation actual processing unit 93a is the same as the operation of the interpolation processing unit 204 in the first to third embodiments.

【0179】他方、参照アドレス(u0,v0)が(数
12)の範囲外にある場合には、補間処理データ生成部
93aに入力される画素データの数は、バイリニア補間
処理に必要とされる画素データの数より少なくなる。こ
の場合には、補間処理データ生成部93aは、不足する
画素データを生成する。その結果、補間実処理部93b
には4つの画素データが出力されることとなる。
On the other hand, when the reference address (u0, v0) is outside the range of (Equation 12), the number of pixel data input to the interpolation processing data generation unit 93a is required for the bilinear interpolation processing. It is less than the number of pixel data. In this case, the interpolation processing data generation unit 93a generates insufficient pixel data. As a result, the interpolation actual processing unit 93b
Will output four pixel data.

【0180】以下、参照アドレス(u0,v0)が(数
30)である場合におけるテクスチャマッピングについ
て説明する。(数30)に示される参照アドレスは、実
施の形態2で言及した(数16)の範囲に位置する。
Texture mapping when the reference address (u0, v0) is (Equation 30) will be described below. The reference address shown in (Equation 30) is located in the range of (Equation 16) mentioned in the second embodiment.

【0181】アドレス生成部208が第2の原画像格納
部209に格納されているテクスチャT0に対して参照
アドレス(u0,v0)を与えることにより、補間処理
データ生成部93aには、(数37)に示す画素データ
が入力される。しかしながら、(数37)に示す4つの
画素データのうち、(数38)に示す画素データは不当
なデータであるか、もしくはデータが存在しない。補間
処理データ生成部93aは、与えられた参照アドレス
(u0,v0)の値とテクスチャT0のサイズ(4×4
画素)とに基づいて、(数38)に示す2つの画素デー
タが不当なものであると識別する。
Since the address generation unit 208 gives the reference address (u0, v0) to the texture T0 stored in the second original image storage unit 209, the interpolation processing data generation unit 93a has The pixel data shown in () is input. However, among the four pixel data shown in (Equation 37), the pixel data shown in (Equation 38) is invalid data or there is no data. The interpolation processing data generation unit 93a determines the value of the given reference address (u0, v0) and the size of the texture T0 (4 × 4).
The two pixel data shown in (Equation 38) are identified as invalid based on (Pixel).

【0182】[0182]

【数37】 (37)

【0183】[0183]

【数38】 (38)

【0184】[0184]

【数39】 [Formula 39]

【0185】補間処理データ生成部93aに入力される
画素データに不当な画素データが含まれている場合に
は、補間処理データ生成部93aは、その不当な画素デ
ータの代わりに正当な画素データを補間実処理部93b
に出力する。例えば、(数38)に示す画素データの代
わりに(数39)に示す画素データが出力される。補間
実処理部93bは、これらの画素データに基づいて補間
処理を実行する。この補間処理によって得られる補間画
素データは、(数36)に一致する。
If the pixel data input to the interpolation processing data generation unit 93a includes invalid pixel data, the interpolation processing data generation unit 93a uses valid pixel data instead of the invalid pixel data. Interpolation actual processing unit 93b
Output to. For example, the pixel data shown in (Formula 39) is output instead of the pixel data shown in (Formula 38). The interpolation actual processing unit 93b executes interpolation processing based on these pixel data. The interpolated pixel data obtained by this interpolating process matches (Equation 36).

【0186】ここで、補間処理データ生成部93aに入
力される画素データのうち正当な画素データの数は、4
つか、2つか、1つかのいずれかである。また、参照ア
ドレス(u0,v0)の値の振舞いによって、補間処理
に必要とされる画素データは一意に決定される。このこ
とから、補間処理データ生成部93aを簡単なマルチプ
レクサで実現できることは当業者であれば容易に理解で
きるだろう。
Here, the number of valid pixel data among the pixel data input to the interpolation processing data generation unit 93a is 4
It is either one, two, or one. Also, the pixel data required for the interpolation processing is uniquely determined by the behavior of the value of the reference address (u0, v0). From this, it will be easily understood by those skilled in the art that the interpolation processing data generating unit 93a can be realized by a simple multiplexer.

【0187】これに続く処理は、実施の形態2と同様で
ある。
The subsequent processing is similar to that of the second embodiment.

【0188】(実施の形態5)以下、本発明の実施の形
態5を説明する。システム100の構成およびレンダリ
ングプロセッサ3の構成は、実施の形態1と同様であ
る。従って、ここではその説明を省略する。実施の形態
1と比較すると、原画像格納制御部210によって実行
される処理が異なる。
(Fifth Embodiment) The fifth embodiment of the present invention will be described below. The configuration of the system 100 and the configuration of the rendering processor 3 are similar to those in the first embodiment. Therefore, the description thereof is omitted here. Compared with the first embodiment, the processing executed by the original image storage control unit 210 is different.

【0189】図17は、第2の原画像格納部209に格
納されるテクスチャ503および504の例を示す。原
画像格納制御部210は、テクスチャマッピングの対象
となるテクスチャ(例えば、4×4画素のテクスチャ)
を第1の原画像格納部207から読み出す。次に、原画
像格納制御部210は、読み出されたテクスチャの周囲
1画素に予め定められた固定値を挿入することにより、
テクスチャマッピングの対象となるテクスチャより周囲
1画素分だけ大きいテクスチャ(例えば、6×6画素の
テクスチャ)を生成する。あるいは、原画像格納制御部
210は、テクスチャマッピングの対象となるテクスチ
ャより周囲2画素以上大きいテクスチャを生成してもよ
い。このようにして生成されたテクスチャが第2の原画
像格納部209に格納される。
FIG. 17 shows an example of textures 503 and 504 stored in the second original image storage section 209. The original image storage control unit 210 uses a texture to be texture-mapped (for example, a texture of 4 × 4 pixels).
Is read from the first original image storage unit 207. Next, the original image storage control unit 210 inserts a predetermined fixed value into one pixel around the read texture,
A texture (for example, a 6 × 6 pixel texture) larger by one pixel than the texture to be texture-mapped is generated. Alternatively, the original image storage control unit 210 may generate a texture that is larger than the texture to be texture-mapped by 2 pixels or more around. The texture thus generated is stored in the second original image storage unit 209.

【0190】例えば、図17に示す6×6画素のテクス
チャ503は、図5(b)に示す4×4画素のテクスチ
ャ302の周囲1画素に固定値を挿入することにより得
られる。図17に示す6×6画素のテクスチャ504
は、図5(b)に示す4×4画素のテクスチャ304の
周囲1画素に固定値を挿入することにより得られる。例
えば、その固定値は、画素値0(黒)である。
For example, the 6 × 6 pixel texture 503 shown in FIG. 17 is obtained by inserting a fixed value into one pixel around the 4 × 4 pixel texture 302 shown in FIG. 5B. The 6 × 6 pixel texture 504 shown in FIG.
Can be obtained by inserting a fixed value into one pixel around the 4 × 4 pixel texture 304 shown in FIG. 5B. For example, the fixed value is the pixel value 0 (black).

【0191】テクスチャマッピングの対象となるテクス
チャの周囲1画素に画素値0(黒)を挿入することによ
り、ポリゴンの内部からポリゴンの境界に近づくにつれ
て徐々に画素値が0に近づく。これは、ポリゴンエッジ
に対してフィルタリング処理を行った状態であることを
意味する。これにより、ポリゴンエッジのエイリアスを
除去することができる。
By inserting a pixel value 0 (black) into one pixel around the texture to be texture-mapped, the pixel value gradually approaches 0 from the inside of the polygon toward the boundary of the polygon. This means that the polygon edge has been filtered. As a result, the alias of the polygon edge can be removed.

【0192】このように、実施の形態5によれば、内挿
補間処理とエッジアンチエイリアシング処理とを同時に
実現することができる。
As described above, according to the fifth embodiment, the interpolation processing and the edge anti-aliasing processing can be realized at the same time.

【0193】なお、テクスチャの周囲1画素に挿入する
固定値は画素値0(黒)には限定されない。その固定値
として任意の値を挿入することが可能である。
The fixed value inserted in one pixel around the texture is not limited to the pixel value 0 (black). It is possible to insert an arbitrary value as the fixed value.

【0194】以下、画像格納制御部210による挿入処
理についてさらに詳しく説明する。
The insertion process performed by the image storage control unit 210 will be described in more detail below.

【0195】実施の態様2と同様にして、画像格納制御
部210は、テクスチャT0をテクスチャT1に変換す
る。ただし、実施の形態5では、この変換は、(数4
0)によって規定される。(数40)では、黒を表す画
素値を0と表している。
Similar to the second embodiment, the image storage controller 210 converts the texture T0 into the texture T1. However, in the fifth embodiment, this conversion is
0). In (Equation 40), the pixel value representing black is represented as 0.

【0196】[0196]

【数40】 (Equation 40)

【0197】参照アドレス(u0,v0)が、(数1
2)に示す範囲内である場合には、その補間処理結果
は、実施の形態2と同一である。しかし、参照アドレス
(u0,v0)が、(数12)に示す範囲外である場合
には、その補間処理結果は、実施の形態2とは異なる。
すなわち、参照アドレス(u0,v0)がテクスチャ0
の境界領域に位置する場合には、テクスチャT0の境界
に近づくにつれて黒色の画素(画素値0)の割合を多く
して、補間処理を行うこととなる((数11)参照)。
The reference address (u0, v0) is (equation 1
If it is within the range shown in 2), the interpolation processing result is the same as that of the second embodiment. However, when the reference address (u0, v0) is outside the range shown in (Equation 12), the interpolation processing result is different from that of the second embodiment.
That is, the reference address (u0, v0) is the texture 0.
When it is located in the boundary area of, the interpolation processing is performed by increasing the ratio of black pixels (pixel value 0) as the texture T0 approaches the boundary (see (Equation 11)).

【0198】これに続く処理は、実施の形態2と同様で
ある。ポリゴン境界の画素値を算出することは、テクス
チャの境界近傍への参照となる。これは、ポリゴンのエ
ッジを滑らかにする処理を行うことと等価である。
The subsequent processing is similar to that of the second embodiment. The calculation of the pixel value of the polygon boundary serves as a reference to the vicinity of the texture boundary. This is equivalent to performing processing for smoothing the edges of polygons.

【0199】このような挿入処理による効果と同様の効
果は、第2の原画像格納部209にテクスチャ302を
格納しつつ、アドレス生成部208の処理を変更するこ
とによっても得られる。すなわち、uv−DDA処理部
213によって生成されるテクスチャ座標(u,v)が
テクスチャ302の境界領域に位置する場合には、アド
レス生成部208がテクスチャ302の領域を越えてア
ドレスを生成しないようにすればよい。その代わり、ア
ドレス生成部208は、固定値が格納された特定のレジ
スタを参照する。これにより、第2の原画像格納部20
9に必要とされる記憶領域を小さくすることができる。
The same effect as that of the inserting process can be obtained by changing the process of the address generating unit 208 while storing the texture 302 in the second original image storage unit 209. That is, when the texture coordinate (u, v) generated by the uv-DDA processing unit 213 is located in the boundary area of the texture 302, the address generation unit 208 does not generate an address beyond the area of the texture 302. do it. Instead, the address generator 208 refers to a specific register in which a fixed value is stored. As a result, the second original image storage unit 20
The storage area required for 9 can be reduced.

【0200】さらに、テクスチャ302の周囲1画素に
ポリゴンが描画される対象の背景色を表す画素値を挿入
することにより、高画質な背景とのアンチエイリアシン
グ処理を生成することも可能である。
Furthermore, it is possible to generate an anti-aliasing process with a high quality background by inserting a pixel value representing the background color of the target on which the polygon is drawn into one pixel around the texture 302.

【0201】なお、上述した実施の形態では、内挿補間
処理には、参照アドレスの近傍に位置する4つ画素が使
用される例について説明した。しかし、内挿補間処理に
使用される画素の数は4には限定されない。以下、内挿
補間処理に使用される画素の数が9、16である場合に
ついて説明する。
In the above-described embodiment, the example in which four pixels located near the reference address are used for the interpolation processing has been described. However, the number of pixels used for the interpolation processing is not limited to four. Hereinafter, the case where the number of pixels used for the interpolation processing is 9 and 16 will be described.

【0202】図18は、参照アドレスの近傍に位置する
9個の画素を用いて、内挿補間処理を行う場合における
画素の配置を示す。
FIG. 18 shows the arrangement of pixels in the case of performing interpolation processing using nine pixels located near the reference address.

【0203】図18において、点700は、参照アドレ
スの位置を示す。また、参照点700の近傍には、画素
701(画素値a)、画素702(画素値b)、画素7
03(画素値c)、画素704(画素値d)、画素画素
705(画素値e)、画素706(画素値f)、画素7
07(画素値g)、画素708(画素値h)、画素70
9(画素値i)が存在するとする。さらに、参照点70
0は、画素701、702、704、705に囲まれる
位置にあり、図18に示すように、参照点700と画素
701とは、u軸方向にpだけ離れており、v軸方向に
qだけ離れているとする。ここで、0≦p<1、0≦q
<1である。
In FIG. 18, a point 700 indicates the position of the reference address. In the vicinity of the reference point 700, the pixel 701 (pixel value a), the pixel 702 (pixel value b), the pixel 7
03 (pixel value c), pixel 704 (pixel value d), pixel pixel 705 (pixel value e), pixel 706 (pixel value f), pixel 7
07 (pixel value g), pixel 708 (pixel value h), pixel 70
It is assumed that 9 (pixel value i) exists. Further, reference point 70
0 is located at a position surrounded by pixels 701, 702, 704, and 705. As illustrated in FIG. 18, the reference point 700 and the pixel 701 are separated by p in the u-axis direction and only q in the v-axis direction. Suppose they are far apart. Where 0 ≦ p <1, 0 ≦ q
<1.

【0204】この場合、参照点700に対する補間画素
データ(P_gen)は、(数41)に従って計算され
る。これは、画素701から画素709を4画素ごとに
処理することにより、参照アドレスの近傍に位置する9
画素を用いて内挿補間処理を行うことを意味している。
その内挿補間処理における4画素ごとの組は、図18に
おいて組711〜714として示される。
In this case, the interpolated pixel data (P_gen) for the reference point 700 is calculated according to (Equation 41). This is performed by processing the pixels 701 to 709 for every four pixels, and thus the pixels are located near the reference address.
This means performing interpolation processing using pixels.
The sets for every four pixels in the interpolation processing are shown as sets 711 to 714 in FIG.

【0205】[0205]

【数41】 [Formula 41]

【0206】図19は、参照アドレスの近傍に位置する
16個の画素を用いて、内挿補間処理を行う場合におけ
る画素の配置を示す。
FIG. 19 shows the arrangement of pixels when the interpolation processing is performed using 16 pixels located near the reference address.

【0207】図19において、点800は、参照アドレ
スの位置を示す。また、参照点800の近傍には、画素
801(画素値a)、画素802(画素値b)、画素8
03(画素値c)、画素804(画素値d)、画素画素
805(画素値e)、画素806(画素値f)、画素8
07(画素値g)、画素808(画素値h)、画素80
9(画素値i)、画素810(画素値j)、画素811
(画素値k)、画素812(画素値l)、画素画素81
3(画素値m)、画素814(画素値n)、画素815
(画素値o)、画素816(画素値r)が存在するとす
る。さらに、参照点800は、画素801、802、8
05、806に囲まれる位置にあり、図19に示すよう
に、参照点800と画素801とは、u軸方向にpだけ
離れており、v軸方向にqだけ離れているとする。ここ
で、0≦p<1、0≦q<1である。
In FIG. 19, a point 800 indicates the position of the reference address. In the vicinity of the reference point 800, a pixel 801 (pixel value a), a pixel 802 (pixel value b), a pixel 8
03 (pixel value c), pixel 804 (pixel value d), pixel pixel 805 (pixel value e), pixel 806 (pixel value f), pixel 8
07 (pixel value g), pixel 808 (pixel value h), pixel 80
9 (pixel value i), pixel 810 (pixel value j), pixel 811
(Pixel value k), pixel 812 (pixel value l), pixel pixel 81
3 (pixel value m), pixel 814 (pixel value n), pixel 815
(Pixel value o) and pixel 816 (pixel value r) exist. Further, the reference point 800 has pixels 801, 802, 8
It is assumed that the reference point 800 and the pixel 801 are located in a position surrounded by 05 and 806 and are apart from each other by p in the u-axis direction and q in the v-axis direction, as shown in FIG. Here, 0 ≦ p <1 and 0 ≦ q <1.

【0208】この場合、参照点800に対する補間画素
データ(P_gen)は、(数42)に従って計算され
る。これは、画素801から画素816を4画素ごとに
処理することにより、参照アドレスの近傍に位置する1
6画素を用いて内挿補間処理を行うことを意味してい
る。その内挿補間処理における4画素ごとの組は、図1
9において組821〜829として示される。
In this case, the interpolated pixel data (P_gen) for the reference point 800 is calculated according to (Equation 42). This is because a pixel located in the vicinity of the reference address is processed by processing the pixels 801 to 816 every four pixels.
This means that the interpolation processing is performed using 6 pixels. The set for every 4 pixels in the interpolation processing is shown in FIG.
9 as sets 821-829.

【0209】[0209]

【数42】 (Equation 42)

【0210】なお、上述した実施の形態では、内挿補間
処理としてバイリニア処理を用い、原画像に対する参照
アドレス(u,v)の一部を補間処理部204に入力し
た。しかし、補間範囲を広く取る場合には、単に参照ア
ドレス(u,v)の一部を入力したのでは、情報量が劣
化する。従って、少なくともp、qの値を高精度に算出
することのできる参照アドレス(u,v)を入力するこ
とが好ましい。
In the above-described embodiment, the bilinear processing is used as the interpolation processing, and a part of the reference address (u, v) for the original image is input to the interpolation processing unit 204. However, when the interpolation range is wide, simply inputting part of the reference address (u, v) deteriorates the amount of information. Therefore, it is preferable to input the reference address (u, v) capable of calculating at least the values of p and q with high accuracy.

【0211】[0211]

【発明の効果】本発明によれば、参照アドレスがテクス
チャの中心領域内に位置するか境界領域内に位置するか
にかかわらず、補間処理部が要求する数の画素に関連す
る情報を補間処理部に提供することが可能になる。これ
により、単一の補間処理でテクスチャパターンの全領域
を補間することが可能となるため、従来の補間装置にお
いて必要とされた例外補間処理を排除することができ
る。その結果、回路規模を削減することができる。
According to the present invention, the information related to the number of pixels requested by the interpolation processing unit is interpolated regardless of whether the reference address is located in the central area of the texture or in the boundary area. Can be provided to the department. As a result, the entire area of the texture pattern can be interpolated by a single interpolation process, and thus the exceptional interpolation process required in the conventional interpolation device can be eliminated. As a result, the circuit scale can be reduced.

【0212】さらに、例外補間処理を排除することによ
る画質の劣化は現れない。しかも、テクスチャパターン
の全領域にわたり、均一な補間処理であるので、非常に
高画質な画像を得ることができる。
Furthermore, the image quality does not deteriorate due to the exclusion of the exceptional interpolation process. Moreover, since the interpolation processing is uniform over the entire area of the texture pattern, a very high quality image can be obtained.

【0213】また、本発明によれば、1つのテクスチャ
を複数のテクスチャに分割して、それぞれのテクスチャ
を独立に取り扱うことができる。さらに、分割前のテク
スチャを第1メモリに格納し、分割後のテクスチャを第
2メモリに格納する場合において、第2のメモリとして
第1のメモリより非常に高速に動作するものを使用すれ
ば、第2メモリは第1メモリに対するキャッシュ/バッ
ファとしての役割を果たす。その結果、テクスチャマッ
ピングの対象となるテクスチャに高速にアクセスするこ
とが可能となり、バスボトルネックが解消される。
Further, according to the present invention, one texture can be divided into a plurality of textures and each texture can be treated independently. Furthermore, in the case where the texture before division is stored in the first memory and the texture after division is stored in the second memory, if a second memory that operates much faster than the first memory is used, The second memory acts as a cache / buffer for the first memory. As a result, it becomes possible to access the texture to be texture-mapped at high speed, and the bus bottleneck is eliminated.

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

【図1】テクスチャマッピングによりポリゴンを描画す
るシステム100の構成を示す図である。
FIG. 1 is a diagram showing a configuration of a system 100 for drawing a polygon by texture mapping.

【図2】レンダリングプロセッサ3の構成を示す図であ
る。
FIG. 2 is a diagram showing a configuration of a rendering processor 3.

【図3】参照アドレスとその参照アドレスの近傍に位置
する画素の配置の例を示す図である。
FIG. 3 is a diagram showing an example of a reference address and an arrangement of pixels located in the vicinity of the reference address.

【図4】(a)および(b)は、テクスチャの中心領域
と境界領域の例を示す図である。
4A and 4B are diagrams showing examples of a central region and a boundary region of a texture.

【図5】(a)は、第1の原画像格納部207に格納さ
れている原画像(テクスチャ)301の例を示す図、
(b)は、原画像(テクスチャ)301の一部である原
画像(テクスチャ)302および304の例を示す図、
(c)は、原画像(テクスチャ)301から切り出され
た原画像(テクスチャ)303および305の例を示す
図である。
5A is a diagram showing an example of an original image (texture) 301 stored in a first original image storage unit 207, FIG.
(B) is a diagram showing an example of original images (textures) 302 and 304 which are part of the original image (texture) 301,
(C) is a diagram showing an example of original images (textures) 303 and 305 cut out from the original image (texture) 301.

【図6】生成画像格納部206に生成されるポリゴン4
01の例を示す図である。
FIG. 6 is a polygon 4 generated in the generated image storage unit 206.
It is a figure which shows the example of 01.

【図7】原画像格納制御部210による切り出し処理の
手順を示す図である。
7 is a diagram showing a procedure of cutout processing by the original image storage control unit 210. FIG.

【図8】第2の原画像格納部209に格納されるテクス
チャの例を示す図である。
FIG. 8 is a diagram showing an example of textures stored in a second original image storage unit 209.

【図9】第1の原画像格納部207に格納されるテクス
チャT0の例を示す図である。
FIG. 9 is a diagram showing an example of a texture T0 stored in a first original image storage unit 207.

【図10】第2の原画像格納部209に格納されるテク
スチャT1の例を示す図である。
FIG. 10 is a diagram showing an example of a texture T1 stored in a second original image storage unit 209.

【図11】生成画像格納部206に格納されている生成
画像の各画素と、描画されるべきポリゴンと、そのポリ
ゴンに対してマッピングされるべきテクスチャの各画素
との対応関係を示す図である。
11 is a diagram showing a correspondence relationship between each pixel of a generated image stored in a generated image storage unit 206, a polygon to be drawn, and each pixel of a texture to be mapped to the polygon. FIG. .

【図12】注目画素44とその周辺画素43a〜43d
の配置の例を示す図である。
FIG. 12 is a target pixel 44 and its peripheral pixels 43a to 43d.
It is a figure which shows the example of arrangement | positioning.

【図13】テクスチャT0において参照アドレス(u
0,v0)の点を示す図である。
FIG. 13 shows a reference address (u
It is a figure which shows the point of 0, v0).

【図14】図13に示される参照アドレス(u0,v
0)の近傍を拡大した図である。
FIG. 14 is a diagram showing reference addresses (u0, v shown in FIG.
It is the figure which expanded the vicinity of 0).

【図15】アドレス生成部208の内部構成を示す図で
ある。
15 is a diagram showing an internal configuration of an address generator 208. FIG.

【図16】補間処理部204の内部構成を示す図であ
る。
16 is a diagram showing an internal configuration of an interpolation processing unit 204. FIG.

【図17】第2の原画像格納部209に格納されるテク
スチャの例を示す図である。
FIG. 17 is a diagram showing an example of textures stored in a second original image storage unit 209.

【図18】参照アドレスの近傍に位置する9個の画素を
用いて、内挿補間処理を行う場合における画素の配置を
示す図である。
FIG. 18 is a diagram showing an arrangement of pixels in the case of performing interpolation processing using nine pixels located near a reference address.

【図19】参照アドレスの近傍に位置する16個の画素
を用いて、内挿補間処理を行う場合における画素の配置
を示す図である。
FIG. 19 is a diagram showing an arrangement of pixels when performing interpolation processing using 16 pixels located near a reference address.

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

1 プロセッサ 2 メインメモリ 3 レンダリングプロセッサ 4 ピクセルメモリ 5 デジタルアナログコンバータ(DAC) 6 モニタ 7 システムバス 201 DDA係数演算部 202 マッピングアドレス生成部 203 画素値供給部 204 補間処理部 205 合成処理部 206 生成画像格納部 207 第1の原画像格納部 208 アドレス生成部 209 第2の原画像格納部 210 原画像格納制御部 1 Processor 2 Main Memory 3 Rendering Processor 4 Pixel Memory 5 Digital-to-Analog Converter (DAC) 6 Monitor 7 System Bus 201 DDA Coefficient Operation Unit 202 Mapping Address Generation Unit 203 Pixel Value Supply Unit 204 Interpolation Processing Unit 205 Synthesis Processing Unit 206 Generated Image Storage Part 207 First original image storage unit 208 Address generation unit 209 Second original image storage unit 210 Original image storage control unit

Claims (21)

【特許請求の範囲】[Claims] 【請求項1】 複数の画素を含むテクスチャを格納する
第1格納手段と、 該テクスチャに対する参照点の位置にかかわらず、該テ
クスチャに含まれる所定の数の画素に関連する情報を提
供する提供手段と、 該所定の数の画素に関連する情報に基づいて補間画素デ
ータを計算することにより、補間処理を実行する補間処
理手段とを備えた補間装置。
1. A first storage means for storing a texture including a plurality of pixels, and a providing means for providing information relating to a predetermined number of pixels included in the texture regardless of the position of a reference point with respect to the texture. And an interpolation processing unit that executes interpolation processing by calculating interpolation pixel data based on information related to the predetermined number of pixels.
【請求項2】 前記提供手段は、 前記第1格納手段に格納されているテクスチャから、処
理の対象となる第1テクスチャより少なくとも周囲1画
素だけ大きい第2テクスチャを切り出す切り出し手段
と、 該第2テクスチャを格納する第2格納手段と、 該第1テクスチャに対する参照点の位置に応じて、該第
2格納手段に格納されている第2テクスチャの画素にア
クセスするためのアドレスを生成するアドレス生成手段
とを備えている、請求項1に記載の補間装置。
2. The cutting means for cutting out, from the texture stored in the first storage means, a second texture that is larger than the first texture to be processed by at least one peripheral pixel. Second storage means for storing a texture, and address generation means for generating an address for accessing a pixel of the second texture stored in the second storage means according to a position of a reference point with respect to the first texture. The interpolating device according to claim 1, comprising:
【請求項3】 前記第2テクスチャは、トーラスを形成
するように切り出される、請求項2に記載の補間装置。
3. The interpolation device according to claim 2, wherein the second texture is cut out so as to form a torus.
【請求項4】 前記提供手段は、 前記第1格納手段に格納されているテクスチャのうち少
なくとも一部を含む第1テクスチャを、該第1テクスチ
ャより少なくとも周囲1画素だけ大きい第2テクスチャ
に変換するテクスチャ変換手段と、 該第2テクスチャを格納する第2格納手段と、 該第1テクスチャに対する参照点の位置に応じて、該第
2格納手段に格納されている第2テクスチャの画素にア
クセスするためのアドレスを生成するアドレス生成手段
とを備えている、請求項1に記載の補間装置。
4. The providing means converts a first texture including at least a part of the textures stored in the first storage means into a second texture which is larger than the first texture by at least one peripheral pixel. Texture conversion means, second storage means for storing the second texture, and for accessing the pixels of the second texture stored in the second storage means according to the position of the reference point with respect to the first texture The interpolating device according to claim 1, further comprising an address generating unit that generates the address.
【請求項5】 前記テクスチャ変換手段は、 前記第1テクスチャの境界部分の画素を、前記第1テク
スチャの周囲に複写する手段を備えている、請求項4に
記載の補間装置。
5. The interpolating device according to claim 4, wherein the texture conversion means includes means for copying pixels at a boundary portion of the first texture around the first texture.
【請求項6】 前記テクスチャ変換手段は、 前記第1テクスチャの周囲に所定の固定値を挿入する手
段を備えている、請求項4に記載の補間装置。
6. The interpolation device according to claim 4, wherein the texture conversion means includes means for inserting a predetermined fixed value around the first texture.
【請求項7】 前記処理の固定値は、黒色を表す値であ
る、請求項6に記載の補間装置。
7. The interpolation device according to claim 6, wherein the fixed value of the processing is a value representing black.
【請求項8】 前記処理の固定値は、描画対象の背景色
を表す値である、請求項6に記載の補間装置。
8. The interpolation device according to claim 6, wherein the fixed value of the processing is a value representing a background color of a drawing target.
【請求項9】 前記提供手段は、 前記第1格納手段に格納されているテクスチャのうち少
なくとも一部を含む第1テクスチャを格納する第2格納
手段と、 該第1テクスチャを該第2格納手段に転送する転送手段
と、 該第1テクスチャに対する参照点の位置に応じて、該第
2格納手段に格納されている第1テクスチャの画素にア
クセスするためのアドレスを生成するアドレス生成手段
とを備えている、請求項1に記載の補間装置。
9. The providing means includes a second storage means for storing a first texture including at least a part of the textures stored in the first storage means, and the first texture for the second storage means. Transfer means for transferring to the first texture, and address generation means for generating an address for accessing a pixel of the first texture stored in the second storage means according to the position of the reference point with respect to the first texture. The interpolation device according to claim 1, wherein
【請求項10】 前記提供手段と補間処理手段とは第1
のチップ上に形成され、前記第1格納手段は該第1のチ
ップとは異なる第2のチップ上に形成される、請求項1
に記載の補間装置。
10. The first providing means and the interpolation processing means
2. The first storage means is formed on a second chip different from the first chip, and the first storage means is formed on a second chip different from the first chip.
The interpolating device according to.
【請求項11】 前記第2格納手段は、前記第1格納手
段よりも高速に動作するメモリである、請求項2、4、
9に記載の補間装置。
11. The second storage means is a memory that operates faster than the first storage means, 2.
9. The interpolation device according to item 9.
【請求項12】 複数の画素を含むテクスチャに対する
参照点の位置にかかわらず、該テクスチャに含まれる所
定の数の画素に関連する情報を提供するステップと、 該所定の数の画素に関連する情報に基づいて補間画素デ
ータを計算することにより、補間処理を実行するステッ
プとを包含する補間方法。
12. A step of providing information related to a predetermined number of pixels included in the texture regardless of the position of a reference point with respect to the texture including a plurality of pixels, and information related to the predetermined number of pixels. Performing interpolation processing by calculating interpolation pixel data based on the above.
【請求項13】 前記情報を提供するステップは、 前記テクスチャから、処理の対象となる第1テクスチャ
より少なくとも周囲1画素だけ大きい第2テクスチャを
切り出すステップと、 該第1テクスチャに対する参照点の位置に応じて、該第
2テクスチャの画素にアクセスするためのアドレスを生
成するステップとを包含する、請求項12に記載の補間
方法。
13. The step of providing the information comprises the step of cutting out from the texture a second texture that is larger than the first texture to be processed by at least one peripheral pixel, and at the position of a reference point with respect to the first texture. Responsively, generating an address for accessing a pixel of the second texture.
【請求項14】 前記第2テクスチャは、トーラスを形
成するように切り出される、請求項13に記載の補間方
法。
14. The interpolation method according to claim 13, wherein the second texture is cut out so as to form a torus.
【請求項15】 前記情報を提供するステップは、 前記テクスチャのうち少なくとも一部を含む第1テクス
チャを、該第1テクスチャより少なくとも周囲1画素だ
け大きい第2テクスチャに変換するステップと、 該第1テクスチャに対する参照点の位置に応じて、該第
2テクスチャの画素にアクセスするためのアドレスを生
成するステップとを包含する、請求項12に記載の補間
方法。
15. The step of providing the information comprises: converting a first texture including at least a part of the texture into a second texture that is larger than the first texture by at least one peripheral pixel. 13. The interpolation method according to claim 12, further comprising the step of generating an address for accessing a pixel of the second texture according to a position of a reference point with respect to the texture.
【請求項16】 前記変換ステップは、 前記第1テクスチャの境界部分の画素を、前記第1テク
スチャの周囲に複写するステップを包含する、請求項1
5に記載の補間方法。
16. The conversion step includes a step of copying pixels of a boundary portion of the first texture around the first texture.
The interpolation method according to item 5.
【請求項17】 前記変換ステップは、 前記第1テクスチャの周囲に所定の固定値を挿入するス
テップを包含する、請求項15に記載の補間方法。
17. The interpolation method according to claim 15, wherein the converting step includes a step of inserting a predetermined fixed value around the first texture.
【請求項18】 前記処理の固定値は、黒色を表す値で
ある、請求項17に記載の補間方法。
18. The interpolation method according to claim 17, wherein the fixed value of the processing is a value representing black.
【請求項19】 前記処理の固定値は、描画対象の背景
色を表す値である、請求項17に記載の補間方法。
19. The interpolation method according to claim 17, wherein the fixed value of the processing is a value representing a background color of a drawing target.
【請求項20】 前記情報を提供するステップは、 前記テクスチャのうち少なくとも一部を含む第1テクス
チャに対する参照点の位置に応じて、該第1テクスチャ
の画素にアクセスするためのアドレスを生成するステッ
プを包含する、請求項12に記載の補間方法。
20. The step of providing the information includes the step of generating an address for accessing a pixel of the first texture according to a position of a reference point with respect to a first texture including at least a part of the texture. The interpolation method according to claim 12, which comprises:
【請求項21】 テクスチャをポリゴンにマッピングす
ることにより、画像を生成する画像生成装置であって、 複数の画素を含むテクスチャを格納する手段と、 ポリゴン平面上の点の座標をテクスチャ平面上の点の座
標に変換する手段と、 該テクスチャ平面上の点の座標の値にかかわらず、該テ
クスチャに含まれる所定の数の画素に関連する情報を提
供する手段と、 該所定の数の画素に関連する情報に基づいて補間画素デ
ータを計算することにより、補間処理を実行する手段
と、 該補間画素データに基づいて、画像を生成する手段とを
備えた画像生成装置。
21. An image generating apparatus for generating an image by mapping a texture onto a polygon, comprising means for storing a texture including a plurality of pixels, and coordinates of a point on the polygon plane to a point on the texture plane. Associated with the predetermined number of pixels, and means for providing information related to the predetermined number of pixels included in the texture, regardless of the coordinate values of the points on the texture plane. An image generation apparatus including means for executing interpolation processing by calculating interpolated pixel data based on the information described above, and means for generating an image based on the interpolated pixel data.
JP7304870A 1994-11-25 1995-11-22 Interpolation device, interpolation method, and image generation device Expired - Fee Related JP3071387B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP7304870A JP3071387B2 (en) 1994-11-25 1995-11-22 Interpolation device, interpolation method, and image generation device

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP29104394 1994-11-25
JP6-291043 1994-11-25
JP7304870A JP3071387B2 (en) 1994-11-25 1995-11-22 Interpolation device, interpolation method, and image generation device

Publications (2)

Publication Number Publication Date
JPH08212357A true JPH08212357A (en) 1996-08-20
JP3071387B2 JP3071387B2 (en) 2000-07-31

Family

ID=26558366

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7304870A Expired - Fee Related JP3071387B2 (en) 1994-11-25 1995-11-22 Interpolation device, interpolation method, and image generation device

Country Status (1)

Country Link
JP (1) JP3071387B2 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1032883A4 (en) * 1997-11-21 2004-04-28 Acuity Imaging Llc Data resampler for data processing system
US7405735B2 (en) 2004-05-19 2008-07-29 Sony Computer Entertainment Inc. Texture unit, image rendering apparatus and texel transfer method for transferring texels in a batch
JP2012068905A (en) * 2010-09-24 2012-04-05 Seiko Epson Corp Image processing apparatus, image processing method, and display device

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03138779A (en) * 1989-10-25 1991-06-13 Daikin Ind Ltd Method and device for texture mapping
JPH05120439A (en) * 1991-10-25 1993-05-18 Hitachi Ltd Lattice point calculation method and texturing method
JPH05303648A (en) * 1992-04-24 1993-11-16 Mitsubishi Precision Co Ltd Simulated visual range generating device
JPH06251165A (en) * 1993-02-25 1994-09-09 Toshiba Corp Image processing device
JPH06309472A (en) * 1993-04-23 1994-11-04 Mitsubishi Precision Co Ltd Method and device for texture mapping
JPH06348857A (en) * 1993-06-04 1994-12-22 Toshiba Corp Graphic plotting processor

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03138779A (en) * 1989-10-25 1991-06-13 Daikin Ind Ltd Method and device for texture mapping
JPH05120439A (en) * 1991-10-25 1993-05-18 Hitachi Ltd Lattice point calculation method and texturing method
JPH05303648A (en) * 1992-04-24 1993-11-16 Mitsubishi Precision Co Ltd Simulated visual range generating device
JPH06251165A (en) * 1993-02-25 1994-09-09 Toshiba Corp Image processing device
JPH06309472A (en) * 1993-04-23 1994-11-04 Mitsubishi Precision Co Ltd Method and device for texture mapping
JPH06348857A (en) * 1993-06-04 1994-12-22 Toshiba Corp Graphic plotting processor

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1032883A4 (en) * 1997-11-21 2004-04-28 Acuity Imaging Llc Data resampler for data processing system
US7405735B2 (en) 2004-05-19 2008-07-29 Sony Computer Entertainment Inc. Texture unit, image rendering apparatus and texel transfer method for transferring texels in a batch
JP2012068905A (en) * 2010-09-24 2012-04-05 Seiko Epson Corp Image processing apparatus, image processing method, and display device

Also Published As

Publication number Publication date
JP3071387B2 (en) 2000-07-31

Similar Documents

Publication Publication Date Title
US5940091A (en) Three-dimensional graphic drawing apparatus wherein the CPU and the three-dimensional drawing mechanism access memory via a memory control unit
JP3203160B2 (en) Volume rendering apparatus and method
US6356269B1 (en) Image processing device and system using the same
JP3466661B2 (en) Image processing apparatus and method
US6292192B1 (en) System and method for the direct rendering of curve bounded objects
JP3081774B2 (en) Texture pattern memory circuit
JPH1186007A (en) Method for finding rate of pixel covered with primitive
JPH05307610A (en) Texture mapping method and its device
WO2000002165A1 (en) Method for generating polygon data and image display using the same
JPS6158083A (en) High speed memory system, data processing method and memory segment
JPH07120433B2 (en) Method and apparatus for rendering a trimmed parametric surface
JPH03212775A (en) Method and apparatus for drawing antialias polygon
JP4355697B2 (en) Graphic model generation method and graphic model generation apparatus
JPH0927045A (en) Image processor
JP2002042159A (en) Antialiasing method in computer graphic system
KR100277803B1 (en) 3D graphic display
US5889526A (en) Interpolation apparatus and method, and image generation apparatus including such an apparatus
JP2002537613A (en) Graphics system having a supersampling sample buffer and generating output pixels using selective filter adjustments to achieve a display effect
JPH1049666A (en) Fragment generator and fragment generating method
JP3071387B2 (en) Interpolation device, interpolation method, and image generation device
JP2005332195A (en) Texture unit, image drawing apparatus, and texel transfer method
JPH01131976A (en) Texture mapping device and method
US6816162B2 (en) Data management to enable video rate anti-aliasing convolution
JPH0481231B2 (en)
US6985153B2 (en) Sample request mechanism for supplying a filtering engine

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 19991122

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20000509

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

Free format text: PAYMENT UNTIL: 20090526

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20100526

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20110526

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20110526

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20120526

Year of fee payment: 12

LAPS Cancellation because of no payment of annual fees