(57)【要約】【課題】仮想３次元空間において動作する３次元モデルに対して好適にテクスチャマッピングすることができる画像処理装置、画像処理方法及びプログラムを提供すること。【解決手段】仮想３次元空間に配置される３次元モデルを構成する各ポリゴンに対し、該ポリゴンのテクスチャ座標により特定されるテクスチャをマッピングし、前記３次元モデルを表示する画像処理装置１０において、所与のモーションデータ１８に従って、前記３次元モデルの姿勢を経時変化させる３次元モデル姿勢変化部１４ａと、３次元モデル姿勢変化部１４ａによる前記３次元モデルの姿勢の経時変化に応じて、前記各ポリゴンのテクスチャ座標を変位させるテクスチャ座標変位部１４ｂと、を含むことを特徴とする。【選択図】図４
2007102734.tif 000002
【特許請求の範囲】
【請求項１】
仮想３次元空間に配置される３次元モデルを構成する１以上のポリゴンに対し、該ポリゴンのテクスチャ座標により特定されるテクスチャをマッピングし、前記３次元モデルを表示する画像処理装置において、
所与のモーションデータに従って、前記３次元モデルの姿勢を経時変化させる３次元モデル姿勢変化手段と、
前記３次元モデル姿勢変化手段による前記３次元モデルの姿勢の経時変化に応じて、前記ポリゴンのテクスチャ座標を変位させるテクスチャ座標変位手段と、
を含むことを特徴とする画像処理装置。
【請求項２】
請求項１に記載の画像処理装置において、
時刻と、該時刻での前記３次元モデルの姿勢を示すデータと、該時刻での前記３次元モデルを構成する少なくとも一部のポリゴンのテクスチャ座標の変位量と、を関連づけて記憶する記憶手段をさらに含み、
前記テクスチャ座標変位手段は、前記記憶手段の記憶内容に従って、前記ポリゴンのテクスチャ座標を変位させる、
ことを特徴とする画像処理装置。
【請求項３】
仮想３次元空間に配置される３次元モデルを構成する１以上のポリゴンに対し、該ポリゴンのテクスチャ座標により特定されるテクスチャをマッピングし、前記３次元モデルを表示する画像処理方法において、
所与のモーションデータに従って、前記３次元モデルの姿勢を経時変化させる３次元モデル姿勢変化ステップと、
前記３次元モデル姿勢変化ステップでの前記３次元モデルの姿勢の経時変化に応じて、前記ポリゴンのテクスチャ座標を変位させるテクスチャ座標変位ステップと、
を含むことを特徴とする画像処理方法。
【請求項４】
仮想３次元空間に配置される３次元モデルを構成する１以上のポリゴンに対し、該ポリゴンのテクスチャ座標により特定されるテクスチャをマッピングし、前記３次元モデルを表示する手段、
所与のモーションデータに従って、前記３次元モデルの姿勢を経時変化させる３次元モデル姿勢変化手段、及び
前記３次元モデル姿勢変化手段による前記３次元モデルの姿勢の経時変化に応じて、前記ポリゴンのテクスチャ座標を変位させるテクスチャ座標変位手段
としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は画像処理装置、画像処理方法及びプログラムに関し、特に、テクスチャマッピングを用いて仮想３次元空間に配置された３次元モデルを表示する画像処理装置、画像処理方法及びプログラムに関する。
【背景技術】
【０００２】
コンピュータのメモリ上に仮想３次元空間を構築し、そこに多数のポリゴンにより構成された３次元モデルを配置し、ディスプレイに表示する、いわゆる３ＤＣＧの技術が普及している。３ＤＣＧでは、テクスチャマッピングと呼ばれる手法により、各ポリゴンに画像（テクスチャ）がマッピングされることが多い。テクスチャマッピングでは、例えば図８（ａ）に示すような正面外観を有する３次元モデルに対しては、同図（ｂ）に示すようなテクスチャを多数含む元画像が予め用意され、３次元モデルを構成する各ポリゴンの頂点（同図（ａ）において黒丸で示される。）に、その元画像中の位置（同図（ｂ）において黒丸で示される。）がテクスチャ座標として関連づけられる。そして、各ポリゴンに対して、そのポリゴンの各頂点に関連づけられたテクスチャ座標により特定される元画像中の領域の画像がテクスチャとして貼り付けられる。テクスチャマッピングの手法によれば、３次元モデルの外観を多様にすることができる。なお、下記２つの特許文献には、テクスチャマッピングの手法を用いる画像処理装置が開示されている。
【特許文献１】特開２０００−３００８３号公報
【特許文献２】特開２００２−７４３９５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
上記従来のテクスチャマッピングの手法では、各ポリゴンの頂点に関連づけられるテクスチャ座標が固定されている。このため、３次元モデルに対して動きを与えると、不自然な表示となってしまう場合がある。すなわち、モーションデータにより、３次元モデルの隣接配置される２つのパーツを折り曲げると、図９（ａ）に示すように、その屈曲部分の周辺に面積が大きく変化するポリゴンが生じる場合がある。この場合、元画像に含まれていた同ポリゴンにマッピングされるべきテクスチャは、同図（ｂ）に示すように、大きく変形されてからマッピングされることになり、その表示は看者に違和感を与える。
【０００４】
本発明は上記課題に鑑みてなされたものであって、仮想３次元空間において動作する３次元モデルに対して好適にテクスチャマッピングすることができる画像処理装置、画像処理方法及びプログラムを提供することにある。
【課題を解決するための手段】
【０００５】
上記課題を解決するために、本発明に係る画像処理装置は、仮想３次元空間に配置される３次元モデルを構成する１以上のポリゴンに対し、該ポリゴンのテクスチャ座標により特定されるテクスチャをマッピングし、前記３次元モデルを表示する画像処理装置において、所与のモーションデータに従って、前記３次元モデルの姿勢を経時変化させる３次元モデル姿勢変化手段と、前記３次元モデル姿勢変化手段による前記３次元モデルの姿勢の経時変化に応じて、前記ポリゴンのテクスチャ座標を変位させるテクスチャ座標変位手段と、を含むことを特徴とする。
【０００６】
また、本発明に係る画像処理方法は、仮想３次元空間に配置される３次元モデルを構成する１以上のポリゴンに対し、該ポリゴンのテクスチャ座標により特定されるテクスチャをマッピングし、前記３次元モデルを表示する画像処理方法において、所与のモーションデータに従って、前記３次元モデルの姿勢を経時変化させる３次元モデル姿勢変化ステップと、前記３次元モデル姿勢変化ステップでの前記３次元モデルの姿勢の経時変化に応じて、前記ポリゴンのテクスチャ座標を変位させるテクスチャ座標変位ステップと、を含むことを特徴とする。
【０００７】
また、本発明に係るプログラムは、仮想３次元空間に配置される３次元モデルを構成する１以上のポリゴンに対し、該ポリゴンのテクスチャ座標により特定されるテクスチャをマッピングし、前記３次元モデルを表示する手段、所与のモーションデータに従って、前記３次元モデルの姿勢を経時変化させる３次元モデル姿勢変化手段、及び前記３次元モデル姿勢変化手段による前記３次元モデルの姿勢の経時変化に応じて、前記ポリゴンのテクスチャ座標を変位させるテクスチャ座標変位手段としてコンピュータを機能させるためのプログラムである。コンピュータは、例えばパーソナルコンピュータ、サーバコンピュータ、家庭用ゲーム機、業務用ゲーム機、携帯ゲーム機、携帯電話機、携帯情報端末等である。プログラムは、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、ＲＯＭカートリッジ等のコンピュータ読み取り可能な情報記憶媒体に格納されてもよい。
【０００８】
本発明によれば、３次元モデルの姿勢の経時変化に応じて、ポリゴンのテクスチャ座標が変位する。このため、一部のポリゴンにマッピングされるテクスチャのみ極端に拡縮されることを防止でき、違和感のない３次元モデルの表示を実現できる。
【０００９】
なお、本発明の一態様では、時刻と、該時刻での前記３次元モデルの姿勢を示すデータと、該時刻での前記３次元モデルを構成する少なくとも一部のポリゴンのテクスチャ座標の変位量と、を関連づけて記憶する記憶手段をさらに含み、前記テクスチャ座標変位手段は、前記記憶手段の記憶内容に従って、前記ポリゴンのテクスチャ座標を変位させる。こうすれば、非常に簡単且つ確実に、ポリゴンのテクスチャ座標を適切に変化させることができる。
【発明を実施するための最良の形態】
【００１０】
以下、本発明の好適な実施形態について図面に基づき詳細に説明する。
【００１１】
本実施形態では、コンピュータのメモリ上に仮想３次元空間が構築される。この仮想３次元空間には、１以上（ここでは複数）のポリゴンにより構成された３次元モデル（３次元オブジェクト）が配置される。図１は、この３次元モデルのある時刻（ここではｔ＝００００とする。）での形状を示す斜視図である。同図に示す３次元モデルは、ほぼ同一サイズの四角柱を４つ積み重ねた形状を有しており、各四角柱は８つの頂点により特定される、６つのポリゴンにより構成されている。また、３次元モデルには、２本のボーンＡ，Ｂが設定されており、ボーンＡに従って上側２つの四角柱の姿勢が変化し、ボーンＢに従って下側２つの四角柱の姿勢が変化する。すなわち、モーションデータに従って、ボーンＡ，Ｂの姿勢は経時変化し、それに伴って、それらボーンの周囲のポリゴンの位置が経時変化するようになっている。
【００１２】
なお、ボーンは、周囲のポリゴンの頂点の基準となる線分であり、例えばボーンＡは上側２つの四角柱の中心を貫くように配置され、ボーンＢは下側２つの四角柱の中心を貫くよう配置される。また、３次元モデルはここでは説明のため簡略化された形状を用いたが、より複雑な形状であってもよく、それは人体、生物、ロボット等、何を表したものであってもよい。また、ここでは隣接するポリゴンが頂点を共有するようにしたが、別々に頂点を有するようにしてもよい。さらに、モーションデータは３次元モデル全体に対して１つ用意されてもよいし、３次元モデルの部分毎に用意されてもよい。
【００１３】
図２は、図１に示す３次元モデルにマッピングされるテクスチャが含まれたテクスチャ元画像を示す図である。本実施形態では、３次元モデルを構成する各ポリゴンの各頂点にテクスチャ座標が関連づけられている。テクスチャ座標は、テクスチャ元画像における位置を特定するものであり、各ポリゴンには、その頂点に関連づけられたテクスチャ座標により取り囲まれるテクスチャ元画像中の領域の画像がテクスチャとしてマッピングされる。ここでは、図１に示す頂点Ｖｎに対して、テクスチャ座標Ｔｎが関連づけられているものとしている。
【００１４】
図３は、図１に示す３次元モデルが、モーションデータに従って姿勢を変化させた様子、すなわち図１に示す形状を有する時刻から所定時間経過後の時刻（ここではｔ＝００３５とする。）における３次元モデルの形状を示している。ここでは、モーションデータにより、ｔ＝００００とｔ＝００３５に、連続するキーフレームが設定されているものとする。図１ではボーンＡとボーンＢとが直線上にあったのに対して、ここでは、ボーンＡとボーンＢとが異なる方向を向いている。そして、それに応じて、上側２つの四角柱の姿勢は大きく傾いている。この場合、屈曲部分において、ポリゴンの面積が大きく変化している。例えば、頂点Ｖ５〜Ｖ８により囲まれるポリゴンの面積は、姿勢変化前（図１参照）に比して、広くなっている。従って、ここに、図２に示すテクスチャ元画像における、テクスチャ座標Ｔ５〜Ｔ８により囲まれる領域の画像をマッピングすると、大きく拡大されてしまう。そこで、本実施形態では、テクスチャ座標Ｔ７をＴ７’に変位させるとともに、テクスチャ座標Ｔ８をＴ８’に変位させている。すなわち、テクスチャ座標は縦方向及び横方向の２成分を有するので、テクスチャ座標Ｔ７については、（ΔＵ７，ΔＶ７）を加えてテクスチャ座標Ｔ７’とし、テクスチャ座標Ｔ８については、（ΔＵ８，ΔＶ８）を加えてテクスチャ座標Ｔ８’としている。
【００１５】
これにより、頂点Ｖ５〜Ｖ８により囲まれるポリゴンには、テクスチャ座標Ｔ５，Ｔ６，Ｔ７’、Ｔ８’という、３次元モデルの姿勢変化前に比して、広い面積のテクスチャがマッピングされることになり、テクスチャの拡大表示を抑制することができる。こうして、本実施形態によれば、モーションデータに従って姿勢変化する場合にも、テクスチャマッピングされた３次元モデルの表示を違和感なく実現できる。なお、こうしたテクスチャ座標の変更は、例えば人体を表す３次元モデルにおいては、体がモーションデータに従って反れる場合の当該体の折れ曲がり部分、腕がモーションデータに従って曲がる場合の当該腕の折れ曲がり部分に適用すれば好適である。
【００１６】
図４は、本実施形態に係る画像処理装置の構成図である。同図に示す画像処理装置１０は、記憶部１２と、画像処理部１４と、表示部１６と、を含んでいる。記憶部１２は、ハードディスク記憶装置やＲＡＭ等の公知の記憶手段により構成されており、特にモーションデータ１８と、モデルデータ２０と、を記憶している。モーションデータ１８は、３次元モデル（ここではボーン）の姿勢変化を示すデータであり、ここでは、テクスチャ座標シフトデータ１８ａを含んでいる。モーションデータ１８は、３次元モデルを構成する各ポリゴンの頂点の位置変化を示すデータであってもよく、この場合にも、モーションデータ１８により３次元モデルの姿勢変化が示されることになる。テクスチャ座標シフトデータ１８ａは、３次元モデルを構成するポリゴンの一部又は全部の頂点のテクスチャ座標のシフト量（上述したΔＵｎ，ΔＶｎ）を示すデータである。図５は、モーションデータ１８の一例を示している。同図に示すように、モーションデータは、キーフレーム時刻ｔと、その時刻における各ボーンの姿勢データＰｔと、その時刻における一部又は全部のポリゴン頂点に関連づけられたテクスチャ座標のシフト量（ΔＵｎ，ΔＶｎ）と、を関連づけてなるものである。テクスチャ座標にシフトが生じないキーフレーム（例えばｔ＝００００のキーフレーム）については、シフト量（ΔＵｎ，ΔＶｎ）は記憶されない。
【００１７】
モデルデータ２０は、テクスチャデータ２０ａとポリゴンデータ２０ｂとから構成されている。ポリゴンデータ２０ｂは、３次元モデルを構成する各ポリゴンのボーンに対する位置等を示すデータであり、３次元モデルの形状を特定するものである。ポリゴンデータ２０ｂには、各ポリゴン頂点のテクスチャ座標も含まれる。テクスチャデータ２０ａは、上述したテクスチャ元画像を示すデータである。
【００１８】
画像処理部１４は、ＣＰＵ、ＲＡＭ等を中心に構成された公知のコンピュータであり、パーソナルコンピュータ、家庭用ゲーム機、業務用ゲーム機、携帯ゲーム機等を用いて構成することができる。ここでは、所定のプログラムを実行することにより、画像処理部１４は、メモリ上に仮想３次元空間を構築し、該仮想３次元空間に配置される３次元モデルを構成する各ポリゴンに対し、該ポリゴンのテクスチャ座標により特定されるテクスチャをマッピングするとともに、仮想３次元空間を所与の視点から見た様子を示す画像を生成する。また、モーションデータ１８に従って、３次元モデルの姿勢を経時変化させる３次元モデル姿勢変化部１４ａと、３次元モデル姿勢変化部１４ａによる３次元モデルの姿勢の経時変化に応じて、各ポリゴンのテクスチャ座標を変位させるテクスチャ座標変位部１４ｂと、が実現されるようになっている。プログラムは、例えばＣＤ−ＲＯＭやＤＶＤ−ＲＯＭ等のコンピュータ読み取り可能な情報記憶媒体により、画像処理部１４に供給される。また、インターネット等のデータ通信ネットワークを介して画像処理部１４に供給されてもよい。表示部１６は、ＬＣＤ、ＣＲＴ、家庭用テレビ受像機等により構成されるものであり、画像処理部１４により生成される、仮想３次元空間を示す画像を表示する。
【００１９】
図６は、画像処理装置１０の動作フロー図である。同図に示すように、画像処理装置１０では、まずモーションデータ１８に基づいて、現時刻での３次元モデルの姿勢データを算出する（Ｓ１０１）。具体的には、現時刻の前後のキーフレーム時刻のキーフレーム姿勢データを記憶部１２から読み出し、それを補間することにより、現時刻での３次元モデルの各ボーンの姿勢データを算出する。次に、現時刻の前又は後のキーフレーム時刻に関連づけて、キーフレームテクスチャ座標シフトデータが記憶されているか否かを判断する（Ｓ１０２）。そして、いずれか少なくとも一方のキーフレーム時刻に関連づけて、キーフレームテクスチャ座標シフトデータが記憶されていれば、そのデータに基づいて現時刻での各ポリゴン頂点のテクスチャ座標のシフト量を取得する（Ｓ１０３）。すなわち、現時刻の前後のキーフレーム時刻のキーフレームテクスチャ座標シフトデータを記憶部１２から読み出し、それを補間することにより、現時刻でのテクスチャ座標シフトデータ（テクスチャ座標のシフト量を示す）を算出する。その後、Ｓ１０１で算出された各ボーンの姿勢データ、Ｓ１０３で算出されたテクスチャ座標のシフト量、記憶部１２に記憶されるモデルデータ２０に基づき、３次元モデルの姿勢を更新するとともに、更新後の姿勢の３次元モデルに対して、シフト後のテクスチャ座標により特定されるテクスチャ元画像中の領域の画像をテクスチャとしてマッピングする。そして、現時刻における仮想３次元空間を示す画像を生成し（Ｓ１０４）、それを表示部１６に供給して、表示部１６による仮想３次元空間の表示を更新する（Ｓ１０５）。その後、次の表示更新タイミングを待って（Ｓ１０６）、再びＳ１０１以降の処理を実行する。こうして、Ｓ１０１乃至Ｓ１０５の処理が、所定時間毎に繰り返される。
【００２０】
以上説明した画像処理装置１０によれば、モーションデータに応じた３次元モデルの姿勢変化に応じて、テクスチャ座標がシフトするので、一部のポリゴンだけに極端に変形されたテクスチャがマッピングされるという不具合を解消することができ、違和感のない３次元モデルの表示を得ることができるようになる。すなわち、時刻ｔ＝００００における３次元モデル（図１）に対して、図２に示すテクスチャをマッピングすると、外観正面は図７（ａ）のように自然なものとなるが、本実施形態のようにテクスチャ座標を適宜シフトさせないこととすると、時刻ｔ＝００３５において、３次元モデルの形状は図３に示すように屈曲し、それに伴ってその外観正面は、既に示した図９（ｂ）のように一部が大きく変形した（歪んだ）不自然なものとなる。これに対して、本実施形態に従ってテクスチャ座標を適宜シフトさせると、図７（ｂ）に示すように、上記変形の程度を抑制することができる。こうして、違和感のない３次元モデルの表示を得ることができるようになる。
【図面の簡単な説明】
【００２１】
【図１】本発明の実施形態に係る画像処理装置において姿勢変化する前の３次元モデルを示す斜視図である。
【図２】テクスチャ元画像の一例を示す図である。
【図３】本発明の実施形態に係る画像処理装置において姿勢変化した後の３次元モデルを示す斜視図である。
【図４】本発明の実施形態に係る画像処理装置の構成図である。
【図５】キーフレームテクスチャ座標シフトデータを含むモーションデータの構成を示す図である。
【図６】本発明の実施形態に係る画像処理を示すフロー図である。
【図７】本発明の実施形態に係る画像処理装置により表示される３次元モデルの正面外観を示す図である。
【図８】従来技術による変形前の３次元モデルの表示を説明する図である。
【図９】従来技術による変形後の３次元モデルの表示を説明する図である。
【符号の説明】
【００２２】
１０  画像処理装置、１２  記憶部、  １４  画像処理部、１４ａ  ３次元モデル姿勢変化部、１４ｂ  テクスチャ座標変位部、１６  表示部、１８  モーションデータ、１８ａ  テクスチャ座標シフトデータ、２０  モデルデータ、２０ａ  テクスチャデータ、２０ｂ  ポリゴンデータ。
【図１】
2007102734.tif 000003
【図２】
2007102734.tif 000004
【図３】
2007102734.tif 000005
【図４】
2007102734.tif 000006
【図５】
2007102734.tif 000007
【図６】
2007102734.tif 000008
【図７】
2007102734.tif 000009
【図８】
2007102734.tif 000010
【図９】
2007102734.tif 000011
【手続補正書】
【提出日】平成19年1月10日(2007.1.10)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
仮想３次元空間に配置される３次元モデルを構成する１以上のポリゴンに対し、該ポリゴンのテクスチャ座標により特定されるテクスチャをマッピングし、前記３次元モデルを表示する画像処理装置において、
時刻と、該時刻での前記３次元モデルの姿勢を示すデータと、該時刻での前記３次元モデルを構成する少なくとも一部のポリゴンのテクスチャ座標の変位量と、を関連づけて記憶する記憶手段と、
第１の時刻から第２の時刻に推移する際に、前記各時刻に関連づけて前記記憶手段に記憶されるデータに従って、前記３次元モデルの姿勢を変化させる３次元モデル姿勢変化手段と、
前記各時刻のいずれかに関連づけて前記記憶手段にテクスチャ座標の変位量が記憶される場合に、前記３次元モデル姿勢変化手段により変化される前記３次元モデルを構成する前記ポリゴンのテクスチャ座標を、前記各時刻に関連づけて前記記憶手段に記憶されるテクスチャ座標の変位量を補間してなる変位量に応じて変位させるテクスチャ座標変位手段と、
を含むことを特徴とする画像処理装置。
【請求項２】
仮想３次元空間に配置される３次元モデルを構成する１以上のポリゴンに対し、該ポリゴンのテクスチャ座標により特定されるテクスチャをマッピングし、前記３次元モデルを表示する画像処理方法において、
記憶手段に、時刻と、該時刻での前記３次元モデルの姿勢を示すデータと、該時刻での前記３次元モデルを構成する少なくとも一部のポリゴンのテクスチャ座標の変位量と、を関連づけて記憶する記憶ステップと、
第１の時刻から第２の時刻に推移する際に、前記各時刻に関連づけて前記記憶手段に記憶されるデータに従って、前記３次元モデルの姿勢を変化させる３次元モデル姿勢変化ステップと、
前記各時刻のいずれかに関連づけて前記記憶手段にテクスチャ座標の変位量が記憶される場合に、前記３次元モデル姿勢変化ステップで変化される前記３次元モデルを構成する前記ポリゴンのテクスチャ座標を、前記各時刻に関連づけて前記記憶手段に記憶されるテクスチャ座標の変位量を補間してなる変位量に応じて変位させるテクスチャ座標変位ステップと、
を含むことを特徴とする画像処理方法。
【請求項３】
仮想３次元空間に配置される３次元モデルを構成する１以上のポリゴンに対し、該ポリゴンのテクスチャ座標により特定されるテクスチャをマッピングし、前記３次元モデルを表示する手段、
時刻と、該時刻での前記３次元モデルの姿勢を示すデータと、該時刻での前記３次元モデルを構成する少なくとも一部のポリゴンのテクスチャ座標の変位量と、を関連づけて記憶する記憶手段、
第１の時刻から第２の時刻に推移する際に、前記各時刻に関連づけて前記記憶手段に記憶されるデータに従って、前記３次元モデルの姿勢を変化させる３次元モデル姿勢変化手段、及び
前記各時刻のいずれかに関連づけて前記記憶手段にテクスチャ座標の変位量が記憶される場合に、前記３次元モデル姿勢変化手段により変化される前記３次元モデルを構成する前記ポリゴンのテクスチャ座標を、前記各時刻に関連づけて前記記憶手段に記憶されるテクスチャ座標の変位量を補間してなる変位量に応じて変位させるテクスチャ座標変位手段
としてコンピュータを機能させるためのプログラム。