(57)【要約】【課題】キャラクタの配置密度を所定の高さに維持して、賑わいを演出することが可能な、ゲーム装置及びゲームプログラムの提供。【解決手段】ワールド座標上で互いに連続した複数のステージＳＴＧからなるフィールドＦＬＤを生成する手段、ステージに、ゲームに登場する複数のキャラクタＣＲをそれぞれ配置する手段、操作キャラクタＯＣＨを配置する手段ＳＡＰ、操作キャラクタが配置されたステージのキャラクタ密度を演算する手段、キャラクタ密度が所定のキャラクタ密度以下であるか否かを判定する手段、不足するキャラクタの数を演算し、不足キャラクタを、操作キャラクタが配置されたステージ以外のステージから抽出し再配置する手段から構成される。【選択図】    図７
2006020758.tif 000002
【特許請求の範囲】
【請求項１】
ワールド座標の設定された三次元仮想空間をメモリ内に設定し、前記ワールド座標上で互いに連続した複数のステージからなるフィールドを生成するフィールド生成手段、
該フィールド上のステージに、ゲームに登場する複数のキャラクタをそれぞれ配置するキャラクタ配置手段、
プレーヤがコントローラを介して操作可能な操作キャラクタを、前記フィールド上のステージに配置する操作キャラクタ配置手段、
前記操作キャラクタが配置されたステージのキャラクタ密度を演算するキャラクタ密度演算手段、
前記演算されたキャラクタ密度が所定のキャラクタ密度以下であるか否かを判定するキャラクタ密度判定手段、
キャラクタ密度が所定のキャラクタ密度以下であると判定された場合に、不足するキャラクタの数を演算する不足キャラクタ数演算手段、
演算された不足キャラクタを、前記操作キャラクタが配置されたステージ以外のステージから抽出し、該操作キャラクタが配置されたステージに再配置する不足キャラクタ抽出再配置手段、及び、
前記操作キャラクタが配置されたステージについての画像をモニタに表示する画像表示手段、
からなる、ゲーム装置。
【請求項２】
前記不足キャラクタ抽出再配置手段は、前記操作キャラクタが配置されたステージから所定ステージ分だけ隔離された位置に存在するステージを、不足キャラクタを抽出するステージとして選択するステージ選択手段、及び、
該選択されたステージから前記不足キャラクタを抽出する不足キャラクタ抽出手段を有する、
請求項１記載のゲーム装置。
【請求項３】
コンピュータに、
ワールド座標の設定された三次元仮想空間をメモリ内に設定し、前記ワールド座標上で互いに連続した複数のステージからなるフィールドを生成するフィールド生成手順、
該フィールド上のステージに、ゲームに登場する複数のキャラクタをそれぞれ配置するキャラクタ配置手順、
プレーヤがコントローラを介して操作可能な操作キャラクタを、前記フィールド上のステージに配置する操作キャラクタ配置手順
前記操作キャラクタが配置されたステージのキャラクタ密度を演算するキャラクタ密度演算手順、
前記演算されたキャラクタ密度が所定のキャラクタ密度以下であるか否かを判定するキャラクタ密度判定手順、
キャラクタ密度が所定のキャラクタ密度以下であると判定された場合に、不足するキャラクタの数を演算する不足キャラクタ数演算手順、
演算された不足キャラクタを、前記操作キャラクタが配置されたステージ以外のステージから抽出し、該操作キャラクタが配置されたステージに再配置する不足キャラクタ抽出再配置手順、及び、
前記操作キャラクタが配置されたステージについての画像をモニタに表示する画像表示手順、
を実行させるためのゲームプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ゲーム中のキャラクタが移動可能な複数のステージが用意されたゲームにおいて、各ステージにおけるキャラクタの配置密度を一定の高さに維持して、賑わいを演出することの出来る、ゲーム装置及びゲームプログラムに関する。
【背景技術】
【０００２】
従来、この種のゲーム装置及びゲームプログラムにおいて、盛り場や、キャンパスその他、通常多くの人々が去来する場所を３次元仮想区間内で表現する場合がある。こうした場合、所定の賑わいを演出するためには、当該仮想空間内に配置されるキャラクタ密度を所定の配置密度に維持する必要がある。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかし、ゲームのステージを複数のステージから構成し、それらステージの全てについて所定のキャラクタの配置密度を維持しようとした場合、ＣＰＵが管理すべきキャラクタの数は、
（各ステージにおけるキャラクタ配置密度を維持するのに必要なキャラクタ数）×ステージ数
となる。
【０００４】
しかし、これでは、ＣＰＵがリアルタイムに制御すべきキャラクタの数が極めて多くなり、ＣＰＵの負担が増大してしまい、ゲームの進行が円滑に行えなくなる不都合が生じる。
【０００５】
本発明は、上記した事情に鑑み、ＣＰＵの負担をそれほど増加させることなく、キャラクタが移動可能な全てのステージについて、キャラクタの配置密度を所定の高さに維持して、賑わいを演出することが可能な、ゲーム装置及びゲームプログラムを提供することを目的とするものである。
【課題を解決するための手段】
【０００６】
請求項１の発明は、ワールド座標の設定された三次元仮想空間をメモリ（３）内に設定し、前記ワールド座標上で互いに連続した複数のステージ（ＳＴＧ）からなるフィールド（ＦＬＤ）を生成するフィールド生成手段、該フィールド上のステージに、ゲームに登場する複数のキャラクタ（ＣＲ）をそれぞれ配置するキャラクタ配置手段（ＣＰＰ、１）、プレーヤがコントローラ（１２）を介して操作可能な操作キャラクタ（ＯＣＨ）を、前記フィールド上のステージに配置する操作キャラクタ配置手段（ＳＡＰ、１）、前記操作キャラクタが配置されたステージのキャラクタ密度を演算するキャラクタ密度演算手段（ＣＤＪ、１）、前記演算されたキャラクタ密度が所定のキャラクタ密度以下であるか否かを判定するキャラクタ密度判定手段（ＣＤＪ、１）、キャラクタ密度が所定のキャラクタ密度以下であると判定された場合に、不足するキャラクタの数を演算する不足キャラクタ数演算手段（ＣＤＪ、１）、演算された不足キャラクタを、前記操作キャラクタが配置されたステージ（ＳＴＧ）以外のステージ（ＳＴＧ）から抽出し、該操作キャラクタが配置されたステージに再配置する不足キャラクタ抽出再配置手段（ＣＭＰ、ＣＤＪ、１）、及び、前記操作キャラクタが配置されたステージについての画像をモニタに表示する画像表示手段（ＰＰＰ、１，４，５，９）、からなるゲーム装置として構成される。
【０００７】
また、請求項２の発明は、請求項１記載のゲーム装置において、前記不足キャラクタ抽出再配置手段は、前記操作キャラクタが配置されたステージから所定ステージ分だけ隔離された位置に存在するステージを、不足キャラクタを抽出するステージとして選択するステージ選択手段（ＣＭＰ、１）、及び、該選択されたステージから前記不足キャラクタを抽出する不足キャラクタ抽出手段（ＣＭＰ、１）を有して構成される。
【０００８】
また、請求項３の発明は、コンピュータに、ワールド座標の設定された三次元仮想空間をメモリ内に設定し、前記ワールド座標上で互いに連続した複数のステージからなるフィールドを生成するフィールド生成手順、該フィールド上のステージに、ゲームに登場する複数のキャラクタをそれぞれ配置するキャラクタ配置手順、プレーヤがコントローラを介して操作可能な操作キャラクタを、前記フィールド上のステージに配置する操作キャラクタ配置手順、前記操作キャラクタが配置されたステージのキャラクタ密度を演算するキャラクタ密度演算手順、前記演算されたキャラクタ密度が所定のキャラクタ密度以下であるか否かを判定するキャラクタ密度判定手順、キャラクタ密度が所定のキャラクタ密度以下であると判定された場合に、不足するキャラクタの数を演算する不足キャラクタ数演算手順、演算された不足キャラクタを、前記操作キャラクタが配置されたステージ以外のステージから抽出し、該操作キャラクタが配置されたステージに再配置する不足キャラクタ抽出再配置手順、及び、前記操作キャラクタが配置されたステージについての画像をモニタに表示する画像表示手順を実行させるためのゲームプログラムとして構成される。
【発明の効果】
【０００９】
請求項１及び３の発明によれば、操作キャラクタ（ＯＣＨ）が配置されたステージ（ＳＴＧ）のキャラクタ密度が所定の密度以下の場合には、他のステージ（ＳＴＧ）から不足キャラクタが抽出され、配置されるので、フィールド（ＦＬＤ）を構成する全てのステージ（ＳＴＧ）にキャラクタ密度を維持するだけの多数のキャラクタ（ＣＲ）を配置しなくても、常に操作キャラクタ（ＯＣＨ）が行動するステージ（ＳＴＧ）を、所定のキャラクタ密度に維持しておくことができ、賑わいや華やかさなどを容易に演出することが出来る。
【００１０】
即ち、キャラクタ（ＣＲ）を、操作キャラクタ（ＯＣＨ）が配置されたステージ（ＳＴＧ）とそれ以外のステージとの間でやりくりすることにより、最小限の所定のキャラクタ（ＣＲ）数で、操作キャラクタ（ＯＣＨ）が配置されたステージ（ＳＴＧ）については、常に所定のキャラクタ密度を維持させることが出来る。これにより、ステージ中の賑わいや華やかさなど、ゲームの興趣を維持しつつ、ＣＰＵがリアルタイムに制御すべきキャラクタの数を大幅に少なくして、ＣＰＵの負荷を軽減することが出来、ゲームの円滑な進行が可能となる。
【００１１】
請求項２の発明によれば、不足キャラクタ（ＣＲ）は、操作キャラクタが配置されたステージから所定ステージ分だけ隔離された位置に存在するステージから抽出されるので、操作キャラクタＯＣＨが隣接するステージＳＴＧに移動した場合でも、直前に再配置された不足キャラクタ（ＣＲ）が、再度不足キャラクタ（ＣＲ）として、隣接するステージ（ＳＴＧ）から抽出され、当該ステージＳＴＧに再配置されることが防止され、シナリオ展開上不自然なキャラクタ配置を避けることが出来る。
【００１２】
なお、括弧内の番号等は、図面における対応する要素を示す便宜的なものであり、従って、本記述は図面上の記載に限定拘束されるものではない。
【発明を実施するための最良の形態】
【００１３】
以下、図面に基づき、本発明の実施例を説明する。
【００１４】
図１は、本発明が適用されるゲーム機の一例を示す制御ブロック図、図２は、３次元仮想空間に生成されるフィールドを構成するステージの概要の一例を示す図、図３は、各キャラクタの行動管理テーブルの一例を示す図、図４は、図２のフィールドにおける各キャラクタの、初期の配置状態を示す図、図５は、キャラクタ密度補正により、キャラクタの現在地が書き換えられた行動管理テーブルを示す図、図６は、図４のフィールドにおいて、キャラクタ密度補正により、不足キャラクタがステージ移動させられた状態を示す図、図７は、キャラクタ密度補正の手順の一例を示すフローチャートである。
【００１５】
ゲーム装置２０は、図１に示すように、記録媒体としてのＲＯＭディスク１５に記録されたゲームプログラムＧＰＲに従って所定のゲームを実行するものである。ゲーム装置２０は、マイクロプロセッサを主体として構成されたＣＰＵ１と、そのＣＰＵ１に対する主記憶装置としてのＲＯＭ２およびＲＡＭ３と、画像処理装置４およびサウンド処理装置６と、それらの装置に対するバッファ５、７と、ＲＯＭディスク読取装置８とを有している。ＲＯＭ２には、ゲーム機の全体の動作制御に必要なプログラムとしてのオペレーティングシステムが書き込まれる。ＲＡＭ３には記憶媒体としてのＲＯＭディスク１５から読み取ったプログラムＧＰＲを構成するゲーム用のプログラムやデータが必要に応じて書き込まれる。
【００１６】
画像処理装置４はＣＰＵ１から画像データを受け取ってフレームバッファ５上にゲーム画面を描画するとともに、その描画された画像のデータを所定のビデオ再生信号に変換して所定のタイミングでモニタ９に出力する。サウンド処理装置６は、ＲＯＭディスク１５から読み出されてサウンドバッファ７に記録された音声、楽音等のデータや音源データ等を再生してスピーカ１０から出力させる。ＲＯＭディスク読取装置８は、ＣＰＵ１からの指示に従ってＲＯＭディスク１５上に記録されたプログラムやデータを読み取り、その読み取った内容に対応した信号を出力する。ＲＯＭディスク１５にはゲームの実行に必要なプログラムやデータからなるプログラムＧＰＲが記録されている。モニタ９には家庭用のテレビ受像機が、スピーカ１０にはそのテレビ受像機の内蔵スピーカが一般に使用される。
【００１７】
さらに、ＣＰＵ１にはバス１４を介して通信制御デバイス１１が接続され、そのデバイス１１には入力装置としてのコントローラ１２及び補助記憶装置１３が適宜な接続ポートを介してそれぞれ着脱自在に接続される。コントローラ１２は入力装置として機能するものであり、そこにはプレーヤによる操作を受け付けるキーなどの操作部材が適宜設けられている。
【００１８】
コントローラ１２からは各操作部材の操作状態に対応した操作信号が一定周期（例えば１／６０秒）で出力され、ＣＰＵ１はその操作信号に基づいてコントローラ１２の操作状態を判別する。コントローラ１２及び補助記憶装置１３は通信制御デバイス１１に対して複数並列に接続可能である。
【００１９】
以上の構成において、モニタ９、スピーカー１０、コントローラ１２、ＲＯＭディスク１５及び補助記憶装置１３を除く他の構成要素は所定のハウジング内に一体的に収容されてゲーム機本体１６を構成する。このゲーム機本体１６がコンピュータとして機能する。
【００２０】
以上の構成のゲーム装置２０では、ＲＯＭディスク１５に記録されたプログラムをＲＡＭ３にロードしてＣＰＵ１で実行することにより、様々なジャンルのゲームをディスプレイ９の画面上でプレイすることが出来る。
【００２１】
ゲーム装置２０においては、所定の初期化操作（例えば電源の投入操作）が行われると、ＣＰＵ１がまずＲＯＭ２のプログラムに従って所定の初期化処理を実行する。初期化が終わるとＣＰＵ１はＲＯＭディスク１５に格納された、プログラムＧＰＲの読み込みを開始し、そのプログラムに従ってゲーム処理を開始する。プレーヤが入力装置であるコントローラ１２を操作して所定のゲーム開始操作を行うと、ＣＰＵ１はプログラムＧＰＲの手順に従ってゲームの実行に必要な種々の制御を開始する。
【００２２】
なお、本発明に係るプログラムを機能させるコンピュータとして、例えば家庭用ゲーム機としてのゲーム装置２０を一例として説明したが、該ゲーム装置２０は、いわゆる携帯型ゲーム機であってもよく、更に、ゲーム専用の装置でなく、一般的な音楽や映像の記録媒体の再生なども可能な装置であってもよい。また、これに限らず、コンピュータとして、例えばパーソナルコンピュータ、携帯電話機など、つまりプログラムを機能させることのできるものであれば何れのものでもよい。
【００２３】
ゲームプログラムＧＰＲは、ＣＰＵ１を介して、ゲームを開始する際に、プレーヤが操作することの出来る操作キャラクタや、ゲーム中に登場する多数のキャラクタが配置され、ゲームプログラムＧＰＲに基づく所定のシナリオ展開に基づいた行動を行う場所として、フィールドＦＬＤを生成する。
【００２４】
即ち、ＣＰＵ１と共にフィールド生成手段を構成する、ゲームプログラムＧＰＲのフィールド生成プログラムＦＤＰは、ＣＰＵ１を介して、ゲームプログラムＧＰＲに格納されたフィールドデータファイルＦＤＦから、フィールドＦＬＤの生成に必要なフィールドデータＦＤＤを読み出して、該フィールドデータＦＤＤに基づいて、ＲＡＭ３内に設定された３次元仮想空間内にフィールドＦＬＤを生成する（図７のステップＳ１）。
【００２５】
なお、ゲームプログラムＧＰＲを構成する各種のプログラム及び各種のデータは、ゲームプログラムＧＰＲのプログラム機能によって読み出し自在に有している限り、その格納態様は任意であり、本実施の形態のように、ゲームプログラムＧＰＲなどのプログラムと共にＲＯＭディスク１５中に格納するほかに、ゲーム機１とは独立したサーバーなどの外部のメモリ手段に格納しておき、ゲームプログラムＧＰＲ中に設けられた読み出しプログラムによって、インターネットなどの通信媒介手段を介してＲＡＭ３などのメモリにダウンロードするように構成してもよい。
【００２６】
なお、図１に示した、プログラムＧＰＲには、該プログラムＧＰＲを構成する、本発明に関連するソフトウエア要素のみを記述しており、プログラムＧＰＲには、図１に記載された以外に、当該プログラムＧＰＲを用いてゲームを実行する上で必要な多様なプログラム及びデータが格納されている。
【００２７】
フィールド生成プログラムＦＤＰが、ＣＰＵ１を介してＲＡＭ３内に生成するフィールドＦＬＤは、図２に示すように、３次元仮想空間のワールド座標上で互いに連続する空間として設定された形で設定された複数のステージＳＴＧから構成されており、それらステージＳＴＧは、図２の場合、符号ＡからＬの１２のステージから構成されている。各ステージには、前述のように符号「Ａ」から「Ｌ」までのステージ識別符号ＳＤＧが付されている。なお、各フィールドＦＬＤを構成するステージ数は任意であるが、フィールドＦＬＤを構成するステージ数が多いほど、本発明の効果は発揮される。
【００２８】
フィールドＦＬＤには、フィールド生成プログラムＦＤＰ及びフィールドデータＦＤＤにより、ＣＰＵ１を介して、図２に示すように、キャラクタをフィールドＦＬＤ上で移動させる際に、キャラクタの通る経路が移動経路ＰＡＳとして、フィールドＦＬＤを構成する各ステージＳＴＧ間を連絡する形で設定される。この移動経路ＰＡＳは、説明を簡単にするために格子状の単純な線で設定されているが、実際には、フィールドＦＬＤ上に設定されるレストラン、学校、ショップなどの建物、庭園、街路その他の固定（背景）オブジェクトの設置態様に応じて、各ステージＳＴＧ内及び隣接するステージＳＴＧ間で複雑に設定される。
【００２９】
フィールド生成プログラムＦＤＰにより、フィールドＦＬＤが移動経路ＰＡＳと共に生成されたところで、ゲームプログラムＧＰＲは、ＣＰＵ１と共に操作キャラクタ配置手段を構成する、ゲームプログラムＧＰＲを構成するシナリオ進行プログラムＳＡＰに基づいて、プレーヤがコントローラ１２を介して操作可能な操作キャラクタＯＣＨを配置すべきステージＳＴＧ及び該ステージＳＴＧ内での配置座標位置を決定する（図７のステップＳ２）。
【００３０】
ゲームプログラムＧＰＲは、操作キャラクタＯＣＨを配置すべきステージＳＴＧを決定する演算と共に、ＣＰＵ１と共にキャラクタ配置手段を構成する、キャラクタ設定プログラムＣＰＰにより、ゲームに登場する操作キャラクタＯＣＨ以外の各キャラクタＣＲについて、ゲーム開始時に配置すべきステージＳＴＧ（現在地）及び各キャラクタＣＲのゲーム開始時における移動する先を示した目的地を設定する（図７のステップＳ３）。
【００３１】
操作キャラクタＯＣＨ以外の各キャラクタＣＨは、それぞれ行動すべき課題が、個別行動プログラムＩＡＰとして与えられており、それらは、ゲームプログラムＧＰＲ内の個別キャラクタファイルＩＣＦ内に、各キャラクタＣＲ毎に格納されている。従って、各キャラクタＣＲは、当該個別行動キャラクタファイルＩＣＦに格納された当該キャラクタＣＲについての個別行動プログラムＩＡＰに基づいてそのフィールドＦＬＤ上での行動が、キャラクタ管理プログラムＣＭＰによりＣＰＵ１を介して制御される。
【００３２】
個別行動プログラムＩＡＰは、例えば、図３に示すように、ゲームが開始（ゲームそのものを全く最初から開始する他に、既にゲームを始めていて、一旦中断してその途中までのゲームデータをセーブデータとして補助記憶装置１３に格納しておき、更に当該セーブデータを補助記憶装置１３からＲＡＭ３にロードすることによりゲームを再開する場合も含む）された、ゲーム世界におけるある時点に置いて、当該キャラクタＣＲが配置されるフィールドＦＬＤ内での位置（現在地ＰＰ）と、当該キャラクタＣＲについてその時点での移動先である目的地ＤＳを、設定する。これらの設定は、各キャラクタＣＲ毎に設定された個別行動プログラムＩＡＰにより、シナリオ展開に応じて適宜設定される。なお、現在地ＰＰ及び目的地ＤＳは、図３に示すように、フィールドＦＬＤのステージＳＴＧを区別するための「Ａ」から「Ｌ」までの符号からなるステージ識別符号ＳＤＧと、当該ステージＳＴＧ内でのキャラクタの位置を示す座標位置データＣＯＤから構成されている。
【００３３】
キャラクタ管理プログラムＣＭＰは、各キャラクタＣＲの個別行動プログラムＩＡＰにより決定された、ゲームを開始すべき時点における、当該キャラクタＣＲを配置すべきステージＳＴＧ（現在地ＰＰ）及び各キャラクタＣＲの目的地ＤＳを集計して、図３に示すようなキャラクタ行動管理テーブルＣＢＴを作成し、ＲＡＭ３内に格納する。キャラクタ行動管理テーブルＣＢＴには、操作キャラクタＯＣＨとゲーム内で係わって何らかのシナリオ展開を行うことが出来るようにシナリオ進行プログラムＳＡＰにより設定されている全てのキャラクタＣＲについて、作成される。本実施例では、約３００体のキャラクタについてキャラクタ行動管理テーブルＣＢＴが作成されるが、キャラクタの人数はＣＰＵ１及びメモリであるＲＡＭ３の容量に合わせて適宜設定が可能である。
【００３４】
こうして、ゲーム世界内の操作キャラクタＯＣＨと関わりを持つ可能性のある全てのキャラクタＣＲについて、行動管理テーブルＣＢＴが、図３に示すように作成されると、キャラクタ設定プログラムＣＰＰは、それらキャラクタＣＲを、フィールドＦＬＤ内の、キャラクタ行動管理テーブルＣＢＴにおいて現在地ＰＰとして指定された座標位置に配置設定する（図７のステップＳ４）。また、同時に、シナリオ進行プログラムＳＡＰにより決定された所定のステージＳＴＧの所定の座標位置に、操作キャラクタＯＣＨを配置設定する。
【００３５】
これにより、フィールドＦＬＤ上には、図４に示すように、ゲーム世界に登場する全てのキャラクタＣＲ及び操作キャラクタＯＣＨが、所定のステージＳＴＧの所定の座標位置に配置されることとなる。なお、図４に示すものは、説明を簡単にするために操作キャラクタＯＣＨ以外のキャラクタＣＲが７体の場合について説明するが、実際のゲームの場合には、各ステージに配置されるキャラクタＣＲの数は、数十体から数百体程度となる。
【００３６】
こうして、キャラクタＣＲ及び操作キャラクタＯＣＨが、フィールドＦＬＤ上に配置されたところで、ゲームプログラムＧＰＲは、ＣＰＵ１と共にキャラクタ密度演算手段及びキャラクタ密度判定手段を構成する、キャラクタ密度調整プログラムＣＤＪに基づいて、操作キャラクタＯＣＨが配置されたステージＳＴＧのキャラクタ密度を演算する（図７のステップＳ５）。キャラクタ密度調整プログラムＣＤＪは、演算されたキャラクタ密度が、当該ステージＳＴＧについてゲームプログラムＧＰＲにより予め設定されているキャラクタ密度に達しているか否かを判定する（図７のステップＳ６）。各ステージＳＴＧには、当該ステージＳＴＧについてのキャラクタ密度が、属性データとしてフィールドデータＦＤＤに格納されているので、この判定は容易に行うことが出来る。
【００３７】
このステージＳＴＧにおけるキャラクタ密度は、ゲームのフィールドＦＬＤが、例えば学校のキャンバスであったり、テーマパークであったりした場合、当該フィールドＦＬＤ上には、ある程度のキャラクタＣＲが配置されていなければ、ゲームのシナリオが展開されるフィールドＦＬＤとして、不自然なものとなる。しかし、多数のステージＳＴＧから構成されるフィールドＦＬＤ全体を、当該フィールドＦＬＤに設定された場所にふさわしいキャラクタ密度となるようにするには、極めて多数のキャラクタＣＲを、フィールドＦＬＤ全体に配置し、それらキャラクタＣＲの行動を同時に制御する必要が生じ、ＣＰＵ１に極めて重い負荷が掛かり、ゲームの円滑な進行が妨げられる危険性が生じる。
【００３８】
本実施例の、フィールドＦＬＤの場合は、所定のキャラクタＣＲ密度を必要とする、学校のキャンバスとして設定されており、操作キャラクタＯＣＨが移動可能なフィールドＦＬＤ上の全てのステージＳＴＧは、少なくとも操作キャラクタＯＣＨが当該ステージにいる間は、所定のキャラクタＣＲ密度が維持されている必要がある。また、フィールドＦＬＤに登場するキャラクタＣＲに対して、プレーヤは操作キャラクタＯＣＨを介して接触し、会話をしたり、各種のイベントを行ったりすることが出来るように、ゲームプログラムＧＰＲにより設定されている。
【００３９】
即ち、例えば、図４に示すフィールドの場合、操作キャラクタＯＣＨが配置された識別符号ＳＤＧが「Ａ」のステージＳＴＧは、操作キャラクタＯＣＨ以外のキャラクタＣＲがキャラクタ管理プログラムＣＭＰにより、ゲーム開始時には、２体しか配置されていないが、当該ステージＳＴＧに対応するフィールドデータＦＤＤにおいては、識別符号ＳＤＧが「Ａ」のステージＳＴＧは、学校のキャンバスにおけるキャラクタ密度として、操作キャラクタＯＣＨ以外のキャラクタＣＲが４人／ステージと設定されており、キャラクタ密度調整プログラムＣＤＪは、ＣＰＵ１を介して図７のステップＳ５及びＳ６で、操作キャラクタＯＣＨが配置された識別符号ＳＤＧが「Ａ」のステージＳＴＧのキャラクタ密度は、予め設定されているキャラクタ密度よりも低いものと判定される。
【００４０】
なお、図４のフィールドＦＬＤは、既に述べたように、説明の便宜のために操作キャラクタＯＣＨ以外のキャラクタＣＲが７体しか設定されていない場合について説明しているが、キャラクタ管理プログラムＣＭＰにより当該ステージＳＴＧに配置されるキャラクタＣＲの数は、実際のゲームでは、フィールドＦＬＤ全体に配置される数百体のキャラクタＣＲのうち、例えば２０体〜３０体（何体でも可）など、個別行動プログラムＩＡＰによる演算結果に応じて、適宜な数が配置される。
【００４１】
キャラクタ密度が、当該ステージＳＴＧについてゲームプログラムＧＰＲにより予め設定されているキャラクタ密度に達していないものと判定された場合には、ＣＰＵ１と共に不足キャラクタ数演算手段を構成する、キャラクタ密度調整プログラムＣＤＪは、当該ステージＳＴＧについて、当該ステージＳＴＧに設定されているキャラクタ密度に達するのに必要なキャラクタＣＲの数、即ち不足しているキャラクタＣＲの数を演算する。図４の場合、予めフィールドデータＦＤＤにより設定されたキャラクタ密度（設定キャラクタ密度）は、４体なので、現在配置されたキャラクタＣＲの数である２体に基づいて、不足キャラクタ数を「２体」と演算する。
【００４２】
不足キャラクタＣＲが、演算されたところで、ＣＰＵ１及びキャラクタ管理プログラムＣＭＰと共に不足キャラクタ抽出再配置手段を構成する、キャラクタ密度調整プログラムＣＤＪは、キャラクタ管理プログラムＣＭＰに割り込みを掛けて、不足している不足キャラクタＣＲを、他のステージＳＴＧから選択収集するように指令する。これを受けて、ＣＰＵ１と共にステージ選択手段及び不足キャラクタ抽出手段を構成する、キャラクタ管理プログラムＣＭＰは、ＣＰＵ１を介して、図７のステップＳ２で、設定された各キャラクタＣＲの、フィールドＦＬＤ上での配置状態を参照して、現在操作キャラクタＯＣＨが配置されているステージＳＴＧから、水平方向に２ステージ以上、３次元仮想空間において離れて設定されているステージＳＴＧ、図４の場合、識別符号ＳＤＧが、「Ｃ」、「Ｄ」、「Ｇ」、「Ｈ」、「Ｉ」、「Ｊ」、「Ｋ」、「Ｌ」のステージＳＴＧを選択し、それら選択されたステージに配置されているキャラクタＣＲを、キャラクタ行動管理テーブルＣＢＴの現在地ＰＰを参照することにより無作為に抽出する。図４の場合、「Ｃ」、「Ｄ」、「Ｇ」、「Ｈ」、「Ｉ」、「Ｊ」、「Ｋ」、「Ｌ」のステージＳＴＧに配置されているキャラクタＣＲは、３体であるが、既に述べたように、実際には、キャラクタ管理プログラムＣＭＰによりその行動が制御されている多数のキャラクタＣＲが、それらステージＳＴＧには配置されており、それら多数のキャラクタＣＲの中から、不足キャラクタ数に相当するキャラクタＣＲを無作為に抽出する。
【００４３】
なお、キャラクタ管理プログラムＣＭＰが、不足キャラクタＣＲを選択収集するステージＳＴＧは、操作キャラクタＯＣＨが配置されているステージＳＴＧに直接隣接するステージＳＴＧ、あるいは、操作キャラクタＯＣＨが配置されたステージＳＴＧから、フィールドＦＬＤ上で所定距離内に存在するステージは除外することが望ましい。即ち、操作キャラクタＯＣＨが配置されたステージＳＴＧに対して、不足キャラクタを抽出するステージは、操作キャラクタＯＣＨが配置されたステージＳＴＧに対して所定ステージだけ隔離された位置に存在するステージであることが望ましい。
【００４４】
これは、操作キャラクタＯＣＨが、隣接するステージＳＴＧ間を頻繁に移動したような場合に、移動した先のステージＳＴＧに、今までいたステージＳＴＧのキャラクタＣＲが、キャラクタ密度を維持するためにキャラクタ管理プログラムＣＭＰにより集められて当該ステージＳＴＧに再配置されることによる不自然さを回避するために必要である。
【００４５】
こうして、キャラクタ管理プログラムＣＭＰにより、操作キャラクタＯＣＨが配置されたステージＳＴＧのキャラクタ密度を充足させるための不足キャラクタＣＲが、周囲のステージＳＴＧから無作為に選択抽出される。例えば図４の場合、識別符号ＳＤＧが「Ｇ」及び「Ｊ」のステージＳＴＧに、ゲーム開始時に配置されたキャラクタＣＲである「ユウコ」と「レナ」が、抽出される。
【００４６】
不足キャラクタＣＲがキャラクタ管理プログラムＣＭＰにより、周囲のステージＳＴＧから無作為に抽出されたところで、キャラクタ密度調整プログラムＣＤＪは、ＣＰＵ１を介して、当該選択抽出された２体のキャラクタＣＲを、操作キャラクタＯＣＨが配置された識別符号ＳＤＧが「Ａ」のステージＳＴＧに、図６に示すように配置する。すると、当該識別符号ＳＤＧが「Ａ」のステージＳＴＧは、それまでの２体のキャラクタＣＲに加えて、新たに加えられた２体のキャラクタＣＲにより、そのキャラクタ密度は、４体／ステージＳＴＧとなり、当該ステージＳＴＧについてフィールドデータＦＤＤにより設定されているキャラクタ密度を充足することとなる。
【００４７】
なお、フィールドデータＦＤＤで、各ステージＳＴＧの属性データとして格納されているキャラクタ密度のデータは、各ステージＳＴＧ毎に異なっていても良いことはもちろんである。これにより、同じフィールドＦＬＤ上であっても、例えば図書館の周辺のステージＳＴＧでは、ややキャラクタ密度を小さく設定し、学生食堂の付近では、キャラクタ密度を周辺のステージＳＴＧよりも大きく設定するなどの木目の細かな設定が可能となる。
【００４８】
既に述べたように、識別符号ＳＤＧが「Ａ」のステージＳＴＧのキャラクタ密度は、それまでの２体／ステージから、４体／ステージとなり、操作キャラクタＯＣＨが配置されたステージＳＴＧにフィールドデータＦＤＤにより規定されたキャラクタ密度を充足することができる。
【００４９】
一方、キャラクタ密度調整プログラムＣＤＪにより、不足キャラクタＣＲが操作キャラクタＯＣＨが配置されたステージＳＴＧに再配置されたところで、キャラクタ管理プログラムＣＭＰは、当該周辺のステージＳＴＧから抽出され、操作キャラクタＯＣＨの配置されたステージＳＴＧに再配置されたキャラクタＣＲについて、ＲＡＭ３内のキャラクタ行動管理テーブルＣＢＴに格納された現在地ＰＰを、ゲーム開始時に個別行動プログラムＩＡＰにより設定された現在地ＰＰから、再配置された操作キャラクタＯＣＨが配置されたステージＳＴＧにおける座標位置に、図５に示すように、更新する。即ち、図５の場合、「レナ」と「ユウコ」の現在地ＰＰが、それまでのステージＳＴＧを示すステージ識別符号ＳＤＧが「Ｊ」及び「Ｇ」から、「Ａ」のステージ識別符号ＳＤＧへ書き換えられる。なお、ステージ識別符号ＳＤＧが「Ａ」のステージＳＴＧ内での各不足キャラクタＣＲの座標位置は、キャラクタ密度調整プログラムＣＤＪにより、不足キャラクタＣＲを操作キャラクタＯＣＨが配置されているステージＳＴＧに再配置する際に、ランダムに決定されるので、当該決定された各不足キャラクタＣＲの座標位置を、座標位置データＣＯＤとして、前述のステージ識別符号ＳＤＧと共に更新格納する。
【００５０】
こうして、図６に示すように、不足キャラクタＣＲが補充されて所定のキャラクタＣＲ密度になった、識別符号ＳＤＧが「Ａ」のステージＳＴＧでは、シナリオ進行プログラムＳＡにより、ゲームのシナリオ進行が開始されるが、その際、フィールドＦＬＤ上に配置された全てのキャラクタＣＲの行動は、個々のキャラクタＣＲについて設定されている個別行動プログラムＩＡＰに基づいて制御される。
【００５１】
従って、フィールドＦＬＤ上の全てのキャラクタＣＲは、図５に示す更新されたキャラクタ行動管理テーブルＣＢＴに格納されたそれぞれの目的地ＤＳへ向けて、個別行動プログラムＩＡＰによりＣＰＵ１を介して、移動経路ＰＡＳ上を移動制御される。
【００５２】
また、ゲームのシナリオ進行が開始されると、画像処理装置４，フレームバッファ５及びモニタ９と共に画像表示手段を構成する、ゲームプログラムＧＰＲの画像生成プログラムＰＰＰが、ＣＰＵ１及び画像処理装置４を介して、操作キャラクタＯＣＨが配置されたステージＳＴＧについて、ＲＡＭ３内に当該ステージを構成する背景オブジェクトや、操作キャラクタＯＣＨ及びキャラクタＣＲのポリゴンモデルからなるキャラクタオブジェクトを配置し、それら配置されたオブジェクトを図示しない仮想カメラによりレンダリングすることにより、二次元画像を生成してフレームバッファ５を介してモニタ９に表示する。
【００５３】
この際、モニタに表示される画像は、フィールドデータＦＤＤで指定されたキャラクタ密度のステージＳＴＧの３次元モデルに基づいて生成されるので、当該ステージＳＴＧにおいて予定された、華やかさや賑やかさなどを演出することが出来る。
【００５４】
なお、図７のステップＳ６で、操作キャラクタＯＣＨが配置されたステージＳＴＧのキャラクタ密度が、当該ステージＳＴＧについてゲームプログラムＧＰＲにより予め設定されているキャラクタ密度に達しているものと判定された場合には、直ちにステップＳ８に入り、操作キャラクタＯＣＨが配置されたステージＳＴＧについて、ＲＡＭ３内に当該ステージを構成する、建物や樹木などのステージＳＴＧを構成する背景オブジェクトや、操作キャラクタＯＣＨ及びキャラクタＣＲのポリゴンモデルからなるキャラクタオブジェクトを配置し、それら配置されたオブジェクトを仮想カメラによりレンダリングすることにより、二次元画像を演算取得してフレームバッファ５を介してモニタ９に表示する。なお、これらの二次元画像の演算取得手法に関しては、仮想カメラを用いる方法の他に、公知の各種のレンダリング手法を用いることが可能である。
【００５５】
なお、キャラクタ密度調整プログラムＣＤＪにより、不足キャラクタＣＲが他のステージＳＴＧから抽出されることにより、当該不足キャラクタＣＲが抽出された元のステージＳＴＧでは、抽出されたキャラクタＣＲがいなくなることで、当該ステージＳＴＧについてフィールドデータＦＤＤにより規定されたキャラクタ密度が、維持出来なくなる可能性が有るが、当該ステージＳＴＧは、現在操作キャラクタＯＣＨが配置されたステージＳＴＧから所定の距離だけ、三次元仮想空間のフィールドＦＬＤ上で離れており、操作キャラクタＯＣＨが、現在配置されているステージＳＴＧから当該不足キャラクタＣＲが抽出されたステージＳＴＧに移動するには、両者の間に介在する他のステージＳＴＧを少なくとも一つ以上通過する必要があるので、ステージＳＴＧを移動した操作キャラクタＯＣＨが、直ちに、キャラクタＣＲがいなくなったステージＳＴＧに入ってしまって、当該ステージＳＴＧについて大幅なキャラクタ密度の低下が生じるような事態を未然に防止することが出来る。
【００５６】
また、フィールドＦＬＤ上の全てのキャラクタＣＲは、既に述べたように、各キャラクタＣＲについて設定された個別行動プログラムＩＡＰにより、その目的地ＤＳが規定され、キャラクタ管理プログラムＣＭＰにより、ＣＰＵ１を介して当該目的地ＤＳに向けて移動するように制御されるので、プレーヤのコントローラ１２を介してた指示により、操作キャラクタＯＣＨが当該キャラクタＣＲに対して話しかけるなどの交渉動作を行わない限り、操作キャラクタＯＣＨの存在とは無関係にその行動が、目的地ＤＳに向けた形で制御されることとなる。
【００５７】
これにより、例えば、図６に示すように、操作キャラクタＯＣＨが、ステージ識別符号ＳＤＧが「Ａ」のステージから、一旦「Ｂ」のステージＳＴＧに入り、その後、すぐに、再度「Ａ」のステージＳＴＧに戻ったような場合でも、「Ａ」のステージＳＴＧをはじめフィールドＦＬＤ上の全てのキャラクタＣＲは、目的地ＤＳに向けて移動経路ＰＡＳ上を移動してゆくように常に制御されているので、キャラクタＣＲは操作キャラクタＯＣＨのステージＳＴＧ間の移動動作とは無関係に、操作キャラクタＯＣＨがステージＳＴＧ間を移動している間においても、それぞれのキャラクタＣＲがそれぞれの目的地に向けて移動経路ＰＡＳ上を移動してゆくように制御される。
【００５８】
これにより、こうした場合にありがちな、「Ａ」のステージＳＴＧに再度戻った場合に、各キャラクタＣＲの行動がリセットされ、操作キャラクタＯＣＨが当該ステージＳＴＧを出た際に行っていた行動とは異なる行動を取るようなことは、未然に防止され、各キャラクタＣＲの行動の一貫性が維持され、各キャラクタＣＲの行動を自然な形で表現することが出来る。
【００５９】
こうして、操作キャラクタＯＣＨは、フィールドＦＬＤ上の各ステージＳＴＧ間を移動する形でシナリオがシナリオ進行プログラムＳＡＰにより進行してゆくが、操作キャラクタＯＣＨがステージＳＴＧを移動した場合には、当該移動先のステージＳＴＧにおいても、既に述べたキャラクタ密度調整プログラムＣＤＪによるＣＰＵ１を介した、キャラクタ密度の調整動作が行われる。これにより、操作キャラクタＯＣＨが新たに進入したステージＳＴＧが、当該ステージについてフィールドデータＦＤＤにより設定されているキャラクタ密度となるように制御されるので、フィールドＦＬＤ上のキャラクタＣＲの総数が、フィールドＦＬＤ全体でそれぞれのステージＳＴＧが規定するキャラクタ密度を同時に満たすことの出来ない数のキャラクタＣＲしか設定されていなくても、操作キャラクタＯＣＨが配置されたステージＳＴＧ以外の他のステージＳＴＧから不足キャラクタＣＲを抽出して、操作キャラクタＯＣＨが配置されたステージＳＴＧに再配置することにより、あたかも全てのステージＳＴＧで、キャラクタ密度が満たされているようにプレーヤに感じさせることが出来、少人数のキャラクタＣＲでフィールドＦＬＤにけるキャラクタ密度を良好な状態に維持することが出来る。
【００６０】
このように、キャラクタＣＲを、操作キャラクタＯＣＨが配置されたステージＳＴＧとそれ以外のステージとの間でやりくりすることにより、ＣＰＵ１が本来管理すべきキャラクタ数を、全てのステージＳＴＧにおいて同時に、所定のキャラクタ密度を維持した場合に必要なキャラクタ数、即ち、
（各ステージにおけるキャラクタ配置密度を維持するのに必要なキャラクタ数）×ステージ数
よりも、大幅に少なくすることが出来る。
【００６１】
そして、操作キャラクタＯＣＨが配置されたステージＳＴＧについては、最小限の所定のキャラクタＣＲ数で、常に所定のキャラクタ密度を維持させることが出来る。これにより、ステージ中の賑わいや華やかさなど、ゲームの興趣を維持しつつ、ＣＰＵ１がリアルタイムに制御すべきキャラクタの数を大幅に少なくして、ＣＰＵの負荷を軽減することが出来、ゲームの円滑な進行が可能となる。
【００６２】
以上の実施形態においては、ＣＰＵ１がゲーム制御装置を構成し、そのＣＰＵ１と特定のソフトウエアとの組み合わせによってゲーム制御装置の各種の手段を構成したが、それらの手段の少なくとも一部は論理回路に置換してもよい。また、本発明は家庭用ゲームシステムに限らず、種々の規模のゲームシステムとして構成してよい。
【産業上の利用可能性】
【００６３】
本発明は、コンピュータを利用した電子ゲーム機器及びコンピュータに実行させる娯楽用ゲームプログラムとして利用することが出来る。
【図面の簡単な説明】
【００６４】
【図１】図１は、本発明が適用されるゲーム機の一例を示す制御ブロック図。
【図２】図２は、３次元仮想空間に生成されるフィールドを構成するステージの概要の一例を示す図。
【図３】図３は、各キャラクタの行動管理テーブルの一例を示す図。
【図４】図４は、図２のフィールドにおける各キャラクタの、初期の配置状態を示す図。
【図５】図５は、キャラクタ密度補正により、キャラクタの現在地が書き換えられた行動管理テーブルを示す図。
【図６】図６は、図４のフィールドにおいて、キャラクタ密度補正により、不足キャラクタがステージ移動させられた状態を示す図。
【図７】図７は、キャラクタ密度補正の手順の一例を示すフローチャート。
【符号の説明】
【００６５】
１……ＣＰＵ
３……メモリ（ＲＡＭ）
４……画像処理装置
５……フレームバッファ
９……モニタ
ＣＲ……キャラクタ
ＣＤＪ……キャラクタ密度調整プログラム
ＣＭＰ……キャラクタ管理プログラム
ＩＡＰ……個別行動プログラム
ＰＰＰ……画像生成プログラム
ＳＡＰ……シナリオ進行プログラム
ＳＴＧ……ステージ
ＯＣＨ……操作キャラクタ
【図１】
2006020758.tif 000003
【図２】
2006020758.tif 000004
【図３】
2006020758.tif 000005
【図４】
2006020758.tif 000006
【図５】
2006020758.tif 000007
【図６】
2006020758.tif 000008
【図７】
2006020758.tif 000009