JP2000285256A - 3次元画像処理装置 - Google Patents

3次元画像処理装置

Info

Publication number
JP2000285256A
JP2000285256A JP9340699A JP9340699A JP2000285256A JP 2000285256 A JP2000285256 A JP 2000285256A JP 9340699 A JP9340699 A JP 9340699A JP 9340699 A JP9340699 A JP 9340699A JP 2000285256 A JP2000285256 A JP 2000285256A
Authority
JP
Japan
Prior art keywords
pixel
polygon
color
value
sub
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
JP9340699A
Other languages
English (en)
Other versions
JP3556517B2 (ja
Inventor
Takeshi 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.)
Sharp Corp
Original Assignee
Sharp Corp
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 Sharp Corp filed Critical Sharp Corp
Priority to JP9340699A priority Critical patent/JP3556517B2/ja
Publication of JP2000285256A publication Critical patent/JP2000285256A/ja
Application granted granted Critical
Publication of JP3556517B2 publication Critical patent/JP3556517B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】 アルファブレンディングやアンチエリアシン
グ等の高画質なレンダリング処理を軽い負荷で、且つ高
速で行うことができる3次元画像処理装置を提供するこ
とである。 【解決手段】 内分値発生器105は、ポリゴン・キャ
シュ104から出力された頂点座標112およびディス
プレイ・コントローラ107から出力された画面座標1
19を与えられ、内分値113をレンダラ106に対し
出力する。レンダラ106は、内分値113およびレン
ダリング・パラメータ114から、各サブピクセルの色
データ値115および各サブピクセルのブレンディング
モード125を生成し、合成器123に対し出力する。
合成器123は、レンダラ106からピクセルの分割数
個の各サブピクセルの色データ値115を入力し、合成
を行ない合成色データ値121を出力する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、ポリゴン画像を用
いて画面上に立体的に映像を表示する3次元画像処理装
置に係り、特にポリゴンやテクスチャのデータ(色や表
面の模様)を表示するための3次元画像処理装置に関す
る。
【0002】
【従来の技術】<従来技術1>ビットマップ・ディスプ
レイ装置である従来のパソコンの表示装置の構成を図2
2に示す。CPU701が表示する文字コードをVRA
M702と呼ばれるメモリ装置に書き込む。また、この
文字コードに対応するイメージデータをさらにグラフィ
ックVRAM703に書き込む。このイメージデータが
ディスプレイ・コントローラ704からの水平垂直信号
に同期して読み出され、ビデオ信号に変換されディスプ
レイ705上に表示される。
【0003】<従来技術2>グラフィックス・ディスプ
レイ装置である従来のグラフィックス・ディスプレイ装
置の構成を図23に示す。この装置は、CPU801、
テクスチャデータを記憶するテクスチャ・メモリ80
2、ポリゴン・マッピング処理回路803、および1画
面分のフレームメモリ804からなり、フレームメモリ
804の内容をディスプレイ・コントローラ805に読
み出し、ディスプレイ806へ順次出力するようにした
ものである。この処理装置では、CPU801は各ポリ
ゴンを定義するデータとアプリケーションソフトやオペ
レーターの操作に応じて得られる操作データとを用い
て、モデリング変換や投影変換等を実行し、ポリゴン画
像を形成すべく順次所要のポリゴンに対応する変換後の
データを、ポリゴン・マッピング処理回路803へ出力
する。ポリゴン・マッピング処理回路803は、入力さ
れるポリゴンのデータに対応するテクスチャをデータメ
モリ802から取り込み、各ポリゴンにテクスチャを付
しながら、隠面処理を逐次施して、その結果をフレーム
メモリ804に出力する。ポリゴン・マッピング処理回
路803で生成されたポリゴン画像は、フレーム画とし
てフレームメモリ804に書き込まれ、所要の速度でデ
ィスプレイ806に繰り返し読み出されて、静止画とし
て表示される。
【0004】<従来技術3>従来のVRAM型3次元画
像表示装置の構成を図24に示す。この装置はCPU9
01、座標変換およびポリゴン・コードの描画を行なう
座標変換装置902、ポリゴン・コードを保存するポリ
ゴン・コードメモリ903、3頂点ポリゴンの各頂点座
標とレンダリング・パラメータを記憶するポリゴンキャ
シュ904、3頂点ポリゴンの各頂点座標と画面座標か
ら画面に表示されるべきポリゴン面上の1点を求める内
分値発生器905、内分値と3頂点ポリゴンの各頂点の
レンダリング・パラメータから内分値が示すポリゴン面
上の1点におけるレンダリング・パラメータを求め、レ
ンダリング・パラメータから表示する画素の色を求める
レンダラ906、及びディスプレイ・コントローラ90
7からなる。この処理装置では、描画側、表示側の2つ
の処理がある。
【0005】まず描画処理について説明する。CPU9
01は、ユーザの操作に従って、表示すべき三角形ポリ
ゴンの3つの描画頂点座標917およびポリゴン・コー
ド911を生成し、座標変換回路902に出力する。ま
た、各頂点に対し1組ずつ計3組のレンダリング・パラ
メータ909をポリゴン・キャシュ904に対し出力す
る。座標変換回路902には、4×4の座標変換マトリ
クス916と、三角形ポリゴンの各描画頂点座標(x,
y,z,1)が入力される。4×4の座標変換マトリク
ス916を頂点座標に左からかけて、3つの(x,y,
z)を生成する。この3つの(x,y,z)を頂点座標
910としてポリゴン・キャシュ904に対し出力す
る。
【0006】ポリゴン・コード911は、ポリゴンの通
し番号である。最初のポリゴンのポリゴン・コード91
1は1、次のポリゴンのポリゴン・コード911は2と
なる。1フレームのポリゴン数を最大16383とした
場合、ポリゴン・コード911は14bitの整数であ
る。色は通常RGB各bitの計24bitで表わされ
る。通常ポリゴン・コードの方が色より少ないbit数
で表わすことができる。ポリゴン・キャシュ904は、
ポリゴン・コード911の最大値数個のエントリを持つ
バッファが2つで構成される。座標変換回路902から
出力されるポリゴン・コード911の示す位置(エント
リ)に頂点座標910とレンダリング・パラメータ90
9が格納される。
【0007】座標変換回路902は、画面アドレス91
8を生成し、この値で示されるポリゴン・コード・メモ
リ903のエントリにポリゴン・コード911を書き込
む。ポリゴン・コード・メモリ903は、ポリゴン・コ
ード911を格納する(画面の横ピクセル数)×(画面
の縦ピクセル数)のエントリを持った2つのメモリで構
成される。座標変換回路902からアドレスとして出力
されるポリゴン・コード911の示す位置(エントリ)
に頂点座標910とレンダリング・パラメータ909が
格納される。
【0008】描画を行ないながら表示を行なうため、ポ
リゴン・コード・メモリ903は、画面のピクセル数の
容量を持つ2つのメモリで構成される。一方のメモリを
描画側で使用する間はもう一方のメモリを表示側に使用
する。同様にポリゴン・キャシュ904も2つで構成さ
れ、一方を描画側で使用している時は、一方を表示側で
使用する。1画面分の表示に必要なポリゴン処理を行
い、ポリゴン・コード・メモリ9303やポリゴン・キ
ャシュ904への書き込みが完了した時点で、CPU9
01は制御信号921を用いて、ポリゴン・コード・メ
モリ903とポリゴン・キャシュ904の描画側と表示
側に入れ変える。この処理をスワップ・バッファ処理と
呼び、これによって書き込みが完了したデータを表示側
の回路から参照できるようになる。
【0009】以降表示側の処理を説明する。ディスプレ
イの水平垂直走査に同期してディスプレイ・コントロー
ラ907は画面座標919を生成する。ポリゴン・コー
ド・メモリ903は画面座標919で示される位置に保
存されているポリゴン・コード911をポリゴン・キャ
シュ904に対し出力する。ポリゴン・キャシュ904
は、ポリゴン・コード911で示される位置に保存され
ている3頂点分の頂点座標912およびレンダリング・
パラメータ914を出力する。内分値発生器905は画
面座標919と3つの頂点座標912を入力する。内分
値発生器905は、画面座標919で示される画面位置
に投影される3つの頂点座標912で定義されたポリゴ
ン面上の位置を算出する。レンダラ906には、内分値
913と3組のレンダリング・パラメータ914が入力
される。レンダラ906は3組のレンダリング・パラメ
ータ914を補間し、内分値913が示す位置における
色データ値915を算出する。ディスプレイ・コントロ
ーラ907はレンダラ906から色データ値915を入
力し、画像信号920に変換し、ディスプレイ908に
対し出力する。以上が画面上の1ピクセルの表示処理で
ある。この処理をディスプレイ908の画素数分繰り返
し1画面の表示処理が終了する。
【0010】
【発明が解決しようとする課題】従来技術1は、ディス
プレイの水平垂直信号に同期して画素生成処理を行なう
ため、処理が非常に軽いという特徴がある。しかし、四
角い図形しか表示できないために、従来技術1の発明で
は3次元グラフィクスが表示できないという欠点があっ
た。
【0011】従来技術2は、3次元グラフィクスを表示
する機能を有しているという特徴がある。しかし、ポリ
ゴン毎に表示処理を行なうため、画面の塗り重ねが多発
し、画素生成処理が非常に重くなるという欠点があっ
た。
【0012】従来技術3は、色ではなくコードを描画す
るので、VRAMへの書き込み処理が軽減される。また
ディスプレイの水平垂直信号に同期してマッピング等の
レンダリング処理を行なうので、レンダリング処理が非
常に軽い。また、座標変換後の3頂点の座標データおよ
びレンダリングパラメータをそのままポリゴンキャシュ
に記憶するためキャシュ処理の負荷が軽いという特徴が
ある。
【0013】さて、高画質な画像を生成するには、アル
ファブレンディングが有効である。アルファブレンディ
ングは半透明な物体を描画する技術である。アルファブ
レンディングは通常、以下の方法で行われる。物体を視
点から遠い順に描画する。半透明の物体の書き込みの
際、フレームバッファにすでに書き込まれた色とこれか
ら書き込む色とを平均する。これによって背景物の色が
半透明物体を透過している様子が描画できる。
【0014】ところが、従来技術3のようにコードを描
画する方式では、フレームバッファに対し色でなくコー
ドを描画する。このため、背景物のコードしか取り出す
ことができない。このため、アルファブレンディングを
実現することができなかった。
【0015】また高画質な画像を生成するには、精密な
形状データを使用することが有効である。形状が精密に
なればなるほど、形状の凹凸の周波数が高くなる傾向に
ある。この高い周波数が、表示デバイスの表現しうる周
波数を越えた場合、エリアシングが発生する。エリアシ
ングによって発生する不規則な点滅や、モアレ等のノイ
ズは画質向上の為には最小限に押える必要がある。この
画質向上技術をアンチエリアシングと呼ぶ。その代表的
手法がオーバーサンプリングである。オーバーサンプリ
ングは表示デバイスよりも高い解像度で処理を行い、そ
れを平均し縮小することでノイズを低減する手法であ
る。通常オーバーサンプリングはピクセル毎に行われ
る。物体を描く際、各サブピクセルの位置に物体のどの
部分を描くべきか各々算出する。この各々のピクセルの
色を平均し、ピクセルの色を求める。これをフレームバ
ッファに描画する。
【0016】ところが上述のようにコードを描画する方
式では、フレームバッファに対し色でなくコードを描画
する。このため、サブピクセルの色をフレームバッファ
への書き込み前に決定することができない。このため、
アンチエリアシングを実現することができなかった。こ
のように、従来技術3は、コードを描画するため、アル
ファブレンディングやアンチエリアシングなどの高画質
なレンダリング処理ができないという欠点があった。
【0017】以上のように、これまでのグラフィックス
装置は、高画質な3次元グラフィックスを軽い処理で表
示することができなかった。
【0018】そこで、本発明の目的は、アルファブレン
ディングやアンチエリアシング等の高画質なレンダリン
グ処理を軽い負荷で、且つ高速で行うことができる3次
元画像処理装置を提供することである。
【0019】
【課題を解決するための手段】請求項1の発明は、ピク
セルを構成する各サブピクセルのポリゴン・コード、描
画頂点座標、及び座標変換マトリクスが与えられ、該描
画頂点座標と座標変換マトリクスにより座標変換した頂
点座標と、それに対応するサブピクセル画面アドレス及
びサブピクセル・ポリゴン・コードを出力する座標変換
手段と、前記サブピクセル画面アドレスの示す位置に対
応する前記サブピクセル・ポリゴン・コードの書き込み
を制御するディザ発生回路と、前記ディザ発生回路の指
示に基づいて、前記サブピクセル画面アドレスに前記サ
ブピクセル・ポリゴン・コードを格納するポリゴン・コ
ード・メモリと、前記ポリゴン・コード・メモリに格納
された前記サブピクセル・ポリゴン・コードをアドレス
とする位置に、頂点座標及びレンダリング・パラメータ
を格納するポリゴン・キャシュと、前記頂点座標に基づ
いて、表示する画面座標のポリゴン内分値を求める内分
値発生手段と、前記ポリゴン内分値によって頂点座標に
対応するレンダリング・パラメータを補間して、前記画
面座標の色データ値とブレンディングモードを出力する
レンダラと、前記ブレンディングモードに基づいてアル
ファブレンディング処理を行い、各サブピクセルの色デ
ータ値を合成する合成手段と、を備えたことを特徴とす
る3次元画像処理装置である。
【0020】請求項2の発明は、請求項1記載の3次元
画像処理装置であって、前記ポリゴン・キャシュと内分
値発生手段とレンダラは、直列接続され、この直列接続
されたものが複数並列接続されていることを特徴とす
る。
【0021】請求項3の発明は、請求項1記載の3次元
画像処理装置であって、前記合成手段は、色データ値と
ブレンディングモードを1ピクセルごとにピクセル数だ
け入力し、各ピクセルの色データ値及びブレンディング
モードを利用して各色の重み付けを変化させ、加重平均
することにより合成することを特徴とする。
【0022】請求項4の発明は、請求項1記載の3次元
画像処理装置であって、前記合成手段は、色データ値と
ブレンディングモードを1ピクセルごとにピクセル数だ
け入力し、各ピクセルの色データ値及びブレンディング
モードを利用して入力した色とその直前に入力した色を
内分して合成することを特徴とする。
【0023】請求項5の発明は、請求項2記載の3次元
画像処理装置であって、前記合成手段は、各ピクセルの
色データ値とブレンディングモードを同時に入力し、各
ピクセルの色データ値及びブレンディングモードを利用
して各色の重み付けを変化させ、加重平均することによ
り合成することを特徴とする。
【0024】請求項6の発明は、請求項2記載の3次元
画像処理装置であって、前記合成手段は、各ピクセルの
色データ値とブレンディングモードを同時に入力し、前
記色データ値及びブレンディングモードを利用して入力
した色とその直前に入力した色を内分して合成すること
を特徴とする。
【0025】請求項7の発明は、請求項1又は2記載の
3次元画像処理装置であって、前記レンダラは、マテリ
アルデータを選択するアドレスであるマテリアルIDを
含むテクスチャ座標と頂点色からなるレンダリング・パ
ラメータを補間して内分値で示される位置のテクスチャ
座標値とマテリアルIDと色データ値を出力する補間手
段と、前記マテリアルIDから選択されたマテリアルデ
ータに基づいてブレンディング・モードとテクスチャ色
を選択するアドレスであるテクスチャIDを出力するマ
テリアル・メモリと、前記テクスチャ座標値で示される
位置の前記テクスチャIDに選択されたテクスチャ色を
出力するテクスチャ・メモリと、前記テクスチャ色と前
記色データ値を混合する混合手段と、からなることを特
徴とする。
【0026】請求項8の発明は、請求項7記載の3次元
画像処理装置であって、前記レンダラは、さらに、前記
サブピクセル・ポリゴン・コードにより、前記混合手段
からの色データを出力するか、サブピクセルの色データ
値に変換して出力するかを選択するセレクタを備えたこ
とを特徴とする。
【0027】
【発明の実施の形態】以下、本発明の実施の形態を図面
によって詳述する。
【0028】<実施形態1>以下、本発明に係る実施形
態1について説明する。図1は、本発明に係る3次元画
像形成装置の実施形態1を示すブロック図である。図1
に示す3次元画像形成装置は、CPU101、座標変換
回路102、ディザ回路126、ポリゴン・コード・メ
モリ103、ポリゴン・キャシュ104、内分値発生器
105、レンダラ106、合成器123、ディスプレイ
・コントローラ107からなる構成である。この3次元
画像形成装置で形成した3次元画像をディスプレイ10
8に表示する。本実施形態は、ポリゴン画像を構成する
ピクセルを、サブピクセルに分割して処理するものであ
り、通常はピクセルを2×2、3×3、4×4のサブピ
クセルに分割して処理する。本実施形態においては、サ
ブピクセルの分割は2×2とする。
【0029】CPU101は、サブピクセル・ポリゴン
・コード111および描画頂点座標117および座標変
換マトリクス116を座標変換回路102に対し出力す
る。同様に、サブピクセル・ポリゴン・コード111に
対応したレンダリング・パラメータ109をポリゴン・
キャシュ104に対し出力する。また、制御信号124
によってポリゴン・コード・メモリ103およびポリゴ
ン・キャシュ104を制御する。またディザデータ12
7をディザ回路426に対し出力する。ディザデータ
は、サブピクセルの書き込みの許可不許可を表す。
【0030】座標変換回路102は、入力された描画頂
点座標117を頂点座標110に座標変換し、該頂点座
標110をサブピクセル・ポリゴン・コード111でア
ドレスされるポリゴン・キャシュ104のエントリに書
き込む。また、サブピクセル画面アドレス118及びサ
ブピクセル・ポリゴン・コード111をディザ回路12
6に与える。
【0031】ディザ回路126は、サブピクセル画面ア
ドレス118にしたがってディザデータ127を確認評
価し、描画を行う場合はサブピクセルの位置をサブピク
セル画面アドレス118で与え、対応するサブピクセル
・ポリゴン・コード111をポリゴン・コード・メモリ
103に書き込む。画面座標119によって示されるポ
リゴン・コード・メモリ103の領域から各サブピクセ
ルのポリゴン・コード122がピクセルの分割個数の回
数だけ読み出され、ポリゴン・キャシュ104に送られ
る。
【0032】ポリゴン・キャシュ104には、座標変換
回路102から出力されたサブピクセル・ポリゴン・コ
ード111をアドレスとして与えられ、座標変換された
頂点座標110が書き込まれる。同時にCPU101か
らのレンダリング・パラメータ109も同じ領域に書き
込まれる。また、ポリゴン・コード・メモリ103から
各サブピクセルのポリゴン・コード122がアドレスと
してポリゴン・キャシュ104に出力され、ポリゴン・
キャシュ104からは、ポリゴン・コード122で示さ
れる領域に格納されている頂点座標110とレンダリン
グ・パラメータ109が読み出される。
【0033】内分値発生器105は、ポリゴン・キャシ
ュ104から出力された頂点座標112およびディスプ
レイ・コントローラ107から出力された画面座標11
9を与えられ、内分値113をレンダラ106に対し出
力する。レンダラ106は、内分値113およびレンダ
リング・パラメータ114から、各サブピクセルの色デ
ータ値115および各サブピクセルのブレンディングモ
ード125を生成し、合成器123に対し出力する。こ
こで、ブレンディングモードとは、物体の透明性に併せ
て処理をするモードである。合成器123は、レンダラ
106からピクセルの分割数個の各サブピクセルの色デ
ータ値115を入力し、合成を行ない合成色データ値1
21を出力する。ディスプレイコントローラ407は、
合成色ディスプレイ値421に従った画像信号420を
ディスプレイ408に対し出力しディスプレイ408が
その画像を表示する。
【0034】以下本発明の動作について説明する。本発
明の動作は描画側と表示側の2つの処理がある。描画側
は、ポリゴンの外形を生成する処理である。一方、表示
側は、ポリゴン面を構成するピクセルの色を決定し、デ
ィスプレイ108に表示する処理である。
【0035】始めに描画側の処理から説明する。CPU
101は、ユーザの操作に従って、表示すべき三角形ポ
リゴンの3つの描画頂点座標117およびサブピクセル
・ポリゴン・コード111を生成し、座標変換回路10
2に出力する。三角形ポリゴンの各描画頂点座標は
(x,y,z,1)の形で表される。また、各頂点に対
し1組ずつ計3組のレンダリング・パラメータ109を
ポリゴン・キャシュ104に対し出力する。座標変換回
路102は、4×4の座標変換マトリクス116をCP
U101から供給されて、この4×4のマトリクスを、
描画頂点座標に左からかけて、3つの(x,y,z)を
生成する。この3つの(x,y,z)を頂点座標110
としてポリゴン・キャシュ104に出力する。ポリゴン
・キャシュ104は、サブピクセル・ポリゴン・コード
111の最大値数個のエントリを持つバッファが2つで
構成される。座標変換回路102からアドレスとして出
力されるサブピクセル・ポリゴン・コード111の示す
位置(エントリ)に、頂点座標110とレンダリング・
パラメータ109が格納される。
【0036】次にポリゴンの外形を描画する。図2は画
面座標と3次元座標の関係を表している説明図である。
図2において、Z=1の平面が画面を構成し、画面の上
端が(1,1,1)または(−1,1,1)下端が
(1,−1,1)又は(−1,−1,1)である。3次
元座標上の点P0(X0,Y0,Z0)は、画面座標
(X0/Z0,Y0/Z0,1)に投影されることがわ
かる。同様に、点P1(X1,Y1,Z1)が、画面上
の座標(X1/Z1,Y1/Z1,1)に、点P2(X
2,Y2,Z2)が、画面上の座標(X2/Z2,Y2
/Z2,1)に、投影される。ポリゴンを描画すべき領
域は、−1≦Y/Z≦1と、−1≦X/Z≦1およびZ
=nearとZ=farとで囲まれる部分となる。ただ
しnearとfarとは任意の正の数とする。
【0037】この領域内のポリゴン面を構成する各サブ
ピクセルについて、図1の座標変換回路102は、サブ
ピクセル画面アドレス118とサブピクセル・ポリゴン
・コード111を生成し、ディザ回路126に出力す
る。本実施形態においては、サブピクセルの分割は2×
2なので、ポリゴン・コード・メモリ103は{(画面
の横ピクセル数)×2}×{(画面の縦ピクセル数)×
2}のサブピクセル・ポリゴン・コードの配列である。
【0038】本実施形態において、ディザデータ127
は、16サブピクセル×16サブピクセルに対する1ビ
ットのデータである。ディザデータ127の1ビットは
サブピクセルの書き込みの許可不許可を表す。1の時書
き込みは許可であり、0の時は不許可である。ディザデ
ータ127は画面の左上から画面いっぱいに繰り返しし
きつめられている。画面サイズが640×480の時、
サブピクセルは2×2であるので、サブピクセル数は1
280×960となる。したがって、ディザデータ12
7は、横に80回、縦に60回繰り返される。
【0039】ディザ回路126は、サブピクセル画面ア
ドレス118が入力されると、サブピクセル画面アドレ
ス118が示す位置のディザデータ127を調べる。こ
の値が1の時、サブピクセル画面アドレス118で示さ
れるポリゴン・コード・メモリ103のエントリにサブ
ピクセル・ポリゴン・コード111を書き込む。0の時
はデータを書き込まない。こうして隠面消去処理を行
う。
【0040】図3は、上記の処理を行なった後のポリゴ
ン・コード・メモリ103の状態を示す。151は、デ
ィザデータに基づいて、ポリゴン・コード・メモリ10
3に記憶されたサブピクセル・ポリゴン・コードのID
=1のポリゴンである。同様に152,153は、サブ
ピクセル・ポリゴン・コードのID=2,D=3のポリ
ゴン7である。ポリゴン・コードのID=1,2,3を
持つ3つの三角形ポリゴンをポリゴン・コード・メモリ
103に順に書き込んだ結果、3次元的に投影処理され
た3つの三角形がポリゴン・コード・メモリ103上に
保存されていることがわかる。また、ディザの結果ID
=1,2のポリゴン151,152がID=3のポリゴ
ン153の上に描画されていることがわかる。
【0041】図4は、上記の処理を行なった後のポリゴ
ン・キャシュ104の状態を示す。ID1,2,3の3
つの三角形ポリゴンの頂点座標110およびレンダリン
グ・パラメータ109がID番目の位置に保存されてい
ることがわかる。描画を行ないながら表示を行なうた
め、ポリゴン・コード・メモリ103は、画面のピクセ
ル数の容量を持つ2つのメモリで構成される。一方のメ
モリを描画側で使用する間は、他方のメモリを表示側に
使用する。同様にポリゴン・キャシュ104も2つで構
成され、一方を描画側で使用している時は、他方を表示
側で使用する。1画面分の表示に必要なポリゴン処理を
行い、ポリゴン・コード・メモリ103やポリゴン・キ
ャシュ104への書き込みが完了した時点で、CPU1
01は制御信号124を用いて、ポリゴン・コード・メ
モリ103とポリゴン・キャシュ104の描画側と表示
側を入れ変える。この処理をスワップバッファ処理と呼
び、これによって書き込みが完了したデータを表示側の
回路から参照できるようになる。
【0042】次に表示側の処理を説明する。図1で示す
本実施形態は、1ピクセルを2×2のサブピクセルに分
割する例であるので、合成器127は4つのサブピクセ
ル色を合成する。サブピクセル色の合成数は通常4、
9、16が使用される。ディスプレイ・コントローラ1
07は、画面のすべてのピクセルを横方向に走査するよ
うに、画面座標を生成する。ディスプレイ・コントロー
ラ107は1ピクセルについて4つのサブピクセルの画
面座標を生成する。
【0043】各々の画面座標について以下の処理を実行
する。ポリゴン・コード・メモリ103は画面座標11
9で示される位置に保存されているサブピクセル・ポリ
ゴン・コード122をポリゴン・キャシュ104に対し
出力する。ポリゴン・キャシュ104は、サブピクセル
・ポリゴン・コード122で示される位置に保存されて
いる3頂点分の頂点座標112およびレンダリング・パ
ラメータ114を出力する。
【0044】内分値発生器105には、画面座標119
と3つの頂点座標112が入力される。内分値発生器1
05は、画面座標119で示される画面位置に投影され
る3つの頂点座標112で定義されたポリゴン面の位置
を算出する。算出のアルゴリズムは、視点と画面座標を
結ぶ水平平面と垂直平面でポリゴンを切断する方式を用
いる。算出した点の位置は、3つの頂点座標112の内
分値113で表される。
【0045】図5は、実施形態1における内分値413
の説明図である。図5において、ポリゴンは3頂点AB
Cで構成されている。内分値113は頂点順序および内
分比で構成される。内分比は3つの数字である。また、
頂点順序は3つの頂点の並べ変えの順序を表す1つの数
字である。例えば、ABC,ACB,BAC,BCA,
CAB,CBAの各頂点順序を各々1,2,3,4,
5,6の数字で表す。図5に示す頂点順序は1であり、
内分比が各々α、β、γである。この時、ABをα:1
−αで内分した点をPとし、ACをβ:1−βで内分し
た点をQとする。この2点PQをγ:1−γで内分した
点をRとする。この点Rの位置が内分値413によって
表される位置である。頂点順序が2の時は、BとCを入
れ変えて同じ操作を実行する。
【0046】レンダラ106には、内分値113とポリ
ゴン・キャシュ104から3組のレンダリング・パラメ
ータ114が入力される。レンダラ106は3組のレン
ダリング・パラメータ114を補間し、内分値113が
示す位置における色データ値115を算出する。図6
は、レンダリング・パラメータ410のうちs0,s
1,s2の補間の様子を示している。
【0047】図6において、ポリゴンは3頂点ABCで
構成されている。今、頂点A、B、Cに対するレンダリ
ング・パラメータ114を各々(s0,t0,r0),
(s1,t1,r1),(s2,t2,r2)とし、頂
点順序が1、内分比をα、β、γとする。点Rのレンダ
リング・パラメータを(s,t,r)として、これらを
頂点のレンダリング・パラメータから求める。まず、s
を求める。ABのレンダリング・パラメータのs0,s
1をα:1−αで内分した値をsaとし、ACのレンダ
リング・パラメータのs0,s2をβ:1−βで内分し
た値をsbとする。この2つの値sa、sbをγ:1−
γで内分した値をsとする。このsが内分値113で示
される位置Rにおけるレンダリング・パラメータsの値
である。レンダラ106は同様にR位置における残りの
パラメータt、rについても求める。レンダリング・パ
ラメータ110はユーザーが各頂点毎に指定する1組の
数字である。通常は頂点色、3次元テクスチャ座標、テ
クスチャIDを使用する。
【0048】図7は、レンダラ106の一例を示すブロ
ック図である。図7のレンダラは、レンダリング・パラ
メータ114が頂点色205とテクスチャ座標(s,
t,r,ID)204とブレンディングモード211で
構成される場合を示す。本実施形態において、テクスチ
ャ座標は3次元の座標値(s,t,r)及びテクスチャ
の種類を選択するテクスチャIDで構成される。テクス
チャIDはテクスチャの種類を選択するためのアドレス
であり、3次元の座標値(s,t,r)はテクスチャI
Dによつて選択されるテクスチャ内の一点を表すアドレ
スである。
【0049】補間器201は、内分値113および3頂
点のテクスチャ座標204を入力し、s,t,r,ID
の4つのパラメータについて補間を行ない、内分値11
3で示される位置Rのテクスチャ座標(s,t,r)2
07およびテクスチャID206をテクスチャ・メモリ
202に対し出力する。またテクスチャ座標207と同
様の方法で3つの頂点色205を補間し、色データ値2
09を生成し、ミキサ203に対し出力する。また3頂
点のブレンディングモード125を補間し、ブレンディ
ングモード211を生成し、各サブピクセルのブレンデ
ィングモード125として合成器123に対し出力す
る。
【0050】テクスチャ・メモリ202は、ポリゴンに
張り付けるテクスチャイメージを格納する。テクスチャ
・メモリ202には補間器201からテクスチャID2
06とテクスチャ座標207が入力され、テクスチャI
D206とテクスチャ座標207で示される位置のテク
スチャ色208をミキサ203に対し出力する。ミキサ
203は、補間器201からの色データ値209とテク
スチャ色208とを合成し、ミキサ色を生成し、各サブ
ピクセルの色データ値115として合成器123に対し
出力する。
【0051】図8は、レンダラ106の他の例を示すブ
ロック図である。レンダラ106の入力レンダリング・
パラメータが頂点色225およびテクスチャ座標(s,
t,r,MID)の場合の実施例である。図8のレンダ
ラにおいて、テクスチャ座標は3次元の座標値(s,
t,r)及びマテリアルの種類を選択するマテリアルI
Dで構成される。マテリアルID(MID)はマテリア
ルの種類を選択するアドレスである。マテリアルとは、
ポリゴンの材質のことであり、材質の特性は通常、テク
スチャ、透明度、反射特性等のデータで表現される。こ
れら1つのマテリアルを表現する一連のデータを1組と
して、マテリアルデータと呼ぶ。マテリアルメモリ23
2は、このマテリアルデータを複数格納する。マテリア
ルID231はマテリアルメモリ232に格納される複
数のマテリアルデータから1つを選択するアドレスであ
る。
【0052】ここで、マテリアルメモリ232に格納す
るマテリアルデータは、テクスチャIDとブレンディン
グモードで構成される。テクスチャIDは、テクスチャ
の種類を選択するためのアドレスであり、3次元の座標
値(s,t,r)はテクスチャIDによって選択される
テクスチャ内の一点を表すアドレスである。
【0053】補間器221は、内分値113および3頂
点のテクスチャ座標224を入力し、4つのパラメータ
(s,t,r,MID)について補間を行ない、内分値
113で示される位置のテクスチャ座標値(s,t,
r)227をテクスチャ・メモリ222に対して出力す
る。また内分値113で示される位置のマテリアルID
231をマテリアルメモリ232に対し出力する。
【0054】また3つの頂点色225を入力し、補間を
行ない、内分値113で示される位置の色データ値22
9をミキサ223に対し出力する。マテリアルメモリ2
32はマテリアルID231によって選択されるマテリ
アルデータを出力する。マテリアルデータのうちブレン
ディングモード125は各サブピクセルのブレンディン
グモードとして合成器123に出力される。またテクス
チャID226はテクスチャ・メモリ222に対し出力
される。
【0055】テクスチャ・メモリ222は、ポリゴンに
貼りつけるテクスチャ・イメージを格納する。テクスチ
ャ・メモリ222は、補間器221からテクスチャ座標
227とマテリアルメモリ232からテクスチャID2
26をアドレスとして入力され、テクスチャID226
とテクスチャ座標227で示される位置のテクスチャ色
228をミキサ223に対し出力する。ミキサ223
は、補間器221からの色データ値229とテクスチャ
色228とを合成し、ミキサ色を生成し、各サブピクセ
ルの色データ値として合成器123に対し出力する。
【0056】最後に合成器123について説明する。図
9は、合成器123の一例を示すブロック図である。こ
の合成器123は、積算器301とシフタ302とアキ
ュームレータ303からなり、各3つずつ配置された構
造である。この合成器に、各サブピクセルのブレンディ
ングモード125が2ビットのデータとして入力され
る。上位1ビットは積算器301のon/offを切替
える。下位1ビットはシフタ302のon/offを切
替える。
【0057】以下、ブレンディングモード125と描画
ピクセルの特性について記述する。まず、ブレンディン
グモード125の説明を行う。 ブレンディングモード0(00):使用しない ブレンディングモード1(01):off ブレンディングモード2(10):A値に従ってA値、
R値、G値、B値をスケールし、サブピクセル分割数回
加算を行う ブレンディングモード3(11):A値に従ってA値、
R値、G値、B値をスケールし、サブピクセル分割数だ
け加算を行った後平均化する
【0058】1のモードは不透明の物体の描画に使用す
る。2のモードはライト等の明るい物体の描画に使用す
る。3のモードは通常の半透明物体の描画に使用する。
各サブピクセルの色データ値115は、A値、R値、G
値、B値の4つのパラメータで構成される。ARGB値
は通常0から255の整数である。
【0059】次に、合成器の動作について説明する。積
算器301は、各サブピクセルのブレンディングモード
125の上位が1の時は、各サブピクセルの色データ値
115を入力し、各パラメータに対しA値を積算し、シ
フタ302に対し出力する。0の時はA値の代わりに2
55を積算する。シフタ302は、各パラメータをサブ
ピクセルの分割数で割って平均を求める。すなわち、各
サブピクセルのブレンディングモード125の下位が1
の時は、積算器301が出力した値を右に2ビットシフ
トする。0の時はそのまま出力する。これまでの処理を
サブピクセルの分割個数の回数だけ行う。本合成器では
サブピクセルの分割数が4であるので、処理は4回であ
る。
【0060】アキュムレータ303は、シフタ302か
ら出力されるデータを4サブピクセル分加算する。4ピ
クセル目のデータの加算後、以下の処理を行う。データ
の値をDとする。 ・D=D+D/256 ・Dを右に8ビットシフトする。 ・Dが255より大きかったらD=255とする。 ・Dを合成色データ値121として出力する。
【0061】図10は、合成器123の他の例を示すブ
ロック図である。この合成器において、各サブピクセル
のブレンディングモード125は1ビットのデータであ
り、補間器311のon/offを切替える。以下はブ
レンディングモード125の説明である。 ブレンディングモード1:アルファブレンディングON ブレンディングモード0:アルファブレンディングOF
【0062】半透明の物体には1を使用し、不透明の物
体には0を使用する。各サブピクセルの色データ値11
5はA値、R値、G値、B値の4つのパラメータで構成
される。ARGB値は通常0から255の整数である。
【0063】次に、合成器の動作について説明する。補
間器311に、出力レジスタ312からの色データ値と
各サブピクセルの色データ値115を入力し、各パラメ
ータに対し、以下の演算を行い、生成した色データ値を
出力レジスタ312に対し出力する。 Rout=A(n)*R(n)+(256−A(n))*
R(n−1) Gout=A(n)*G(n)+(256−A(n))*
G(n−1) Bout=A(n)*B(n)+(256−A(n))*
B(n−1) A(n),R(n),G(n),B(n)は各サブピク
セルの色データ値115を示す。R(n−1),G(n
−1),B(n−1)は、出力レジスタ312から出力
されるR(n),G(n),B(n)の直前の色データ
値を示す。A(n)はブレンディングモード125によ
って以下のように変化する。 1:各サブピクセルの色データ値のA値 0:255 こうして、ブレンディングモード125により変化する
A値に基づいて、色データとその直前の色データとを内
分する。
【0064】出力レジスタ312は、各サブピクセルの
ブレンディングモード125の下位が1の時は、補間器
311が出力した値を右に2ビットシフトする。0の時
はそのまま出力する。これまでの処理をサブピクセルの
分割数回行うが、この合成器では4回である。
【0065】ディスプレイ・コントローラ107は合成
器123から合成色121を入力し、画像信号120に
変換しディスプレイに対し出力する。以上が画面上の1
ピクセルの表示処理である。この処理をディスプレイの
画素数分繰り返し1画面の表示処理が終了する。
【0066】<実施形態2>以下、本発明に係る実施形
態2について説明する。1秒間に60回画面を表示する
インターレースのラスタースキャン方式のディスプレイ
を用いると、ピクセル数は640×480のVGA(Vid
eo Graphics Array)相当となる。この場合、1ピクセル
の処理に許容される時間は、80nsである。本実施形
態は、1ピクセルを2×2のサブピクセルに分割するの
で、1つのサブピクセルの処理に許される時間は20n
sとなる。この時間内に処理を行うため、内分値発生器
105およびレンダラ106では、パイプライン方式に
て、複数の処理を並列して行う。以下に、内分値発生器
およびレンダラにおけるパイプライン処理について具体
例を用いて説明する。
【0067】まず、内分値発生器105における内分値
算出処理について説明する。内分値発生器105は、画
面の2次元座標上の所定位置(m,n)に、3次元座標
上の3頂点にて定義されるポリゴン面上のどの位置
(x,y,z)が投影されるかを算出する。この内分値
算出方法では、ポリゴン面上の位置は三つの内分比およ
び頂点順序で表される。すなわち、3頂点の座標P0
(x0,y0,z0)、P1(x1,y1,z1)、P
2(x2,y2,z2)および画面座標(m,n)を入
力し、内分比α,β,γおよび頂点順序δを生成する。
内分比は、3頂点の座標で定義されるポリゴンを二つの
平面にて順次切断することによって生成する。また頂点
順序は、最初の平面による切断の際に決定する。
【0068】内分比の算出法について、図11および図
12を用いて説明する。図11は、XYZの3次元座標
における頂点座標P0,P1,P2にて定義された三角
形が、XZ平面に垂直で原点と投影面の画面座標を結ん
だ平面によって切断している様子を示し、10Aは、投
影面上に三角形P0,P1,P2を正規化して投影した
様子を示す。図12は、上記の三角形が、YZ平面に垂
直で原点と投影面の画面座標を結んだ平面によって切断
している様子を示し、11Aは、投影面上に三角形P
0,P1,P2を正規化して投影した様子を示す。図1
1、図12において、視点は原点と一致する。
【0069】また図11及び図12において、点Q0,
Q1は三角形P0,P1,P2とx=mzの条件の平面
との交点である。すなわち線分Q0,Q1が、x=mz
の条件の平面による三角形P0,P1,P2の切断線で
ある。
【0070】図11において、点A0は、点P0を通る
x軸に平行な直線とx=mzの条件の平面との交点であ
る。同様に点A1は、点P1を通るx軸に平行な直線と
x=mzの条件の平面との交点、点A2は、点P2を通
るx軸に平行な直線とx=mzの条件の平面との交点で
ある。そして点Q0が、線分P0,P1を内分する比
は、線分P0,A0の長さと線分P1,A1の長さとの
比に等しい。また点Q1が、線分P0,P2を内分する
比は、線分P0,A0の長さと線分P2,A2の長さと
の比に等しい。
【0071】ここでP0(x0,y0,z0)、P1
(x1,y1,z1)、P2(x2,y2,z2)であ
り、A0(mx0,y0,z0)、A1(mx1,y
1,z1)、A2(mx2,y2,z2)とする。
【0072】また三角形P0,Q0,A0と三角形P
1,Q0,A1とは、相似であるから、 P0,Q0:Q0,P1=P0,A0:P1,A1=
(mz0−x0):(x1−mz1) となる。その結果、点Q0が、線分P0,P1を内分す
る比は、 α=|mz0−x0|/(|mz0−x0|+|mz1
−x1|) となる。
【0073】同様に、三角形P0,Q1,A0と三角形
P2,Q1,A2とは、相似であるから、点Q1が、線
分P0,P2を内分する比は、 β=|mz0−x0|/(|mz0−x0|+|mz2
−x2|) となる。
【0074】次に図12において、点Rは、線分Q0,
Q1とYZ平面との交点である。点B0は、点Q0を通
るy軸に平行な直線とy=nzの条件の平面との交点で
ある。同様に点B1は、点Q1を通るy軸に平行な直線
とy=nzの条件の平面との交点である。
【0075】ここでQ0(x3,y3,z3)、Q1
(x4,y4,z4)とすると、B0(x3,ny3,
z3)、B1(x4,ny4,z4)となる。このた
め、y3,z3,y4,z4は、 y3=y0+(y1−y0)×α z3=z0+(z1−z0)×α y4=y0+(y2−y0)×β z4=z0+(z2−z0)×β として、求まる。また、三角形Q0,R,B0と三角形
Q1,R,B1とは、相似であるから、 Q0,R:R,Q1=Q0,B0:Q1,B1=(nz
3−y3):(y4−nz4) となるので、点Q0が、線分P0,P1を内分する比
は、 γ=|nz3−y3|/(|nz3−y3|+|y4−
nz4|) となる。
【0076】次に頂点順序の算出について説明する。ま
ず、点P0から点A0までの距離x0−mz0,点P1
から点A1までの距離x1−mz1,点P2から点A2
までの距離x2−mz2を演算し、符号を調べる。その
結果、一つだけ異符号のものがあり、これが先頭にくる
ように並べ替える。例えば、x0−mz0が負で、x1
−mz1,x2−mz2が正ならば、頂点順序はP0,
P1,P2となる。また、x1−mz1が負で、x0−
mz0,x2−mz2が正ならば、頂点順序はP1,P
0,P2となる。以上の演算で内分値が求まる。
【0077】上述の例では、まずXZ平面に垂直な平面
にて切断した後、YZ平面に垂直な平面にて切断した場
合について説明したが、先にYZ平面に垂直な平面にて
切断した後、XZ平面に垂直な平面にて切断した場合
は、上述の説明におけるポリゴン座標のxとyを入れ替
え、また画面座標のmとnを入れ替えて、その他の処理
は同様である。
【0078】次に、図11における、x−mzをX方向
透視距離、y−nzをY方向透視距離と呼び、このX方
向およびY方向透視距離を用いた内分値算出方法につい
て説明する。
【0079】内分値発生器105は、画面座標(m,
n)およびポリゴンの三つの頂点座標P0(x0,y
0,z0)、P1(x1,y1,z1)、P2(x2,
y2,z2)の入力を受けて、X方向透視距離、内分比
α,βおよび頂点順序δを算出し、次にY方向透視距
離、内分比γを算出し、内分比α,β,γおよび頂点順
序δを出力する。
【0080】図13は、内分値発生器におけるパイプラ
イン処理の説明図である。ここで、Ai,j〜Fi,jは、画
面の左上から(i,j)番目のピクセルにおける以下の
処理A〜処理Fを表す。
【0081】まず処理Aは、各ピクセルにおける、 X方向透視距離:dx0=x0−mz0 dx1=x1−mz1 dx2=x2−mz2 Y方向透視距離:dy0=y0−nz0 dy1=y1−nz1 dy2=y2−nz2 頂点順序: δ=si0×4+si1×2+si2 を求める。
【0082】処理Bは、各ピクセルにおける、dx0,
dx1,dx2の並べ替えと、dy0,dy1,dy2
の並べ替えと、頂点順序δの遅延を行う。
【0083】処理Cは、各ピクセルにおける、内分比
α,βの算出と、dy0,dy1,dy2および頂点順
序δの遅延を行う。
【0084】処理Dは、各ピクセルにおける、 d=dy0+(dy1−dy0)×α e=dy0+(dy2−dy0)×β を求め、α,βおよび頂点順序δの遅延を行う。
【0085】処理Eは、各ピクセルにおける、内分比γ
の算出と、内分比α,βおよび頂点順序δの遅延を行
う。
【0086】処理Fは、各ピクセルにおける、内分比
α,β,γおよび頂点順序δを出力する。
【0087】上記各処理は、ピクセル表示周期のT1サ
イクルでは1段目で処理A0,0を行う。次に、T2サイ
クルでは2段目で処理B0,0を行うと共に、1段目で処
理A1,0を行う。次に、T3サイクルでは3段目で処理
0,0を行うと共に、2段目で処理B1,0を行うと共に、
1段目で処理A2,0を行う。こうして、T4,T5サイ
クルにおいて、順次処理D,Eを行うとともに、それぞ
れの前段の処理も同時に行う。そして、T6サイクルで
は6段目で処理Fが行われ、1段目〜5段目で処理A〜
処理Eが並列して行われる。
【0088】図14は、レンダラにおけるパイプライン
処理の説明図である。レンダラは、レンダリングパラメ
ータとして、マテリアル色c0,c1,c2とテクスチ
ャ座標(s,t,r)およびテクスチャIDとを用い
る。ここで、Gi,j〜Li,jは、画面の左上から(i,
j)番目のピクセルにおける以下の処理G〜処理Lを表
す。レンダラは、内分値発生器から内分比α,β,γお
よび頂点順序δを受けて以下の処理を行う。
【0089】まず処理Gでは、頂点順序δに対応して、
各頂点のテクスチャID0,ID1,ID2とテクスチ
ャ座標(s0,t0,r0)(s1,t1,r1)(s
2,t2,r2)およびマテリアル色c0,c1,c2
を並べ替える。図15は、s0,s1,s2の並べ替え
例を示し、他のパラメータについても同様に並べ替え
る。
【0090】処理Hは、内分値にて表される位置のレン
ダリングパラメータsを sa=s0+(s1−s0)×α sb=s0+(s2−s0)×β s=sa+(sb−sa)×γ として求める。さらにt,r,cについても同様に求め
る。
【0091】処理Iは、マテリアルデータを読み出す。
【0092】処理Jは、内分値にて表される位置のテク
スチャ色を読み出し、マテリアル色cの遅延を行う。
【0093】処理Kは、内分値にて表される位置のテク
スチャ色とマテリアル色とを混合する。
【0094】処理Lは、混合色を出力する。
【0095】上記各処理は、ピクセル表示周期のT7サ
イクルでは1段目で処理G0,0を行う。次に、T8サイ
クルでは2段目で処理H0,0を行うと共に、1段目で処
理G1,0を行う。次に、T9サイクルでは3段目で処理
0,0を行うと共に、二段目で処理H1,0を行うと共に、
1段目で処理G2,0を行う。こうして、T10,T11
サイクルにおいて、順次処理J,Kを行うとともに、そ
れぞれの前段の処理も同時に行う。そして、以降、同様
にして、T12サイクルでは6段目で処理Lが行われ、
1段目〜4段目で処理G〜処理Kが並列して行われる。
【0096】図16は、本発明に係る3次元画像処理装
置の実施形態2を示すブロック図である。この3次元画
像処理装置の基本構成は、実施形態1と変わらないが、
異なる点はポリゴン・キャシュと内分値発生器とレンダ
ラの直列接続したものが、複数並列接続された構造であ
る。CPU401は、サブピクセル・ポリゴン・コード
411、描画頂点座標417および座標変換マトリクス
416を座標変換回路402に対し出力する。同様に、
レンダリング・パラメータ409をポリゴン・キャシュ
404に対し出力する。また、制御信号424によって
ポリゴン・コード・メモリ403およびポリゴン・キャ
シュ404を制御する。またディザデータ427をディ
ザ回路426に対し出力する。
【0097】座標変換回路402は、入力された描画頂
点座標417を頂点座標410に座標変換し、サブピク
セル・ポリゴン・コード411でアドレスされるポリゴ
ン・キャシュ404のエントリに書き込む。また、サブ
ピクセル画面アドレス418及びサブピクセル・ポリゴ
ン・コード411をディザ回路426に与える。ディザ
回路426は、サブピクセル画面アドレス418にした
がってディザデータ427を評価し、描画を行う場合は
サブピクセルの位置をサブピクセル画面アドレス418
で与え、サブピクセル・ポリゴン・コード411をポリ
ゴン・コード・メモリ403に書き込む。
【0098】並列ポリゴン・キャシュ404は、座標変
換回路402からポリゴン・コード411によって示さ
れる領域に頂点座標410が書き込まれる。同時にCP
U401からのレンダリング・パラメータ409も同じ
領域に書き込まれる。また、ポリゴン・キャシュ404
は、ポリゴン・コード・メモリ403から出力された1
ピクセルを構成する全サブピクセルのサブピクセル・ポ
リゴン・コード422のうち、自分の担当するサブピク
セルのポリゴン・コードで示される領域の内容である頂
点座標410およびレンダリング・パラメータ409を
読み出し並列内分値発生器405へ各々送る。
【0099】並列内分値発生器405は、頂点座標41
2および画面座標419を与えられ、内分値413をレ
ンダラ406に対して出力する。並列レンダラ406
は、内分値413およびレンダリング・パラメータ41
4から、サブピクセル色415を生成し、合成器423
に対し出力する。合成器425は、並列レンダラ406
からサブピクセル色データ値415を入力し、合成を行
ない合成色データ値421を出力する。ディスプレイ・
コントローラ407は、その合成色データ値421に従
った画像信号420をディスプレイ408に対し出力し
ディスプレイ408がその画像を表示する。
【0100】並列ポリゴン・キャシュ404、並列内分
値発生器405、並列レンダラ406をあわせて並列回
路と呼ぶ。図17は並列回路の各回路が担当するサブピ
クセルを示している。図は2×2のサブピクセルの例を
示す。本例で並列回路の並列数は4であり、1番目の回
路が左上のサブピクセルを担当する。以下2番目が右
上、3番目が左下、4番目が右下を各々担当する。
【0101】図18は、実施形態2の並列ポリゴン・キ
ャシュ404及び並列内分値発生器405のブロック図
である。並列ポリゴン・キャシュ404はセレクタ50
3とポリゴン・キャシュ104とからなる。並列内分値
発生器405はサブピクセル画面座標発生器505と内
分値発生器105からなる。
【0102】セレクタ503は、1ピクセルを構成する
全サブピクセルのポリゴン・コード422が入力され、
自分が担当するサブピクセルのポリゴン・コードを1つ
選択し担当サブピクセルポリゴン・コード504として
出力する。サブピクセル画面座標発生器505は、画面
座標419が入力され、自分が担当するサブピクセルの
画面座標を算出し、担当サブピクセル画面座標506と
して出力する。1番目の並列回路の場合、担当サブピク
セルポリゴン・コード504は左上のサブピクセルのポ
リゴン・コードを選択する。また担当サブピクセル画面
座標506は左上のサブピクセルの画面座標を算出し出
力する。それ以外の回路は実施形態1の内分値発生器1
05およびポリゴン・キャシュ104と同様である。並
列回路および合成器423を除く各回路の構成および動
作は実施形態1と同様である。
【0103】最後に合成器423について説明する。図
19は、実施形態2の合成器の一例を示すブロック図で
ある。この合成器は、図10の合成器が複数並列に接続
された構造である。ブレンディングモードは実施形態1
と同じである。合成器423は、各並列レンダラ406
からの各サブピクセルの色データ値415が同時に入力
される。各サブピクセルの色データ値415はA値、R
値、G値、B値の4つのパラメータで構成され、このA
RGB値は通常0から255の整数である。
【0104】並列積算器601には、各サブピクセルの
ブレンディングモード425の上位が1の時は、各サブ
ピクセルの色データ値415を入力し、各パラメータに
対しA値を積算し、並列シフタ602に対し出力する。
0の時はA値の代わりに255を積算する。本実施例に
おいてサブピクセルの分割数は2×2の4である。60
2は並列シフタである。各サブピクセルのブレンディン
グモード425の下位が1の時は、並列積算器601が
出力した値を右に2ビットシフトする。0の時はそのま
ま出力する。こうして、平均化する。603は加算器で
ある。並列シフタ602から出力されるデータを加算す
る。
【0105】また以下の処理を行なう。データの値をD
とする。 ・D=D+D/256 ・Dを右に8ビットシフトする。 ・Dが255より大きかったらD=255とする。 ・Dを合成色データ値421として出力する。
【0106】図20は合成器423の他の例である。本
実施例において各サブピクセルのブレンディングモード
425は1ビットのデータであり、補間器のon/of
fを切替える。以下はブレンディングモード421の説
明である。 ブレンディングモード1:アルファブレンディングON ブレンディングモード0:アルファブレンディングOF
F 半透明の物体には1を使用し、不透明の物体には0を使
用する。
【0107】各サブピクセルの色データ値415はA
値、R値、G値、B値の4つのパラメータで構成され
る。ARGB値は通常0から255の整数である。60
1は多段補間器である。多段補間器601の補間器はサ
ブピクセルの分割数段ある。各々の補間器は前段からの
色データ値および各サブピクセルの色データ値415を
入力し、各パラメータに対し以下の補間演算を行う。 Rout=A(n)*R(n)+(256−A(n))*
R(n−1) Gout=A(n)*G(n)+(256−A(n))*
G(n−1) Bout=A(n)*B(n)+(256−A(n))*
B(n−1) R(n),G(n),B(n)は各々格段が入力する各
サブピクセルの色データ値415を示す。A(n−
1),R(n−1),G(n−1),B(n−1)は各
々格段が入力する前段からの色データ値である。
【0108】A(n)はブレンディングモード425に
よって以下のように変化する。 1:各サブピクセルの色データ値のA値 0:255 第一段の補間器は前段からの色データ値の代わりに0を
入力する。最終段の補間器で生成される色データ値を合
成色データ値421として出力する。レンダラ406
は、前述のものと同様である。
【0109】図21は、レンダラのさらに他の例を示す
ブロック図である。この構成は、図8のレンダラに対
し、ミキサ223の公団にセレクタ241を追加したも
のである。このセレクタ241に、ミキサ色115およ
びサブピクセル・ポリゴン・コード122を入力してい
る。サブピクセル・ポリゴン・コード122の最上位ビ
ットが0の場合は、ミキサ色115を出力する。また、
1の場合は、サブピクセル・ポリゴン・コード122を
各サブピクセルの色データ値242として出力する。サ
ブピクセル・ポリゴン・コード122を各サブピクセル
の色データ値422に変換する方法について説明する。
サブピクセル・ポリゴン・コード122が16ビットで
あるとすると、1ビットをA値の最上位、残りのeビッ
トずつをRGB値の上位5ビットに各々割り当て、余っ
たビットは0とする。こうして、サブピクセルの色デー
タ値422として出力する。
【0110】
【発明の効果】本発明によれば、色ではなくコードを描
画しなおかつ複数の色を合成して表示を行なうため、ア
ルファブレンディングとオーバーサンプリングによるレ
ンダリング処理が可能になり、高画質な3次元グラフィ
クスを非常に軽い負荷で実現できる。
【0111】さらに、請求項2、5及び6の発明によれ
ば、パイプライン方式で複数の処理を並列に行うので、
処理が高速で、またより小さい回路規模で実現できる。
【0112】また、請求項7及び8の発明によれば、マ
テリアルIDを利用することにより様々なマテリアルを
切替えることが可能になり、多様な色生成機能をVRA
M型3D画像処理装置に付加することができる。
【0113】また、請求項8の発明によれば、セレクタ
を備えることにより、サブピクセル・ポリゴン・コード
の内容を色情報としても使用することができる。
【図面の簡単な説明】
【図1】本発明に係る3次元画像形成装置の実施形態1
を示すブロック図である。
【図2】画面座標と3次元座標の関係を表している説明
図である。
【図3】描画処理後のポリゴン・コード・メモリの状態
図である。
【図4】描画処理後のポリゴン・キャシュの状態図であ
る。
【図5】実施形態1における内分値413の説明図であ
る。
【図6】レンダリング・パラメータの補間の説明図であ
る。
【図7】実施形態1のレンダラの一例を示すブロック図
である。
【図8】実施形態1のレンダラの他の例を示すブロック
図である。
【図9】実施形態1の合成器の一例を示すブロック図で
ある。
【図10】実施形態1の合成器の他の例を示すブロック
図である。
【図11】三角形が、XZ平面に垂直で原点と投影面の
画面座標を結んだ平面によって切断されている説明図で
ある。
【図12】三角形が、YZ平面に垂直で原点と投影面の
画面座標を結んだ平面によって切断されている説明図で
ある。
【図13】実施形態2の内分値発生器の処理の説明図で
ある。
【図14】実施形態2のレンダラの処理の説明図であ
る。
【図15】テクスチャ座標のs0,s1,s2の並べ替
えを示す説明図である。
【図16】本発明に係る3次元画像形成装置の実施形態
2を示すブロック図である。
【図17】実施形態2の並列回路のブロック図である。
【図18】実施形態2の並列ポリゴン・キャシュ及び並
列内分値発生器のブロック図である。
【図19】実施形態2の合成器の一例を示すブロック図
である。
【図20】実施形態2の合成器の他の例を示すブロック
図である。
【図21】図8のレンダラのさらに他の例を示すブロッ
ク図である。
【図22】従来のビットマップ・ディスプレイ装置のブ
ロック図である。
【図23】従来のグラフィック・ディスプレイ装置のブ
ロック図である。
【図24】従来のVRAM型3次元画像表示装置のブロ
ック図である。
【符号の説明】
101 CPU 102 座標変換回路 103 ポリゴン・コード・メモリ 104 ポリゴン・キャシュ 105 内分値発生器 106 レンダラ 107 ディスプレイ・コントローラ 108 ディスプレイ 109 レンダリング・パラメータ 110,112 頂点座標 111 サブピクセル・ポリゴン・コード 113 内分値 114 レンダリング・パラメータ 115 各サブピクセルの色データ値 116 座標変換マトリクス 117 描画頂点座標 118 サブピクセル画面アドレス 119 画面座標 120 画像信号 121 合成色データ値 122 各サブピクセルのポリゴン・コード 123 合成器 125 各サブピクセルのブレンディングモード 126 ディザ回路 127 ディザデータ

