オブジェクトを構成する各要素の配置であって、処理対象フレームに対する配置を取得する配置取得手段、前記各要素の配置を修正する配置修正手段であって、それぞれが前記複数の要素のうち少なくとも一部の配置を修正する複数の部分修正手段と、前記オブジェクトの状態と前記複数の部分修正手段のうち複数とを関連づける制御データと前記オブジェクトの状態とに基づいて前記複数の部分修正手段のうち一部が前記各要素の配置を修正するよう制御する制御手段と、を含む配置修正手段、および、前記配置修正手段により修正された前記各要素の配置に基づいて画像を描画する画像描画手段、としてコンピュータを機能させるためのプログラム。前記オブジェクトと他のオブジェクトとの位置関係に基づいて、それぞれ前記複数の部分修正手段のうちいずれかに対応する複数のパラメータのうち少なくとも1つを取得するパラメータ取得手段、としてさらにコンピュータを機能させ、前記各部分修正手段は、当該部分修正手段に対応する取得された前記パラメータに基づいて前記複数の要素のうち少なくとも一部を修正する、ことを特徴とする請求項1に記載のプログラム。前記パラメータ取得手段は、前記制御手段が配置を修正させる部分修正手段に応じてパラメータを取得する、ことを特徴とする請求項2に記載のプログラム。前記パラメータ取得手段は、処理対象フレームが変化するごとにパラメータを取得する、ことを特徴とする請求項2に記載のプログラム。オブジェクトを構成する各要素の配置であって、処理対象フレームに対する配置を取得する配置取得手段と、制御手段および複数の部分修正手段を含み前記各要素の配置を修正する配置修正手段と、前記オブジェクトの状態と前記複数の部分修正手段のうち複数とを関連づける制御データを記憶する記憶手段と、前記配置修正手段により修正された前記各要素の配置に基づいて画像を描画する画像描画手段と、を含み、前記部分修正手段のそれぞれは、前記複数の要素のうち少なくとも一部の配置を修正し、前記制御手段は、前記制御データと前記オブジェクトの状態に基づいて前記複数の部分修正手段のうち一部が前記各要素の配置を修正するよう制御する、ことを特徴とする画像生成装置。オブジェクトを構成する各要素の配置であって、処理対象フレームに対する配置を取得する配置取得ステップと、制御ステップおよび複数の部分修正ステップを含み前記各要素の配置を修正する配置修正ステップと、前記配置修正ステップにより修正された前記各要素の配置に基づいて画像を描画する画像描画ステップと、を含み、前記部分修正ステップのそれぞれは、前記複数の要素のうち少なくとも一部の配置を修正し、前記制御ステップは、前記オブジェクトの状態と前記複数の部分修正ステップのうち複数とを関連づける制御データと前記オブジェクトの状態に基づいて前記複数の部分修正ステップのうち一部において前記各要素の配置を修正するよう制御する、ことを特徴とする画像生成方法。オブジェクトを構成する各要素の配置であって、処理対象フレームに対する配置を取得する配置取得手段、前記各要素の配置を修正する配置修正手段であって、それぞれが前記複数の要素のうち少なくとも一部の配置を修正する複数の部分修正手段と、前記オブジェクトの状態と前記複数の部分修正手段のうち複数とを関連づける制御データと前記オブジェクトの状態とに基づいて前記複数の部分修正手段のうち一部が前記各要素の配置を修正するよう制御する制御手段と、を含む配置修正手段、および、前記配置修正手段により修正された前記各要素の配置に基づいて画像を描画する画像描画手段、としてコンピュータを機能させるためのプログラムを記憶したコンピュータ読み取り可能な記憶媒体。予め定められた動きを再生したり、単にプログラムで動きを生成するだけでは、予め定められたシチュエーションに対する画像しか生成できず、状態の変化に応じてオブジェクトの動作を柔軟に表現することが難しかった。本発明は上記課題を鑑みてなされたものであって、その目的は、オブジェクトの状態の変化に応じて柔軟にそのオブジェクトの動作を表現することのできる技術を提供することにある。上記課題を解決するために、本発明にかかるプログラムは、オブジェクトを構成する各要素の配置であって、処理対象フレームに対する配置を取得する配置取得手段、制御手段および複数の部分修正手段を含み前記各要素の配置を修正する配置修正手段、および前記配置修正手段により修正された前記各要素の配置に基づいて画像を描画する画像描画手段、としてコンピュータを機能させる。前記複数の部分修正手段のそれぞれは、前記複数の要素のうち少なくとも一部の配置を修正し、前記制御手段は、前記オブジェクトの状態と前記複数の部分修正手段のうち複数とを関連づける制御データと前記オブジェクトの状態とに基づいて前記複数の部分修正手段のうち一部が前記各要素の配置を修正するよう制御する。また、本発明にかかる画像生成装置は、オブジェクトを構成する各要素の配置であって、処理対象フレームに対する配置を取得する配置取得手段と、制御手段および複数の部分修正手段を含み前記各要素の配置を修正する配置修正手段と、前記オブジェクトの状態と前記複数の部分修正手段のうち複数とを関連づける制御データを記憶する記憶手段と、前記配置修正手段により修正された前記各要素の配置に基づいて画像を描画する画像描画手段と、を含み、前記部分修正手段のそれぞれは、前記複数の要素のうち少なくとも一部の配置を修正し、前記制御手段は、前記制御データと前記オブジェクトの状態に基づいて前記複数の部分修正手段のうち一部が前記各要素の配置を修正するよう制御する、ことを特徴とする。また、本発明にかかる画像生成方法は、オブジェクトを構成する各要素の配置であって、処理対象フレームに対する配置を取得する配置取得ステップと、制御ステップおよび複数の部分修正ステップを含み前記各要素の配置を修正する配置修正ステップと、前記配置修正ステップにより修正された前記各要素の配置に基づいて画像を描画する画像描画ステップと、を含み、前記部分修正ステップのそれぞれは、前記複数の要素のうち少なくとも一部の配置を修正し、前記制御ステップは、前記オブジェクトの状態と前記複数の部分修正ステップのうち複数とを関連づける制御データと前記オブジェクトの状態に基づいて前記複数の部分修正ステップのうち一部において前記各要素の配置を修正するよう制御する、ことを特徴とする。また、本発明にかかるコンピュータ読み取り可能な記憶媒体は、オブジェクトを構成する各要素の配置であって、処理対象フレームに対する配置を取得する配置取得手段、制御手段および複数の部分修正手段を含み前記各要素の配置を修正する配置修正手段、および、前記配置修正手段により修正された前記各要素の配置に基づいて画像を描画する画像描画手段、としてコンピュータを機能させるプログラムを記憶する。前記部分修正手段のそれぞれは、前記複数の要素のうち少なくとも一部の配置を修正し、前記制御手段は、前記オブジェクトの状態と前記複数の部分修正手段のうち複数とを関連づける制御データと前記オブジェクトの状態とに基づいて前記複数の部分修正手段のうち一部が前記各要素の配置を修正するよう制御する。本発明によれば、オブジェクトの状態の変化に応じて柔軟にそのオブジェクトの動作を表現することができる。本発明の一態様では、プログラムは、前記オブジェクトと他のオブジェクトとの位置関係に基づいて、それぞれ前記複数の部分修正手段のうちいずれかに対応する複数のパラメータのうち少なくとも1つを取得するパラメータ取得手段、としてさらにコンピュータを機能させ、前記各部分修正手段は、当該部分修正手段に対応する取得された前記パラメータに基づいて前記複数の要素のうち少なくとも一部を修正してもよい。本発明の一態様では、前記パラメータ取得手段は、前記制御手段が配置を修正させる部分修正手段に応じたパラメータを取得してもよい。本発明の一態様では、前記パラメータ取得手段は、処理対象フレームが変化するごとにパラメータを取得してもよい。以下では、本発明の実施形態について図面に基づいて説明する。図1は本発明の実施形態に係る画像生成装置1の構成を示す図である。画像生成装置1は、中央制御部11と、記憶部12と、演算部13と、入出力部14とを含んでいる。画像生成装置1は、例えばパーソナルコンピュータや家庭用ゲーム機のように3次元画像を生成する機能を有する機器である。中央制御部11は、記憶部12に格納されているプログラムに従って動作し、演算部13や入出力部14を制御する。なお、上記プログラムは、DVD-ROM等のコンピュータで読み取り可能な情報記憶媒体に格納されて提供されるものであってもよいし、インターネット等のネットワークを介して提供されるものであってもよい。記憶部12は、RAMやROM等のメモリ素子およびハードディスクドライブ等によって構成されている。記憶部12は、上記プログラムを格納する。また、記憶部12は、各部から入力される情報や演算結果を格納する。演算部13は、浮動小数点計算などの数値演算を高速に行う機能を有する。演算部13は、記憶部12に格納されるプログラムに従って動作し、その計算結果を記憶部12や入出力部14に出力する。なお、計算処理の各部分を中央制御部11および演算部13のいずれに行わせるかは、プログラムを作成する際に、当該部分の処理の特性に応じて任意に決定すればよい。入出力部14は、モニタ等の表示出力デバイスを制御する手段や、マウス等の入力デバイスを制御する手段などによって構成されている。入出力部14は、中央制御部11の制御に基づいて、画像データ等を表示出力デバイスに対して出力し、入力デバイスより操作者ユーザからの情報を取得する。図2は、本発明の実施形態にかかる画像生成装置1の機能ブロックを示す図である。画像生成装置1は機能的に、動作状態取得部21と、動作データ取得部22と、動作データ記憶部23と、物体位置調整部24と、パラメータ取得部25と、配置修正部26と、制御データ記憶部27と、物理計算部28と、画像描画部29と、を含む。また、配置修正部26は機能的に、起動制御部30と、部分修正部31と、を含む。これらの機能は、中央制御部11や演算部13が記憶部12に格納されたプログラムを実行し、入出力部14を制御することによって実現される。動作データ記憶部23は、記憶部12を中心として実現される。動作データ記憶部23は、描画対象となる物体オブジェクト40についての動作データを動作の種類ごとに記憶する。図3は、あるオブジェクト40に含まれる各スケルトン41の配置の一例を示す図である。オブジェクト40は複数のスケルトン41と、そのオブジェクト40の表面を示す複数の皮膚メッシュ42と、図示しない複数のラグドールとを含む。スケルトン41やラグドール等は、オブジェクト40を構成する要素の一種である。皮膚メッシュ42のそれぞれが複数の頂点を有するポリゴンであり、皮膚メッシュ42はオブジェクト40の表面を囲むように配置されている。スケルトン41は画像を生成する対象となるオブジェクト40の骨格に相当し、それぞれのスケルトン41は他のスケルトン41と接続される関係を有する。また、皮膚メッシュ42の頂点の座標はスケルトン41の配置に応じて定まる。つまり、スケルトン41の配置によりオブジェクト40の表面の形状が定まる。ラグドールは物理シミュレーションの対象となる剛体である。ラグドールとスケルトン41とは1対1に対応している。動作データは、対応する動作の種類における描画対象となるオブジェクト40の動作を示すデータである。具体的にはオブジェクト40の動作を示すデータは、オブジェクト40を構成するスケルトン41の配置位置や向き、大きさの情報がフレームごとに記憶されたものである。フレームは、動作を行う期間が複数に分割されたもののそれぞれのことであり、隣り合うフレームの時間間隔は一定であってもよいし、処理負荷等を考慮して可変であってもよい。このスケルトン41の配置は基準となる配置を示すものであり、後述の処理により修正された配置に基づいて画像が生成される。図3は動作の種類が立つでありかつあるフレームにおける各スケルトン41の配置を示している。図4は、本発明の実施形態にかかる画像生成装置1の処理フローの一例を示す図である。以下ではこの処理フローに従い画像生成装置1が有する機能を説明する。なお、この処理フローはあるフレーム処理対象となるフレームにおける処理を示しており、フレームが変化するごとに処理を繰り返す。動作状態取得部21は、中央制御部11、記憶部12および入出力部14を中心として構成される。動作状態取得部21は、処理対象となるフレームにおける描画対象のオブジェクト40以下、他のオブジェクトと区別が必要な際には自オブジェクトとも記すの状態の一種である動作の種類を、ユーザが入出力部14を介して入力した情報や、他のオブジェクト40との位置関係等に基づいて、取得するステップS101。ここで、自オブジェクトの動作の種類は、歩く、立つ、座るなどがある。他のオブジェクト40との位置関係の例としては、直前のフレームにおいて最も近い他の動物や人間などのオブジェクト40が一定の範囲内にあるかや、壁などのオブジェクト40と衝突しているか、などがある。次に動作状態取得部21は、動作にかかわる他のオブジェクト40の情報を取得するステップS102。例えば、自オブジェクトの動作の種類が立つである場合には動作に関わる他のオブジェクト40の情報は近くにあるエサのオブジェクト40の位置の情報であってよいし、自オブジェクトの動作の種類が歩くである場合には動作に関わる他のオブジェクト40の情報は目的地になるオブジェクト40の情報であってよい。動作データ取得部22は、中央制御部11および記憶部12を中心として実現される。動作データ取得部22は、動作データ記憶部23から処理対象となるフレームにおける動作データを取得するステップS103。より具体的には、動作データ取得部22は処理対象となるフレームにおける各スケルトン41の配置の情報を取得する。ここで取得するスケルトン41の配置は、自オブジェクトが平面上に配置され、頭の向きがある方向に固定されているなど、基準となる特定の条件におけるスケルトン41の配置である。以下では、自オブジェクトが配置される位置の地形や、床面上の障害物などの動作に関わるオブジェクト40の情報に応じてスケルトン41の配置を修正する処理について説明する。物体位置調整部24は、中央制御部11、記憶部12および演算部13を中心として実現される。物体位置調整部24は、オブジェクト40の移動先となる位置を決定するステップS104。例えば、目的地となるオブジェクト40に向かって歩く場合の処理対象フレームにおける自オブジェクトの位置や、エサを立って食べる場合に頭が届くような自オブジェクトの位置を決定する。パラメータ取得部25は、中央制御部11および記憶部12を中心として実現される。パラメータ取得部25は、処理対象フレームについて、複数のパラメータのうち少なくとも1つを取得するステップS105。複数のパラメータのそれぞれは部分修正部31のいずれかに対応しており、部分修正部31に渡すべき情報である。パラメータ取得部25は、例えば、動作状態取得部21が取得したエサの位置の情報を、頭を近づけるべき位置のパラメータとして取得してもよい。またパラメータ取得部25は物体位置調整部24により定まる移動先の位置に基づいて自オブジェクトの足がつく位置を計算し、その計算結果をパラメータとして取得してもよい。足がつく位置を計算する際には、例えば移動先の自オブジェクトの下側に存在する石ころなどの障害物を避けるように計算する。ここで、この処理は毎フレーム行われており、パラメータ取得部25は、処理対象フレームが変化するごとにパラメータを取得している。配置修正部26は、中央制御部11、記憶部12および演算部13を中心として実現される。配置修正部26は、オブジェクト40を構成する各スケルトン41の配置を修正するS106。以下では、配置修正部26の処理について詳細に説明する。図5は、配置修正部26の処理フローの一例を示す図である。起動制御部30は、中央制御部11および記憶部12を中心として実現される。起動制御部30は制御データとオブジェクト40の状態に基づいて、複数の部分修正部31のうち一部が各スケルトン41の配置を修正するよう制御する。また制御データ記憶部27は、オブジェクト40の状態と複数の部分修正部31のうち複数とを関連づける制御データを記憶する。各部分修正部31は中央制御部11、記憶部12および演算部13を中心として実現され、部分修正部31のぞれぞれは複数のスケルトン41のうち少なくとも一部の配置を修正する。1つのオブジェクト40を構成するスケルトン41の配置を修正するため、複数の部分修正部31が設けられている。はじめに起動制御部30は、制御データとオブジェクト40の動作の種類とに基づいて、起動対象となる部分修正部31を識別する情報を取得するステップS121。図6は制御データの一例を示す図である。制御データは動作の種類と部分修正部31との組合せを示しており、図6の表の各行は動作の種類に対応し、表の各列は部分修正部31に対応する。図6は、動作の種類歩くは、歩く姿勢修正を実行する1番目の部分修正部31と足つき修正を実行する2番目の部分修正部31とに対応することを示し、動作の種類立つは、立つ姿勢修正を実行する3番目の部分修正部31と頭の位置修正を実行する5番目の部分修正部31とに対応することを示し、動作の種類座るは、座る姿勢修正を実行する4番目の部分修正部31と、5番目の部分修正部31とに対応することを示す。例えば、動作状態取得部21が取得した動作の種類が立つであれば、起動制御部30は起動対象となる部分修正部31を識別する情報として、3番目と5番目を取得する。ここで、制御データはある動作の種類について複数の部分修正部31と関連づけており、かつ関連づけられる部分修正部31は、全体の中の一部である。次に、起動制御部30は変数nに1を代入しステップS122、n番目の部分修正部31が起動対象となる部分修正部31であればステップS123のY、n番目の部分修正部31をその部分修正部31に対するパラメータを用いて起動するステップS124。もちろんそのパラメータはパラメータ取得部25が取得したものである。n番目の部分修正部31が起動対象となる部分修正部31でなければステップS123のN、ステップS124の処理をスキップする。次に起動制御部30は変数nの値を1増やしステップS125、全ての部分修正部31についてステップS123の処理を行ったか確認するステップS126。全ての部分修正部31についてその処理を行っていればステップS126のY起動制御部30の処理を終了し、全ての部分修正部31についてその処理を行っていなければステップS126のN、ステップS123の処理から繰り返す。ここで、起動制御部30により起動される部分修正部31の処理について説明する。図7は、1つの部分修正部31の処理フローの一例を示す図である。起動制御部30によりパラメータ付で起動された部分修正部31は、まず動作データ取得部22で取得され、これまでに物体位置調整部24や他の部分修正部31などが行った処理により修正された各スケルトン41の配置の情報を取得するステップS141。また、部分修正部31は自身が起動される際のパラメータを取得するステップS142。次に部分修正部31は取得したパラメータが配置の修正を行うのに適切であるか確認しステップS143、パラメータが適切であればステップS143のY、そのパラメータに基づいて少なくとも一部のスケルトン41の配置を修正するステップS144。パラメータが適切でなければステップS143のN、この部分修正部31の処理を終了し、起動制御部30に処理を戻す。このステップS143の処理により、頭を近づけるべきものが存在しないなどによりパラメータが設定されていないような場合に頭を近づかせるなどの不要な処理を行わないようにしている。スケルトン41の配置位置や向きの修正は、例えば以下の処理によって取得される。まず、部分修正部31はスケルトン41の配置を示すFKForwardKinematicsのデータに対してFK-IK変換を行い、IKInverseKinematics制御に用いる点あるスケルトン41の端に相当の座標を生成する。次に、部分修正部31はその座標をパラメータに応じて変更する。そして、部分修正部31はその変更により定まる各スケルトン41の配置をIK-FK変換を行って取得する。これらの処理により各スケルトン41の少なくとも一部の位置が修正される。図8は、修正された各スケルトン41の配置の一例を示す図である。図8は、図3に示すスケルトン41の配置が修正された場合の例を示す。図8の×マークは、パラメータとして与えられた、頭を近づけるべき位置を示している。はじめに立つ姿勢修正を行う3番目の部分修正部31は、パラメータとして頭を近づけるべき位置が与えられたと判定し、目的の位置とお尻に相当するスケルトン41内の点の位置や肩に相当するスケルトン41内の点の位置との距離を計算する。そして、その距離に応じてお尻に相当するスケルトン41内の点の位置や肩に相当するスケルトン41内の点の位置を変更し、それにあわせて背骨に対応するスケルトン41や足に対応するスケルトン41の配置を修正する。次に頭の位置修正を行う5番目の部分修正部31は、肩の位置と頭を近づけるべき位置とに応じて頭や首に対応するスケルトン41の位置を修正する。こうすることで、動作の種類などのオブジェクト40の状態に応じて様々な修正方法を柔軟に組み合わせること、つまり柔軟に物体の動作を表現することができる。図9は、修正された各スケルトン41の配置の他の一例を示す図である。こちらは動作の種類が歩くであって、坂のある場所をオブジェクトが歩いている場合の例である。図9で破線で示されるスケルトン41は、動作データ記憶部23に記憶される修正前のスケルトン41の配置を示し、実線で示されるスケルトン41は、配置修正部26により修正されたスケルトン41を示す。図9の×マークはパラメータとして与えられる足つきをする位置を示す。こちらの例では、はじめに歩く姿勢修正を行う1番目の部分修正部31は、パラメータとして与えられた足つきの位置から背骨に対応するスケルトン41の配置位置や向きを計算し、次に足つき修正を行う2番目の部分修正部31によって足に対応するスケルトン41の位置が修正される。物理計算部28は、中央制御部11、記憶部12および演算部13を中心として実現される。物理計算部28は、配置修正部26により修正された各スケルトン41の配置に基づいて、それらのスケルトン41に対応するラグドールの挙動を物理シミュレーション物理計算するステップS107。ここで、物理計算の前の状態のラグドールの位置や向きは対応するスケルトン41の位置や向きが反映されている。次に物理計算部28は、計算されたラグドールの挙動に応じて対応するスケルトン41の配置を決定するステップS108。これらにより、スケルトン41の配置が物理法則を満たすようにさらに修正される。画像描画部29は、中央制御部11、記憶部12および演算部13を中心として実現される。画像描画部29は物理計算部28により修正された各スケルトン41の配置に基づいて、オブジェクト40の画像を描画するステップS109。画像描画部29はまず各スケルトン41の配置に基づいて皮膚メッシュ42の頂点座標を求め、求められた皮膚メッシュ42を描画することでオブジェクト40の画像を描画する。なお、本発明の実施形態は上述のものに限定されない。例えば、物理計算部28により修正された各スケルトン41の配置を配置修正部26と同様の機能を用いてさらに修正し、その修正された配置に基づいて画像描画部29が画像を描画してもよい。こうすれば、物理計算の結果、重力等の影響で目的の位置に対して頭などのオブジェクト40の特定の部分がずれるような場合にも、その特定の部分を目的の位置に合わせることが可能となる。また、パラメータ取得部25は、部分修正部31の動作状況に応じてパラメータを取得してもよい。例えば、ある部分修正部31が複数のフレームにわたって振り向くような動作をさせる場合、その動作をしている間、目的値に関するパラメータの変更を抑止し、振り向いた後に移動するようなことを再現することが可能になる。画像生成装置1は上述の処理により柔軟に物体の動作を表現する画像を生成する。ここで、部分修正部31はオブジェクト40および動作の種類ごとに設けられ、その数は膨大になる。以下に示すように、部分修正部31の作成は、編集装置を用いて行うとよい。図10は、動作データおよび部分修正部31を生成する編集装置の機能ブロックを示す図である。編集装置は、機能的に、編集部61と、動作データ記憶部62と、スクリプト記憶部63と、実行形式変換部64とを含む。編集装置も画像生成装置1と同様に中央制御部や記憶部等を含むコンピュータである。編集部61は、対話形式でスケルトン41の配置の情報や、スケルトン41の配置を修正するスクリプトを編集する。編集部61は、具体的には3Dモデリングツールが提供する機能であってよい。編集部61は、編集されたスケルトン41の配置の情報を動作データ記憶部62に出力し、またスクリプトをスクリプト記憶部63に出力する。なお、編集部61は画像そのものを生成するためのものであり、リアルタイム入力に応じて動作することは考慮されていない。具体的には、ユーザの入力に応じてオブジェクト40の状態を判定することや、それらに応じてスクリプトを動的に組み合わせる機能はない。実行形式変換部64は、中央制御部や記憶部を中心として実現される。実行形式変換部64は、編集部61が出力したスクリプトを、画像生成装置1が実行できるプログラムに変換する。編集部61により生成され、動作データ記憶部62に記憶されたスケルトン41の配置や皮膚メッシュ42、ラグドールなどのデータと、実行形式変換部64から出力された実行可能なプログラムは、画像生成装置1に提供される。これにより、3Dモデリングツール等により作り込まれたデータやスクリプトを、それをリアルタイム入力等に応じた画像を生成させる画像生成装置1に少ない手間で移設することが可能になり、画像を生成させるデータの準備を効率的に進めることが可能になる。