JP3330841B2 - 三次元画像生成方法及びその装置 - Google Patents

三次元画像生成方法及びその装置

Info

Publication number
JP3330841B2
JP3330841B2 JP11212497A JP11212497A JP3330841B2 JP 3330841 B2 JP3330841 B2 JP 3330841B2 JP 11212497 A JP11212497 A JP 11212497A JP 11212497 A JP11212497 A JP 11212497A JP 3330841 B2 JP3330841 B2 JP 3330841B2
Authority
JP
Japan
Prior art keywords
luminance
pixel
data
dimensional object
back surface
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP11212497A
Other languages
English (en)
Other versions
JPH10302082A (ja
Inventor
利治 花岡
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
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 JP11212497A priority Critical patent/JP3330841B2/ja
Publication of JPH10302082A publication Critical patent/JPH10302082A/ja
Application granted granted Critical
Publication of JP3330841B2 publication Critical patent/JP3330841B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Image Generation (AREA)

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、三次元空間上にお
いてポリゴンで構成された三次元物体をクリッピングし
て三次元画像を生成し、生成した三次元画像を表示部に
表示する三次元画像生成方法及びその装置に関し、特
に、三次元物体の内部の可視化を伴うことなく、該三次
元物体の質感を保ちながらクリッピングを行うことがで
きる三次元画像生成方法及びその装置に関する。
【0002】
【従来の技術】従来、コンピュータグラフィックス(C
G)が様々な分野において用いられている。このCGに
は、リアルな映像が要求されることが多いため、ポリゴ
ンと呼ばれる多角形平面を無数に組み合わせて、三次元
物体を構築する三次元グラフィックス技術が用いられる
ことが多い。
【0003】図12は、ポリゴンの一例を示す図であ
る。同図に示すように、ポリゴンからなる三次元物体
(以下「ポリゴン物体」と言う。)が視点の近傍に位置
する場合には、図中点線で示す部分が視点に近い面でク
リッピングされるため、該ポリゴンの三次元物体が点線
で示す平面12aで切り取られた画像となる。ここで、
このクリッピングとは、スクリーンすなわち視野からは
み出す部分を切り取ることを意味し、視点に極めて近い
場所に位置する物体等を排除する際に使用される。
【0004】このように、かかるクリッピングは、視点
近傍のポリゴンが画面いっぱいに描画されたり、視点の
後ろに位置するポリゴンの虚像が描画されることを防ぐ
上で、極めて重要な技術である。
【0005】
【発明が解決しようとする課題】しかしながら、従来の
クリッピングを用いた場合には、クリッピングで切り取
られた面から物体内部が見えるため、極めて不自然なも
のとなる。
【0006】図13は、図12に示すポリゴン物体に対
して従来のクリッピングを行った一例を示す図である。
同図(a)に示すように、従来のクリッピングを行う
と、ポリゴン物体から面12aを切り取ることはできる
ものの、切り取った面の内部が見えてしまうため、意図
した物体を表現できない場合が生ずる。例えば、かかる
ポリゴンを用いて物体の厚みを表現する場合には、たと
えテクスチャー技術を駆使して質感を付与したとして
も、このクリッピングによって質感を根本的に損なう結
果となる。すなわち、ポリゴン物体自体を厚みのある物
体と認識させるためには、図13(b)に示すように、
物体を構成する全ての面がポリゴンで覆われている必要
があるためである。
【0007】このため、従来は、視点の近くに物体を寄
せない操作上の制限を課したり、クリッピング面付近の
物体を示すデータを出力しないような処理を行うか、又
は物体内部が見えないようにする後処理を行うことによ
り、かかるクリッピングに伴う問題を回避していた。
【0008】しかし、かかる操作上の制限をユーザに強
いるのは妥当ではなく、また、狭い空間を表現する場合
には、否応なくクリッピングを伴う場合が生ずる。さら
に、部屋の中を表現する場合のように全面をポリゴンで
囲むこととすると、必然的にクリッピングを伴ってしま
う。このため、視点に近い面でクリッピングを行う際
に、ユーザに操作上の制限を強いることなく、ユーザが
意図した物体をいかに表現するかが極めて重要な課題と
なっていた。
【0009】そこで、本発明では、上記課題を解決すべ
く、ポリゴン物体内部の可視化を伴うことなく、該ポリ
ゴン物体の質感を保ちながらクリッピングを行うことが
できる三次元画像生成方法及びその装置を提供すること
を目的とする。
【0010】
【課題を解決するための手段】上記目的を達成するた
め、第1の発明は、ポリゴンからなる三次元物体をクリ
ッピングして三次元画像を生成する三次元画像生成方法
において、クリッピングされた三次元物体に対するフレ
ームメモリに格納する画素のデータが、前記三次元物体
の内部に相当するか否かを判定する第1の工程と、前記
画素が三次元物体の内部であると判定された場合には、
該画素の位置に対応する前記フレームメモリのメモリ領
域に、物体内部に該当する部位を示す所定の輝度である
裏面輝度を格納する第2の工程と、を具備し、視点に近
い面でクリッピングされた前記三次元物体の切り口の内
部を前記固定の裏面輝度により物体内部を可視化せずに
物体を視点に近い面で切り取ったように塗りつぶすこと
を特徴とする。
【0011】また、第2の発明は、前記第1の工程は、
視点に対して図形の裏表を示す面データに基づいて、前
記画素が三次元物体の内部であるか否かを判定すること
を特徴とする。
【0012】また、第3の発明は、前記第2の工程は、
複数の異なる三次元物体が存在する場合に、クリッピン
グされた三次元物体にそれぞれ対応する異なる前記裏面
輝度を前記フレームメモリに格納することを特徴とす
る。
【0013】また、第4の発明は、ポリゴンからなる三
次元物体をクリッピングして三次元画像を生成するプロ
グラムを格納する記録媒体であって、視点に近い面でク
リッピングする際に前記三次元物体の切り口を塗りつぶ
すために用い、且つ物体内部に該当する部位を示す所定
の輝度である裏面輝度を示す輝度データと、クリッピン
グされた三次元物体に対するフレームメモリに格納する
画素のデータが、前記三次元物体の内部であるか否かを
判定し、前記画素が三次元物体の内部であると判定され
た場合には、該画素の位置に対応する前記フレームメモ
リのメモリ領域に前記輝度データを格納して、視点に近
い面でクリッピングされた前記三次元物体の切り口の内
部を前記固定の裏面輝度により物体内部を可視化せずに
物体を視点に近い面で切り取ったように塗りつぶすプロ
グラムと、を格納したことを特徴とする。
【0014】また、第5の発明は、前記プログラムは、
視点に対して図形の裏表を示す面データに基づいて、前
記画素が三次元物体の内部であるか否かを判定すること
を特徴とする。
【0015】また、第6の発明は、前記輝度データは、
三次元物体ごとに異なる裏面輝度を有し、前記プログラ
ムは、複数の三次元物体が存在する場合に、クリッピン
グされた三次元物体にそれぞれ対応する裏面輝度を前
フレームメモリに格納することを特徴とする。
【0016】また、第7の発明は、ポリゴンからなる三
次元物体をクリッピングして三次元画像を生成し、生成
した三次元画像を表示部に表示する三次元画像生成装置
において、前記表示部に表示する三次元画像の各画素の
輝度を格納するフレームメモリと、クリッピングされた
三次元物体に対する前記フレームメモリに格納する画素
のデータが前記三次元物体の内部であるか否かを判定す
る判定手段と、前記判定手段が前記画素を三次元物体の
内部と判定した場合には、該画素の位置に対応する前記
フレームメモリのメモリ領域に物体内部に該当する部位
を示す所定の輝度である裏面輝度を格納する格納手段
と、を具備し、視点に近い面でクリッピングされた前記
三次元物体の切り口の内部を前記固定の裏面輝度により
物体内部を可視化せずに物体を視点に近い面で切り取っ
たように塗りつぶすことを特徴とする。
【0017】また、第8の発明は、図形の裏表を表す面
データを一時記憶するフェイスメモリをさらに具備し、
前記判定手段は、前記フェイスメモリに一時記憶した面
データに基づいて、前記フレームメモリに描画する画素
が前記三次元物体の内部であるか否かを判定することを
特徴とする。
【0018】また、第9の発明は、複数の三次元物体の
識別情報と裏面輝度とを記憶する裏面輝度記憶手段をさ
らに具備し、前記格納手段は、前記判定手段が前記画素
を三次元物体の内部と判定した場合には、該三次元物体
の識別情報に対応する前記裏面輝度記憶手段に記憶した
裏面輝度で前記フレームメモリに格納することを特徴と
する。
【0019】また、第10の発明は、ポリゴンからなる
三次元物体をクリッピングして三次元画像を生成し、生
成した三次元画像を表示部に表示する三次元画像生成装
置において、前記表示部に表示する三次元画像の各画素
の輝度を格納するフレームメモリと、視点に対して図形
の裏表を表す面データを一時記憶するフェイスメモリ
と、クリッピングされた三次元物体に対する前記フレー
ムメモリに格納する画素のデータが、前記三次元物体の
内部であるか否かを判定する判定手段と、前記判定手段
が前記画素を三次元物体の内部と判定した場合には、該
画素における体内部に該当する部位を示す所定の輝度で
ある裏面輝度を、前記フレームメモリに記憶したデータ
と前記フェイスメモリに記憶したデータとから生成し、
視点に近い面でクリッピングされた前記三次元物体の
切り口の内部を前記固定の裏面輝度により物体内部を可
視化せずに物体を視点に近い面で切り取ったように塗り
つぶす面処理手段と、を具備することを特徴とする。
【0020】また、第11の発明は、前記面処理手段
は、三次元物体の切り口の内部を前記裏面輝度で塗りつ
ぶす裏面処理に要する画素数をライン毎にカウントする
裏面カウンタと、前記裏面カウンタが行った画素のカウ
ント値と裏面処理の最後の輝度値とを記憶する記憶手段
と、各画素の面データと輝度データとをライン毎に記憶
するラインバッファと、前記記憶手段と前記ラインバッ
ファの出力値から、ライン毎に裏面輝度の輝度デルタ値
及び輝度初期値を以下の式によって算出し、前記ライン
バッファが記憶する面データが「表」から「裏」になっ
たときに、輝度初期値を裏面輝度として出力し、該面デ
ータが「裏」である間、裏面輝度に輝度デルタ値を加算
し続けて裏面輝度として出力する算出手段と、前記ライ
ンバッファに記憶されている面データが「表」である場
合には輝度データを出力し、「裏」である場合には裏面
輝度データを出力する輝度切換手段と、を具備すること
を特徴とする。輝度デルタ値=(記憶手段出力の裏面処理最後の輝度値
−ラインバッファ出力の輝度データ)÷記憶手段出力の
カウント値 輝度初期値=記憶手段出力の裏面処理最後の輝度値+輝
度デルタ値
【0021】
【発明の実施の形態】以下、本発明の実施の形態につい
て図面を参照して説明する。
【0022】本実施の形態では、クリッピングによって
物体内部が可視化されることを避けるために、表示部位
が物体内部であるか否かを判定し、物体内部に相当する
部分を所定の輝度で表示することにより物体内部を描画
しないよう裏面処理を行うこととしている。例えば、物
体内部が見えている部分を灰色で表示すると、クリッピ
ングによる切り口の内部だけが灰色で表示されるため、
ユーザにとってはあたかも物体を視点に近い面で切り取
ったかのように見える。なお、この裏面処理は、描画時
又は表示時に行うことができ、また裏面処理時に行う輝
度の決定要領も複数存在するため、下記第1〜第4の実
施の形態に分けて本発明について説明する。
【0023】<第1の実施の形態>第1の実施の形態で
用いる三次元画像生成装置は、物体内部に該当する部位
を常に固定の輝度で描画するとともに、フレームメモリ
への描画時に裏面処理を行うこととしている。
【0024】図1は、第1の実施の形態で用いる三次元
画像生成装置の構成を示すブロック図である。同図に示
すように、この三次元画像生成装置は、画素の輝度を格
納するフレームバッファメモリ7と、画素の奥行きを格
納するZバッファメモリ6と、当該画素生成の元となる
ポリゴンの裏表を示すデータを一時的に格納するフェイ
スレジスタ1と、記憶装置から図形データを読み出し奥
行き座標値Z及び輝度Iの演算処理や、メモリ及びフェ
イスレジスタ1に対する奥行き座標値Z及び輝度Iの読
み書き処理を行うプロセッサ4と、フレームバッファメ
モリ7の記憶内容を表示する表示装置8とを有する。
【0025】図2は、図1に示す三次元画像生成装置の
処理手順を示すフローチャートである。同図に示すよう
に、この三次元画像生成装置では、背景輝度をフレーム
バッファメモリ7に設定し、奥行き座標値Zの最大値す
なわち視点から最も離れた位置の座標値をZバッファメ
モリ6に設定することにより、フレームバッファメモリ
7とZバッファメモリ6を初期化する(S101)。
【0026】次に、三次元物体データで指示された順序
に基づいて、ローカル座標で示されたポリゴンの頂点座
標を、記憶装置等に格納された指示手順で拡大縮小、回
転、平行移動し、表示される画像の基準座標系となるグ
ローバル座標に変換する座標変換を行う(S102)。
ポリゴンの表裏の判定を行って判定結果をフェイスレ
ジスタ1に格納し(S103)、クリッピングを行う
(S104)。なお、このクリッピングは、上下左右の
面と、奥行き方向で視点に近い面と遠い面とからなる6
面に対して行われる。
【0027】そして、クリッピングされたポリゴンをス
キャン変換し(S105)、該スキャン変換したポリゴ
ン内の各画素についての奥行き座標値Zを計算する(S
106)。算出した奥行き座標値Zと、Zバッファメモ
リ6に格納されている奥行き座標値ZBとを比較し(S
107)、該奥行き座標値ZがZBよりも視点に近い位
置にある場合には、Zバッファメモリ6の内容を算出し
た座標値Zに置換する(S108)。
【0028】フェイスレジスタ1を参照し、現在処理中
の画素を構成するポリゴンの向きが画面側から見て表で
あるか裏であるかを判定し(S109)、表向きのポリ
ゴンであれば、シェーディング計算(S110)により
当該画素の輝度を求めてフレームバッファメモリ7に格
納し(S111)、裏向きのポリゴンであれば、所定の
裏面輝度をフレームバッファメモリ7に格納する(S1
12)。なお、上記S106で算出した奥行き座標値Z
がZBよりも視点の奥にあった場合には、S107〜S
112の処理は行わない。
【0029】次に、ポリゴン内部の全ての画素が処理さ
れたか否かを判断し(S113)、ポリゴン内部の全画
素の処理が終了していなければS106に移行し、処理
が終了していれば、全てのポリゴンが処理されたか否か
をさらに判断し(S114)、処理が終了していなけれ
ば、S102に移行する。
【0030】上記一連の処理を行うことにより、視点に
近い面でクリッピングされた物体の切り口が所定の裏面
輝度で塗りつぶされた三次元画像データが、フレームバ
ッファメモリ7に格納されるため、該フレームバッファ
メモリ7に記憶したデータを表示装置8で表示すること
により、三次元画像を取得することができる。
【0031】<第2の実施の形態>ところで、上記第1
の実施の形態では、物体内部に該当する部位を固定の輝
度で描画することとしたが、物体ごとに異なる輝度で描
画することもできる。また、第1の実施の形態では、フ
レームメモリへの描画時に裏面処理を行うこととした
が、表示時に裏面処理を行うこともできる。このため、
第2の実施の形態では、裏面処理において物体IDに対
応した輝度で物体内部に該当する部位を描画するととも
に、表示時に裏面処理を行うこととする。
【0032】図3は、第2の実施の形態で用いる三次元
画像生成装置の構成を示すブロック図である。同図に示
すように、この三次元画像生成装置は、画素の輝度を格
納するフレームバッファメモリ7と、画素の奥行きを格
納するZバッファメモリ6と、当該画素生成の元となる
ポリゴンの裏表を示すデータを格納するフェイスメモリ
2と、図形データの物体IDを記憶するIDメモリ5
と、記憶装置から物体IDを有する図形データを読み出
し奥行き座標値Z及び輝度Iの演算処理や、メモリに対
するIDデータ、面データ、奥行き座標値Z及び輝度I
の読み書き処理を行うプロセッサ4と、フレームバッフ
ァメモリ7の内容とフェイスメモリ2の内容から画素の
輝度を生成する面処理装置3と、その出力を表示する表
示装置8とを有する。
【0033】図4は、図3に示す三次元画像生成装置の
処理手順を示すフローチャートである。同図に示すよう
に、この三次元画像生成装置では、背景輝度をフレーム
バッファメモリ7に設定し、奥行き座標値Zの最大値す
なわち視点から最も離れた位置の座標値をZバッファメ
モリ6に設定し、IDメモリ5に初期値0を設定して、
フレームバッファメモリ7、Zバッファメモリ6及びI
Dメモリ5を初期化する(S201)。
【0034】次に、三次元物体データで指示された順序
に基づいて、ローカル座標で示されたポリゴンの頂点座
標を、記憶装置等に格納された指示手順で拡大縮小、回
転、平行移動し、表示される画像の基準座標系となるグ
ローバル座標に変換する座標変換を行う(S202)。
物体を構成するポリゴンの一つに着目し、該ポリゴンの
表裏の判定を行って判定結果をフェイスレジスタ1に格
納し(S203)、クリッピングを行う(S204)。
なお、このクリッピングは、上下左右の面と、奥行き方
向で視点に近い面と遠い面とからなる6面に対して行わ
れる。
【0035】そして、クリッピングされたポリゴンをス
キャン変換し(S205)、該スキャン変換したポリゴ
ン内の各画素についての奥行き座標値Zを計算する(S
206)。算出した奥行き座標値Zと、Zバッファメモ
リ6に格納されている奥行き座標値ZBとを比較し(S
207)、該奥行き座標値ZがZBよりも視点に近い位
置にある場合には、Zバッファメモリ6の内容を算出し
た座標値Zに置換する(S208)。
【0036】次に、シェーディング計算(S209)に
より当該画素の輝度を求めてフレームバッファメモリ7
に格納し(S210)、フェイスレジスタ1の内容をフ
ェイスメモリ2に書き込み(S211)、物体IDをI
Dメモリ5に書き込む(S212)。なお、上記S20
6で算出した奥行き座標値ZがZBよりも視点の奥にあ
った場合には、S208〜S212の処理は行わない。
【0037】次に、ポリゴン内部の全ての画素が処理さ
れたか否かを判断し(S213)、ポリゴン内部の全画
素の処理が終了していなければS206に移行し、処理
が終了していれば、全てのポリゴンが処理されたか否か
をさらに判断し(S214)、処理が終了していなけれ
ば、S203に移行する。なお、全ての物体に対する処
理を終了しなければ、ステップ202に移行する(ステ
ップ215)。
【0038】上記一連の処理を行うことにより、IDメ
モリ5にはスクリーン上の各画素について視点に最も近
いポリゴンの物体IDが格納され、フェイスメモリ2に
は、該物体を構成するポリゴンが視点に対して表向きか
裏向きかを示す面データが格納され、フレームバッファ
メモリ7には、視点に最も近いポリゴンの輝度が格納さ
れることになる。そして、これらのデータは、面処理装
置3によって処理され、実際に表示装置8に表示する輝
度が算出される。
【0039】次に、図3に示す面処理装置3の細部構成
について説明する。図5は、図3に示す面処理装置3の
細部構成を示す図である。図5に示すように、この面処
理装置3は、IDメモリ5から取得した物体のIDデー
タに基づいて裏面輝度を生成するID別裏面輝度生成回
路31と、かかる裏面輝度、フェイスメモリ2から受け
取る面データ及びフレームバッファ7より受け取る輝度
データに基づいて輝度を選択する輝度選択回路32とか
らなる。
【0040】具体的には、このID別裏面輝度生成回路
31では、IDと該IDに対応する裏面輝度を対応づけ
て登録したテーブルを準備し、受け取ったIDデータに
よりテーブル検索を行うことにより、裏面輝度を取得す
ることになる。そして、画像を表示する際には、表示座
標に対応するフレームバッファメモリ7の輝度データ
と、IDメモリ5のIDデータと、フェイスメモリ2の
面データとが面処理装置3に入力されるため、まず最初
にID別裏面輝度生成回路31がIDデータに基づいて
裏面輝度を生成し、この面データが「裏」であれば裏面
輝度を出力し、「表」であれば輝度データをそのまま出
力する。
【0041】このように、第2の実施の形態では、裏面
処理において物体IDに対応した輝度で物体内部に該当
する部位を描画することとしたので、視点に近い面でク
リッピングされた物体の切り口を該物体のIDデータに
対応する裏面輝度で塗りつぶされた三次元画像を取得す
ることができる。
【0042】<第3の実施の形態>次に、裏面処理とし
て物体IDに対応した輝度を描画し、フレームメモリへ
の描画時に裏面処理を行う第3の実施の形態について説
明する。
【0043】図6は、第3の実施の形態で用いる三次元
画像生成装置の構成を示すブロック図である。同図に示
すように、この三次元画像生成装置は、画素の輝度を格
納するフレームバッファメモリ7と、画素の奥行きを格
納するZバッファメモリ6と、当該画素生成の元となる
ポリゴンの裏表を示すデータを格納するフェイスレジス
タ1と、フレームメモリ描画時に図形データの物体ID
を一時的に記憶するIDレジスタ9と、記憶装置から物
体IDを有する図形データを読み出し奥行き座標値Z及
び輝度Iの演算処理や、メモリに対するIDデータ、面
データ、奥行き座標値Z及び輝度Iの読み書き処理を行
うプロセッサ4と、その出力を表示する表示装置8とを
有する。
【0044】図7は、図6に示す三次元画像生成装置の
処理手順を示すフローチャートである。同図に示すよう
に、この三次元画像生成装置では、背景輝度をフレーム
バッファメモリ7に設定し、奥行き座標値Zの最大値す
なわち視点から最も離れた位置の座標値をZバッファメ
モリ6に設定し、IDレジスタ9に初期値0を設定し
て、フレームバッファメモリ7、Zバッファメモリ6及
びIDレジスタ9を初期化する(S301)。
【0045】次に、三次元物体データで指示された順序
に基づいて、ローカル座標で示されたポリゴンの頂点座
標を、記憶装置等に格納された指示手順で拡大縮小、回
転、平行移動し、表示される画像の基準座標系となるグ
ローバル座標に変換する座標変換を行う(S302)。
物体を構成するポリゴンの一つに着目し、該ポリゴンの
表裏の判定を行って判定結果をフェイスレジスタ1に格
納し(S303)、クリッピングを行う(S304)。
なお、このクリッピングは、上下左右の面と、奥行き方
向で視点に近い面と遠い面とからなる6面に対して行わ
れる。
【0046】そして、クリッピングされたポリゴンをス
キャン変換し(S305)、該スキャン変換したポリゴ
ン内の各画素についての奥行き座標値Zを計算する(S
306)。算出した奥行き座標値Zと、Zバッファメモ
リ6に格納されている奥行き座標値ZBとを比較し(S
307)、該奥行き座標値ZがZBよりも視点に近い位
置にある場合には、Zバッファメモリ6の内容を算出し
た座標値Zに置換する(S308)。
【0047】次に、フェイスレジスタ1を参照し、現在
処理中の画素を構成するポリゴンの向きが画面側から見
て表であるか裏であるかを判定し(S309)、表向き
のポリゴンであれば、シェーディング計算(S310)
により当該画素の輝度を求めてフレームバッファメモリ
7に格納した後(S311)、物体IDをIDレジスタ
9へ書き込み(S313)、裏向きのポリゴンであれ
ば、所定の裏面輝度をフレームバッファメモリ7に格納
した後(S312)、物体IDをIDレジスタ9へ書き
込む(S313)。なお、上記S306で算出した奥行
き座標値ZがZBよりも視点の奥にあった場合には、S
308〜S313の処理は行わない。
【0048】次に、ポリゴン内部の全ての画素が処理さ
れたか否かを判断し(S314)、ポリゴン内部の全画
素の処理が終了していなければS306に移行し、処理
が終了していれば、全てのポリゴンが処理されたか否か
をさらに判断し(S315)、処理が終了していなけれ
ば、S303に移行する。さらに、全ての物体に対する
処理が終了したか否かを判断し(S316)、終了して
いなければS302に移行する。
【0049】上記一連の処理を行うことにより、裏面処
理として物体IDに対応した輝度を描画し、フレームメ
モリへの描画時に裏面処理を行うことが可能となる。
【0050】<第4の実施の形態>次に、裏面処理とし
て固定の裏面輝度を用い、フレームメモリへの描画時に
裏面処理を行う第4の実施の形態について説明する。す
なわち、本実施の形態は、第2の実施の形態からIDデ
ータに関する処理を除いたものである。
【0051】図8は、第4の実施の形態で用いる三次元
画像生成装置の構成を示すブロック図である。同図に示
すように、この三次元画像生成装置は、画素の輝度を格
納するフレームバッファメモリ7と、画素の奥行きを格
納するZバッファメモリ6と、当該画素生成の元となる
ポリゴンの裏表を示すデータを格納するフェイスメモリ
2と、記憶装置から図形データを読み出し奥行き座標値
Z及び輝度Iの演算処理や、メモリに対する面データ、
奥行き座標値Z及び輝度Iの読み書き処理を行うプロセ
ッサ4と、フレームバッファメモリ7の内容とフェイス
メモリ2の内容から画素の輝度を生成する面処理装置1
0と、その出力を表示する表示装置8とを有する。この
ように、この三次元画像生成装置には、図3に示すID
メモリ5及びIDレジスタ9が設けられていない。
【0052】図9は、図8に示す三次元画像生成装置の
処理手順を示すフローチャートである。同図に示すよう
に、この三次元画像生成装置では、背景輝度をフレーム
バッファメモリ7に設定し、奥行き座標値Zの最大値す
なわち視点から最も離れた位置の座標値をZバッファメ
モリ6に設定し、フレームバッファメモリ7及びZバッ
ファメモリ6を初期化する(S401)。
【0053】次に、三次元物体データで指示された順序
に基づいて、ローカル座標で示されたポリゴンの頂点座
標を、記憶装置等に格納された指示手順で拡大縮小、回
転、平行移動し、表示される画像の基準座標系となるグ
ローバル座標に変換する座標変換を行う(S402)。
物体を構成するポリゴンの一つに着目し、該ポリゴンの
表裏の判定を行って判定結果をフェイスレジスタ1に格
納し(S403)、クリッピングを行う(S404)。
なお、このクリッピングは、上下左右の面と、奥行き方
向で視点に近い面と遠い面とからなる6面に対して行わ
れる。
【0054】そして、クリッピングされたポリゴンをス
キャン変換し(S405)、該スキャン変換したポリゴ
ン内の各画素についての奥行き座標値Zを計算する(S
406)。算出した奥行き座標値Zと、Zバッファメモ
リ6に格納されている奥行き座標値ZBとを比較し(S
407)、該奥行き座標値ZがZBよりも視点に近い位
置にある場合には、Zバッファメモリ6の内容を算出し
た座標値Zに置換する(S408)。
【0055】次に、シェーディング計算(S409)に
より当該画素の輝度を求めてフレームバッファメモリ7
に格納し(S410)、フェイスレジスタ1の内容をフ
ェイスメモリ2に書き込む(S411)。なお、上記S
406で算出した奥行き座標値ZがZBよりも視点の奥
にあった場合には、S408〜S411の処理は行わな
い。
【0056】次に、ポリゴン内部の全ての画素が処理さ
れたか否かを判断し(S412)、ポリゴン内部の全画
素の処理が終了していなければS406に移行し、処理
が終了していれば、全てのポリゴンが処理されたか否か
をさらに判断し(S413)、処理が終了していなけれ
ば、S402に移行する。
【0057】上記一連の処理を行うことにより、フェイ
スメモリ2には、該物体を構成するポリゴンが視点に対
して表向きか裏向きかを示す面データが格納され、フレ
ームバッファメモリ7には、視点に最も近いポリゴンの
輝度が格納される。
【0058】次に、図8に示す面処理装置10の細部構
成について説明する。なお、この面処理装置10は、単
純な一色の裏面輝度を生成するのではなく、裏面処理範
囲外の周囲の輝度により疑似シェーディングを行うもの
である。なお、かかる裏面処理は、隠面消去終了後のフ
レームバッファの輝度データが必要であり、表示時に裏
面処理を行う三次元画像生成装置上で実現する。
【0059】図10は、図8に示す面処理装置10の構
成を示すブロック図である。図10に示す面処理装置1
0は、ラインごとに裏面処理を行う装置であり、表示の
タイミングをずらすことがないように、ラインバッファ
とパイプライン処理を用いて1画素あたりの処理を1画
素表示期間中に終えるよう構成している。
【0060】具体的には、裏面カウンタ140は、裏面
処理を必要とする範囲の画素をカウントするカウンタで
あり、その出力はカウント値FIFO141に格納され
る。なお、図11には、面データ’0’が表データであ
り、’1’が裏データである場合を示す裏面カウンタの
一例を示している。
【0061】カウント値FIFO141には、面データ
が裏から表になったときのカウント値が格納されてお
り、このカウント値は裏面処理が必要となる画素の幅に
相当する。また、同時にこの時の輝度値が輝度値FIF
O142に格納され、該輝度値は、裏面処理の最後の輝
度値に相当する。そして、面データは、面ラインバッフ
ァ146に入力され、輝度データは輝度ラインバッファ
143に入力される。
【0062】上記処理は、1ライン分行われ、FIFO
には1ライン分の面処理用のデータが蓄積され、次のス
テージでは、実際に表示する裏面輝度が生成される。輝
度デルタ値/輝度初期値生成回路144は、面ラインバ
ッファの出力する面データが「表」から「裏」になった
時に、輝度ラインバッファの輝度と輝度値FIFO14
2とカウント値FIFO141の出力から初期値とデル
タ値を算出する回路である。
【0063】具体的には、 輝度デルタ値= (輝度値FIFO出力ラッチ値 −
輝度データ値)÷ カウント値FIFO出力値 輝度初期値 = 輝度値FIFO出力ラッチ値 + 輝
度デルタ値 の算定式から求められる。ここで、輝度値FIFO出力
ラッチ値とは、輝度値FIFO142の前の出力をラッ
チ148でラッチしたものを示す。
【0064】輝度生成回路145は、輝度デルタ値及び
輝度初期値から裏面輝度値を算出する回路であり、具体
的には、面データが「表」から「裏」になった時に、裏
面輝度を輝度初期値として出力し、面データが「裏」で
ある間、裏面輝度に輝度デルタ値を加算し続け出力す
る。
【0065】輝度切替回路147は、輝度生成回路14
5の裏面輝度と輝度FIFO142の出力である輝度デ
ータを面データにより切り替える回路である。面データ
が「表」である場合には輝度データを出力し、「裏」で
ある場合には裏面輝度データを出力する。なお、この輝
度切替回路147出力は、表示装置8において表示さ
れ、結果として疑似シェーディングを行った面処理済み
の画像が生成される。
【0066】このように、本実施の形態では、疑似シェ
ーディングを行う面処理装置10を用いることとした
が、第2の実施の形態と同様に、図5に示す面処理装置
3を用いることもできる。
【0067】
【発明の効果】以上詳細に説明したように、本発明は、
ポリゴンからなる三次元物体をクリッピングして三次元
画像を生成する際に、フレームメモリへ描画する画素が
三次元物体の内部に相当するか否かを判定し、該画素が
三次元物体の内部である場合には、該画素の位置に対応
するフレームメモリの領域を所定の裏面輝度で描画し
て、視点に近い面でクリッピングされた三次元物体の切
り口を所定の裏面輝度で塗りつぶすよう構成したので、
ポリゴン物体内部の可視化を伴うことなく、該ポリゴン
物体の質感を保ちながらクリッピングを効率良く行うこ
とが可能となる。
【0068】また、本発明は、図形の裏表を示す面デー
タを格納したフェイスメモリに基づいて、画素が三次元
物体の内部であるか否かを判定するよう構成したので、
画素が三次元物体の内部であるか否かを迅速に判定する
ことが可能となる。
【0069】また、本発明は、三次元物体が異なる場合
に、異なる裏面輝度を用いて描画するよう構成したの
で、異なる三次元物体を区別して把握することが容易に
なる。
【0070】また、本発明は、フレームメモリに描画し
た画素が三次元物体の内部に相当するか否かを判定し、
フレームメモリに記憶したデータとフェイスメモリに記
憶したデータとから画素の輝度を生成するよう構成した
ので、柔軟に画素の輝度を変更することが可能となる。
【図面の簡単な説明】
【図1】第1の実施の形態で用いる三次元画像生成装置
の構成を示すブロック図である。
【図2】図1に示す三次元画像生成装置の処理手順を示
すフローチャートである。
【図3】第2の実施の形態で用いる三次元画像生成装置
の構成を示すブロック図である。
【図4】図3に示す三次元画像生成装置の処理手順を示
すフローチャートである。
【図5】図3に示す面処理装置の細部構成を示すブロッ
ク図である。
【図6】第3の実施の形態で用いる三次元画像生成装置
の構成を示すブロック図である。
【図7】図6に示す三次元画像生成装置の処理手順を示
すフローチャートである。
【図8】第4の実施の形態で用いる三次元画像生成装置
の構成を示すブロック図である。
【図9】図8に示す三次元画像生成装置の処理手順を示
すフローチャートである。
【図10】図8に示す面処理装置の細部構成を示すブロ
ック図である。
【図11】カウントアップ回路を用いた裏面カウンタの
一例を示す図である。
【図12】ポリゴン物体の一例を示す図である。
【図13】図12に示すポリゴンに対して従来のクリッ
ピングを行った一例を示す図である。
【符号の説明】
1 フェイスレジスタ 2 フェイスメモリ 3 面処理装置 4 プロセッサ 5 IDメモリ 6 Zバッファメモリ 7 フレームバッファメモリ 8 表示装置 9 IDレジスタ 10 面処理装置 31 ID別裏面輝度生成回路 32 輝度選択回路 140 裏面カウンタ 141 カウント値FIFO 142 輝度値FIFO 143 輝度値ラインバッファ 144 輝度デルタ値/輝度初期値算出回路 145 輝度生成回路 146 面ラインバッファ 147 輝度切替回路
フロントページの続き (56)参考文献 特開 平2−24784(JP,A) 特開 平3−26181(JP,A) 特開 平5−35883(JP,A) 特開 平5−128265(JP,A) 特開 平6−266821(JP,A) 特開 平8−167049(JP,A) 特開 平9−69163(JP,A) 特開 昭60−3695(JP,A) 特開 昭61−187083(JP,A) 特開 昭61−239372(JP,A) 特開 昭63−81584(JP,A) (58)調査した分野(Int.Cl.7,DB名) G06T 15/40 200 G06T 15/50 200 JICSTファイル(JOIS)

Claims (11)

    (57)【特許請求の範囲】
  1. 【請求項1】 ポリゴンからなる三次元物体をクリッピ
    ングして三次元画像を生成する三次元画像生成方法にお
    いて、 クリッピングされた三次元物体に対するフレームメモリ
    に格納する画素のデータが、前記三次元物体の内部に相
    当するか否かを判定する第1の工程と、 前記画素が三次元物体の内部であると判定された場合に
    は、該画素の位置に対応する前記フレームメモリのメモ
    リ領域に、物体内部に該当する部位を示す所定の輝度で
    ある裏面輝度を格納する第2の工程と、 を具備し、 視点に近い面でクリッピングされた前記三次元物体の切
    り口の内部を前記固定の裏面輝度により物体内部を可視
    化せずに物体を視点に近い面で切り取ったように塗りつ
    ぶすことを特徴とする三次元画像生成方法。
  2. 【請求項2】 前記第1の工程は、視点に対して図形の
    裏表を示す面データに基づいて、前記画素が三次元物体
    の内部であるか否かを判定することを特徴とする請求項
    1記載の三次元画像生成方法。
  3. 【請求項3】 前記第2の工程は、複数の異なる三次元
    物体が存在する場合に、クリッピングされた三次元物体
    にそれぞれ対応する異なる前記裏面輝度を前記フレーム
    メモリに格納することを特徴とする請求項1記載の三次
    元画像生成方法。
  4. 【請求項4】 ポリゴンからなる三次元物体をクリッピ
    ングして三次元画像を生成するプログラムを格納する記
    録媒体であって、 視点に近い面でクリッピングする際に前記三次元物体の
    切り口を塗りつぶすために用い、且つ物体内部に該当す
    る部位を示す所定の輝度である裏面輝度を示す輝度デー
    タと、 クリッピングされた三次元物体に対するフレームメモリ
    に格納する画素のデータが、前記三次元物体の内部であ
    るか否かを判定し、前記画素が三次元物体の内部である
    と判定された場合には、該画素の位置に対応する前記フ
    レームメモリのメモリ領域に前記輝度データを格納し
    て、視点に近い面でクリッピングされた前記三次元物体
    の切り口の内部を前記固定の裏面輝度により物体内部を
    可視化せずに物体を視点に近い面で切り取ったように
    りつぶすプログラムと、 を格納したことを特徴とする記録媒体。
  5. 【請求項5】 前記プログラムは、視点に対して図形の
    裏表を示す面データに基づいて、前記画素が三次元物体
    の内部であるか否かを判定することを特徴とする請求項
    4記載の記録媒体。
  6. 【請求項6】 前記輝度データは、三次元物体ごとに異
    なる裏面輝度を有し、前記プログラムは、複数の三次元
    物体が存在する場合に、クリッピングされた三次元物体
    にそれぞれ対応する裏面輝度を前記フレームメモリに格
    することを特徴とする請求項4記載の記録媒体
  7. 【請求項7】 ポリゴンからなる三次元物体をクリッピ
    ングして三次元画像を生成し、生成した三次元画像を表
    示部に表示する三次元画像生成装置において、 前記表示部に表示する三次元画像の各画素の輝度を格納
    するフレームメモリと、 クリッピングされた三次元物体に対する前記フレームメ
    モリに格納する画素のデータが前記三次元物体の内部で
    あるか否かを判定する判定手段と、 前記判定手段が前記画素を三次元物体の内部と判定した
    場合には、該画素の位置に対応する前記フレームメモリ
    のメモリ領域に物体内部に該当する部位を示す所定の輝
    度である裏面輝度を格納する格納手段と、 を具備し、 視点に近い面でクリッピングされた前記三次元物体の切
    り口の内部を前記固定の裏面輝度により物体内部を可視
    化せずに物体を視点に近い面で切り取ったように塗りつ
    ぶすことを特徴とする三次元画像生成装置。
  8. 【請求項8】 図形の裏表を表す面データを一時記憶す
    るフェイスメモリをさらに具備し、 前記判定手段は、前記フェイスメモリに一時記憶した面
    データに基づいて、前記フレームメモリに格納する画素
    が前記三次元物体の内部であるか否かを判定することを
    特徴とする請求項7記載の三次元画像生成装置。
  9. 【請求項9】 複数の三次元物体の識別情報と裏面輝度
    とを記憶する裏面輝度記憶手段をさらに具備し、 前記格納手段は、前記判定手段が前記画素を三次元物体
    の内部と判定した場合には、該三次元物体の識別情報に
    対応する前記裏面輝度記憶手段に記憶した裏面輝度で前
    記フレームメモリに格納することを特徴とする請求項7
    記載の三次元画像生成装置
  10. 【請求項10】 ポリゴンからなる三次元物体をクリッ
    ピングして三次元画像を生成し、生成した三次元画像を
    表示部に表示する三次元画像生成装置において、 前記表示部に表示する三次元画像の各画素の輝度を格納
    するフレームメモリと、 視点に対して図形の裏表を表す面データを一時記憶する
    フェイスメモリと、 クリッピングされた三次元物体に対する前記フレームメ
    モリに格納する画素のデータが、前記三次元物体の内部
    であるか否かを判定する判定手段と、 前記判定手段が前記画素を三次元物体の内部と判定した
    場合には、該画素における体内部に該当する部位を示す
    所定の輝度である裏面輝度を、前記フレームメモリに記
    憶したデータと前記フェイスメモリに記憶したデータと
    から生成し、視点に近い面でクリッピングされた前記三
    次元物体の切り口の内部を前記固定の裏面輝度により物
    体内部を可視化せずに物体を視点に近い面で切り取った
    ように塗りつぶす面処理手段と、 を具備することを特徴とする三次元画像生成装置。
  11. 【請求項11】 前記面処理手段は、三次元物体の切り口の内部を前記裏面輝度で塗りつぶす
    裏面処理に要する画素数をライン毎にカウントする裏面
    カウンタと、 前記裏面カウンタが行った画素のカウント値と裏面処理
    の最後の輝度値とを記憶する記憶手段と、各画素の 面データと輝度データとをライン毎に記憶する
    ラインバッファと、前記記憶手段と前記ラインバッファの出力値から、ライ
    ン毎に 裏面輝度の輝度デルタ値及び輝度初期値を以下の
    式によって算出し、前記ラインバッファが記憶する面デ
    ータが「表」から「裏」になったときに、輝度初期値を
    裏面輝度として出力し、該面データが「裏」である間、
    裏面輝度に輝度デルタ値を加算し続けて裏面輝度として
    出力する算出手段と、前記ラインバッファに記憶されている面データが「表」
    である場合には輝度データを出力し、「裏」である場合
    には裏面輝度データを出力する輝度切換手段 と、 を具備することを特徴とする請求項10記載の三次元画
    像生成装置。輝度デルタ値=(記憶手段出力の裏面処理最後の輝度値
    −ラインバッファ出力の輝度データ)÷記憶手段出力の
    カウント値 輝度初期値=記憶手段出力の裏面処理最後の輝度値+輝
    度デルタ値
JP11212497A 1997-04-30 1997-04-30 三次元画像生成方法及びその装置 Expired - Fee Related JP3330841B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP11212497A JP3330841B2 (ja) 1997-04-30 1997-04-30 三次元画像生成方法及びその装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11212497A JP3330841B2 (ja) 1997-04-30 1997-04-30 三次元画像生成方法及びその装置

Publications (2)

Publication Number Publication Date
JPH10302082A JPH10302082A (ja) 1998-11-13
JP3330841B2 true JP3330841B2 (ja) 2002-09-30

Family

ID=14578804

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11212497A Expired - Fee Related JP3330841B2 (ja) 1997-04-30 1997-04-30 三次元画像生成方法及びその装置

Country Status (1)

Country Link
JP (1) JP3330841B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6914603B2 (en) 2000-07-03 2005-07-05 Sony Computer Entertainment Inc. Image generating system
GB2372188B (en) * 2001-02-08 2005-07-13 Imagination Tech Ltd Volume clipping in computer 3-D Graphics

Also Published As

Publication number Publication date
JPH10302082A (ja) 1998-11-13

Similar Documents

Publication Publication Date Title
US6285779B1 (en) Floating-point complementary depth buffer
JPH0950537A (ja) ボリューム・レンダリング装置及び方法
US6172687B1 (en) Memory device and video image processing apparatus using the same
JPH06236445A (ja) 走査線巾の画素に対するシェーディング値を発生する方法、シェーディング方法、レンダーリング装置及び画素値を内挿する方法
JPH0771936A (ja) 画像処理装置及びその方法
JPH1166340A (ja) 画像処理装置、画像処理方法及び画像処理プログラムを記録した記録媒体
KR100277803B1 (ko) 3차원 그래픽 표시장치
JP2008269659A (ja) コンピュータ3dグラフィックのボリュームクリッピング
JPH11161819A (ja) 画像処理装置、画像処理方法、及び画像処理プログラムを記録した記録媒体
JP3349871B2 (ja) 画像処理装置
JP3330841B2 (ja) 三次元画像生成方法及びその装置
US20050104893A1 (en) Three dimensional image rendering apparatus and three dimensional image rendering method
JP4060375B2 (ja) スポットライト特性形成方法及びこれを用いた画像処理装置
JPH09134452A (ja) コンピュータ・グラフィックス・ディスプレイ・システムにおける奥行きバッファ値の高速補間方法及びグラフィックス・システム
JP4300650B2 (ja) 演算処理回路およびその方法と画像処理装置
KR100313846B1 (ko) 바이리니어밉매핑에서의상세도(lod)계산방법및장치
JP4995827B2 (ja) 画像処理装置、画像処理用集積回路、画像処理システム、インプットアセンブラ装置、インプットアセンブル用集積回路
US6460063B1 (en) Division circuit and graphic display processing apparatus
JP4042204B2 (ja) グラフィック演算装置およびその方法
JP2755204B2 (ja) 多面体表示方法および多面体表示装置
JPH05298456A (ja) テクスチャ・マッピング方式
TW449729B (en) Effective test ahead method and structure for Z buffer in 3D graphics
JP4482996B2 (ja) データ記憶装置とその方法および画像処理装置
JP2006201838A (ja) 画像処理装置、同装置に用いるプログラム及び画像処理方法
GB2359230A (en) Computer graphics rendering of partially transparent object

Legal Events

Date Code Title Description
FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20070719

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20080719

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20080719

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20090719

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20100719

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20110719

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20110719

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20120719

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20120719

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20130719

Year of fee payment: 11

LAPS Cancellation because of no payment of annual fees