JP3029554B2 - 3次元図形描画装置 - Google Patents
3次元図形描画装置Info
- Publication number
- JP3029554B2 JP3029554B2 JP7122409A JP12240995A JP3029554B2 JP 3029554 B2 JP3029554 B2 JP 3029554B2 JP 7122409 A JP7122409 A JP 7122409A JP 12240995 A JP12240995 A JP 12240995A JP 3029554 B2 JP3029554 B2 JP 3029554B2
- Authority
- JP
- Japan
- Prior art keywords
- coordinate
- dimensional
- coordinate data
- collision
- data
- 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
Links
Landscapes
- Processing Or Creating Images (AREA)
Description
に3次元物体間の位置関係を高速に検知することを可能
とした3次元図形描画装置に関する。
御部が物体座標系で記述された幾何形状データをCPU
から受け取り、それを視点座標系に変換する座標変換演
算を行い、さらにそれを2次元に投影して描画出力す
る。一方、ゲーム用ソフトなどでは、例えば、3次元空
間(視点座標系)における物体と物体との位置関係を検
知して物体同士の衝突を判定するために、CPUが上記
と同じような座標変換の演算(主に行列積の演算)を行
っている。
3次元図形描画装置では、3次元空間中の物体間の位置
関係を検知するための座標変換の演算が比較的複雑であ
ることから、性能の低いCPUには負担が大きく、物体
間の衝突判定を高速に検知することができなかった。従
って、本発明の目的は、3次元物体間の衝突判定を高速
かつ正確に検知することが可能な3次元図形描画装置を
提供することにある。
成するため、複数の3次元物体について物体座標系で表
されるn個の座標データ(x1、y1、z1)〜(xn、y
n、zn)を入力して視点座標系のn個の座標データ(x
1'、y1'、z1')〜(xn'、yn'、zn')へ座標変換す
る幾何処理部と、座標変換された前記n個の座標データ
を入力し前記n個の座標データをx、y、z座標値毎に
大小を比較する比較回路と、前記比較回路において比較
して得られたx、y,z座標値毎の最小値および最大値
を記録するレジスタと、前記レジスタに記録されたx、
y,z座標値毎の最小値および最大値を読み出してその
読み出した前記x、y,z座標値毎の最小値および最大
値で前記複数の3次元物体をそれぞれ囲む複数の3次元
境界領域を形成し、前記複数の3次元境界領域の相対位
置に基づいて対応する前記複数の3次元物体間の第1の
衝突判定を行うとともに、前記第1の衝突判定で衝突し
ていると判定するとき、3次元物体を分割した複数の分
割3次元物体をそれぞれ囲む複数の分割3次元境界領域
を形成し、他の3次元物体の複数の分割3次元物体につ
いてそれぞれ形成された複数の分割3次元境界領域との
間で第2の衝突判定を行う衝突判定手段とを備えたこと
を特徴とする3次元図形描画装置を提供する。
を説明する。図1は本装置の構成を示し、CPU1、バ
スインターフェース2、幾何処理部3、比較回路4、レ
ジスタ5、ドット描画部6、フレームメモリ7、CRT
8を有している。
U1はポリゴンまたはスプライトの座標、色等を伴う画
像データをバスインターフェース2を介して幾何処理部
3へ出力し、幾何処理部3は入力した画像データを物体
座標から視点座標へ変換した後ドット描画部6へ変換後
のデータを出力し、次いでドット描画部6からドット毎
のデータが出力されてフレームメモリ7に書き込まれ、
ビデオエンコーダ(図示せず)により画像信号化されて
所定の画像がCRT8に形成される。
を調べる必要がある場合には、まず、CPU1は位置関
係検知のための「Vertexテスト」コマンドを発行
するとともに、実際の物体の形状データとは別に予めそ
の物体の(物体座標系での)バウンディングボックスを
形成し、n個(例えば、4、6、8個)の頂点座標デー
タ(x1,y1,z1)〜(xn,yn,zn)を幾何処理部
3へ入力する。この「Vertexテスト」コマンドは
何度発行してもよく、衝突を判定すべき物体(例えば、
飛行機と弾丸)が複数あればそれらの物体毎に該コマン
ドと頂点座標データを幾何処理部3へ出力すればよい。
また、予め形成されるバウンディングボックスは物体を
構成する全てのドットを包含しうるものであればよい。
コマンドを入力すると、通常の物体座標から視点座標へ
の座標変換と同様にコマンドとともに入力した頂点座標
データを変換し、変換後の座標データ(x1',y1',z
1')〜(xn',yn',zn')を比較回路4へ出力する。
なお、本実施例では「Vertexテスト」コマンドを
入力したとき幾何処理部3は座標変換の結果を比較回路
4に出力するが、他の実施例では、「Vertexテス
ト」コマンドを入力した際、座標変換の結果を比較回路
4に出力しつつドット描画部6にも出力して、実際の物
体を描画するとともに、バウンディングボックスを形成
することもできる。この実施例の場合、「Vertex
テスト」コマンドとともに、上記通常の描画動作に供さ
れる実際の物体の形状データと同じ個数の頂点座標デー
タが幾何処理部3へ入力されるが、幾何処理部3で座標
変換された座標データのすべてをドット描画部6へ出力
する一方、比較回路4へはその座標変換された座標デー
タのうちの一部のデータ(つまり、物体のバウンディン
グボックスを形成するのに最低限必要なより少ない個数
の座標データを指定することもできる)を出力すること
もできる。
1',y1',z1')〜(xn',yn',zn')を入力順に
x、y、z座標毎に比較して、より大きい座標値および
より小さい座標値を求め、その座標値をレジスタ5に書
き込む。図2には、比較回路4におけるある座標値
x'、y'、z'の比較フローチャートが示されている。
各座標値はレジスタ5に先に書き込まれている最小値お
よび最大値と比較して更新あるいは保持され、このよう
な比較がすべて終了したとき、x座標値の最大値xma
x、最小値xmin、y座標値の最大値ymax、最小値ymi
n、z座標値の最大値zmax、最小値zminがそれぞれレ
ジスタ5に書き込まれる。なお、CPUは「Verte
xテスト」コマンドを発行する際、レジスタ5のxmi
n、ymin、zminには各最大値を、xmax、ymax、zmax
には各最小値を初期値として書き込む。
x、xmin、ymax、ymin、zmax、zminを読み出し、こ
れらの6つの座標値で囲まれるバウンディングボックス
を形成する。このバウンディングボックスはある物体を
構成するすべての頂点座標を含む最小の3次元境界領域
を表す。したがって、物体間の位置関係を検知するため
には、上述のような手順でそれぞれのバウンディングボ
ックスを形成し、それらのバウンディングボックス間の
位置関係(重なり等)を調べればよい。
物体の全体を囲む領域以外に、その物体の一部を包含す
る領域について形成してもよく、その場合には予め物体
の一部の物体座標系の座標データ(バウンディングボッ
クスデータ)が「Vertexテスト」コマンドととも
に幾何処理部3に与えられ、上記の手順と同様に座標変
換後の最大値・最小値がレジスタ5に書き込まれてバウ
ンディングボックスが形成される。
衝突判定を行う場合を考える。まず、CPU1は上述の
手順により「Vertex」コマンドを実行し、飛行機
Aの全体を囲むバウンディングボックスと飛行機Bの全
体を囲むバウンディングボックスを形成し、図3に示す
ように2つのバウンディングボックスの重なりを調べ
る。もし、2つのバウンディングボックスが重なり合っ
ていなければ、飛行機Aと飛行機Bは衝突していない。
が重なり合っていれば、飛行機Aと飛行機Bは衝突して
いる可能性があるが、これらのバウンディングボックス
は飛行機全体を囲む大まかなものであるので部分的に見
れば衝突していないかもしれない。そこで、図3に示す
ように、さらに各飛行機の部分(胴体、主翼、尾翼)に
分けてより正確なバウンディングボックスを形成し、
(2.1)〜(2.6)およびさらに(3.1)〜
(3.9)のテストを行う。これらの各衝突テストは必
要に応じて取捨選択することができ、例えば、(1)の
テストを省いて(2.1)のテストから始めることもで
きる。また、(1)のテストから始めて(2.1)〜
(2.6)は省き、(3.1)〜(3.9)の9つのテ
ストを順番に行うことで衝突判定することもできる。あ
るいは、(1)および(2.1)〜(2.6)のテスト
を省いて、いきなり(3.1)〜(3.9)の9つのテ
ストを順番に行って衝突判定することもできる。一般的
には、(1)のように最初に大まかなテストから始め
て、必要に応じてテストを細分化していく方法が用いら
れる。
元図形描画装置によれば、3次元物体に接する3次元境
界領域を用いて第1の衝突判定を行い、第1の衝突判定
で衝突していると判定された場合に、3次元物体を分割
した分割3次元物体に関する分割3次元境界領域を用い
て第2の衝突判定を行っているので、3次元物体間の衝
突判定を高速かつ正確に検知することが可能となる。
も、幾何処理部の演算結果を利用することにより物体間
の位置情報の演算をより高速に行うことができる。
ートである。
Claims (2)
- 【請求項1】複数の3次元物体について物体座標系で表
されるn個の座標データ(x1、y1、z1)〜(xn、y
n、zn)を入力して視点座標系のn個の座標データ(x
1'、y1'、z1')〜(xn'、yn'、zn')へ座標変換す
る幾何処理部と、 座標変換された前記n個の座標データを入力し前記n個
の座標データをx、y、z座標値毎に大小を比較する比
較回路と、 前記比較回路において比較して得られたx、y,z座標
値毎の最小値および最大値を記録するレジスタと、 前記レジスタに記録されたx、y,z座標値毎の最小値
および最大値を読み出してその読み出した前記x、y,
z座標値毎の最小値および最大値で前記複数の3次元物
体をそれぞれ囲む複数の3次元境界領域を形成し、前記
複数の3次元境界領域の相対位置に基づいて対応する前
記複数の3次元物体間の第1の衝突判定を行うととも
に、前記第1の衝突判定で衝突していると判定すると
き、3次元物体を分割した複数の分割3次元物体をそれ
ぞれ囲む複数の分割3次元境界領域を形成し、他の3次
元物体の複数の分割3次元物体についてそれぞれ形成さ
れた複数の分割3次元境界領域との間で第2の衝突判定
を行う衝突判定手段とを備えたことを特徴とする3次元
図形描画装置。 - 【請求項2】前記幾何処理部は座標変換したn個の座標
データを、前記n個の座標データに基づいてドット毎の
画像データを生成するドット描画部へ出力するととも
に、前記座標変換したn個の座標データの少なくとも一
部を前記比較回路へ出力する、請求項1記載の3次元図
形描画装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP7122409A JP3029554B2 (ja) | 1995-05-22 | 1995-05-22 | 3次元図形描画装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP7122409A JP3029554B2 (ja) | 1995-05-22 | 1995-05-22 | 3次元図形描画装置 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH08315180A JPH08315180A (ja) | 1996-11-29 |
| JP3029554B2 true JP3029554B2 (ja) | 2000-04-04 |
Family
ID=14835097
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP7122409A Expired - Fee Related JP3029554B2 (ja) | 1995-05-22 | 1995-05-22 | 3次元図形描画装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP3029554B2 (ja) |
Families Citing this family (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP4527853B2 (ja) * | 2000-07-28 | 2010-08-18 | 株式会社バンダイナムコゲームス | ゲームシステム及び情報記憶媒体 |
| JP4510257B2 (ja) * | 2000-09-14 | 2010-07-21 | 株式会社バンダイナムコゲームス | オブジェクト間のヒットチェック方法およびゲーム装置 |
| JP2008204813A (ja) * | 2007-02-20 | 2008-09-04 | Univ Of Tokyo | プローブ位置決め装置 |
| GB0810205D0 (en) | 2008-06-04 | 2008-07-09 | Advanced Risc Mach Ltd | Graphics processing systems |
| CN113244622B (zh) | 2021-06-22 | 2022-11-08 | 腾讯科技(深圳)有限公司 | 碰撞数据处理方法和装置、存储介质及电子设备 |
-
1995
- 1995-05-22 JP JP7122409A patent/JP3029554B2/ja not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JPH08315180A (ja) | 1996-11-29 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| KR910009101B1 (ko) | 화상합성장치 | |
| US3816726A (en) | Computer graphics clipping system for polygons | |
| US5949423A (en) | Z buffer with degree of visibility test | |
| US6172678B1 (en) | Image processing method and apparatus including hidden surface removal | |
| EP0526530B1 (en) | Image generator | |
| JP3349871B2 (ja) | 画像処理装置 | |
| EP0314288A2 (en) | Improvements in computer graphics generation and display | |
| EP1303840A1 (en) | Parallel z-buffer architecture and transparency | |
| JP3138423B2 (ja) | シミュレーション装置 | |
| US20230024820A1 (en) | Analysis device and analysis method | |
| EP0596665A1 (en) | Processing image data | |
| EP0596667A1 (en) | Processing image data | |
| US6774897B2 (en) | Apparatus and method for drawing three dimensional graphics by converting two dimensional polygon data to three dimensional polygon data | |
| JP3029554B2 (ja) | 3次元図形描画装置 | |
| JPH06348860A (ja) | 画像合成装置およびこれを用いたゲーム装置 | |
| KR20020032619A (ko) | 영상 처리 시스템, 장치, 방법 및 컴퓨터 프로그램 | |
| US4982180A (en) | Method of displaying structures three-dimensionally | |
| AU4613600A (en) | Method and apparatus for generating outlines | |
| JP3184124B2 (ja) | 衝突検知方法、物体変位方法および教育シミュレータ | |
| JP3332511B2 (ja) | 画像データ処理方法及び装置及びグラフィックシステム | |
| KR101440106B1 (ko) | 정점 데이터 처리 장치 및 방법 | |
| EP0549183B1 (en) | System for displaying solid cuts for surfaces of solid models | |
| JP2748798B2 (ja) | 3次元画像生成装置 | |
| JP3176252B2 (ja) | 3次元画像描画装置 | |
| JP2951666B2 (ja) | クリッピング方法及びグラフィックシステム並びにワークステーション |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313117 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090204 Year of fee payment: 9 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090204 Year of fee payment: 9 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100204 Year of fee payment: 10 |
|
| S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100204 Year of fee payment: 10 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100204 Year of fee payment: 10 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110204 Year of fee payment: 11 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110204 Year of fee payment: 11 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120204 Year of fee payment: 12 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130204 Year of fee payment: 13 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140204 Year of fee payment: 14 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| LAPS | Cancellation because of no payment of annual fees |