(57)【要約】【課題】  ＬＯＤの設定に関するユーザの負荷を軽減する。【解決手段】  ユーザ指示に応じて、複数のオブジェクトに対して共通して使用するパラメータであり、ＬＯＤを切り替えるためのパラメータを設定する設定工程と、オブジェクトのサイズを示す情報を入力する工程と、視点位置とオブジェクトの位置との間の距離を求める工程と、前記パラメータと前記サイズを示す情報と前記距離とを用いて、前記モデルのＬＯＤを決定する決定工程と、前記決定された詳細度に対応するモデルを用いてオブジェクトを描画する描画工程とを有する。【選択図】  図１
2005228110.tif 000002
【特許請求の範囲】
【請求項１】
ユーザ指示に応じて、複数のオブジェクトに対して共通して使用するパラメータであり、モデルの詳細度を切り替えるためのパラメータを設定する設定工程と、
オブジェクトのサイズを示す情報を入力する工程と、
視点位置とオブジェクトの位置との間の距離を求める工程と、
前記パラメータと前記サイズを示す情報と前記距離とを用いて、前記モデルの詳細度を決定する決定工程と、
前記決定された詳細度に対応するモデルを用いてオブジェクトを描画する描画工程とを有することを特徴とする情報処理方法。
【請求項２】
前記パラメータは、オブジェクトを見込む角度を示すパラメータであることを特徴とする請求項１記載の情報処理方法。
【請求項３】
前記パラメータは、サイズを示す情報に乗算する係数であり、
前記決定工程は、前記サイズを示す情報に前記パラメータを乗算した結果と、前記距離との比較結果に基づき、前記詳細度を決定することを特徴とする請求項１記載の情報処理方法。
【請求項４】
前記オブジェクトの位置をモデルから自動的に算出する算出工程を有することを特徴とする請求項１乃至３のいずれかに記載の情報処理方法。
【請求項５】
前記算出工程は、
前記オブジェクトのモデルから該オブジェクトのバウンダリを求める工程と、
前記バウンダリから前記オブジェクトの位置および前記オブジェクトのサイズを求める工程とを有することを特徴とする請求項１乃至４のいずれかに記載の情報処理方法。
【請求項６】
複数の詳細度の切り替え方法を有し、
前記複数の詳細度の切り替え方法から、ユーザの指示に応じた詳細度の切り替え方法を選択する選択工程を有し、
前記モデルの詳細度を切り替えるためのパラメータは、前記選択工程によって選択された詳細度の切り替え方法に応じたパラメータであることを特徴とする請求項１乃至５のいずれかに記載の情報処理方法。
【請求項７】
視点位置とオブジェクト位置の関係に応じて、詳細度が異なるモデルを用いてオブジェクトを描画する情報処理方法であって、
詳細度の制御パラメータとして視点位置からオブジェクトを見込む角度を設定する設定工程と、
視点位置を取得する取得工程と、
前記視点位置とオブジェクトの位置との間の距離を求める工程と、
前記求められた距離と前記設定された角度とに応じて詳細度を決定する詳細度決定工程と、
前記決定された詳細度に対応するモデルを用いて、前記オブジェクトを描画する描画工程とを有することを特徴とする情報処理方法。
【請求項８】
請求項１乃至７のいずれかに記載の情報処理方法をコンピュータにて実現可能とするためのプログラム。
【請求項９】
ユーザ指示に応じて、複数のオブジェクトに対して共通して使用するパラメータであり、モデルの詳細度を切り替えるためのパラメータを設定する設定手段と
オブジェクトのサイズを示す情報を入力する入力手段と、
視点位置とオブジェクトの位置との間の距離を求める手段と、
前記パラメータと前記サイズを示す情報と前記距離とを用いて、前記モデルの詳細度を決定する決定手段と、
前記決定された詳細度に対応するモデルを用いてオブジェクトを描画する描画手段とを有することを特徴とする情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、オブジェクトを描画する際に使用するモデルの詳細度を決定するものに関する。
【背景技術】
【０００２】
３次元コンピュータ・グラフィックスにおいて３次元図形を描画する場合、描画に使用する３次元モデルは、ポリゴンと呼ばれる多角形の集合体で構成される。３次元モデルを構成するポリゴンの数が多ければ多いほど、現実により近い３次元モデルを生成することができる。しかし、ポリゴン数の増加に伴い描画にかかる処理時間も増えるため、描画速度の低下という問題が起こってくる。
【０００３】
ここで、ディスプレイ上に表示される３次元図形の大きさについて考えてみる。図６に示すように視点６１から見た画像が投影面６２に投影されるわけであるから、ディスプレイに表示される３次元図形の大きさは、視点６１と対象となる３次元モデル６３との距離６４に関係してくる。視点から遠くに離れるほどディスプレイ上での表示は小さくなるため、詳細な３次元モデルを生成する必要がなくなるわけである。そこで、視点と対象となる３次元モデルとの距離により３次元モデルを変えて描画する方法がある。
【０００４】
図７のように、オブジェクトである球７１が視点の近くに位置する場合は、ディスプレイに表示される領域７２が大きいため、球７３を構成するポリゴンを小さくし詳細な３次元モデルを生成する必要があるが、球７４のように視点から遠くに位置する場合は、ディスプレイに表示される領域７５も小さいので、粗いポリゴンで球７６を構成しても、人間の視覚において現実感を損なうことはない。
【０００５】
これは一般に、ＬＯＤ（Ｌｅｖｅｌ  Ｏｆ  Ｄｅｔａｉｌ：詳細度）と呼ばれている手法で、視点と対象となる３次元モデルの位置関係にレベル付けをし、そのレベル毎に描画に使用する３次元モデルを変えるという手法である。ＬＯＤを用いて描画することにより、３次元モデルをリアルに高速に描画することが可能となっている。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
このように従来は、視点と対象となる３次元モデルとの距離によりＬＯＤを変えていた。この場合、各３次元モデル（オブジェクト）毎に距離をマニュアルにより設定する必要がある。仮想空間を生成するためには、非常に多くのオブジェクトを使用する場合があり、各オブジェクト毎にＬＯＤを制御するための距離を設定することは、ユーザに多大なる負荷を与えていた。
【０００７】
本発明は上述の点に鑑みてなされたものであり、ＬＯＤの制御を距離に比べて見た目に近いパラメータにすることにより、複数のオブジェクトに対して同一のパラメータでＬＯＤを制御可能にし、ＬＯＤの切り替えパラメータの設定にかかるユーザの負荷を低減することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するために、本願請求項１の発明は、ユーザ指示に応じて、複数のオブジェクトに対して共通して使用するパラメータであり、モデルの詳細度を切り替えるためのパラメータを設定する設定工程と、オブジェクトのサイズを示す情報を入力する工程と、視点位置とオブジェクトの位置との間の距離を求める工程と、前記パラメータと前記サイズを示す情報と前記距離とを用いて、前記モデルの詳細度を決定する決定工程と、前記決定された詳細度に対応するモデルを用いてオブジェクトを描画する描画工程とを有することを特徴とする。
【０００９】
また、本願請求項７の発明は、視点位置とオブジェクト位置の関係に応じて、詳細度が異なるモデルを用いてオブジェクトを描画する情報処理方法であって、詳細度の制御パラメータとして視点位置からオブジェクトを見込む角度を設定する設定工程と、視点位置を取得する取得工程と、前記視点位置とオブジェクトの位置との間の距離を求める工程と、前記求められた距離と前記設定された角度とに応じて詳細度を決定する詳細度決定工程と、前記決定された詳細度に対応するモデルを用いて、前記オブジェクトを描画する描画工程とを有することを特徴とする。
【発明の効果】
【００１０】
本発明によれば、ＬＯＤの制御を距離に比べて見た目に近いパラメータにすることにより、複数のオブジェクトに対して同一のパラメータでＬＯＤを制御可能にし、ＬＯＤの切り替えパラメータの設定にかかるユーザの負荷を低減することができる。
【発明を実施するための最良の形態】
【００１１】
以下、図面を用いて本実施形態のＬＯＤ（詳細度）の切り替え方法について説明する。ＬＯＤの切り替え方法として、Ａｎｇｕｌａｒ（角度）またはＤｉｓｔａｌを使用することができる。
【００１２】
（Ａｎｇｕｌａｒ）
Ａｎｇｕｌａｒ（角度）について図１を用いて説明する。
【００１３】
Ａｎｇｕｌａｒ（角度）は、視点からオブジェクトを包みこむ球体までの角度であり、視点と物体の距離が近いと値は大きくなり、距離が遠いと値は小さくなる。そして、大きいオブジェクトは小さいオブジェクトに比べて、距離が遠くても値は大きくなる。
【００１４】
オブジェクトの角度が大きいということは、現在の視点においてオブジェクトが大きく見えているということであり、オブジェクトを詳細に描画する必要があるということである。
【００１５】
よって、角度が大きいほどオブジェクトの詳細度を上げる。例えば、図１に示される車のボディの場合、角度が４０度の場合はＬｅｖｅｌ０とし、角度が２０度の場合はＬｅｖｅｌ１とし、角度が１０度の場合はＬｅｖｅｌ２とし、Ｌｅｖｅｌ０で最も詳細なモデルファイルを表示させ、Ｌｅｖｅｌ１、Ｌｅｖｅｌ２と徐々に表示精度を落とすようにＬＯＤを設定している。
【００１６】
本実施形態では、ＬＯＤの切り替えを高速に処理するために、角度そのものを使用するのではなく、式（１）で示される角度に応じた値であるＬＯＤ切り替えパラメータ距離（ｄ）を用いる。
ｄ＝ｒ／ｔａｎ−１θ        ・・・・・（１）
【００１７】
Ａｎｇｕｌａｒ（角度）は、物体の見かけの大きを基準としてＬＯＤを切り替えることができる。しかも、ＬＯＤ切り替えパラメータ距離（ｄ）はオブジェクトの大きさに応じて算出されるので、ユーザは、Ａｎｇｕｌａｒを複数のオブジェクトに対して同一の値を設定することで、適切なＬＯＤの切り替えを設定することができる。オブジェクト毎に距離を設定することが必要であった、従来の方法に比べてユーザの不可を格段に減らすことができる。
【００１８】
（Ｄｉｓｔａｌ）
Ｄｉｓｔａｌについて図２を用いて説明する。
【００１９】
Ｄｉｓｔａｌは、オブジェクトを囲むような球の半径ｒに基づきＬＯＤの切り替えを制御する方法である。半径ｒはオブジェクトのサイズを示す。大きいオブジェクトは小さいオブジェクトと比較して、視点から距離が離れたとしても詳細に描画することが必要となる。
【００２０】
Ｄｉｓｔａｌでは、ＬＯＤのレベルを切り替える距離を、オブジェクトの半径ｒに基づき求めることにより、オブジェクトに適した値を設定できるようにしている。
【００２１】
ＤｉｓｔａｌにおけるＬＯＤ切り替えパラメータ距離（ｄ）は、オブジェクトを囲むような球の半径ｒと、係数ｋとを用いて、式（２）により求められる。
ｄ＝ｋ×ｒ        ・・・・・（２）
係数ｋは、ＬＯＤ切り替えパラメータ距離（ｄ）の値を半径の何倍にするかを制御するための係数であります。
【００２２】
図２に示されるように、ＬＯＤ切り替えパラメータ距離（ｄ）と、視点とオブジェクト間の距離との比較結果に基づき、ＬＯＤを切り替える。
【００２３】
Ｄｉｓｔａｌも、物体の見かけの大きさを基準としており、Ａｎｇｕｌａｒと同様に、複数のオブジェクトに対して同一の値を設定することができる。
【００２４】
以下、図３から図５を用いて、本実施形態におけるＬＯＤ切り替えパラメータの算出方法、およびＬＯＤ切り替えパラメータに応じたオブジェクトの生成方法の処理手順を説明する。なお、これらの処理は、例えば、図３および図５の処理を実現するためのプログラムをＣＰＵがメモリを用いて実行することにより実現される。
【００２５】
まず、図３および図４を用いてＬＯＤ切り替えパラメータの設定にかかる処理手順を説明する。
【００２６】
ステップＳ３１は、レベルを初期化するためにレベルとして０を設定する。
【００２７】
ステップＳ３２は、図４に示されるユーザインターフェースを用いて、ＬＯＤの切り替え方法の選択およびＬＯＤ切り替え方法に応じた値などを設定する。
【００２８】
「ＬＯＤレベル選択ボックス」は、以下の各種条件を設定するＬＯＤのレベルを設定するボックスである。
【００２９】
「ＲａｎｇｅＦａｃｔｏｒ種別スイッチ」は、ＬＯＤの切り替え方法として、図１で説明したＡｎｇｕｌａｒ（角度）または図２で説明したＤｉｓｔａｌのいずれを用いるのかを選択するスイッチである。
【００３０】
「Ｒａｎｇｅ設定フィールド」は、ＬＯＤ切り替え方法に応じた値を設定するフィールドである。Ａｎｇｕｌａｒを選択した場合は角度（式（１）のθ、単位は゜）、Ｄｉｓｔａｌを選択した場合は係数（式（２）のｋ）を入力することになる。
【００３１】
「Ｃｅｎｔｅｒ座標入力フィールド」は、オブジェクトの中心座標を入力するフィールドである。「ＡｕｔｏＣｅｎｔｅｒ設定スイッチ」は、オブジェクトの中心座標を自動的に算出し設定するモードを選択するスイッチである。オブジェクトの中心座標を自動的に算出する方法については、ステップＳ３４、Ｓ３５において後述する。
【００３２】
「ＬＯＤ内容表示エリア」は、登録されているＬＯＤの一覧を表示する領域である。
【００３３】
ステップＳ３３は、最初のオブジェクトを選択する。
【００３４】
ステップＳ３４は、対象となるオブジェクトのバウンダリを計算する。オブジェクトのバウンダリとは、オブジェクトの大きさの概略を示す立体であり、例えばオブジェクト全体を含む６面体である。バウンダリは、対象オブジェクトのモデルデータをサンプリングし、Ｘ、Ｙ、Ｚ軸それぞれの最小値および最大値を検出し、その検出結果を格子点とする６面体を求めることにより、求めることができる。なお、バウンダリの形状としては球など他の形状でも構わないし、算出方法としても他の方法を用いても構わない。
【００３５】
ステップ３５は、オブジェクトの中心座標を算出する。「Ｃｅｎｔｅｒ座標入力フィールド」にマニュアルで値が設定されている場合は、設定されている値を読み出す。「ＡｕｔｏＣｅｎｔｅｒ設定スイッチ」でオブジェクトの中心座標を自動的に算出し設定するモードが選択されている場合は、算出されたバウンダリから中心座標を求める。本実施形では、バウンダリとして６面体を用いているので、中心座標として６面体の対角線の中心を設定する。さらに、オブジェクトを含む球体の半径（ｒ）として対角線の半分の長さを設定する。つまり、図１および図２におけるオブジェクトを含む球体としてオブジェクトのバウンダリである６面体に外接する球体を想定する。
【００３６】
ステップＳ３６では、ステップＳ３５で求められたオブジェクトを含む球体の半径（ｒ）と、ステップＳ３２で設定されたＬＯＤ切り替え方法に対応する演算式およびＬＯＤ切り替え方法に応じた値を用いて、距離（ｄ）を求める。
【００３７】
Ａｎｇｕｌａｒ（角度）が選択されている場合は、半径（ｒ）とステップＳ３２で設定された角度（θ）を用いて式（１）から距離（ｄ）を求める。
【００３８】
Ｄｉｓｔａｌが選択されている場合は、半径（ｒ）とステップＳ３２で設定された係数（ｋ）を用いて式（２）から距離（ｄ）を求める。
【００３９】
ステップＳ３４からＳ３６までの処理を全てのオブジェクトに対して繰り返す（ステップＳ３７）とともに、ステップＳ３２からＳ３７までの処理を全てのレベルに対して繰り返す（ステップＳ３８）。
【００４０】
図３に示した処理により、各オブジェクトに対して各レベルについてのＬＯＤ切り替えパラメータである距離（ｄ）を設定することができる。
【００４１】
なお、ＬＯＤ切り替えパラメータの設定結果を、実際に画面を用いて確認し、確認結果に応じて調整できるようにしても構わない。さらに、確認結果に応じて、オブジェクト毎に独立に微調整できるようにしても構わない。また、オブジェクト毎に対応可能なＬＯＤのレベルを異なるようにしても構わない。例えば、あるオブジェクトのあるＬＯＤのレベル以上に対しては同様のモデルを使用するようにしても構わない。また、あるオブジェクトについては、有るＬＯＤレベル以上に対しては描画しないようにしても構わない。
【００４２】
図５に設定されたＬＯＤ切り替えパラメータを用いて、３次元オブジェクトを描画する処理の手順を説明する。本実施形態では、予めメモリ上に、各オブジェクトに対して設定されたＬＯＤの各レベルに応じたモデルデータが用意されている。そして、これらのモデルデータを用いて、オブジェクトを描画する。
【００４３】
ステップＳ５１は、視点位置を取得する。
【００４４】
ステップＳ５２は、ステップＳ５１において取得された視点位置に応じた画像（図６や図７の投影面に相当する）ために、必要であるオブジェクトを選択し、必要であるオブジェクの中の最初のオブジェクトを設定する。
【００４５】
ステップＳ５３は、視点位置とオブジェクト位置（オブジェクトの中心座標）との距離を算出する。
【００４６】
ステップＳ５４は、ステップＳ５３で求められた距離と、図３で求められた対象オブジェクトに対応するＬＯＤ切り替えパラメータである距離（ｄ）とを比較し、ステップＳ５３で求められた距離に対応するＬＯＤのレベルを決定する。
【００４７】
本実施形態では、ＬＯＤ切り替え方法にかかわらず、ＬＯＤ切り替えパラメータとして距離ｄを使用している。したがって、ステップＳ５４ではＬＯＤ切り替え方法を意識せずに処理することが可能であり、図５にかかる処理を実現するためのプログラム構成を簡単にすることができる。
【００４８】
さらに、本実施形態では、ステップＳ５３で求める距離として、視点位置とオブジェクトの中心座標との間の距離を使用している。よって、画面内におけるオブジェクトの見かけ上の大きさではなく、視点位置からのオブジェクトの見かけ上の大きさに基づきＬＯＤのレベルを設定することができ、より自然な結果を得ることができる。
【００４９】
ステップＳ５５は、ステップＳ５３で決定されたＬＯＤのレベルに対応する対象オブジェクトのモデルをメモリから読み出し、視点位置からの画像を描画する。
【００５０】
必要であるオブジェクトの全てに対して、ステップＳ５３からＳ５５までの処理を繰り返し、取得された視点位置からの画像を生成する。
【００５１】
（他の実施形態）
上述の実施形態では、ＬＯＤ切り替え方法として２種類の方法を用意していが、上記２種類のいずれか１種類のみを有するようにしても構わないし、２種類の方法にさらに従来と同様のオブジェクト毎に距離を設定する方法を追加し３種類の方法を有するようにしても構わない。
【００５２】
また、上述の実施形態では、図３のステップＳ３６において距離ｄを算出するようにしているが、図５の描画処理の最中にその都度算出するようにしても構わない。
【００５３】
また、本実施形態はオブジェクト画像を描画する際の処理である。よって、本実施形態をＣＧ画像のみで構成される仮想空間を提供するシステムにも、また、実画像と仮想画像を組み合わせて得られる複合現実空間を提供するシステムにも適用することが可能である。
【００５４】
また、上記実施形態ではソフトウェアにより実現する場合を説明したが、各ステップを実現するためのハードウェアを用意しハードウェアにより実現する場合にも適用することができる。
【図面の簡単な説明】
【００５５】
【図１】Ａｎｇｕｌａｒによる表示切り替えを説明する図である。
【図２】Ｄｉｓｔａｌにおける表示切り替えを説明する図である。
【図３】ＬＯＤ切り替えパラメータの設定にかかる処理手順を説明する図である。
【図４】ＬＯＤ切り替えパラメータを設定するためのユーザインターフェースを説明する図である。
【図５】ＬＯＤ切り替えパラメータを用いて、オブジェクトを描画する処理の手順を説明する図である。
【図６】３次元コンピュータ・グラフィックスにおいて３次元図形の描画を説明する図である。
【図７】ＬＯＤに応じた処理を説明する図である。
【図１】
2005228110.tif 000003
【図２】
2005228110.tif 000004
【図３】
2005228110.tif 000005
【図４】
2005228110.tif 000006
【図５】
2005228110.tif 000007
【図６】
2005228110.tif 000008
【図７】
2005228110.tif 000009