Claims (8)

    【特許請求の範囲】
  1. 【請求項1】 ピクセルを構成する各サブピクセルのポ
    リゴン・コード、描画頂点座標、及び座標変換マトリク
    スが与えられ、該描画頂点座標と座標変換マトリクスに
    より座標変換した頂点座標と、それに対応するサブピク
    セル画面アドレス及びを出力する座標変換手段と、 前記サブピクセル画面アドレスの示す位置に対応する前
    記サブピクセル・ポリゴン・コードの書き込みを制御す
    るディザ発生回路と、 前記ディザ発生回路の指示に基づいて、前記サブピクセ
    ル画面アドレスに前記サブピクセル・ポリゴン・コード
    を格納するポリゴン・コード・メモリと、 前記ポリゴン・コード・メモリに格納された前記サブピ
    クセル・ポリゴン・コードをアドレスとする位置に、頂
    点座標及びレンダリング・パラメータを格納するポリゴ
    ン・キャシュと、 前記頂点座標に基づいて、表示する画面座標のポリゴン
    内分値を求める内分値発生手段と、 前記ポリゴン内分値によって頂点座標に対応するレンダ
    リング・パラメータを補間して、前記画面座標の色デー
    タ値とブレンディングモードを出力するレンダラと、 前記ブレンディングモードに基づいてアルファブレンデ
    ィング処理を行い、各サブピクセルの色データ値を合成
    する合成手段と、を備えたことを特徴とする3次元画像
    処理装置。
  2. 【請求項2】 前記ポリゴン・キャシュと内分値発生手
    段とレンダラは、直列接続され、この直列接続されたも
    のが複数並列接続されていることを特徴とする請求項1
    記載の3次元画像処理装置。
  3. 【請求項3】 前記合成手段は、色データ値とブレンデ
    ィングモードを1ピクセルごとにピクセル数だけ入力
    し、各ピクセルの色データ値及びブレンディングモード
    を利用して各色の重み付けを変化させ、加重平均するこ
    とにより合成することを特徴とする請求項1記載の3次
    元画像処理装置。
  4. 【請求項4】 前記合成手段は、色データ値とブレンデ
    ィングモードを1ピクセルごとにピクセル数だけ入力
    し、各ピクセルの色データ値及びブレンディングモード
    を利用して入力した色とその直前に入力した色を内分し
    て合成することを特徴とする請求項1記載の3次元画像
    処理装置。
  5. 【請求項5】 前記合成手段は、各ピクセルの色データ
    値とブレンディングモードを同時に入力し、各ピクセル
    の色データ値及びブレンディングモードを利用して各色
    の重み付けを変化させ、加重平均することにより合成す
    ることを特徴とする請求項2記載の3次元画像処理装
    置。
  6. 【請求項6】 前記合成手段は、各ピクセルの色データ
    値とブレンディングモードを同時に入力し、前記色デー
    タ値及びブレンディングモードを利用して入力した色と
    その直前に入力した色を内分して合成することを特徴と
    する請求項2記載の3次元画像処理装置。
  7. 【請求項7】 前記レンダラは、 マテリアルデータを選択するアドレスであるマテリアル
    IDを含むテクスチャ座標と頂点色からなるレンダリン
    グ・パラメータを補間して内分値で示される位置のテク
    スチャ座標値とマテリアルIDと色データ値を出力する
    補間手段と、 前記マテリアルIDから選択されたマテリアルデータに
    基づいてブレンディング・モードとテクスチャ色を選択
    するアドレスであるテクスチャIDを出力するマテリア
    ル・メモリと、 前記テクスチャ座標値で示される位置の前記テクスチャ
    IDに選択されたテクスチャ色を出力するテクスチャ・
    メモリと、 前記テクスチャ色と前記色データ値を混合する混合手段
    と、からなることを特徴とする請求項1又は2記載の3
    次元画像処理装置。
  8. 【請求項8】 前記レンダラは、さらに、前記サブピク
    セル・ポリゴン・コードにより、前記混合手段からの色
    データを出力するか、サブピクセルの色データ値に変換
    して出力するかを選択するセレクタを備えたことを特徴
    とする請求項7記載の3次元画像処理装置。
