JP2000339491A - 情報処理装置および方法、並びに媒体 - Google Patents

情報処理装置および方法、並びに媒体

Info

Publication number
JP2000339491A
JP2000339491A JP15129599A JP15129599A JP2000339491A JP 2000339491 A JP2000339491 A JP 2000339491A JP 15129599 A JP15129599 A JP 15129599A JP 15129599 A JP15129599 A JP 15129599A JP 2000339491 A JP2000339491 A JP 2000339491A
Authority
JP
Japan
Prior art keywords
shadow
polygon
data
bounding
determined
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.)
Withdrawn
Application number
JP15129599A
Other languages
English (en)
Inventor
Hiroaki Ono
博明 小野
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.)
Sony Corp
Original Assignee
Sony 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 Sony Corp filed Critical Sony Corp
Priority to JP15129599A priority Critical patent/JP2000339491A/ja
Publication of JP2000339491A publication Critical patent/JP2000339491A/ja
Withdrawn legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】 影を投影するためのポリゴンを指定すること
で、物体の影を高速に描画する。 【解決手段】 ポリゴン選択部23は、ユーザの指令に
基づき、影が落ちる可能性のあるポリゴンPiを選択す
る。ポリゴン抽出部24は、入力部21からのポリゴン
のデータと、光源の位置に基づき、影が投影されるポリ
ゴンであるか否かを判定する。影判定部22は、ポリゴ
ン選択部23より選択されたポリゴンと、ポリゴン抽出
部24より判定されたポリゴンに基づき、影判定を行
う。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、情報処理装置およ
び方法、並びに媒体に関し、特に、コンピュータグラフ
ィックスにおいて、物体の影を表現する場合、影を高速
に描画できるようにした情報処理装置および方法、並び
に媒体に関する。
【0002】
【従来の技術】コンピュータグラフィックスにおいて
は、物体を可能な限り現実の画像に近づけるため、物体
の影を生成する手法がいくつか提案されている。図1
は、従来のレイトレーシング法の原理を表している。所
定の画素のデータを生成するとき、あらかじめ設定され
た所定の位置に配置されているアイポイント1からスク
リーン2上の画素に向かう第1の光線(レイ)が想定さ
れる。第1のレイが、3次元座標空間上に配置されてい
る所定のポリゴン3に衝突したとすると、基本的に、そ
の点の画像がスクリーン2に描かれる。但し、その点か
ら、ライトソース(光源)6に向けて、逆にたどる、第
2のレイ(シャドウレイ)が想定され、シャドウレイ上
に影(シャドウ4)を作る遮蔽物体5がある場合、スク
リーン2上の画素は、シャドウレイに基づく影響を演算
することで補正される。そして、補正された結果が、ス
クリーン2上の対応する画素に反映される。一般には、
すべてのポリゴンにおいて、遮蔽物体5が、シャドウ4
とライトソース6の間に位置するか否かの交差判定が行
われる。
【0003】図2は、従来の走査線単位法の原理を表し
ている。ライトソース6から光を照射したとき、ポリゴ
ン3上には、遮蔽物体5によるシャドウ4が形成され
る。スクリーン2の走査線上が1画素ずつスキャンさ
れ、各画素を通り抜けたレイとポリゴン3の平面上との
交点に、シャドウ4が存在するか否かが判定される。シ
ャドウ4が存在しない場合、何も行わず、シャドウ4が
存在する場合、ポリゴン3の持つ明るさ、および色に基
づいて、対応する画素が塗り潰される。この処理は、す
べての走査線について行うことにより、同時に、隠面消
去の処理も行われる。
【0004】図3は、従来の2段階法の原理を表してい
る。第1段階として、同図の左側に示すようにポリゴン
3を光源から見たときの位置関係が考慮される。そし
て、光源から見たときにポリゴン3により隠されるスク
リーン2の領域がクリッピング領域10として保持され
る。第2段階として、同図の右側に示すようにポリゴン
3を視点から見たときの位置関係が考慮される。そし
て、第1段階で保持されたクリッピング領域10に対応
する領域の画像がシャドウ4として、スクリーン2上に
反映される。
【0005】図4は、従来のシャドウポリゴン法の原理
を表している。光源からの光を、空間に配置されている
ポリゴン3に衝突させたとき、シャドウ4(シャドウボ
リューム(Shadow Volume))を作る遮蔽物体5がある
か否かが判定され、遮蔽物体5があると判定された場
合、図示せぬスクリーン上の各走査線を含む走査面とシ
ャドウ4(シャドウボリューム)との交差部分が求めら
れる。そして、その交差部分は、その走査線上で影とし
て描画される。
【0006】
【発明が解決しようとする課題】物体の影を描画する場
合、図1の例においては、全ての画素を通るレイと、レ
イに対する最近ポリゴンとの交点に対して、ライトソー
ス6と交点間を結ぶシャドウレイとすべてのポリゴンと
の交差判定をするため、演算時間が、画素数やポリゴン
の数に依存し、画素数やポリゴンの数が多くなると、演
算量が多くなる。
【0007】図2または図3の例においては、ポリゴン
毎に演算が行われるため、演算時間がポリゴンの数に依
存し、ポリゴンの数が多い程、演算時間も増大する。さ
らに、図3の例は、クリッピング領域10の保持の仕方
にも演算時間が依存する。
【0008】図4の例においては、空間面を確保するた
めに新たなデータ容量が必要となるため、ポリゴンの数
が多い程、全体的なデータ量が莫大になる。さらに、全
体的なデータ量は、光源の数に依存する。
【0009】このように、従来より提案されている図1
乃至図4の方法では、処理時間がポリゴンの数に依存し
ており、ポリゴンの数が増えた場合に処理時間の増加を
抑えることができない課題があった。
【0010】本発明はこのような状況に鑑みてなされた
ものであり、影を投影するポリゴンを指定することによ
り、物体の影を高速に描画することを可能にするもので
ある。
【0011】
【課題を解決するための手段】請求項1に記載の情報処
理装置は、他の物体の影を投影するポリゴンを指定する
指定手段と、指定手段により指定されたポリゴンに対し
て投影する、他の物体の影を演算する演算手段と、演算
手段が演算した影を描画する描画手段とを備えることを
特徴とする。
【0012】請求項2に記載の情報処理方法は、他の物
体の影を投影するポリゴンを指定する指定ステップと、
指定ステップにより指定されたポリゴンに対して投影す
る、他の物体の影を演算する演算ステップと、演算ステ
ップが演算した影を描画する描画ステップとを備えるこ
とを特徴とする。
【0013】請求項3に記載の媒体のプログラムは、他
の物体の影を投影するポリゴンを指定する指定ステップ
と、指定ステップにより指定されたポリゴンに対して投
影する、他の物体の影を演算する演算ステップと、演算
ステップが演算した影を描画する描画ステップとを含む
ことを特徴とする。
【0014】請求項1に記載の情報処理装置、請求項2
に記載の情報処理方法、および請求項3に記載の媒体に
おいては、影を投影する物体が指定され、指定された物
体に対する影が演算される。
【0015】
【発明の実施の形態】以下、本発明に係わる情報処理装
置の実施の形態について、図面を参照しながら説明す
る。最初に、本発明の原理について図5と図6を参照し
て説明する。図5は、影判定を行うポリゴンを指定する
場合の原理を表している。ユーザは、ライトソース11
からの光が、オブジェクト(物体)12を照射したと
き、影が落ちる可能性があるポリゴン(物体)を指定す
る。この例では、図中、ハッチングを施したポリゴンP
1,P2が影を投影するポリゴンとして指定されてい
る。この場合、シャドウ13の演算は、指定されたポリ
ゴンP1,P2に対してのみ行われる。
【0016】図6は、指定(仮定)されたバウンディン
グデータから影を生成する原理を表している。ユーザ
は、影を投影するポリゴンP3を指定したとき、さら
に、ライトソース11からの光に基づき、オブジェクト
12によりポリゴンP3上に形成されるシャドウ13の
形状を定型化する(実際の影とは異なる簡単な形状とす
る)ための形状(バウンディングデータの種類)を指定
する。この例では、バウンディングスフィア14が指定
されている。アイポイント15からスクリーン16を介
して観察したときのシャドウ13の形状は、実際のオブ
ジェクト12ではなく、バウンディングスフィア14を
基に演算される。
【0017】上述したようにすることで、より迅速な描
画が可能となる。
【0018】次に、本発明を適用した情報処理装置の構
成について、図7を参照して説明する。入力部21は、
オブジェクト12を表現する3次元座標(x,y,z)から
なるポリゴンのデータを読み込み、そのポリゴンのデー
タを影判定部22、ポリゴン選択部23、ポリゴン抽出
部24、およびポリゴン群選択部25に出力する。ポリ
ゴン選択部23は、入力部21から入力されたポリゴン
のデータから、ユーザの指令に基づき、影が落ちる可能
性のある(影を投影するための演算対象とする)ポリゴ
ンPiを選択し、影判定部22に出力する。ポリゴン抽
出部24は、入力部21から入力されたポリゴンのデー
タと、ライトソース11の位置に基づき、そのポリゴン
が、影が投影されるポリゴンであるか否かを判定し、そ
の判定結果を影判定部22に出力する。
【0019】ここで、ポリゴン選択部23で選択された
結果、またはポリゴン抽出部24で判定された結果であ
る「影判定が必要」または「影判定は不要」という情報
は、各ポリゴンに対応するバッファに、「1」(影判定
を必要とする)、または「0」(影判定を必要としな
い)という形式(フラグ)で保持される。
【0020】ポリゴン群選択部25は、入力部21から
入力されたポリゴンのデータに基づき、影の形状を簡単
にしたいポリゴン群を、ユーザからの指令に対応して選
択し、バウンディングデータ指定部26に出力する。バ
ウンディングデータ指定部26は、ポリゴン群選択部2
5により選択されたポリゴン群に対応するバウンディン
グデータ(Bounding Data)の種類を、ユーザの指定に
対応して指定する。この例では、球(以下、スフィア
(Sphere)と称する)または立方体(以下、ボックス
(Box)と称する)の2種類のいずれかが指定され、バ
ウンディングデータ生成部27に出力される。バウンデ
ィングデータ生成部27は、バウンディングデータ指定
部26により指定されたバウンディングスフィア、また
はバウンディングボックスから、対応するバウンディン
グデータを生成し、影判定部22に出力する。すなわ
ち、バウンディングデータ生成部27では、ポリゴン群
選択部25で選択されたポリゴン群を、簡単なポリゴン
に置き換えるためのデータが生成されることになる。
【0021】影判定部22は、入力部21、ポリゴン選
択部23、ポリゴン抽出部24、およびバウンディング
データ生成部27からの入力に基づき、影判定を行った
後、データを合成し、レンダリング部28に出力する。
【0022】レンダリング部28は、影判定されたデー
タに基づき、例えば、レイトレーシング法等でレンダリ
ングし、その結果を、フレームバッファ29に出力す
る。
【0023】フレームバッファ29は、レンダリングさ
れたデータを、一旦記憶した後、CRT(Cathode Ray Tub
e)等の表示装置30に出力し、描画させる。また、レ
ンダリング結果は、テープ、またはディスク等の記録媒
体に記録させてもよい。
【0024】次に、図7の情報処理装置における影判定
処理について、図8のフローチャートを参照して説明す
る。ステップS1において、入力部21は、オブジェク
ト12を表現する3次元座標(x,y,z)からなるポリゴ
ンのデータを読み込む。
【0025】次に、ユーザの指令に対応して、ステップ
S2とS3のいずれか一方の処理が行われる。ステップ
S2において、ポリゴン選択部23は、ステップS1で
読み込まれたポリゴンのデータに基づき、影が落ちる可
能性のあるポリゴン、すなわち影判定を行うポリゴン
を、ユーザの指令に対応して選択する。ステップS3に
おいて、ポリゴン抽出部24は、ステップS1で読み込
まれたポリゴンのデータと、ライトソース11の位置デ
ータに基づき、影判定を行うポリゴンを抽出する。ここ
で、影判定が必要であるという情報は、各ポリゴンが持
つバッファに、「1」または「0」という形式で保持さ
れる。
【0026】ここで、影判定を行うポリゴンを光源を考
慮して抽出する処理の詳細について、図9のフローチャ
ートを参照して説明する。ステップS21において、ポ
リゴン抽出部24は、ステップS1で読み込まれたポリ
ゴンのデータとライトソース11の位置に基づき、所定
の注目ポリゴンの3個の頂点とライトソース11を結ぶ
直線が、他のポリゴンと交差するか否かを判定し、注目
ポリゴンとライトソース11を結ぶ3本の直線が、他の
どのポリゴンとも交差しないと判定した場合、ステップ
S22に進む。
【0027】ステップS22において、ポリゴン抽出部
24は、その注目ポリゴンは影ではない(その注目ポリ
ゴンには、影は投影されない)と決定する。
【0028】ステップS25において、ポリゴン抽出部
24は、ステップS22の判定結果から、「影ではな
い」という情報を注目ポリゴンに付加する。
【0029】また、ステップS21において、ポリゴン
抽出部24は、3本の直線のうち、1つまたは2つが、
他のポリゴンと交差すると判定した場合、ステップS2
3に進む。
【0030】ステップS23において、ポリゴン抽出部
24は、その注目ポリゴンは影判定が必要と決定する。
【0031】ステップS25において、ポリゴン抽出部
24は、ステップS23の判定結果から、「影判定が必
要」という情報を注目ポリゴンに付加する。
【0032】また、ステップS21において、ポリゴン
抽出部24は、3本の直線の、すべてが、いずれかのポ
リゴンと交差すると判定した場合、ステップS24に進
む。
【0033】ステップS24において、ポリゴン抽出部
24は、その注目ポリゴンは影である(その注目ポリゴ
ンには、影が投影される)と決定する。
【0034】ステップS25において、ポリゴン抽出部
24は、ステップS24の判定結果から、「影である」
という情報を注目ポリゴンに付加する。
【0035】ステップS26において、ポリゴン抽出部
24は、全てのポリゴンに、ステップS22乃至S24
で判定された情報が付加されているか否かを判定し、全
てのポリゴンに情報がまだ付加されていないと判定され
た場合、ステップS21に戻り、上述した処理を繰り返
し実行する。全てのポリゴンに情報が付加されている場
合、ポリゴン抽出処理は終了される。
【0036】図8に戻って、ステップS4において、ポ
リゴン群選択部25は、ユーザがステップS2で影判定
を行うものとして指定したポリゴン群の中から、影の形
状を簡単にしたいポリゴン群をユーザの指定に対応して
選択する。
【0037】ステップS5において、バウンディングデ
ータ指定部26は、ステップS4で選択されたポリゴン
群の中から、バウンディングデータの種類として、スフ
ィアまたはボックスのいずれかを、ユーザの指令に対応
して指定する。
【0038】ステップS6において、バウンディングデ
ータ生成部27は、ステップS5で指定されたバウンデ
ィングスフィアまたはバウンディングボックスに対応す
るバウンディングデータを生成する。
【0039】バウンディングデータを生成する処理につ
いて以下に説明する。まず、バウンディングスフィアを
生成する処理について、図10のフローチャートを参照
して説明する。ステップS31において、バウンディン
グデータ生成部27は、ポリゴン群に包含されている各
ポリゴンの3頂点の平均座標を求める。
【0040】ステップS32において、バウンディング
データ生成部27は、ステップS31で求められた各ポ
リゴンの3頂点の平均座標から、さらに平均を求め、そ
れをバウンディングスフィアの中心座標とする。
【0041】ステップS33において、バウンディング
データ生成部27は、ステップS32で求められたバウ
ンディングスフィアの中心座標から、一番遠いポリゴン
の頂点を求め、その距離をバウンディングスフィアの半
径とする。
【0042】ステップS34において、バウンディング
データ生成部27は、ステップS32で求められた中心
座標と、ステップS33で求められた半径を、バウンデ
ィングスフィアのデータとする。
【0043】次に、バウンディングボックスを生成する
処理について、図11のフローチャートを参照して説明
する。ステップS41において、バウンディングデータ
生成部27は、ポリゴン群に包含されている各ポリゴン
の3頂点の平均座標を求める。
【0044】ステップS42において、バウンディング
データ生成部27は、ステップS41で求められた各ポ
リゴンの3頂点の平均座標から、さらに平均を求め、そ
れをバウンディングボックスの基準座標とする。
【0045】ステップS43において、バウンディング
データ生成部27は、ステップS42で求められたバウ
ンディングボックスの基準座標から、ポリゴンの各頂点
までの距離のうち、x軸方向の最大値と最小値、y軸方
向の最大値と最小値、およびz軸方向の最大値と最小値
を、各々求める。
【0046】ステップS44において、バウンディング
データ生成部27は、ステップS43で求められた6個
の値を次のようにして組み合わせて得られる8個の座標
のそれぞれを、バウンディングボックスの頂点とし、そ
れをバウンディングボックスのデータとする。なお、記
号+は、x軸、y軸、またはz軸の各座標値に対して、
基準座標のx軸座標値、y軸座標値、またはz軸座標値
を、それぞれ加算することを意味する。
【0047】 (+x方向最大値,+y方向最大値,+z方向最大値) (+x方向最大値,+y方向最小値,+z方向最大値) (+x方向最小値,+y方向最大値,+z方向最大値) (+x方向最小値,+y方向最小値,+z方向最大値) (+x方向最大値,+y方向最大値,+z方向最小値) (+x方向最大値,+y方向最小値,+z方向最小値) (+x方向最小値,+y方向最大値,+z方向最小値) (+x方向最小値,+y方向最小値,+z方向最小値) 図8に戻って、ステップS7において、影判定部22
は、入力部21から入力されたポリゴンデータに基づい
て、視線と視点に最も近いポリゴン(最近ポリゴン)と
の交点(以下、計算点と称する)を求める。
【0048】ステップS8において、影判定部22は、
ステップS7で求められた計算点が、ステップS2また
はステップS3の処理でバッファに保持された「影判定
が必要」であるか否かの情報(「0」または「1」)に
基づいて、その計算点が影判定を行うポリゴン(フラグ
が「1」のポリゴン)であるか否かを判定し、影判定を
行うと判定した場合、ステップS9に進む。
【0049】ステップS9において、影判定部22は、
ステップS7で求められた計算点とライトソース11と
を直線で結び、のシャドウレイを導出する。
【0050】ステップS10において、影判定部22
は、ステップS9で導出されたシャドウレイと各ポリゴ
ンとの交差判定、またはステップS6で生成されたバウ
ンディングデータとの交差判定をすることにより、影判
定を行う。
【0051】影判定の処理について、図12のフローチ
ャートを参照して説明する。ステップS51において、
影判定部22は、ステップS9で導出されたシャドウレ
イと、ステップS6で求められたバウンディングデータ
が、交差するか否かを判定し、シャドウレイと交差する
バウンディングデータが存在すると判定した場合、ステ
ップS52に進む。
【0052】ステップS52において、影判定部22
は、ステップS51でシャドウレイと交差すると判定さ
れたバウンディングデータの属性が、それが透明体であ
るということを示しているか否かを判定し、透明体であ
る場合、ステップS53に進む。
【0053】また、影判定部22は、ステップS51に
おいて、シャドウレイと交差するバウンディングデータ
が存在しないと判定した場合にも、ステップS53に進
む。
【0054】ステップS53において、影判定部22
は、バウンディングデータに包含されていないポリゴン
が、シャドウレイと交差するポリゴンが存在するか否か
を判定し、シャドウレイと交差するポリゴンが存在する
と判定した場合、ステップS54に進む。
【0055】ステップS54において、影判定部22
は、ステップS53で交差すると判定されたポリゴン
が、透明体であるか否かを判定し、透明体であると判定
した場合、ステップS55に進む。
【0056】また、ステップS53において、シャドウ
レイと交差するポリゴンが存在しないと判定された場合
にも、処理はステップS55に進む。
【0057】ステップS55において、影判定部22
は、ステップS54で透明体であると判定されたポリゴ
ン、または、ステップS53でシャドウレイと交差しな
いと判定されたポリゴンを、「影ではない」と判定す
る。
【0058】また、ステップS54において、ステップ
S53でシャドウレイに交差すると判定されたポリゴン
が、透明体ではないと判定された場合、処理はステップ
S56に進む。
【0059】さらに、ステップS52において、ステッ
プS51でシャドウレイと交差すると判定されたバウン
ディングデータが、透明体ではないと判定された場合に
も、処理はステップS56に進む。
【0060】ステップS56において、影判定部22
は、ステップS54で透明体ではないと判定されたポリ
ゴン、または、ステップS52で透明体ではないと判定
されたバウンディングデータを、「影である」と判定す
る。
【0061】さらに、図8のステップS10の影判定の
他の例について、図13のフローチャートを参照して説
明する。ステップS61において、影判定部22は、ス
テップS9で導出されたシャドウレイとステップS6で
求められたバウンディングデータが、交差するか否かを
判定し、シャドウレイと交差するバウンディングデータ
が存在すると判定した場合、処理をステップS62に進
める。
【0062】ステップS62において、影判定部22
は、ステップS61でシャドウレイと交差すると判定さ
れたバウンディングデータが、透明体であるか否かを判
定し、透明体であると判定した場合、処理をステップS
63に進める。
【0063】ステップS63において、影判定部22
は、シャドウレイと交差するポリゴンが存在するか否か
を判定し、シャドウレイと交差するポリゴンが存在する
と判定した場合、処理をステップS64に進める。
【0064】ステップS64において、影判定部22
は、ステップS63で交差すると判定したポリゴンが、
透明体であるか否かを判定し、透明体であると判定した
場合、処理をステップS65に進める。
【0065】また、ステップS63において、影判定部
22は、シャドウレイと交差するポリゴンが存在しない
と判定した場合、処理をステップS65に進める。
【0066】ステップS65において、影判定部22
は、ステップS64で透明体であると判定されたポリゴ
ン、または、ステップS62で透明体であると判定され
たバウンディングデータを、「半影である」と判定す
る。半影であると判定された場合、ライトソース11か
らの光は、所定の透過率で透過される。なお、この透過
率は、ユーザにより、バウンディングデータ、またはポ
リゴンに、予め設定される。
【0067】また、ステップS62において、影判定部
22は、ステップS61でシャドウレイと交差すると判
定したバウンディングデータが、透明体でないと判定し
た場合、処理をステップS66に進める。
【0068】同様に、ステップS64において、影判定
部22は、ステップS63で交差すると判定されたポリ
ゴンが、透明体でないと判定した場合、処理をステップ
S66に進める。
【0069】ステップS66において、影判定部22
は、ステップS62で透明体でないと判定されたバウン
ディングデータ、またはステップS64で透明体でない
と判定されたポリゴンを、「影である」と判定する。
【0070】また、ステップS61において、影判定部
22は、シャドウレイと交差するバウンディングデータ
が存在しないと判定した場合、処理をステップS67に
進める。
【0071】ステップS67において、影判定部22
は、バウンディングデータに包含されていないポリゴン
が、シャドウレイと交差するか否かを判定し、シャドウ
レイと交差するポリゴンが存在すると判定した場合、処
理をステップS68に進める。
【0072】ステップS68において、影判定部22
は、ステップS67でシャドウレイと交差すると判定さ
れたポリゴンが、透明体であるか否かを判定し、透明体
であると判定した場合、処理をステップS65に進め
る。
【0073】上述したように、ステップS65におい
て、影判定部22は、ステップS68で透明体であると
判定したポリゴンを、「半影である」と判定する。
【0074】また、ステップS67において、シャドウ
レイと交差するポリゴンが存在しないと判定した場合、
処理はステップS69に進められる。
【0075】ステップS69において、影判定部22
は、ステップS67でシャドウレイと交差しないと判定
したポリゴンを、「影ではない」と判定する。
【0076】また、ステップS68において、影判定部
22は、ステップS67でシャドウレイと交差すると判
定したポリゴンが、透明体ではないと判定した場合、処
理をステップS66に進める。
【0077】ステップS66において、影判定部22
は、ステップS68で透明体ではないと判定したポリゴ
ンを、「影である」と判定する。
【0078】図8に戻って、ステップS11において、
レンダリング部28は、以上のようにして影判定された
結果に基づいたデータをレンダリングする。なお、図1
3を適用した場合、「半影である」と判定されたときの
レンダリングは、上述したようにして設定された透過率
のパラメータを基にして行われる。
【0079】また、ステップS8において、影判定部2
2は、ステップS7で求められた計算点が、影判定を行
うポリゴンに属していないと判定された場合、処理をス
テップS12に進める。
【0080】ステップS12において、影判定部22
は、そのポリゴンを、「影ではない」と判定する。
【0081】ステップS11において、レンダリング部
28は、ステップS12で「影ではない」と判定された
結果に基づいたデータをレンダリングし、すべてのレン
ダリングが完了すると、フローチャートの処理は終了さ
れる。
【0082】フレームバッファ29は、レンダリングさ
れた結果を一旦記憶するとともに、CRT等の表示装置3
0に出力し、描画させる。また、レンダリング結果は、
記録媒体に記録させてもよい。
【0083】次に、本発明による影判定のシミュレーシ
ョン結果について以下に示す。任意に設定された123
個のポリゴン、画像サイズ640×480画素、並びに
バウンディングスフィアが1個選択されたときの影判定
のシミュレーション結果を以下に示す。これより、影を
落としたい、または落ちる可能性のあるポリゴンを選択
し、影判定を行うアルゴリズム(Select Polygon)
と、バウンディングデータを選択し、影判定を行うアル
ゴリズム(Use Bounding Data)を組み合わせること
で、影判定が高速に行われることが確認された。
【0084】 Not Use Bounding Data Use Bounding Data Not Select Polygon 225.615秒 8.175秒 Select Polygon 73.125秒 7.813秒 すなわち、いずれも使用しないとき、225.615秒
であったレンダリングが、ポリゴンを指定(選択)する
と、73.125秒となり、バウンディングデータを使
用すると、8.175秒となり、両方を使用すると、
7.813秒となる。
【0085】以上のように、影を落としたい、または落
ちる可能性のあるポリゴンを選択し、交差判定を行うア
ルゴリズム、およびバウンディングデータを選択し、交
差判定を行うアルゴリズムの一方、または両方を組み合
わせることで、影判定が行われる。これにより、オブジ
ェクトの影を描画するための演算は、全てのポリゴンに
おいて、交差判定を行う演算に比べ、速く実行すること
ができ、オブジェクトの影を高速に描画することが可能
となる。
【0086】また、影を簡単にしたいポリゴンを選択し
てバウンディングデータを生成し、それを影判定に利用
することにより、影を簡単にしたいポリゴンは、簡略化
された影を作成することができ、影を簡単にしたくない
ポリゴンは、正確な影を作成することができ、影のクオ
リティのウエイト付けを、ユーザが決定することができ
る。
【0087】さらに、シャドウレイと各ポリゴンの交差
判定、またはバウンディングデータとの交差判定を行う
場合、1つでも交差していると判定されると影であるこ
とが決定するので、その時点で交点におけるシャドウレ
イとポリゴンの交差判定を打ち切ることができる。従っ
て、全てのポリゴン、またはバウンディングデータとの
交差判定をする必要がない場合、判定を途中で打ち切る
ことで、効率のよい演算が可能となる。
【0088】ところで、ある交差判定において、1つ前
の計算点の影判定で、交差するポリゴンまたはバウンデ
ィングデータが存在する場合、1つ前の計算点と現計算
点における影判定の情報を利用することで、交差判定が
行われる。なぜなら、1つ前の計算点と現計算点の位置
は、近い可能性が高く、計算点からの影判定の結果も同
じである可能性が高いからである。このように、影判定
においては、より効率の良い演算が可能となる。
【0089】次に、図14を参照して、上述した一連の
処理を実行するプログラムをコンピュータにインストー
ルし、コンピュータによって実行可能な状態とするため
に用いられる媒体について説明する。
【0090】プログラムは、図14(A)に示すよう
に、パーソナルコンピュータ41に内蔵されている記録
媒体としてのハードディスク42や半導体メモリ43に
予めインストールした状態でユーザに提供することがで
きる。
【0091】あるいはまた、プログラムは、図14
(B)に示すように、フロッピー(登録商標)ディスク
51、CD-ROM(Compact Disk-Read Only Memory)5
2、MO(Magneto-Optical)ディスク53、DVD(Digi
tal Versatile Disk)54、磁気ディスク55、または
半導体メモリ56などの記録媒体に、一時的あるいは永
続的に格納し、パッケージソフトウエアとして提供する
ことができる。
【0092】さらに、プログラムは、図14(C)に示
すように、ダウンロードサイト61から、デジタル衛星
放送用の人工衛星62を介して、パーソナルコンピュー
タ63に無線で転送したり、ローカルエリアネットワー
ク、インターネットといったネットワーク71を介し
て、パーソナルコンピュータ63に有線で転送し、パー
ソナルコンピュータ63おいて、内蔵するハードディス
クなどに格納させることができる。
【0093】本明細書における媒体とは、これら全ての
媒体を含む広義の概念を意味するものである。
【0094】パーソナルコンピュータ41(パーソナル
コンピュータ63もパーソナルコンピュータ41と同様
に構成されており、その図示は省略する)は、例えば、
図15に示すように、CPU(Central Processing Unit)
81を内蔵している。CPU81は、入出力インタフェー
ス85を介して、ユーザから、キーボード、マウスなど
よりなる入力部87から指令が入力されると、それに対
応して、図14(A)の半導体メモリ43に対応するRO
M(Read Only Memory)82に格納されているプログラ
ムを実行したり、あるいは、ハードディスク42に格納
されているプログラムをRAM(Random Access Memory)8
3にロードして実行し、その処理結果を、例えば、入出
力インタフェース85を介して、LCD(Liquid Crystal
Display)などよりなる表示部86に出力する。
【0095】なお、本明細書において、媒体により提供
されるプログラムを記述するステップは、記載された順
序に沿って時系列的に行われる処理はもちろん、必ずし
も時系列的に処理されなくとも、並列的あるいは個別に
実行される処理をも含むものである。
【0096】
【発明の効果】以上のように、請求項1に記載の情報処
理装置、請求項2に記載の情報処理方法、および請求項
3に記載の媒体によれば、影を投影するためのポリゴン
を指定するようにしたので、物体の影を高速に描画する
ことが可能となる。
【図面の簡単な説明】
【図1】レイトレーシング法を説明する図である。
【図2】走査線単位法を説明する図である。
【図3】2段階法を説明する図である。
【図4】シャドウポリゴン法を説明する図である。
【図5】本発明の影を投影するポリゴンを指定する方法
を説明する図である。
【図6】本発明のバウンディングデータにより影を形成
する方法を説明する図である。
【図7】本発明を適用した情報処理装置の構成を示すブ
ロック図である。
【図8】図7の情報処理装置の動作を説明するフローチ
ャートである。
【図9】図8のステップS3のポリゴンを選択する処理
の詳細を説明するフローチャートである。
【図10】図8のステップS6のバウンディングデータ
を生成する処理の詳細を説明するフローチャートであ
る。
【図11】図8のステップS6のバウンディングデータ
を生成する処理の詳細を説明する別のフローチャートで
ある。
【図12】図8のステップS10の影判定の処理を説明
するフローチャートである。
【図13】図8のステップS10の影判定の他の処理例
を説明するフローチャートである。
【図14】媒体を説明する図である。
【図15】図14のパーソナルコンピュータ41を説明
する図である。
【符号の説明】
11 ライトソース, 12 オブジェクト, 13
シャドウ, 14バウンディングスフィア, 15
アイポイント, 16 スクリーン, 21入力部,
22影判定部, 23 ポリゴン選択部, 24 ポリ
ゴン抽出部, 25 ポリゴン群選択部, 26 バウ
ンディングデータ指定部, 27バウンディングデータ
生成部, 28 レンダリング部, 29 フレームバ
ッファ, 30表示装置

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 物体を表すポリゴンに、他の物体の影を
    投影する情報処理装置において、 前記他の物体の影を投影する前記ポリゴンを指定する指
    定手段と、 前記指定手段により指定された前記ポリゴンに対して投
    影する、前記他の物体の影を演算する演算手段と、 前記演算手段が演算した影を描画する描画手段とを含む
    ことを特徴とする情報処理装置。
  2. 【請求項2】 物体を表すポリゴンに、他の物体の影を
    投影する情報処理装置の情報処理方法において、 前記他の物体の影を投影する前記ポリゴンを指定する指
    定ステップと、 前記指定ステップにより指定された前記ポリゴンに対し
    て投影する、前記他の物体の影を演算する演算ステップ
    と、 前記演算ステップが演算した影を描画する描画ステップ
    とを含むことを特徴とする情報処理方法。
  3. 【請求項3】 物体を表すポリゴンに、他の物体の影を
    投影する情報処理装置に、 前記他の物体の影を投影する前記ポリゴンを指定する指
    定ステップと、 前記指定ステップにより指定された前記ポリゴンに対し
    て投影する、前記他の物体の影を演算する演算ステップ
    と、 前記演算ステップが演算した影を描画する描画ステップ
    とを含むことを特徴とするプログラムを実行させる媒
    体。
