(57)【要約】【課題】  キャラクタに与えられる作用をすべて想定してキャラクタのモデルを生成するのは手間がかかる。【解決手段】  描画処理装置１００は、描画対象物の３次元モデル情報をもとに描画データを生成して表示する基本モデル表示処理部１０と、描画対象物の３次元モデルに所定の作用を与える処理を行う作用モデル処理部３０とを含む。基本モデル記憶部１２は、描画対象物の基本形態を定義する基本モデルファイル２０を記憶する。作用モデル記憶部３２は、描画対象物の基本形態の同一性を保持したバリエーションの形態を生成するために基本モデルに対して与える作用を記述した作用モデルファイル５０を記憶する。作用処理部４２は、作用モデルファイル５０に記述された作用を描画対象物の基本モデルに適用することにより、基本モデルを変化させる。レンダリング部１６は、変化後の基本モデルにもとづいて描画対象物のバリエーションを表示するための描画処理を行う。【選択図】  図１
2007052508.tif 000002
【特許請求の範囲】
【請求項１】
描画対象物の３次元の基本形態を定義する基本モデルを記述した基本モデルファイルと、前記描画対象物の基本形態の同一性を保持したバリエーションの形態を生成するために前記基本モデルに対して与える作用を記述した作用モデルファイルとを記憶する記憶部と、
前記作用モデルファイルに記述された前記作用を前記基本モデルに適用することにより、前記基本モデルを変化させる作用処理部と、
変化後の前記基本モデルにもとづいて前記描画対象物のバリエーションを画面に表示するための描画処理を行う描画処理部とを含むことを特徴とする描画処理装置。
【請求項２】
前記作用処理部は、前記記憶部に記憶された複数の異なる作用モデルファイルに記述された複数の異なる作用を前記基本モデルに多重に適用することにより、前記基本モデルを変化させることを特徴とする請求項１に記載の描画処理装置。
【請求項３】
前記作用モデルファイルに記述される前記作用は、前記基本モデルの形状を局所的に変化させる作用であることを特徴とする請求項１または２に記載の描画処理装置。
【請求項４】
前記作用モデルファイルに記述される前記作用は、前記基本モデルの少なくとも一部のポリゴンの頂点を移動する関数で与えられることを特徴とする請求項１から３のいずれかに記載の描画処理装置。
【請求項５】
前記作用モデルファイルに記述される前記作用は、前記基本モデルのポリゴンの頂点色を変化させる関数で与えられることを特徴とする請求項１から４のいずれかに記載の描画処理装置。
【請求項６】
前記作用モデルファイルに記述される前記作用は、前記基本モデルのポリゴン表面に貼り付けられるテクスチャを指定する記述で与えられることを特徴とする請求項１から５のいずれかに記載の描画処理装置。
【請求項７】
前記作用処理部は、前記作用モデルファイルに記述された前記作用を、前記作用モデルの適用が想定された前記描画対象物とは異なる他の描画対象物の基本モデルに適用することにより、前記他の描画対象物の基本モデルを変化させ、
前記描画処理部は、前記他の描画対象物の変化後の基本モデルにもとづいて前記他の描画対象物の想定外のバリエーションを表示するための描画処理を行うことを特徴とする請求項１から６のいずれかに記載の描画処理装置。
【請求項８】
ネットワークに接続され、仮想的な共有空間において描画対象物の描画処理を行う描画処理装置であって、
描画対象物の３次元の基本形態を定義する基本モデルを記述した基本モデルファイルと、前記描画対象物の基本形態の同一性を保持したバリエーションの形態を生成するために前記基本モデルに対して与える作用を記述した作用モデルファイルとをネットワークを介して受信する受信部と、
受信された前記作用モデルファイルに記述された前記作用を前記基本モデルに適用することにより、前記基本モデルを変化させる作用処理部と、
変化後の前記基本モデルにもとづいて前記描画対象物のバリエーションを画面に表示するための描画処理を行う描画処理部とを含むことを特徴とする描画処理装置。
【請求項９】
描画対象物の３次元の基本形態を定義する基本モデルに対して所定の作用を与えることにより、前記描画対象物の基本形態の同一性を保持したバリエーションの形態が得られる場合に、前記基本モデルに対して与える前記所定の作用を記述した作用モデルファイルを取得し、取得された前記作用モデルファイルに記述された前記所定の作用を前記基本モデルに適用することにより、前記基本モデルを変化させ、変化後の前記基本モデルにもとづいて前記描画対象物のバリエーションを画面に表示するための描画処理を行うことを特徴とする描画処理方法。
【請求項１０】
描画対象物の３次元の基本形態を定義する基本モデルに対して所定の作用を与えることにより、前記描画対象物の基本形態の同一性を保持したバリエーションの形態が得られる場合に、前記基本モデルに対して与える前記所定の作用を記述した作用モデルファイルを取得して記憶するステップと、
前記作用モデルファイルに記述された前記所定の作用を前記基本モデルに適用することにより、前記基本モデルを変化させるステップと、
変化後の前記基本モデルにもとづいて前記描画対象物のバリエーションを画面に表示するための描画処理を行うステップとをコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、描画処理装置および描画処理方法に関する。
【背景技術】
【０００２】
パーソナルコンピュータやゲーム専用機において、ユーザがキャラクタなどの３次元オブジェクトを操作することでプレイすることができるゲームやシミュレーションなどのアプリケーションが利用されている。コンピュータやゲーム機に搭載されるグラフィック機能の性能向上により、高品質の画像をリアルタイムで生成して表示することが可能となり、このようなアプリケーションにおいて、３次元オブジェクトの操作性や描画品質に対するユーザの要求レベルが一層高くなってきている。
【０００３】
また、ゲームなどのアプリケーションの楽しみの幅を広げるために、ゲームなどに登場するキャラクタは、いろいろな種類があらかじめ用意されており、ユーザの好みによって選択できるようになっていることが多い。ゲームソフトウエアの開発にあたって、数多くの種類のキャラクタをデザインすることがユーザの要求を満足させるために重要なファクターの一つとなっている。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ゲーム等のアプリケーションにおいて、ユーザの操作するキャラクタは、その行動によっていろいろな形態に変化する。たとえば、地上を歩くときと、空を飛ぶときで姿が変わったり、ゲームプレイの進行状況によってレベルアップしたり、各種のアイテムを装備したりする。また、あるキャラクタの動作により、他のキャラクタなどのオブジェクトに作用が加わり、オブジェクトが変化することもある。たとえば、キャラクタが歩いたとき、地面に足跡が残ったり、格闘ゲームのような場合に、相手のキャラクタに傷跡がつくなどの作用結果が加わる。
【０００５】
ゲームソフトウエアの開発の際、キャラクタの動作によってもたらされるあらゆる結果をあらかじめ想定し、キャラクタモデルを用意しておかなければならない。また、作用結果が複数重なる状況、たとえば、キャラクタが剣で切られながら、蹴り飛ばされるといった複合的な状況も想定して、キャラクタモデルを用意しなければならない。想定されるすべてのキャラクタモデルについてあらかじめデザインする必要があり、キャラクタモデルのデザインは煩雑で、工数のかかる作業となっている。
【０００６】
また、ネットワーク型の対戦ゲームなどのアプリケーションでは、ある端末においてキャラクタのモデルが変更されると、更新情報を他の端末に送信する必要があり、更新後のキャラクタモデルのポリゴンデータを転送するのに時間がかかり、リアルタイムに描画処理することが難しい。
【０００７】
本発明はこうした課題に鑑みてなされたものであり、その目的は、描画対象オブジェクトのバリエーションを効率良く描画することのできる描画処理装置および描画処理方法を提供することにある。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、本発明のある態様の描画処理装置は、描画対象物の３次元の基本形態を定義する基本モデルを記述した基本モデルファイルと、前記描画対象物の基本形態の同一性を保持したバリエーションの形態を生成するために前記基本モデルに対して与える作用を記述した作用モデルファイルとを記憶する記憶部と、前記作用モデルファイルに記述された前記作用を前記基本モデルに適用することにより、前記基本モデルを変化させる作用処理部と、変化後の前記基本モデルにもとづいて前記描画対象物のバリエーションを画面に表示するための描画処理を行う描画処理部とを含む。
【０００９】
ここで「描画対象物の基本形態」とは、描画対象物の形状のみならず、色やテクスチャなどの非形状の属性も含めた基本形態をいう。「描画対象物の基本形態の同一性を保持する」とは、描画対象物の基本形態が損なわれない状態であり、たとえば、描画対象物の３次元ポリゴンモデルにおけるポリゴンの接続状態などのトポロジが変化しないことをいう。
【００１０】
本発明の別の態様もまた、描画処理装置である。この装置は、ネットワークに接続され、仮想的な共有空間において描画対象物の描画処理を行う描画処理装置であって、描画対象物の３次元の基本形態を定義する基本モデルを記述した基本モデルファイルと、前記描画対象物の基本形態の同一性を保持したバリエーションの形態を生成するために前記基本モデルに対して与える作用を記述した作用モデルファイルとをネットワークを介して受信する受信部と、受信された前記作用モデルファイルに記述された前記作用を前記基本モデルに適用することにより、前記基本モデルを変化させる作用処理部と、変化後の前記基本モデルにもとづいて前記描画対象物のバリエーションを画面に表示するための描画処理を行う描画処理部とを含む。
【００１１】
本発明のさらに別の態様は、描画処理方法である。この方法は、描画対象物の３次元の基本形態を定義する基本モデルに対して所定の作用を与えることにより、前記描画対象物の基本形態の同一性を保持したバリエーションの形態が得られる場合に、前記基本モデルに対して与える前記所定の作用を記述した作用モデルファイルを取得し、取得された前記作用モデルファイルに記述された前記所定の作用を前記基本モデルに適用することにより、前記基本モデルを変化させ、変化後の前記基本モデルにもとづいて前記描画対象物のバリエーションを画面に表示するための描画処理を行う。
【００１２】
なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、コンピュータプログラム、データ構造などの間で変換したものもまた、本発明の態様として有効である。
【発明の効果】
【００１３】
本発明によれば、描画対象オブジェクトのバリエーションを効率良く生成し、描画処理することができる。
【発明を実施するための最良の形態】
【００１４】
実施の形態１
図１は、実施の形態１に係る描画処理装置１００の構成図である。描画処理装置１００は、描画対象オブジェクトの３次元モデル情報をもとに表示装置に表示するための描画データを生成する基本モデル表示処理部１０と、描画対象オブジェクトの３次元モデルに所定の作用を与え、３次元モデルを局所的に変化させる処理を行う作用モデル処理部３０とを含む。
【００１５】
描画対象オブジェクトの３次元モデルは、描画対象オブジェクトの基本的な形態を定義づけるものであり、作用モデル処理部３０により作用が加えられても、描画対象オブジェクトのトポロジーなどの同一性は損なわれないことから、「基本モデル」と呼ぶことにする。それに対して、描画対象オブジェクトの基本モデルに加えられる作用をモデル化したものを「作用モデル」と呼ぶ。また、作用が加わった後の描画対象オブジェクトの基本形態を「バリエーションの形態」という。
【００１６】
基本モデル表示処理部１０は、基本モデル記憶部１２、基本モデル読取部１４、レンダリング部１６、および画面出力部１８を含む。
【００１７】
基本モデル記憶部１２には、描画対象オブジェクトのポリゴンデータ等の３次元モデル情報を記述した基本モデルファイル２０が格納されている。
【００１８】
図２（ａ）に基本モデルファイル２０のデータ構造を示す。基本モデルファイル２０には、基本モデル形状情報２２と基本モデル非形状情報２４が記述される。基本モデル形状情報２２は、頂点座標、頂点色、テクスチャ座標などオブジェクトの３次元形状に関する情報である。基本モデル形状情報２２には、ポリゴンの情報やシーングラフなどの連結情報も含まれる。基本モデル非形状情報２４は、オブジェクトのポリゴン表面に貼り付けるテクスチャデータ、オブジェクトに照射される光の強さや方向などオブジェクトの３次元形状以外の情報である。
【００１９】
基本モデル読取部１４は、基本モデル記憶部１２から基本モデルファイル２０を読み取り、基本モデルファイル２０から基本モデル形状情報２２と基本モデル非形状情報２４を抽出する。
【００２０】
通常の描画処理の手順であれば、基本モデル形状情報２２と基本モデル非形状情報２４は、レンダリング部１６に供給され、レンダリング部１６において描画処理が行われるが、本実施の形態では、基本モデル形状情報２２と基本モデル非形状情報２４は作用モデル処理部３０に供給され、作用モデル処理部３０においてオブジェクトの基本モデルに対して所定の作用が加えられる。レンダリング部１６は、所定の作用が加えられた後の基本モデルをもとに描画対象オブジェクトの描画処理を行う。
【００２１】
作用モデル処理部３０は、作用モデル記憶部３２、作用モデル読取部３４、基本モデル連結情報抽出部３６、作用モデル連結情報抽出部３８、作用領域決定部４０、作用処理部４２、および作用モデル生成部４４を含む。
【００２２】
基本モデル表示処理部１０から供給された基本モデル形状情報２２は、基本モデル連結情報抽出部３６と作用処理部４２に入力され、基本モデル非形状情報２４は、作用処理部４２に入力される。
【００２３】
作用モデル記憶部３２には、描画対象オブジェクトの基本モデルに加える作用をモデル化した作用モデルの情報を記述した作用モデルファイル５０が格納されている。
【００２４】
図２（ｂ）に作用モデルファイル５０のデータ構造を示す。作用モデルファイル５０には、作用モデル形状情報５２、作用モデル非形状情報５４、および作用モデル作用情報５６が記述される。
【００２５】
作用モデル形状情報５２は、作用モデルの頂点座標、頂点色、テクスチャ座標など３次元形状に関する情報である。作用モデル形状情報５２には、作用モデルのポリゴンの頂点インデックス情報などの連結情報も含まれる。作用モデル非形状情報５４は、作用モデルのポリゴン表面に貼り付けられるテクスチャデータ、照射される光の情報など作用モデルの形状以外の情報である。作用モデル作用情報５６は、作用を関数で規定した作用関数など作用内容をオペレーションの形で記述した情報である。
【００２６】
作用モデル読取部３４は、作用モデル記憶部３２から作用モデルファイル５０を読み取り、作用モデル形状情報５２、作用モデル非形状情報５４および作用モデル作用情報５６を抽出する。
【００２７】
作用モデル読取部３４が作用モデル記憶部３２から読み出す作用モデルファイル５０は、基本モデル表示処理部１０が描画しようとしている描画対象オブジェクトの基本モデルに適用するためにあらかじめ準備されたものでなくてもよい。すなわち、作用モデルファイル５０は、当該描画対象オブジェクト用の作用モデルとして作用モデル記憶部３２に前もって登録されたものでなくてもよい。この場合、当該描画対象オブジェクトの基本モデルに対して想定外の作用モデルが適用されることになる。想定外の作用モデルファイル５０は、ネットワークを介して他の描画処理装置１００から取得され、作用モデル記憶部３２に一時的に記憶されてもよい。
【００２８】
作用モデル形状情報５２は、作用モデル連結情報抽出部３８と作用処理部４２に入力され、作用モデル非形状情報５４と作用モデル作用情報５６は作用処理部４２に入力される。
【００２９】
基本モデル連結情報抽出部３６は、入力された基本モデル形状情報２２から基本モデルの連結情報を抽出し、抽出された基本モデルの連結情報を作用領域決定部４０に与える。一方、作用モデル連結情報抽出部３８は、入力された作用モデル形状情報５２から作用モデルの連結情報を抽出し、抽出された作用モデルの連結情報を作用領域決定部４０に与える。この連結情報は、一例として、基本モデルの各ポリゴンの頂点と辺の接続情報を示す頂点インデックスの形式で与えられる。
【００３０】
作用領域決定部４０は、描画対象オブジェクトの基本モデルの連結情報と、描画対象オブジェクトに加えられる作用モデルの連結情報を参照し、描画対象オブジェクトに対して作用が加わる領域を決定し、決定した作用領域の情報を作用処理部４２に与える。
【００３１】
作用処理部４２は、入力された基本モデル形状情報２２、基本モデル非形状情報２４、作用モデル形状情報５２、作用モデル非形状情報５４、および作用モデル作用情報５６を参照して、作用領域決定部４０により決定された作用領域内で、描画対象オブジェクトの基本モデルに対して作用モデルにもとづいた作用を与える。
【００３２】
より具体的には、作用処理部４２は、作用関数にしたがって、基本モデルの形状に作用モデルの形状を適用することにより、基本モデルの形状を変化させ、作用後基本モデル形状情報７２を生成する。また、作用処理部４２は、基本モデルの非形状情報に作用モデルの非形状情報を適用することにより、基本モデルのテクスチャなどの非形状の属性を変化させ、作用後基本モデル非形状情報７４を生成する。このようにして、作用処理部４２により、描画対象オブジェクトの基本モデルの形態が、形状および非形状の両面で変化する。この形態変化は、描画対象オブジェクトの基本形態の同一性を損なわない範囲で生じるものであって、局所的あるいは限定的なものであることもあれば、形態全体に及ぶ場合もある。
【００３３】
作用処理部４２は、生成された作用後基本モデル形状情報７２と作用後基本モデル非形状情報７４をレンダリング部１６に与える。レンダリング部１６は、作用後基本モデル形状情報７２と作用後基本モデル非形状情報７４を参照し、作用モデルが作用したことで変化した後の基本モデルにもとづいて描画対象オブジェクトを描画処理することで、描画対象オブジェクトのバリエーションの描画データを生成する。レンダリング部１６は、生成された描画データを画面出力部１８に与え、画面出力部１８は表示装置の画面に描画データを表示する。
【００３４】
ここで、作用モデル処理部３０が描画対象オブジェクトの基本モデルに作用させた作用モデルが、当該描画対象オブジェクト用の作用モデルとして登録されたものではなかった場合、この作用モデルを当該描画対象オブジェクトの作用モデルとして新たに登録する処理が行われる。このために、作用処理部４２は、当該描画対象オブジェクトの基本モデルに作用させた作用モデル形状情報５２、作用モデル非形状情報５４、および作用モデル作用情報５６を作用モデル生成部４４に与える。
【００３５】
作用モデル生成部４４は、作用モデル形状情報５２、作用モデル非形状情報５４、作用モデル作用情報５６を用いて、当該描画対象オブジェクト用の更新作用モデルファイル６０を生成し、作用モデル記憶部３２に当該描画対象オブジェクト用の新たな作用モデルとして記憶する。これにより、当該描画対象オブジェクトの基本モデルに対してあらかじめ用意されていなかった作用モデルであっても、当該描画対象オブジェクトの基本モデルに作用させるべき作用モデルとして今後利用することが可能となる。これは、作用モデルさえ提供すれば、異なる描画対象オブジェクトの基本モデルに対しても同じ作用モデルを用いて作用を与え、基本モデルに対するバリエーションを生成することができることを意味し、描画対象物の多様な形態を工数をかけずに生み出すことができるという効果がある。
【００３６】
更新作用モデルファイル６０は、作用モデルファイル５０に限定を加えたものである。いったん、基本モデルと作用モデルファイル５０とが結びつくと、作用領域決定部４０において、毎回、作用領域を演算するのは無駄であるため、演算結果が更新作用モデルファイル６０に書き込まれ、キャッシュされる。非形状情報についても同様であり、演算結果を更新作用モデルファイル６０に書き込むことで、次回の演算を高速に行うことができる。作用モデルファイル５０は、いずれの描画対象オブジェクトの基本モデルにも普遍的に使われるが、更新作用モデルファイル６０は、この作用モデルが適用された当該描画対象オブジェクトの基本モデルに専用のものになる。なお、別の作用モデルファイル５０が当該描画対象オブジェクトに適用され、新たな形態変化が加わると、更新作用モデルファイル６０は、再計算後の更新結果に書き換えられる。
【００３７】
図３は、作用領域決定部４０による作用領域決定手順を説明するフローチャートである。
【００３８】
作用領域決定部４０は、描画対象オブジェクトの基本モデル形状情報２２を取得し（Ｓ１０）、描画対象オブジェクトに作用させる作用モデル形状情報５２を取得する（Ｓ１２）。
【００３９】
作用領域決定部４０は、基本モデル形状情報２２と作用モデル形状情報５２を参照して、描画対象オブジェクトの基本モデルと、描画対象オブジェクトに作用させる作用モデルとが、３次元空間において交差するかどうかを検出する（Ｓ１４）。交差領域が検出されなければ（Ｓ１４のＮ）、処理を終了する。
【００４０】
交差領域が検出された場合（Ｓ１４のＹ）、作用領域決定部４０は、作用モデル作用情報５６を取得し（Ｓ１６）、作用モデル作用情報５６を参照して、交差領域に作用が及ぶかどうかを判定する（Ｓ１８）。作用の有無を判定する理由は、作用の内容によっては、交差領域が存在しても作用することがありえないこともあるからである。作用することがありえない場合（Ｓ１８のＮ）、処理を終了する。
【００４１】
作用領域決定部４０が交差領域に作用が及ぶと判定した場合（Ｓ１８のＹ）、作用領域決定部４０は、作用領域を決定し（Ｓ２０）、描画対象オブジェクトの基本モデルに対する作用領域情報として出力する（Ｓ２２）。
【００４２】
図４は、作用処理部４２による作用処理手順を説明するフローチャートである。
【００４３】
作用処理部４２は、描画対象オブジェクトの基本モデルに対する作用領域情報を作用領域決定部４０から取得する（Ｓ３０）。また、作用処理部４２は、基本モデル形状情報２２を取得する（Ｓ３２）。
【００４４】
作用処理部４２は、作用領域情報と基本モデル形状情報２２をもとに作用領域内の基本モデルのポリゴンを特定する（Ｓ３４）。
【００４５】
作用処理部４２は、作用モデル形状情報５２と作用モデル作用情報５６を取得する（Ｓ３６）。作用処理部４２は、作用モデル形状情報５２と作用モデル作用情報５６にもとづいて、作用領域内の基本モデルのポリゴンを変形する（Ｓ３８）。
【００４６】
作用処理部４２は、ポリゴンの変形結果にもとづいて作用後基本モデル形状情報７２を生成し、出力する（Ｓ４０）。
【００４７】
なお、ここでは説明しなかったが、作用モデルファイル５０に作用モデル非形状情報５４が定義されている場合は、作用処理部４２は、基本モデルの作用領域内において、色を変えたり、テクスチャを貼り付けるなどの形状以外の作用を加え、作用後基本モデル非形状情報７４を生成し、出力する。
【００４８】
以下、作用モデルファイル５０の記述形式について説明し、具体的な例により、描画対象オブジェクトの基本モデルに作用モデルが適用され、基本モデルに作用が加わる様子を説明する。
【００４９】
作用モデルファイル５０は、レイヤ単位で定義することができる。各レイヤの作用モデルファイル５０に記述された作用を重ね合わせて合成することで、基本モデルに複数の作用モデルファイル５０に記述された作用を適用することができる。
【００５０】
作用は、レイヤ毎に各種のルールを記述することで与えられる。ルールは、テキスト形式で、ファイルに記述される。各レイヤのルールとして、レイヤの属性情報、ルールが適用される範囲、高さ、色、シェーダプログラム、作用演算のパラメータなどが記述される。
【００５１】
各レイヤの作用を合成する場合、各レイヤの属性として記述される置き換え、加算、減算などのレイヤ合成タイプにしたがって、高さ、色、シェーダなどの各ルールに対して、合成演算がおこなわれる。
【００５２】
各レイヤのルールは、BEGIN_RULEとEND_RULEの間に記述される。レイヤの属性情報には、下記のものがある。属性情報がない場合は、デフォルト値が使われる。
NAME レイヤー名
TYPE レイヤー合成タイプ（０：置き換え、１：加算、２：減算）
【００５３】
以下は、レイヤの記述例である。
BEGIN_RULE // ルールの始まり
NAME Layer001 // レイヤー名
TYPE 0 // 置き換え
…
END_RULE // ルールの終わり
【００５４】
次に、BEGIN_RULEとEND_RULEの間に記述される各種ルールを説明する。
（１）領域ルール
領域ルールは、BEGIN_BOUNDARYとEND_BOUNDARYの間に領域情報を記述することにより与えられる。領域情報が記述されていない場合は、デフォルト値としてグローバル領域が使われる。
【００５５】
領域の属性情報には、下記のものがある。
TYPE  領域タイプ（０：グローバル、１：円、２：矩形）
EDGE_LENGTH  エッジ長
【００５６】
領域のタイプに応じた位置や半径などのパラメータは、BEGIN_PARAMとEND_PARAMの間に記述される。領域タイプが円の場合は、以下の例のように、一般的には楕円を示すために中心座標と長径、短径を示す４つのパラメータが必要である。領域タイプが矩形の場合は、矩形領域の対角線の両端の座標値を示す４つのパラメータが必要である。
【００５７】
以下は、領域ルールの記述例である。
BEGIN_RULE // ルールの始まり
NAME Layer001 // レイヤー名
TYPE 0 // 置き換え
BEGIN_BOUNDARY // 領域ルールの始まり
TYPE 1 // 領域のタイプ（１：円）
EDGE_LENGTH 30 // エッジ長
BEGIN_PARAM // 領域のタイプに応じたパラメータの始まり
0.0 // 中心のｘ座標
-5.0 // 中心のｚ座標
100.0 // ｘ方向径
120.0 // ｚ方向径
END_PARAM // 領域のタイプに応じたパラメータの終わり
END_BOUNDARY // 領域ルールの終わり
…
END_RULE // ルールの終わり
【００５８】
（２）高さルール
高さルールは、BEGIN_AFFECTORHEIGHTとEND_AFFECTORHEIGHTの間に高さ情報を記述することにより与えられる。高さ情報を持たないレイヤは、レイヤ合成の際、高さ合成演算の対象外となる。
【００５９】
高さの属性情報には、次のものがある。
TYPE  高さタイプ（０：一定値、１：ランダムノイズ（パーリンノイズ））
【００６０】
高さのタイプに応じた高さやノイズパラメータなどのパラメータは、BEGIN_PARAMとEND_PARAMの間に記述される。高さタイプが一定値の場合は、その一定値の高さを示す１つのパラメータが必要であり、高さタイプがパーリン（Perlin）ノイズなどのランダムノイズの場合は、以下の例に示す７つのパラメータが必要である。
【００６１】
以下は、高さルールの記述例である。
BEGIN_RULE // ルールの始まり
BEGIN_AFFECTORHEIGHT // 高さルールの始まり
TYPE 1 // 高さのタイプ（１：ランダムノイズ（パーリンノイズ））
BEGIN_PARAM // 高さのタイプに応じたパラメータの始まり
1 //乱数の初期化子
4 // 重ね合わせ回数
60 // 振幅
0.75 // 振幅の増加（減少）割合
0.04 // 周波数
0.175 // 周波数の増加（減少）割合
60 // 高さのオフセット
END_PARAM // 高さのタイプに応じたパラメータの終わり
END_AFFECTORHEIGHT // 高さルールの終わり
…
END_RULE // ルールの終わり
【００６２】
（３）色ルール
色ルールは、BEGIN_AFFECTORCOLORとEND_AFFECTORCOLORの間に色情報を記述することにより与えられる。色情報を持たないレイヤは、レイヤ合成の際、色合成演算の対象外となる。
【００６３】
色の属性情報には、次のものがある。
TYPE  色タイプ（０：一定値、１：ランダムノイズ（パーリンノイズ））
【００６４】
上記の色タイプに応じた色やノイズパラメータなどのパラメータは、BEGIN_PARAMとEND_PARAMの間に記述される。色タイプが一定値の場合は、ＲＧＢの各カラー成分を示す３つのパラメータが必要となり、色タイプがランダムノイズの場合は、以下の例に示す９つのパラメータが必要である。
【００６５】
以下は、色ルールの記述例である。
BEGIN_RULE // ルールの始まり
BEGIN_AFFECTORCOLOR // 色ルールの始まり
TYPE 1 // 色のタイプ（１：ランダムノイズ（パーリンノイズ））
BEGIN_PARAM // 色のタイプに応じたパラメータの始まり
0.2 // 基準カラー値のＲ成分
1.0 // 基準カラー値のＧ成分
0.5 // 基準カラー値のＢ成分
1 // 乱数の初期化子
2 // 重ね合わせ回数
2.0 // 振幅
0.5 // 振幅の増加（減少）割合
4 // 周波数
0.5 // 周波数の増加（減少）割合
END_PARAM // 色のタイプに応じたパラメータの終わり
END_AFFECTORCOLOR // 色ルールの終わり
…
END_RULE // ルールの終わり
【００６６】
（４）シェーダルール
シェーダルールは、BEGIN_AFFECTORSHADERとEND_AFFECTORSHADERの間にシェーダ情報を記述することにより与えられる。シェーダ情報を持たないレイヤは、レイヤ合成の際、シェーダ合成演算の対象外となる。
【００６７】
シェーダルールの属性情報は、定義されていない。シェーダルールの中には、複数のシェーダ情報を定義することができる。複数のシェーダ情報は、各シェーダ情報に定義された重みで合成される。
【００６８】
シェーダ情報は、BEGIN_SHADERとEND_SHADERの間に記述され、記述されるパラメータは、ＩＤ、ファイル名、重みである。ファイル名で指定されるテクスチャがポリゴン表面にマッピングされる。シェーダ情報として、シェーダアルゴリズムを指定してもよい。
【００６９】
以下は、シェーダルールの記述例である。
BEGIN_RULE // ルールの始まり
BEGIN_AFFECTORSHADER // シェーダールールの始まり
shrb01L.jpg // ＩＤ
art/shrb01L.jpg // ファイル名
1.0 // 重み
END_AFFECTORSHADER // シェーダールールの終わり
…
END_RULE // ルールの終わり
【００７０】
図５（ａ）、（ｂ）は、作用モデルファイル５０に記述される作用モデル形状情報５２および作用モデル非形状情報５４の一例を示す図である。
【００７１】
この例では、作用モデルファイル５０は、BEGIN_RULEとEND_RULEの間に、同図の作用モデル形状情報５２と作用モデル非形状情報５４が記述されており、レイヤタイプは１、すなわち加算であり、元の基本モデルに作用モデルが加算されることになる。
【００７２】
図５（ａ）に示すように、作用モデル形状情報５２は、領域ルール５２ａと高さルール５２ｂを含む。作用領域は楕円の領域で指定され、高さはパーリンノイズで生成される。
【００７３】
図５（ｂ）に示すように、作用モデル非形状情報５４は、色ルール５４ａとシェーダルール５４ｂを含む。ポリゴンの頂点色はパーリンノイズで生成され、ファイル名で指定されたテクスチャがポリゴン表面に貼り付けられる。
【００７４】
図６は、描画対象オブジェクトの基本モデルに図５（ａ）、（ｂ）の作用モデルが適用された例を示す図である。
【００７５】
描画対象オブジェクトの基本モデルは、同図の地表面２００である。地表面２００に図５（ａ）の作用モデル形状情報５２が適用されることにより、地表面２００の作用領域にランダムな高さをもつ山２１０が形成される。また、ここでは図示しないが、図５（ｂ）の作用モデル非形状情報５４が適用されることにより、山２１０の頂点色がパーリンノイズで生成され、山２１０の表面にはテクスチャが貼り付けられる。
【００７６】
図７（ａ）〜（ｄ）は、複数のレイヤにわたって作用が定義される場合の一例として、４つのレイヤの作用モデルファイル５０ａ〜ｄを示す図である。
【００７７】
各レイヤの作用モデルファイル５０ａ〜ｄは、領域ルールと高さルールを含む形状情報と、色ルールを含む非形状情報とを含む。作用領域は円の領域で指定され、高さは一定値で指定される。色はランダムノイズで生成される。シェーダルールは指定されていないため、テクスチャは貼り付けられない。
【００７８】
図８は、描画対象オブジェクトの基本モデルに図７（ａ）〜（ｄ）の作用モデルが適用された例を示す図である。
【００７９】
描画対象オブジェクトの基本モデルは、同図の地表面２００である。図７（ａ）〜（ｄ）に示す各レイヤの作用モデルは、円筒を生成するものである。まず、作用処理部４２は、図７（ａ）の作用モデルファイル５０ａを参照して、地表面２００に対して円筒２２０を生成させる。円筒２２０は、高さがマイナス１５であるから、地表面２００が窪む。その状態で、作用処理部４２は、図７（ｂ）の作用モデルファイル５０ｂを参照して、円筒２２０の作用領域よりも狭い作用領域において、高さがマイナス５の円筒２２２を重ね合わせる。
【００８０】
次に、作用処理部４２は、図７（ｃ）の作用モデルファイル５０ｃを参照して、さらに狭い作用領域において、高さが５の円筒２２４を重ね合わせ、さらに、図７（ｄ）の作用モデルファイル５０ｄにしたがって、高さが１０の円筒２２６を重ね合わせる。
【００８１】
このようにして、複数のレイヤの作用モデルが合成されることにより、地表面２００は同図のように複数の円筒が重ね合わさった形に変形する。ここでは図示しないが、各円筒の表面は、各作用モデルファイル５０ａ〜ｄに定義されたパーリンノイズのパラメータにしたがって生成された色で着色される。
【００８２】
作用モデルファイル５０に記述される他の作用の例として、重力、摩擦係数など描画対象オブジェクトに作用する物理量に関するパラメータを用いた作用関数が作用情報として記述されてもよい。また、ユーザの嗜好性などのユーザの個別情報を作用情報として記述し、たとえば、ユーザの好みに合わせて描画対象オブジェクトの基本形態を変化させてもよい。
【００８３】
本実施の形態によれば、描画対象オブジェクトの基本モデルに作用モデルを適用することによって基本モデルを同一性を損なわない範囲で変化させ、所定の作用が加わった描画対象オブジェクトのバリエーションを生成して描画することができる。作用結果毎に描画対象オブジェクトのモデルを設計する必要はなく、基本モデルに対してバリエーション毎に作用モデルだけを設計すればよいから、個別の作用に応じた描画対象オブジェクトの３次元モデル設計の煩雑さが解消される。
【００８４】
また、描画対象オブジェクトの基本モデルに多重に作用モデルを適用していくことによって、複数の作用により生じた変化を簡単に表現することができる。たとえば、隕石により地表面にクレータが生じるという作用をモデル化する場合、１つの隕石が地表面の一部の領域に窪みを生じさせる作用を関数で定義しておけば、その関数をパラメータを変えて複数作用させることで、複数の隕石が落ちた場合の地表面の変化を生成することができる。
【００８５】
このように、複数の作用モデルの組み合わせて作用結果を合成することが可能であるため、ありうる作用の組み合わせのすべてについて３次元モデルを作成する必要はなく、モデル設計の手間が省けるとともに、作用モデルの任意の組み合わせにより描画対象オブジェクトを多様に変化させることができる。
【００８６】
また、本実施の形態によれば、描画対象オブジェクトの基本モデルに与えられる変化が作用モデルとして定義されているため、変化前のオブジェクトと変化後のオブジェクトの補間を正確に行うことができる。たとえば、作用関数が定義されていれば、作用関数のパラメータを徐々に変化させることで、描画対象オブジェクトの形態を連続的に変化させることができ、描画対象オブジェクトのバリエーションの形態をその変化過程も含めて高い精度で描画することができる。
【００８７】
実施の形態２
本実施の形態では、複数の端末がネットワークで接続した分散環境において、ネットワーク型の対戦ゲームなどのアプリケーションを実行する。各端末においてユーザがゲームの共有空間にログインし、共有空間においてユーザがキャラクタなどの３次元オブジェクトを操作し、ゲームに参加する。
【００８８】
図９は、分散環境において仮想空間を共有するために端末間で行われるデータの流れを説明するシーケンス図である。
【００８９】
ある新規端末が、各種の仮想的な共有空間のサービスを提供する分散環境のネットワークに接続し、その端末のユーザがサービスにログインしたとき、新規端末は、まず、最近傍端末である端末１から、ネットワーク内で生成されている各種の共有空間の情報、たとえば、ネットワーク内のゲーム、チャット、掲示板等の共有空間の情報を取得する（Ｓ５０）。
【００９０】
ここで、ネットワークに接続しているすべての端末は、共有空間の情報をすべて共有しているため、新規端末は、最近傍端末から、現在ネットワークで提供されている共有空間の情報を取得すれば足りる。
【００９１】
次に、新規端末は、ユーザが参加する共有空間を選択する（Ｓ５２）。新規端末は、ユーザが参加したい共有空間を選択すると、共有空間の表示に必要な各種のオブジェクトの情報を他の端末から取得する。まず、選択した共有空間に参加しているすべての端末１〜端末ｎに対して、必要なオブジェクトのデータの購読要求を送信する（Ｓ５４、Ｓ５６、Ｓ５８）。各端末１〜ｎに要求するオブジェクトのデータは、各端末１〜ｎのユーザが操作するキャラクタの３次元モデルデータなどである。
【００９２】
購読要求を受け取った各端末１〜ｎは、順次要求されたオブジェクトのデータを、新規端末へ送信する（Ｓ６０、Ｓ６４、Ｓ６８）。新規端末は、各端末１〜ｎから順次オブジェクトのデータを受け取りながら表示処理を行う（Ｓ６２、Ｓ６６、Ｓ７０）。ただし、各端末への購読要求の送信と、情報取得・表示処理は、非同期に行われる。
【００９３】
この一連の手順により、共有空間にログインしているすべての端末において、共有空間内のオブジェクトのデータが共有され、各端末においてキャラクタなどのオブジェクトが描画処理されて画面に表示される。各端末は共有空間内のオブジェクトのデータを端末内で管理しており、各端末がユーザのキャラクタなどのデータを変更した場合は、端末間で更新情報をリアルタイムで交換する必要がある。このような分散管理方式では、動的なデータのやりとりが発生し、ネットワークの負荷が大きい。リアルタイムで共有空間の描画処理を行うためには、ネットワーク負荷を軽減する必要がある。
【００９４】
各端末においてユーザの操作するキャラクタがレベルアップやアイテムの装備などにより変化すると、変化後のキャラクタのデータを他のすべての端末が受信する必要がある。１つのキャラクタに１０種類のバリエーションがあるとし、各バリエーションのポリゴン数が仮に１万であるとすると、当該端末から他のすべての端末に、１０万ポリゴンのデータを送信することになり、ネットワークの負荷が非常に大きくなり、データ転送速度が低下し、リアルタイムの描画処理が難しくなる。更新したオブジェクトのポリゴンデータの転送レイテンシが大きくなると、対戦ゲームのようなリアルタイム型のアプリケーションを快適な速度で実行することは難しくなる。
【００９５】
そこで、各端末は、実施の形態１で述べた描画処理装置１００の構成を有し、キャラクタの基本モデルのデータを記憶部に保持しておき、キャラクタのモデルに更新があったとき、作用モデルのデータのみを受信し、記憶部に保持されたキャラクタの基本モデルに受信された作用モデルを適用することで、キャラクタの形態のバリエーションを生成し、描画する。このために、本実施の形態では、描画処理装置１００は、受信部と送信部の構成を含み、ネットワーク経由で他の端末との間でキャラクタの基本モデルファイルと作用モデルファイルの送受信を行えるように構成される。
【００９６】
作用モデルファイルのデータ量は、基本モデルファイルのデータ量に比べれば、はるかに少ないため、キャラクタが変化しても、端末間のデータ転送量は少なくて済み、分散環境でもリアルタイムでキャラクタを変化させて表示することができる。
【００９７】
さらに、共有空間においては、ユーザのキャラクタ同士が相互作用を与えることもあり、ある端末のユーザが操作するキャラクタにおいてあらかじめ定義された作用モデルを他の端末のユーザが操作するキャラクタに作用させることもできる。これにより、他のユーザのキャラクタに予想もしていなかった作用を与えて、キャラクタのバリエーションを生成し表示することも可能となる。
【００９８】
一例として、サッカーゲームのキャラクタと野球ゲームのキャラクタが交換され、野球ゲームのキャラクタの作用モデルがサッカーゲームに適用される例を説明する。
【００９９】
サッカーゲームには、選手、監督、審判などのキャラクタが用意されており、野球ゲームには、打者、投手、捕手、監督などのキャラクタが用意されている。
【０１００】
共有空間にログインしているユーザは、その共有空間にキャラクタを登場させることができるため、共有空間では異なるゲームのキャラクタが出会い、相互作用を与えたり、あるゲームのキャラクタが他のゲームに参加して作用を与えることができる。ここでは、野球ゲームのキャラクタである打者がサッカーゲームのゴールキーパーとなり、サッカーゲームにおいて作用を与える状況を説明する。
【０１０１】
サッカーゲームをプレイするユーザの端末の基本モデル記憶部１２には、サッカーボールの基本モデルファイル２０が記憶されている。基本モデルファイル２０には次の情報が含まれる。
【０１０２】
形状情報：  サッカーボールの頂点、カラー、テクスチャ座標等
非形状情報：  サッカーボールに対する光の照射方向、テクスチャ等
連結情報：  ポリゴン情報
なお、ポリゴン情報は、頂点と辺の接続情報を与える頂点インデックスの形式で与えられる。
【０１０３】
サッカーゲームをプレイするユーザの端末の作用モデル記憶部３２には、受信された野球ゲームの打者用の作用モデルファイル５０が記憶される。作用モデルファイル５０には次の情報が含まれる。
【０１０４】
形状情報：  バットが当たった先の空間情報（関数式または頂点等）
非形状情報：  バットが当たった先の光の照射状態、テクスチャ等
連結情報：  頂点と辺の接続情報である頂点インデックスの形式で与えられるポリゴン情報、または半径などで表される領域情報
作用情報：  ある領域の大きさで、頂点を移動させる関数
【０１０５】
図１０（ａ）は、野球ゲームにおいて、打者用の作用モデルファイル５０が野球ボールに適用される様子を示す。野球ゲームの打者がバット２３０を振ったときに、作用モデルファイル５０の記述された作用モデルが適用されて、バット２３０に当たった野球ボール２３２が変形する。
【０１０６】
このように、野球ゲームの打者用の作用モデルファイル５０には、バットで野球ボールを打ったときに、ボールの速度、質量、バットの材質、質量、スイング速度、ミートの角度などの物理量に応じて、ボールの形状がへこむという作用モデルがあらかじめ記述されているが、サッカーゲームの選手用の作用モデルファイル５０には、サッカーボールを蹴ったときに、サッカーボールの形状を変化させる作用モデルは定義されていない。
【０１０７】
サッカーゲームにおいて、野球ゲームの打者がゴールキーパーとなり、ゴール前でバットを振ってサッカーボールに当たったとする。サッカーゲームにおいては、バットでボールが打たれるという作用モデルは用意されておらず、ゴールキーパーの役割を演ずる打者がバットでサッカーボールを打ったとしても、通常は、サッカーボールには変形の作用は及ばない。しかし、本実施の形態では、野球ゲームの打者に対して用意された作用モデルファイル５０が、野球ゲームをプレイするユーザの端末からサッカーボールをプレイするユーザの端末へ送信され、打者用の作用モデルがサッカーゲームに適用される。
【０１０８】
作用領域決定部４０は、打者の振るバットとサッカーボールとが交差するかどうかを判定し、交差する場合に作用領域を決定する。作用処理部４２は、作用モデルファイル５０に記述された作用を作用領域に適用する。この作用は、作用領域において、バットと接触するサッカーボールのポリゴンの頂点を移動させることであり、作用領域においてサッカーボールのポリゴン形状が局所的に変化し、サッカーボールが凹む。図１０（ｂ）に、サッカーゲームにおいて打者用の作用モデルファイル５０が適用され、バット２３０に当たったサッカーボール２３４の形状が変形する様子を示す。
【０１０９】
作用モデル生成部４４は、野球ゲームの打者用の作用モデルファイル５０からサッカーゲームのゴールキーパー用の更新作用モデルファイル６０を生成する。生成されたゴールキーパー用の更新作用モデルファイル６０は次の情報が含まれる。
形状情報：  バットに当てられた先の空間情報（関数式または頂点等）
非形状情報：  バットに当てられた先の光の照射状態、テクスチャ等
連結情報：  ポリゴンのインデックス情報、または半径などで表される領域情報
作用情報：  ある領域の大きさで、頂点を移動させる関数
【０１１０】
野球ゲームの打者用の作用モデルファイル５０では、バットで打つという行為によるエフェクトの作用モデルが記述されていたのに対して、サッカーゲームのゴールキーパー用の更新作用モデルファイル６０では、バットで打たれた跡の作用モデルが記述されることになる。
【０１１１】
作用モデル生成部４４は、生成されたサッカーゲームのゴールキーパー用の更新作用モデルファイル６０を作用モデル記憶部３２に登録する。登録されたゴールキーパー用の更新作用モデルファイル６０は、以降はゴールキーパーが扱うサッカーボールに作用させるべき作用モデルとして利用される。
【０１１２】
作用領域決定部４０によるコリジョン判定について説明する。野球ゲームの打者用の作用モデルファイル５０には、バットでボールを打つという行為による作用が記述されており、バットを振る範囲にボールが存在した場合にボールに凹みを与える作用関数が与えられたとする。作用領域決定部４０は、打者がバットを振った範囲にサッカーボールが存在するかどうかで簡易的なコリジョン判定を行い、次にバットとボールの接触面を探索することでコリジョン判定を完了する。
【０１１３】
また、別の例として、競馬ゲームとレーシングゲームと恐竜ハンティングゲームの間でキャラクタが交換される例を説明する。
【０１１４】
競馬ゲームのキャラクタである競走馬は、図１１（ａ）に示すように、地面にひづめの跡を残すという作用モデルをもち、レーシングゲームのキャラクタである車は、図１１（ｂ）のように、地面にタイヤの跡を残すという作用モデルをもち、ハンティングゲームのキャラクタである恐竜は、図１１（ｃ）のように、地面に恐竜の足跡を残すという作用モデルをもつ。
【０１１５】
競馬ゲームにレーシングゲームのキャラクタである車とハンティングゲームのキャラクタである恐竜が参加し、車や恐竜が競走馬とともに競争したとする。このとき、競馬ゲームのオブジェクトである地面には、図１１（ｄ）に示すように、競馬ゲームの競走馬の作用モデルにより、ひづめの跡２４０が生じ、その上に、レーシングゲームの車の作用モデルにより、タイヤの跡２４２が合成され、さらに、その上に、ハンティングゲームの恐竜の作用モデルにより、恐竜の足跡２４４が合成される。
【０１１６】
競馬ゲームでは、車や恐竜が馬と一緒に走ることは想定していないため、地面にタイヤの跡や恐竜の足跡を残すという作用モデルはもともとは定義されていない。レーシングゲームやハンティングゲームのキャラクタが競馬ゲームに参加することで、地面にタイヤの跡や恐竜の足跡が残るという新たな作用モデルが競馬ゲームに導入されることになる。
【０１１７】
上記以外の例として、異なるゲーム間のキャラクタ同士が互いに作用を及ぼし合ってもよい。ゲームＡのキャラクタＡとゲームＢのキャラクタＢとが共有空間で遭遇した場合に、ゲームＡのキャラクタＡに定義されている作用モデルがゲームＢのキャラクタＢに作用したり、逆に、ゲームＢのキャラクタＢに定義されている作用モデルがゲームＡのキャラクタＡに作用する。
【０１１８】
また、異なるゲーム間のキャラクタの相互作用に限らず、同一のゲームにおいても、キャラクタの新しいモデルやキャラクタに対する新しい作用をユーザに更新情報として適宜ネットワーク経由で提供することも考えられる。この場合、旧バージョンのゲームを利用するユーザの端末に、旧バージョンでは想定されていなかった作用モデルファイルが送信され、旧バージョンのキャラクタに新バージョンの作用が加えられ、キャラクタの新しいバリエーションが生成される。
【０１１９】
本実施の形態によれば、キャラクタ等の描画対象オブジェクトについて基本モデルと作用モデルさえ用意しておけば、異なるゲーム等のアプリケーション間でも描画対象オブジェクトの作用モデルを交換することで、互いのオブジェクトに作用を及ぼすことができる。これにより、アプリケーション毎にありうる作用すべてのオブジェクトのモデルを用意しておく必要はなくなり、アプリケーション間で作用モデルを共有するだけでオブジェクトのバリエーションを容易に生成することができるようになり、キャラクタなどのオブジェクトの形態の多様性を高めることができる。
【０１２０】
従来は、異なるゲーム間でのキャラクタのモデル交換を行ったとしても、互いのキャラクタを単に画面に表示するだけであり、あらかじめ相互作用をモデル化していない限り、キャラクタ間で相互作用が生じても何ら相互作用の結果を表示することはできない。しかし、本実施の形態では、事前に相互作用のモデル化をしていなくても、作用モデルを交換することで、想定外の作用をキャラクタに与えることができる。これにより、より簡単にキャラクタの形態を多様に変化させることができる。また、異なるゲーム間で作用モデルが交換されることにより、それぞれのゲームでは予想もしていなかった作用結果がキャラクタに与えられ、ゲームの楽しみ方の幅が広がる。ゲームにおけるキャラクタのモデル設計を容易にするとともに、予想していなかったゲームの遊び方が生み出されるという効果もある。
【０１２１】
以上、本発明を実施の形態をもとに説明した。実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
【図面の簡単な説明】
【０１２２】
【図１】実施の形態１に係る描画処理装置の構成図である。
【図２】図２（ａ）は、図１の基本モデル記憶部に記憶される基本モデルファイルのデータ構造を示し、図２（ｂ）は、図１の作用モデル記憶部に記憶される作用モデルファイルのデータ構造を示す図である。
【図３】図１の作用領域決定部による作用領域決定手順を説明するフローチャートである。
【図４】図１の作用処理部による作用処理手順を説明するフローチャートである。
【図５】作用モデルファイルに記述される作用モデル形状情報および作用モデル非形状情報の一例を示す図である。
【図６】描画対象オブジェクトの基本モデルに作用モデルが適用された例を示す図である。
【図７】複数のレイヤにわたって作用が定義される場合の一例として、４つのレイヤの作用モデルファイルを示す図である。
【図８】描画対象オブジェクトの基本モデルに作用モデルが適用された別の例を示す図である。
【図９】分散環境において仮想空間を共有するために端末間で行われるデータの流れを説明するシーケンス図である。
【図１０】異なるゲームの間でユーザの操作するキャラクタの作用モデルが適用される例を説明する図である。
【図１１】異なるゲームの間でユーザの操作するキャラクタの作用モデルが適用される別の例を説明する図である。
【符号の説明】
【０１２３】
１０  基本モデル表示処理部、  １２  基本モデル記憶部、  １４  基本モデル読取部、  １６  レンダリング部、  １８  画面出力部、  ２０  基本モデルファイル、  ２２  基本モデル形状情報、  ２４  基本モデル非形状情報、  ３０  作用モデル処理部、  ３２  作用モデル記憶部、  ３４  作用モデル読取部、  ３６  基本モデル連結情報抽出部、  ３８  作用モデル連結情報抽出部、  ４０  作用領域決定部、  ４２  作用処理部、  ４４  作用モデル生成部、  ５０  作用モデルファイル、  ５２  作用モデル形状情報、  ５４  作用モデル非形状情報、  ５６  作用モデル作用情報、  ６０  更新作用モデルファイル、  ７２  作用後基本モデル形状情報、  ７４  作用後基本モデル非形状情報、  １００  描画処理装置。
【図１】
2007052508.tif 000003
【図２】
2007052508.tif 000004
【図３】
2007052508.tif 000005
【図４】
2007052508.tif 000006
【図５】
2007052508.tif 000007
【図６】
2007052508.tif 000008
【図７】
2007052508.tif 000009
【図８】
2007052508.tif 000010
【図９】
2007052508.tif 000011
【図１０】
2007052508.tif 000012
【図１１】
2007052508.tif 000013