JP9340699A 1999-03-31 1999-03-31 3次元画像処理装置 Expired - Fee Related JP3556517B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9340699A JP3556517B2 (ja) 1999-03-31 1999-03-31 3次元画像処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9340699A JP3556517B2 (ja) 1999-03-31 1999-03-31 3次元画像処理装置

Publications (2)

Publication Number Publication Date
JP2000285256A true JP2000285256A (ja) 2000-10-13
JP3556517B2 JP3556517B2 (ja) 2004-08-18

Family

ID=14081429

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9340699A Expired - Fee Related JP3556517B2 (ja) 1999-03-31 1999-03-31 3次元画像処理装置

Country Status (1)

Country Link
JP (1) JP3556517B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6847375B2 (en) 2001-07-13 2005-01-25 Sony Computer Entertainment Inc. Rendering process
EP2429173A3 (en) * 2010-09-14 2013-10-16 Samsung Electronics Co., Ltd. Image forming apparatus, printing control terminal apparatus, and image forming method thereof
KR101900632B1 (ko) 2014-09-26 2018-09-19 코너트 일렉트로닉스 리미티드 화상 변환 방법, 운전자 보조 시스템 및 자동차

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6847375B2 (en) 2001-07-13 2005-01-25 Sony Computer Entertainment Inc. Rendering process
EP2429173A3 (en) * 2010-09-14 2013-10-16 Samsung Electronics Co., Ltd. Image forming apparatus, printing control terminal apparatus, and image forming method thereof
US9001381B2 (en) 2010-09-14 2015-04-07 Samsung Electronics Co., Ltd. Image forming apparatus which processes printing data including a transparency pattern, printing control terminal apparatus, and image forming method thereof
KR101900632B1 (ko) 2014-09-26 2018-09-19 코너트 일렉트로닉스 리미티드 화상 변환 방법, 운전자 보조 시스템 및 자동차