JP15129599A 1999-05-31 1999-05-31 情報処理装置および方法、並びに媒体 Withdrawn JP2000339491A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP15129599A JP2000339491A (ja) 1999-05-31 1999-05-31 情報処理装置および方法、並びに媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP15129599A JP2000339491A (ja) 1999-05-31 1999-05-31 情報処理装置および方法、並びに媒体

Publications (1)

Publication Number Publication Date
JP2000339491A true JP2000339491A (ja) 2000-12-08

Family

ID=15515570

Family Applications (1)

Application Number Title Priority Date Filing Date
JP15129599A Withdrawn JP2000339491A (ja) 1999-05-31 1999-05-31 情報処理装置および方法、並びに媒体

Country Status (1)

Country Link
JP (1) JP2000339491A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10786736B2 (en) 2010-05-11 2020-09-29 Sony Interactive Entertainment LLC Placement of user information in a game space
JP7429496B2 (ja) 2019-09-01 2024-02-08 株式会社 ラセングル 画像処理装置及び画像処理方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10786736B2 (en) 2010-05-11 2020-09-29 Sony Interactive Entertainment LLC Placement of user information in a game space
US11478706B2 (en) 2010-05-11 2022-10-25 Sony Interactive Entertainment LLC Placement of user information in a game space
JP7429496B2 (ja) 2019-09-01 2024-02-08 株式会社 ラセングル 画像処理装置及び画像処理方法

