(57)【要約】【課題】複数の３次元モデルの配置を要求する仮想空間において、３次元モデルとして認識されるような疑似３次元モデルを３次元モデルの代わりに配置する画像処理プログラムを提供すること。【解決手段】まず、モデル画像を生成する（Ｓ５０１）。次に３次元モデルを正面から見たときに包含するサイズのポリゴンを生成し（Ｓ５０２）、Ｓ５０１で生成したモデル画像をこのポリゴンに貼り付け、疑似３次元モデルを生成する（Ｓ５０３）。そして生成した疑似３次元モデルを所定の位置に配置し（Ｓ５０４）、全ての疑似３次元モデルの配置が終了したら、ゲームの本体のプログラムにリターンする。【選択図】　図５
2004046364.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータに画像処理を実行させるための画像処理プログラムであって、
３次元モデルを示すデータを用いて、当該３次元モデルに対する位置、姿勢の関係が所定の関係となるようなカメラから見える当該３次元モデルの画像を生成する画像生成工程と、
所定の方向から見たときの前記３次元モデルを包含するサイズを有するポリゴンに前記画像生成工程で生成した画像を貼り付け、疑似３次元モデルを生成する疑似３次元モデル生成工程と、
前記疑似３次元モデル生成工程で生成した疑似３次元モデルを複数コピーし、夫々仮想空間の所定の位置に配置する配置工程と
をコンピュータに実行させるための画像処理プログラム。
【請求項２】
前記画像生成工程では、前記カメラから見える基準位置に位置する３次元モデルの画像を生成することを特徴とする請求項１に記載の画像処理プログラム。
【請求項３】
前記基準位置は前記疑似３次元モデルを配置する各位置の重心位置であることを特徴とする請求項２に記載の画像処理プログラム。
【請求項４】
前記基準位置は第２のカメラの注視点位置であることを特徴とする請求項２に記載の画像処理プログラム。
【請求項５】
前記配置工程では更に、配置した疑似３次元モデルにおいて貼り付けた画像面が、前記基準位置に対する位置、姿勢の関係が、前記所定の関係となるようなカメラから見えるように、前記疑似３次元モデルを傾けることを特徴とする請求項２乃至４のいずれか１項に記載の画像処理プログラム。
【請求項６】
前記カメラは、プレーヤの視点であることを特徴とする請求項５に記載の画像処理プログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、画像処理プログラムに関するものである。
【０００２】
【従来の技術】
３次元モデルを画面に表示する際、例えば３次元モデルがポリゴンにより形成されている場合には、各ポリゴンの回転、移動計算、光源に対するシェーディング計算、透視変換計算などを行うことで、カメラの位置から見た３次元モデルの画像を生成することができる。更に、３次元モデルにテクスチャを貼る場合にはテクスチャマッピングの処理計算も行う。
【０００３】
最近は３次元モデルを画面に表示する処理、つまり、上記ポリゴンの回転、移動計算やシェーディング計算、透視変換計算、テクスチャマッピング処理計算等はハードウェアにより行われている。これにより、これらの計算処理をソフトウェアで行うよりも格段に高速に実行することができるという効果が得られると共に、より多くのポリゴンを使用したモデル、より多くのモデルを画面に表示することができるという効果が得られる。
【０００４】
【発明が解決しようとする課題】
しかし、複数の３次元モデルを生成し、画面に表示するには、夫々のモデルに対して上記計算を行わなければならず、生成、表示するモデルの数の増加に応じてこれに要する時間、計算コストは大きなものとなる。特にリアルタイムＣＧの分野では、１フレームが１／６０秒で描画される場合、上記複数の３次元モデルは１／６０秒よりもずっと短い時間で生成されなくてはならない。
【０００５】
本発明はこのような点を考慮して成されたものであり、複数の３次元モデルの配置を要求する仮想空間において、３次元モデルとして認識されるような疑似３次元モデルを３次元モデルの代わりに配置する画像処理プログラムを提供することを目的とする。
【０００６】
【課題を解決するための手段】
本発明の目的を達成するために、例えば本発明の画像処理プログラムは以下の構成を備える。
【０００７】
すなわち、コンピュータに画像処理を実行させるための画像処理プログラムであって、
３次元モデルを示すデータを用いて、当該３次元モデルに対する位置、姿勢の関係が所定の関係となるようなカメラから見える当該３次元モデルの画像を生成する画像生成工程と、
所定の方向から見たときの前記３次元モデルを包含するサイズを有するポリゴンに前記画像生成工程で生成した画像を貼り付け、疑似３次元モデルを生成する疑似３次元モデル生成工程と、
前記疑似３次元モデル生成工程で生成した疑似３次元モデルを複数コピーし、夫々仮想空間の所定の位置に配置する配置工程と
をコンピュータに実行させる。
【０００８】
【発明の実施の形態】
以下添付図面を参照して、本発明の好適な実施形態について詳細に説明する。
［第１の実施形態］
本実施形態の画像処理プログラムは、リアルタイムＣＧの分野におけるゲームにおいて、ゲーム画面内に複数の３次元モデルを表示する。以下、この画像処理プログラムについて説明する。
【０００９】
本実施形態における画像処理プログラムを実行する画像処理装置の基本構成を図１に示す。図１は本実施形態における画像処理装置の基本構成を示すブロック図である。
【００１０】
１０１はＣＰＵで、ＲＡＭ１０３やＲＯＭ１０２に格納されたプログラムやデータを用いて本装置全体の制御を行うと共に、後述の各種画像処理を行う。１０２はＲＯＭで、本装置全体の制御を行うためのプログラムや設定データを格納する。１０３はＲＡＭで、外部記憶装置１０６から読み込んだモデルデータ１０６ａ、テクスチャデータ１０６ｂ、画像処理プログラム１０６ｃを記憶するエリア（不図示）、ＣＰＵ１０１が各種の処理を実行する際に用いるワークエリア（不図示）を備えると共に、ＣＰＵ１０１により生成される、カメラの位置から見た３次元モデル（本実施形態ではポリゴンにより形成されているが、これに限定されるものではない）の２次元画像を記憶するエリア１０３ａを備える。１０４はＶＲＡＭで、最終的に表示される画面がＶＲＡＭ１０４に書き込まれることで、表示部１０５に、この画面が表示される。
【００１１】
１０５はＣＲＴや液晶画面などにより構成される表示部、１０６はハードディスクなどの外部記憶装置で、モデルデータ１０６ａ、テクスチャデータ１０６ｂ、そして後述の画像処理プログラム１０６ｃを保存する。モデルデータ１０６ａは表示する３次元モデルの幾何学情報データで、３次元モデルを形成する各ポリゴンの頂点座標、法線ベクトルの成分、属性などが含まれる。テクスチャデータ１０６ｂは３次元モデルに貼り付ける２次元の画像（テクスチャ）のデータで、読み出されたテクスチャは公知のテクスチャマッピング手法によりモデルの所望の位置に貼り付けられる。尚、以上のモデルデータ１０６ａ、テクスチャデータ１０６ｂ、画像処理プログラム１０６ｃはＣＤ−ＲＯＭなどの記憶媒体に記憶しておき、ＣＤ−ＲＯＭドライブなどのドライブ装置により本装置に読み出しても良い。
【００１２】
１０７は操作部で、キーボードやマウス、ゲームパッドやジョイスティックなどのポインティングデバイスにより構成されており、本装置に対して各種の指示を入力することができる。１０８は上述の各部を繋ぐバスである。
【００１３】
以上の構成を備える画像処理装置は、一般のパーソナルコンピュータ、ワークステーション、ゲーム機などを含む。
【００１４】
次に図２Ａ、２Ｂを用いて、上記構成を備える画像処理装置が本実施形態における画像処理プログラムを実行することによって行われる処理について説明する。図２Ａはゲームフィールドに複数配置する疑似３次元モデル（詳細は後述）を生成するのに用いる３次元モデル２０１を示し、図２Ｂは疑似３次元モデルをゲームフィールドに複数配置し、複数の疑似３次元モデルが配置されたゲーム画面を表示するまでの処理を説明する説明図である。ここで疑似３次元モデとは、カメラの位置姿勢に応じてその見え方が変化する（つまり、ゲーム画面においてはあたかも３次元モデルとして見える）２次元の画像であって、この２次元の画像を以下、疑似３次元モデルと呼称する。以下、この疑似３次元モデルを生成する画像処理プログラムについて説明する。
【００１５】
図２Ｂにおいてまず、外部記憶装置１０６に保存されているモデルデータ１０６ａとテクスチャデータ１０６ｂから３次元モデル２０１を生成するのに必要なデータをＲＡＭ３０２内のエリアに読み出す。そして読み出した３次元モデル２０１のモデルデータとテクスチャデータとを用いて、ＣＰＵ１０１は基準位置（詳細は後述）に３次元モデル２０１があるとした場合に、この３次元モデル２０１に対するゲーム中のカメラ（プレーヤ視点としての第１のカメラ）の位置、姿勢と同じ位置、姿勢のカメラ（第２のカメラ）から見える３次元モデル２０１の画像（モデル画像）を公知の方法により生成し、ＲＡＭ１０３内に設けられたメモリ１０３ａに描画する。
【００１６】
３次元モデル２０１に対する相対的な位置、姿勢の関係は第１のカメラ、第２のカメラは共に同じであるが、第２のカメラはあくまで上記モデル画像を生成するために、仮想的に設けられたカメラである。また、ここでは説明の便宜上、ゲーム中のカメラ（第１のカメラ）とモデル画像を生成するためのカメラ（第２のカメラ）とを区別しているが、第１のカメラから見た３次元モデル２０１の画像と、第２のカメラから見た３次元モデル２０１の画像は同じであるので、上記モデル画像として、第１のカメラによる３次元モデル２０１の画像を用いても良い。また本実施形態では上記基準位置として、上記疑似３次元モデルを配置する各位置の重心位置とするが、これに限定されるものではない。
【００１７】
図４に第１のカメラと基準位置との関係を示す。４００は第１のカメラで、ゲーム中のプレーヤの視点を示す。４０１ａ、４０１ｂ、４０１ｃはいずれも疑似３次元モデルを示す。同図では配置する疑似３次元モデルの数は３としているが、これに限定されるものではない。又、この配置に限定されるものではない。同図の場合、基準位置４０２は疑似３次元モデル４０１ａ、４０１ｂ、４０１ｃの各位置の重心位置となっている。
【００１８】
図２Ｂに戻って、次にモデル２０１を正面から見たときに、このモデル２０１を包含するサイズのポリゴン２０２を生成し、このポリゴンに先程生成したモデル画像をテクスチャ画像として貼り付け、疑似３次元モデルを生成する。なお、このモデル画像はモデル２０１が基準位置にあるとした時に第２のカメラから見えるサイズのモデル２０１の画像なので、ポリゴンのサイズとは異なることがある。そこでモデル画像のサイズを調節してポリゴンのサイズにあわせる処理が必要となる。この疑似３次元モデルは先の説明からも判るとおり、モデル画像が貼り付けられた１枚のポリゴンなので、複数生成する処理の負荷は、３次元モデル２０１を複数生成する負荷よりも軽いものとなる。
【００１９】
そして生成した疑似３次元モデルを必要な分だけコピーし、夫々の疑似３次元モデルを本来ゲームフィールドにおいて配置すべき位置に配置する。なお、疑似３次元モデルを表す各ポリゴンは全て第１のカメラに対して正面（モデル画像が貼り付けられた面）を向くように傾ける。このようにすることで第１のカメラからは全ての疑似３次元モデルの正面、すなわちモデル画像を見ることができる。図３に、上記処理の結果であるゲーム画面を示す。
【００２０】
また、以上の処理、すなわち、図２Ｂに示された処理は各フレーム毎に行われる。その結果、第１のカメラと基準位置との位置姿勢関係に応じて疑似３次元モデルが生成されるので、第１のカメラから見た疑似３次元モデルはあたかも３次元的な要素を有する３次元モデルのように見える。
【００２１】
以上の画像処理プログラムのフローチャートを図５に示す。なお、同図に示したフローチャートに従ったプログラム（本実施形態における画像処理プログラム）はゲーム本体のプログラムからサブルーチンとして実行される。
【００２２】
まず、上記モデル画像を生成する（ステップＳ５０１）。次に３次元モデルを正面から見たときに包含するサイズのポリゴンを生成し（ステップＳ５０２）、ステップＳ５０１で生成したモデル画像をこのポリゴンに貼り付け、疑似３次元モデルを生成する（ステップＳ５０３）。そして生成した疑似３次元モデルを所定の位置に配置し（ステップＳ５０４）、全ての疑似３次元モデルの配置が終了したら、ゲームの本体のプログラムにリターンする。
【００２３】
また、３次元モデルとして表示する場合には従来通り第１のカメラから見た３次元モデルの画像を生成し、ＲＡＭ１０３内のエリア１０３ａとは別のエリアに描画すればよい。
【００２４】
以上の説明により本実施形態における画像処理プログラムは、特にリアルタイムＣＧにおいて複数の３次元モデルを生成、表示させたい場合に、第１のカメラとの位置姿勢関係に応じて見え方が変化する疑似３次元モデルを生成し、疑似３次元モデルを複数コピーしてフィールドに配置することで、３次元モデルを複数生成して表示するよりも計算機に負荷をかけずに、より高速に画面を表示することができる。
【００２５】
また本実施形態における画像処理装置は３次元モデルを生成する計算処理はＣＰＵ１０１が行っていたがこれに限定されるものではなく、他にも例えば専用ハードウェアにより行って、その結果をＣＰＵ１０１によりＶＲＡＭ１０４に書き込み、表示部１０５に表示しても良い。
【００２６】
［第２の実施形態］
また、エリア１０３ａのサイズを３次元モデルを描画するためのエリアのサイズよりも小さいサイズにすることで、疑似３次元モデルを描画する速度が上がり、より高速に、且つ計算機により負荷をかけずに複数の疑似３次元モデルを生成、表示することができる。
【００２７】
［第３の実施形態］
第１の実施形態では、上記基準位置として、上記疑似３次元モデルを配置する各位置の重心位置としたが、他にも例えば、上記第１のカメラの注視点位置としても良い。
【００２８】
［第４の実施形態］
以上の処理（例えば図５に示したフローチャートの一部、もしくは全部に従った処理）をプログラムとしてＣＤ−Ｒ、ＲＯＭやＤＶＤ−ＲＯＭ、ＭＯ等の記憶媒体に記憶させ、この記憶媒体に記憶されているプログラムをコンピュータに読み込ませる（インストール、もしくはコピーさせる）ことで、このコンピュータは以上の処理を行うことができる。よって、この記憶媒体も本発明の範疇にあることは明白である。
【００２９】
また、上記実施形態で説明した画像処理は以下の構成を備える画像処理装置でも実現可能である。すなわち、３次元モデルを示すデータを格納する格納手段と、格納手段に格納された３次元モデルを示すデータを用いて、この３次元モデルに対する位置、姿勢の関係が所定の関係となるようなカメラから見える３次元モデルの画像を生成する画像生成手段と、所定の方向から見たときの上記３次元モデルを包含するサイズを有するポリゴンに画像生成手段が生成した画像を貼り付け、疑似３次元モデルを生成する疑似３次元モデル生成手段と、疑似３次元モデル生成手段が生成した疑似３次元モデルを複数コピーし、夫々仮想空間の所定の位置に配置する配置手段とを備える画像処理装置により上記実施形態で説明した一連の処理を行うことができるので、上記構成を備える装置は本発明の範疇にあることは明確である。
【００３０】
【発明の効果】
以上の説明により、本発明によって、複数の３次元モデルの配置を要求する仮想空間において、３次元モデルとして認識されるような疑似３次元モデルを３次元モデルの代わりに配置することができる。
【図面の簡単な説明】
【図１】本発明の実施形態における画像処理装置の基本構成を示すブロック図である。
【図２Ａ】ゲームフィールドに複数配置する疑似３次元モデルを生成するのに用いる３次元モデルを示す図である。
【図２Ｂ】疑似３次元モデルをゲームフィールドに複数配置し、複数の疑似３次元モデルが配置されたゲーム画面を表示するまでの処理を説明する説明図である。
【図３】図２Ｂに示した処理結果のゲーム画面を示す図である。
【図４】第１のカメラと基準位置との関係を示す図である。
【図５】本発明の第１の実施形態における画像処理プログラムのフローチャートである。
【図１】
2004046364.tif 000003
【図２Ａ】
2004046364.tif 000004
【図２Ｂ】
2004046364.tif 000005
【図３】
2004046364.tif 000006
【図４】
2004046364.tif 000007
【図５】
2004046364.tif 000008