Also Published As

Publication number Publication date
JP3556517B2 (ja) 2004-08-18

Similar Documents

Publication Publication Date Title
JP4725741B2 (ja) 描画装置及び描画方法
US6333747B1 (en) Image synthesizing system with texture mapping
JP3107452B2 (ja) テクスチャマッピング方法およびその装置
US4829295A (en) Image synthesizer
US4725831A (en) High-speed video graphics system and method for generating solid polygons on a raster display
US6246421B1 (en) Apparatus and method for parallel rendering of image pixels
JP4713591B2 (ja) 画素サンプリングによるアンチエイリアシングのための方法及びシステム
WO1991011799A1 (fr) Unite d'affichage d'images d'animation et memoire externe utilisee avec une telle unite
JPH10269377A (ja) 表示制御システムおよび3次元グラフィクスデータの表示制御方法
JPH09319891A (ja) 画像処理装置及びその処理方法
JP2005077522A (ja) 画像処理装置および画像処理方法
JP3556517B2 (ja) 3次元画像処理装置
JP3979162B2 (ja) 画像処理装置およびその方法
JP3330030B2 (ja) データ処理装置
JPH08212377A (ja) 画像情報生成装置及び方法、画像情報処理装置及び方法、並びに記録媒体
US7113655B2 (en) Image processing apparatus
JP3409987B2 (ja) 3次元画像生成方法および装置とこの方法および装置を用いた3次元画像処理装置
JP3910259B2 (ja) 画像処理装置および方法、並びにレンダリング装置および方法
JPH11306366A (ja) グラフィック演算装置およびその方法
JPH11265459A (ja) 記憶回路制御装置およびグラフィック演算装置
JPH11296160A (ja) エンコーダおよびその方法とグラフィック演算装置
JPH05298455A (ja) テクスチャマッピング装置
JP2774874B2 (ja) 画像合成装置及び画像合成方法
JPH11272548A (ja) 記憶回路制御装置およびグラフィック演算装置
JP2989642B2 (ja) 動画表示装置

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040203

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040405

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20040511

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040512

R150 Certificate of patent (=grant) or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20080521

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20090521

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20100521

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20110521

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20110521

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20120521

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20120521

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20130521

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20140521

Year of fee payment: 10

LAPS Cancellation because of no payment of annual fees