Similar Documents

Publication Publication Date Title
US8154544B1 (en) User specified contact deformations for computer graphics
US7289119B2 (en) Statistical rendering acceleration
EP1064619B1 (en) Stochastic level of detail in computer animation
US7920144B2 (en) Method and system for visualization of dynamic three-dimensional virtual objects
JP2004038926A (ja) テクスチャマップ編集
JP2015535978A (ja) 3次元シーンをレンダリングするためのコンピュータグラフィックス方法
JP2012190428A (ja) 立体映像視覚効果処理方法
US6897863B2 (en) System and method for hidden object removal
JP2004005452A (ja) 画像処理装置、画像処理方法、半導体デバイス、コンピュータプログラム、記録媒体
JP4206547B2 (ja) 画像処理方法、その画像処理装置及びそれに利用する一体整形モデルデータ及び画像処理プログラムを記録した記録媒体
US9401044B1 (en) Method for conformal visualization
JP3350473B2 (ja) オクルージョンカリングを行う3次元グラフィックス描画装置および方法
JP2002133438A (ja) 3次元グラフィックス描画装置、3次元グラフィックス描画方法および3次元ポリゴンデータを記録したコンピュータで読取可能な記録媒体
JP2837584B2 (ja) 地形データの作成方法
JP2005228110A (ja) 情報処理方法および装置
US9311747B2 (en) Three-dimensional image display device and three-dimensional image display program
JP4733757B2 (ja) ポリゴン処理装置,プログラム及び情報記録媒体
JP2000339491A (ja) 情報処理装置および方法、並びに媒体
JP2000339493A (ja) 情報処理装置および方法、並びに媒体
JPH03211686A (ja) コンピュータ制御デイスプレイ方法および装置
Crocker Screen-area coherence for interactive scanline display algorithms
JP5063022B2 (ja) プログラム、情報記憶媒体及び画像生成システム
JP3711273B2 (ja) オクルージョンカリングを行う3次元グラフィックス描画装置
JP2000067270A (ja) 形状デ―タの近似化方法及び情報処理装置並びに媒体
JP3688765B2 (ja) 描画方法およびグラフィックス装置

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20060801