JPH09204543A - 3次元グラフィックス空間におけるオブジェクト識別および衝突検知のための方法および装置 - Google Patents

3次元グラフィックス空間におけるオブジェクト識別および衝突検知のための方法および装置

Info

Publication number
JPH09204543A
JPH09204543A JP8340239A JP34023996A JPH09204543A JP H09204543 A JPH09204543 A JP H09204543A JP 8340239 A JP8340239 A JP 8340239A JP 34023996 A JP34023996 A JP 34023996A JP H09204543 A JPH09204543 A JP H09204543A
Authority
JP
Japan
Prior art keywords
collision
depth
information
dimensional space
rendered
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
JP8340239A
Other languages
English (en)
Other versions
JP3012541B2 (ja
Inventor
Goran Devic
デビック ゴラン
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.)
Cirrus Logic Inc
Original Assignee
Cirrus Logic Inc
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 Cirrus Logic Inc filed Critical Cirrus Logic Inc
Publication of JPH09204543A publication Critical patent/JPH09204543A/ja
Application granted granted Critical
Publication of JP3012541B2 publication Critical patent/JP3012541B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three-dimensional [3D] modelling for computer graphics
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/00Three-dimensional [3D] image rendering
    • G06T15/10Geometric effects
    • G06T15/40Hidden part removal
    • G06T15/405Hidden part removal using Z-buffer

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Computer Graphics (AREA)
  • Geometry (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Image Generation (AREA)
  • Processing Or Creating Images (AREA)

Abstract

(57)【要約】 (修正有) 【課題】オブジェクトの衝突または交差をそのZ値に基
づいて検知する。 【解決手段】奥行きバッファに記憶された3次元空間に
表示されるグラフィックスオブジェクトを表すデータ
は、3つの区分に分割される。すなわち、3次元空間に
おいてレンダリングされる各オブジェクトを識別する識
別部と、ディスプレイスクリーン上のグラフィックスオ
ブジェクトの細かさを制御するオブジェクト細かさ部
と、オブジェクトの座標情報を記憶するための奥行き座
標部である。衝突検知ユニットに記憶された奥行き情報
が、グラフィックスエンジン中の現Z値と比較されて新
しいオブジェクトが表示される。もし2つのオブジェク
トのZ値が同じであれば、これらのオブジェクトは3次
元空間内で衝突したと見なされる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、コンピュータグラ
フィックスシステムに関し、より詳細には、グラフィッ
クスサブシステムにおける、3次元グラフィックス空間
内でのオブジェクトの衝突検知ならびに識別のための方
法および装置に関する。
【0002】
【従来の技術】グラフィックス能力を有するコンピュー
タシステムにおいて、グラフィックスアプリケーション
を実行するグラフィックスコントローラは、コンピュー
タシステムのディスプレイスクリーン上に表示されるも
のを表現している信号を出力する。このような信号は、
ディスプレイスクリーン上で2次元(2D)または3次
元(3D)フォーマットをとり得る。またこの表現は、
抽象的かつ簡潔な形式からなっていることもあり、その
場合には比較的抽象的な表現からディスプレイを制御す
るために用いられる形式に変換を必要とすることもあ
る。このような変換は、ラスタディスプレイモニタを用
いたシステムにおいては、グラフィックスレンダリング
と呼ばれることがある。グラフィックス表現を表してい
る信号は、2DグラフィックスディスプレイのXおよび
Y座標を表す情報を記憶するための記憶単位を有するフ
レームバッファに、記憶され得る。
【0003】特に3Dグラフィックス環境における様々
なグラフィックスツール、アプリケーションの到来およ
び実質的なハードウェア改善は、標準化グラフィックス
言語とあいまって、複雑なグラフィックス機能を可能に
した。これは多くの普遍的なアプリケーションにおいて
さえも可能になっている。例えば、ワードプロセッサ、
スプレッドシート、デスクトップ・パブリシング、およ
びコンピュータゲームは、グラフィックス能力の改善を
利用してそのユーザーインタフェースを向上させること
ができる。
【0004】従来2Dグラフィックスディスプレイ能力
がコンピュータのユーザに利用可能であったが、3Dグ
ラフィックスディスプレイ能力もまた、ゲーム、アニメ
ーションおよびドローイング等の、パーソナルコンピュ
ータ用に設計されたパッケージの形で、コンピュータの
ユーザに利用可能になりつつある。最近のソフトウェア
アプリケーションにおける大きなグラフィックスデータ
を処理するため、グラフィックスシステムは、より高度
な機能をより少ない時間で発揮することが要求されるこ
とがある。
【0005】多くの従来のグラフィックスシステムにお
いて、グラフィックススクリーンにおけるピクセル情報
は、グラフ中の点を表現するのと同様に、XおよびY位
置を用いて表現することができる。グラフィックススク
リーンは2Dなので、XおよびY次元のみが必要とされ
ていた。
【0006】しかし、より高度なグラフィックスアプリ
ケーションおよびゲームの台頭により、多くのアプリケ
ーションが、グラフィックスプリミティブ(線分やポリ
ゴンオブジェクト等)のレンダリングから、オブジェク
ト表面のシェード化イメージのレンダリングへと、進化
してきた。このようなオブジェクトレンダリングは、各
オブジェクトの観察者の位置に対する奥行きを、表示す
ることを必要とする。
【0007】3D座標系における奥行きの次元は典型的
にはZ次元と呼ばれるため、オブジェクトの、隠れた3
次元目の表面およびシェードされた表面の奥行き情報
は、Zバッファと呼ばれる領域に保持される。Zバッフ
ァは、各ピクセルの、ディスプレイスクリーン表面に対
する、すなわち観察者の位置から離れる方向の奥行きを
表すデータを含んでいる。従って、ピクセルが表示され
るとき、その奥行き位置は、スクリーン上に既に表示さ
れているピクセルの奥行きと比較されることによって、
そのピクセルが表示されるかそれとも他のピクセルによ
って隠されるかが決定され得る。
【0008】従来技術におけるソフトウェア的およびハ
ードウェア的Zバッファは、コンピュータメインメモリ
内あるいは専用のグラフィックスディスプレイ装置メモ
リ内に位置するメモリの一部を専用に用いて、表示中の
ピクセル群の各ピクセルの奥行き次元を記憶する。ピク
セル群における各ピクセルに対して、Zバッファに記憶
されたZ座標は、「n」ビット幅であるとし、(0、Z
^n−1)ビットの大きさを有すると定義され得る。幅
「n」は、Zバッファを通じて一定であり、新しいレン
ダリングエンジン毎に、大きくなる傾向がある。多くの
従来技術レンダリングエンジンにおける平均的なZバッ
ファ幅は、大体16ビットであるが、この幅はメモリが小
型化かつ安価化するにつれ、増加している(例えば24〜
32ビット等)。
【0009】従来技術のハードウェアレンダリングエン
ジンでは、グラフィックスプリミティブを以下のように
レンダリングする。すなわち、X、Y、Zの各次元につ
いてデータ値を線形補間し、最初の2つの補間の結果を
用いて2D空間中の点を定義し、この点を、Zバッファ
アレイ(レンダリングエンジンはここに第3の補間の結
果を保存する)にアイデンティティ・マッピング(ident
ity-map)する。
【0010】図1は、従来技術のグラフィックスシステ
ムにおける、3D空間中でのオブジェクトの衝突および
交差の例を示している。図1に示す例においては、三角
形A、ボールB、およびボックスCが、互いに衝突ある
いは妨害している。三角形DおよびEは、互いに交差し
ていることがわかる。
【0011】図1に示す例においては、三角形Aとボー
ルBのZ値が同一であることにより、この2つのオブジ
ェクトが3D空間において衝突している可能性がある。
同様に、三角形AとボックスCのZ値が同一であること
により、この2つのオブジェクトが3D空間において衝
突している可能性がある。
【0012】
【発明が解決しようとする課題】グラフィックスレンダ
リングプロセスにおいては、グラフィックスプロセッサ
が現在のプリミティブの値を補間する。補間された値
は、3D空間中の現在のX、YおよびZ値である。描か
れた各ピクセルについて、グラフィックスプロセッサ
は、現在の座標に対応するZ値をZバッファから取り出
す。新しく補間されたZ値を次にZバッファ中に記憶さ
れている古いZ値と比較することにより、2つのオブジ
ェクトが衝突しているか否かを決定する。すなわち、も
し2つの値が同じであれば、描かれる点は、スクリーン
の該当箇所において同じ座標を有する同様な点と衝突し
ていると、決定される。
【0013】3D空間に描かれたオブジェクトは、各オ
ブジェクトのZバッファに記憶されているZ値に応じ
て、衝突または交差している可能性がある。オブジェク
トのZ値の衝突または交差に起因してオブジェクトがア
ーチファクトを形成してしまい、結果、観察者が表示中
のオブジェクトのエッジを見分けることが困難になるこ
とがある。
【0014】図1に示したオブジェクト衝突の例では更
に、例えばコンピュータゲームの場合、ユーザがディス
プレイスクリーン上のXYZ空間においていつオブジェ
クトが衝突したかを検知することが困難になる。従来技
術の衝突メカニズムでは更に、その後のグラフィックス
操作において、グラフィックススクリーン上の3D空間
中の点の衝突または交差をリプリケート(replicate)、
デュプリケート(duplicate)あるいは分離(isolate)する
ことが難しくなる。
【0015】Zバッファ交差問題の一つの解決法として
は、表示中のオブジェクトのエッジのZバッファ値を、
前面すなわちユーザ側に向かって引っ張り出すことによ
り、Zバッファ値をエッジ用に恣意的に変更する方法が
ある。
【0016】オブジェクト衝突のもう一つの従来の解決
法は、レンダリングされるオブジェクトの幾何学的交差
を、数学的計算を行うことによりレイトレーシング(ray
tracing)を行うものである。しかしこの方法は計算コ
ストが大きい。すなわち、多大な時間を消費し、CPU
を占領してしまう。各グラフィックスオブジェクトに対
する光線の交差は、各オブジェクトを形成する各グラフ
ィックスプリミティブに対する交差可能性を計算するこ
とによって見つけられる。
【0017】グラフィックスアプリケーションならびに
コンピュータゲームが増えるにつれ、オブジェクトの衝
突および交差をそのZ値に基づいて検知することが可能
な、オブジェクトをグラフィックススクリーンにおいて
レンダリングするための方法が、当該技術分野において
必要となってきている。
【0018】本発明は、少なくとも一つの幾何学的プリ
ミティブから形成されるオブジェクトを、3次元空間で
衝突または交差するピクセルイメージとしてレンダリン
グするコンピュータグラフィックスディスプレイシステ
ムおよび方法を提供することを目的とする。
【0019】
【課題を解決するための手段】本発明はその一局面にお
いて、グラフィックスプリミティブをレンダリングする
ためのグラフィックスプロセッサを提供する。本発明の
グラフィックスプロセッサは、3次元空間中における衝
突座標を検知するための衝突検知回路を有しており、該
衝突検知回路は、(a)レンダリングされるプリミティ
ブの奥行き情報を表すデータを記憶するための奥行き情
報記憶ユニットと、(b)新しくレンダリングされるプ
リミティブの奥行き情報を補間するための奥行き情報補
間ユニットと、(c)該奥行き情報記憶ユニットおよび
該奥行き情報補間ユニットに接続され、レンダリング中
のプリミティブに対応する奥行き情報と既存のプリミテ
ィブに対応する奥行き情報とをそれぞれから受け取る、
奥行き比較ユニットと、(d)該奥行き比較ユニットに
接続され、プリミティブの奥行き値を受け取って該表示
されるオブジェクトの衝突情報を生成する奥行き衝突情
報記憶ユニットと、を有し、そのことによって上記目的
が達成される。
【0020】前記衝突検知ユニットにおいて、前記奥行
き衝突情報記憶ユニットは、前記3次元空間中で衝突す
る前記プリミティブの前記衝突情報を記憶するための、
奥行き衝突レジスタを有していてもよい。
【0021】前記検知回路は、前記奥行き衝突情報記憶
ユニットに接続され、レンダリングされるプリミティブ
の衝突点を表すマスク情報を記憶するための奥行き衝突
マスク情報記憶ユニットを更に有していてもよい。
【0022】前記検知回路は、前記奥行き衝突情報ユニ
ットに接続され、レンダリングされるプリミティブに関
連付けられたビット情報を記憶するための奥行き衝突フ
ラグ記憶ユニットを更に有していてもよい。
【0023】前記検知回路において、前記奥行き衝突情
報記憶ユニットは少なくとも16ビット幅であってもよ
い。
【0024】前記検知回路において、前記奥行き衝突フ
ラグ記憶ユニットは、ソフトウェアを用いて動的にプロ
グラムが可能であってもよい。
【0025】前記検知回路において、前記奥行き衝突情
報記憶ユニット中に記憶された奥行き情報は、3つの部
分に区分されていてもよい。
【0026】前記検知回路において、前記衝突情報の3
つの部分の第1番目は、レンダリングされるプリミティ
ブを識別するためのビット識別情報を記憶してもよい。
【0027】前記検知回路において、前記衝突情報の3
つの部分の第2番目は、前記3次元空間中においていつ
プリミティブが衝突するかを識別するためのマスキング
情報を表していてもよい。
【0028】本発明は別の局面において、3次元空間に
おけるオブジェクトの衝突を検知および確実にするため
の衝突検知回路を有するグラフィックスプロセッサを提
供する。本発明のグラフィックスプロセッサの該衝突検
知回路は、(a)3次元空間に表示されるオブジェクト
のZ値を記憶するためのZバッファと、(b)3次元空
間においてレンダリングされるオブジェクトの新しいZ
値を補間するためのZ補間器と、(c)該Zバッファお
よび該Z補間器に接続され、該Z補間器が3次元空間に
おいてレンダリングされる該オブジェクトの新しいZ値
を補間するときに、該Zバッファ中のZ値を更新するた
めのZ更新ユニットとを有し、そのことによって上記目
的が達成される。
【0029】前記衝突検知回路において、前記更新ユニ
ットは、前記Zバッファおよび前記Z補間器に接続さ
れ、該Zバッファに記憶されたZデータに対する入力信
号および該Z補間器に対する入力信号をそれぞれ受け取
る複数のAND論理ゲートを有していてもよい。
【0030】前記衝突検知回路において、前記更新ユニ
ットは、前記AND論理ゲートに接続され、3次元空間
において新しいオブジェクトがレンダリングされている
時に、前記Zバッファの内容を更新するより前に、該Z
バッファおよび前記Z補間器に記憶されたデータを受け
取り比較する比較論理回路を更に有していてもよい。
【0031】前記衝突検知回路において、前記更新ユニ
ットは、アサートされることによって該更新ユニットが
前記Zバッファを更新することを許可するための書き込
みイネーブル信号ラインを有していてもよい。
【0032】本発明は更に別の局面におけるグラフィッ
クス情報を処理するためのグラフィックスプロセッサを
有するコンピュータシステムにおいて、該グラフィック
スプロセッサは、グラフィックスオブジェクトを表す奥
行き情報を受け取って3次元空間におけるグラフィック
スオブジェクトの衝突を検知および確実にするグラフィ
ックスオブジェクト衝突検知ユニットを有しており、該
衝突検知ユニットは、(a)該奥行き情報のどの部分が
該3次元空間において上書きされ得るかを受け取り決定
するための奥行きデータ記憶ユニットと、(b)該奥行
きデータ記憶ユニットに接続されており、衝突情報を受
け取る奥行き衝突フラグレジスタであって、該3次元空
間においてレンダリングされているオブジェクトの衝突
が起こったか否かを示すようにセットされている奥行き
衝突フラグレジスタと、(c)該奥行きデータ記憶ユニ
ットに接続され、3次元空間において衝突した可能性の
あるオブジェクトの後の識別および分離のために該奥行
き情報の部分を受けとって保持するための奥行き衝突情
報記憶ユニットとを有し、そのことによって上記目的が
達成される。
【0033】前記衝突検知ユニットにおいて、3次元空
間に表示されているオブジェクトの奥行き細かさを定義
するように定義され得るマスク情報を保持するための、
プログラム可能な奥行きマスク情報レジスタを更に有し
ていてもよい。
【0034】前記改良において、前記奥行き記憶ユニッ
トは少なくとも16ビット幅を有していてもよい。
【0035】前記衝突検知ユニットにおいて、奥行き情
報の前記部分は、3次元空間においてレンダリングされ
た際にオブジェクトを識別するための識別部を有してい
てもよい。
【0036】前記衝突検知ユニットにおいて、3次元空
間において既にレンダリングされたグラフィックスオブ
ジェクトを表す、前記奥行きデータ記憶ユニットに記憶
された奥行き情報および、3次元空間においてレンダリ
ングされるオブジェクトを表す新しく補間された奥行き
情報を受けとり、該グラフィックスオブジェクトが3次
元空間において衝突するか否かを決定するための比較器
論理回路を更に有していてもよい。
【0037】本発明は更に別の局面において、グラフィ
ックスオブジェクト衝突検知回路を有するグラフィック
ス処理システムにおいて、3次元空間におけるグラフィ
ックスオブジェクトの衝突を検知および確実にするため
の方法を提供する。該方法は、(a)3次元空間におい
てレンダリングされたオブジェクトに関連付けられた奥
行き情報を受け取るステップと、(b)3次元空間にお
いてレンダリングされるオブジェクトに関連付けられた
新しく補間された奥行き情報を受け取るステップと、
(c)既存の奥行き情報と新しく補間された奥行き情報
とが等しいか否かを比較決定するステップと、(d)該
ステップ(c)から、既存の奥行き情報と新しく補間さ
れた奥行き情報とが等しい場合に、奥行き情報を衝突情
報記憶ユニットに書き込むステップとを有し、そのこと
によって上記目的が達成される。
【0038】前記ステップ(a)は、奥行き情報を3つ
の部分に区分するステップを包含し、該3つの部分の第
1番目は、3次元空間においてレンダリングされるオブ
ジェクトを識別するためのビット識別情報を記憶しても
よい。
【0039】前記方法は、前記衝突検知ユニット中の奥
行き情報マスクレジスタを、3次元空間において新しい
グラフィックスオブジェクトをレンダリングするよりも
前に初期化するステップを更に有していてもよい。
【0040】前記方法は、奥行き衝突レジスタを、3次
元空間において新しいグラフィックスオブジェクトをレ
ンダリングするよりも前に該レジスタのビット情報内容
をバイナリ値のゼロにセットすることによって、初期化
するステップを更に有していてもよい。
【0041】前記方法は、新しいグラフィックスオブジ
ェクトをレンダリングした後に、奥行き情報レジスタを
チェックすることによって、前記レジスタの前記内容の
以前の初期化後に前記ビット情報内容が変化したか否か
を決定し、該レジスタ内容が変化している場合に前記新
しくレンダリングされたグラフィックスオブジェクトは
3次元空間中の既存のオブジェクトと衝突したと見なす
ステップを更に有していてもよい。
【0042】本発明の原理は、グラフィックスディスプ
レイスクリーン上の3次元空間においてレンダリングさ
れるオブジェクトの衝突を、検知しまた確実にするため
の新規なグラフィックスプロセッサアーキテクチャによ
って実現される。本発明は、既にディスプレイスクリー
ンに対してレンダリングされたZ情報の古い値と比較す
るための奥行きあるいはZ情報を記憶するための記憶ユ
ニットに書き込まれるべきオブジェクト奥行きあるいは
Z情報を表す新しい値の補間中に、衝突検知ユニットを
有するグラフィックスレンダリングシステムを実現す
る。
【0043】本発明の衝突検知ユニットは、レンダリン
グ中のオブジェクトのZ値を記憶するためのZ情報記憶
ユニットと、ディスプレイスクリーンに対してレンダリ
ングされるべきオブジェクトの新しいZ値を補間するた
めのZ補間ユニットとを有している。本発明は更に、Z
記憶ユニット中に記憶されたZ値情報および補間ユニッ
トからの新しいZ値を受け取る衝突比較ユニットを有し
ている。衝突比較ユニットは、2つの値を比較すること
によって、表示されるべきオブジェクトの新しいZ値が
Z記憶ユニットに書き込まれるべきか否かを決定する。
【0044】本発明の衝突検知ユニットは、許可Z衝突
ビット情報を記憶するための衝突フラグユニットを備え
ている。許可Z衝突ビット情報がシステムのユーザによ
って動的にコンフィギュレーションされることによっ
て、一つあるいは複数のグラフィックスプリミティブを
決定され得るか否かを決定してもよい。このように、Z
衝突ビット情報をグラフィックスレンダリングシステム
によってチェックすることにより、衝突が起こったか否
かを決定する。衝突許可情報をリセットし、衝突フラグ
ユニットの内容をクリアすることにより、衝突ユニット
によるオブジェクト衝突の検知を開始してもよい。
【0045】本発明の一実施態様によれば、Z記憶ユニ
ットは、少なくとも約16ビットまたは32ビット幅に設定
され、ディスプレイスクリーン上のオブジェクトのZ値
を記憶する。Z記憶ユニットは、表示されるべきオブジ
ェクトのZ値を記憶するように、ユーザによって動的に
所望の幅に設定されてもよい。Z記憶ユニットに記憶さ
れるデータは、3つの異なるフィールドに区分化するこ
とができる。これらのフィールドは、グラフィックスプ
ロセッサによるオブジェクトの識別のためのオブジェク
ト識別情報を記憶するための、オブジェクト識別フィー
ルドを含んでいてもよい。このように、Z記憶ユニット
に記憶された各3Dオブジェクトにユニークな番号を割
り当てることにより、オブジェクトがレンダリングされ
る際に、そのオブジェクトに属する各グラフィックスプ
リミティブに対するZ補間中を通じて、オブジェクト識
別番号を不変に保つことができる。
【0046】更に、オブジェクト識別フィールドは、Z
情報の残りを比較ユニットに与える前にマスクされても
よい。衝突が検知されると、Z記憶ユニットからの元の
Z値を待避しておき、オブジェクト識別番号を表す上位
ビットを後に調べることによって最後のレンダリング中
の衝突したオブジェクトの識別をすることができる。衝
突が検知されなければ、Z衝突許可情報はクリアされ、
表示中のオブジェクトの値は用いられない。
【0047】Zデータの第3の部分は、Zバッファ値が
衝突比較ユニットに与えられる前にマスクされることに
よってZバッファ値の細かさを下げることを可能にする
ような情報を、記憶する。2つの線形補間されたZ値
が、使用可能な整数の集合内で表される交差点を有する
とは限らないため、このZバッファ値の細かさの低減が
必要な場合がある。オブジェクトをレンダリングする
際、そのZ値が補間され、ディスプレイスクリーン上の
特定の点における以前のZ値と比較されることにより、
Zバッファ(そしてピクセル一般)が更新されるべきか
否かを決定する。
【0048】本発明のグラフィックスレンダリングシス
テムの別の実施態様は従って、Z記憶ユニットに記憶さ
れたオブジェクトのZ値を更新するための更新回路を有
している。オブジェクトをレンダリングする際、そのZ
値が補間され、その点における以前のZ値と比較される
ことにより、更新回路においてZ記憶ユニットが更新さ
れるべきか否かを決定する。
【0049】本発明の効果の一つは、従来技術において
はレンダリング中のオブジェクトの第3次元の情報を単
に記憶するのみであったZ記憶ユニットの用途を、シス
テムのユーザに対して更に拡張することを可能にする点
である。本発明のZ記憶ユニットは、オブジェクト識別
や、細かさを低減することにより衝突検知を確実にする
ためにユーザに用いられることが可能である。本発明に
おいて、ユーザがZ記憶ユニットを動的にプログラムす
ることにより、そこに記憶される幅データを設定するこ
とができる。
【0050】本発明の衝突検知方法は、3D空間におけ
るオブジェクトの衝突点をユーザが識別、リプリケート
(replicate)、デュプリケート(duplicate)および分離(i
solate)して後の使用に供することを可能にする。
【0051】本発明の上記およびその他の特徴、局面お
よび効果は、以下に述べる発明の詳細な説明および付属
の図面からより明らかになるであろう。
【0052】
【発明の実施の形態】図2〜図6は、本発明の様々な実
施例を説明するためのみに意図されている。本発明の原
理から逸脱することなく、本明細書に説明する構造およ
び方法の更に別の実施態様も用いることが可能であるこ
とを、当業者は以下の説明から容易に理解するであろ
う。
【0053】図2を参照して、本発明によるコンピュー
タシステム100の概略ブロック図を示す。図2におい
て、コンピュータシステム100は、中央処理ユニット
(CPU)110、グラフィックスプロセッサ120、フレー
ムバッファ130、Zユニット135、メモリコントローラ14
0、およびディスプレイユニット150を有している。
【0054】CPU110は、システムバス105を介して、
コンピュータシステム100中の他の部分との連絡を行
う。グラフィックスプロセッサ120はシステムバス105に
結合しており、フレームバッファ130に記憶されたグラ
フィックスデータを処理する。グラフィックプロセッサ
120がグラフィックスイメージ出力をディスプレイユニ
ット150に供給することにより、グラフィックスイメー
ジ出力がコンピュータシステム100のユーザに対して表
示される。
【0055】フレームバッファ130およびZユニット135
は、ディスプレイユニット150によって表示されるピク
セルのX、YおよびZ座標を表すX、YおよびZデータ
を記憶する。本発明の一実施態様において、フレームバ
ッファ130およびZユニット135を一つの集積回路115に
集積してもよい。
【0056】図3は、本発明の一実施態様における、Z
ユニット135に記憶されたデータの各ワードのビットフ
ィールド区分を示す概略図である。図3に示すように、
バッファワード300を、3つのデータ区分に分割してい
る。区分(r)301は、バッファワード300中のデータの
最下位ビットを記憶する。区分(id)303は、バッフ
ァワード300中の最上位ビットを記憶する。区分301およ
び区分303は、[id]+[r]<[n]であり、かつ0はr
の要素であり(n−1)はidの要素であるような連続
的なビットのサブセットを表していてもよい。区分302
は、バッファワード300を表すビットの残りを記憶す
る。
【0057】また、区分303に、オブジェクト識別番号
のためのデータを記憶してもよい。Zユニット135に記
憶された各3Dオブジェクトの各ピクセルに、[0,2
^id−1] の範囲の任意のユニークな番号を割り当て
てもよい。
【0058】レンダリングに際して、レンダリング中の
オブジェクトに属する各グラフィックスプリミティブに
対するZ補間中を通じて、区分303に記憶されたサブス
トリングを不変に保ってもよい。その場合、Zユニット
135に記憶された全てのZ値は、(単にピクセルのZ値
の一部を記憶するのではなく)表示されているピクセル
を識別するためのタグを持つことができる。
【0059】本発明において、Zユニット135において
衝突比較を行うよりも前に、区分303をマスクしてもよ
い。衝突が検知されたとき、表示中のオブジェクトの元
の値を待避し、その[id]を後に調べることにより、以
前のレンダリング中に衝突したオブジェクトを識別する
ことができる。また、本発明におけるZバッファの幅
は、32ビットに設定されてもよい。idフィールドおよ
びrフィールドの幅をプリセットとし、グラフィックス
レンダリングエンジンのレジスタ中に保存しておくこと
により、ユーザが動的に所望の設定を行えるようにして
もよい。
【0060】図4は、本発明による衝突回路の一実施態
様の、概略ブロック図である。衝突回路135は、Zバッ
ファ400、Z補間器410、AND論理回路420および430、
衝突比較ユニット440、OR論理回路450、およびレジス
タファイル460を有している。レジスタファイル460は、
Z_MASK_REG462、Z_COLLIDE_FLAG4
64および、Z_COLLIDE_REG466を有してい
る。
【0061】Zバッファ400は、出力ライン405を介して
AND論理回路420に接続されており、レンダリング中
のオブジェクトのZ値を、衝突比較ユニット440に対し
てレンダリングする。本発明の好適な実施態様において
は、Zバッファ400をプログラマブルに構成し、16ビッ
ト幅に構成してもよい。またZバッファ400は、出力ラ
イン405を介してZ_COLLIDE_REG466にも接続
されており、グラフィックスプロセッサ120によってレ
ンダリングされるオブジェクトのZ値を記憶する。
【0062】Z補間器410は、出力ライン406を介してA
ND論理回路430に接続されており、グラフィックスプ
ロセッサ120がディスプレイユニット150に対してレンダ
リングするオブジェクトの、新しいZ値を線形補間す
る。Z補間器410は、グラフィックスプロセッサ120のグ
ラフィックスエンジンの一部であってもよい。
【0063】AND論理回路420は、入力として、デー
タライン405および407をそれぞれZバッファ400および
Z_MASK_REG462から受け取る。データライン406
は、ディスプレイユニット150にレンダリングされてい
るオブジェクトのZ値を表しており、データライン407
は、Zバッファ400に記憶されたZ値のマスク値を表し
ている。AND論理回路420は、データライン405および
407の論理的ANDをとって出力ライン408を介して衝突
比較ユニット440に信号を出力する。
【0064】AND論理回路430は、入力として、デー
タライン406および407をそれぞれZ補間器410およびZ_
MASK_REG462から受け取る。データライン405
は、衝突回路135によってレンダリングされているオブ
ジェクトのZ値を表している。
【0065】データライン406および407のAND値は、
出力ライン409を介してAND論理回路420から衝突比較
ユニット440に出力される。
【0066】衝突比較ユニット440は、入力として、デ
ータライン408および409をそれぞれ論理回路420および4
30から受け取る。データライン408および409はそれぞ
れ、レンダリング中のオブジェクトのピクセルのZ値お
よび新しく補間されたZ値を、表している。レンダリン
グ中のオブジェクトのZ値とマスク値が等しい場合、衝
突比較ユニット440は、OR論理回路450を介してZ_C
OLLIDE_FLAG464に衝突フラグをセットするた
めのビット値を生成する。
【0067】OR論理回路450は、入力として、データ
ライン445および446をそれぞれ衝突比較ユニット440お
よびZ_COLLIDE_FLAG464から受け取る。
【0068】オブジェクトのZ値とマスク値がマッチす
る場合、衝突比較ユニット440は、データライン445を
「1」にセットする。OR論理回路450は、Z_COLL
IDE_FLAG464およびZ_COLLIDE_REG46
6に対する書き込みイネーブル信号455をアサートするこ
とにより、比較フラグおよび衝突値をそれぞれ記憶ユニ
ット464および466に書き込むことを許可する。
【0069】レンダリング中において、マスキング後の
Z値が等しい場合、衝突比較ユニット440は、Z_COL
LIDE_FLAG464中のフラグビットをバイナリ値の
「1」にセットしてもよい。Z_COLLIDE_FLA
G464中の一つのビットのみを用いてもよい。また、レ
ンダリングソフトウェアが、一つ以上のグラフィックス
プリミティブのレンダリングの前にZ_COLLIDE_
FLAG464をバイナリ値の「0」にセットし、このビ
ットをチェックすることによって衝突が起きているかど
うかを調べてもよい。また、衝突比較ユニット440がZ
バッファ400から得た元のZ値をZ_COLLIDE_R
EG466に書き込むことを許可することにより、レンダ
リングソフトウェアがこれを読み、Z_COLLIDE_
REG466の上位3ビットからオブジェクト識別番号を
分離してもよい。
【0070】本発明の好適な実施態様において、オブジ
ェクトをレンダリングする際に、そのZ値を補間し、レ
ンダリングされているピクセルの以前のZ値に対して比
較することにより、Zバッファ400および適切なXY平
面値を、Z補間器410から得られる新しい補間された値
で上書きしなければならないか否かを決定する。衝突比
較ユニット440に書き込まれる値は、Z_MASK_RE
G462において「id」区分をマスクされる。なぜな
ら、これらのビットはもはや表示されるピクセルの実際
のZ座標ではなく、識別番号を有しているだけだからで
ある。
【0071】Zデータ値からマスクされたZバッファワ
ード中のr区分は、衝突比較ユニット440に渡される前
のZバッファ値の細かさ(resolution)を低めるために用
いることができる。衝突比較ユニット440は、Z補間値
を既存のZバッファ値と比較し、それらが等しいときの
み、衝突を知らせる。2つの線形補間されたZ値が、所
定の整数の集合で表される交差点を有するとは限らない
ため、このZバッファ値の細かさの低下は必要である。
しかし、[r]=1において(最下位ビット(lsb)は比較
前にマスクされる)、Z値が偶数になり得る(あるいは
Z値を偶数にし得る)ため、衝突は容易に検出し得る。
【0072】図5は、本発明の一実施態様におけるZ値
更新回路の、概略ブロック図である。更新回路500は、
図4で説明した衝突比較回路、更新比較ユニット510、
およびAND論理回路515および520を有している。
【0073】補間を行う際、新しく補間された点が古い
点よりもZ面に対して近ければ、新しいZ値をZバッフ
ァ400に書き込まなければならない。通常、Z値が低い
ほど近いと考え、またZ値が高いほど遠いと考えること
により、更新比較ユニット510が必要に応じて書き込み
イネーブル信号504をアクティブにする。
【0074】AND論理回路515はそれぞれ、入力ライ
ン501および508を介してZバッファ400およびZ_MAS
K_REG462に接続されている。AND論理回路515
は、16ビットの出力を出力ライン502を介して更新比較
ユニット510に出力することによって、Zバッファ400の
内容を更新する。
【0075】AND論理回路520はそれぞれ入力ライン5
05および508を介してZ補間器410およびZ_MASK_R
EG462に接続されてており、ディスプレイスクリーン
に補間されるべき新しいZ値を更新する。AND論理回
路515は、16ビットの出力を出力ライン502を介して更新
比較ユニット510に出力する。
【0076】更新比較ユニット510は、レンダリングさ
れるオブジェクトの旧Z値をZバッファ400から入力ラ
イン503を介して受け取り、新しく補間された点をZ補
間器410から入力ライン507を介して受け取る。新しく補
間されたZ値と既存のZ値が比較され、それらが等しい
かどうかを決定する。もしこれらの値が等しくなけれ
ば、更新比較ユニット510は、新しいZ値をZバッファ4
00に書き込む。
【0077】本発明の好適な実施態様において、Zバッ
ファ400が32ビット幅にセットされた場合、32ビットの
Z値はZ座標情報のみならず各ピクセルの識別情報をも
保持しているために問題が起こる。これらの問題を解決
するため、id部分が、Z値の上位16ビット(Z_MA
SK_REG462の上位16ビットを用いて得られる)をマ
スクしてもよい。Z値の下位16ビットは、そのまま更新
比較ユニット510に送ることができる。ここで、16ビッ
トに限らず、Z値の識別部のビット数以上の任意のビッ
ト数を用いることができる。
【0078】図6に、本発明の一実施態様による衝突検
知方法を説明するためのフローチャートである。本発明
の衝突検知方法は基本的に、3D空間においてオブジェ
クトが衝突したことを識別するために、あるいは確実に
オブジェクトを衝突させるために用いることができる。
【0079】図6のステップ610において、オブジェク
トのディスプレイスクリーンに対するレンダリングを開
始する。ステップ610において、上位のビットと下位い
くつかのビット以外の全てのビットをバイナリ値の
「1」にセットすることにより、Z_MASK_REG46
2をセットしてもよい。「ゼロ」であり得る上位ビット
のストリングは、レンダリングされるオブジェクトのZ
値の識別部を定義している。
【0080】本発明において用いるビット数は、区別さ
れなければならないオブジェクトの数に依存する。例え
ば、64種類の異なる値を区別しなければなければならな
い場合には、6つのゼロ(すなわち2^6 64であ
る)を有するビットを用いてもよい(「0000001111」
等)。下位ビットからのストリング長は、Z値の低下レ
ベルに応じ、ゼロに設定してもよく、また、2ビットを
超えない(「...11100」等)ことが推奨される。
【0081】ステップ620において、各グラフィックス
オブジェクトがレンダリングされるより前に、Z_CO
LLIDE_FLAG464中のZ_COLLIDE_BIT
をゼロにリセットすることにより、各グラフィックスプ
リミティブの描画後にレンダリング中のオブジェクトが
1に等しいか否かをチェック可能にしてもよい。
【0082】ステップ630において、Z_COLLIDE
_BITがリセットされた後に、グラフィックスオブジ
ェクトがレンダリングされ、グラフィックスイメージが
ディスプレイスクリーンに描画される。
【0083】ステップ640において、グラフィックスプ
リミティブがレンダリングされた後、Z_COLLID
E_FLAG462中のZ_collide_bitをチェックし、Z_c
ollide_bitの値がゼロか否かを決定する。もしZ_colli
de_flagがゼロであれば、直前のレンダリングにおいて
衝突は起こっていないので、次のプリミティブのレンダ
リングを続行することができる。逆に、もしZ_collide
_bitが値がセットされていれば衝突は起こっていること
を示しているので、適切なレンダリングを行う。
【0084】ステップ650において、Z_COLLIDE
_REG466を読み、オブジェクト識別番号を含む上位ビ
ットを取り出す。この番号は、新しくレンダリングされ
たプリミティブが描画された時点で存在したオブジェク
トを表している。新しくレンダリングされたプリミティ
ブが描画された後、本発明のオブジェクト衝突検知方法
は、ステップ610に戻り、全てのレンダリングされるべ
きオブジェクトのレンダリングが終了するまで続けられ
る。
【0085】なお、本発明は、上述の実施態様に限定さ
れない。例えば、本発明は、インテル社のX86シリーズ
や、PowerPC(R)、DECAlpha(R)等任意の
マイクロプロセッサのプラットフォームにおいて適用可
能であり、任意の命令セットとともに使用することが可
能である(注:(R)は登録商標を表す)。
【0086】
【発明の効果】本発明のグラフィックスプロセッサは、
奥行き情報記憶ユニット、奥行き情報補間ユニット、奥
行き比較ユニット、および奥行き衝突情報記憶ユニット
を備えている。奥行き情報記憶ユニットは、レンダリン
グされるプリミティブの奥行き情報を表すデータを記憶
する。奥行き情報補間ユニットは、新しくレンダリング
されるプリミティブの奥行き情報を補間する。奥行き比
較ユニットは、レンダリング中のプリミティブに対応す
る奥行き情報と既存のプリミティブに対応する奥行き情
報とをそれぞれから受け取る。奥行き衝突情報記憶ユニ
ットは、プリミティブの奥行き値を受け取って該表示さ
れるオブジェクトの衝突情報を生成する。
【0087】衝突情報は、コンピュータユーザが後のグ
ラフィックス操作において、3次元空間においてレンダ
リングされたオブジェクトの衝突が望ましい場合にその
ような衝突を確実にするために、用いられ得る。
【0088】本発明のコンピュータグラフィックスディ
スプレイシステムおよび方法は、少なくとも一つの幾何
学的プリミティブから形成されるオブジェクトを、3次
元空間で衝突または交差するピクセルイメージとしてレ
ンダリングすることができる。
【0089】上記説明のように、本発明によれば、ピク
セルデータ情報をデータ記憶ユニットからタイルベース
で構成されたフレームバッファに、タイルに既に記憶さ
れているデータを上書きすることなく転送することがで
きる。
【0090】上記説明により、本発明は、コンピュータ
システムにおいてピクセル情報を処理するための新規で
優れた効果を有する方法および装置を提供することが、
理解されるであろう。
【図面の簡単な説明】
【図1】従来技術における3D空間中の三角形、ボー
ル、およびボックスを含むオブジェクトの衝突および交
差を示す、該略図である。
【図2】本発明に基づくZユニットを含むグラフィック
スサブシステムを有する、コンピュータシステムの該略
ブロック図である。
【図3】本発明の一実施態様において、3D空間にてレ
ンダリング中のオブジェクトのZ値を表すワードの区分
化を示す、該略図である。
【図4】本発明の一実施態様における、Zバッファ、Z
補間器、衝突比較ユニット、およびレジスタファイルを
有するZユニットの、内部回路を示す該略ブロック図で
ある。
【図5】本発明の一実施態様における、Zユニット内に
おいてZ値情報を更新するための更新回路を有するZユ
ニットの、内部回路を示す該略ブロック図である。
【図6】本発明によるオブジェクト衝突および交差検知
方法を説明するためのフローチャートである。
【符号の説明】
105 システムバス 110 CPU 120 グラフィクスプロセッサ 130 フレームバッファ 135 Zユニット 140 メモリコントローラ 150 ディスプレイユニット
───────────────────────────────────────────────────── フロントページの続き (71)出願人 595158337 3100 West Warren Aven ue,Fremont,Californ ia 94538,U.S.A.

Claims (23)

    【特許請求の範囲】
  1. 【請求項1】 グラフィックスプリミティブをレンダリ
    ングするためのグラフィックスプロセッサであって、3
    次元空間中における衝突座標を検知するための衝突検知
    回路を有しており、該衝突検知回路は、 (a)レンダリングされるプリミティブの奥行き情報を
    表すデータを記憶するための奥行き情報記憶ユニット
    と、 (b)新しくレンダリングされるプリミティブの奥行き
    情報を補間するための奥行き情報補間ユニットと、 (c)該奥行き情報記憶ユニットおよび該奥行き情報補
    間ユニットに接続され、レンダリング中のプリミティブ
    に対応する奥行き情報と既存のプリミティブに対応する
    奥行き情報とをそれぞれから受け取る、奥行き比較ユニ
    ットと、 (d)該奥行き比較ユニットに接続され、プリミティブ
    の奥行き値を受け取って該表示されるオブジェクトの衝
    突情報を生成する奥行き衝突情報記憶ユニットと、を有
    している、グラフィックスプロセッサ。
  2. 【請求項2】 前記奥行き衝突情報記憶ユニットは、前
    記3次元空間中で衝突する前記プリミティブの前記衝突
    情報を記憶するための、奥行き衝突レジスタを有する、
    請求項1に記載の衝突検知ユニット。
  3. 【請求項3】 前記奥行き衝突情報記憶ユニットに接続
    され、レンダリングされるプリミティブの衝突点を表す
    マスク情報を記憶するための奥行き衝突マスク情報記憶
    ユニットを更に有している、請求項1に記載の検知回
    路。
  4. 【請求項4】 前記奥行き衝突情報ユニットに接続さ
    れ、レンダリングされるプリミティブに関連付けられた
    ビット情報を記憶するための奥行き衝突フラグ記憶ユニ
    ットを更に有している、請求項1に記載の検知回路。
  5. 【請求項5】 前記奥行き衝突情報記憶ユニットは少な
    くとも16ビット幅である、請求項4に記載の検知回路。
  6. 【請求項6】 前記奥行き衝突フラグ記憶ユニットは、
    ソフトウェアを用いて動的にプログラムが可能である、
    請求項5に記載の検知回路。
  7. 【請求項7】 前記奥行き衝突情報記憶ユニット中に記
    憶された奥行き情報は、3つの部分に区分されている、
    請求項1に記載の検知回路。
  8. 【請求項8】 前記衝突情報の3つの部分の第1番目
    は、レンダリングされるプリミティブを識別するための
    ビット識別情報を記憶する、請求項7に記載の検知回
    路。
  9. 【請求項9】 前記衝突情報の3つの部分の第2番目
    は、前記3次元空間中においていつプリミティブが衝突
    するかを識別するためのマスキング情報を表している、
    請求項8に記載の検知回路。
  10. 【請求項10】 3次元空間におけるオブジェクトの衝
    突を検知および確実にするための衝突検知回路を有する
    グラフィックスプロセッサであって、該衝突検知回路
    は、 (a)3次元空間に表示されるオブジェクトのZ値を記
    憶するためのZバッファと、 (b)3次元空間においてレンダリングされるオブジェ
    クトの新しいZ値を補間するためのZ補間器と、 (c)該Zバッファおよび該Z補間器に接続され、該Z
    補間器が3次元空間においてレンダリングされる該オブ
    ジェクトの新しいZ値を補間するときに、該Zバッファ
    中のZ値を更新するためのZ更新ユニットと、を有して
    いる、グラフィックスプロセッサ。
  11. 【請求項11】 前記更新ユニットは、前記Zバッファ
    および前記Z補間器に接続され、該Zバッファに記憶さ
    れたZデータに対する入力信号および該Z補間器に対す
    る入力信号をそれぞれ受け取る複数のAND論理ゲート
    を有している、請求項10に記載の衝突検知回路。
  12. 【請求項12】 前記更新ユニットは、前記AND論理
    ゲートに接続され、3次元空間において新しいオブジェ
    クトがレンダリングされている時に、前記Zバッファの
    内容を更新するより前に、該Zバッファおよび前記Z補
    間器に記憶されたデータを受け取り比較する比較論理回
    路を更に有している、請求項10に記載の衝突検知回
    路。
  13. 【請求項13】 前記更新ユニットは、アサートされる
    ことによって該更新ユニットが前記Zバッファを更新す
    ることを許可するための書き込みイネーブル信号ライン
    を有している、請求項10に記載の衝突検知回路。
  14. 【請求項14】 グラフィックス情報を処理するための
    グラフィックスプロセッサを有するコンピュータシステ
    ムにおいて、該グラフィックスプロセッサは、グラフィ
    ックスオブジェクトを表す奥行き情報を受け取って3次
    元空間におけるグラフィックスオブジェクトの衝突を検
    知および確実にするグラフィックスオブジェクト衝突検
    知ユニットを有しており、該衝突検知ユニットは、 (a)該奥行き情報のどの部分が該3次元空間において
    上書きされ得るかを受け取り決定するための奥行きデー
    タ記憶ユニットと、 (b)該奥行きデータ記憶ユニットに接続されており、
    衝突情報を受け取る奥行き衝突フラグレジスタであっ
    て、該3次元空間においてレンダリングされているオブ
    ジェクトの衝突が起こったか否かを示すようにセットさ
    れている奥行き衝突フラグレジスタと、 (c)該奥行きデータ記憶ユニットに接続され、3次元
    空間において衝突した可能性のあるオブジェクトの後の
    識別および分離のために該奥行き情報の部分を受けとっ
    て保持するための奥行き衝突情報記憶ユニットと、 を有する衝突検知ユニット。
  15. 【請求項15】 3次元空間に表示されているオブジェ
    クトの奥行き細かさを定義するように定義され得るマス
    ク情報を保持するための、プログラム可能な奥行きマス
    ク情報レジスタを更に有する、請求項14に記載の衝突
    検知ユニット。
  16. 【請求項16】 前記奥行き記憶ユニットは少なくとも
    16ビット幅を有する、請求項14に記載の改良。
  17. 【請求項17】 奥行き情報の前記部分は、3次元空間
    においてレンダリングされた際にオブジェクトを識別す
    るための識別部を有している、請求項14に記載の衝突
    検知ユニット。
  18. 【請求項18】 3次元空間において既にレンダリング
    されたグラフィックスオブジェクトを表す、前記奥行き
    データ記憶ユニットに記憶された奥行き情報および、3
    次元空間においてレンダリングされるオブジェクトを表
    す新しく補間された奥行き情報を受けとり、該グラフィ
    ックスオブジェクトが3次元空間において衝突するか否
    かを決定するための比較器論理回路を更に有する、請求
    項14に記載の衝突検知ユニット。
  19. 【請求項19】 グラフィックスオブジェクト衝突検知
    回路を有するグラフィックス処理システムにおいて、3
    次元空間におけるグラフィックスオブジェクトの衝突を
    検知および確実にするための方法であって、 (a)3次元空間においてレンダリングされたオブジェ
    クトに関連付けられた奥行き情報を受け取るステップ
    と、 (b)3次元空間においてレンダリングされるオブジェ
    クトに関連付けられた新しく補間された奥行き情報を受
    け取るステップと、 (c)既存の奥行き情報と新しく補間された奥行き情報
    とが等しいか否かを比較決定するステップと、 (d)該ステップ(c)から、既存の奥行き情報と新し
    く補間された奥行き情報とが等しい場合に、奥行き情報
    を衝突情報記憶ユニットに書き込むステップと、 を有する方法。
  20. 【請求項20】 前記ステップ(a)は、奥行き情報を
    3つの部分に区分するステップを包含し、該3つの部分
    の第1番目は、3次元空間においてレンダリングされる
    オブジェクトを識別するためのビット識別情報を記憶す
    る、請求項19に記載の方法。
  21. 【請求項21】 前記衝突検知ユニット中の奥行き情報
    マスクレジスタを、3次元空間において新しいグラフィ
    ックスオブジェクトをレンダリングするよりも前に初期
    化するステップを更に有する、請求項20に記載の方
    法。
  22. 【請求項22】 奥行き衝突レジスタを、3次元空間に
    おいて新しいグラフィックスオブジェクトをレンダリン
    グするよりも前に該レジスタのビット情報内容をバイナ
    リ値のゼロにセットすることによって、初期化するステ
    ップを更に有する、請求項21に記載の方法。
  23. 【請求項23】 新しいグラフィックスオブジェクトを
    レンダリングした後に、奥行き情報レジスタをチェック
    することによって、前記レジスタの前記内容の以前の初
    期化後に前記ビット情報内容が変化したか否かを決定
    し、該レジスタ内容が変化している場合に前記新しくレ
    ンダリングされたグラフィックスオブジェクトは3次元
    空間中の既存のオブジェクトと衝突したと見なすステッ
    プを更に有する、請求項19に記載の方法。
JP8340239A 1995-12-19 1996-12-19 3次元グラフィックス空間におけるオブジェクト識別および衝突検知のための方法および装置 Expired - Lifetime JP3012541B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/574,889 US5812138A (en) 1995-12-19 1995-12-19 Method and apparatus for dynamic object indentification after Z-collision
US08/574,889 1995-12-19

Publications (2)

Publication Number Publication Date
JPH09204543A true JPH09204543A (ja) 1997-08-05
JP3012541B2 JP3012541B2 (ja) 2000-02-21

Family

ID=24298070

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8340239A Expired - Lifetime JP3012541B2 (ja) 1995-12-19 1996-12-19 3次元グラフィックス空間におけるオブジェクト識別および衝突検知のための方法および装置

Country Status (4)

Country Link
US (1) US5812138A (ja)
EP (1) EP0780798A3 (ja)
JP (1) JP3012541B2 (ja)
TW (1) TW340930B (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006285371A (ja) * 2005-03-31 2006-10-19 S I Electron:Kk Zソート処理回路およびこれを用いた3次元画像描画装置
JP2013097706A (ja) * 2011-11-04 2013-05-20 Seiko Epson Corp 衝突検出システム、ロボットシステム、衝突検出方法及びプログラム
US8824776B2 (en) 2011-04-21 2014-09-02 Seiko Epson Corporation Collision detection system, robotic system, collision detection method and program
WO2015099670A1 (en) * 2013-12-23 2015-07-02 Intel Corporation Techniques for enforcing a depth order policy for graphics in a display scene

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
BR9702282A (pt) * 1996-06-05 1999-07-20 Sega Enterprises Kk Processamento de imagem para um jogo
DE19624041A1 (de) * 1996-06-17 1997-12-18 Bayerische Motoren Werke Ag Verfahren zum Ändern eines elektronischen Speichers für nutzungsbezogene Daten eines Fahrzeugs
US6492991B1 (en) * 1998-08-28 2002-12-10 Ati International Srl Method and apparatus for controlling compressed Z information in a video graphics system
US6573896B1 (en) 1999-07-08 2003-06-03 Dassault Systemes Three-dimensional arrow
JP3388462B2 (ja) 1999-09-13 2003-03-24 日本電気株式会社 半導体チップ解析用プローバ及び半導体チップ解析装置
US6914605B2 (en) * 2000-03-21 2005-07-05 Matsushita Electric Industrial Co., Ltd. Graphic processor and graphic processing system
KR100355233B1 (ko) * 2000-07-03 2002-10-11 삼성전자 주식회사 정보의 비교-기록 기능을 구비하는 반도체 메모리 장치 및이의 정보 처리방법
JP2003109773A (ja) * 2001-07-27 2003-04-11 Semiconductor Energy Lab Co Ltd 発光装置、半導体装置およびそれらの作製方法
US7068269B2 (en) * 2002-08-30 2006-06-27 Brian Curtis Roberts System and method for presenting three-dimensional data
US20040046760A1 (en) * 2002-08-30 2004-03-11 Roberts Brian Curtis System and method for interacting with three-dimensional data
US7092862B2 (en) * 2002-12-05 2006-08-15 International Business Machines Corporation Apparatus and method for determining whether objects will collide
US7663630B2 (en) 2005-12-08 2010-02-16 Electronics And Telecommunications Research Institute Apparatus and method for processing collision information in graphic system
KR100778310B1 (ko) 2005-12-08 2007-11-22 한국전자통신연구원 그래픽 시스템에서의 충돌정보 처리 장치 및 그 방법
KR100718157B1 (ko) 2006-03-08 2007-05-14 삼성전자주식회사 충돌 감지 장치 및 방법
US8303681B2 (en) 2006-08-08 2012-11-06 Seoul National University Industry Foundation Mixed powder and sintered body, mixed cermet powder and cermet, and fabrication methods thereof
JP4888013B2 (ja) * 2006-09-28 2012-02-29 富士通株式会社 高さ制限算出装置、高さ制限算出方法および高さ制限算出プログラム
US8102389B2 (en) * 2007-02-14 2012-01-24 International Business Machines Corporation Box casting using an integrated acceleration data structure
US8154546B2 (en) * 2008-06-27 2012-04-10 Microsoft Corporation Rational Z-buffer for decreasing a likelihood of Z-buffer collisions
US20130088490A1 (en) * 2011-04-04 2013-04-11 Aaron Rasmussen Method for eyewear fitting, recommendation, and customization using collision detection
JP6069923B2 (ja) * 2012-07-20 2017-02-01 セイコーエプソン株式会社 ロボットシステム、ロボット、ロボット制御装置
US10810327B2 (en) * 2018-01-05 2020-10-20 Intel Corporation Enforcing secure display view for trusted transactions

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4209852A (en) * 1974-11-11 1980-06-24 Hyatt Gilbert P Signal processing and memory arrangement
US4609907A (en) * 1984-10-31 1986-09-02 International Business Machines Corporation Dual channel partial response system
US4951232A (en) * 1988-09-12 1990-08-21 Silicon Graphics, Inc. Method for updating pipelined, single port Z-buffer by segments on a scan line
US5038297A (en) * 1988-09-13 1991-08-06 Silicon Graphics, Inc. Method and apparatus for clearing a region of Z-buffer
EP0360903B1 (en) * 1988-09-29 1994-01-26 Kabushiki Kaisha Toshiba Depth information buffer control apparatus
US5101365A (en) * 1988-10-31 1992-03-31 Sun Microsystems, Inc. Apparatus for extending windows using Z buffer memory
US5157388A (en) * 1989-02-14 1992-10-20 Intel Corporation Method and apparatus for graphics data interpolation
JP3350043B2 (ja) * 1990-07-27 2002-11-25 株式会社日立製作所 図形処理装置及び図形処理方法
US5301263A (en) * 1990-09-18 1994-04-05 Hewlett-Packard Company High memory bandwidth system for updating z-buffer values
JPH06309425A (ja) * 1990-10-12 1994-11-04 Internatl Business Mach Corp <Ibm> グラフィックディスプレイ装置及び方法
US5268995A (en) * 1990-11-21 1993-12-07 Motorola, Inc. Method for executing graphics Z-compare and pixel merge instructions in a data processor
US5265199A (en) * 1991-05-22 1993-11-23 Silicon Graphics, Inc. Method and apparatus for accomplishing Z-buffering by prediction
TW241196B (ja) * 1993-01-15 1995-02-21 Du Pont
US5392393A (en) * 1993-06-04 1995-02-21 Sun Microsystems, Inc. Architecture for a high performance three dimensional graphics accelerator
US5561750A (en) * 1994-09-22 1996-10-01 Seiko Epson Corporation Z-buffer tag memory organization
US5572634A (en) * 1994-10-26 1996-11-05 Silicon Engines, Inc. Method and apparatus for spatial simulation acceleration

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006285371A (ja) * 2005-03-31 2006-10-19 S I Electron:Kk Zソート処理回路およびこれを用いた3次元画像描画装置
US8824776B2 (en) 2011-04-21 2014-09-02 Seiko Epson Corporation Collision detection system, robotic system, collision detection method and program
US9317749B2 (en) 2011-04-21 2016-04-19 Seiko Epson Corporation Collision detection system, robotic system, collision detection method and program
JP2013097706A (ja) * 2011-11-04 2013-05-20 Seiko Epson Corp 衝突検出システム、ロボットシステム、衝突検出方法及びプログラム
WO2015099670A1 (en) * 2013-12-23 2015-07-02 Intel Corporation Techniques for enforcing a depth order policy for graphics in a display scene

Also Published As

Publication number Publication date
JP3012541B2 (ja) 2000-02-21
EP0780798A3 (en) 1998-01-07
EP0780798A2 (en) 1997-06-25
US5812138A (en) 1998-09-22
TW340930B (en) 1998-09-21

Similar Documents

Publication Publication Date Title
JP3012541B2 (ja) 3次元グラフィックス空間におけるオブジェクト識別および衝突検知のための方法および装置
US4907174A (en) Z-buffer allocated for window identification
US6160557A (en) Method and apparatus providing efficient rasterization with data dependent adaptations
US8189007B2 (en) Graphics engine and method of distributing pixel data
US5572634A (en) Method and apparatus for spatial simulation acceleration
US4924414A (en) Apparatus and method for obtaining priority numbers for drawing figures forming a display figure
EP0480570A2 (en) Relating a point of selection to an object in a graphics display system
US20040212619A1 (en) Image rendering device and image rendering method
US11631187B2 (en) Depth buffer pre-pass
GB2521171A (en) Clipping of graphics primitives
KR20050030595A (ko) 화상 처리 장치 및 그 방법
EP0870282A1 (en) Method and apparatus for span and subspan sorting rendering system
WO1997005576A9 (en) Method and apparatus for span and subspan sorting rendering system
CN100399358C (zh) 图像处理装置及其方法
JPS63198174A (ja) 図形処理装置
JPH09500462A (ja) 高性能複数層zバッファを有するコンピュータ・グラフィックス・システム
US5844571A (en) Z buffer bandwidth reductions via split transactions
US5973701A (en) Dynamic switching of texture mip-maps based on pixel depth value
KR20210110812A (ko) 레지던시 맵 디스크립터
US7091979B1 (en) Pixel load instruction for a programmable graphics processor
US6348917B1 (en) Dynamic switching of texture mip-maps based on depth
EP2728551B1 (en) Image rendering method and system
US5128872A (en) Method and apparatus for determining line positions for display and manipulation by a computer system
JPH07182526A (ja) グラフィックス表示装置の表示方法
JPH03139771A (ja) グラフイツク表示システムと方法

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 19991125

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20071210

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20081210

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20091210

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20101210

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20101210

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20111210

Year of fee payment: 12

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

Free format text: PAYMENT UNTIL: 20111210

Year of fee payment: 12

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

Free format text: PAYMENT UNTIL: 20121210

Year of fee payment: 13

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

Free format text: PAYMENT UNTIL: 20121210

Year of fee payment: 13

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

Free format text: PAYMENT UNTIL: 20131210

Year of fee payment: 14

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term