(57)【要約】【課題】衝撃（例えば攻撃）等によりオブジェクトが分断される場合の分断時や分断後の様子をリアルに表現すること。【解決手段】オブジェクト空間において、オブジェクトが分断される画像を生成するゲーム装置のためのプログラムであって、入力情報を受け付ける受け付け手段と、オブジェクトに複数の代表点を設定し、前記入力情報に基づいて代表点の位置情報を演算する代表点位置情報演算手段と、前記入力情報に基づいてオブジェクトの分断の有無を判断し、分断ありと判断した場合にはオブジェクトを複数の部分オブジェクトに分断する分断処理を行う分断処理手段と、前記代表点の位置情報に基づき、オブジェクトの分断状態を判断する分断状態判断手段と、前記分断状態に基づき、画像生成処理またはゲームパラメータ演算処理の少なくとも１つを行う処理手段と、してコンピュータを機能させる。【選択図】図１６
2010170505.tif 000002
【特許請求の範囲】
【請求項１】
オブジェクト空間において、オブジェクトが分断される画像を生成するゲーム装置のためのプログラムであって、
入力情報を受け付ける受け付け手段と、
オブジェクトに複数の代表点を設定し、前記入力情報に基づいて代表点の位置情報を演算する代表点位置情報演算手段と、
前記入力情報に基づいてオブジェクトの分断の有無を判断し、分断ありと判断した場合にはオブジェクトを複数の部分オブジェクトに分断する分断処理を行う分断処理手段と、
前記代表点の位置情報に基づき、オブジェクトの分断状態を判断する分断状態判断手段と、
前記分断状態に基づき、画像生成処理またはゲームパラメータ演算処理の少なくとも１つを行う処理手段と、してコンピュータを機能させることを特徴とするプログラム。
【請求項２】
請求項１において
前記代表点はオブジェクトを構成する部位に対応付けて設定されており、
分断状態判断手段は、
所与の部位に対応付けられた代表点の位置情報と他の部位に対応付けられた代表点の位置情報に基づき所与の部位と他の部位の位置関係を求め、当該位置関係が所定の分断条件を満たしていると判断した場合には、所与の部位を含む部分と他の部位を含む部分は分断されている分断状態であると判断することを特徴とするプログラム。
【請求項３】
請求項１において、
前記代表点位置情報演算手段は、
オブジェクトの分断後に分断された複数の部分オブジェクトに設定された前記複数の代表点の位置情報を演算することを特徴とするプログラム。
【請求項４】
オブジェクト空間において、オブジェクトが分断される画像を生成するゲーム装置のためのプログラムであって、
入力情報を受け付ける受け付け手段と、
オブジェクトに複数の代表点を設定し、前記入力情報に基づいて代表点の位置情報を演算する代表点位置情報演算手段と、
前記入力情報に基づいてオブジェクトの分断の有無を判断し、分断ありと判断した場合にはオブジェクトを複数の部分オブジェクトに分断する分断処理を行う分断処理手段と、
前記代表点間を結ぶ仮想的なラインを設定し、前記分断処理によって分断されたラインを検出し、分断されたラインを特定するための分断ライン情報を保持する分断ライン検出手段と、
前記分断ライン情報に基づき、オブジェクトの分断状態を判断する分断状態判断手段と、
分断状態に基づき、画像生成処理またはゲームパラメータ演算処理の少なくとも１つを行う処理手段と、してコンピュータを機能させることを特徴とするプログラム。
【請求項５】
請求項１乃至４のいずれかにおいて
前記処理手段は、
分断状態に基づき、分断後の部分オブジェクトの移動や動作パターン、分断後の部分オブジェクトに付随するエフェクトパターンの少なくとも１つを決定して、決定した移動や動作パターン及びエフェクトパターンの少なくとも１つに従って画像生成処理を行う画像生成処理手段を含むことを特徴とするプログラム。
【請求項６】
請求項１乃至５のいずれかにおいて
前記画像生成処理手段は、
分断状態に対応づけてパターンの異なるモーションデータを記憶し、
分断状態に基づき、対応するモーションデータを選択し、選択したモーションデータを用いて画像生成を行うことを特徴とするプログラム。
【請求項７】
請求項１乃至６のいずれかにおいて、
前記処理手段は、
分断状態に基づき、ゲーム処理に用いるゲームパラメータを演算し、ゲームパラメータに基づきゲーム演算を行うゲーム演算手段と、を含むことを特徴とするプログラム。
【請求項８】
コンピュータにより読取可能な情報記憶媒体であって、請求項１〜７のいずれかに記載のプログラムを記憶することを特徴とする情報記憶媒体。
【請求項９】
オブジェクト空間において、オブジェクトが分断される画像を生成するゲームシステムであって、
入力情報を受け付ける受け付け手段と、
オブジェクトに複数の代表点を設定し、前記入力情報に基づいて代表点の位置情報を演算する代表点位置情報演算手段と、
前記入力情報に基づいてオブジェクトの分断の有無を判断し、分断ありと判断した場合にはオブジェクトを複数の部分オブジェクトに分断する分断処理を行う分断処理手段と、
前記代表点の位置情報に基づき、オブジェクトの分断状態を判断する分断状態判断手段と、
前記分断状態に基づき、画像生成処理またはゲームパラメータ演算処理の少なくとも１つを行う処理手段と、を含むことを特徴とするゲームシステム
【請求項１０】
オブジェクト空間において、オブジェクトが分断される画像を生成するゲームシステムであって、
入力情報を受け付ける受け付け手段と、
オブジェクトに複数の代表点を設定し、前記入力情報に基づいて代表点の位置情報を演算する代表点位置情報演算手段と、
前記入力情報に基づいてオブジェクトの分断の有無を判断し、分断ありと判断した場合にはオブジェクトを複数の部分オブジェクトに分断する分断処理を行う分断処理手段と、
前記代表点間を結ぶ仮想的なラインを設定し、前記分断処理によって分断されたラインを検出し、分断されたラインを特定するための分断ライン情報を保持する分断ライン検出手段と、
前記分断ライン情報に基づき、オブジェクトの分断状態を判断する分断状態判断手段と、
分断状態に基づき、画像生成処理またはゲームパラメータ演算処理の少なくとも１つを行う処理手段と、を含むことを特徴とするゲームシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明本発明の幾つかの態様は、プログラム、情報記憶媒体及びゲームシステムに関する。
【背景技術】
【０００２】
従来から、仮想的な３次元空間であるオブジェクト空間内において仮想カメラ（所与の視点）から見える画像を生成するゲームシステム（画像生成システム）が知られており、いわゆる仮想現実感を体験できるものとして人気が高い。
【０００３】
例えば、プレーヤの入力情報に基づいて、プレーヤオブジェクトが敵オブジェクトを攻撃する処理を行うゲームシステムが存在する（例えば、特許文献１）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平８−１８２８６０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし、従来のゲームシステムでは、衝撃（例えば攻撃）等によりオブジェクトが分断される場合の分断後の様子をリアルに表現できないという問題があった。
【０００６】
本発明は、以上のような問題点に鑑みてなされたものである。本発明のいくつかの態様によれば、衝撃（例えば攻撃）等によりオブジェクトが分断される場合の分断後の様子をリアルに表現可能なプログラム、情報記憶媒体及びゲームシステムを提供することができる。
【課題を解決するための手段】
【０００７】
（１）本発明は、
オブジェクト空間において、オブジェクトが分断される画像を生成するゲーム装置のためのプログラムであって、
入力情報を受け付ける受け付け手段と、
オブジェクトに複数の代表点を設定し、前記入力情報に基づいて代表点の位置情報を演算する代表点位置情報演算手段と、
前記入力情報に基づいてオブジェクトの分断の有無を判断し、分断ありと判断した場合にはオブジェクトを複数の部分オブジェクトに分断する分断処理を行う分断処理手段と、
前記代表点の位置情報に基づき、オブジェクトの分断状態を判断する分断状態判断手段と、
前記分断状態に基づき、画像生成処理またはゲームパラメータ演算処理の少なくとも１つを行う処理手段と、してコンピュータを機能させることを特徴とするプログラムに関する。また、本発明は、コンピュータ読み取り可能な情報記憶媒体であって、上記各部としてコンピュータを機能させるプログラムを記憶した情報記憶媒体に関する。また、本発明は、上記各部を含むゲームシステムに関係する。
【０００８】
本発明によれば、衝撃（例えば攻撃）等によりオブジェクトが分断される場合の分断後の様子をリアルに表現することができる。
【０００９】
（２）このプログラム、情報記憶媒体、及びゲームシステムは、
前記代表点はオブジェクトを構成する部位に対応付けて設定されており、
分断状態判断手段は、
所与の部位に対応付けられた代表点の位置情報と他の部位に対応付けられた代表点の位置情報に基づき所与の部位と他の部位の位置関係を求め、当該位置関係が所定の分断条件を満たしていると判断した場合には、所与の部位を含む部分と他の部位を含む部分は分断されている分断状態であると判断してもよい。
【００１０】
前記代表点はオブジェクトを構成する複数の部位の各部位に対応付けて少なくとも１つ設定されていてもよい。
【００１１】
例えば所与の部位と他の部位の分轄前の位置関係（例えば所与の部位の代表点と他の部位の代表点が分轄前に取り得る距離の最大値）を求めて保持しておき、所与の部位と他の部位の現在の位置関係と分轄前の位置関係を比較して、比較結果に基づき、所与の部位を含む部分と他の部位を含む部分の分離の有無を判断してもよい。
【００１２】
（３）このプログラム、情報記憶媒体、及びゲームシステムは、
前記代表点位置情報演算手段は、
オブジェクトの分断後に分断された複数の部分オブジェクトに設定された前記複数の代表点の位置情報を演算してもよい。
【００１３】
分離前は演算せずに、分離後に演算することで、分離前の演算負荷を軽減することが出来る。例えば分離前は初期値を設定しておいてもよい。代表点に初期値が設定されている場合には、分断前と判断することが出来る。
【００１４】
分断後に代表点の位置情報を演算する場合には、同じ座標系における位置情報を求めることがこのましい。例えば所与のオブジェクトが第１の部分オブジェクトと第２の部分オブジェクトに分断された場合には、第１の部分オブジェクトと第２の部分オブジェクトにわかれた各代表点の位置座標を、ワールド座標系でもよいし、分断前の元のオブジェクトのローカル座標系でも良いし、分断後のいずれかの一方の部分オブジェクトのローカル座標系でもよいが、同じ座標系で求める。このようにすると、分断後の代表点の位置関係の演算負荷が軽くなる。
【００１５】
（４）このプログラム、情報記憶媒体、及びゲームシステムは、
オブジェクト空間において、オブジェクトが分断される画像を生成するゲーム装置のためのプログラムであって、
入力情報を受け付ける受け付け手段と、
オブジェクトに複数の代表点を設定し、前記入力情報に基づいて代表点の位置情報を演算する代表点位置情報演算手段と、
前記入力情報に基づいてオブジェクトの分断の有無を判断し、分断ありと判断した場合にはオブジェクトを複数の部分オブジェクトに分断する分断処理を行う分断処理手段と、
前記代表点間を結ぶ仮想的なラインを設定し、前記分断処理によって分断されたラインを検出し、分断されたラインを特定するための分断ライン情報を保持する分断ライン検出手段と、
前記分断ライン情報に基づき、オブジェクトの分断状態を判断する分断状態判断手段と、
分断状態に基づき、画像生成処理またはゲームパラメータ演算処理の少なくとも１つを行う処理手段と、してコンピュータを機能させることを特徴とするプログラムに関する。また、本発明は、コンピュータ読み取り可能な情報記憶媒体であって、上記各部としてコンピュータを機能させるプログラムを記憶した情報記憶媒体に関する。また、本発明は、上記各部を含むゲームシステムに関係する。
【００１６】
本発明によれば、衝撃（例えば攻撃）等によりオブジェクトが分断される場合の分断後の様子をリアルに表現することができる。
【００１７】
（５）このプログラム、情報記憶媒体、及びゲームシステムは、
前記処理手段は、
分断状態に基づき、分断後の部分オブジェクトの移動や動作パターン、分断後の部分オブジェクトに付随するエフェクトパターンの少なくとも１つを決定して、決定した移動や動作パターン及びエフェクトパターンの少なくとも１つに従って画像生成処理を行う画像生成処理手段を含んでもよい。
【００１８】
例えば分断状態に対応づけてパターンの異なるエフェクト要素（例えばエフェクト用のオブジェクトやエフェクト用のテクスチャ）を記憶し、
分断状態基づき、対応するエフェクト要素を選択し、選択したエフェクト要素を用いて画像生成を行ってもよい。
【００１９】
また例えば分断状態に対応づけてパターンの異なるエフェクト処理をおこなってもよい。例えばピクセルシェーダーに切断時のエフェクト放出物を異なる描画パターンで描画させてもよい。
【００２０】
（６）このプログラム、情報記憶媒体、及びゲームシステムは、
前記画像生成処理手段は、
分断状態に対応づけてパターンの異なるモーションデータを記憶し、
分断状態に基づき、対応するモーションデータを選択し、選択したモーションデータを用いて画像生成を行ってもよい。
【００２１】
（７）このプログラム、情報記憶媒体、及びゲームシステムは、
前記処理手段は、
分断状態に基づき、ゲーム処理に用いるゲームパラメータを演算し、ゲームパラメータに基づきゲーム演算を行うゲーム演算手段と、を含んでもよい。
ゲームパラメータは、例えば成績、得点、体力、ライフ等を示すパラメータでもよい。
【図面の簡単な説明】
【００２２】
【図１】本実施形態のゲームシステムの機能ブロック図。
【図２】本実施形態のゲーム画像の一例を示す図。
【図３】図３（Ａ）、図３（Ｂ）は、分断処理について説明するための図。
【図４】図４（Ａ）、図４（Ｂ）は、分断処理について説明するための図。
【図５】図５（Ａ）、図５（Ｂ）は、分断処理について説明するための図。
【図６】図６（Ａ）、図６（Ｂ）は、分断処理について説明するための図。
【図７】分断対象となるオブジェクトの構成（モデル情報）について説明する図。
【図８】オブジェクトに設定される複数の代表点について説明するための図。
【図９】代表点の位置情報について説明するための図である。
【図１０】オブジェクトが分断された場合の各代表点の距離の変化について説明するための図。
【図１１】分断前後の代表点の位置関係の変化について説明するための図。
【図１２】図１２（Ａ）（Ｂ）は、オブジェクトの分断状態のことなる例を示す図。
【図１３】代表点間に設定される仮想的なラインと、オブジェクトが分断された場合の分断されるラインの検出について説明するための図。
【図１４】分断ライン情報について説明するための図
【図１５】図１５（Ａ）（Ｂ）は分断状態とエフェクトパターンについて説明するための図。
【図１６】代表点情報に基づき分断状態を判断を判断する場合のフローチャート図。
【図１７】分断ライン情報に基づき分断状態を判断を判断する場合のフローチャート図。
【発明を実施するための形態】
【００２３】
以下、本実施形態について説明する。なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また本実施形態で説明される構成の全てが、本発明の必須構成要件であるとは限らない。
【００２４】
１．構成
図１に本実施形態のゲームシステム（画像生成システム）の機能ブロック図の例を示す。なお本実施形態のゲームシステムは図１の構成要素（各部）の一部を省略した構成としてもよい。
【００２５】
入力部１６０は、プレーヤからの入力情報を入力するための機器であり、プレーヤの入力情報を処理部に出力する。本実施形態の入力部１６０は、プレーヤの入力情報（方向キー、ＲＢボタン、ＬＢボタン、Ｘボタン、Ｙボタン等のキー入力によって検出された信号）を検出する。入力部１６０は、例えば、レバー、ボタン、ステアリング、マイク、タッチパネル型ディスプレイなどがある。
【００２６】
また、入力部１６０は、３軸の加速度を検出する加速度センサや、角速度を検出するジャイロセンサ、撮像部を備えた入力機器でもよい。例えば、入力機器は、プレーヤが把持して動かすものであってもよいし、プレーヤが身につけて動かすものであってもよい。また、入力機器には、プレーヤが把持する刀型コントローラ、あるいはプレーヤが身につける（プレーヤが手に装着する）グローブ型コントローラなど実際の道具を模して作られたコントローラも含まれる。また入力機器には、入力機器と一体化されているゲーム装置、携帯型ゲーム装置、携帯電話なども含まれる。
【００２７】
記憶部１７０は、処理部１００や通信部１９６などのワーク領域となるもので、その機能はＲＡＭ（ＶＲＡＭ）などにより実現できる。
【００２８】
オブジェクトデータ記憶部１７９には、オブジェクトデータが記憶される。例えば、オブジェクトデータ記憶部１７９には、頭部位、首部位、腕部位など、オブジェクト（プレーヤオブジェクト、他のオブジェクト）を構成する部位単位での特定点や、オブジェクト単位での代表点が記憶される。
【００２９】
情報記憶媒体１８０（コンピュータにより読み取り可能な媒体）は、プログラムやデータなどを格納するものであり、その機能は、光ディスク（ＣＤ、ＤＶＤ）、光磁気ディスク（ＭＯ）、磁気ディスク、ハードディスク、磁気テープ、或いはメモリ（ＲＯＭ）、メモリカードなどにより実現できる。
【００３０】
処理部１００は、情報記憶媒体１８０に入力されるプログラム（データ）に基づいて本実施形態の種々の処理を行う。
【００３１】
即ち情報記憶媒体１８０には、本実施形態の各部としてコンピュータを機能させるためのプログラム（各部の処理をコンピュータに実行させるためのプログラム）が記憶される。また、情報記憶媒体１８０に、プレーヤの個人データやゲームのセーブデータなどを記憶してもよい。
【００３２】
なお、本実施形態では、情報記憶媒体１８０にオブジェクトデータを記憶させ、所与のプログラムの実行によって、情報記憶媒体１８０に記憶されているオブジェクトデータをオブジェクトデータ記憶部１７９にロードしてもよい。
【００３３】
表示部１９０は、本実施形態により生成された画像を出力するものであり、その機能は、ＣＲＴ、ＬＣＤ、タッチパネル型ディスプレイ、或いはＨＭＤ（ヘッドマウントディスプレイ）などにより実現できる。音出力部１９２は、本実施形態により生成された音を出力するものであり、その機能は、スピーカ、或いはヘッドフォンなどにより実現できる。
【００３４】
通信部１９６は外部（例えばホスト装置や他のゲームシステム）との間で通信を行うための各種制御を行うものであり、その機能は、各種プロセッサ又は通信用ＡＳＩＣなどのハードウェアや、プログラムなどにより実現できる。
【００３５】
なお、本実施形態の各部としてコンピュータを機能させるためのプログラム（データ）を、ネットワークを介してサーバからダウンロードし、記憶部１７０や、情報記憶媒体１８０に記憶するようにしてもよい。このようなサーバの記憶部に記憶されているプログラムも本発明の範囲内に含めることができる。
【００３６】
処理部１００（プロセッサ）は、記憶部１７０内の主記憶部１７１をワーク領域として各種処理を行う。処理部１００の機能は各種プロセッサ（ＣＰＵ、ＤＳＰ等）、ＡＳＩＣ（ゲートアレイ等）などのハードウェアや、プログラムにより実現できる。
【００３７】
処理部１００は、代表点位置情報演算部１１０，オブジェクト空間設定部１１１、移動・動作処理部１１２、仮想カメラ制御部１１３、受け付け部１１４、分断状態判断部１１５、分断処理部１１６、分断ライン検出部１１７、ヒットエフェクト処理部１１８、ゲーム演算部１１９、描画部１２０、音生成部１３０を含む。なおこれらの一部を省略する構成としてもよい。
【００３８】
オブジェクト空間設定部１１１は、プレーヤオブジェクト、敵オブジェクト（他のオブジェクトの一例）、建物、球場、車、樹木、柱、壁、マップ（地形）などの表示物を表す各種オブジェクト（ポリゴン、自由曲面又はサブディビジョンサーフェスなどのプリミティブで構成されるオブジェクト）をオブジェクト空間に配置設定する処理を行う。即ちワールド座標系でのオブジェクトの位置や回転角度（向き、方向と同義）を決定し、その位置（Ｘ、Ｙ、Ｚ）にその回転角度（Ｘ、Ｙ、Ｚ軸回りでの回転角度）でオブジェクトを配置する。
【００３９】
移動・動作処理部１１２は、プレーヤオブジェクト、敵オブジェクト、車、又は飛行機等の移動・動作演算（移動・動作シミュレーション）を行う。すなわち入力部１６０によりプレーヤが入力した操作データや、プログラム（移動・動作アルゴリズム）や、各種データ（モーションデータ）などに基づいて、オブジェクトをオブジェクト空間内で移動させたり、オブジェクトを動作（モーション、アニメーション）させる処理を行う。具体的には、オブジェクトの移動情報（位置、回転角度、速度、或いは加速度）や動作情報（各パーツオブジェクトの位置、或いは回転角度）を、１フレーム（１／６０秒）毎に順次求めるシミュレーション処理を行う。なおフレームは、オブジェクトの移動・動作処理（シミュレーション処理）や画像生成処理を行う時間の単位である。
【００４０】
また移動・動作処理部１１２は、モデルオブジェクト（キャラクタ）にモーション（アニメーション）を行わせるモーション処理（モーション再生、モーション生成）を行う。このモーション処理は、モデルオブジェクトのモーションを、モーションデータ記憶部１７２に記憶されているモーションデータに基づいて再生することなどで実現できる。
【００４１】
具体的にはモーションデータ記憶部１７２には、モデルオブジェクトのスケルトンを構成する各骨（モデルオブジェクトを構成するパーツオブジェクト、関節、モーション骨）の位置又は回転角度（親の骨に対する子の骨の３軸周りの回転角度）等を含むモーションデータが記憶されている。移動・動作処理部１１２は、このモーションデータをモーションデータ記憶部１７２から読み出し、読み出されたモーションデータに基づいてモデルオブジェクトのスケルトンを構成する各骨（パーツオブジェクト）を動かすことで（スケルトン形状を変形させることで）、モデルオブジェクトのモーションを再生する。
【００４２】
仮想カメラ制御部１１３は、オブジェクト空間内の所与（任意）の視点から見える画像を生成するための仮想カメラ（視点）の制御処理を行う。具体的には、仮想カメラの位置（Ｘ、Ｙ、Ｚ）又は回転角度（Ｘ、Ｙ、Ｚ軸回りでの回転角度）を制御する処理（視点位置や視線方向を制御する処理）を行う。
【００４３】
例えば仮想カメラによりプレーヤオブジェクトを後方から撮影する場合には、プレーヤオブジェクトの位置又は回転の変化に仮想カメラが追従するように、仮想カメラの位置又は回転角度（仮想カメラの向き）を制御する。この場合には、移動・動作処理部１１１で得られたオブジェクトの位置、回転角度又は速度などの情報に基づいて、仮想カメラを制御できる。或いは、仮想カメラを、予め決められた回転角度で回転させたり、予め決められた移動経路で移動させる制御を行ってもよい。この場合には、仮想カメラの位置（移動経路）又は回転角度を特定するための仮想カメラデータに基づいて仮想カメラを制御する。なお、仮想カメラ（視点）が複数存在する場合には、それぞれの仮想カメラについて上記の制御処理が行われる。
【００４４】
受け付け部１１４は、プレーヤの入力情報を受け付ける。例えば、受け付け部１１４は、プレーヤの攻撃の入力情報、プレーヤの所定モード切替入力情報、方向指示の入力情報等を受け付ける。
【００４５】
分断状態判断部１１５は、前記代表点の位置情報に基づき、オブジェクトの分断状態（分断の有無、分断された部位等）を判断する。
【００４６】
分断処理部１１６は、入力情報に基づいてオブジェクトの分断の有無を判断し、分断ありと判断した場合にはオブジェクトを複数の部分オブジェクトに分断する分断処理を行う。例えば、プレーヤオブジェクトが他のオブジェクトを攻撃する攻撃方向に基づいて他のオブジェクトの分断面を設定し、他のオブジェクトを分断するか否かを判定し、他のオブジェクトを分断すると判定された場合に、他のオブジェクトを分断ラインに沿って分断する処理を行ってもよい。ここで、他のオブジェクトを分断ラインに沿って分断する処理とは、設定された分断面を境に、他のオブジェクトを複数のオブジェクトに分離させる処理を行う。分断処理部１１６は、他のオブジェクトを分断すると判定した場合に、分断面に基づきリアルタイムに複数のオブジェクトの頂点を求め、複数のオブジェクトを生成する処理を行う。
【００４７】
分断ライン検出部１１７は、代表点間を結ぶ仮想的なラインを設定し、前記分断処理によって分断されたラインを検出し、分断されたラインを特定するための分断ライン情報を保持する。
【００４８】
ゲーム演算部１１８は、入力部１６０からの入力データやプログラムなどに基づいて、ゲーム処理を行う。ここでゲーム演算としては、ゲーム開始条件が満たされた場合にゲームを開始する処理、ゲームを進行させる処理、プレーヤオブジェクト、敵オブジェクトやマップなどのオブジェクトを配置する処理、オブジェクトを表示する処理、ゲーム結果を演算する処理、或いはゲーム終了条件が満たされた場合にゲームを終了する処理などがある。
【００４９】
またゲーム演算部はヒット判定をおこなってもよい。例えばプレーヤオブジェクトと敵オブジェクト（他のオブジェクトの一例）とのヒット判定を行う。ここで、プレーヤオブジェクト、敵オブジェクトとは、各オブジェクトが所持する武器（例えば、剣、ブーメラン、斧）などを含む。プレーヤオブジェクトと敵オブジェクトとがヒットしたか否かを判定する処理を行う場合には、プレーヤオブジェクトのヒット領域と、敵オブジェクトのヒット領域とに基づいて、第１のモデルオブジェクトと第２のモデルオブジェクトとがヒットしたか否かを判定してもよい。
【００５０】
ゲーム演算部１１８は、分断状態に基づき、ゲーム処理に用いるゲームパラメータ（成績、得点、体力、ライフ等）を演算し、ゲームパラメータに基づきゲーム演算を行う。
【００５１】
ゲーム演算部１１８は、複数のステージを用意し、各ステージにおいて、プレーヤオブジェクトが、ステージに存在する所定数の敵オブジェクトを倒したか否かを判断する処理を行う。具体的には、ヒット判定結果に基づいて、プレーヤオブジェクトの体力値（ゲームパラメータの一例）や、敵オブジェクトの体力値（ゲームパラメータの一例）を変動させる処理を行う。例えば、プレーヤの攻撃の入力情報が検知されると、プレーヤの攻撃の入力情報に基づいて、プレーヤオブジェクトを移動・動作させ（攻撃のモーションを実行させ）、敵オブジェクトにヒットしたと判定されると、敵オブジェクトの体力値から所定値（例えば攻撃に応じたダメージ値）を減算する処理を行う。そして、敵オブジェクトの体力値が零になると、敵オブジェクトを倒したと判断する。特に、本実施形態のゲーム演算部１１８は、分断されたと判定された場合に、敵オブジェクトの体力値を零にする処理を行なうようにしている。
【００５２】
また、プレーヤオブジェクトが敵オブジェクトからの攻撃を防御できず、敵オブジェクトからの攻撃を受けた場合には、プレーヤオブジェクトの体力値から所定値を減算する処理を行う。そして、プレーヤオブジェクトの体力値が零になると、ゲームが終了する。
【００５３】
ヒットエフェクト処理部１１９は、プレーヤオブジェクトが敵オブジェクトにヒットしたと判定された場合には、ヒットエフェクト処理を行う。例えば、ヒットエフェクト処理部１１９は、敵オブジェクトが分断されたと判定された場合に、敵オブジェクトの分断面から、液体が放出する画像生成処理、光が放出する画像生成処理等を行う。
【００５４】
エフェクトデータ記憶部１７４には、分断状態に対応づけてパターンの異なるエフェクト要素（例えばエフェクト用のオブジェクトやエフェクト用のテクスチャ）が記憶されている。ヒットエフェクト処理部１１９は、分断状態基づき、対応するエフェクト要素を選択し、選択したエフェクト要素を用いて画像生成を行うための処理を行う。
【００５５】
またヒットエフェクト処理部１１９は分断状態に対応づけてパターンの異なるエフェクト処理をおこなってもよい。例えばピクセルシェーダーに切断時のエフェクト放出物を異なる描画パターンで描画させてもよい。
【００５６】
描画部１２０は、処理部１００で行われる種々の処理（ゲーム処理）の結果に基づいて描画処理を行い、これにより画像を生成し、表示部１９０に出力する。いわゆる３次元ゲーム画像を生成する場合には、まず、座標変換（ワールド座標変換、カメラ座標変換）、クリッピング処理、或いは透視変換等のジオメトリ処理が行われ、その処理結果に基づいて、描画データ（プリミティブの頂点の位置座標、テクスチャ座標、色データ、法線ベクトル或いはα値等）が作成される。そして、この描画データ（オブジェクトデータ）に基づいて、透視変換後（ジオメトリ処理後）のオブジェクト（１又は複数のプリミティブ）を画像バッファ１７３（フレームバッファや中間バッファ（ワークバッファ）などのピクセル単位で画像情報を記憶できるバッファ。ＶＲＡＭ）に描画する。これにより、オブジェクト空間内において仮想カメラ（所与の視点）から見える画像が生成される。なお、仮想カメラ（視点）が複数存在する場合には、それぞれの仮想カメラから見える画像を分割画像として１画面に表示できるように描画処理を行う。
【００５７】
描画部１２０は、ジオメトリ処理部１２２、シェーディング処理部１２４、αブレンディング部１２６、陰面消去部１２８を含む。
【００５８】
ジオメトリ処理部１２２は、オブジェクトに対してジオメトリ処理を行う。具体的には、座標変換、クリッピング処理、透視変換、或いは光源計算等のジオメトリ処理を行う。そして、ジオメトリ処理後（透視変換後）のオブジェクトデータ（オブジェクトの頂点の位置座標、テクスチャ座標、色データ（輝度データ）、法線ベクトル、或いはα値等）は、オブジェクトデータ記憶部１７９に保存される。
【００５９】
シェーディング処理部１２４は、オブジェクトに対して陰影付けをするシェーディング処理を行う。具体的には、ジオメトリ処理部１２２で行われた光源計算の結果（陰影情報）に基づき、オブジェクトの描画ピクセルの輝度を調整する。必要に応じて、ジオメトリ処理部１２２で光源計算を行わずに、シェーディング処理部１２４で光源計算を行わせてもよい。シェーディング処理としては、例えば、フラットシェーディング（flat Shading）、あるいはグローシェーディング（Gourand Shading）やフォンシェーディング（Phong  Shading）などのスムーズシェーディングをオブジェクトに対して行うことができる。
【００６０】
αブレンディング部１２６は、α値（Ａ値）に基づく半透明合成処理（通常αブレンディング、加算αブレンディング又は減算αブレンディング等）を行う。例えば通常αブレンディングの場合には下式（１）〜（３）の処理を行う。
【００６１】
ＲＱ＝（１−α）×Ｒ１＋α×Ｒ２    （１）
ＧＱ＝（１−α）×Ｇ１＋α×Ｇ２    （２）
ＢＱ＝（１−α）×Ｂ１＋α×Ｂ２    （３）
【００６２】
また、加算αブレンディングの場合には下式（４）〜（６）の処理を行う。
【００６３】
ＲＱ＝Ｒ１＋α×Ｒ２                （４）
ＧＱ＝Ｇ１＋α×Ｇ２                （５）
ＢＱ＝Ｂ１＋α×Ｂ２                （６）
【００６４】
また、減算αブレンディングの場合には下式（７）〜（９）の処理を行う。
【００６５】
ＲＱ＝Ｒ１−α×Ｒ２                （７）
ＧＱ＝Ｇ１−α×Ｇ２                （８）
ＢＱ＝Ｂ１−α×Ｂ２                （９）
【００６６】
ここで、Ｒ１、Ｇ１、Ｂ１は、画像バッファ１７３に既に描画されている画像（元画像）のＲＧＢ成分であり、Ｒ２、Ｇ２、Ｂ２は、画像バッファ１７３に描画すべき画像のＲＧＢ成分である。また、ＲＱ、ＧＱ、ＢＱは、αブレンディングにより得られる画像のＲＧＢ成分である。なお、α値は、各ピクセル（テクセル、ドット）に関連づけて記憶できる情報であり、例えば色情報以外のプラスアルファの情報である。α値は、マスク情報、半透明度（透明度、不透明度と等価）、バンプ情報などとして使用できる。
【００６７】
隠面消去部１２８は、描画ピクセルのＺ値（奥行き情報）が格納されるＺバッファ１７５（奥行きバッファ）を用いて、Ｚバッファ法（奥行き比較法、Ｚテスト）により隠面消去処理を行う。すなわちオブジェクトのプリミティブに対応する描画ピクセルを描画する際に、Ｚバッファ１７５に格納されるＺ値を参照する。そして参照されたＺバッファ１７５のＺ値と、プリミティブの描画ピクセルでのＺ値とを比較し、描画ピクセルでのＺ値が、仮想カメラから見て手前側となるＺ値（例えば小さなＺ値）である場合には、その描画ピクセルの描画処理を行うとともにＺバッファ１７５のＺ値を新たなＺ値に更新する。
【００６８】
音生成部１３０は、処理部１００で行われる種々の処理の結果に基づいて音処理を行い、ＢＧＭ、効果音、又は音声などのゲーム音を生成し、音出力部１９２に出力する。
【００６９】
なお、本実施形態のゲームシステムは、１人のプレーヤのみがプレイできるシングルプレーヤモード専用のシステムにしてもよいし、複数のプレーヤがプレイできるマルチプレーヤモードも備えるシステムにしてもよい。
【００７０】
また複数のプレーヤがプレイする場合に、これらの複数のプレーヤに提供するゲーム画像やゲーム音を、１つの端末を用いて生成してもよい。
【００７１】
また、本実施形態のゲームシステムでは、ネットワーク（伝送ライン、通信回線）を介して接続された他の１又は複数のゲームシステムと、データ（例えば入力情報）を送受信する処理を行い、オンラインゲームを実現できるようにしてもよい。
【００７２】
２．本実施形態の手法の概要
２−１．ゲーム概要
図２は、本実施形態のゲームの概要を説明するための図である。
【００７３】
本実施形態のゲームシステムは、オブジェクト空間において、オブジェクトが分断される画像を生成するゲームシステムである。本実施形態では、オブジェクト空間に存在するプレーヤオブジェクトＰＯが敵オブジェクトＥＯ（他のオブジェクトの一例）に対して攻撃を行う。本実施形態のゲームシステムは、プレーヤから入力された攻撃入力情報（縦切り攻撃入力情報、横切り攻撃入力情報）を受け付けると、プレーヤオブジェクトＰＯが装備する剣ＳＤで敵オブジェクトＥＯを斬る攻撃モーションを行わせる処理を行う。
【００７４】
例えば、本実施形態では、「縦斬り攻撃入力情報」を受け付けると、プレーヤオブジェクトＰＯに、剣ＳＤを上から下へ振り下ろす「縦斬り」の攻撃動作を行わせ、「横斬り攻撃入力情報」を受け付けると、プレーヤオブジェクトＰＯに、剣ＳＤを右から左へ或いは左から右へ振る「横斬り」の攻撃動作を行わせる。
【００７５】
２−２．分断処理
また、本実施形態では、プレーヤから入力された攻撃入力情報を受け付けると、攻撃対象である敵オブジェクトＥＯを切断する処理（分断処理の一例）を行う。
【００７６】
例えば、本実施形態では、「縦斬り攻撃入力情報」を受け付けると、図３（Ａ）に示すように、攻撃対象となる敵オブジェクトＥＯに対して、攻撃方向である縦方向（Ｙ軸方向）に平行な仮想面ＶＰを設定し、図３（Ｂ）に示すように、敵オブジェクトＥＯを、仮想面ＶＰを境に複数のオブジェクトＥＯ１、ＥＯ２に分離する処理を行う。
【００７７】
また「横斬り攻撃入力情報」を受け付けると、図４（Ａ）に示すように、攻撃対象となる敵オブジェクトＥＯに対して、攻撃方向である横方向（Ｘ軸方向）に平行な仮想面ＶＰを設定し、図４（Ｂ）に示すように、敵オブジェクトＥＯを、仮想面ＶＰを境に複数のオブジェクトＥＯ１〜ＥＯ４に分離する処理を行う。
【００７８】
より詳細には、「縦斬り攻撃入力情報」を受け付けた場合には、図５（Ａ）に示すように、プレーヤオブジェクトＰＯの代表点ＰＰと敵オブジェクトＥＯの代表点ＥＰとを通過する線を含み、攻撃方向である縦方向（Ｙ軸方向）に平行な仮想面ＶＰを設定する。また、図５（Ｂ）に示すように、プレーヤオブジェクトＰＯの方向ＰＶ（又は移動方向）に延び、縦方向（Ｙ軸方向）に平行な仮想面ＶＰを設定するようにしてもよい。
【００７９】
同様に、「横斬り攻撃入力情報」を受け付けた場合には、図６（Ａ）に示すように、プレーヤオブジェクトＰＯの代表点ＰＰと敵オブジェクトＥＯの代表点ＥＰとを通過する線を含み、攻撃方向である横方向（Ｘ軸方向）に平行な仮想面ＶＰを設定する。また、図６（Ｂ）に示すように、プレーヤオブジェクトＰＯの方向ＰＶ（又は移動方向）に延び、横方向（Ｘ軸方向）に平行な仮想面ＶＰを設定するようにしてもよい。
【００８０】
このように仮想面ＶＰは、プレーヤオブジェクトＰＯと敵オブジェクトＥＯの位置や、プレーヤオブジェクトＰＯの向き或いは攻撃方向に基づき設定される。また入力部からの方向指示の入力情報に基づき仮想面ＶＰを移動するようにしてもよい。例えば図５（Ｂ）に示す例において、方向指示の入力情報に基づいて仮想面ＶＰを横方向（プレーヤオブジェクトの方向ＰＶに垂直な方向）に平行移動するようにしてもよいし、図６（Ｂ）に示す例において、方向指示の入力情報に基づいて仮想面ＶＰを縦方向（プレーヤオブジェクトの方向ＰＶに垂直な方向）に平行移動するようにしてもよい。
【００８１】
２−３．分断対象となるオブジェクトの構成
本実施の形態の分断対象となるオブジェクトの構成（モデル情報）について説明する。
【００８２】
本実施形態で分断対象となるオブジェクトは、図７に示すように、モデルオブジェクトＭＯＢ（キャラクタ）が、複数のパーツオブジェクト（腰１２、胸１４、首１６、頭１８、右上腕２０、右前腕２２、右手２４、左上腕２６、左前腕２８、左手３０、右股Ｒ３２、右すね３４、右足３６、左股３８、左すね４０、左足４２）により構成されている。そして、これらのパーツオブジェクト（部位）の位置や回転角度（方向）は、スケルトンモデルを構成する骨Ｂ０〜Ｂ１９の位置（関節Ｊ０〜Ｊ１５の位置）や回転角度（親の骨に対する子の骨の相対的な回転角度）により特定される。なお、これらの骨、関節は仮想的なものであり、現実に表示されるオブジェクトではない。
【００８３】
本実施形態では、モデルオブジェクトＭＯＢのスケルトンを構成する骨（モーション骨、関節、パーツオブジェクト）が親子（階層）構造を有している。例えば、手２４、３０の骨Ｂ７、Ｂ１１の親は前腕２２、２８の骨Ｂ６、Ｂ１０となり、Ｂ６、Ｂ１０の親は上腕２０、２６の骨Ｂ５、Ｂ９となる。また、Ｂ５、Ｂ９の親は胸１４の骨Ｂ１となり、Ｂ１の親は腰１２の骨Ｂ０となる。また、足３６、４２の骨Ｂ１５、Ｂ１９の親はすね３４、４０の骨Ｂ１４、Ｂ１８となり、Ｂ１４、Ｂ１８の親は股３２、３８の骨Ｂ１３、Ｂ１７となり、Ｂ１３、Ｂ１７の親は腰１２の骨Ｂ１２、Ｂ１６となる。
【００８４】
モーションデータ記憶部１７２には、これらの骨（パーツオブジェクト、関節）の位置、回転角度が、モーションデータとして記憶されている。なお骨の回転角度だけをモーションデータに含ませて、骨の位置（関節の位置）についてはモデルオブジェクトのモデルデータの中に含ませてもよい。
【００８５】
例えば、歩きモーションが、Ｍ０、Ｍ１、Ｍ２・・・・ＭＮという基準モーション（各フレームでのモーション）により構成されているとする。するとこれらの各基準モーションＭ０、Ｍ１、Ｍ２・・・・ＭＮでの各骨の位置又は回転角度が、モーションデータとして予め記憶されている。そして、例えば基準モーションＭ０の各パーツオブジェクトの位置、回転角度を読み出し、次に基準モーションＭ１の各パーツオブジェクトの位置、回転角度を読み出すというように、基準モーションのモーションデータを時間経過に伴い順次読み出すことで、モーション処理（モーション再生）が実現される。
【００８６】
なお、モーションデータ記憶部１７２に記憶するモーションデータは、一般的には、モーションキャプチャにより取得したり、デザイナが作成する。またモーションデータは、親の骨の位置、回転角度に対する子の骨の相対的な位置、相対的な回転角度（３軸周りの回転角度）で表される。例えば、親の骨ＢＭＰに対する子の骨ＢＭＣの、Ｘ軸、Ｙ軸、Ｚ軸回りの回転角度α、β、γが、モーションデータとして記憶されてもよい。
【００８７】
また、図７においてＲＰはモデルオブジェクトＭＯＢの代表点であり、このＲＰは例えば腰（Ｊ０）の真下の位置（高さ零の位置）に設定されている。また図７の骨Ｂ１〜Ｂ１９以外にも、モーション骨によるモデルオブジェクトの変形を補助する補助骨を設けてもよい。
【００８８】
２−４．代表点の位置情報演算処理
本実施の形態では、オブジェクトに複数の代表点を設定し、入力情報に基づいて代表点の位置情報（位置座標等）を演算する代表点位置情報演算処理を行う。
【００８９】
図８は、本実施の形態のオブジェクトに設定される複数の代表点について説明するための図である。
【００９０】
Ｄ１〜Ｄ３２がオブジェクトに設定された代表点である。代表点Ｄ１〜Ｄ３２はオブジェクトを構成する複数の部位の各部位に対応付けて（少なくとも１つ）設定されていてもよい。図７におけるＲＰ（モデルオブジェクトＭＯＢの代表点）は、モデルオブジェクトＭＯＢの位置座標を設定するために用いられるが、以下に説明する代表点はオブジェクトのの各部位の位置を把握するために用いられてもよい。
【００９１】
代表点Ｄ１〜Ｄ４はオブジェクトの頭部に対応付けて設定された代表点である。オブジェクトの頭部を仮想的に４つの部位Ｂ１からＢ４（部位Ｂ１は左目付近の部位であり、部位Ｂ２は左目付近の部位であり、部位Ｂ３は口の左側付近の部位であり、部位Ｂ４は口の右側付近の部位）に分轄して、代表点Ｄ１からＤ４はそれぞれ部位Ｂ１〜Ｂ４に対応させてもよい。
【００９２】
代表点Ｄ５、Ｄ６はオブジェクトの胸部に対応付けて設定された代表点である。オブジェクトの胸部を仮想的に２つの部位Ｂ５、Ｂ６（部位Ｂ５は左胸付近の部位であり、部位Ｂ６は右胸付近の部位である）に分轄して、代表点Ｄ５、Ｄ６はそれぞれ部位Ｂ５、６４に対応させてもよい。
【００９３】
代表点Ｄ７、Ｄ９はオブジェクトの左上腕部に対応付けて設定された代表点である。オブジェクトの左上腕部を仮想的に２つの部位Ｂ７、Ｂ９（部位Ｂ７は左上腕上部付近の部位であり、部位Ｂ９は左上腕下部付近の部位である）に分轄して、代表点Ｄ７、Ｄ９はそれぞれ部位Ｂ７、Ｂ９に対応させてもよい。
【００９４】
代表点Ｄ８、Ｄ１０はオブジェクトの右上腕部に対応付けて設定された代表点である。オブジェクトの右上腕部を仮想的に２つの部位Ｂ８、Ｂ１０（部位Ｂ８は右上腕上部付近の部位であり、部位Ｂ１０は右上腕下部付近の部位である）に分轄して、代表点Ｄ８、Ｄ１０はそれぞれ部位Ｂ８、Ｂ１０に対応させてもよい。
【００９５】
代表点Ｄ１１、Ｄ１３はオブジェクトの左下腕部に対応付けて設定された代表点である。オブジェクトの左下腕部を仮想的に２つの部位Ｂ１１、Ｂ１３（部位Ｂ１１は左下腕上部付近の部位であり、部位Ｂ１３は左下腕下部付近の部位である）に分轄して、代表点Ｄ１１、Ｄ１３はそれぞれ部位Ｂ１１、Ｂ１３に対応させてもよい。
【００９６】
代表点Ｄ１２、Ｄ１４はオブジェクトの右下腕部に対応付けて設定された代表点である。オブジェクトの右下腕部を仮想的に２つの部位Ｂ１２、Ｂ１４（部位Ｂ１２は右下腕上部付近の部位であり、部位Ｂ１４は右下腕下部付近の部位である）に分轄して、代表点Ｄ１２、Ｄ１４はそれぞれ部位Ｂ１２、Ｂ１４に対応させてもよい。
【００９７】
代表点Ｄ１５、Ｄ１７はオブジェクトの左手部に対応付けて設定された代表点である。オブジェクトの左手部を仮想的に２つの部位Ｂ１５、Ｂ１７（部位Ｂ１５は左手上部付近の部位であり、部位Ｂ１７は左手下部付近の部位である）に分轄して、代表点Ｄ１５、Ｄ１７はそれぞれ部位Ｂ１５、Ｂ１７に対応させてもよい。
【００９８】
代表点Ｄ１６、Ｄ１８はオブジェクトの右手部に対応付けて設定された代表点である。オブジェクトの右手部を仮想的に２つの部位Ｂ１６、Ｂ１８（部位Ｂ１６は右手上部付近の部位であり、部位Ｂ１８は右手下部付近の部位である）に分轄して、代表点Ｄ１６、Ｄ１８はそれぞれ部位Ｂ１６、Ｂ１８に対応させてもよい。
【００９９】
代表点Ｄ１９、Ｄ２０はオブジェクトの腰部に対応付けて設定された代表点である。オブジェクトの腰部を仮想的に２つの部位Ｂ１９、Ｂ２０（部位Ｂ１９は腰部付近の部位であり、部位Ｂ２０は腰部付近の部位である）に分轄して、代表点Ｄ１９、Ｄ２０はそれぞれ部位Ｂ１９、Ｂ２０に対応させてもよい。
【０１００】
代表点Ｄ２１、Ｄ２３はオブジェクトの左股部に対応付けて設定された代表点である。オブジェクトの左股部を仮想的に２つの部位Ｂ２１、Ｂ２３（部位Ｂ２１は左股上部付近の部位であり、部位Ｂ２３は左股下部付近の部位である）に分轄して、代表点Ｄ２１、Ｄ２３はそれぞれ部位Ｂ２１、Ｂ２３に対応させてもよい。
【０１０１】
代表点Ｄ２２、Ｄ２４はオブジェクトの右股部に対応付けて設定された代表点である。オブジェクトの右股部を仮想的に２つの部位Ｂ２２、Ｂ２４（部位Ｂ２２は右股上部付近の部位であり、部位Ｂ２４は右股下部付近の部位である）に分轄して、代表点Ｄ２２、Ｄ２４はそれぞれ部位Ｂ２２、Ｂ２４に対応させてもよい。
【０１０２】
代表点Ｄ２５、Ｄ２７はオブジェクトの左すね部に対応付けて設定された代表点である。オブジェクトの左すね部を仮想的に２つの部位Ｂ２５、Ｂ２７（部位Ｂ２５は左すね上部付近の部位であり、部位Ｂ２７は左すね下部付近の部位である）に分轄して、代表点Ｄ２５、Ｄ２７はそれぞれ部位Ｂ２５、Ｂ２７に対応させてもよい。
【０１０３】
代表点Ｄ２６、Ｄ２８はオブジェクトの右すね部に対応付けて設定された代表点である。オブジェクトの右すね部を仮想的に２つの部位Ｂ２６、Ｂ２８（部位Ｂ２６は左すね上部付近の部位であり、部位Ｂ２８は左すね下部付近の部位である）に分轄して、代表点Ｄ２６、Ｄ２８はそれぞれ部位Ｂ２６、Ｂ２８に対応させてもよい。
【０１０４】
代表点Ｄ２９、Ｄ３１はオブジェクトの左足部に対応付けて設定された代表点である。オブジェクトの左足部を仮想的に２つの部位Ｂ２９、Ｂ３１（部位Ｂ２９は左足上部付近の部位であり、部位Ｂ３１は左足下部付近の部位である）に分轄して、代表点Ｄ２９、Ｄ３１はそれぞれ部位Ｂ２９、Ｂ３１に対応させてもよい。
【０１０５】
代表点Ｄ３０、Ｄ３２はオブジェクトの右足部に対応付けて設定された代表点である。オブジェクトの右足部を仮想的に２つの部位Ｂ３０、Ｂ３２（部位Ｂ３０は右足上部付近の部位であり、部位Ｂ３２は右足下部付近の部位である）に分轄して、代表点Ｄ３０、Ｄ３２はそれぞれ部位Ｂ３０、Ｂ３２に対応させてもよい。
【０１０６】
各代表点Ｄ１からＤ３２は、例えば図７のスケルトンモデルを構成する骨Ｂ０〜Ｂ１９の位置（関節Ｊ０〜Ｊ１５の位置）に関連づけて、モデル情報として設定しておいてもよい。例えば骨Ｂ０〜Ｂ１９上に代表点を設定してもよい。また関節Ｊ０〜Ｊ１５を代表点としてもよい。
【０１０７】
そして各フレーム毎にオブジェクトの位置やモーション演算を行う際に、オブジェクトの位置情報や骨Ｂ０〜Ｂ１９の位置（関節Ｊ０〜Ｊ１５の位置）情報に基づき各代表点の位置座標を演算するようにしても良い。
【０１０８】
図９は代表点の位置情報について説明するための図である。本実施の形態では、オブジェクトの代表点の位置情報を各フレーム毎に演算し、図９に示すように、オブジェクト情報３１０として、オブジェクトの代表点３２０の位置座標３３０を代表点３２０が属するオブジェクトＯＢ１に関連づけて記憶させている。
【０１０９】
オブジェクトが有する各代表点３２０の位置情報３３０はたとえば、各代表点のワールド座標系における位置座標でもよいし、各オブジェクトのローカル座標系における位置座標でもよい。ただし、各オブジェクトのローカル座標系における位置座標としてもつ場合には、オブジェクトが複数の部分オブジェクトに分断された場合も同じローカル座標系の位置座標としてもつことが好ましい（例えば分断後も分断前のオブジェクトのローカル座標系における位置座標としてもってもよいし、分断後のいずれかの部分オブジェクトのローカル座標系における位置座標としてもってもよい）。
【０１１０】
またオブジェクトが有する各代表点の位置情報はオブジェクト情報として、オブジェクトに関連づけて保持されてもよい。オブジェクトが複数の部分オブジェクトに分断された後も、分断前のオブジェクトに関連づけてオブジェクトが有する各代表点の位置情報を管理するようにしてもよい。またオブジェクトが複数の部分オブジェクトに分断された後は、分断後の代表点の位置情報は、代表点が属する新たたな分断オブジェクトに関連づけて管理されてもよいし、いずれか一方のオブジェクトに関連づけて管理するようにしてもよい。例えば分断後の主たるオブジェクト（例えば分断後の本体にあたるほう）に関連づけて管理するようにしてもよい。
【０１１１】
また各代表点の位置情報は、オブジェクトの分断前後に関わらず、オブジェクトが存在している間は、各フレーム毎にもとめるようにしても良いし、オブジェクトの分断後に分断された複数の部分オブジェクトに設定された前記複数の代表点の位置情報（位置座標等）を演算するようにしてもよい。
【０１１２】
２−５．分断状態判断処理
本実施の形態では、前記代表点の位置情報に基づき、オブジェクトの分断状態（分断の有無、分断された部位等）を判断する。
【０１１３】
図１０は、オブジェクトＯＢ１（図８参照）が分断された場合の各代表点の距離の変化について説明するための図である。同図に示すようにオブジェクトＯＢ１（図８参照）の頭部の右部分が分断されている。この場合分断後の代表点Ｄ１’と代表点Ｄ３’の距離Ｋ１’は、分断前の代表点Ｄ１’と代表点Ｄ３’の距離の距離Ｋ１と同じである。しかし分断後の代表点Ｄ１’と代表点Ｄ２’の距離Ｌ２は、分断前の代表点Ｄ１と代表点Ｄ２の距離の距離Ｋ２より長くなっている。代表点Ｄ１と代表点Ｄ３は同じ関節の同じ部位に設定された代表点であるため、分断されなければ距離は一定Ｋ１である。従って所与のフレームにおいて演算された代表点Ｄ１と代表点Ｄ３の距離がＫ１より大きくなった場合には、代表点Ｄ１が属する部位（ここではＢ１）と代表点Ｄ３が属する部位（ここではＢ３）が分断されていると判断することができる。
【０１１４】
また同図に示すように、オブジェクトＯＢ１（図８参照）の右足部３６が右すね部３４から分断されている。この場合分断後の代表点Ｄ２８’と代表点Ｄ３０’の距離Ｋ３’は、分断前の代表点Ｄ２８と代表点Ｄ３０の距離の距離Ｋ３より長くなっている。ここで代表点Ｄ２８と代表点Ｄ３０は異なる関節の異なる部位に設定された代表点である。
【０１１５】
図１１は、分断前後の代表点Ｄ２８と代表点Ｄ３０の位置関係の変化について説明するための図である。右足部３６と右すね部３４は図示しない関節で接続されているため、右足部３６と右すね部３４の位置関係は変化する。例えば右足部３６は右すね部３４に対して、３６−１〜３６−３に示すように様々な位置関係を取ることができる。従って代表点Ｄ２８と代表点Ｄ３０の距離もＫ３−１〜Ｋ３１−３と変化する。そこで変化可能な距離の最大値Ｋ３maxを求めておいて、代表点Ｄ２８と代表点Ｄ３０の距離が変化可能な距離の最大値Ｋ３maxより大きくなった場合には、代表点Ｄ１が属する部位（ここではＢ１）と代表点Ｄ３が属する部位（ここではＢ３）が分断されていると判断することができる。
【０１１６】
２−６．分断ライン検出処理と分断ライン情報を用いた分断状態判断処理
本実施の形態の他の態様では、代表点間を結ぶ仮想的なラインを設定し、前記分断処理によって分断されたラインを検出し、分断されたラインを特定するための分断ライン情報を保持し、分断ライン情報に基づき、オブジェクトの分断状態を判断する。
【０１１７】
図１３は、代表点間に設定される仮想的なラインと、オブジェクトＯＢ１（図８参照）が分断された場合の分断されるラインの検出について説明するための図である。同図に示すようにオブジェクトＯＢ１が第１の仮想面４１０で分断された場合には、代表点Ｄ８と代表点Ｄ１０を結ぶ仮想的なラインＬ１が分断されている。また同図に示すようにオブジェクトＯＢ１が第２の仮想面４２０で分断された場合には、代表点Ｄ１と代表点Ｄ２を結ぶ仮想的なラインＬ２、代表点Ｄ３と代表点Ｄ４を結ぶ仮想的なラインＬ３、代表点Ｄ５と代表点Ｄ６を結ぶ仮想的なラインＬ４、代表点Ｄ１９と代表点Ｄ２０を結ぶ仮想的なラインＬ５が分断されている。
【０１１８】
本実施の形態では分断時の各代表点の位置情報と入力情報によって設定される分断用の仮想面の位置関係に基づき分断処理によって分断されたラインを検出する。そして分断されたラインを特定するための分断ライン情報を保持しておく。例えば図１４（Ａ）に示すように分断されたラインＩＤ４５２と、当該ラインに対応する代表点情報４５４（当該ラインの分断前の端点にあたる代表点ＩＤ）を分断ライン情報４５０として、分断ラインが属するオブジェクトＯＢ１に関連づけて記憶させてもよい。
【０１１９】
このようにすると、分断ライン情報を参照することで、分断後の任意のタイミングでオブジェクトの分断状態を判断することが出来る。
【０１２０】
なお図７の関節Ｊ１〜Ｊ１５を代表点とし、骨Ｂ１〜Ｂ１９（骨は関節を繋ぐラインに相当）を代表点を繋ぐ仮想的なラインと考えて、分断される骨の情報を分断ライン情報として記憶してもよい。
【０１２１】
この場合、図１４（Ｂ）に示すように分断ライン情報４６０として、骨ＩＤ４６２と当該骨の分断の有無を示す分断フラグ４６４をもたせてもよい。
【０１２２】
２−７．分断状態に応じたモーション選択
本実施の形態では、分断状態に対応づけてパターンの異なるモーションデータを記憶し、分断状態に基づき、対応するモーションデータを選択し、選択したモーションデータを用いて画像生成を行う。
【０１２３】
図１２（Ａ）（Ｂ）は、オブジェクトの分断状態のことなる例を示している。図１２（Ａ）は、オブジェクトＯＢ１が、右股３２と右すね３４と右足３６を含む第１の部分４１０とそれ以外の第２の部分４２０に分断された状態（第１の分断状態）を示している。  
【０１２４】
分断後は第１の部分４１０は第１の部分オブジェクトとなり、第２の部分４２０は第２の部分オブジェクトとなり、いずれも独立して移動動作する別個のオブジェクトとなる。
【０１２５】
図１２（Ｂ）は、オブジェクトＯＢ１が、左上腕２６の下部と左下腕部２８と左手部３０を含む第３の部分４３０とそれ以外の第４の部分４４０に分断された状態（第２の分断状態）を示している。
【０１２６】
分断後は第３の部分４３０は第３の部分オブジェクトとなり、第４の部分４４０は第４の部分オブジェクトとなり、いずれも独立して移動動作する別個のオブジェクトとなる。
【０１２７】
このような場合、分断後の第２の部分オブジェクトと第４の部分オブジェクトは、分断された部分が異なるので、使用するモーションデータも異なってくる。
【０１２８】
本実施の形態では、オブジェクトがどの部分が分断されたかに応じて異なる動作をさせるための分断された部位に応じたモーションデータが複数用意している。
【０１２９】
例えば頭が分断された場合（第１の分断状態）では、本体（頭以外の部分）の動作を表現する場合にはモーションデータｍｄ１を使用し、右腕が分断された場合（第２の分断状態）の本体（右腕以外の部分）の動作を表現する場合にはモーションデータｍｄ２を使用し、左腕が分断された場合（第３の分断状態）の本体（左腕以外の部分）の動作を表現する場合にはモーションデータｍｄ３を使用し、右足が分断された場合（第４の分断状態）の本体（右足以外の部分）の動作を表現する場合にはモーションデータｍｄ４使用し、左足が分断された場合（第５の分断状態）の本体（左足以外の部分）の動作を表現する場合にはモーションデータｍｄ５を使用するものとする。
【０１３０】
図１２（Ａ）の場合は第４の分断状態であるので、第２の部分オブジェクト４２０のモーションとしては、モーションデータｍｄ４を選択する。また図１２（Ｂ）の場合は第３の分断状態であるので、第４の部分オブジェクト４４０のモーションとしては、モーションデータｍｄ３を選択する。
【０１３１】
２−８．分断状態に応じたエフェクト選択
本実施形態では、プレーヤオブジェクトの攻撃により敵オブジェクトが切断された場合に、敵オブジェクトＥＯが受けたダメージを表すエフェクト表示物を、敵オブジェクトに関連付けて描画する。本実施の形態では敵オブジェクトの分断状態に応じて異なるパターのエフェクト標示物を標示する制御を行う。
【０１３２】
図１５（Ａ）（Ｂ）は分断状態とエフェクトパターンについて説明するための図である。図１５（Ａ）は敵オブジェクトＥＯが、右股３２で分断された状態（第１の分断状態）とそのときに分断後に表示されるエフェクト表示物４５０を示している。  図１５（Ｂ）は敵オブジェクトＥＯが、左上腕２６で分断された状態（第２の分断状態）とそのときに分断後に表示されるエフェクト表示物４８０を示している。
【０１３３】
ここではエフェクト表示物として、分断によって敵オブジェクトＥＯ（例えばロボット）から放出される液体（オイル）を表しているが、切断によって敵オブジェクトＥＯから放出される炎や光、或いはロボットを構成する部品を、エフェクト表示物として表示するようにしてもよい。
【０１３４】
本実施の形態では図１５（Ａ）（Ｂ）に示すように敵オブジェクトＥＯの分断状態が異なると異なるパターンのエフェクト表示物を表示する。
【０１３５】
異なるパターンのエフェクト表示物に対応した異なるモデルのエフェクト用オブジェクトを用意して、分断状態に応じて選択して、選択したエフェクト用オブジェクトを用いて画像生成を行うようにしてもよい。
【０１３６】
また異なるパターンのエフェクト表示物に対応した異なるテクスチャを用意して、分断状態に応じて選択して、選択したテクスチャをもちいて画像生成を行うようにしてもよい。
【０１３７】
また異なるパターンのエフェクト表示物に対応した異なるシェーディングパターンのプログラムを用意して、分断状態に応じて選択してピクセルシェーダーに実行させてもよい。
【０１３８】
２−９．ゲームパラメータの演算
本実施形態では、分断状態に基づきゲームパラメータ（得点、体力、難易度等）を算出してもよい。
【０１３９】
分断状態に基づき得点を算出する場合には、例えば倒した敵オブジェクトの分断状態に基づき分断された部位を判断して、部位に応じて設定された得点を加算するようにしてもよい。また分断状態に基づき分断された部位の数を判断し、部位の数に応じて設定された得点を加算するようにしても良い。
【０１４０】
このようにすることで、敵オブジェクトＥＯに与えたダメージに応じた得点を得ることができる。本実施の形態によれば、代表点の位置情報や分断ライン情報に基づき分断状態が判断出来るので、ゲーム中任意のタイミングで分断状態の判断が出来る。また分断処理モジュール以外の他のモジュールにおいても代表点の位置情報や分断ライン情報に基づき分断状態が判断出来る。
【０１４１】
３．処理
次に、本実施形態の処理の一例（代表点情報に基づき分断状態を判断を判断する場合）について図１６のフローチャートを用いて説明する。本実施の形態では各フレーム毎に以下の処理を行う。
【０１４２】
入力情報を受け付けると以下のステップＳ２０〜Ｓ５０の処理を行う（ステップＳ１０）。
【０１４３】
まず前記入力情報に基づいてオブジェクトの位置座標を演算し、オブジェクトの位置座標に基づき代表点の位置座標を演算する（ステップＳ２０）。
【０１４４】
また入力情報に基づき敵オブジェクトとのヒットチェックを行う（ステップＳ３０）。ヒット有りの場合には（ステップＳ４０）、分断処理を行う（ステップＳ５０）。入力情報が攻撃指示の入力情報である場合には、プレーヤオブジェクトから所定範囲内に位置する敵オブジェクトに対して、攻撃方向、プレーヤオブジェクトの位置、向き、敵オブジェクトの位置に基づき、仮想面を設定し、攻撃方向については、攻撃指示の入力情報（縦斬り攻撃入力情報であるか、横斬り攻撃入力情報であるか）に基づき判断して、敵オブジェクトと仮想面のヒットチェック処理を行い、ヒットした場合には敵オブジェクトを、設定した仮想面を境に複数のオブジェクトに切断（分離）する処理を行ってもよい。
【０１４５】
次にモーション選択タイミングである場合には（ステップＳ６０）、代表点情報に基づき分断状態を判断し、分断状態に基づきモーションデータの選択を行う（ステップＳ７０）。
【０１４６】
またゲームパラメータ算出タイミングである場合には（ステップＳ８０）、代表点情報に基づき分断状態を判断し、分断状態に基づきゲームパラメータの算出を行う（ステップＳ９０）。
【０１４７】
次に、本実施形態の他の処理の一例（分断ライン情報に基づき分断状態を判断を判断する場合）について図１７のフローチャートを用いて説明する。本実施の形態では各フレーム毎に以下の処理を行う。
【０１４８】
入力情報を受け付けると以下のステップＳ１２０〜Ｓ１６０の処理を行う（ステップＳ１０）。
【０１４９】
まず前記入力情報に基づいてオブジェクトの位置座標を演算し、オブジェクトの位置座標に基づき代表点の位置座標を演算する（ステップＳ１２０）。
【０１５０】
また入力情報に基づき敵オブジェクトとのヒットチェックを行う（ステップＳ１３０）。ヒット有りの場合には（ステップＳ１４０）、分断処理を行う（ステップＳ１５０）。入力情報が攻撃指示の入力情報である場合には、プレーヤオブジェクトから所定範囲内に位置する敵オブジェクトに対して、攻撃方向、プレーヤオブジェクトの位置、向き、敵オブジェクトの位置に基づき、仮想面を設定し、攻撃方向については、攻撃指示の入力情報（縦斬り攻撃入力情報であるか、横斬り攻撃入力情報であるか）に基づき判断して、敵オブジェクトと仮想面のヒットチェック処理を行い、ヒットした場合には敵オブジェクトを、設定した仮想面を境に複数のオブジェクトに切断（分離）する処理を行ってもよい。
【０１５１】
また代表点間を結ぶ仮想的なラインを設定し、前記分断処理によって分断されたラインを検出し、分断されたラインを特定するための分断ライン情報を保持する（ステップＳ１６０）
次にモーション選択タイミングである場合には（ステップＳ１７０）、分断ライン情報に基づき分断状態を判断し、分断状態に基づきモーションデータの選択を行う（ステップＳ１８０）。
【０１５２】
またゲームパラメータ算出タイミングである場合には（ステップＳ１９０）、分断ライン情報に基づき分断状態を判断し、分断状態に基づきゲームパラメータの算出を行う（ステップＳ２００）。
【０１５３】
なお本発明は、上記実施形態で説明したものに限らず、種々の変形実施が可能である。例えば、明細書又は図面中の記載において広義や同義な用語として引用された用語は、明細書又は図面中の他の記載においても広義や同義な用語に置き換えることができる。
【符号の説明】
【０１５４】
１００  処理部、１１０  代表点位置情報演算部、１１１  オブジェクト空間設定部、
１１２  移動・動作処理部、１１３  仮想カメラ制御部、１１４  受け付け部、
１１５  分断状態判断部、１１６  分断処理部、１１７  分断ライン検出部、
１１８  ゲーム演算部、１１９  ヒットエフェクト処理部、１２０  描画部、
１２２  ジオメトリ処理部、１２４  シェーディング処理部、１２６  αブレンディング部、１２８  隠面消去部、１３０  音生成部、１６０  入力部、１７０  記憶部、１７１  主記憶部、１７２  モーションデータ記憶部、１７３  画像バッファ、１７４  エフェクトデータ記憶部、１７５  Ｚバッファ、１７９  オブジェクトデータ記憶部、
１８０  情報記憶媒体、１９０  表示部、１９２  音出力部、１９６  通信部
【図１】
2010170505.tif 000003
【図２】
2010170505.tif 000004
【図３】
2010170505.tif 000005
【図４】
2010170505.tif 000006
【図５】
2010170505.tif 000007
【図６】
2010170505.tif 000008
【図７】
2010170505.tif 000009
【図８】
2010170505.tif 000010
【図９】
2010170505.tif 000011
【図１０】
2010170505.tif 000012
【図１１】
2010170505.tif 000013
【図１２】
2010170505.tif 000014
【図１３】
2010170505.tif 000015
【図１４】
2010170505.tif 000016
【図１５】
2010170505.tif 000017
【図１６】
2010170505.tif 000018
【図１７】
2010170505.tif 000019