リアルタイムレンダリングのための、接続性に依拠した形状最適化
コンピューターモデルを視覚化/レンダリングするためのコンピューター実施方法であって、コンピューターモデルは複数の構成要素を含み、該方法は、複数の構成要素のうちの少なくとも1つの、複数の部品を格納することであって、各部品は該部品を視覚化/レンダリングするためのジオメトリ情報を含む、格納することと、座標系内の複数の構成要素の位置及び向きを示す情報を格納することと、個々の構成要素間の空間関係を求めることと、少なくとも1つの構成要素について、個々の構成要素間の前記求められた空間関係に基づいて、該構成要素を視覚化/レンダリングするのに用いる複数の格納された部品を求めることと、を含む、コンピューター実施方法が開示される。構成要素を視覚化/レンダリングするのに用いる複数の部品を求めるのに構成要素間の空間関係を用いることによって、個々の構成要素のジオメトリ、及び該構成要素と他の構成要素との接続に関する知識を用いて、除去することができる隠される部品を見つけることができる。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、コンピューターモデルを視覚化/レンダリングする方法に関する。詳細には、本発明は、コンピューターモデルを視覚化/レンダリングする計算効率のよい方法に関する。
【背景技術】
【0002】
コンピューター支援設計(CAD)及びコンピューターゲーム等の広範な分野において3Dコンピューターグラフィックスが用いられている。3Dコンピューターグラフィックスを用いて3Dモデルの斜視図を生成することができる。これは、CADの場合のように設計プロセスにおいて、又はコンピューターゲームの場合のように娯楽目的で用いることができる。3Dコンピューターグラフィックスが直面する共通の問題は、必要とされる大きな計算リソースである。これは特にリアルタイム3Dコンピューターグラフィックスにとって問題である。なぜなら、計算リソースが不足する結果、フレームレートが減少し、それに応じてユーザー体験が減少するためである。
【0003】
コンピューティングにおける徹底的な研究に匹敵して、コンピューターモデルの複雑度も同様に増大している。これは、より大きな構造が設計されるCADの場合、及び詳細度の増加の結果、より複雑なモデルとなるコンピューターゲームの場合の双方にあてはまる。3Dコンピューターグラフィックスを用いて表現する物体の共通群(common group)は複合製品である。複合製品は、複数のより小さな物理的構成要素で構成される製品である。
【0004】
多数の構成要素を含む複合製品の例には、大型機械、自動車、飛行機、及び他の乗り物、建物、並びに家具、玩具モデル等のような、組み立てられていない状態で販売及び出荷される製品が含まれる。多数のより小さな構成要素で構成される製品の具体的な例には、複数の相互接続可能な玩具構築要素を含む玩具構築セットが含まれる。
【0005】
こうした玩具構築セットの様々な既知のタイプのモデリング構想が存在する。特に、モジュール式又は半モジュール式の構想は、興味深くやりがいのあるプレイ体験を提供するので、非常に人気がある。通常、これらの構想は、接続要素、又は予め製造された要素の他の結合手段により、何らかの所定の形で互いに相互接続することができる、予め製造された組立要素のセットを提供する。予め製造された組立要素は、特定のモデリングタスクに適合された既知の物体と類似することができる。このため、例えば家のモデルを組み立てる際、組立要素は、壁のれんが、屋根のタイル、ドア、及び窓と類似することができる。このように組立要素を選択する利点は、プレイがシステムに組み込まれ、新たなモデルが作製されるべきである度に家の全ての詳細(detail)が画定される状況と比較して、家のモデルを組み立てることに伴う作業が大幅に低減されることである。しかしながら、家又は別の物体を組み立てる際の完全な自由度は、モデルを組み立てる簡単さとトレードオフされる。
【0006】
例えば、LEGOという名称で市販されている玩具構築セットは、接続要素として、突起部及び対応する空洞を有する複数の異なるタイプの相互接続可能な組立要素を含む。接続要素は、規則的な格子パターンに従って配列され、これによって、組立要素間の多岐にわたる相互接続が可能になる。
【0007】
コンピューターモデルを視覚化/レンダリングするのに必要とされる計算負荷を低減する既知の方法は、遮蔽カリングである。遮蔽カリングは、所与の視点(viewing perspective)から隠される面を見つけることによって機能する。しかしながら、既知の遮蔽カリングアルゴリズムは低速であり、ビューが変化する度に実行する必要がある。これは、コンピューター支援設計及びコンピューターゲームにとって特に問題である。なぜなら、これらの用途におけるビューは通常頻繁に変化し、その結果、遮蔽カリングアルゴリズムによって生じる計算負荷が大きくなるためである。
【発明の概要】
【発明が解決しようとする課題】
【0008】
このため、複合製品を計算効率のよい方法で視覚化/レンダリングすることが依然として問題である。
【課題を解決するための手段】
【0009】
本発明の第1の態様は、コンピューターモデルを視覚化/レンダリングするためのコンピューター実施方法であって、前記コンピューターモデルは複数の構成要素を含み、該方法は、
前記複数の構成要素のうちの少なくとも1つの、複数の部品を格納することであって、各部品は該部品を視覚化/レンダリングするためのジオメトリ情報を含む、格納することと、
座標系内の複数の構成要素のそれぞれの位置及び向きを示す情報を格納することと、
前記複数の構成要素の前記それぞれの位置及び向きを示す前記格納された情報に基づいて前記構成要素のうちの個々の構成要素間の空間関係を求めることと、
前記少なくとも1つの構成要素について、前記個々の構成要素間の前記求められた空間関係に基づいて、該構成要素を視覚化/レンダリングするのに用いる複数の格納された部品を求めることと、
を含む、コンピューターモデルを視覚化/レンダリングするためのコンピューター実施方法に関する。
【0010】
コンピューターモデルは、複合製品、例えば玩具モデル、又は代替的に非複合製品、例えばデジタルキャラクター等の任意の物体を表すことができる。コンピューターモデルは、2次元又は3次元等の任意の次元を有することができる。コンピューターモデルは、経時的に更にアニメーション化することができる。コンピューターモデルのアニメーション化は、モデル全体又はモデルの選択された構成要素を含むことができる。コンピューターモデルが、玩具構築要素又は代替的に玩具構築要素の面の群から組み立てられた玩具モデルを表すとき、構成要素は、玩具構築要素等の、モデルの任意の部分群とすることができる。部品は、玩具構築要素上の突出した円柱、又は代替的に突出した円柱の面の群等の、構成要素の任意の部分群とすることができる。
【0011】
1つの実施の形態では、部分群は、真部分群であり、一構成要素がモデル全体となることができず、一部品が構成要素全体となることができないことを意味する。
【0012】
1つの実施の形態では、部分群は、真部分群に限定されず、一構成要素がモデル全体となることができ、一部品が構成要素全体となることができることを意味する。
【0013】
部品は、該部品のジオメトリを規定するジオメトリ情報を含むことができる。ジオメトリ情報は、多角形メッシュ、NURBS面、又はパッチ面等の任意の形式で格納することができる。部品は、テクスチャ特性、反射特性、屈折特性、透明度設定、及びシェーンディグ特性等の部品の材料特性を更に含むことができる。
【0014】
構成要素の位置及び向きを示す情報は、任意の局所座標系若しくは大域座標系における構成要素の位置及び向き、又は国際公開第04034333号に示すように、別のモデル、構成要素、又は部品等に対する構成要素の位置を記述する情報とすることができる。
【0015】
構成要素を視覚化/レンダリングするのに用いる部品の数は、構成要素の全ての部品が用いられるとき、及び部品が全く用いられないときの特殊な事例を含む任意の数とすることができる。
【0016】
コンピューターモデルを視覚化/レンダリングした結果、一つの画像又は一連の画像を生成することができる。画像(複数の場合もあり)は2次元とすることができる。画像(複数の場合もあり)はスクリーン上に直接示されかつ/又はデジタルファイルに保存されることができる。
【0017】
構成要素を複数の部品に更に分割し、構成要素間の空間関係を用いて構成要素を視覚化/レンダリングするのに用いる複数の部品を求めることによって、個々の構成要素のジオメトリ、及び該構成要素の他の構成要素との接続に関する知識を用いて、モデルに対して視覚的影響を与えることなく除去することができる隠される部品を見つけることができる。
【0018】
これによって、計算的に複雑なレイトレーシングアルゴリズムを用いることなく隠れされる部品を見つけることが可能になり、その結果、本方法がリアルタイムの使用に適したものとなる。標準遮蔽カリングアルゴリズムの場合のように仮想カメラと構成要素との間の空間関係を用いるのではなく、個々の構成要素間の空間関係を用いることによって、ビューから独立した最適化が達成される。これによって、本方法は、複合モデルに構造変化が生じたとき、例えば新たな構成要素が付加されるか又は既存の構成要素が除去されたときに再実行するだけでよいので、計算リソースが節減される。構造変化が生じた場合であっても、本方法は、変化部に近接した構成要素に対し再実行するだけでよい。これによって後続の最適化の計算リソースが節減される。
【0019】
最適化を実行する前に構成要素を複数の部品に分割し、該部品を格納することによって、最適化ステップにおいて構成要素を分割するのに必要な任意の計算リソースが節減される。自動手順を用いて、又は代替的に手動で、構成要素の更なる分割を実行することができる。更なる分割が手動で行われる場合、該更なる分割を、人間の技能を用いて、構成要素のジオメトリ及び/又は接続に関する知識を用いて行うことができ、これによって効果的な最適化が可能になる。
【0020】
本発明の第2の態様は、コンピュータープログラムであって、実行可能なコンピュータープログラムコードを含み、該実行可能なコンピュータープログラムコードは、データ処理システムに、
少なくとも設計ステップであって、
ユーザーが、構成要素のレポジトリから複数の構成要素のそれぞれのデジタル表現を選択し、該選択された構成要素を互いとの空間関係に配置して複合製品のデジタル表現を生成することを可能にするコンピューター実施構築ツールを提供することであって、各構成要素は複数の部品で構成される、提供すること、
を含む、設計ステップと、
更なる処理ステップであって、
前記複合製品の少なくとも一部分の視覚化/レンダリングを生成することであって、該生成することは、
前記複数の構成要素のうちの少なくとも1つの、複数の部品を格納することであって、各部品は該部品を視覚化/レンダリングするためのジオメトリ情報を含む、格納することと、
座標系内の複数の構成要素の位置及び向きを示す情報を格納することと、
前記複数の構成要素の前記位置及び前記向きを示す前記格納された情報に基づいて前記構成要素のうちの個々の構成要素間の空間関係を求めることと、
前記少なくとも1つの構成要素について、前記個々の構成要素間の前記求められた空間関係に基づいて、前記構成要素を視覚化/レンダリングするのに用いる複数の格納された部品を求めることと、
を含む、生成すること、
を含む、更なる処理ステップと
を実行させるように構成される、コンピュータープログラムに関する。
【0021】
1つの実施の形態では、前記コンピュータープログラムは子供のための玩具コンピュータープログラムである。
【0022】
コンピューター実施構築ツールは、グラフィカルユーザーインターフェースとすることができる。
【0023】
デジタルモデルを作成するタスクは非常に困難である可能性がある。現実世界に存在する通常の物理的限界は、デジタル環境にアプリオリに存在しない。無限の可能性によって、任意のモデルを作成することが可能になるが、これによって設計ステップも非常に困難になる。任意のデジタルモデラーの主要な技能は、モデルの正しい点で正しい量の詳細(detail)を用いることである。これは、デジタル設計者が、デジタルモデルの形状に焦点を合わせなくてはならないことに加えて、モデルの基礎を成す構造、例えば様々な場所において用いられる頂点の量にも焦点を合わせる必要があることを意味する。これは、モデリングタスクが、通常、モデルの連続したリアルタイム視覚化/レンダリングを伴い、モデルが設計されている間に、デジタル設計者が該モデルを視覚的に調べることを可能にする相互作用的なプロセスであるので、重要である。モデルが不必要に複雑となる場合、モデルのリアルタイムレンダリングのフレームレートは減少し、これによって後続の設計プロセスが問題を含むものとなる。
【0024】
こうしたシステムのユーザーが子供である場合、設計プロセスを可能な限り単純にすることが重要となる。子供に構成要素のレポジトリを含むデジタル構築ツールを与え、構成要素間の空間関係を用いて、構築されたモデルを更に自動的に単純化することによって、設計プロセスの複雑度が大幅に低減される。これによって、子供が、モデルの正しいスポットに正しい量の複雑度(complexity)を適用することに関して懸念する必要なく、モデリングタスクにのみ焦点を合わせることが可能になる。これによって、子供がより大きくより興味深いモデルを作成することが可能になり、玩具コンピュータープログラムのプレイ価値が増大し、また、より低年齢の子供が玩具プログラムを用いることが可能になる。
【0025】
1つの実施の形態では、少なくとも1つの構成要素が少なくとも1つの所定の接続ゾーンを自身に関連付けており、該接続ゾーンは、同様の構成要素の接続ゾーンに接続することができる、構成要素の一部を示す。
【0026】
接続ゾーンは、構成要素に近接した任意の所定のゾーンとすることができる。1つの実施の形態では、接続ゾーンは構成要素の表面に位置決めされる。接続ゾーンは、構成要素の1つ若しくは複数の部品、例えば表面の一部分に対応するか又はそれらによって画定されることができる。接続ゾーンは、平面、又は平面の一部、又は円形の面若しくは曲面等の任意の形状を有することができる。接続ゾーンの位置は、大域座標系において又は構成要素との関係で画定することができる。構成要素は、任意の数の接続ゾーンを含むことができる。複数のタイプの接続ゾーンが存在することができる。接続ゾーンは所定の数のタイプの接続ゾーンと適合することができ、例えば、構成要素の上面に関連付けられた玩具構築要素を表す構成要素の接続ゾーンは、同様の玩具構築要素を表す構成要素の底面に関連付けられた接続ゾーンとのみ適合することができる。いくつかの実施の形態では、それぞれのタイプの接続ゾーンの適合性を示す情報は、適切なデータ構造、例えばテーブルに格納することができ、すなわち、それぞれのタイプの接続ゾーンが互いに接続可能であるか否かを示す情報とすることができる。例えば、情報は、各所与のタイプの接続ゾーンについて、いずれのタイプの接続ゾーンが上記の所与のタイプの接続ゾーンと接続可能であるかを示すことができる。1つの実施の形態では、データ構造は、接続ゾーンのタイプの各対について、該接続ゾーンのタイプの対が、適合性を有するか、適合性を有しないか、又は中立(indifferent)であるかを示すことができる。接続ゾーンの対が適合性を有する場合、それらは2つの構成要素間の接続を提供することができる。接続ゾーンの対が適合性を有しない場合、それらは2つの構成要素が互いの隣に位置決めされることを阻止する。接続ゾーンの対が中立である場合、それらは2つの構成要素が互いの隣に位置決めされることを可能にするが、実際に2つの構成要素間の接続を提供しない。
【0027】
所定の接続ゾーンを有する構成要素を提供することによって、構成要素からモデルを作成する仕事が単純化される。これによって、モデルがCADに用いられようと、コンピューターゲームに用いられようと、他の用途に用いられようと、モデルを開発する製造コストが低減する。
【0028】
本発明の1つの実施の形態では、個々の構成要素間の空間関係を求めるステップは、該個々の構成要素の接続ゾーンの空間関係を求めるステップを含む。
【0029】
本発明の1つの実施の形態では、個々の接続ゾーン間の空間関係を求めるステップは、2つの接続ゾーン間の距離を求めるステップを含む。
【0030】
距離は、2ノルムのユークリッド距離等の任意のノルム距離とすることができる。距離は、接続ゾーンの2つの点、又は接続ゾーン上の複数の点間の距離とすることができる。1つの実施の形態では、距離は2つの接続ゾーン間の最も近い距離として規定される。1つの実施の形態では、プロセスは、2つの接続ゾーンの距離が所定の範囲内である場合に、それらの接続ゾーンが接続されていると判断する。
【0031】
2つの接続ゾーンの距離を調査することによってそれらの接続ゾーン間の空間関係を求めることは、効果的で計算的に単純な方法である。これによって、本方法が必要とする計算リソースが低減され、それによって、モデルをレンダリング/視覚化するのに必要な計算の総数が低減される。
【0032】
1つの実施の形態では、各接続ゾーンは、該接続ゾーンに関連付けられた向きを有し、個々の接続ゾーン間の空間関係を求めるステップは、1つの接続ゾーンの、別の接続ゾーンに対する向きを求めるステップを含む。
【0033】
1つの実施の形態では、プロセスは、2つの接続ゾーンが互いに対し所定の向きを有する場合、例えば、接続ゾーンが互いに平行であるか、ほぼ平行(in proximity of being parallel)であるとき、それらの接続ゾーンが接続されていると判断する。接続ゾーン間の空間関係は、接続ゾーン間の距離及びそれらの接続ゾーンの相対的向きの組み合わせによって求めることができる。
【0034】
2つの接続ゾーンは位置合わせすることなく互いの近くに位置決めすることができるが、それらの接続ゾーンの空間関係を求めるのに接続ゾーン間の相対的向きを更に用いることによって、より正確に求めることを達成することができる。
【0035】
いくつかの実施の形態では、プロセスは、2つの接続ゾーンが互いに対する所定の近接度で位置決めされるとき、及びそれらの接続ゾーンのそれぞれの向き及びタイプが互いに適合しているときに、それらの接続ゾーンが接続されていると判断する。
【0036】
いくつかの実施の形態では、構成要素が、第1の部品に関連付けられた、別の構成要素の別の接続ゾーンに接続された1つ又は複数の接続ゾーンを有する場合のみ、第1の部品を、構成要素を視覚化/レンダリングするのに用いないと判断する。
【0037】
実際に接続された構成要素のみを最適化することによって、接続されていない構成要素がアニメーション中に互いに対して動かされるとき、再最適化を回避することができる。これによって再最適化の必要性が低下し、この結果、最適化に必要とされる計算リソースがそれに応じて少なくなる。なぜなら、接続された玩具構築要素が互いに対して動かされる事象は、接続されていない玩具構築要素の場合よりもはるかに可能性が低いためである。
【0038】
代替的な実施の形態では、プロセスはまた、第1の部品に関連付けられた接続ゾーンが別の構成要素の接続ゾーンに対し所定の近接度及び/又は向きにあるが、例えば2つの接続ゾーンのタイプが互いに中立であるため、その接続部が実際にそれらの構成要素間の接続を提供していないとき、第1の部品を、構成要素の視覚化/レンダリングに用いないと判断する。
【0039】
接続されていない構成要素も最適化することによって、構成要素のより多くの部品を最適化することができる。これによって、特にモデルの構成要素が静止している場合に、コンピューターモデルを視覚化/レンダリングするのに必要な計算リソースが少なくなる。
【0040】
1つの実施の形態では、空間関係を求めることは、それぞれの構成要素の接続ゾーンが、接続を提供する/可能にする適合性を有するタイプを有するか否かを判断することを含む。
【0041】
1つの実施の形態では、少なくとも1つの構成要素について、該構成要素を視覚化/レンダリングするのに用いる複数の部品を求めるステップにおいては、該構成要素の少なくとも1つの接続ゾーンが接続されている場合、より少ない部品が用いられる。
【0042】
1つの実施の形態では、プロセスは、前記コンピューターモデルの境界ボックスの外側の任意の方向から見たときに、部品の表面エリアの少なくとも所定の一部が1つ又は複数の他の部品によって覆われている場合、第1の部品を、構成要素を視覚化/レンダリングするのに用いないと判断する。所定のパーセンテージは任意のパーセンテージとすることができる。好ましくは、これは40%であり、より好ましくは70%であり、更により好ましくは90%である。境界ボックスはモデル全体を含むことができる最も小さいボックスである。所定のパーセンテージで覆われた部品(複数の場合もあり)を、所与の構成要素を視覚化/レンダリングするのに用いないことによって、最適化のモデルに対する任意の視覚的影響を制限することができる。これによって、視覚的影響と計算複雑度との間のトレードオフを制御することができる柔軟性のあるシステムが更に提供される。リアルタイムコンピューターグラフィックス等の所与の用途では、計算数が少ないことを優先し、その結果、モデルの視覚的な精密さよりも高フレームレートを得ることが有用である場合があるのに対し、他の用途では、視覚的な精密さが計算数よりも重要である場合がある。
【0043】
本発明の1つの実施の形態では、前記少なくとも1つの構成要素について、該構成要素を視覚化/レンダリングするのに用いる複数の部品を求めるステップは、構成要素の材料特性を求め、求められた空間関係及び求められた材料特性の双方に基づいて構成要素を視覚化/レンダリングするのに用いる複数の部品を求めるステップを更に含む。
【0044】
1つの実施の形態では、材料特性を求める前記ステップは、構成要素の透明度設定を求めるステップを含む。透明度設定は、構成要素又は構成要素の部品の透明度に関連した任意の設定とすることができる。透明度は、屈折現象を伴う場合がある。モデルの構成要素又は該構成要素に接続した他の構成要素が透明である場合、該構成要素の、通常隠れる部品が見える場合がある。求められた空間関係及び材料特性の双方を用いることにより、隠される部品のより精密な判断を達成することができる。
【0045】
いくつかの実施の形態では、コンピューターモデルは複合製品を表す。いくつかの実施の形態では、コンピューターモデルは玩具構築要素から組み立てられた玩具モデルを表し、コンピューターモデルの各構成要素は玩具構築要素に対応する。いくつかの実施の形態では、玩具構築要素は、該玩具構築要素を他の同様の玩具構築要素と接続する接続手段を有する。接続手段は、円形、又は長方形等の任意の形状を有することができる。
【0046】
1つの実施の形態では、第1の構成要素は所定のタイプの第1の遮蔽ゾーンを含み、第2の構成要素は所定のタイプの第2の遮蔽ゾーンを含み、前記第1の遮蔽ゾーンと前記第2の遮蔽ゾーンとの間の前記空間関係は、前記第2の構成要素によって遮蔽される、前記第1の構成要素の一部を求めるのに用いられる。
【0047】
遮蔽ゾーンは、構成要素の部品と同様の、又は更には同一の形状を有することができる。例えば、遮蔽ゾーンは、構成要素の上記部品の表面の一部として画定することができる。遮蔽ゾーンは、構成要素の特定の部品又は複数の部品に関連付けられることができる。遮蔽ゾーンに関連付けられた部品(複数の場合もあり)は、該部品に関連付けられた遮蔽ゾーンが遮蔽されるとき、遮蔽されると判断されることができる。第1の遮蔽ゾーンと第2の遮蔽ゾーンとの間の空間関係は、第1の構成要素の接続ゾーン(複数の場合もあり)と、第2の構成要素の接続ゾーン(複数の場合もあり)との間の空間関係によって求めることができる。遮蔽ゾーンのタイプは該遮蔽ゾーンの形状に関連することができる。遮蔽ゾーンは、円形形状又は長方形形状等の任意の形状を有することができる。遮蔽ゾーンのタイプは、遮蔽ゾーンのサイズに更に関連することができる。遮蔽ゾーンのタイプは、1つの構成要素が別の構成要素をどのように遮蔽するかを決めることができ、例えば円形の遮蔽ゾーンは、別の円形の遮蔽ゾーンを遮蔽することができるが四角形の遮蔽ゾーンを遮蔽することはできず、四角形の遮蔽ゾーンは円形の遮蔽ゾーン及び四角形の遮蔽ゾーンの双方を遮蔽することができる。
【0048】
接続ゾーンは、構成要素が他の構成要素にどのように接続することができるかを決めることができるのに対し、遮蔽ゾーンは、構成要素が別の構成要素をどのように遮蔽するかを決めることができる。2つの構成要素は、互いを遮蔽することなく接続することができ、2つの構成要素は接続されることなく互いを遮蔽することができる。
【0049】
構成要素及び/又は構成要素の1つ若しくは複数の部品は、該構成要素及び/又は構成要素の1つ若しくは複数の部品に関連付けられた、1つ若しくは複数の遮蔽ゾーン及び/又は1つ若しくは複数の接続ゾーンを有することができる。1つの実施の形態では、接続ゾーンは遮蔽ゾーンとして機能することもできる。
【0050】
本方法は、遮蔽ゾーンを構成要素に割り当てることによって、コンピューターモデルにおける隠される部品を容易に見つけることができる。隠される部品は、2つの構成要素の2つの接続ゾーン間の空間関係を調査することによって見つけることができる。それぞれの構成要素に関連付けられた2つの接続ゾーンが接続していることがわかる場合、プロセスは、それぞれの部品に関連付けられたそれぞれの遮蔽ゾーンに基づいて、例えば関連付けられた遮蔽ゾーンのそれぞれのタイプに関連する論理規則、例えば四角形のゾーンは円形のゾーンを覆う等に基づいて、1つ又は複数の遮蔽された部品を求めることができる。このため、各部品は、該部品に関連付けられた1つ又は複数の接続ゾーン及び1つ又は複数の遮蔽ゾーンを有することができる。
【0051】
1つの実施の形態では、複数の遮蔽ゾーンが単一の部品に関連付けられる。
【0052】
1つの実施の形態では、部品は、該部品に関連付けられた全ての遮蔽ゾーンが遮蔽されている場合にのみ遮蔽される。
【0053】
1つの実施の形態では、コンピューターモデルは他のコンピューターモデルから独立してアニメーション化することができ、コンピューターモデルの構成要素は、コンピューターモデルの他の構成要素から独立してアニメーション化することができ、構成要素の部品は、該構成要素の他の部品から独立してアニメーション化することができない。
【0054】
1つの実施の形態では、第1の部品及び第2の部品は、構成要素の共通セクションを表し、前記第1の部品は第2の部品より高い詳細度を有し、前記構成要素を視覚化/レンダリングするのに用いる複数の格納された部品を求める前記ステップは、前記構成要素を視覚化/レンダリングするのに用いるために、前記第1の部品及び前記第2の部品のうちの多くても一方を選択することを更に含む。
【0055】
構成要素の共通部分を表す複数の部品を有することによって、所与の状況において部分的にしか隠れていない部品を依然として最適化することができる。この結果、最適化はより効率的となり、構成要素を複数の部品に分割する作業がより簡単になる。
【0056】
本発明の様々な態様を、様々な形で実施することができ、様々な形には、上記及び下記のコンピューター実施方法、データ処理システム、及び玩具コンピュータープログラム、並びに更なる製造手段が含まれ、それぞれが、上述した態様のうちの少なくとも1つに関連して説明された利益及び利点のうちの1つ又は複数をもたらし、それぞれが上述のかつ/又は従属請求項において開示された態様のうちの少なくとも1つに関連して説明される好ましい実施の形態に対応する1つ又は複数の好ましい実施の形態を有する。さらに、本明細書において説明される態様のうちの1つに関連して説明される実施の形態は、他の態様にも等しく適用することができることが理解されよう。
【0057】
1つの実施の形態では、部品は予め画定されている。
【0058】
1つの実施の形態では、各部品は複数の面を含み、面は3つの頂点によって与えられた平面として規定される。
【0059】
1つの実施の形態では、開示される本方法と組み合わせて遮蔽カリングが用いられる。
【0060】
1つの実施の形態では、構成要素は、それ以上非破壊的に、より小さな構成要素に分解することができない複合製品の物理的構成要素、例えば航空機におけるプロペラ(screw)、又は玩具構築システムの玩具構築要素から組み立てられる玩具モデルにおける玩具構築要素等の、複合製品の物理的構成要素を表す。
【0061】
本発明の上記の目的、特徴、及び利点、並びに/又は追加の目的、特徴、及び利点が、添付の図面を参照して、本発明の実施形態の以下の例示的で非限定的な詳細な説明によって更に明らかとなるであろう。
【図面の簡単な説明】
【0062】
【図1a】従来技術の最適化の一形態例を示す図である。
【図1b】従来技術の最適化の一形態例を示す図である。
【図1c】従来技術の最適化の一形態例を示す図である。
【図2a】複数の構成要素を含むコンピューターモデルの一例を示す図である。
【図2b】複数の部品を含むコンピューターモデルの構成要素の一例を示す図である。
【図2c】本発明の一実施形態による、コンピューターモデルの構成要素の複数の部品の一例を示す図である。
【図3】本発明の一実施形態による、コンピューターモデルの構成要素の複数の部品の一例を示す図である。
【図4a】最適化前の複数の構成要素を含むコンピューターモデルを示す図である。
【図4b】最適化後の複数の構成要素を含むコンピューターモデルを示す図である。
【図5a】最適化前の複数の構成要素を含むコンピューターモデルを示す図である。
【図5b】最適化後の複数の構成要素を含むコンピューターモデルを示す図である。
【図6a】最適化前の複数の構成要素を含むコンピューターモデルを示す図である。
【図6b】最適化後の複数の構成要素を含むコンピューターモデルを示す図である。
【図7a】構成要素と関連付けて画定される接続ゾーンを示す図である。
【図7b】接続ゾーンの適合性を示す図である。
【図8a】構成要素と関連付けて画定される接続ゾーンを示す図である。
【図8b】構成要素と関連付けて画定される接続ゾーンの適合性を示す図である。
【図8c】構成要素と関連付けて画定される接続ゾーンを示す図である。
【図8d】構成要素と関連付けて画定される接続ゾーンを示す図である。
【図8e】複数の構成要素を含むコンピューターモデルの一例を示す図である。
【図9a】複数の構成要素を含むコンピューターモデルの一例を示す図である。
【図9b】本発明の一実施形態による、コンピューターモデルの構成要素の複数の部品の一例を示す図である。
【図9c】本発明の一実施形態による、コンピューターモデルの構成要素の複数の部品の一例を示す図である。
【図10a】最適化前の複数の構成要素を含むコンピューターモデルを示す図である。
【図10b】最適化後の複数の構成要素を含むコンピューターモデルを示す図である。
【図11a】最適化前の複数の構成要素を含むコンピューターモデルを示す図である。
【図11b】最適化後の複数の構成要素を含むコンピューターモデルを示す図である。
【図12】本発明の一実施形態による、コンピューターモデルを視覚化/レンダリングする方法の流れ図である。
【図13】本発明の一実施形態による、コンピューターモデルの構成要素の複数の部品の一例を示す図である。
【図14】本発明の一実施形態による、コンピューターモデルの構成要素の複数の部品の一例を示す図である。
【図15a】本発明の一実施形態による構成要素の例を示す図である。
【図15b】本発明の一実施形態による構成要素の例を示す図である。
【図15c】本発明の一実施形態による部品の例を示す図である。
【図15d】本発明の一実施形態による部品の例を示す図である。
【図15e】本発明の一実施形態による遮蔽ゾーンの例を示す図である。
【図15f】本発明の一実施形態による遮蔽ゾーンの例を示す図である。
【図16】本発明の一実施形態によるコンピューターモデル最適化の一例を示す図である。
【図17】本発明の一実施形態によるコンピューターモデル最適化の一例を示す図である。
【図18】本発明の一実施形態による、コンピューターモデルの構成要素の複数の部品の一例を示す図である。
【図19】本発明の一実施形態によるコンピューターモデル最適化の一例を示す図である。
【図20】本発明の一実施形態による、コンピューターモデルを視覚化/レンダリングする方法の流れ図である。
【図21】本発明の一実施形態によるデータ構造の一例を示す図である。
【図22】コンピューターシステムの一例の概略図である。
【図23a】本発明の一実施形態による部品の例を示す図である。
【図23b】本発明の一実施形態による遮蔽ゾーンの例を示す図である。
【図23c】本発明の一実施形態によるコンピューターモデル最適化の一例を示す図である。
【図24】本発明の一実施形態による、コンピューター実施構築ツールのグラフィカルユーザーインターフェースを示す図である。
【発明を実施するための形態】
【0063】
以下の説明では、添付の図面を参照する。添付の図面は、例として、本発明をどのように実施することができるかを示す。
【0064】
図1a〜図1cは、従来技術の最適化である、遮蔽カリングの一形態例を示している。遮蔽カリングの基本的な概念は、カメラとシーンとの間の空間関係を調査して、レンダリング/視覚化プロセスにおいて省略することができる隠される表面を見つけることである。図1aは、2つの仮想カメラ102、103と、大きなボックス104、105、106、107と、小さなボックス108、109、110、111とを含む3Dシーンの上面図を示している。図1bは、仮想カメラ102によって生成された画像を示している。大きなボックスの2つの表面104、106のみを見ることができ、残りの全ての表面は隠されている。遮蔽カリングアルゴリズムは、レイトレーシング法を用いて、これらの隠された面を見つけ、取り除くことができる。しかしながら、これは非常に計算が要求されるプロセスである。図1cは、カメラ103から生成された画像を示している。視点の変化に起因して、これまで大きなボックスの陰になっていた小さなボックスを、ここでは見ることができる。これは遮蔽カリング法の限界を示している。遮蔽カリング法はビューに高度に依存する。このため、視点が頻繁に変化する用途には、遮蔽カリングがあまり有用でない。
【0065】
図2aは、本発明の一実施形態によるコンピューターモデル201の一例を示している。この例では、コンピューターモデル201は、玩具構築システムの構築要素から組み立てられた玩具モデルを表す。コンピューターモデルは、6つの同様の構成要素202から組み立てられる。しかしながら、他の実施形態では、構成要素の数及びタイプを異ならせることができる。6つの構成要素は、互いの上に位置決めされ、三角形のモデルを生成する。図2bは、本発明の一実施形態によるコンピューターモデル201の構成要素202の一例を示している。構成要素202は、玩具構築要素を表す。玩具構築要素202は、6つの長方形の側面215、216、217、218、219、220と、上面から突出している8つの円柱207、208、109、110、111、112、113、114とを備える。図1cは、本発明の一実施形態による、構成要素の複数の部品の一例を示している。8つの円柱107、108、109、110、111、112、113、114及び6つの長方形215、216、217、218、219、220が示されている。表1は、様々な部品について可能な面カウントを示している。
【0066】
【表1】
表1
【0067】
図3は、本発明の一実施形態による、構成要素の複数の部品を示している。この例の構成要素は、図2bに示す玩具構築要素である。円柱301及び3つの長方形302、303、304が示されている。この例では、一意の部品のみが保たれている。
【0068】
図7aは、本発明の一実施形態による、構成要素に関連付けられた接続ゾーンの例を示している。接続ゾーンによって、構成要素を他の構成要素にどのように接続することができるかが決まる。この例では、6つの接続ゾーンが構成要素に関連付けられているが、任意の数の接続ゾーンを画定することができる。タイプAの接続ゾーンが構成要素の前面及び背面に関連付けられ、タイプBの接続ゾーンが構成要素の左側面及び右側面に関連付けられ、タイプCの接続ゾーンが構成要素の上面に関連付けられ、タイプDの接続ゾーンが構成要素の底面に関連付けられる。異なるタイプの接続ゾーンは、他のタイプの接続ゾーンと選択的に適合性を有する。図7bは図7aにおいて画定される接続ゾーン(CON Z)の適合性の表の一例を示している。接続ゾーンAは接続ゾーンA、B、及びDとの適合性を有し、接続ゾーンBは接続ゾーンA、B、及びDとの適合性を有し、接続ゾーンCは接続ゾーンDとの適合性を有し、接続ゾーンDは接続ゾーンA、B、C、及びDとの適合性を有する。接続ゾーンを用いて、異なる構成要素間の空間関係を求めることができる。
【0069】
図8は、本発明の一実施形態による構成要素の接続ゾーンの別の例を示している。この例では、接続ゾーンは、構成要素によって表される玩具構築要素を、摩擦による嵌合(frictional fit)又は別の物理的接続によって互いに接続することができる位置においてのみ画定される。図8bは接続ゾーン(CON Z)の適合性を示している。図8cは、構成要素に関連付けられた接続ゾーンの一例を示している。この例では、複数の接続ゾーンが構成要素の上面及び底面に並んで配置されている。図8dは、円形接続ゾーンの一例を示している。この図は、リム801を表す構成要素を示している。リム801には、単一の円形接続ゾーン802が関連付けられている。図8eは、2つの構成要素、すなわちリム801及び該リム801に接続されたタイヤ803で構成されるコンピューターモデル804を示している。
【0070】
図4は、玩具モデルのコンピューターモデルを最適化するのに用いられる本発明の一実施形態を示している。図4aは最適化前の玩具モデルを示し、図4bは最適化後の玩具モデルを示している。玩具モデルは、並んで位置決めされた3つの玩具組立ブリック401、402、403から組み立てられる。この実施形態では、各玩具ブリックは、モデルの物理的構成要素を表すが、他の実施形態では、構成要素は他の形で規定することもでき、例えば、第1の構成要素を2つの玩具組立ブリック401、402として画定し、第2の構成要素を玩具組立ブリック403として画定することもできるし、第1の構成要素を玩具組立ブリック401の面の第1のグループとして画定し、第2の構成要素を玩具組立ブリック401の面の第2のグループとして画定することもできる。この例では、各構成要素401、402、403は、図1cに示す部品で構成され、面数は表1に示されている。図7a及び図7bに示すように、構成要素401、402、403のそれぞれについて、6個の接続ゾーンのセットが関連付けられる。最適化ステップの前に、構成要素401、402、403のそれぞれが1546個の面を含み、その結果、モデル全体で4644個の面となる。モデルを最適化するために、構成要素401、402、403間の空間関係が求められる。これは、構成要素の接続ゾーンを用いて達成することができる。第1のステップは、いずれかの接続ゾーンが他の接続ゾーンと所定の近接関係にあり、かつ/又は相対的な向きの所定の範囲内にあるか否かを判断することとすることができる。この例では、構成要素401及び402の2つのタイプBの接続ゾーン並びに構成要素402及び403の2つのタイプBの接続ゾーンが接触している。図7bの表から、タイプBの接続ゾーンが該タイプBの接続ゾーン自体との適合性を有することを見てとることができる。次に、接続ゾーン間の接続のタイプが求められる。構成要素401、402、403間の求められた空間関係を用いて構成要素のそれぞれの複数の部品が選択される。この例では、構成要素401を表すとき、部品218を省略することができ、構成要素402を表すとき、部品216、218を省略することができ、構成要素403を表すとき、部品216を省略することができる。したがって、モデル全体は、最適化前の4644個の面と比較して、最適化後に4636個の面を用いて表すことができる。表2は、最適化の前後のモデルの面を示している。
【0071】
【表2】
表2
【0072】
図5は、構造変化後にモデルを再最適化するのに用いられる本発明の一実施形態を示している。モデル510は、構成要素501、502、503と同じタイプの2つの構成要素504、505が付加されている、図4に示すモデル411である。2つの構成要素504、505は、3つの基礎を成す構成要素501、502、503の上に配置される。構成要素間の空間関係を求めるために、接続ゾーン間の空間関係が調査される。3つの元々の構成要素501、502、503間の空間関係は既に最適化されているので、それらの調査は省くことができる。構成要素504は、構成要素501、502の2つのタイプCの接続ゾーンと接触したタイプDの接続ゾーンと、構成要素505のタイプBの接続ゾーンと接触したタイプBの接続ゾーンとを有する。図7bの表から、タイプDの接続ゾーンがタイプCの接続ゾーンとの適合性を有し、タイプBがタイプBとの適合性を有することを見てとることができる。この例では、構成要素504と501との間、及び構成要素504と502との間には部分接続が存在し、構成要素504と505との間には完全な接続が存在する。構成要素505は、構成要素502、503の2つのタイプCの接続ゾーンと接触したタイプDの接続ゾーンと、構成要素504のタイプBの接続ゾーンと接触したタイプBの接続ゾーンとを有する。図7bの表から、タイプDの接続ゾーンはタイプCの接続ゾーンとの適合性を有することを見てとることができる。ここでもまた、構成要素505と502との間、及び構成要素505と503との間の双方に部分接続が存在する。構成要素間の求められた空間関係を用いて、構成要素ごとに、該構成要素を表す複数の部品を選択することができる。構成要素501の場合、部品207、208、211、212、215、216、217、219、220が用いられ、構成要素502の場合、部品215、219、220が用いられ、構成要素503の場合、部品209、210、213、214、215、218、219、220が用いられ、構成要素504の場合、部品207、208、209、210、211、212、213、214、215、216、217、219が用いられ、構成要素505の場合、部品207、208、209、210、211、212、213、214、215、217、218、219が用いられる。部品209が図5bにおいて見えないにもかかわらず、構成要素503を表すのにこの部品209が依然として用いられることに留意すべきである。なぜなら、この部品は、モデルの構成要素間の空間関係の結果隠されているのではなく、モデルと仮想カメラとの間の空間関係の結果隠されているためである。全体モデルは、最適化前の7740個と比較して、4650個の面を用いて表すことができ、面数の39.9%の削減に対応する。表3は、最適化前後のモデルの面カウントを示している。
【0073】
【表3】
表3
【0074】
図6は、本発明の一実施形態による構造変化が生じたモデルの再最適化の別の例を示している。モデル611は、構成要素601、602、603、604、605と同じタイプの別の構成要素が付加されている、図5が示すモデル511である。構成要素606は、構成要素604、605の上に配置される。構成要素間の空間関係を求めるために、接続ゾーン間の空間関係が調査される。5つの元々の構成要素601、602、603、604、605の接続ゾーン間の関係は既に最適化されているので、それらの調査は省くことができる。構成要素606は、構成要素604、605の2つのタイプCの接続ゾーンと接触したタイプDの接続ゾーンを有する。図7bの表から、タイプDの接続ゾーンはタイプCの接続ゾーンとの適合性を有することを見てとることができる。構成要素606と604との間、及び構成要素606と605との間の双方に部分接続が存在する。構成要素間の求められた空間関係を用いて、構成要素ごとに、該構成要素を表す複数の部品を選択することができる。構成要素601の場合、部品207、208、211、212、215、216、217、219、220が用いられ、構成要素602の場合、部品215、219、220が用いられ、構成要素603の場合、部品209、210、213、214、215、218、219、220が用いられ、構成要素604の場合、部品207、208、211、212、215、216、217、219が用いられ、構成要素605の場合、部品209、210、213、214、215、217、218、219が用いられ、構成要素606の場合、部品207、208、209、210、211、212、213、214、215、216、217、218、219が用いられる。この直前の例と同様に、部品209が図6bにおいて見えないにもかかわらず、構成要素603及び605の双方を表すのにこの部品209が依然として用いられることに留意すべきである。全体モデルは、最適化前の9288個と比較して、4660個の面を用いて表すことができ、面数の49.8%の削減に対応する。表4は、最適化前後のモデルの面カウントを示している。
【0075】
【表4】
表4
【0076】
例から、本方法が、複雑なモデルにとって、より効率的となることを見てとることができる。複雑なモデルの場合、最適化が特に重要であるので、これは本方法の非常に有用な効果である。
【0077】
図9aは、本発明の一実施形態によるコンピューターモデル1001の別の例を示している。コンピューターモデル1001はマーカーを表している。コンピューターモデル1001は、マーカーのカバーに対応する構成要素901、及びマーカーの本体に対応する構成要素902の2つの構成要素を備える。図9bは、マーカー本体902を複数の部品に分割する可能な方法を示している。マーカー本体の先端は、5つの部品903、904、905、906、907に分割され、マーカー本体の把持部分908は単一の部品908を用いて表される。図9cは、マーカー901のカバーをどのように複数の部品に分割することができるかの例を示している。カバーの外側部分は部品909によって表され、カバーの内側部分は部品910によって表される。
【0078】
図10は、本発明の方法の一実施形態をどのように用いて、図9に示すコンピューターモデルを最適化することができるかの一例を示している。本方法は、2つの構成要素1002及び1003間の空間関係を調査することによって、部品903、904、905、906、907、910が全ての視点から隠されていることを判断することができる。これは、構成要素1002、1003の遮蔽ゾーン及び/又は接続ゾーンを調査することによって達成することができる。したがって、最適化後のコンピューターモデルを示す図10bに示すように、これらの部品を省略することができる。
【0079】
図11は、本発明の方法の一実施形態をどのように用いて、図9に関連して説明したコンピューターモデルを最適化することができるかの別の例を示している。本方法は、2つの構成要素1002及び1003間の空間関係を調査することによって、全ての視点からいずれの部品も隠されていないことを判断することができる。したがって、結果としていずれの部品も省略されず、図11bに示す最適化後のコンピューターモデルは、最適化前の図11aに示すコンピューターモデルに等しい。
【0080】
図12は、本発明の一実施形態によるコンピューターモデルを視覚化/レンダリングする方法の流れ図を示している。コンピューターモデルは、複数の構成要素で構成されるように規定され、各構成要素は、複数の部品で構成されるように規定される。本発明の方法の実施形態は、構成要素のそれぞれについてモデルを視覚化/レンダリングするのに用いられる複数の部品を選択的に選ぶ。本方法の第1のステップ1201において、構成要素の複数の部品が格納される。これは、構成要素を最適化することができる方法が、構成要素がどのように複数の部品に分割されるかによって決まることを意味する。次のステップ1202において、構成要素の位置及び向きが格納される。位置は任意の座標系に格納することができる。次に、ステップ1203において、構成要素の格納された位置を用いて構成要素間の空間関係を求める。空間関係は、構成要素の接続ゾーンを調査することによって求めることができる。ここで、空間関係を求めることは、例えば、他の構成要素の適合性のある接続ゾーンに接続された1つの構成要素の接続ゾーンを求めることによって、構成要素の接続性特性を求めることを含むことができる。国際公開第2004034333号は、構成要素間の空間関係を求める方法を開示している。次に、ステップ1204において、構成要素の求められた空間関係を用いて、構成要素ごとに、構成要素を視覚化/レンダリングするのに用いる複数の部品を選び、ステップ1205において、求められた部品を用いてモデルが視覚化/レンダリングされる。
【0081】
図13及び図14は、本発明の一実施形態による構成要素を表すのに用いられる複数の部品を示している。この例では、構成要素は玩具組立ブリックである。玩具組立ブリックの取っ手を表すのに8つの部品1302、1303、1304、1305が用いられ、ブリックの外側ケーシング1306を表すのに1つの部品が用いられ、ブリックの内側ケーシング1037、1308を表すのに2つの部品が用いられ、ブリックの下の円柱1309、1310、1311を表すのに3つの部品が用いられている。
【0082】
図15aは、本発明の一実施形態による構成要素1501を示している。構成要素1501は、四角形の玩具構築要素を表している。図15bは、本発明の一実施形態による構成要素1502を示している。構成要素1502は、円柱形の玩具構築要素を表している。図15cは、構成要素1501の部品1503、1504、1505、1506、1507、1515を示している。図15dは、構成要素1502の部品1508、1509、1510を示している。図15eは、構成要素1501と関連付けられた特定のタイプの2つの遮蔽ゾーン1511、1512を示している。遮蔽ゾーン1511、1512は好ましくは、構成要素の、該構成要素が他の構成要素と接続することができる部分に位置決めされる。この例では、遮蔽ゾーン1511、1512は構成要素1501の上面及び底面に位置決めされる。これらの位置は、構成要素1501が表す玩具構築要素の、他の玩具構築要素に接続することができる部分に対応する。遮蔽ゾーンのタイプは、該遮蔽ゾーンの形状及び/又はサイズに依拠することができる。この例では、遮蔽ゾーン1511、1512は四角形の遮蔽ゾーンである。遮蔽ゾーンは、該遮蔽ゾーンの構成要素の1つ又は複数の部品に関連付けられることができる。この例では、遮蔽ゾーン1512は部品1503に関連付けられ、遮蔽ゾーン1511は部品1515に関連付けられる。図15fは、構成要素1502に関連付けられた特定のタイプの2つの遮蔽ゾーン1513、1514を示している。この例では、遮蔽ゾーン1513、1514は、構成要素1502の上面及び底面に位置決めされる。これらの位置は、構成要素1502が表す玩具組立ブリックの、他の玩具構築要素に接続することができる部分に対応する。この例では、遮蔽ゾーン1513、1514は円形である。この例では、遮蔽ゾーン1513は部品1510に関連付けられ、遮蔽ゾーン1514は部品1509に関連付けられる。
【0083】
図16は、本発明の一実施形態によるモデル最適化の一例を示している。コンピューターモデル1601は、2つの四角形の玩具構築要素1603、1604で組み立てられた玩具モデルを表す。この例では、各玩具構築要素1603、1604は構成要素に対応し、各構成要素は、図15cに示す部品1503、1504、1505、1506、1507、1515で構成される。各構成要素は、図15eに示すように、関連付けられた2つの遮蔽ゾーン1511、1512を更に有する。コンピューターモデル1601を最適化するために、2つの構成要素1603、1604の遮蔽ゾーン間の空間関係が調査される。構成要素1603の遮蔽ゾーン1511と、構成要素1604の遮蔽ゾーン1512との間の距離、及び互いに対するそれらの向きを調査することによって、本方法は2つの遮蔽ゾーンが接触していることを判断することができる。2つの遮蔽ゾーンが接触しているとき、論理規則を用いて、一方の遮蔽ゾーンが他方を遮蔽しているか否か、及び、構成要素の視覚化/レンダリングのために遮蔽ゾーンのいずれかに関連付けられたいずれかの部品を省略することができるか否かを判断することができる。この例では、予想される論理規則は以下とすることができる。
1.サイズXの四角形の遮蔽ゾーンが、X以下のサイズの円形及び四角形の遮蔽ゾーンを遮蔽する。
2.サイズYの円形の遮蔽ゾーンが、Y以下のサイズの円形の遮蔽ゾーンを遮蔽する。
3.構成要素を視覚化/レンダリングするとき、遮蔽された遮蔽ゾーンに関連付けられた部品を省略することができる。
【0084】
本方法は、規則1を用いて、部品1603の遮蔽ゾーン1511が部品1604の遮蔽ゾーン1512を遮蔽し、部品1604の遮蔽ゾーン1512が部品1603の遮蔽ゾーン1511を遮蔽していることを判断することができる。したがって、最適化されたモデル1602は、構成要素1603を表すのに部品1515を用いることも、構成要素1604を表すのに部品1503を用いることもなく表すことができる。
【0085】
図17は、本発明の一実施形態によるモデル最適化の一例を示している。コンピューターモデル1701は、四角形の玩具構築要素1704と、円形の玩具構築要素1703とで組み立てられた玩具モデルを表している。この例では、各玩具構築要素1703、1704は構成要素に対応する。四角形の玩具構築要素は、図15cに示す部品1503、1504、1505、1506、1507、1515を含み、円形の玩具構築要素は、図15dに示す部品1508、1509、1510を含む。四角形の玩具構築要素1704は、図15eに示すように、関連付けられた2つの遮蔽ゾーン1511、1512を有し、円形の玩具構築要素1703は、図15fに示すように、関連付けられた2つの遮蔽ゾーン1513、1514を有する。コンピューターモデル1601を最適化するために、2つの構成要素1703、1704の遮蔽ゾーン間の空間関係が調査される。この例では、構成要素1703の遮蔽ゾーン1514と、構成要素1704の遮蔽ゾーン1512とが接触していることがわかる。本方法は、3つの上述した論理規則を用いて、構成要素1704の四角形の遮蔽ゾーン1512が構成要素1703の円形の遮蔽ゾーン1514を遮蔽しているが、構成要素1703の円形の遮蔽ゾーン1514は構成要素1704の四角形の遮蔽ゾーン1512を遮蔽していないことを判断する。これによって、最適化されたコンピューターモデル1702は、構成要素1703を表すのに部品1509を用いることなく表すことができるが、構成要素1704を表すのに全ての数の部品を依然として用いる必要がある。
【0086】
図23aは、本発明の一実施形態による、構成要素を複数の部品にどのように分割することができるかの一例を示している。部品が表す構成要素は、図15aに示す四角形の玩具構築要素1501である。この例では、円柱2305及びボックス2306は部品を用いて表される。図23bは、本発明の一実施形態による、遮蔽ゾーンをどのように構成要素と関連付けることができるかの一例を示している。この例における遮蔽ゾーンは構成要素1501と関連付けられている。遮蔽ゾーン2311及び2312は、構成要素1501によって遮蔽される他の構成要素の部品を見つけるのに用いられ、遮蔽ゾーン2313は、他の構成要素によって遮蔽される構成要素1501の部品(複数の場合もあり)を見つけるのに用いられる。遮蔽ゾーン2311及び2312はいかなる部品にも関連付けられておらず、遮蔽ゾーン2313は部品2305に関連付けられている。
【0087】
図23cは、本発明の一実施形態によるモデル最適化の一例を示している。コンピューターモデル2301は、四角形の玩具構築要素2304と、円形の玩具構築要素2303とで組み立てられた玩具モデルを表している。この例では、各玩具構築要素2303、2304は構成要素に対応する。四角形の玩具構築要素は図23aに示す部品2305、2306を含み、円形の玩具構築要素は図15dに示す部品1508、1509、1510を含む。四角形の玩具構築要素2304は、図23bに示すように、関連付けられた3つの遮蔽ゾーン2311、2312、2313を有し、円形の玩具構築要素2303は、図15fに示すように、関連付けられた2つの遮蔽ゾーン1513、1514を有する。コンピューターモデル2301を最適化するために、2つの構成要素2303、2304の遮蔽ゾーン間の空間関係が調査される。この例では、構成要素2303の遮蔽ゾーン1514と構成要素2304の遮蔽ゾーン2312とが接触していることがわかり、構成要素2304の遮蔽ゾーン2313と構成要素2303の遮蔽ゾーン1513とが接触していることがわかる。本方法は、3つの上述した論理規則を用いて、構成要素2304の四角形の遮蔽ゾーン2312が構成要素2303の円形の遮蔽ゾーン1514を遮蔽し、構成要素2303の円形の遮蔽ゾーン1514が構成要素2304の円形の遮蔽ゾーン2313を遮蔽していることを判断する。これによって、最適化されたコンピューターモデル2301は、構成要素2303を表すのに部品1509を用いることも、構成要素2304を表すのに部品2305を用いることもなく表されることができる。本発明の実施形態では、遮蔽ゾーン(複数の場合もあり)の第1の集合及び第2の集合を、構成要素に関連付けることができる。遮蔽ゾーン(複数の場合もあり)の第1の集合を用いて、構成要素によって隠された他の構成要素の部品を見つけることができ、遮蔽ゾーン(複数の場合もあり)の第2の集合を用いて、他の構成要素によって隠された構成要素の部品を見つけることができる。
【0088】
図18は、本発明の一実施形態による、構成要素を複数の部品にどのように分割することができるかの一例を示している。部品が表す構成要素は、図15aに示す四角形の玩具構築要素1501である。この例では、2つの部品1802、1803が構成要素1501の共通部分を表す。第1の部品1802は上面に円柱を有する四角形に対応し、第2の部品1803は四角形に対応する。第1の部品は第2の部品よりも高い詳細度を有する。したがって、第2の部品1803を視覚化/レンダリングするのに必要となる計算リソースは、第1の部品1802の場合よりも少ない。好ましくは、玩具構築要素1501を表すのに、その時点において多くても第1の部品1802又は第2の部品1803のうちの一方しか用いられない。残りの部品1804、1805、1806、1807、1808は図15cに示す部品に対応する。
【0089】
図19は、本発明の一実施形態によるモデル最適化の一例を示している。コンピューターモデル1901は、四角形の玩具構築要素1904と円形の玩具構築要素1903とで組み立てられた玩具モデルを表している。この例では、各玩具構築要素1903、1904は構成要素に対応する。四角形の玩具構築要素1904は、図18に示す部品1802、1803、1804、1805、1806、1807、1808を用いて表され、円形の玩具構築要素は、図15dに示す部品1508、1509、1510を用いて表される。構成要素1904は、図15eに示すように、関連付けられた2つの遮蔽ゾーン1511、1512を有するが、遮蔽ゾーン1511は部品1803に関連付けられ、遮蔽ゾーン1512は部品1802及び部品1803の双方に関連付けられているという違いを有する。構成要素1903は、図15fに示すように、関連付けられた2つの遮蔽ゾーン1513、1514を有する。コンピューターモデル1901を最適化するために、2つの構成要素1903、1904の遮蔽ゾーン間の空間関係が調査される。この例では、構成要素1903の遮蔽ゾーン1514と構成要素1904の遮蔽ゾーン1512とが接触していることがわかる。2つの遮蔽ゾーンが接触していることがわかると、論理規則を用いて、一方の遮蔽ゾーンが他方を遮蔽しているか否か、及び遮蔽ゾーンのうちのいずれかに関連付けられたいずれかの部品が、構成要素を視覚化/レンダリングするのに省略することができるか否かを判断することができる。この例では、予想される論理規則の例は以下とすることができる。
1.サイズXの四角形の遮蔽ゾーンが、X以下のサイズの円形及び四角形の遮蔽ゾーンを遮蔽する。
2.サイズYの円形の遮蔽ゾーンが、Y以下のサイズの円形の遮蔽ゾーンを遮蔽する。
3.サイズYの円形の遮蔽ゾーンがY以下のサイズの四角形の遮蔽ゾーンを部分的に遮蔽する。
4.構成要素を視覚化/レンダリングするとき、遮蔽された遮蔽ゾーンに関連付けられた部品を省略することができる。
5.2つの部品が構成要素の共通部分を表し、かつ1つの遮蔽ゾーンに関連付けられている場合において、該遮蔽ゾーンが部分的に遮蔽されているとき、最も低い詳細度を有する部品を用いる。
6.2つの部品が構成要素の共通部分を表し、かつ1つの遮蔽ゾーンに関連付けられている場合において、該遮蔽ゾーンが遮蔽されていないとき、最も高い詳細度を有する部品を用いる。
【0090】
論理規則1及び4を用いると、構成要素1903を視覚化/レンダリングするときに部品1509を省略することができ、構成要素1904を視覚化/レンダリングするのに、部品1802の代わりに部品1803を用いることができる。これによって、構成要素1903及び1904の双方を最適化することができ、コンピューターモデル1901を視覚化/レンダリングするのに必要な計算リソースをさらに少なくすることができる。この例では、構成要素1904を視覚化/レンダリングするのに部品1802の代わりに部品1803を用いることについて視覚的損失はないが、他の実施形態では様々な視覚的損失が生じる場合がある。
【0091】
図20は、本発明の一実施形態による、コンピューターモデルを視覚化/レンダリングするための方法のフローチャートを示している。ステップ2001において、本方法は、モデルの全ての構成要素が評価されたか否かを判断する。答えがnoである場合、ステップ2002において、本方法は次の構成要素を選ぶことによって継続する。ステップ2003において、本方法は、選ばれた構成要素の全ての部品(複数の場合もあり)が調査されたか否かを判断する。答えがnoである場合、ステップ2004において、本方法は次の部品を選択する。ステップ2005において、本方法は、部品に関連付けられた全ての遮蔽ゾーンが調査されたか否かを判断する。答えがnoである場合、ステップ2006において、本方法は、次の遮蔽ゾーンを選択する。次に、ステップ2007において、本方法は選択された遮蔽ゾーンを調査する。本方法は、選ばれた遮蔽ゾーンと、他の構成要素の任意の他の遮蔽ゾーンとの間の空間関係を求めることによって遮蔽ゾーンを調査することができる。空間関係は、選ばれた遮蔽ゾーンと他の遮蔽ゾーンとの間の距離を調査することによって求めることができる。2つの遮蔽ゾーン間の距離が所定の範囲内にある場合、これらの遮蔽ゾーンは接触していると判断することができる。加えて、遮蔽ゾーンの相対的な向きを用いて、これらの遮蔽ゾーンが接触しているか否かを判断することができる。2つの遮蔽ゾーンは、接触しているものとして分類されるために、物理的に接触している必要はなく、単に互いに近接している場合でもよい。2つの遮蔽ゾーンが接触していることがわかると、論理規則を適用して、それらの遮蔽ゾーンが互いを遮蔽しているか否か、及びどのように互いを遮蔽しているかを判断することができる。遮蔽ゾーンは、図19に関連して上述したように、全体的に遮蔽されることもできるし、部分的に遮蔽されることもできる。ステップ2007において、本方法が選ばれた遮蔽ゾーンの調査を終了すると、本方法はステップ2005に戻り、部品に関連付けられた全ての遮蔽ゾーンが調査されたか否かを検査する。答えがyesである場合、本方法はステップ2008に進み、ステップ2008において、選ばれた部品が全体的に遮蔽されているか否かを判断する。答えがnoである場合、本方法はステップ2009に進み、ステップ2009において、部品が部分的に遮蔽されているか否かを判断する。答えが再びnoである場合、本方法はステップ2003に戻る。ステップ2009において、答えがyesである場合、本方法は、ステップ2011において、部品がより低いバージョンの詳細度を有するか否かを判断する。詳細度がより低いバージョンは、より少ない詳細部を有する部品のバージョンとすることができ、例えば、部品が、上面に突出した円柱を有する四角形で構成された玩具構築要素の上面を表す場合、該部品の詳細度がより低いバージョンは、単に円柱を有しない四角形とすることができる。答えがnoである場合、本方法はステップ2003に戻る。答えがyesである場合、本方法は、レンダリングプロセスにおいて部品を詳細度がより低いバージョンに置き換え、ステップ2003に戻る。本方法は、ステップ2008において、選ばれた部品が全体的に遮蔽されていると判断する場合、ステップ2013において、該選ばれた部品を除去し、ステップ2003に戻る。本方法は、ステップ2003において、選ばれた構成要素の全ての部品が評価されたと判断する場合、ステップ2001に戻る。本方法は、ステップ2001において、モデルの構成要素の全てが評価されたと判断する場合、ステップ2014において視覚化/レンダリングプロセスを開始し、モデルの画像を生成する。画像はモデルの2次元斜視図とすることができる。モデルの2次元斜視図は、スクリーン上で直接見ることができ、かつ/又はデジタルファイルに保存することができる。
【0092】
図20の例では、プロセスは遮蔽ゾーンに直接基づいて2つの構成要素間の空間関係を求める。代替的な実施形態では、プロセスは本明細書で説明した接続ゾーンに少なくとも部分的に基づいて空間関係を求めることができる。特に、1つの実施形態では、構成要素の各部品は、1つ又は複数の接続ゾーンと、該1つ又は複数の接続ゾーンと関連付けられた1つ又は複数の遮蔽ゾーンとを有することができる。例えば、第1の部品は、該第1の部品と関連付けられた1つ又は複数の接続ゾーンを有することができ、各接続ゾーンは、該接続ゾーンと関連付けられた遮蔽ゾーンを有することができる。第1の部品に関連付けられた少なくとも第1の接続ゾーンが、適合性を有する別の構成要素の接続ゾーンに接続されている場合、プロセスは、その接続に起因して部品が遮蔽されているか否か(かつ/又はどの程度遮蔽されているか)を判断する。このために、プロセスは、他の構成要素の接続ゾーンに関連付けられた遮蔽ゾーンが、例えば上述したように、第1の接続ゾーンに関連付けられた遮蔽ゾーンを遮蔽しているか否かを判断する。
【0093】
このため、いくつかの実施形態では、プロセスは、部品が、別の構成要素の第2の接続ゾーンに接続された、該部品と関連付けられた第1の接続ゾーンを有する場合において、第2の接続ゾーンが、第1の接続ゾーンと関連付けられた第1の遮蔽ゾーンを遮蔽する、該第2の接続ゾーンと関連付けられた第2の遮蔽ゾーンを有するとき、該部品が構成要素を視覚化/レンダリングに用いられないと判断する。
【0094】
図21は、本発明の一実施形態によるコンピューターモデルのデータ構造を示している。コンピューターモデルのデータ構造2101は、モデルパラメーター2102と、複数の構成要素と、任意選択で接続ゾーン適合性テーブル2121と、複数の遮蔽規則2122とを含むことができる。モデルパラメーター2102は、適切な座標系におけるモデルの位置及び向きに関連する情報を含むことができる。モデルパラメーター2102は経時的に更にアニメーション化(animate)することができる。接続ゾーン適合性テーブル2121は、種々のタイプの接続ゾーンの適合性に関連する情報を含むことができ、例えば図7bに示す表である。遮蔽規則は、種々のタイプの遮蔽ゾーンがどのように互いに遮蔽するかを規定することができ、例えば上述した論理規則である。構成要素のデータ構造2104は、構成要素パラメーター2105と、複数の接続ゾーン2106と、複数の遮蔽ゾーン2107と、複数の部品2108とを含むことができる。構成要素パラメーター2105は、構成要素の位置及び向きに関連する情報を含むことができる。接続ゾーンのデータ構造2109は、接続ゾーンパラメーター2110と、任意選択で、他の構成要素の接続ゾーンとともに成される接続の情報2111とを含むことができる。接続ゾーンパラメーター2110は、接続ゾーンの位置、向き、形状、及びタイプに関連する情報を含むことができる。遮蔽ゾーンのデータ構造2112は、遮蔽ゾーンパラメーター2113と、任意選択で、遮蔽ゾーンに関連付けられた部品を示す情報2114と、遮蔽ゾーンの、他の構成要素の他の遮蔽ゾーンとの接続を示す情報2115とを含むことができる。遮蔽ゾーンパラメーター2113は、遮蔽ゾーンの位置、向き、形状、及びタイプに関連する情報を含むことができる。部品のデータ構造2116は、部品パラメーター2117と、任意選択で、詳細度がより低い複数の部品2118と、部品に関連付けられた遮蔽ゾーンを示す情報2118とを含むことができる。部品パラメーター2117は、部品の位置、向き、及び形状に関連する情報を含むことができる。詳細度がより低い部品のためのデータ構造は、より低いLODの部品の位置、向き、及び形状に関連する情報を含むことができるパラメーター2120を含むことができる。
【0095】
一般に、いくつかの実施形態では他の構成要素に接続を提供する、複合製品の構成要素の接続ゾーンは、規則的な構造、例えば規則的な2D格子に配列することができ、規則的な2D格子において、格子位置のそれぞれが接続ゾーンを表す。各接続ゾーンは該接続ゾーンと関連付けられたタイプを有し、接続ゾーンの所与の対が接続を提供するように相互作用するか否かは、例えば適切なデータ構造において規定されるような、それらの接続ゾーンのタイプによって決まる。1つの実施形態では、接続を形成するためにモデル内の別の接続ゾーンと相互作用する接続ゾーンのみが、遮蔽試験を実行するときに最適化プロセスによって考慮に入れられる。接続ゾーンは、タイプを有することに加えて、該接続ゾーンと関連付けられた遮蔽ゾーンも有する。プロセスは、接続の双方の側の遮蔽ゾーンを比較することによって、接続の双方の側において、構成要素の部品をどのように除去するか又は任意選択の部品と置き換えることができるかを判断する。任意選択の部品は、該任意選択の部品によって置き換えられる部品の詳細度よりも低い詳細度を有することができる。
【0096】
モデル内の構成要素がレンダリング目的で最適化されるときはいつでも、プロセスは各構成要素の全ての部品にわたって反復し、各部品が依拠する、別の接続ゾーンとの接続を形成する接続ゾーンを調査することができる。その結果、それぞれの接続を形成する接続ゾーンと関連付けられた遮蔽ゾーンのそれぞれのタイプに依拠して、部品を除去することができるか、任意選択の部品によって置き換えることができるか、又は完全な品質で示すことができるかが決まる。
【0097】
例えば、モデルのデジタル画像において、例えば、規則的な格子及び該格子内の接続ゾーンの位置を特定する属性等の1つ又は複数の適切な属性を部品に関連付けることによって、最適化中に潜在的に除去することができる構成要素の各部品を、接続ゾーンに連結することができる。1つの実施形態では部品がいかなる接続ゾーンにも依拠しない場合、その部品は常に示される。
【0098】
1つの実施形態では、構成要素の部品が2つ以上の接続ゾーンに依拠する場合はいつでも、最適化プロセスは、接続ゾーンの接続特性と、接続された接続ゾーンの対応する遮蔽ゾーンとに基づいて各接続ゾーンの遮蔽特性を求める。例えば、各接続ゾーンの結果は、「隠す」、「任意選択」、及び「示す」のうちの1つとすることができる。次に、2つ以上の接続ゾーンに依拠する部品の全体的な結果を、最小最適化をもたらす接続ゾーンの結果として求めることができる。例えば、8つの接続ゾーンに依拠する部品の場合、7つの「隠す」及び1つの「任意選択」の結果として「任意選択」が得られ、同様に、1つの「隠す」、6つの「任意選択」、及び1つの「示す」の結果として「示す」が得られる。結果が「任意選択」であり、かつ任意選択の部品が現在の部品に利用可能でない場合、結果は「示す」に変換される。いずれかの単一の接続ゾーンの結果が「示す」となる場合、現在の部品に関してこれ以上接続ゾーンが試験される必要はない。接続ゾーンの結果が「示す」とならない限り、プロセスは「隠す」/「任意選択」の結果を求めるために、残りの接続ゾーンを試験し続ける。
【0099】
図22は、コンピューターシステムの一例の概略図を示している。全体を2200として指定されるこのコンピューターシステムは、適切にプログラムされたコンピューター2201を備える。コンピューター2201は、例えばパーソナルコンピューター、ワークステーション等であり、ディスプレイ2220、キーボード2221、コンピューターマウス222、及び/又はタッチパッド、トラックボール、ライトペン、タッチスクリーン等の別のポインティングデバイスを備える。コンピューターシステムは、全てのアクセス可能なコンピューターモデル、構成要素、及び部品に関する情報を格納するデータベース2202を更に備える。データベース2202は、任意の適切なデータベースシステム、例えば、Oracle又はMySQLデータベース等のリレーショナルデータベースとすることができる。コンピューターシステムはファイルストレージデバイス2203を更に備える。ファイルストレージデバイスは、SMB又はNFS−shares等の任意の適切なタイプのリモートアクセス可能なストレージとすることができ、ジオメトリ定義は、任意の適切なディレクトリ構造内に格納することができる。
【0100】
データベース2202及びファイルストレージ2203は、適切なコンピューターネットワーク2204、例えばローカルエリアネットワーク、広域ネットワーク、インターネット等を介してコンピューター2201にアクセス可能である。データベース2202及び/又はファイルストレージ2203は、コンピューター2201に直接、又はファイルサーバー、データベースサーバー等の別のコンピューターを介してアクセス可能とすることができることが理解されよう。データベース2202及び/又はファイルストレージ2203は、コンピューター2201に統合することができることが更に理解されよう。コンピューターモデル、構成要素、及び部品に関する情報を異なる方式で格納することができることが更に理解されよう。
【0101】
コンピューターシステム2200は、コンピューターモデルの視覚化/レンダリングを容易にするように構成される。コンピューターシステムは、スタンドアロンシステムとして、又は他のコンピューターと接続して用いることができる。したがって、いくつかの実施形態では、コンピューターシステム2200は、コンピューターネットワーク、例えばインターネットを介してコンピューターを他のコンピューターと接続するための1つ又は複数のインターフェースを更に備える。
【0102】
図24は、コンピューター実施構築ツールのグラフィカルユーザーインターフェースを示している。ユーザーインターフェースは、ベースプレート2402と、複数の相互接続された構成要素2404を含むコンピューターモデル2403とを用いて3Dシーンのビューを示す表示エリア2401を含む。シーンは所定のビューポイントから示される。以下において、このビューポイントは(仮想)カメラ位置とも呼ばれる。なぜなら、このビューポイントは、カメラが表示エリア内に示されるグラフィック画像に対応する実際の構造の画像を記録する位置に対応するためである。
【0103】
構成要素のそれぞれが、該構成要素を選択するために、例えばコンピューターマウスを用いてその上をクリックすることによってアクティベートすることができるグラフィカルユーザーインターフェースのアクティブ要素に対応する。1つの実施形態では、選択された構成要素は外観を変更する。例えば、選択された構成要素は、色、テクスチャ等を変更することができる。選択された構成要素は、選択された組立ブロックの回りに境界ボックスを示すこと等によって強調することができる。ユーザーは選択された構成要素を操作することができ、例えば該構成要素の特性、例えば該構成要素の色を変更し、該構成要素を削除し、コピーアンドペースト動作を実行し、該構成要素を異なる位置にドラッグし、該構成要素を回転すること等を行うことができる。
【0104】
ユーザーインターフェースは、ユーザーが選択することができる複数の種々の構成要素2406を含むパレットパネル2405を更に備える。例えば、ユーザーは、マウスで構成要素2406のうちの1つをクリックし、それによってその構成要素を選択し、選択された構成要素を表示エリア2401にドラッグして、該構成要素を構造2403又はベースプレート2402に接続することができる。ユーザーインターフェースは、様々な機能又はツールをアクティベートするための複数のメニューボタン2408を含むメニューバー2407を更に備える。例えば、ツールバーは、仮想カメラ位置を変更し、それによってユーザーが異なる方向から組立エリアを見ることを可能にする回転ツールを備えることができる。メニューバーは、3Dシーンに対しズームイン/ズームアウトするためのズームツールを更に備えることができる。ツールの他の例には、それぞれ構成要素の異なるセットを含む種々のパレット2405を選択するためのパレットツール、構造の部品をカラーリングするためのカラーリングツール、組立ブロックを消去するための消去ツール等が含まれる。
【0105】
メニューバー2407は、モデルを保存する機能、以前に保存したモデルを開く機能、モデルの画像を印刷する機能、ヘルプ機能等の標準機能を更に提供することができる。
【0106】
いくつかの実施形態が説明され、詳細に示されたが、本発明はこれらに限定されるものではなく、以下の特許請求の範囲において規定される主題の範囲内で他の形で実施することもできる。特に、他の実施形態を利用することができ、本発明の範囲から逸脱することなく構造及び機能の変更を行うことができることを理解されたい。
【0107】
いくつかの手段を列挙する装置クレームにおいて、これらの手段のうちのいくつかを、ハードウェアの全く同じアイテムによって実施することができる。単に或る特定の手段(measure)が互いに異なる従属クレームで挙げられることも、異なる実施形態において説明されることも、これらの手段の組み合わせを用いて利益を得ることができないことを意味するものではない。
【0108】
用語「備える、含む(comprises/comprising)」は、本明細書において用いられるとき、述べた特徴、完全体(integer)、ステップ、又は構成要素の存在を特定するために使われるが、1つ又は複数の他の特徴、完全体、ステップ、構成要素、又はそれらのグループの存在又は付加を排除するものではないことを強調されるべきである。
【技術分野】
【0001】
本発明は、コンピューターモデルを視覚化/レンダリングする方法に関する。詳細には、本発明は、コンピューターモデルを視覚化/レンダリングする計算効率のよい方法に関する。
【背景技術】
【0002】
コンピューター支援設計(CAD)及びコンピューターゲーム等の広範な分野において3Dコンピューターグラフィックスが用いられている。3Dコンピューターグラフィックスを用いて3Dモデルの斜視図を生成することができる。これは、CADの場合のように設計プロセスにおいて、又はコンピューターゲームの場合のように娯楽目的で用いることができる。3Dコンピューターグラフィックスが直面する共通の問題は、必要とされる大きな計算リソースである。これは特にリアルタイム3Dコンピューターグラフィックスにとって問題である。なぜなら、計算リソースが不足する結果、フレームレートが減少し、それに応じてユーザー体験が減少するためである。
【0003】
コンピューティングにおける徹底的な研究に匹敵して、コンピューターモデルの複雑度も同様に増大している。これは、より大きな構造が設計されるCADの場合、及び詳細度の増加の結果、より複雑なモデルとなるコンピューターゲームの場合の双方にあてはまる。3Dコンピューターグラフィックスを用いて表現する物体の共通群(common group)は複合製品である。複合製品は、複数のより小さな物理的構成要素で構成される製品である。
【0004】
多数の構成要素を含む複合製品の例には、大型機械、自動車、飛行機、及び他の乗り物、建物、並びに家具、玩具モデル等のような、組み立てられていない状態で販売及び出荷される製品が含まれる。多数のより小さな構成要素で構成される製品の具体的な例には、複数の相互接続可能な玩具構築要素を含む玩具構築セットが含まれる。
【0005】
こうした玩具構築セットの様々な既知のタイプのモデリング構想が存在する。特に、モジュール式又は半モジュール式の構想は、興味深くやりがいのあるプレイ体験を提供するので、非常に人気がある。通常、これらの構想は、接続要素、又は予め製造された要素の他の結合手段により、何らかの所定の形で互いに相互接続することができる、予め製造された組立要素のセットを提供する。予め製造された組立要素は、特定のモデリングタスクに適合された既知の物体と類似することができる。このため、例えば家のモデルを組み立てる際、組立要素は、壁のれんが、屋根のタイル、ドア、及び窓と類似することができる。このように組立要素を選択する利点は、プレイがシステムに組み込まれ、新たなモデルが作製されるべきである度に家の全ての詳細(detail)が画定される状況と比較して、家のモデルを組み立てることに伴う作業が大幅に低減されることである。しかしながら、家又は別の物体を組み立てる際の完全な自由度は、モデルを組み立てる簡単さとトレードオフされる。
【0006】
例えば、LEGOという名称で市販されている玩具構築セットは、接続要素として、突起部及び対応する空洞を有する複数の異なるタイプの相互接続可能な組立要素を含む。接続要素は、規則的な格子パターンに従って配列され、これによって、組立要素間の多岐にわたる相互接続が可能になる。
【0007】
コンピューターモデルを視覚化/レンダリングするのに必要とされる計算負荷を低減する既知の方法は、遮蔽カリングである。遮蔽カリングは、所与の視点(viewing perspective)から隠される面を見つけることによって機能する。しかしながら、既知の遮蔽カリングアルゴリズムは低速であり、ビューが変化する度に実行する必要がある。これは、コンピューター支援設計及びコンピューターゲームにとって特に問題である。なぜなら、これらの用途におけるビューは通常頻繁に変化し、その結果、遮蔽カリングアルゴリズムによって生じる計算負荷が大きくなるためである。
【発明の概要】
【発明が解決しようとする課題】
【0008】
このため、複合製品を計算効率のよい方法で視覚化/レンダリングすることが依然として問題である。
【課題を解決するための手段】
【0009】
本発明の第1の態様は、コンピューターモデルを視覚化/レンダリングするためのコンピューター実施方法であって、前記コンピューターモデルは複数の構成要素を含み、該方法は、
前記複数の構成要素のうちの少なくとも1つの、複数の部品を格納することであって、各部品は該部品を視覚化/レンダリングするためのジオメトリ情報を含む、格納することと、
座標系内の複数の構成要素のそれぞれの位置及び向きを示す情報を格納することと、
前記複数の構成要素の前記それぞれの位置及び向きを示す前記格納された情報に基づいて前記構成要素のうちの個々の構成要素間の空間関係を求めることと、
前記少なくとも1つの構成要素について、前記個々の構成要素間の前記求められた空間関係に基づいて、該構成要素を視覚化/レンダリングするのに用いる複数の格納された部品を求めることと、
を含む、コンピューターモデルを視覚化/レンダリングするためのコンピューター実施方法に関する。
【0010】
コンピューターモデルは、複合製品、例えば玩具モデル、又は代替的に非複合製品、例えばデジタルキャラクター等の任意の物体を表すことができる。コンピューターモデルは、2次元又は3次元等の任意の次元を有することができる。コンピューターモデルは、経時的に更にアニメーション化することができる。コンピューターモデルのアニメーション化は、モデル全体又はモデルの選択された構成要素を含むことができる。コンピューターモデルが、玩具構築要素又は代替的に玩具構築要素の面の群から組み立てられた玩具モデルを表すとき、構成要素は、玩具構築要素等の、モデルの任意の部分群とすることができる。部品は、玩具構築要素上の突出した円柱、又は代替的に突出した円柱の面の群等の、構成要素の任意の部分群とすることができる。
【0011】
1つの実施の形態では、部分群は、真部分群であり、一構成要素がモデル全体となることができず、一部品が構成要素全体となることができないことを意味する。
【0012】
1つの実施の形態では、部分群は、真部分群に限定されず、一構成要素がモデル全体となることができ、一部品が構成要素全体となることができることを意味する。
【0013】
部品は、該部品のジオメトリを規定するジオメトリ情報を含むことができる。ジオメトリ情報は、多角形メッシュ、NURBS面、又はパッチ面等の任意の形式で格納することができる。部品は、テクスチャ特性、反射特性、屈折特性、透明度設定、及びシェーンディグ特性等の部品の材料特性を更に含むことができる。
【0014】
構成要素の位置及び向きを示す情報は、任意の局所座標系若しくは大域座標系における構成要素の位置及び向き、又は国際公開第04034333号に示すように、別のモデル、構成要素、又は部品等に対する構成要素の位置を記述する情報とすることができる。
【0015】
構成要素を視覚化/レンダリングするのに用いる部品の数は、構成要素の全ての部品が用いられるとき、及び部品が全く用いられないときの特殊な事例を含む任意の数とすることができる。
【0016】
コンピューターモデルを視覚化/レンダリングした結果、一つの画像又は一連の画像を生成することができる。画像(複数の場合もあり)は2次元とすることができる。画像(複数の場合もあり)はスクリーン上に直接示されかつ/又はデジタルファイルに保存されることができる。
【0017】
構成要素を複数の部品に更に分割し、構成要素間の空間関係を用いて構成要素を視覚化/レンダリングするのに用いる複数の部品を求めることによって、個々の構成要素のジオメトリ、及び該構成要素の他の構成要素との接続に関する知識を用いて、モデルに対して視覚的影響を与えることなく除去することができる隠される部品を見つけることができる。
【0018】
これによって、計算的に複雑なレイトレーシングアルゴリズムを用いることなく隠れされる部品を見つけることが可能になり、その結果、本方法がリアルタイムの使用に適したものとなる。標準遮蔽カリングアルゴリズムの場合のように仮想カメラと構成要素との間の空間関係を用いるのではなく、個々の構成要素間の空間関係を用いることによって、ビューから独立した最適化が達成される。これによって、本方法は、複合モデルに構造変化が生じたとき、例えば新たな構成要素が付加されるか又は既存の構成要素が除去されたときに再実行するだけでよいので、計算リソースが節減される。構造変化が生じた場合であっても、本方法は、変化部に近接した構成要素に対し再実行するだけでよい。これによって後続の最適化の計算リソースが節減される。
【0019】
最適化を実行する前に構成要素を複数の部品に分割し、該部品を格納することによって、最適化ステップにおいて構成要素を分割するのに必要な任意の計算リソースが節減される。自動手順を用いて、又は代替的に手動で、構成要素の更なる分割を実行することができる。更なる分割が手動で行われる場合、該更なる分割を、人間の技能を用いて、構成要素のジオメトリ及び/又は接続に関する知識を用いて行うことができ、これによって効果的な最適化が可能になる。
【0020】
本発明の第2の態様は、コンピュータープログラムであって、実行可能なコンピュータープログラムコードを含み、該実行可能なコンピュータープログラムコードは、データ処理システムに、
少なくとも設計ステップであって、
ユーザーが、構成要素のレポジトリから複数の構成要素のそれぞれのデジタル表現を選択し、該選択された構成要素を互いとの空間関係に配置して複合製品のデジタル表現を生成することを可能にするコンピューター実施構築ツールを提供することであって、各構成要素は複数の部品で構成される、提供すること、
を含む、設計ステップと、
更なる処理ステップであって、
前記複合製品の少なくとも一部分の視覚化/レンダリングを生成することであって、該生成することは、
前記複数の構成要素のうちの少なくとも1つの、複数の部品を格納することであって、各部品は該部品を視覚化/レンダリングするためのジオメトリ情報を含む、格納することと、
座標系内の複数の構成要素の位置及び向きを示す情報を格納することと、
前記複数の構成要素の前記位置及び前記向きを示す前記格納された情報に基づいて前記構成要素のうちの個々の構成要素間の空間関係を求めることと、
前記少なくとも1つの構成要素について、前記個々の構成要素間の前記求められた空間関係に基づいて、前記構成要素を視覚化/レンダリングするのに用いる複数の格納された部品を求めることと、
を含む、生成すること、
を含む、更なる処理ステップと
を実行させるように構成される、コンピュータープログラムに関する。
【0021】
1つの実施の形態では、前記コンピュータープログラムは子供のための玩具コンピュータープログラムである。
【0022】
コンピューター実施構築ツールは、グラフィカルユーザーインターフェースとすることができる。
【0023】
デジタルモデルを作成するタスクは非常に困難である可能性がある。現実世界に存在する通常の物理的限界は、デジタル環境にアプリオリに存在しない。無限の可能性によって、任意のモデルを作成することが可能になるが、これによって設計ステップも非常に困難になる。任意のデジタルモデラーの主要な技能は、モデルの正しい点で正しい量の詳細(detail)を用いることである。これは、デジタル設計者が、デジタルモデルの形状に焦点を合わせなくてはならないことに加えて、モデルの基礎を成す構造、例えば様々な場所において用いられる頂点の量にも焦点を合わせる必要があることを意味する。これは、モデリングタスクが、通常、モデルの連続したリアルタイム視覚化/レンダリングを伴い、モデルが設計されている間に、デジタル設計者が該モデルを視覚的に調べることを可能にする相互作用的なプロセスであるので、重要である。モデルが不必要に複雑となる場合、モデルのリアルタイムレンダリングのフレームレートは減少し、これによって後続の設計プロセスが問題を含むものとなる。
【0024】
こうしたシステムのユーザーが子供である場合、設計プロセスを可能な限り単純にすることが重要となる。子供に構成要素のレポジトリを含むデジタル構築ツールを与え、構成要素間の空間関係を用いて、構築されたモデルを更に自動的に単純化することによって、設計プロセスの複雑度が大幅に低減される。これによって、子供が、モデルの正しいスポットに正しい量の複雑度(complexity)を適用することに関して懸念する必要なく、モデリングタスクにのみ焦点を合わせることが可能になる。これによって、子供がより大きくより興味深いモデルを作成することが可能になり、玩具コンピュータープログラムのプレイ価値が増大し、また、より低年齢の子供が玩具プログラムを用いることが可能になる。
【0025】
1つの実施の形態では、少なくとも1つの構成要素が少なくとも1つの所定の接続ゾーンを自身に関連付けており、該接続ゾーンは、同様の構成要素の接続ゾーンに接続することができる、構成要素の一部を示す。
【0026】
接続ゾーンは、構成要素に近接した任意の所定のゾーンとすることができる。1つの実施の形態では、接続ゾーンは構成要素の表面に位置決めされる。接続ゾーンは、構成要素の1つ若しくは複数の部品、例えば表面の一部分に対応するか又はそれらによって画定されることができる。接続ゾーンは、平面、又は平面の一部、又は円形の面若しくは曲面等の任意の形状を有することができる。接続ゾーンの位置は、大域座標系において又は構成要素との関係で画定することができる。構成要素は、任意の数の接続ゾーンを含むことができる。複数のタイプの接続ゾーンが存在することができる。接続ゾーンは所定の数のタイプの接続ゾーンと適合することができ、例えば、構成要素の上面に関連付けられた玩具構築要素を表す構成要素の接続ゾーンは、同様の玩具構築要素を表す構成要素の底面に関連付けられた接続ゾーンとのみ適合することができる。いくつかの実施の形態では、それぞれのタイプの接続ゾーンの適合性を示す情報は、適切なデータ構造、例えばテーブルに格納することができ、すなわち、それぞれのタイプの接続ゾーンが互いに接続可能であるか否かを示す情報とすることができる。例えば、情報は、各所与のタイプの接続ゾーンについて、いずれのタイプの接続ゾーンが上記の所与のタイプの接続ゾーンと接続可能であるかを示すことができる。1つの実施の形態では、データ構造は、接続ゾーンのタイプの各対について、該接続ゾーンのタイプの対が、適合性を有するか、適合性を有しないか、又は中立(indifferent)であるかを示すことができる。接続ゾーンの対が適合性を有する場合、それらは2つの構成要素間の接続を提供することができる。接続ゾーンの対が適合性を有しない場合、それらは2つの構成要素が互いの隣に位置決めされることを阻止する。接続ゾーンの対が中立である場合、それらは2つの構成要素が互いの隣に位置決めされることを可能にするが、実際に2つの構成要素間の接続を提供しない。
【0027】
所定の接続ゾーンを有する構成要素を提供することによって、構成要素からモデルを作成する仕事が単純化される。これによって、モデルがCADに用いられようと、コンピューターゲームに用いられようと、他の用途に用いられようと、モデルを開発する製造コストが低減する。
【0028】
本発明の1つの実施の形態では、個々の構成要素間の空間関係を求めるステップは、該個々の構成要素の接続ゾーンの空間関係を求めるステップを含む。
【0029】
本発明の1つの実施の形態では、個々の接続ゾーン間の空間関係を求めるステップは、2つの接続ゾーン間の距離を求めるステップを含む。
【0030】
距離は、2ノルムのユークリッド距離等の任意のノルム距離とすることができる。距離は、接続ゾーンの2つの点、又は接続ゾーン上の複数の点間の距離とすることができる。1つの実施の形態では、距離は2つの接続ゾーン間の最も近い距離として規定される。1つの実施の形態では、プロセスは、2つの接続ゾーンの距離が所定の範囲内である場合に、それらの接続ゾーンが接続されていると判断する。
【0031】
2つの接続ゾーンの距離を調査することによってそれらの接続ゾーン間の空間関係を求めることは、効果的で計算的に単純な方法である。これによって、本方法が必要とする計算リソースが低減され、それによって、モデルをレンダリング/視覚化するのに必要な計算の総数が低減される。
【0032】
1つの実施の形態では、各接続ゾーンは、該接続ゾーンに関連付けられた向きを有し、個々の接続ゾーン間の空間関係を求めるステップは、1つの接続ゾーンの、別の接続ゾーンに対する向きを求めるステップを含む。
【0033】
1つの実施の形態では、プロセスは、2つの接続ゾーンが互いに対し所定の向きを有する場合、例えば、接続ゾーンが互いに平行であるか、ほぼ平行(in proximity of being parallel)であるとき、それらの接続ゾーンが接続されていると判断する。接続ゾーン間の空間関係は、接続ゾーン間の距離及びそれらの接続ゾーンの相対的向きの組み合わせによって求めることができる。
【0034】
2つの接続ゾーンは位置合わせすることなく互いの近くに位置決めすることができるが、それらの接続ゾーンの空間関係を求めるのに接続ゾーン間の相対的向きを更に用いることによって、より正確に求めることを達成することができる。
【0035】
いくつかの実施の形態では、プロセスは、2つの接続ゾーンが互いに対する所定の近接度で位置決めされるとき、及びそれらの接続ゾーンのそれぞれの向き及びタイプが互いに適合しているときに、それらの接続ゾーンが接続されていると判断する。
【0036】
いくつかの実施の形態では、構成要素が、第1の部品に関連付けられた、別の構成要素の別の接続ゾーンに接続された1つ又は複数の接続ゾーンを有する場合のみ、第1の部品を、構成要素を視覚化/レンダリングするのに用いないと判断する。
【0037】
実際に接続された構成要素のみを最適化することによって、接続されていない構成要素がアニメーション中に互いに対して動かされるとき、再最適化を回避することができる。これによって再最適化の必要性が低下し、この結果、最適化に必要とされる計算リソースがそれに応じて少なくなる。なぜなら、接続された玩具構築要素が互いに対して動かされる事象は、接続されていない玩具構築要素の場合よりもはるかに可能性が低いためである。
【0038】
代替的な実施の形態では、プロセスはまた、第1の部品に関連付けられた接続ゾーンが別の構成要素の接続ゾーンに対し所定の近接度及び/又は向きにあるが、例えば2つの接続ゾーンのタイプが互いに中立であるため、その接続部が実際にそれらの構成要素間の接続を提供していないとき、第1の部品を、構成要素の視覚化/レンダリングに用いないと判断する。
【0039】
接続されていない構成要素も最適化することによって、構成要素のより多くの部品を最適化することができる。これによって、特にモデルの構成要素が静止している場合に、コンピューターモデルを視覚化/レンダリングするのに必要な計算リソースが少なくなる。
【0040】
1つの実施の形態では、空間関係を求めることは、それぞれの構成要素の接続ゾーンが、接続を提供する/可能にする適合性を有するタイプを有するか否かを判断することを含む。
【0041】
1つの実施の形態では、少なくとも1つの構成要素について、該構成要素を視覚化/レンダリングするのに用いる複数の部品を求めるステップにおいては、該構成要素の少なくとも1つの接続ゾーンが接続されている場合、より少ない部品が用いられる。
【0042】
1つの実施の形態では、プロセスは、前記コンピューターモデルの境界ボックスの外側の任意の方向から見たときに、部品の表面エリアの少なくとも所定の一部が1つ又は複数の他の部品によって覆われている場合、第1の部品を、構成要素を視覚化/レンダリングするのに用いないと判断する。所定のパーセンテージは任意のパーセンテージとすることができる。好ましくは、これは40%であり、より好ましくは70%であり、更により好ましくは90%である。境界ボックスはモデル全体を含むことができる最も小さいボックスである。所定のパーセンテージで覆われた部品(複数の場合もあり)を、所与の構成要素を視覚化/レンダリングするのに用いないことによって、最適化のモデルに対する任意の視覚的影響を制限することができる。これによって、視覚的影響と計算複雑度との間のトレードオフを制御することができる柔軟性のあるシステムが更に提供される。リアルタイムコンピューターグラフィックス等の所与の用途では、計算数が少ないことを優先し、その結果、モデルの視覚的な精密さよりも高フレームレートを得ることが有用である場合があるのに対し、他の用途では、視覚的な精密さが計算数よりも重要である場合がある。
【0043】
本発明の1つの実施の形態では、前記少なくとも1つの構成要素について、該構成要素を視覚化/レンダリングするのに用いる複数の部品を求めるステップは、構成要素の材料特性を求め、求められた空間関係及び求められた材料特性の双方に基づいて構成要素を視覚化/レンダリングするのに用いる複数の部品を求めるステップを更に含む。
【0044】
1つの実施の形態では、材料特性を求める前記ステップは、構成要素の透明度設定を求めるステップを含む。透明度設定は、構成要素又は構成要素の部品の透明度に関連した任意の設定とすることができる。透明度は、屈折現象を伴う場合がある。モデルの構成要素又は該構成要素に接続した他の構成要素が透明である場合、該構成要素の、通常隠れる部品が見える場合がある。求められた空間関係及び材料特性の双方を用いることにより、隠される部品のより精密な判断を達成することができる。
【0045】
いくつかの実施の形態では、コンピューターモデルは複合製品を表す。いくつかの実施の形態では、コンピューターモデルは玩具構築要素から組み立てられた玩具モデルを表し、コンピューターモデルの各構成要素は玩具構築要素に対応する。いくつかの実施の形態では、玩具構築要素は、該玩具構築要素を他の同様の玩具構築要素と接続する接続手段を有する。接続手段は、円形、又は長方形等の任意の形状を有することができる。
【0046】
1つの実施の形態では、第1の構成要素は所定のタイプの第1の遮蔽ゾーンを含み、第2の構成要素は所定のタイプの第2の遮蔽ゾーンを含み、前記第1の遮蔽ゾーンと前記第2の遮蔽ゾーンとの間の前記空間関係は、前記第2の構成要素によって遮蔽される、前記第1の構成要素の一部を求めるのに用いられる。
【0047】
遮蔽ゾーンは、構成要素の部品と同様の、又は更には同一の形状を有することができる。例えば、遮蔽ゾーンは、構成要素の上記部品の表面の一部として画定することができる。遮蔽ゾーンは、構成要素の特定の部品又は複数の部品に関連付けられることができる。遮蔽ゾーンに関連付けられた部品(複数の場合もあり)は、該部品に関連付けられた遮蔽ゾーンが遮蔽されるとき、遮蔽されると判断されることができる。第1の遮蔽ゾーンと第2の遮蔽ゾーンとの間の空間関係は、第1の構成要素の接続ゾーン(複数の場合もあり)と、第2の構成要素の接続ゾーン(複数の場合もあり)との間の空間関係によって求めることができる。遮蔽ゾーンのタイプは該遮蔽ゾーンの形状に関連することができる。遮蔽ゾーンは、円形形状又は長方形形状等の任意の形状を有することができる。遮蔽ゾーンのタイプは、遮蔽ゾーンのサイズに更に関連することができる。遮蔽ゾーンのタイプは、1つの構成要素が別の構成要素をどのように遮蔽するかを決めることができ、例えば円形の遮蔽ゾーンは、別の円形の遮蔽ゾーンを遮蔽することができるが四角形の遮蔽ゾーンを遮蔽することはできず、四角形の遮蔽ゾーンは円形の遮蔽ゾーン及び四角形の遮蔽ゾーンの双方を遮蔽することができる。
【0048】
接続ゾーンは、構成要素が他の構成要素にどのように接続することができるかを決めることができるのに対し、遮蔽ゾーンは、構成要素が別の構成要素をどのように遮蔽するかを決めることができる。2つの構成要素は、互いを遮蔽することなく接続することができ、2つの構成要素は接続されることなく互いを遮蔽することができる。
【0049】
構成要素及び/又は構成要素の1つ若しくは複数の部品は、該構成要素及び/又は構成要素の1つ若しくは複数の部品に関連付けられた、1つ若しくは複数の遮蔽ゾーン及び/又は1つ若しくは複数の接続ゾーンを有することができる。1つの実施の形態では、接続ゾーンは遮蔽ゾーンとして機能することもできる。
【0050】
本方法は、遮蔽ゾーンを構成要素に割り当てることによって、コンピューターモデルにおける隠される部品を容易に見つけることができる。隠される部品は、2つの構成要素の2つの接続ゾーン間の空間関係を調査することによって見つけることができる。それぞれの構成要素に関連付けられた2つの接続ゾーンが接続していることがわかる場合、プロセスは、それぞれの部品に関連付けられたそれぞれの遮蔽ゾーンに基づいて、例えば関連付けられた遮蔽ゾーンのそれぞれのタイプに関連する論理規則、例えば四角形のゾーンは円形のゾーンを覆う等に基づいて、1つ又は複数の遮蔽された部品を求めることができる。このため、各部品は、該部品に関連付けられた1つ又は複数の接続ゾーン及び1つ又は複数の遮蔽ゾーンを有することができる。
【0051】
1つの実施の形態では、複数の遮蔽ゾーンが単一の部品に関連付けられる。
【0052】
1つの実施の形態では、部品は、該部品に関連付けられた全ての遮蔽ゾーンが遮蔽されている場合にのみ遮蔽される。
【0053】
1つの実施の形態では、コンピューターモデルは他のコンピューターモデルから独立してアニメーション化することができ、コンピューターモデルの構成要素は、コンピューターモデルの他の構成要素から独立してアニメーション化することができ、構成要素の部品は、該構成要素の他の部品から独立してアニメーション化することができない。
【0054】
1つの実施の形態では、第1の部品及び第2の部品は、構成要素の共通セクションを表し、前記第1の部品は第2の部品より高い詳細度を有し、前記構成要素を視覚化/レンダリングするのに用いる複数の格納された部品を求める前記ステップは、前記構成要素を視覚化/レンダリングするのに用いるために、前記第1の部品及び前記第2の部品のうちの多くても一方を選択することを更に含む。
【0055】
構成要素の共通部分を表す複数の部品を有することによって、所与の状況において部分的にしか隠れていない部品を依然として最適化することができる。この結果、最適化はより効率的となり、構成要素を複数の部品に分割する作業がより簡単になる。
【0056】
本発明の様々な態様を、様々な形で実施することができ、様々な形には、上記及び下記のコンピューター実施方法、データ処理システム、及び玩具コンピュータープログラム、並びに更なる製造手段が含まれ、それぞれが、上述した態様のうちの少なくとも1つに関連して説明された利益及び利点のうちの1つ又は複数をもたらし、それぞれが上述のかつ/又は従属請求項において開示された態様のうちの少なくとも1つに関連して説明される好ましい実施の形態に対応する1つ又は複数の好ましい実施の形態を有する。さらに、本明細書において説明される態様のうちの1つに関連して説明される実施の形態は、他の態様にも等しく適用することができることが理解されよう。
【0057】
1つの実施の形態では、部品は予め画定されている。
【0058】
1つの実施の形態では、各部品は複数の面を含み、面は3つの頂点によって与えられた平面として規定される。
【0059】
1つの実施の形態では、開示される本方法と組み合わせて遮蔽カリングが用いられる。
【0060】
1つの実施の形態では、構成要素は、それ以上非破壊的に、より小さな構成要素に分解することができない複合製品の物理的構成要素、例えば航空機におけるプロペラ(screw)、又は玩具構築システムの玩具構築要素から組み立てられる玩具モデルにおける玩具構築要素等の、複合製品の物理的構成要素を表す。
【0061】
本発明の上記の目的、特徴、及び利点、並びに/又は追加の目的、特徴、及び利点が、添付の図面を参照して、本発明の実施形態の以下の例示的で非限定的な詳細な説明によって更に明らかとなるであろう。
【図面の簡単な説明】
【0062】
【図1a】従来技術の最適化の一形態例を示す図である。
【図1b】従来技術の最適化の一形態例を示す図である。
【図1c】従来技術の最適化の一形態例を示す図である。
【図2a】複数の構成要素を含むコンピューターモデルの一例を示す図である。
【図2b】複数の部品を含むコンピューターモデルの構成要素の一例を示す図である。
【図2c】本発明の一実施形態による、コンピューターモデルの構成要素の複数の部品の一例を示す図である。
【図3】本発明の一実施形態による、コンピューターモデルの構成要素の複数の部品の一例を示す図である。
【図4a】最適化前の複数の構成要素を含むコンピューターモデルを示す図である。
【図4b】最適化後の複数の構成要素を含むコンピューターモデルを示す図である。
【図5a】最適化前の複数の構成要素を含むコンピューターモデルを示す図である。
【図5b】最適化後の複数の構成要素を含むコンピューターモデルを示す図である。
【図6a】最適化前の複数の構成要素を含むコンピューターモデルを示す図である。
【図6b】最適化後の複数の構成要素を含むコンピューターモデルを示す図である。
【図7a】構成要素と関連付けて画定される接続ゾーンを示す図である。
【図7b】接続ゾーンの適合性を示す図である。
【図8a】構成要素と関連付けて画定される接続ゾーンを示す図である。
【図8b】構成要素と関連付けて画定される接続ゾーンの適合性を示す図である。
【図8c】構成要素と関連付けて画定される接続ゾーンを示す図である。
【図8d】構成要素と関連付けて画定される接続ゾーンを示す図である。
【図8e】複数の構成要素を含むコンピューターモデルの一例を示す図である。
【図9a】複数の構成要素を含むコンピューターモデルの一例を示す図である。
【図9b】本発明の一実施形態による、コンピューターモデルの構成要素の複数の部品の一例を示す図である。
【図9c】本発明の一実施形態による、コンピューターモデルの構成要素の複数の部品の一例を示す図である。
【図10a】最適化前の複数の構成要素を含むコンピューターモデルを示す図である。
【図10b】最適化後の複数の構成要素を含むコンピューターモデルを示す図である。
【図11a】最適化前の複数の構成要素を含むコンピューターモデルを示す図である。
【図11b】最適化後の複数の構成要素を含むコンピューターモデルを示す図である。
【図12】本発明の一実施形態による、コンピューターモデルを視覚化/レンダリングする方法の流れ図である。
【図13】本発明の一実施形態による、コンピューターモデルの構成要素の複数の部品の一例を示す図である。
【図14】本発明の一実施形態による、コンピューターモデルの構成要素の複数の部品の一例を示す図である。
【図15a】本発明の一実施形態による構成要素の例を示す図である。
【図15b】本発明の一実施形態による構成要素の例を示す図である。
【図15c】本発明の一実施形態による部品の例を示す図である。
【図15d】本発明の一実施形態による部品の例を示す図である。
【図15e】本発明の一実施形態による遮蔽ゾーンの例を示す図である。
【図15f】本発明の一実施形態による遮蔽ゾーンの例を示す図である。
【図16】本発明の一実施形態によるコンピューターモデル最適化の一例を示す図である。
【図17】本発明の一実施形態によるコンピューターモデル最適化の一例を示す図である。
【図18】本発明の一実施形態による、コンピューターモデルの構成要素の複数の部品の一例を示す図である。
【図19】本発明の一実施形態によるコンピューターモデル最適化の一例を示す図である。
【図20】本発明の一実施形態による、コンピューターモデルを視覚化/レンダリングする方法の流れ図である。
【図21】本発明の一実施形態によるデータ構造の一例を示す図である。
【図22】コンピューターシステムの一例の概略図である。
【図23a】本発明の一実施形態による部品の例を示す図である。
【図23b】本発明の一実施形態による遮蔽ゾーンの例を示す図である。
【図23c】本発明の一実施形態によるコンピューターモデル最適化の一例を示す図である。
【図24】本発明の一実施形態による、コンピューター実施構築ツールのグラフィカルユーザーインターフェースを示す図である。
【発明を実施するための形態】
【0063】
以下の説明では、添付の図面を参照する。添付の図面は、例として、本発明をどのように実施することができるかを示す。
【0064】
図1a〜図1cは、従来技術の最適化である、遮蔽カリングの一形態例を示している。遮蔽カリングの基本的な概念は、カメラとシーンとの間の空間関係を調査して、レンダリング/視覚化プロセスにおいて省略することができる隠される表面を見つけることである。図1aは、2つの仮想カメラ102、103と、大きなボックス104、105、106、107と、小さなボックス108、109、110、111とを含む3Dシーンの上面図を示している。図1bは、仮想カメラ102によって生成された画像を示している。大きなボックスの2つの表面104、106のみを見ることができ、残りの全ての表面は隠されている。遮蔽カリングアルゴリズムは、レイトレーシング法を用いて、これらの隠された面を見つけ、取り除くことができる。しかしながら、これは非常に計算が要求されるプロセスである。図1cは、カメラ103から生成された画像を示している。視点の変化に起因して、これまで大きなボックスの陰になっていた小さなボックスを、ここでは見ることができる。これは遮蔽カリング法の限界を示している。遮蔽カリング法はビューに高度に依存する。このため、視点が頻繁に変化する用途には、遮蔽カリングがあまり有用でない。
【0065】
図2aは、本発明の一実施形態によるコンピューターモデル201の一例を示している。この例では、コンピューターモデル201は、玩具構築システムの構築要素から組み立てられた玩具モデルを表す。コンピューターモデルは、6つの同様の構成要素202から組み立てられる。しかしながら、他の実施形態では、構成要素の数及びタイプを異ならせることができる。6つの構成要素は、互いの上に位置決めされ、三角形のモデルを生成する。図2bは、本発明の一実施形態によるコンピューターモデル201の構成要素202の一例を示している。構成要素202は、玩具構築要素を表す。玩具構築要素202は、6つの長方形の側面215、216、217、218、219、220と、上面から突出している8つの円柱207、208、109、110、111、112、113、114とを備える。図1cは、本発明の一実施形態による、構成要素の複数の部品の一例を示している。8つの円柱107、108、109、110、111、112、113、114及び6つの長方形215、216、217、218、219、220が示されている。表1は、様々な部品について可能な面カウントを示している。
【0066】
【表1】
表1
【0067】
図3は、本発明の一実施形態による、構成要素の複数の部品を示している。この例の構成要素は、図2bに示す玩具構築要素である。円柱301及び3つの長方形302、303、304が示されている。この例では、一意の部品のみが保たれている。
【0068】
図7aは、本発明の一実施形態による、構成要素に関連付けられた接続ゾーンの例を示している。接続ゾーンによって、構成要素を他の構成要素にどのように接続することができるかが決まる。この例では、6つの接続ゾーンが構成要素に関連付けられているが、任意の数の接続ゾーンを画定することができる。タイプAの接続ゾーンが構成要素の前面及び背面に関連付けられ、タイプBの接続ゾーンが構成要素の左側面及び右側面に関連付けられ、タイプCの接続ゾーンが構成要素の上面に関連付けられ、タイプDの接続ゾーンが構成要素の底面に関連付けられる。異なるタイプの接続ゾーンは、他のタイプの接続ゾーンと選択的に適合性を有する。図7bは図7aにおいて画定される接続ゾーン(CON Z)の適合性の表の一例を示している。接続ゾーンAは接続ゾーンA、B、及びDとの適合性を有し、接続ゾーンBは接続ゾーンA、B、及びDとの適合性を有し、接続ゾーンCは接続ゾーンDとの適合性を有し、接続ゾーンDは接続ゾーンA、B、C、及びDとの適合性を有する。接続ゾーンを用いて、異なる構成要素間の空間関係を求めることができる。
【0069】
図8は、本発明の一実施形態による構成要素の接続ゾーンの別の例を示している。この例では、接続ゾーンは、構成要素によって表される玩具構築要素を、摩擦による嵌合(frictional fit)又は別の物理的接続によって互いに接続することができる位置においてのみ画定される。図8bは接続ゾーン(CON Z)の適合性を示している。図8cは、構成要素に関連付けられた接続ゾーンの一例を示している。この例では、複数の接続ゾーンが構成要素の上面及び底面に並んで配置されている。図8dは、円形接続ゾーンの一例を示している。この図は、リム801を表す構成要素を示している。リム801には、単一の円形接続ゾーン802が関連付けられている。図8eは、2つの構成要素、すなわちリム801及び該リム801に接続されたタイヤ803で構成されるコンピューターモデル804を示している。
【0070】
図4は、玩具モデルのコンピューターモデルを最適化するのに用いられる本発明の一実施形態を示している。図4aは最適化前の玩具モデルを示し、図4bは最適化後の玩具モデルを示している。玩具モデルは、並んで位置決めされた3つの玩具組立ブリック401、402、403から組み立てられる。この実施形態では、各玩具ブリックは、モデルの物理的構成要素を表すが、他の実施形態では、構成要素は他の形で規定することもでき、例えば、第1の構成要素を2つの玩具組立ブリック401、402として画定し、第2の構成要素を玩具組立ブリック403として画定することもできるし、第1の構成要素を玩具組立ブリック401の面の第1のグループとして画定し、第2の構成要素を玩具組立ブリック401の面の第2のグループとして画定することもできる。この例では、各構成要素401、402、403は、図1cに示す部品で構成され、面数は表1に示されている。図7a及び図7bに示すように、構成要素401、402、403のそれぞれについて、6個の接続ゾーンのセットが関連付けられる。最適化ステップの前に、構成要素401、402、403のそれぞれが1546個の面を含み、その結果、モデル全体で4644個の面となる。モデルを最適化するために、構成要素401、402、403間の空間関係が求められる。これは、構成要素の接続ゾーンを用いて達成することができる。第1のステップは、いずれかの接続ゾーンが他の接続ゾーンと所定の近接関係にあり、かつ/又は相対的な向きの所定の範囲内にあるか否かを判断することとすることができる。この例では、構成要素401及び402の2つのタイプBの接続ゾーン並びに構成要素402及び403の2つのタイプBの接続ゾーンが接触している。図7bの表から、タイプBの接続ゾーンが該タイプBの接続ゾーン自体との適合性を有することを見てとることができる。次に、接続ゾーン間の接続のタイプが求められる。構成要素401、402、403間の求められた空間関係を用いて構成要素のそれぞれの複数の部品が選択される。この例では、構成要素401を表すとき、部品218を省略することができ、構成要素402を表すとき、部品216、218を省略することができ、構成要素403を表すとき、部品216を省略することができる。したがって、モデル全体は、最適化前の4644個の面と比較して、最適化後に4636個の面を用いて表すことができる。表2は、最適化の前後のモデルの面を示している。
【0071】
【表2】
表2
【0072】
図5は、構造変化後にモデルを再最適化するのに用いられる本発明の一実施形態を示している。モデル510は、構成要素501、502、503と同じタイプの2つの構成要素504、505が付加されている、図4に示すモデル411である。2つの構成要素504、505は、3つの基礎を成す構成要素501、502、503の上に配置される。構成要素間の空間関係を求めるために、接続ゾーン間の空間関係が調査される。3つの元々の構成要素501、502、503間の空間関係は既に最適化されているので、それらの調査は省くことができる。構成要素504は、構成要素501、502の2つのタイプCの接続ゾーンと接触したタイプDの接続ゾーンと、構成要素505のタイプBの接続ゾーンと接触したタイプBの接続ゾーンとを有する。図7bの表から、タイプDの接続ゾーンがタイプCの接続ゾーンとの適合性を有し、タイプBがタイプBとの適合性を有することを見てとることができる。この例では、構成要素504と501との間、及び構成要素504と502との間には部分接続が存在し、構成要素504と505との間には完全な接続が存在する。構成要素505は、構成要素502、503の2つのタイプCの接続ゾーンと接触したタイプDの接続ゾーンと、構成要素504のタイプBの接続ゾーンと接触したタイプBの接続ゾーンとを有する。図7bの表から、タイプDの接続ゾーンはタイプCの接続ゾーンとの適合性を有することを見てとることができる。ここでもまた、構成要素505と502との間、及び構成要素505と503との間の双方に部分接続が存在する。構成要素間の求められた空間関係を用いて、構成要素ごとに、該構成要素を表す複数の部品を選択することができる。構成要素501の場合、部品207、208、211、212、215、216、217、219、220が用いられ、構成要素502の場合、部品215、219、220が用いられ、構成要素503の場合、部品209、210、213、214、215、218、219、220が用いられ、構成要素504の場合、部品207、208、209、210、211、212、213、214、215、216、217、219が用いられ、構成要素505の場合、部品207、208、209、210、211、212、213、214、215、217、218、219が用いられる。部品209が図5bにおいて見えないにもかかわらず、構成要素503を表すのにこの部品209が依然として用いられることに留意すべきである。なぜなら、この部品は、モデルの構成要素間の空間関係の結果隠されているのではなく、モデルと仮想カメラとの間の空間関係の結果隠されているためである。全体モデルは、最適化前の7740個と比較して、4650個の面を用いて表すことができ、面数の39.9%の削減に対応する。表3は、最適化前後のモデルの面カウントを示している。
【0073】
【表3】
表3
【0074】
図6は、本発明の一実施形態による構造変化が生じたモデルの再最適化の別の例を示している。モデル611は、構成要素601、602、603、604、605と同じタイプの別の構成要素が付加されている、図5が示すモデル511である。構成要素606は、構成要素604、605の上に配置される。構成要素間の空間関係を求めるために、接続ゾーン間の空間関係が調査される。5つの元々の構成要素601、602、603、604、605の接続ゾーン間の関係は既に最適化されているので、それらの調査は省くことができる。構成要素606は、構成要素604、605の2つのタイプCの接続ゾーンと接触したタイプDの接続ゾーンを有する。図7bの表から、タイプDの接続ゾーンはタイプCの接続ゾーンとの適合性を有することを見てとることができる。構成要素606と604との間、及び構成要素606と605との間の双方に部分接続が存在する。構成要素間の求められた空間関係を用いて、構成要素ごとに、該構成要素を表す複数の部品を選択することができる。構成要素601の場合、部品207、208、211、212、215、216、217、219、220が用いられ、構成要素602の場合、部品215、219、220が用いられ、構成要素603の場合、部品209、210、213、214、215、218、219、220が用いられ、構成要素604の場合、部品207、208、211、212、215、216、217、219が用いられ、構成要素605の場合、部品209、210、213、214、215、217、218、219が用いられ、構成要素606の場合、部品207、208、209、210、211、212、213、214、215、216、217、218、219が用いられる。この直前の例と同様に、部品209が図6bにおいて見えないにもかかわらず、構成要素603及び605の双方を表すのにこの部品209が依然として用いられることに留意すべきである。全体モデルは、最適化前の9288個と比較して、4660個の面を用いて表すことができ、面数の49.8%の削減に対応する。表4は、最適化前後のモデルの面カウントを示している。
【0075】
【表4】
表4
【0076】
例から、本方法が、複雑なモデルにとって、より効率的となることを見てとることができる。複雑なモデルの場合、最適化が特に重要であるので、これは本方法の非常に有用な効果である。
【0077】
図9aは、本発明の一実施形態によるコンピューターモデル1001の別の例を示している。コンピューターモデル1001はマーカーを表している。コンピューターモデル1001は、マーカーのカバーに対応する構成要素901、及びマーカーの本体に対応する構成要素902の2つの構成要素を備える。図9bは、マーカー本体902を複数の部品に分割する可能な方法を示している。マーカー本体の先端は、5つの部品903、904、905、906、907に分割され、マーカー本体の把持部分908は単一の部品908を用いて表される。図9cは、マーカー901のカバーをどのように複数の部品に分割することができるかの例を示している。カバーの外側部分は部品909によって表され、カバーの内側部分は部品910によって表される。
【0078】
図10は、本発明の方法の一実施形態をどのように用いて、図9に示すコンピューターモデルを最適化することができるかの一例を示している。本方法は、2つの構成要素1002及び1003間の空間関係を調査することによって、部品903、904、905、906、907、910が全ての視点から隠されていることを判断することができる。これは、構成要素1002、1003の遮蔽ゾーン及び/又は接続ゾーンを調査することによって達成することができる。したがって、最適化後のコンピューターモデルを示す図10bに示すように、これらの部品を省略することができる。
【0079】
図11は、本発明の方法の一実施形態をどのように用いて、図9に関連して説明したコンピューターモデルを最適化することができるかの別の例を示している。本方法は、2つの構成要素1002及び1003間の空間関係を調査することによって、全ての視点からいずれの部品も隠されていないことを判断することができる。したがって、結果としていずれの部品も省略されず、図11bに示す最適化後のコンピューターモデルは、最適化前の図11aに示すコンピューターモデルに等しい。
【0080】
図12は、本発明の一実施形態によるコンピューターモデルを視覚化/レンダリングする方法の流れ図を示している。コンピューターモデルは、複数の構成要素で構成されるように規定され、各構成要素は、複数の部品で構成されるように規定される。本発明の方法の実施形態は、構成要素のそれぞれについてモデルを視覚化/レンダリングするのに用いられる複数の部品を選択的に選ぶ。本方法の第1のステップ1201において、構成要素の複数の部品が格納される。これは、構成要素を最適化することができる方法が、構成要素がどのように複数の部品に分割されるかによって決まることを意味する。次のステップ1202において、構成要素の位置及び向きが格納される。位置は任意の座標系に格納することができる。次に、ステップ1203において、構成要素の格納された位置を用いて構成要素間の空間関係を求める。空間関係は、構成要素の接続ゾーンを調査することによって求めることができる。ここで、空間関係を求めることは、例えば、他の構成要素の適合性のある接続ゾーンに接続された1つの構成要素の接続ゾーンを求めることによって、構成要素の接続性特性を求めることを含むことができる。国際公開第2004034333号は、構成要素間の空間関係を求める方法を開示している。次に、ステップ1204において、構成要素の求められた空間関係を用いて、構成要素ごとに、構成要素を視覚化/レンダリングするのに用いる複数の部品を選び、ステップ1205において、求められた部品を用いてモデルが視覚化/レンダリングされる。
【0081】
図13及び図14は、本発明の一実施形態による構成要素を表すのに用いられる複数の部品を示している。この例では、構成要素は玩具組立ブリックである。玩具組立ブリックの取っ手を表すのに8つの部品1302、1303、1304、1305が用いられ、ブリックの外側ケーシング1306を表すのに1つの部品が用いられ、ブリックの内側ケーシング1037、1308を表すのに2つの部品が用いられ、ブリックの下の円柱1309、1310、1311を表すのに3つの部品が用いられている。
【0082】
図15aは、本発明の一実施形態による構成要素1501を示している。構成要素1501は、四角形の玩具構築要素を表している。図15bは、本発明の一実施形態による構成要素1502を示している。構成要素1502は、円柱形の玩具構築要素を表している。図15cは、構成要素1501の部品1503、1504、1505、1506、1507、1515を示している。図15dは、構成要素1502の部品1508、1509、1510を示している。図15eは、構成要素1501と関連付けられた特定のタイプの2つの遮蔽ゾーン1511、1512を示している。遮蔽ゾーン1511、1512は好ましくは、構成要素の、該構成要素が他の構成要素と接続することができる部分に位置決めされる。この例では、遮蔽ゾーン1511、1512は構成要素1501の上面及び底面に位置決めされる。これらの位置は、構成要素1501が表す玩具構築要素の、他の玩具構築要素に接続することができる部分に対応する。遮蔽ゾーンのタイプは、該遮蔽ゾーンの形状及び/又はサイズに依拠することができる。この例では、遮蔽ゾーン1511、1512は四角形の遮蔽ゾーンである。遮蔽ゾーンは、該遮蔽ゾーンの構成要素の1つ又は複数の部品に関連付けられることができる。この例では、遮蔽ゾーン1512は部品1503に関連付けられ、遮蔽ゾーン1511は部品1515に関連付けられる。図15fは、構成要素1502に関連付けられた特定のタイプの2つの遮蔽ゾーン1513、1514を示している。この例では、遮蔽ゾーン1513、1514は、構成要素1502の上面及び底面に位置決めされる。これらの位置は、構成要素1502が表す玩具組立ブリックの、他の玩具構築要素に接続することができる部分に対応する。この例では、遮蔽ゾーン1513、1514は円形である。この例では、遮蔽ゾーン1513は部品1510に関連付けられ、遮蔽ゾーン1514は部品1509に関連付けられる。
【0083】
図16は、本発明の一実施形態によるモデル最適化の一例を示している。コンピューターモデル1601は、2つの四角形の玩具構築要素1603、1604で組み立てられた玩具モデルを表す。この例では、各玩具構築要素1603、1604は構成要素に対応し、各構成要素は、図15cに示す部品1503、1504、1505、1506、1507、1515で構成される。各構成要素は、図15eに示すように、関連付けられた2つの遮蔽ゾーン1511、1512を更に有する。コンピューターモデル1601を最適化するために、2つの構成要素1603、1604の遮蔽ゾーン間の空間関係が調査される。構成要素1603の遮蔽ゾーン1511と、構成要素1604の遮蔽ゾーン1512との間の距離、及び互いに対するそれらの向きを調査することによって、本方法は2つの遮蔽ゾーンが接触していることを判断することができる。2つの遮蔽ゾーンが接触しているとき、論理規則を用いて、一方の遮蔽ゾーンが他方を遮蔽しているか否か、及び、構成要素の視覚化/レンダリングのために遮蔽ゾーンのいずれかに関連付けられたいずれかの部品を省略することができるか否かを判断することができる。この例では、予想される論理規則は以下とすることができる。
1.サイズXの四角形の遮蔽ゾーンが、X以下のサイズの円形及び四角形の遮蔽ゾーンを遮蔽する。
2.サイズYの円形の遮蔽ゾーンが、Y以下のサイズの円形の遮蔽ゾーンを遮蔽する。
3.構成要素を視覚化/レンダリングするとき、遮蔽された遮蔽ゾーンに関連付けられた部品を省略することができる。
【0084】
本方法は、規則1を用いて、部品1603の遮蔽ゾーン1511が部品1604の遮蔽ゾーン1512を遮蔽し、部品1604の遮蔽ゾーン1512が部品1603の遮蔽ゾーン1511を遮蔽していることを判断することができる。したがって、最適化されたモデル1602は、構成要素1603を表すのに部品1515を用いることも、構成要素1604を表すのに部品1503を用いることもなく表すことができる。
【0085】
図17は、本発明の一実施形態によるモデル最適化の一例を示している。コンピューターモデル1701は、四角形の玩具構築要素1704と、円形の玩具構築要素1703とで組み立てられた玩具モデルを表している。この例では、各玩具構築要素1703、1704は構成要素に対応する。四角形の玩具構築要素は、図15cに示す部品1503、1504、1505、1506、1507、1515を含み、円形の玩具構築要素は、図15dに示す部品1508、1509、1510を含む。四角形の玩具構築要素1704は、図15eに示すように、関連付けられた2つの遮蔽ゾーン1511、1512を有し、円形の玩具構築要素1703は、図15fに示すように、関連付けられた2つの遮蔽ゾーン1513、1514を有する。コンピューターモデル1601を最適化するために、2つの構成要素1703、1704の遮蔽ゾーン間の空間関係が調査される。この例では、構成要素1703の遮蔽ゾーン1514と、構成要素1704の遮蔽ゾーン1512とが接触していることがわかる。本方法は、3つの上述した論理規則を用いて、構成要素1704の四角形の遮蔽ゾーン1512が構成要素1703の円形の遮蔽ゾーン1514を遮蔽しているが、構成要素1703の円形の遮蔽ゾーン1514は構成要素1704の四角形の遮蔽ゾーン1512を遮蔽していないことを判断する。これによって、最適化されたコンピューターモデル1702は、構成要素1703を表すのに部品1509を用いることなく表すことができるが、構成要素1704を表すのに全ての数の部品を依然として用いる必要がある。
【0086】
図23aは、本発明の一実施形態による、構成要素を複数の部品にどのように分割することができるかの一例を示している。部品が表す構成要素は、図15aに示す四角形の玩具構築要素1501である。この例では、円柱2305及びボックス2306は部品を用いて表される。図23bは、本発明の一実施形態による、遮蔽ゾーンをどのように構成要素と関連付けることができるかの一例を示している。この例における遮蔽ゾーンは構成要素1501と関連付けられている。遮蔽ゾーン2311及び2312は、構成要素1501によって遮蔽される他の構成要素の部品を見つけるのに用いられ、遮蔽ゾーン2313は、他の構成要素によって遮蔽される構成要素1501の部品(複数の場合もあり)を見つけるのに用いられる。遮蔽ゾーン2311及び2312はいかなる部品にも関連付けられておらず、遮蔽ゾーン2313は部品2305に関連付けられている。
【0087】
図23cは、本発明の一実施形態によるモデル最適化の一例を示している。コンピューターモデル2301は、四角形の玩具構築要素2304と、円形の玩具構築要素2303とで組み立てられた玩具モデルを表している。この例では、各玩具構築要素2303、2304は構成要素に対応する。四角形の玩具構築要素は図23aに示す部品2305、2306を含み、円形の玩具構築要素は図15dに示す部品1508、1509、1510を含む。四角形の玩具構築要素2304は、図23bに示すように、関連付けられた3つの遮蔽ゾーン2311、2312、2313を有し、円形の玩具構築要素2303は、図15fに示すように、関連付けられた2つの遮蔽ゾーン1513、1514を有する。コンピューターモデル2301を最適化するために、2つの構成要素2303、2304の遮蔽ゾーン間の空間関係が調査される。この例では、構成要素2303の遮蔽ゾーン1514と構成要素2304の遮蔽ゾーン2312とが接触していることがわかり、構成要素2304の遮蔽ゾーン2313と構成要素2303の遮蔽ゾーン1513とが接触していることがわかる。本方法は、3つの上述した論理規則を用いて、構成要素2304の四角形の遮蔽ゾーン2312が構成要素2303の円形の遮蔽ゾーン1514を遮蔽し、構成要素2303の円形の遮蔽ゾーン1514が構成要素2304の円形の遮蔽ゾーン2313を遮蔽していることを判断する。これによって、最適化されたコンピューターモデル2301は、構成要素2303を表すのに部品1509を用いることも、構成要素2304を表すのに部品2305を用いることもなく表されることができる。本発明の実施形態では、遮蔽ゾーン(複数の場合もあり)の第1の集合及び第2の集合を、構成要素に関連付けることができる。遮蔽ゾーン(複数の場合もあり)の第1の集合を用いて、構成要素によって隠された他の構成要素の部品を見つけることができ、遮蔽ゾーン(複数の場合もあり)の第2の集合を用いて、他の構成要素によって隠された構成要素の部品を見つけることができる。
【0088】
図18は、本発明の一実施形態による、構成要素を複数の部品にどのように分割することができるかの一例を示している。部品が表す構成要素は、図15aに示す四角形の玩具構築要素1501である。この例では、2つの部品1802、1803が構成要素1501の共通部分を表す。第1の部品1802は上面に円柱を有する四角形に対応し、第2の部品1803は四角形に対応する。第1の部品は第2の部品よりも高い詳細度を有する。したがって、第2の部品1803を視覚化/レンダリングするのに必要となる計算リソースは、第1の部品1802の場合よりも少ない。好ましくは、玩具構築要素1501を表すのに、その時点において多くても第1の部品1802又は第2の部品1803のうちの一方しか用いられない。残りの部品1804、1805、1806、1807、1808は図15cに示す部品に対応する。
【0089】
図19は、本発明の一実施形態によるモデル最適化の一例を示している。コンピューターモデル1901は、四角形の玩具構築要素1904と円形の玩具構築要素1903とで組み立てられた玩具モデルを表している。この例では、各玩具構築要素1903、1904は構成要素に対応する。四角形の玩具構築要素1904は、図18に示す部品1802、1803、1804、1805、1806、1807、1808を用いて表され、円形の玩具構築要素は、図15dに示す部品1508、1509、1510を用いて表される。構成要素1904は、図15eに示すように、関連付けられた2つの遮蔽ゾーン1511、1512を有するが、遮蔽ゾーン1511は部品1803に関連付けられ、遮蔽ゾーン1512は部品1802及び部品1803の双方に関連付けられているという違いを有する。構成要素1903は、図15fに示すように、関連付けられた2つの遮蔽ゾーン1513、1514を有する。コンピューターモデル1901を最適化するために、2つの構成要素1903、1904の遮蔽ゾーン間の空間関係が調査される。この例では、構成要素1903の遮蔽ゾーン1514と構成要素1904の遮蔽ゾーン1512とが接触していることがわかる。2つの遮蔽ゾーンが接触していることがわかると、論理規則を用いて、一方の遮蔽ゾーンが他方を遮蔽しているか否か、及び遮蔽ゾーンのうちのいずれかに関連付けられたいずれかの部品が、構成要素を視覚化/レンダリングするのに省略することができるか否かを判断することができる。この例では、予想される論理規則の例は以下とすることができる。
1.サイズXの四角形の遮蔽ゾーンが、X以下のサイズの円形及び四角形の遮蔽ゾーンを遮蔽する。
2.サイズYの円形の遮蔽ゾーンが、Y以下のサイズの円形の遮蔽ゾーンを遮蔽する。
3.サイズYの円形の遮蔽ゾーンがY以下のサイズの四角形の遮蔽ゾーンを部分的に遮蔽する。
4.構成要素を視覚化/レンダリングするとき、遮蔽された遮蔽ゾーンに関連付けられた部品を省略することができる。
5.2つの部品が構成要素の共通部分を表し、かつ1つの遮蔽ゾーンに関連付けられている場合において、該遮蔽ゾーンが部分的に遮蔽されているとき、最も低い詳細度を有する部品を用いる。
6.2つの部品が構成要素の共通部分を表し、かつ1つの遮蔽ゾーンに関連付けられている場合において、該遮蔽ゾーンが遮蔽されていないとき、最も高い詳細度を有する部品を用いる。
【0090】
論理規則1及び4を用いると、構成要素1903を視覚化/レンダリングするときに部品1509を省略することができ、構成要素1904を視覚化/レンダリングするのに、部品1802の代わりに部品1803を用いることができる。これによって、構成要素1903及び1904の双方を最適化することができ、コンピューターモデル1901を視覚化/レンダリングするのに必要な計算リソースをさらに少なくすることができる。この例では、構成要素1904を視覚化/レンダリングするのに部品1802の代わりに部品1803を用いることについて視覚的損失はないが、他の実施形態では様々な視覚的損失が生じる場合がある。
【0091】
図20は、本発明の一実施形態による、コンピューターモデルを視覚化/レンダリングするための方法のフローチャートを示している。ステップ2001において、本方法は、モデルの全ての構成要素が評価されたか否かを判断する。答えがnoである場合、ステップ2002において、本方法は次の構成要素を選ぶことによって継続する。ステップ2003において、本方法は、選ばれた構成要素の全ての部品(複数の場合もあり)が調査されたか否かを判断する。答えがnoである場合、ステップ2004において、本方法は次の部品を選択する。ステップ2005において、本方法は、部品に関連付けられた全ての遮蔽ゾーンが調査されたか否かを判断する。答えがnoである場合、ステップ2006において、本方法は、次の遮蔽ゾーンを選択する。次に、ステップ2007において、本方法は選択された遮蔽ゾーンを調査する。本方法は、選ばれた遮蔽ゾーンと、他の構成要素の任意の他の遮蔽ゾーンとの間の空間関係を求めることによって遮蔽ゾーンを調査することができる。空間関係は、選ばれた遮蔽ゾーンと他の遮蔽ゾーンとの間の距離を調査することによって求めることができる。2つの遮蔽ゾーン間の距離が所定の範囲内にある場合、これらの遮蔽ゾーンは接触していると判断することができる。加えて、遮蔽ゾーンの相対的な向きを用いて、これらの遮蔽ゾーンが接触しているか否かを判断することができる。2つの遮蔽ゾーンは、接触しているものとして分類されるために、物理的に接触している必要はなく、単に互いに近接している場合でもよい。2つの遮蔽ゾーンが接触していることがわかると、論理規則を適用して、それらの遮蔽ゾーンが互いを遮蔽しているか否か、及びどのように互いを遮蔽しているかを判断することができる。遮蔽ゾーンは、図19に関連して上述したように、全体的に遮蔽されることもできるし、部分的に遮蔽されることもできる。ステップ2007において、本方法が選ばれた遮蔽ゾーンの調査を終了すると、本方法はステップ2005に戻り、部品に関連付けられた全ての遮蔽ゾーンが調査されたか否かを検査する。答えがyesである場合、本方法はステップ2008に進み、ステップ2008において、選ばれた部品が全体的に遮蔽されているか否かを判断する。答えがnoである場合、本方法はステップ2009に進み、ステップ2009において、部品が部分的に遮蔽されているか否かを判断する。答えが再びnoである場合、本方法はステップ2003に戻る。ステップ2009において、答えがyesである場合、本方法は、ステップ2011において、部品がより低いバージョンの詳細度を有するか否かを判断する。詳細度がより低いバージョンは、より少ない詳細部を有する部品のバージョンとすることができ、例えば、部品が、上面に突出した円柱を有する四角形で構成された玩具構築要素の上面を表す場合、該部品の詳細度がより低いバージョンは、単に円柱を有しない四角形とすることができる。答えがnoである場合、本方法はステップ2003に戻る。答えがyesである場合、本方法は、レンダリングプロセスにおいて部品を詳細度がより低いバージョンに置き換え、ステップ2003に戻る。本方法は、ステップ2008において、選ばれた部品が全体的に遮蔽されていると判断する場合、ステップ2013において、該選ばれた部品を除去し、ステップ2003に戻る。本方法は、ステップ2003において、選ばれた構成要素の全ての部品が評価されたと判断する場合、ステップ2001に戻る。本方法は、ステップ2001において、モデルの構成要素の全てが評価されたと判断する場合、ステップ2014において視覚化/レンダリングプロセスを開始し、モデルの画像を生成する。画像はモデルの2次元斜視図とすることができる。モデルの2次元斜視図は、スクリーン上で直接見ることができ、かつ/又はデジタルファイルに保存することができる。
【0092】
図20の例では、プロセスは遮蔽ゾーンに直接基づいて2つの構成要素間の空間関係を求める。代替的な実施形態では、プロセスは本明細書で説明した接続ゾーンに少なくとも部分的に基づいて空間関係を求めることができる。特に、1つの実施形態では、構成要素の各部品は、1つ又は複数の接続ゾーンと、該1つ又は複数の接続ゾーンと関連付けられた1つ又は複数の遮蔽ゾーンとを有することができる。例えば、第1の部品は、該第1の部品と関連付けられた1つ又は複数の接続ゾーンを有することができ、各接続ゾーンは、該接続ゾーンと関連付けられた遮蔽ゾーンを有することができる。第1の部品に関連付けられた少なくとも第1の接続ゾーンが、適合性を有する別の構成要素の接続ゾーンに接続されている場合、プロセスは、その接続に起因して部品が遮蔽されているか否か(かつ/又はどの程度遮蔽されているか)を判断する。このために、プロセスは、他の構成要素の接続ゾーンに関連付けられた遮蔽ゾーンが、例えば上述したように、第1の接続ゾーンに関連付けられた遮蔽ゾーンを遮蔽しているか否かを判断する。
【0093】
このため、いくつかの実施形態では、プロセスは、部品が、別の構成要素の第2の接続ゾーンに接続された、該部品と関連付けられた第1の接続ゾーンを有する場合において、第2の接続ゾーンが、第1の接続ゾーンと関連付けられた第1の遮蔽ゾーンを遮蔽する、該第2の接続ゾーンと関連付けられた第2の遮蔽ゾーンを有するとき、該部品が構成要素を視覚化/レンダリングに用いられないと判断する。
【0094】
図21は、本発明の一実施形態によるコンピューターモデルのデータ構造を示している。コンピューターモデルのデータ構造2101は、モデルパラメーター2102と、複数の構成要素と、任意選択で接続ゾーン適合性テーブル2121と、複数の遮蔽規則2122とを含むことができる。モデルパラメーター2102は、適切な座標系におけるモデルの位置及び向きに関連する情報を含むことができる。モデルパラメーター2102は経時的に更にアニメーション化(animate)することができる。接続ゾーン適合性テーブル2121は、種々のタイプの接続ゾーンの適合性に関連する情報を含むことができ、例えば図7bに示す表である。遮蔽規則は、種々のタイプの遮蔽ゾーンがどのように互いに遮蔽するかを規定することができ、例えば上述した論理規則である。構成要素のデータ構造2104は、構成要素パラメーター2105と、複数の接続ゾーン2106と、複数の遮蔽ゾーン2107と、複数の部品2108とを含むことができる。構成要素パラメーター2105は、構成要素の位置及び向きに関連する情報を含むことができる。接続ゾーンのデータ構造2109は、接続ゾーンパラメーター2110と、任意選択で、他の構成要素の接続ゾーンとともに成される接続の情報2111とを含むことができる。接続ゾーンパラメーター2110は、接続ゾーンの位置、向き、形状、及びタイプに関連する情報を含むことができる。遮蔽ゾーンのデータ構造2112は、遮蔽ゾーンパラメーター2113と、任意選択で、遮蔽ゾーンに関連付けられた部品を示す情報2114と、遮蔽ゾーンの、他の構成要素の他の遮蔽ゾーンとの接続を示す情報2115とを含むことができる。遮蔽ゾーンパラメーター2113は、遮蔽ゾーンの位置、向き、形状、及びタイプに関連する情報を含むことができる。部品のデータ構造2116は、部品パラメーター2117と、任意選択で、詳細度がより低い複数の部品2118と、部品に関連付けられた遮蔽ゾーンを示す情報2118とを含むことができる。部品パラメーター2117は、部品の位置、向き、及び形状に関連する情報を含むことができる。詳細度がより低い部品のためのデータ構造は、より低いLODの部品の位置、向き、及び形状に関連する情報を含むことができるパラメーター2120を含むことができる。
【0095】
一般に、いくつかの実施形態では他の構成要素に接続を提供する、複合製品の構成要素の接続ゾーンは、規則的な構造、例えば規則的な2D格子に配列することができ、規則的な2D格子において、格子位置のそれぞれが接続ゾーンを表す。各接続ゾーンは該接続ゾーンと関連付けられたタイプを有し、接続ゾーンの所与の対が接続を提供するように相互作用するか否かは、例えば適切なデータ構造において規定されるような、それらの接続ゾーンのタイプによって決まる。1つの実施形態では、接続を形成するためにモデル内の別の接続ゾーンと相互作用する接続ゾーンのみが、遮蔽試験を実行するときに最適化プロセスによって考慮に入れられる。接続ゾーンは、タイプを有することに加えて、該接続ゾーンと関連付けられた遮蔽ゾーンも有する。プロセスは、接続の双方の側の遮蔽ゾーンを比較することによって、接続の双方の側において、構成要素の部品をどのように除去するか又は任意選択の部品と置き換えることができるかを判断する。任意選択の部品は、該任意選択の部品によって置き換えられる部品の詳細度よりも低い詳細度を有することができる。
【0096】
モデル内の構成要素がレンダリング目的で最適化されるときはいつでも、プロセスは各構成要素の全ての部品にわたって反復し、各部品が依拠する、別の接続ゾーンとの接続を形成する接続ゾーンを調査することができる。その結果、それぞれの接続を形成する接続ゾーンと関連付けられた遮蔽ゾーンのそれぞれのタイプに依拠して、部品を除去することができるか、任意選択の部品によって置き換えることができるか、又は完全な品質で示すことができるかが決まる。
【0097】
例えば、モデルのデジタル画像において、例えば、規則的な格子及び該格子内の接続ゾーンの位置を特定する属性等の1つ又は複数の適切な属性を部品に関連付けることによって、最適化中に潜在的に除去することができる構成要素の各部品を、接続ゾーンに連結することができる。1つの実施形態では部品がいかなる接続ゾーンにも依拠しない場合、その部品は常に示される。
【0098】
1つの実施形態では、構成要素の部品が2つ以上の接続ゾーンに依拠する場合はいつでも、最適化プロセスは、接続ゾーンの接続特性と、接続された接続ゾーンの対応する遮蔽ゾーンとに基づいて各接続ゾーンの遮蔽特性を求める。例えば、各接続ゾーンの結果は、「隠す」、「任意選択」、及び「示す」のうちの1つとすることができる。次に、2つ以上の接続ゾーンに依拠する部品の全体的な結果を、最小最適化をもたらす接続ゾーンの結果として求めることができる。例えば、8つの接続ゾーンに依拠する部品の場合、7つの「隠す」及び1つの「任意選択」の結果として「任意選択」が得られ、同様に、1つの「隠す」、6つの「任意選択」、及び1つの「示す」の結果として「示す」が得られる。結果が「任意選択」であり、かつ任意選択の部品が現在の部品に利用可能でない場合、結果は「示す」に変換される。いずれかの単一の接続ゾーンの結果が「示す」となる場合、現在の部品に関してこれ以上接続ゾーンが試験される必要はない。接続ゾーンの結果が「示す」とならない限り、プロセスは「隠す」/「任意選択」の結果を求めるために、残りの接続ゾーンを試験し続ける。
【0099】
図22は、コンピューターシステムの一例の概略図を示している。全体を2200として指定されるこのコンピューターシステムは、適切にプログラムされたコンピューター2201を備える。コンピューター2201は、例えばパーソナルコンピューター、ワークステーション等であり、ディスプレイ2220、キーボード2221、コンピューターマウス222、及び/又はタッチパッド、トラックボール、ライトペン、タッチスクリーン等の別のポインティングデバイスを備える。コンピューターシステムは、全てのアクセス可能なコンピューターモデル、構成要素、及び部品に関する情報を格納するデータベース2202を更に備える。データベース2202は、任意の適切なデータベースシステム、例えば、Oracle又はMySQLデータベース等のリレーショナルデータベースとすることができる。コンピューターシステムはファイルストレージデバイス2203を更に備える。ファイルストレージデバイスは、SMB又はNFS−shares等の任意の適切なタイプのリモートアクセス可能なストレージとすることができ、ジオメトリ定義は、任意の適切なディレクトリ構造内に格納することができる。
【0100】
データベース2202及びファイルストレージ2203は、適切なコンピューターネットワーク2204、例えばローカルエリアネットワーク、広域ネットワーク、インターネット等を介してコンピューター2201にアクセス可能である。データベース2202及び/又はファイルストレージ2203は、コンピューター2201に直接、又はファイルサーバー、データベースサーバー等の別のコンピューターを介してアクセス可能とすることができることが理解されよう。データベース2202及び/又はファイルストレージ2203は、コンピューター2201に統合することができることが更に理解されよう。コンピューターモデル、構成要素、及び部品に関する情報を異なる方式で格納することができることが更に理解されよう。
【0101】
コンピューターシステム2200は、コンピューターモデルの視覚化/レンダリングを容易にするように構成される。コンピューターシステムは、スタンドアロンシステムとして、又は他のコンピューターと接続して用いることができる。したがって、いくつかの実施形態では、コンピューターシステム2200は、コンピューターネットワーク、例えばインターネットを介してコンピューターを他のコンピューターと接続するための1つ又は複数のインターフェースを更に備える。
【0102】
図24は、コンピューター実施構築ツールのグラフィカルユーザーインターフェースを示している。ユーザーインターフェースは、ベースプレート2402と、複数の相互接続された構成要素2404を含むコンピューターモデル2403とを用いて3Dシーンのビューを示す表示エリア2401を含む。シーンは所定のビューポイントから示される。以下において、このビューポイントは(仮想)カメラ位置とも呼ばれる。なぜなら、このビューポイントは、カメラが表示エリア内に示されるグラフィック画像に対応する実際の構造の画像を記録する位置に対応するためである。
【0103】
構成要素のそれぞれが、該構成要素を選択するために、例えばコンピューターマウスを用いてその上をクリックすることによってアクティベートすることができるグラフィカルユーザーインターフェースのアクティブ要素に対応する。1つの実施形態では、選択された構成要素は外観を変更する。例えば、選択された構成要素は、色、テクスチャ等を変更することができる。選択された構成要素は、選択された組立ブロックの回りに境界ボックスを示すこと等によって強調することができる。ユーザーは選択された構成要素を操作することができ、例えば該構成要素の特性、例えば該構成要素の色を変更し、該構成要素を削除し、コピーアンドペースト動作を実行し、該構成要素を異なる位置にドラッグし、該構成要素を回転すること等を行うことができる。
【0104】
ユーザーインターフェースは、ユーザーが選択することができる複数の種々の構成要素2406を含むパレットパネル2405を更に備える。例えば、ユーザーは、マウスで構成要素2406のうちの1つをクリックし、それによってその構成要素を選択し、選択された構成要素を表示エリア2401にドラッグして、該構成要素を構造2403又はベースプレート2402に接続することができる。ユーザーインターフェースは、様々な機能又はツールをアクティベートするための複数のメニューボタン2408を含むメニューバー2407を更に備える。例えば、ツールバーは、仮想カメラ位置を変更し、それによってユーザーが異なる方向から組立エリアを見ることを可能にする回転ツールを備えることができる。メニューバーは、3Dシーンに対しズームイン/ズームアウトするためのズームツールを更に備えることができる。ツールの他の例には、それぞれ構成要素の異なるセットを含む種々のパレット2405を選択するためのパレットツール、構造の部品をカラーリングするためのカラーリングツール、組立ブロックを消去するための消去ツール等が含まれる。
【0105】
メニューバー2407は、モデルを保存する機能、以前に保存したモデルを開く機能、モデルの画像を印刷する機能、ヘルプ機能等の標準機能を更に提供することができる。
【0106】
いくつかの実施形態が説明され、詳細に示されたが、本発明はこれらに限定されるものではなく、以下の特許請求の範囲において規定される主題の範囲内で他の形で実施することもできる。特に、他の実施形態を利用することができ、本発明の範囲から逸脱することなく構造及び機能の変更を行うことができることを理解されたい。
【0107】
いくつかの手段を列挙する装置クレームにおいて、これらの手段のうちのいくつかを、ハードウェアの全く同じアイテムによって実施することができる。単に或る特定の手段(measure)が互いに異なる従属クレームで挙げられることも、異なる実施形態において説明されることも、これらの手段の組み合わせを用いて利益を得ることができないことを意味するものではない。
【0108】
用語「備える、含む(comprises/comprising)」は、本明細書において用いられるとき、述べた特徴、完全体(integer)、ステップ、又は構成要素の存在を特定するために使われるが、1つ又は複数の他の特徴、完全体、ステップ、構成要素、又はそれらのグループの存在又は付加を排除するものではないことを強調されるべきである。
【特許請求の範囲】
【請求項1】
コンピューターモデルを視覚化/レンダリングするためのコンピューター実施方法であって、前記コンピューターモデルは複数の構成要素を含み、該方法は、
前記複数の構成要素のうちの少なくとも1つの、複数の部品を格納することであって、各部品は該部品を視覚化/レンダリングするためのジオメトリ情報を含む、格納することと、
座標系内の複数の構成要素の位置及び向きを示す情報を格納することと、
前記複数の構成要素の前記位置及び前記向きを示す前記格納された情報に基づいて前記構成要素のうちの個々の構成要素間の空間関係を求めることと、
前記少なくとも1つの構成要素について、前記個々の構成要素間の前記求められた空間関係に基づいて、該構成要素を視覚化/レンダリングするのに用いる複数の格納された部品を求めることと、
を含む、コンピューターモデルを視覚化/レンダリングするためのコンピューター実施方法。
【請求項2】
少なくとも1つの所定の接続ゾーンが少なくとも1つの構成要素と関連付けて画定され、該接続ゾーンは、別の構成要素の1つ又は複数の接続ゾーンに接続することができる、前記構成要素の一部を示す、請求項1に記載のコンピューターモデルを視覚化/レンダリングするためのコンピューター実施方法。
【請求項3】
個々の構成要素間の空間関係を求める前記ステップは、該個々の構成要素の接続ゾーンの前記空間関係を求めるステップを含む、請求項2に記載のコンピューターモデルを視覚化/レンダリングするためのコンピューター実施方法。
【請求項4】
個々の接続ゾーン間の前記空間関係を求める前記ステップは、2つの接続ゾーン間の距離を求めるステップを含み、前記接続ゾーンは距離が所定の間隔内にあるときに接続される、請求項3に記載のコンピューターモデルを視覚化/レンダリングするためのコンピューター実施方法。
【請求項5】
個々の接続ゾーン間の前記空間関係を求める前記ステップは、別の接続ゾーンに対する1つの接続ゾーンの前記向きを求めるステップを含む、請求項3及び4に記載のコンピューターモデルを視覚化/レンダリングするためのコンピューター実施方法。
【請求項6】
前記構成要素の第1の部品は1つ又は複数の接続ゾーンと関連付けられ、前記少なくとも1つの構成要素について、該構成要素を視覚化/レンダリングするのに用いる複数の部品を求める前記ステップは、前記1つ又は複数の接続ゾーンが別の構成要素の接続ゾーンに接続しているか否かを判断することを含む、請求項4及び5に記載のコンピューターモデルを視覚化/レンダリングするためのコンピューター実施方法。
【請求項7】
第1の構成要素は所定のタイプの第1の遮蔽ゾーンを含み、第2の構成要素は所定のタイプの第2の遮蔽ゾーンを含み、前記第1の遮蔽ゾーンと前記第2の遮蔽ゾーンとの間の前記空間関係は、前記第2の構成要素によって遮蔽される、前記第1の構成要素の一部を求めるのに用いられる、上記請求項のいずれか1項に記載のコンピューターモデルを視覚化/レンダリングするためのコンピューター実施方法。
【請求項8】
前記方法は、前記コンピューターモデルの前記境界ボックスの外側の任意の方向から見たときに、部品の前記表面エリアの少なくとも所定の一部が1つ又は複数の他の部品によって覆われている場合、該部品を、構成要素を視覚化/レンダリングするのに用いないものと判断することを含む、上記請求項のいずれか1項に記載のコンピューターモデルを視覚化/レンダリングするためのコンピューター実施方法。
【請求項9】
前記少なくとも1つの構成要素について、該構成要素を視覚化/レンダリングするのに用いる複数の部品を求める前記ステップは、構成要素の材料特性を求め、前記求められた空間関係及び前記求められた材料特性の双方に基づいて前記構成要素を視覚化/レンダリングするのに用いる複数の部品を求めるステップを更に含む、上記請求項のいずれか1項に記載のコンピューターモデルを視覚化/レンダリングするためのコンピューター実施方法。
【請求項10】
材料特性を求める前記ステップは、構成要素の前記透明度設定を求めるステップを含む、請求項9に記載のコンピューターモデルを視覚化/レンダリングするためのコンピューター実施方法。
【請求項11】
前記コンピューターモデルは複合製品を表す、上記請求項のいずれか1項に記載のコンピューターモデルを視覚化/レンダリングするためのコンピューター実施方法。
【請求項12】
第1の部品及び第2の部品は、構成要素の共通セクションを表し、前記第1の部品は前記第2の部品よりも高い詳細度を有し、前記構成要素を視覚化/レンダリングするのに用いる複数の格納された部品を求める前記ステップは、前記構成要素を視覚化/レンダリンするのに用いるために、前記第1の部品及び前記第2の部品のうちの多くても一方を選択することを更に含む、上記請求項のいずれか1項に記載のコンピューターモデルを視覚化/レンダリングするためのコンピューター実施方法。
【請求項13】
コンピュータープログラムであって、実行可能なコンピュータープログラムコードを含み、該実行可能なコンピュータープログラムコードは、データ処理システムに、
少なくとも設計ステップであって、
ユーザーが、構成要素のレポジトリから複数の構成要素のそれぞれのデジタル画像を選択し、該選択された構成要素を互いとの空間関係に配置して複合製品のデジタル画像を生成することを可能にするコンピューター実施構築ツールを提供することであって、各構成要素は複数の部品を含む、提供すること、
を含む、設計ステップと、
更なる処理ステップであって、
前記複合製品の少なくとも一部の視覚化/レンダリングを生成することであって、該生成することは、
前記複数の構成要素のうちの少なくとも1つの、複数の部品を格納することであって、各部品は該部品を視覚化/レンダリングするためのジオメトリ情報を含む、格納することと、
座標系内の複数の構成要素の位置及び向きを示す情報を格納することと、
前記複数の構成要素の前記位置及び前記向きを示す前記格納された情報に基づいて前記構成要素のうちの個々の構成要素間の空間関係を求めることと、
前記少なくとも1つの構成要素について、前記個々の構成要素間の前記求められた空間関係に基づいて、前記構成要素を視覚化/レンダリングするのに用いる複数の格納された部品を求めることと、
を含む、生成すること、
を含む、更なる処理ステップと
を実行させるように構成される、コンピュータープログラム。
【請求項14】
前記コンピュータープログラムは子供のための玩具コンピュータープログラムである、請求項13に記載のコンピュータープログラム。
【請求項15】
コンピューター実施方法とともに用いるためのデータ構造であって、該データ構造は、
モデルパラメーターと、
複数の構成要素と、
を含む、コンピューターモデルのためのデータ構造を含み、各構成要素は、
構成要素パラメーターと、
接続ゾーンパラメーターを含むデータ構造を含む複数の接続ゾーンと、
遮蔽ゾーンパラメーターを含むデータ構造を含む複数の遮蔽ゾーンと、
部品パラメーターを含むデータ構造を含む複数の部品と、
を含むデータ構造を含む、上記請求項のいずれか1項に記載のコンピューター実施方法とともに用いるためのデータ構造。
【請求項16】
プログラムコード手段が格納されたデータ処理システムであって、該プログラムコード手段は、該プログラムコード手段が該データ処理システムにおいて実行されるときに、該データ処理システムに、請求項1〜15のいずれか1項に記載の方法の前記ステップを実行させるように構成される、プログラムコード手段が格納されたデータ処理システム。
【請求項17】
プログラムコード手段を含むコンピュータープログラム製品であって、該プログラムコード手段は、該プログラムコード手段がデータ処理システムによって実行されるときに、該データ処理システムに、請求項1〜15のいずれか1項に記載の方法の前記ステップを実行させるように構成される、プログラムコード手段を含むコンピュータープログラム製品。
【請求項18】
前記プログラムコード手段が格納されたコンピューター可読媒体を含む、請求項16に記載のコンピュータープログラム製品。
【請求項19】
搬送波において実施され、命令のシーケンスを表すコンピューターデータ信号であって、該命令のシーケンスは、プロセッサによって実行されると、該プロセッサに、請求項1〜15のいずれか1項に記載の方法の前記ステップを実行させる、搬送波において実施され、命令のシーケンスを表すコンピューターデータ信号。
【請求項1】
コンピューターモデルを視覚化/レンダリングするためのコンピューター実施方法であって、前記コンピューターモデルは複数の構成要素を含み、該方法は、
前記複数の構成要素のうちの少なくとも1つの、複数の部品を格納することであって、各部品は該部品を視覚化/レンダリングするためのジオメトリ情報を含む、格納することと、
座標系内の複数の構成要素の位置及び向きを示す情報を格納することと、
前記複数の構成要素の前記位置及び前記向きを示す前記格納された情報に基づいて前記構成要素のうちの個々の構成要素間の空間関係を求めることと、
前記少なくとも1つの構成要素について、前記個々の構成要素間の前記求められた空間関係に基づいて、該構成要素を視覚化/レンダリングするのに用いる複数の格納された部品を求めることと、
を含む、コンピューターモデルを視覚化/レンダリングするためのコンピューター実施方法。
【請求項2】
少なくとも1つの所定の接続ゾーンが少なくとも1つの構成要素と関連付けて画定され、該接続ゾーンは、別の構成要素の1つ又は複数の接続ゾーンに接続することができる、前記構成要素の一部を示す、請求項1に記載のコンピューターモデルを視覚化/レンダリングするためのコンピューター実施方法。
【請求項3】
個々の構成要素間の空間関係を求める前記ステップは、該個々の構成要素の接続ゾーンの前記空間関係を求めるステップを含む、請求項2に記載のコンピューターモデルを視覚化/レンダリングするためのコンピューター実施方法。
【請求項4】
個々の接続ゾーン間の前記空間関係を求める前記ステップは、2つの接続ゾーン間の距離を求めるステップを含み、前記接続ゾーンは距離が所定の間隔内にあるときに接続される、請求項3に記載のコンピューターモデルを視覚化/レンダリングするためのコンピューター実施方法。
【請求項5】
個々の接続ゾーン間の前記空間関係を求める前記ステップは、別の接続ゾーンに対する1つの接続ゾーンの前記向きを求めるステップを含む、請求項3及び4に記載のコンピューターモデルを視覚化/レンダリングするためのコンピューター実施方法。
【請求項6】
前記構成要素の第1の部品は1つ又は複数の接続ゾーンと関連付けられ、前記少なくとも1つの構成要素について、該構成要素を視覚化/レンダリングするのに用いる複数の部品を求める前記ステップは、前記1つ又は複数の接続ゾーンが別の構成要素の接続ゾーンに接続しているか否かを判断することを含む、請求項4及び5に記載のコンピューターモデルを視覚化/レンダリングするためのコンピューター実施方法。
【請求項7】
第1の構成要素は所定のタイプの第1の遮蔽ゾーンを含み、第2の構成要素は所定のタイプの第2の遮蔽ゾーンを含み、前記第1の遮蔽ゾーンと前記第2の遮蔽ゾーンとの間の前記空間関係は、前記第2の構成要素によって遮蔽される、前記第1の構成要素の一部を求めるのに用いられる、上記請求項のいずれか1項に記載のコンピューターモデルを視覚化/レンダリングするためのコンピューター実施方法。
【請求項8】
前記方法は、前記コンピューターモデルの前記境界ボックスの外側の任意の方向から見たときに、部品の前記表面エリアの少なくとも所定の一部が1つ又は複数の他の部品によって覆われている場合、該部品を、構成要素を視覚化/レンダリングするのに用いないものと判断することを含む、上記請求項のいずれか1項に記載のコンピューターモデルを視覚化/レンダリングするためのコンピューター実施方法。
【請求項9】
前記少なくとも1つの構成要素について、該構成要素を視覚化/レンダリングするのに用いる複数の部品を求める前記ステップは、構成要素の材料特性を求め、前記求められた空間関係及び前記求められた材料特性の双方に基づいて前記構成要素を視覚化/レンダリングするのに用いる複数の部品を求めるステップを更に含む、上記請求項のいずれか1項に記載のコンピューターモデルを視覚化/レンダリングするためのコンピューター実施方法。
【請求項10】
材料特性を求める前記ステップは、構成要素の前記透明度設定を求めるステップを含む、請求項9に記載のコンピューターモデルを視覚化/レンダリングするためのコンピューター実施方法。
【請求項11】
前記コンピューターモデルは複合製品を表す、上記請求項のいずれか1項に記載のコンピューターモデルを視覚化/レンダリングするためのコンピューター実施方法。
【請求項12】
第1の部品及び第2の部品は、構成要素の共通セクションを表し、前記第1の部品は前記第2の部品よりも高い詳細度を有し、前記構成要素を視覚化/レンダリングするのに用いる複数の格納された部品を求める前記ステップは、前記構成要素を視覚化/レンダリンするのに用いるために、前記第1の部品及び前記第2の部品のうちの多くても一方を選択することを更に含む、上記請求項のいずれか1項に記載のコンピューターモデルを視覚化/レンダリングするためのコンピューター実施方法。
【請求項13】
コンピュータープログラムであって、実行可能なコンピュータープログラムコードを含み、該実行可能なコンピュータープログラムコードは、データ処理システムに、
少なくとも設計ステップであって、
ユーザーが、構成要素のレポジトリから複数の構成要素のそれぞれのデジタル画像を選択し、該選択された構成要素を互いとの空間関係に配置して複合製品のデジタル画像を生成することを可能にするコンピューター実施構築ツールを提供することであって、各構成要素は複数の部品を含む、提供すること、
を含む、設計ステップと、
更なる処理ステップであって、
前記複合製品の少なくとも一部の視覚化/レンダリングを生成することであって、該生成することは、
前記複数の構成要素のうちの少なくとも1つの、複数の部品を格納することであって、各部品は該部品を視覚化/レンダリングするためのジオメトリ情報を含む、格納することと、
座標系内の複数の構成要素の位置及び向きを示す情報を格納することと、
前記複数の構成要素の前記位置及び前記向きを示す前記格納された情報に基づいて前記構成要素のうちの個々の構成要素間の空間関係を求めることと、
前記少なくとも1つの構成要素について、前記個々の構成要素間の前記求められた空間関係に基づいて、前記構成要素を視覚化/レンダリングするのに用いる複数の格納された部品を求めることと、
を含む、生成すること、
を含む、更なる処理ステップと
を実行させるように構成される、コンピュータープログラム。
【請求項14】
前記コンピュータープログラムは子供のための玩具コンピュータープログラムである、請求項13に記載のコンピュータープログラム。
【請求項15】
コンピューター実施方法とともに用いるためのデータ構造であって、該データ構造は、
モデルパラメーターと、
複数の構成要素と、
を含む、コンピューターモデルのためのデータ構造を含み、各構成要素は、
構成要素パラメーターと、
接続ゾーンパラメーターを含むデータ構造を含む複数の接続ゾーンと、
遮蔽ゾーンパラメーターを含むデータ構造を含む複数の遮蔽ゾーンと、
部品パラメーターを含むデータ構造を含む複数の部品と、
を含むデータ構造を含む、上記請求項のいずれか1項に記載のコンピューター実施方法とともに用いるためのデータ構造。
【請求項16】
プログラムコード手段が格納されたデータ処理システムであって、該プログラムコード手段は、該プログラムコード手段が該データ処理システムにおいて実行されるときに、該データ処理システムに、請求項1〜15のいずれか1項に記載の方法の前記ステップを実行させるように構成される、プログラムコード手段が格納されたデータ処理システム。
【請求項17】
プログラムコード手段を含むコンピュータープログラム製品であって、該プログラムコード手段は、該プログラムコード手段がデータ処理システムによって実行されるときに、該データ処理システムに、請求項1〜15のいずれか1項に記載の方法の前記ステップを実行させるように構成される、プログラムコード手段を含むコンピュータープログラム製品。
【請求項18】
前記プログラムコード手段が格納されたコンピューター可読媒体を含む、請求項16に記載のコンピュータープログラム製品。
【請求項19】
搬送波において実施され、命令のシーケンスを表すコンピューターデータ信号であって、該命令のシーケンスは、プロセッサによって実行されると、該プロセッサに、請求項1〜15のいずれか1項に記載の方法の前記ステップを実行させる、搬送波において実施され、命令のシーケンスを表すコンピューターデータ信号。
【図1a】
【図1b】
【図1c】
【図2a】
【図2b】
【図2c】
【図3】
【図4a】
【図4b】
【図5a】
【図5b】
【図6a】
【図6b】
【図7a】
【図7b】
【図8a】
【図8b】
【図8c】
【図9a】
【図9b】
【図9c】
【図10a】
【図10b】
【図11a】
【図11b】
【図12】
【図15a】
【図15b】
【図15c】
【図15d】
【図15e】
【図15f】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23a】
【図23b】
【図23c】
【図24】
【図8d】
【図8e】
【図13】
【図14】
【図1b】
【図1c】
【図2a】
【図2b】
【図2c】
【図3】
【図4a】
【図4b】
【図5a】
【図5b】
【図6a】
【図6b】
【図7a】
【図7b】
【図8a】
【図8b】
【図8c】
【図9a】
【図9b】
【図9c】
【図10a】
【図10b】
【図11a】
【図11b】
【図12】
【図15a】
【図15b】
【図15c】
【図15d】
【図15e】
【図15f】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23a】
【図23b】
【図23c】
【図24】
【図8d】
【図8e】
【図13】
【図14】
【公表番号】特表2013−506896(P2013−506896A)
【公表日】平成25年2月28日(2013.2.28)
【国際特許分類】
【出願番号】特願2012−531316(P2012−531316)
【出願日】平成22年9月10日(2010.9.10)
【国際出願番号】PCT/EP2010/063296
【国際公開番号】WO2011/039041
【国際公開日】平成23年4月7日(2011.4.7)
【出願人】(594012623)レゴ エー/エス (19)
【Fターム(参考)】
【公表日】平成25年2月28日(2013.2.28)
【国際特許分類】
【出願日】平成22年9月10日(2010.9.10)
【国際出願番号】PCT/EP2010/063296
【国際公開番号】WO2011/039041
【国際公開日】平成23年4月7日(2011.4.7)
【出願人】(594012623)レゴ エー/エス (19)
【Fターム(参考)】
[ Back to top ]