(57)【特許請求の範囲】
【請求項１】
３次元仮想空間上で複数のキャラクタが敵味方の集団を形成して互いに戦闘する集団キャラクタの攻撃力及び／又は防御力の強弱を表示するプログラムであって、コンピュータを、
前記３次元仮想空間上を移動する前記キャラクタの座標値を演算する座標値演算手段、
前記キャラクタの座標値を含む所定領域内に座標値が包含される他の味方キャラクタのキャラクタ数を演算し、該演算されたキャラクタ数に基づいて、前記キャラクタの攻撃力及び／又は防御力を表す攻撃値及び／又は防御値を演算する攻撃防御値演算手段、
前記演算された攻撃値及び／又は防御値に応じて前記キャラクタを色補正して該色補正後のデータをディスプレイに出力する色補正手段、
として機能させるためのプログラム。
【請求項２】
３次元仮想空間上で複数のキャラクタが敵味方の集団を形成して互いに戦闘する集団キャラクタの攻撃力及び／又は防御力の強弱を表示するプログラムであって、コンピュータを、
前記３次元仮想空間上を移動する前記キャラクタの座標値を演算する座標値演算手段、
前記キャラクタのうち１のキャラクタの前記演算された座標値を含む所定領域内に他の味方キャラクタの座標値が包含されるときに該１のキャラクタを前記他の味方キャラクタに対し支援可能なキャラクタとして前記キャラクタ毎に前記他の味方キャラクタについての前記支援可能なキャラクタ数を累積し、該累積されたキャラクタ数に基づいて、前記キャラクタの攻撃力及び／又は防御力を表す攻撃値及び／又は防御値を演算する攻撃防御値演算手段、
前記演算された攻撃値及び／又は防御値に応じて前記キャラクタを色補正して該色補正後のデータをディスプレイに出力する色補正手段、
として機能させるためのプログラム。
【請求項３】
前記色補正手段は、前記キャラクタを構成する各ドットのＲ（赤）、Ｇ（緑）、Ｂ（青）３色のそれぞれについて色補正を行うことを特徴とする請求項１又は請求項２に記載のプログラム。
【請求項４】
コンピュータを更に、選択可能な複数の集団の隊形の中から特定の集団の隊形の選択を許容する集団隊形選択手段、前記集団隊形選択手段で選択が許容された特定の集団の隊形に応じて前記キャラクタの移動開始前の整列位置での座標値を演算する隊形位置演算手段として機能させることを特徴とする請求項１乃至請求項３のいずれか１項に記載のプログラム。
【請求項５】
コンピュータを更に、前記集団の集団移動中の隊形を、前記キャラクタの整列位置における集団の隊形と相似形に維持する隊形維持手段として機能させることを特徴とする請求項４に記載のプログラム。
【請求項６】
前記攻撃防御値演算手段は、前記所定領域を、前記キャラクタが有する個性により予め定められた領域群の中から選択することを特徴とする請求項１乃至請求項５のいずれか１項に記載のプログラム。
【請求項７】
前記攻撃防御値演算手段は、前記攻撃値及び／又は防御値を、前記キャラクタ数が予め定められた最大値を超えるときに当該最大値に制限することを特徴とする請求項１乃至請求項６のいずれか１項に記載のプログラム。
【請求項８】
請求項１乃至請求項７のいずれか１項に記載のプログラムを記録したコンピュータ読取可能な記録媒体。
【請求項９】
３次元仮想空間上で複数のキャラクタが敵味方の集団を形成して互いに戦闘する集団キャラクタの攻撃力及び／又は防御力の強弱を表示するゲーム装置であって、
前記３次元仮想空間上を移動する前記キャラクタの座標値を演算する座標値演算手段と、
前記キャラクタの座標値を含む所定領域内に座標値が包含される他の味方キャラクタのキャラクタ数を演算し、該演算されたキャラクタ数に基づいて、前記キャラクタの攻撃力及び／又は防御力を表す攻撃値及び／又は防御値を演算する攻撃防御値演算手段と、
前記演算された攻撃値及び／又は防御値に応じて前記キャラクタを色補正して該色補正後のデータをディスプレイに出力する色補正手段と、
を備えたことを特徴とするゲーム装置。
【請求項１０】
３次元仮想空間上で複数のキャラクタが敵味方の集団を形成して互いに戦闘する集団キャラクタの攻撃力及び／又は防御力の強弱を表示するゲーム装置であって、
前記３次元仮想空間上を移動する前記キャラクタの座標値を演算する座標値演算手段と、
前記キャラクタのうち１のキャラクタの前記演算された座標値を含む所定領域内に他の味方キャラクタの座標値が包含されるときに該１のキャラクタを前記他の味方キャラクタに対し支援可能なキャラクタとして前記キャラクタ毎に前記他の味方キャラクタについての前記支援可能なキャラクタ数を累積し、該累積されたキャラクタ数に基づいて、前記キャラクタの攻撃力及び／又は防御力を表す攻撃値及び／又は防御値を演算する攻撃防御値演算手段と、
前記演算された攻撃値及び／又は防御値に応じて前記キャラクタを色補正して該色補正後のデータをディスプレイに出力する色補正手段と、
を備えたことを特徴とするゲーム装置。
【請求項１１】
前記色補正手段は、前記キャラクタを構成する各ドットのＲ（赤）、Ｇ（緑）、Ｂ（青）３色のそれぞれについて色補正を行うことを特徴とする請求項９又は請求項１０に記載のゲーム装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、プログラム、記録媒体及びゲーム装置に係り、特に、３次元仮想空間上で複数のキャラクタが敵味方の集団を形成して互いに戦闘する集団キャラクタの攻撃力及び／又は防御力の強弱を表示するプログラム、該プログラムを記録したコンピュータ読取可能な記録媒体及び該ゲーム装置に関する。
【０００２】
【従来の技術】
今日、種々のゲームソフトがＣＤ−ＲＯＭ等の記録媒体に記録されて各社から販売されている。このような記録媒体はゲーム装置に装着されて使用される。ゲーム装置のうち最も一般的な家庭用ゲーム装置は、ゲーム装置本体に、コントローラパッド等の入力装置と、ゲーム内容を表示するテレビモニタと、を接続して構成されている。プレイヤが記録媒体をゲーム装置本体に挿入すると、自動的に、又は、入力装置の所定ボタンを押下することにより、記録媒体に記録されたゲームプログラムがゲーム装置本体の記憶メモリであるＲＡＭにロードされてゲームがスタートし、その後は入力装置のボタンを操作することによりゲームを楽しむことができる。
【０００３】
ところで従来、複数のキャラクタが主に２次元座標上で敵味方に分かれて戦闘するゲームが発売されている。例えば、ファミリーコンピュータ（任天堂（株））用として、１９８５年にアスキー社から発売され、味方の兵士が戦闘に勝つごとにランクが上がっていく「ボコスカウォーズ」や、１９８８年にアイレム社から発売され、プレイヤが各部隊の進行方向を決定し味方部隊が敵部隊と遭遇すると、予め決められた複数のフォーメーションの中から１つを選び、戦闘モードとなる「ナポレオン戦記」等がある。また、コンピュータ用（ＮＥＣ（株）ＰＣ−８８Ｘ１用）としては、１９８８年に呉ソフトウエア工房社から発売され、プレイヤがキャラクタを制御することによりピンチに陥ったキャラクタを直接コントロールして救うことができる「シルバーゴースト」等が知られている。
【０００４】
これらのゲームソフトは、戦闘中にプレイヤによるコマンド入力待ちをするわけではなく、コマンド入力命令中もゲームはリアルタイムに進行し戦闘を繰り返すゲームであり、「リアルタイムシミュレーションゲーム」と呼ばれている。リアルタイムシミュレーションゲームは、戦術を考えながら敵軍を打ち負かす過程を楽しむゲームジャンルに属し、一定時間経過後にプレイヤのコマンド入力を受け付けコマンド入力中は敵が攻撃しない「ターン制」のゲームとは異なり、いつでも敵が攻撃してくるので、実際の戦闘に疑似する緊迫感や戦術感を味わうことができる。
【０００５】
一方、集団移動に関する従来のゲームとして、主に２次元で表現された座標上を、５つ程度の複数のキャラクタが隊列をつくりながら移動するものが発売されている。例えば、特開平第８−６３６１３号公報には、予めキャラクタごとに移動速度、方向転換を行う時期・確率を設定し、隊列のリーダーである主人公キャラクタに追従していく様子を個性的な変化をもって表示する技術が開示されている。また、本出願人の特願平第１１−２３３５９５号には、３次元仮想空間上に表現されリーダーを有する複数のキャラクタが集団を形成して予め設定された目標点に移動する集団キャラクタ移動方法に関する発明が記載されている。この発明によれば、集団に属する複数のキャラクタをキャラクタ毎に位置及び加速度を演算し、他の味方のキャラクタから所定距離離れるための加速度や他の味方のキャラクタの移動速度や移動方向に合わせるための加速度等を演算して味方のキャラクタの移動状況に応じて速さや方向を変更するようにしたので、各キャラクタの移動の動作を動物等の集団移動に擬してリアルに表現することができる。
【０００６】
更に、集団戦闘に関する技術として、本出願人の特願平第１１−３３９１７６号には、３次元仮想空間上に表示され複数のキャラクタが敵味方の集団を形成して互いに戦闘する集団キャラクタ戦闘方法に関する発明が記載されている。この発明によれば、集団に属する各キャラクタが自己の視野範囲内の敵キャラクタを探して（索敵して）接近し、戦闘を開始するので、各キャラクタが恰も自己の判断で戦闘する様子をリアルに表現することができる。
【０００７】
【発明が解決しようとする課題】
しかしながら、従来のリアルタイムシミュレーションゲームでは、主に２次元での戦闘であるため、実際の戦闘のような迫力を表現することができず、視覚性に乏しいものであった。従って、近時のコンピュータ技術の急速な進歩により、テレビモニタ４上には映画並の画像が表示されることから、プレイヤが希求するより現実感のあるゲームからはほど遠いものとなっている、という問題点があった。
【０００８】
また、上述したリアルタイムシミュレーションゲームや特開平第８−６３６１３号公報の技術では、プレイヤがリーダーを一歩動かすと他のキャラクタも一歩追随し、途中他の味方のキャラクタが障害物に接触すると、そのキャラクタは進行することができなくなったり、各キャラクタは自動的に索敵するのではなく、移動途中で敵に接触した場合に戦闘を開始するといったものであり、どちらかというと視覚を楽しむというより戦術を楽しむ思考型のゲームに止まるものであった。更に、プレイヤが各部隊の進行方向を決定し、味方部隊が敵部隊と遭遇すると、フォーメーション選択画面に切り替わり、プレイヤが予め決められた複数のフォーメーション（隊形）の中から１つを選ぶと、戦闘画面に切り替わり、味方部隊のキャラクタが敵部隊のキャラクタと戦闘するものもあるが、各キャラクタ単位で特別に内部処理されているわけではないので、同様に思考型のゲームに止まるものであった。従って、各キャラクタが周りの味方と一定距離を保ちながら移動したり、各キャラクタが自ら索敵したり、状況に応じて索敵移動状態を変更したりする実際の戦闘とは異なっており、ゲーム自体に物足りなさを感じる、という問題点があった。
【０００９】
この点、上記特願平第１１−２３３５９５号及び特願平第１１−３３９１７６号の発明では、各キャラクタ単位で特別に内部処理されているので、集団の中での各キャラクタの移動動作や戦闘動作をよりリアルに表現することはできるものの、集団として攻撃力や防御力等について着目したものではなかった。
【００１０】
一般に、歩兵は、前後に何人も重なっているほど突破力が大きく、隣接する歩兵との間隔が密集しているほど防御力が強くなり、また、弓兵は、敵に対して縦列に展開しているより横列に展開しているほど攻撃力が大きい、といわれている。従って、例えば、何百というキャラクタ（兵士）を集団として扱うときには、そのときの敵集団（敵部隊）に対する位置状況や兵科（歩兵隊、弓隊等のキャラクタの特性）に応じて、味方集団（味方部隊）に攻撃力、防御力等の強弱箇所が偏在するはずである。しかしながら、従来の集団戦闘ゲームでは、敵集団に対する味方集団の相性等により、味方集団全体の攻撃力や防御力等のパラメータが一律に補正されていた。換言すれば、攻撃力や防御力等を扱う単位は味方集団全体であって、その味方集団を構成する各キャラクタには攻撃力や防御力が設定されていないか、設定されていたとしてもその設定値は一律であった。このため、従来の集団戦闘ゲームでは、同一兵種による集団の強弱箇所の偏在（部隊の部分的な攻撃力、防御力等の強度のバラツキ）を表現できず、偏在を表現するにはその隊形内で異なる攻撃力・防御力等を持つ異なる兵種を混在させるしかなかった。ただし、そこには兵士の密集具合により強弱を表現するという考え方は存在せず、真に戦術的な楽しみを味わうには難しい面があった。
【００１１】
本発明は上記事案に鑑み、複数のキャラクタで構成される集団について攻撃力、防御力等の偏在を表現可能なプログラム、記録媒体及びゲーム装置を提供することを課題とする。
【００１２】
【課題を解決するための手段】
上記課題を解決するために、本発明の第１の態様は、３次元仮想空間上で複数のキャラクタが敵味方の集団を形成して互いに戦闘する集団キャラクタの攻撃力及び／又は防御力の強弱を表示するプログラムであって、コンピュータを、前記３次元仮想空間上を移動する前記キャラクタの座標値を演算する座標値演算手段、前記キャラクタの座標値を含む所定領域内に座標値が包含される他の味方キャラクタのキャラクタ数を演算し、該演算されたキャラクタ数に基づいて前記キャラクタの攻撃力及び／又は防御力を表す攻撃値及び／又は防御値を演算する攻撃防御値演算手段、前記演算された攻撃値及び／又は防御値に応じて前記キャラクタを色補正して該色補正後のデータをディスプレイに出力する色補正手段、として機能させる。本態様では、座標値演算手段により３次元仮想空間上を移動するキャラクタの座標値が演算され、攻撃防御値演算手段により演算されたキャラクタの座標値を含む所定領域内に座標値が包含される他の味方キャラクタのキャラクタ数が演算され、該演算されたキャラクタ数に基づいて、キャラクタの攻撃力及び／又は防御力を表す攻撃値及び／又は防御値が演算され、色補正手段により演算された攻撃値及び／又は防御値に応じてキャラクタを色補正して該色補正後のデータがディスプレイに出力される。本態様によれば、攻撃防御値演算手段により集団を形成するキャラクタ毎に攻撃値及び／又は防御値が演算され、色補正手段により攻撃値及び／又は防御値に応じてキャラクタの色補正が行われるので、集団全体の攻撃力及び／又は防御力の強弱箇所の偏在を表すことができる。
【００１３】
また、上記課題を解決するために、本発明の第２の態様は、３次元仮想空間上で複数のキャラクタが敵味方の集団を形成して互いに戦闘する集団キャラクタの攻撃力及び／又は防御力の強弱を表示するプログラムであって、コンピュータを、前記３次元仮想空間上を移動する前記キャラクタの座標値を演算する座標値演算手段、前記キャラクタのうち１のキャラクタの前記演算された座標値を含む所定領域内に他の味方キャラクタの座標値が包含されるときに該１のキャラクタを前記他の味方キャラクタに対し支援可能なキャラクタとして前記キャラクタ毎に前記他の味方キャラクタについての前記支援可能なキャラクタ数を累積し、該累積されたキャラクタ数に基づいて、前記キャラクタの攻撃力及び／又は防御力を表す攻撃値及び／又は防御値を演算する攻撃防御値演算手段、前記演算された攻撃値及び／又は防御値に応じて前記キャラクタを色補正して該色補正後のデータをディスプレイに出力する色補正手段、として機能させる。本態様では、座標値演算手段により３次元仮想空間上を移動するキャラクタの座標値が演算され、攻撃防御値演算手段によりキャラクタのうち１のキャラクタの演算された座標値を含む所定領域内に他の味方キャラクタの座標値が包含されるときに該１のキャラクタを他の味方キャラクタに対し支援可能なキャラクタとしてキャラクタ毎に他の味方キャラクタについての支援可能なキャラクタ数が累積され、該累積されたキャラクタ数に基づいて、キャラクタの攻撃力及び／又は防御力を表す攻撃値及び／又は防御値が演算され、色補正手段により演算された攻撃値及び／又は防御値に応じてキャラクタを色補正して該色補正後のデータがディスプレイに出力される。本態様によれば、攻撃防御値演算手段により集団を形成するキャラクタ毎に攻撃値及び／又は防御値が演算され、色補正手段により攻撃値及び／又は防御値に応じてキャラクタの色補正が行われるので、集団全体の攻撃力及び／又は防御力の強弱箇所の偏在を表すことができる。
【００１４】
上記第１及び第２の態様において、色補正手段が、ドットの色を構成するＲ（赤）、Ｇ（緑）、Ｂ（青）の３色のそれぞれについて色補正を行うようにしてもよい。コンピュータを更に、複数の集団の隊形の中から特定の集団の隊形の選択を許容する集団隊形選択手段、集団隊形選択手段で選択が許容された特定の集団の隊形に応じて、キャラクタの移動開始前の整列位置での座標値を演算する隊形位置演算手段として機能させるようにすれば、選択された集団の整列位置での隊形を形成する各キャラクタの攻撃値及び／又は防御値を演算して表示することができるので、当該集団の整列位置での隊形の攻撃力及び／又は防御力の強弱箇所の偏在を表すことができる。更に、コンピュータを、集団の集団移動中の隊形を、前記キャラクタの整列位置における集団の隊形と相似形に維持する隊形維持手段として機能させるようにすれば、集団移動中に整列位置での隊形と相似形の隊形を維持したまま攻撃力及び／又は防御力の強弱箇所の偏在を表すことができる。
【００１５】
また、攻撃防御値演算手段が、所定領域を、キャラクタが有する個性により予め定められた領域群の中から選択するようにすれば、キャラクタが有する個性に応じて所定領域が選択されるので、例えば、歩兵は前後に何人も重なっている場合に攻撃力等が大きくなったり、弓兵は横列に展開している場合に攻撃力等が大きくなる等、攻撃値及び／又は防御値演算の基礎となるキャラクタ数の計数対象の領域をキャラクタが有する個性に適合させることが可能となる。更に、攻撃防御値演算手段が、攻撃値及び／又は防御値を、キャラクタ数が予め定められた最大値を超えるときに当該最大値に制限するようにすれば、攻撃値及び／又は防御値を無制限に大きくすることを防止することができるので、キャラクタの攻撃力及び／又は防御力の限界を人間のそれ（ら）に擬して表現することができる。
【００１７】
また、上記課題を解決するために、本発明の第３の態様は、上述した第１又は第２の態様のプログラムを記録したコンピュータ読取可能な記録媒体であり、本発明の第４の態様は、３次元仮想空間上で複数のキャラクタが敵味方の集団を形成して互いに戦闘する集団キャラクタの攻撃力及び／又は防御力の強弱を表示するゲーム装置であって、前記３次元仮想空間上を移動する前記キャラクタの座標値を演算する座標値演算手段と、前記キャラクタの座標値を含む所定領域内に座標値が包含される他の味方キャラクタのキャラクタ数を演算し、該演算されたキャラクタ数に基づいて、前記キャラクタの攻撃力及び／又は防御力を表す攻撃値及び／又は防御値を演算する攻撃防御値演算手段と、前記演算された攻撃値及び／又は防御値に応じて前記キャラクタを色補正して該色補正後のデータをディスプレイに出力する色補正手段と、を備えるか、又は、前記３次元仮想空間上を移動する前記キャラクタの座標値を演算する座標値演算手段と、前記キャラクタのうち１のキャラクタの前記演算された座標値を含む所定領域内に他の味方キャラクタの座標値が包含されるときに該１のキャラクタを前記他の味方キャラクタに対し支援可能なキャラクタとして前記キャラクタ毎に前記他の味方キャラクタについての前記支援可能なキャラクタ数を累積し、該累積されたキャラクタ数に基づいて、前記キャラクタの攻撃力及び／又は防御力を表す攻撃値及び／又は防御値を演算する攻撃防御値演算手段と、前記演算された攻撃値及び／又は防御値に応じて前記キャラクタを色補正して該色補正後のデータをディスプレイに出力する色補正手段と、を備える。
【００１８】
【発明の実施の形態】
（第１実施形態）
以下、図面を参照して本発明を家庭用ビデオゲーム装置に適用した第１の実施の形態について説明する。
【００１９】
（構成）
図１に示すように、本実施形態の家庭用ビデオゲーム装置１０は、ゲーム装置本体２に、スピーカ５を内蔵したテレビモニタ４及び入力装置３が接続されている。ゲーム装置本体２は、ＣＤ−ＲＯＭ等の記録媒体１を装着可能な媒体読取部（図３参照）を有している。この媒体読取部に記録媒体を装着することにより記録媒体１に記録されたゲームプログラムやゲームデータが自動的にゲーム装置本体２内の記憶メモリにロードされる。
【００２０】
図２に示すように、入力装置３には、集団戦闘ゲーム等のゲームを開始するためのスタートボタン３０やゲームキャラクタを操作したり、ゲーム装置本体２からの選択問い合わせに応答するための□ボタン３１、△ボタン３２、○ボタン３３、×ボタン３４、及び、↑ボタン３５、→ボタン３６、←ボタン３７、↓ボタン３８で構成される十字方向ボタンセット等の種々のボタンが配置されている。
【００２１】
図３に示すように、ゲーム装置本体２は装置全体の制御を行う、座標値演算手段、攻撃防御値演算手段、色補正手段、集団隊形選択手段、隊形位置演算手段、隊形維持手段としてのＣＰＵブロック２０を備えている。ＣＰＵブロック２０は、ゲーム装置本体２内の各部とのデータ転送を主に制御するＳＣＵ（Ｓｙｓｔｅｍ  Ｃｏｎｔｒｏｌ  Ｕｎｉｔ）、中央演算処理装置として高速クロックで作動するＣＰＵ、ゲーム装置本体２の基本制御動作が記憶されたＲＯＭ、ＣＰＵのワークエリアとして働くと共に記録媒体１に記録されたゲームプログラム及び種々のデータを一時的に記憶するＲＡＭ及びこれらを接続する内部バスで構成されている。
【００２２】
ＳＣＵには外部バス２５が接続されている。外部バス２５は、コントローラパッド等の入力装置３からの入力を受信してＣＰＵブロック２０へ入力情報を転送する入力受信部２１、図示しないサブＣＰＵを備え記録媒体１に記録されたゲームプログラムを読み取りＣＰＵブロック２０へ転送するＣＤ−ＲＯＭドライブ等の媒体読取部２２、図示しないサブＣＰＵ及びＶＲＡＭを備えＣＰＵブロック２０から転送された情報に従って画像を描画する画像処理部２３、及び、図示しないサブＣＰＵを備え、例えば、バックミュージックや軽騎兵の足音等の音響を処理する音響処理部２４、に接続されている。また、入力受信部２１は入力装置３に、画像処理部２３はテレビモニタ４に、音響処理部２４はテレビモニタ４に内蔵されたスピーカ５にそれぞれ接続されている。
【００２３】
（動作）
次に、本実施形態の家庭用ビデオゲーム装置１０の動作についてフローチャートを参照して、プレイヤの部隊（以下、部隊Ｆという。）に属するキャラクタとしての兵士とコンピュータ（ＣＰＵブロック２０）側の部隊（以下、部隊Ｅという。）に属する兵士とが戦闘する場合について説明する。なお、ゲーム装置本体２には既に記録媒体１が挿入されゲームプログラム、ゲームデータがＣＰＵブロック２０内のＲＡＭに格納され、初期設定処理がなされているものとする。また、説明を簡単にするために、以下のフローチャートにおいては、プレイヤの部隊Ｆの動作を中心に記載して、コンピュータの部隊Ｅについても同様の処理がなされるものとしてその記載を省略した。
【００２４】
＜整列状態の攻撃（防御）力＞
図４に示すように、ＣＰＵブロック２０内のＣＰＵは、部隊Ｆと部隊Ｅとに属するそれぞれの兵士を交戦させるための戦闘ルーチンを実行する。この戦闘ルーチンでは、まず、ステップ１０２で、図２に示したスタートボタン３０が押下されるまで待機する。ステップ１０２での判断が肯定されると、次のステップ１０４において、部隊Ｆ（及び部隊Ｅ）のフォーメーション（隊形）を設定するためのフォーメーション設定処理サブルーチンが実行される。
【００２５】
図５に示すように、このフォーメーション設定処理サブルーチンでは、ステップ２０２において、表１に示すように、歩兵系、弓系及び騎馬系の３つの兵科の中から１つをプレイヤに選択させるために、これらの兵科名を含むアイコンをテレビモニタ４に表示するための兵科選択表示を行い、次のステップ２０４でプレイヤが選択するまで待機する。
【００２６】
【表１】
0003579794.tif 000002
【００２７】
プレイヤが上述したいずれかの兵科を選択すると、ステップ２０６において、その兵科に対応する兵種、すなわち、表１に示すように、プレイヤが歩兵系を選択した場合には歩兵及び槍兵、弓系を選択した場合には短弓兵及び弩兵、騎馬系を選択した場合には軽騎兵、槍騎兵、狩猟騎兵および象兵のアイコンを表示してそれらの中から１つをプレイヤに選択させるために、当該兵種をテレビモニタ４に表示する兵種選択表示を行い、次のステップ２０８でプレイヤが選択するまで待機する。プレイヤがいずれかの兵種を選択すると、ステップ２１０で、その兵種に対応するデフォルト値を取り込んでＲＡＭに格納する。
【００２８】
次のステップ２１２では、図１６（Ａ）〜（Ｅ）に示すように、細長、四角、三角、ダイヤ、Ｖ字のフォーメーションの中から１つをプレイヤに選択させるために、当該フォーメーションのアイコンをテレビモニタ４に表示する隊形選択表示を行い、ステップ２１４でプレイヤがいずれかのフォーメーションを選択するまで待機する。プレイヤがいずれかのフォーメーションを選択すると、次のステップ２１６において、そのフォーメーションのデフォルト値を取り込む。
【００２９】
なお、以上のステップ２１０、２１６では、上述したように、コンピュータ側も同時に部隊Ｅの兵種、フォーメーションを選択している。以下、便宜的に、プレイヤが部隊Ｆに兵科「歩兵系」、兵種「歩兵」、フォーメーション「三角」を、コンピュータが部隊Ｅに兵科「歩兵系」、兵種「歩兵」、フォーメーション「細長」を選択したものとして説明する。
【００３０】
次にステップ２１８では、予め設定された数（例えば、１００人）の兵士に兵士を識別するための兵士番号を割り振り、後述するように部隊Ｅと部隊Ｆとの３次元仮想空間上での距離を設定して、ステップ２１６で選択されたフォーメーションのデフォルト値に従って、部隊Ｅ及び部隊Ｆに属する全兵士の整列位置をそれぞれ演算してＲＡＭに格納する。次にステップ２２０では、部隊Ｆ（及び部隊Ｅ）に属する兵士の中から隊長（以下、リーダーという。）を自動的に設定してＲＡＭにこの設定情報を格納する。このリーダー設定では、隊形のほぼ中央の任意の兵士がリーダーとして選択され、その兵士に兵士番号の他にリーダーであることを識別する識別情報をＲＡＭに格納する。
【００３１】
次のステップ２２２では、部隊Ｆ（及び部隊Ｅ）に属する各兵士の攻撃力及び防御力を表す攻撃値及び防御値（以下、攻撃値、防御値を攻撃力、防御力と識別しないで一律に攻撃力、防御力という。）を演算し、テレビモニタ４に当該攻撃力の偏在を表示するために各兵士の色補正値を演算する隊形強度演算サブルーチンが呼び出される。図６に示すように、この隊形強度演算サブルーチンでは、ステップ３０２において、全兵士の処理が済んだか否かを判断し、否定判断のときは、次のステップ３０４において、支援兵士数Ｎをカウントする。
【００３２】
このステップ３０４での処理について詳述すれば、まず、ステップ２１８でＲＡＭに格納した部隊Ｆの各兵士の３次元仮想空間上の位置を読み出す。次に、兵士番号順に、図１７（Ａ）に示すように、対象兵士Ｆｎについて、３次元仮想空間上の横ａ（ｍ）、縦ｂ（ｍ）で画定される所定領域としての支援領域に存在する味方兵士、すなわち、対象兵士Ｆｎを支援する支援兵士の数Ｎを、対象兵士Ｆｎが当該支援領域上端中央に存在するものとしてカウントする。従って、例えば、図１７（Ｂ）に示すように、兵士番号Ｆ５の兵士は、兵士番号Ｆ２２、Ｆ２８を除く兵士番号Ｆ４〜Ｆ２７の２２人に支援されているので、支援兵士数Ｎ＝２２となる。なお、図１７（Ａ）（Ｂ）において、矢印ＦＡは集団の進行方向、換言すれば、リーダーの進行方向を表している。また、支援領域は兵科の特性（キャラクタが有する個性）を活かすために、表１に示すように予め定められている。
【００３３】
次のステップ３０６では、支援兵士数Ｎが無制限に大きくなり、対象兵士Ｆｎが人の攻撃力、防御力の最大を超えないように、支援兵士数Ｎが表１に示す最大支援兵士数Ｎｍａｘを超えるか否かを判断し、否定判断のときはステップ３１０に進み、肯定判断のときは、ステップ３０８において、表１に示すように、支援兵士数Ｎを最大支援兵士数Ｎｍａｘ（本例では、１５）としてステップ３１０に進む。なお、本例の歩兵では支援兵士数Ｎは０≦Ｎ≦１５の値をとる。
【００３４】
次にステップ３１０では、対象兵士Ｆｎの攻撃力Ａを下式（１）により演算する。なお、基礎攻撃力αは下表２に示す通り、本例の場合には５０である。
【００３５】
【数１】
0003579794.tif 000003
【００３６】
【表２】
0003579794.tif 000004
【００３７】
次のステップ３１２では、対象兵士Ｆｎの防御力Ｄを下式（２）により演算する。なお、基礎防御力βは表２に示す通り、本例の場合には５０である。
【００３８】
【数２】
0003579794.tif 000005
【００３９】
次にステップ３１４では、対象兵士Ｆｎの攻撃力の強弱をテレビモニタ４上に表示するために、対象兵士Ｆｎの変更値としての色補正値を支援兵士数Ｎ（色補正値＝支援兵士数Ｎ）として演算しＲＡＭに格納して、ステップ３０２へ戻る。ステップ３０２での判断が肯定されたときは、全ての兵士の処理が済んだので、隊形強度演算サブルーチンを終了して図５のステップ２２４へ進み、ステップ２１０、２１８、２２０及び３１４でそれぞれＲＡＭに格納した兵種のデフォルト値（転送初回のみ）、各兵士の位置データ、リーダーの識別情報（転送初回のみ）及び色補正値を画像処理部２３へ転送して、フォーメーション設定処理サブルーチンを終了して、図４のステップ１０６に進む。このフォーメーション設定処理により、画像処理部２３は、その兵種（歩兵）を位置データに従って描画すると共に、リーダーには他の兵士と異なる鎧等の防具を着せたキャラクタを整列状態で描画する。
【００４０】
ここで、画像処理部２３の図示しないサブＣＰＵが実行する色補正処理、及び、上述した色補正値の意味について説明する。本実施形態では、画像が映画並となるように、対象兵士Ｆｎを形成する画像の各ドットがＲＧＢ（赤、緑、青）各２５６階調でテレビモニタ４上に表される。今、そのうちの１ドットがＲ＝１５０、Ｇ＝２００、Ｂ＝１７０であり、色補正値が７の場合を想定すると、当該サブＣＰＵは、ＲＧＢの理論上の各最大階調２５５に対して、色補正すべき各最大階調を２４０（ただし、当該１ドットのＲＧＢが２４０を超えるときはその超えた値）とし、Ｒについて１５０＋（２４０−１５０）×７／１５＝１９２、Ｇについて２００＋（２４０−２００）×７／１５＝２１９、Ｂについて１７０＋（２４０−１７０）×７／１５＝２０３、を演算して、得られた各ＲＧＢの階調をそのドットの色とする色補正処理を行う。従って、色補正値、換言すれば、攻撃力Ａの値が大きいほど、当該ドットは「白」に近づくこととなる。しかしながら、最大階調を２５５とすると真白となり背景との関係で兵士の存在を識別することができなくなる場合があることから、最大階調を２４０に設定している。当該サブＣＰＵは、対象兵士を形成する全てのドットについてこの色補正処理を行い、更に、全兵士についても同様に行う。なお、色補正処理の演算式や色補正すべき各最大階調等のデータは、初期設定処理の時点でＣＰＵブロック２０から画像処理部２３へ転送されている。このため、図１８に示すように、１６段階（支援兵士数Ｎ＝０の場合も含む。）で白に近づく（白く光って見える）こととなり、図１９に示すように、プレイヤが攻撃力Ａの値の大きい兵士をテレビモニタ４上で見ると、隊形全体のうち攻撃力の強弱箇所の偏在を認識できることとなる。なお、図１９において、部隊Ｅと部隊Ｆとの間は、弓系の弩兵が有する弩の射程距離より長い距離（例えば、３次元空間上で２００ｍ）とされている（弩の射程距離は、短弓兵が有する短弓より射程距離が長く設定されている。）。この設定は、上述したステップ２１８において行われている。
【００４１】
＜移動状態の攻撃（防御）力＞
次に、図４のステップ１０６では、部隊Ｅ及び部隊Ｆがそれぞれ隊形を保ちつつ互いのリーダーに向かって移動するための前準備として、仮想枠の演算を行う。図２０（Ａ）に示すように、リーダーＦＬの位置を中心として、部隊Ｆ（及び部隊Ｅ）の整列状態の隊形の領域Ｗｓと相似形で所定倍（例えば、１．２倍）大きい仮想枠Ｗｍを想定して、仮想枠Ｗｍの３次元仮想空間上の位置を演算してＲＡＭに格納する。仮想枠Ｗｍは、部隊Ｆ（及び部隊Ｅ）が移動するときに、隊形を保つために仮想的に想定した領域である。従って、部隊Ｆ（及び部隊Ｅ）が移動するときには、この仮想枠Ｗｍも同時に移動するものと考え、各兵士はそれぞれ属する部隊の仮想枠Ｗｍから外へは移動できないものとして処理がなされる。
【００４２】
次のステップ１０８では、テレビモニタ４の垂直帰線周期と一致した、１／６０秒（１６．６ミリ秒）に一度の周期で呼び出される垂直帰線割込がなされたか否かを判断する。ステップ１０８で否定判定がなされると、次のステップ１１０において、リーダーＦＬの移動方向を変更する等の入力受信部２１から転送された入力情報に対する処理やゲーム効果音を音響処理部２４に合成させるための音響処理等のメイン処理を実行して、ステップ１１６へ進む。一方、ステップ１０８で肯定判定がなされると、ステップ１１２において、部隊Ｆを部隊Ｅ方向（コンピュータ側からは部隊Ｅを部隊Ｆ方向）に移動させるための移動処理サブルーチンが実行される。
【００４３】
図２１（Ａ）に示すように、プレイヤは部隊Ｆを図１９に示した整列状態から、例えば、経路ＷＡに沿って部隊Ｅを大きく迂回するように移動させる戦術を立て、図２１（Ｂ）に示すように、入力装置３の十字方向ボタンセットを駆使して部隊Ｅの側面や背面に移動させることができれば、部隊Ｆのうち攻撃力Ａの大きい部分を部隊Ｅの防御力Ｄの小さい部分に当てることができるので、部隊Ｅに勝利する可能性が極めて高くなる。移動処理サブルーチンでは、このような戦術を背景に、部隊Ｆ（及び部隊Ｅ）の各兵士の３次元仮想空間上での移動を実行するものである。
【００４４】
図７に示すように、移動処理サブルーチンでは、ステップ４０２において、全兵士の処理が済んだか否かを判断し、否定判断のときは、次のステップ４０４において、処理対象がリーダーか否かを判断する。肯定判断のときは、次のステップ４０６において、図４のステップ１１０で取り込んだ入力情報により十字方向ボタンセットが押下されたか否かを判断し、否定判断のときはステップ４１０に進み、肯定判断のときは、ステップ４０８において、介入加速度を演算してＲＡＭに格納する。この介入加速度の演算では、十字方向ボタンセットのうちいずれかのボタンが押下されたときに、初期設定処理でＲＡＭに格納された所定の加速度を読み出す。この介入加速度は、↑ボタン３５、→ボタン３６、←ボタン３７、↓ボタン３８に応じて、それぞれ（ｘ，ｙ，ｚ）方向の加速度（３次元仮想空間上の単位：ｍ／ｓｅｃ２）（αｘ，αｙ，αｚ）で、例えば、（０，１０，０）、（１０，０，０）、（−１０，０，０）、（０，−１０，０）に設定されている。
【００４５】
次にステップ４１０では、他の味方の兵士との接触・衝突回避を目的として一定距離以上離れようとするために発生する加速度を演算する近距離加速度演算を行う。この近距離加速度演算では、まず、初期設定処理でＲＡＭに格納した近距離知覚角度及び近距離知覚半径を読み出す。ここに、近距離知覚角度とは、兵士の現在の顔の向きで見える近傍の視界の角度をいい、本例では１９０度が設定されている。また、近距離知覚半径とは、近距離知覚角度で兵士が見える近傍の距離をいい、本例では３ｍが設定されている。
【００４６】
次に、前回の垂直帰線割込処理時（１／６０秒前）にＲＡＭに格納した他の兵士の位置を読み出し、他の兵士が近距離知覚角度及び近距離知覚半径で画定される近距離領域内にいるか否かを判断する。他の兵士がいる場合には、その兵士との距離を求め、その距離に対応する反発力を求める。上述したように、近距離では他の兵士との接触・衝突回避を目的としているので、他の兵士が近接しているときは急激にその兵士から離れるようにすることが望ましいことから、図２２に示すように、縦軸に反発力、横軸に距離をとったときに、距離と反発力の関係は、例えば２次関数のように、他の兵士との距離が小さい場合には急激に反発力が増加するように変化するものとして演算する。従って、距離が０の場合の反発力は、例えば、１００ｍ／ｓｅｃ２と大きな値をとり、距離が近距離知覚半径に等しい場合は、反発力は０ｍ／ｓｅｃ２となる。求めた反発力を兵士の質量で除算した加速度とみなし、当該他の兵士から対象兵士（この場合はリーダー）に向かうベクトルと、の積を、各成分αｘ、αｙ、αｚ毎に求め、これを近距離加速度とする。そして、更に別の味方兵士が近距離領域内にいるか否かを判断し、いる場合には同様にして反発力を求め、求めた反発力から加速度を求め、先に求めた近距離加速度に各成分ｘ，ｙ，ｚごとに加算して近距離加速度（αｘ，αｙ，αｚ）としてＲＡＭに格納してステップ４１２に進む。一方、他の兵士が近距離領域内にいない場合には、距離が近距離知覚半径に等しい場合と同様に、反発力は０であるので、近距離加速度（αｘ，αｙ，αｚ）＝（０，０，０）として、ＲＡＭに格納してステップ４１２へ進む。
【００４７】
ステップ４１２では、プレイヤが十字方向ボタンセットで部隊Ｆの進行方向に介入しない場合に備え部隊Ｅのリーダー方向に移動するための方向加速度を演算してＲＡＭに格納する。この方向加速度の演算では、前回（１／６０秒前）の部隊Ｅのリーダーと部隊Ｆのリーダーとの位置から３次元仮想空間上の方向を演算し、初期設定処理でＲＡＭに格納した方向加速度を読み出す。この方向加速度はスカラ値（絶対値）で１．２ｍ／ｓｅｃ２に設定されている。従って、このスカラ値を方向成分毎に演算することにより方向加速度（αｘ，αｙ，αｚ）を求めることができる。
【００４８】
次のステップ４１４では、ステップ４０８、４１０、４１２でＲＡＭに格納した介入加速度、近距離加速度及び方向加速度を読み出して、各成分ｘ，ｙ，ｚごとに加算して総和加速度を求め、次のステップ４１６において、最新速度及び最新位置を演算しＲＡＭに格納してステップ４１８に進む。ここで、現在の時間をｔ、経過時間をδｔ、速度Ｖ（Ｖｔ＋δｔ：時刻ｔ＋δｔにおける速度、Ｖｔ：時刻ｔにおける速度）、加速度をα（αｔ：時刻ｔにおける加速度）、位置をＰ（Ｐｔ＋δｔ：時刻ｔ＋δｔにおける位置、Ｐｔ：時刻ｔにおける位置）とすると、最新速度及び最新位置は次式（３）に示すオイラー法を用いた運動方程式によりｘ，ｙ，ｚ成分毎に得ることができる。なお、前回の速度及び位置はＲＡＭに格納されており、経過時間δｔは１／６０秒で既知である。
【００４９】
【数３】
0003579794.tif 000006
【００５０】
次にステップ４１８では、リーダーＦＬの最新位置から最新の仮想枠Ｗｍの位置を演算して、ステップ４０２へ戻る。
【００５１】
一方、ステップ４０４で否定判断されたときは、ステップ４２０において、上述したステップ４１０と同様に、近距離加速度を演算してＲＡＭに格納し、次のステップ４２２で、近傍の兵士と同じ速度で移動しようとするために発生する加速度を求める中距離加速度演算を行う。この中距離加速度演算では、初期設定処理でＲＡＭに格納した中距離知覚角度及び中距離知覚半径を読み出す。ここに、中距離知覚角度とは、兵士の現在の顔の向きで見える中距離の視界の角度をいい、本例では近距離知覚角度より小さい１７０度が設定されている。また、中距離知覚半径とは、中距離知覚角度で兵士が見える距離をいい、本例では近距離知覚距離より大きい７ｍがデフォルト値とされている。次に、前回（１／６０秒前に）ＲＡＭに記憶した他の兵士の位置を読み出し、他の兵士が中距離知覚角度及び中距離知覚半径で画定される中距離領域内にいるか否かを判断する。
【００５２】
中距離領域内に他の兵士がいない場合には、最大速度（例えば、５ｍ／ｓｅｃ）でリーダーを追跡させるために、まず、リーダーへの方向ベクトル（ｘ，ｙ，ｚ）を求める。ここに、方向ベクトルとは、大きさ（長さ）について意味を持たない単位ベクトルで、方向だけが意味を持つベクトル（ｘ，ｙ，ｚ）をいう。リーダーへの方向ベクトル（ｘ，ｙ，ｚ）は、リーダーの位置から自己の位置の差を求め、単位ベクトル化することにより得ることができる。次に、下式（４）により加速度を演算してＲＡＭに格納する。なお、式（４）（式（５）においても同じ。）において、速度同一化時間とは、移動速度から加速度を求めるときに使用される時間パラメータをいい、本例では０．１秒に設定されている。
【００５３】
【数４】
0003579794.tif 000007
【００５４】
一方、中距離領域内に他の兵士がいる場合には、次式（５）により中距離領域内にいる他の兵士の平均速度に合わせようとする加速度を演算しＲＡＭに格納してステップ４２４へ進む。
【００５５】
【数５】
0003579794.tif 000008
【００５６】
次のステップ４２４では、ステップ４２０、４２２で格納した近距離加速度、中距離加速度を読み出して、各成分ｘ，ｙ，ｚごとに加算して総和加速度を求め、次のステップ４２６において、上述した式（４）により現在の速度及び位置演算する。次にステップ４２８において、図２０（Ｂ）に示すように、演算した対象兵士Ｆｎの位置が前回の仮想枠Ｗｍ内に位置するか否かを判断し、肯定判断のときはステップ４３２へ進み、否定判断のときは、ステップ４３０で、総和加速度のベクトルの方向と仮想枠Ｗｍとの交点Ｐの位置を演算し、その位置に位置を補正する。ステップ４３２では、ステップ４２６及びステップ４３０で演算した最新速度及び最新位置をＲＡＭに格納してステップ４０２へ戻る。
【００５７】
一方、ステップ４０２で肯定判断されたときは、次のステップ４３４において隊形強度演算サブルーチンを呼び出し、図５のステップ２２２と同様に、攻撃力Ａ、防御力Ｄ及び色補正値を演算し、ステップ４３６で、各兵士の位置データ、及び色補正値を画像処理部２３へ転送して、移動処理サブルーチンを終了して、図４のステップ１１４に進む。
【００５８】
ステップ１１４では、図７のステップ４１６で演算した部隊Ｅ及び部隊Ｆのリーダーの位置から両リーダーの距離を演算し、次のステップ１１６において、初期設定処理でＲＡＭに格納した所定距離（例えば、部隊Ｅ、Ｆの兵科の一方又は双方が弓系の場合には１００ｍ、双方とも歩兵系又は騎馬系の場合には５０ｍ）より小さいか否かを判断し、否定判断のときはステップ１０８へ戻る。これにより、テレビモニタ４上には、部隊Ｅ及び部隊Ｆがそれぞれの隊形を、整列状態の概ね１．２倍の大きさを保ちつつ、互いのリーダーに向かって（又は、プレイヤの介入により迂回して）、攻撃力Ａ及び防御力Ｄの強弱を表示しながら移動していく様子が表示される。
【００５９】
＜戦闘状態の攻撃（防御）力＞
ステップ１１６での判断が肯定されたときは、次のステップ１１８において、ステップ１０８と同様に、垂直帰線割込がなされたか否かを判断することにより、割込が発生したか否かを判定する。否定判断のときは、ステップ１２０において、リーダーＦＬを停止させる等の入力受信部２１から転送された入力情報に対する処理やゲーム効果音を音響処理部２４に合成させるための音響処理等のメイン処理を実行して、ステップ１２４へ進む。一方、肯定判断のときは、次のステップ１２２において、部隊Ｅ及び部隊Ｆに属する兵士が互いに戦闘する戦闘処理サブルーチンが実行される。
【００６０】
図８に示すように、戦闘処理サブルーチンでは、ステップ５０２において、リーダーの前進状態又は停止状態を表すリーダー状態値Ｌｓを取得する。戦闘処理中リーダーは、後述する所定の領域内に敵兵士がいない限り、ひたすら敵リーダーに向かって前進する。従って、このリーダー状態値Ｌｓは、通常、デフォルト値０の前進状態であり、上述した図４のステップ１２０でプレイヤが入力装置３の↓ボタン３８を押下すると、デフォルト値１の停止状態となる。
【００６１】
次にステップ５０４では、全兵士の処理が済んだか否かを判断し、否定判断のときは、ステップ５０６で対象兵士がリーダーか否かを判断し、肯定判断のときは、次のステップ５０８において、リーダー状態値Ｌｓが０か否かを判断する。ステップ５０８での判断が肯定されたときは、ステップ５１２へ進み、否定されたときは、下表３に示すように、兵士の状態を表す状態フラグが攻撃又は防御となっているかをステップ５１０で判断し、肯定判定のときはステップ５１２に進む。
【００６２】
【表３】
0003579794.tif 000009
【００６３】
ステップ５１２では、対象兵士の状態（状態フラグＦＬのデフォルト値）に応じて処理を行う状態処理サブルーチンが呼び出される。図９に示すように、この状態処理サブルーチンでは、ステップ６０２〜６１０において、状態フラグＦＬがそれぞれ索敵、接近、攻撃、防御、その他か否かを判断し、それぞれ肯定されたときには、ステップ６１２〜６２０で、索敵処理、接近処理、攻撃処理、防御処理、別処理のサブルーチンを実行して状態処理サブルーチンを終了し、図８のステップ５０４へ戻るものである。
【００６４】
図１０に示すように、索敵処理サブルーチンでは、ステップ６３２において、上述した式（４）においてリーダーを敵リーダーとすることにより方向加速度を演算してＲＡＭに格納する。次にステップ６３４で前回の速度及び位置を読み出し、ステップ６３６において対象兵士（この場合はリーダー）の視野範囲（上述した中距離領域と同じ。）内に敵兵士が存在するか否かを、前回の敵の位置情報を読み出して判定する。肯定判断のときは、次のステップ６３８において、敵兵士の状態フラグを参照して索敵状態か否かを判断することにより非戦闘中か否かを判定し、肯定判定のときは、ステップ６４０において最も近い敵を戦闘対象として選択し、次のステップ６４２で対象兵士及び敵兵士の状態フラグＦＬを共に接近としてマッチングを行って、ステップ６４４へ進む。一方、ステップ６３６、６３８での判断（判定）が否定されたときも同様にステップ６４４へ進む。
【００６５】
ステップ６４４では、対象兵士の近距離加速度を上記と同様にして演算し、この近距離加速度と、ステップ６３２でＲＡＭに格納した方向加速度を読み出して、それぞれｘ，ｙ，ｚ成分毎に加算した総和加速度（αｘ，αｙ，αｚ）を演算し、次のステップ６４６において、上述した式（３）により、最新速度及び最新位置を演算しＲＡＭに格納して、索敵処理サブルーチンを終了する。
【００６６】
図１１に示すように、接近処理サブルーチンでは、ステップ６５０において、上述した式（４）においてリーダーを戦闘対象の敵兵士とすることにより接近加速度を演算してＲＡＭに格納する。次にステップ６５２で前回の速度及び位置を読み出し、ステップ６５４で敵兵士との距離を演算し、次のステップ６５６において、その距離が初期設定処理でＲＡＭに格納された設定距離より小さいか否かを判断する。この設定距離は兵種により種々異なっている。例えば、歩兵の場合には２ｍ、槍兵の場合には３ｍ、短弓兵の場合には１００ｍとされている。ステップ６５６での判断が否定された場合には、次にステップ６５８において、そのまま敵兵士に向かって進むか減速するかを判断するために速度を維持する速度距離内か否かを判断する。この速度距離も兵種によって種々異なっており、本例の歩兵の場合には、上述した近距離領域と同じとされている。ステップ６５８で否定判断されたときはステップ６６２へ進み、肯定判断されたときは、次のステップ６６０で敵兵士に向かう速度を落とすための減速加速度（例えば、−２ｍ／ｓｅｃ２）を初期設定処理時に格納したＲＡＭから読み出してＲＡＭに格納する。
【００６７】
ステップ６６２では、対象兵士の近距離加速度を上記と同様にして演算し、この近距離加速度と、ステップ６５０、６６０でＲＡＭに格納した接近加速度、減速加速度を読み出して、それぞれｘ，ｙ，ｚ成分毎に加算した総和加速度（αｘ，αｙ，αｚ）を演算し、次のステップ６６４において、式（３）により、最新速度及び最新位置を演算しＲＡＭに格納して、接近処理サブルーチンを終了する。
【００６８】
一方、ステップ６５６での判断が肯定されたときは、ステップ６６６において対象兵士の最新速度を０とし、次のステップ６６８で、式（３）により、最新速度及び最新位置を演算しＲＡＭに格納し、次のステップ６７０において、乱数を取得することにより乱数が奇数の場合には、対象兵士の状態フラグＦＬを攻撃、当該対象兵士の敵兵士の状態フラグを防御とし、乱数が偶数の場合には対象兵士及び敵兵士の状態フラグを逆として、接近処理サブルーチンを終了する。
【００６９】
図１２に示すように、攻撃処理サブルーチンでは、ステップ６８２で攻撃モーションの描画処理を画像処理部２３に指示し、次のステップ６８４で攻撃モーションが終了したか否かを判断するために攻撃モーションカウンタＡｍが３０か否かを判断することにより、攻撃モーションに要する時間、攻撃モーションカウンタＡｍ×垂直帰線割込時間１／６０秒＝０．５秒が経過したか否かを判定する。否定判断のときは、攻撃モーション中なので、攻撃モーションを続行するためにステップ７０８で防御カウンタＡｍの値を１インクリメントして攻撃処理サブルーチンを終了し、肯定判断のときは、次のステップ６８６で攻撃モーションカウンタＡｍの値をクリアする（０とする）。
【００７０】
ステップ６８８では、戦闘対象である敵兵士の前回ＲＡＭに格納した防御力Ｄを読み出して、次のステップ６９０で所定数値範囲内の乱数値を取得する。次にステップ６９２では、乱数値が防御値より大きいか否かを判断することにより、敵兵士に対する攻撃が成功したか否かを判定する。否定判断のときはステップ７０４へ進み、肯定判断のときは、ステップ７００において、敵兵士の体力Ｈｐから１５を減算する。なお、戦闘処理サブルーチンに入る前の各兵士の体力Ｈｐの値は１００とされており、武器による差異を表すために、例えば、弓系の兵士の攻撃が成功した場合には１０１が減算され、騎馬系の兵士の攻撃が成功した場合には５０が減算される。次のステップ７０２では、敵兵士の体力Ｈｐが０より小さいか否かを判断し、肯定判断のときは、ステップ７０６において、対象兵士の状態フラグＦＬを索敵とし、敵兵士の状態フラグＦＬを死亡として、攻撃処理サブルーチンを終了する。一方、否定判断のときは、攻守を変えるために、対象兵士の状態フラグＦＬを防御とし、敵兵士の状態フラグＦＬを攻撃として、攻撃処理サブルーチンを終了する。
【００７１】
図１３に示すように、防御処理サブルーチンでは、ステップ７１２で防御モーションの描画処理を画像処理部２３に指示し、次のステップ７１４で防御モーションが終了したか否かを判断するために防御モーションカウンタＤｍの値が３０か否かを判断することにより、防御モーションに要する時間、０．５秒が経過したか否かを判定する。否定判断のときは、防御モーション中なので、防御モーションを続行するためにステップ７１８で防御モーションカウンタＤｍを１インクリメントして攻撃処理サブルーチンを終了し、肯定判断のときは、次のステップ７１６で防御モーションカウンタＤｍの値をクリアする。
【００７２】
図９のステップ６２０の別処理では、対峙（停止して敵兵士と見合う状態）、崩落（騎馬系の兵士が馬や象から転落する状態）、逃走（敵兵士とは反対側に逃げる状態）等の種々の処理がなされる。
【００７３】
一方、図８のステップ５１０で否定判定されたときは、ステップ５１４において、攻撃力Ａ及び防御力Ｄを高めるために待機（停止）するための待機処理サブルーチンが実行される。図１４に示すように、この待機処理サブルーチンでは、ステップ７２０で、対象兵士の最新速度を０としてＲＡＭに格納し、次のステップ７２２で前回の位置を最新位置としてＲＡＭに格納する。
【００７４】
また、図８のステップ５０６で否定判断されたときは、次のステップ５１６において、リーダー状態値Ｌｓが０か否かを判断する。ステップ５１６での判断が肯定されたときは、ステップ５２０へ進み、否定されたときは、ステップ５１８において状態フラグＦＬが攻撃又は防御となっているかを判断し、肯定判定のときはステップ５２０に進む。ステップ５２０では、ステップ５１２と同様に、状態処理サブルーチンが呼び出される。一方、ステップ５１８で否定判断されたときは、ステップ５２２において、リーダーの周りに集結し隊形を立て直すための集結処理サブルーチンが実行される。
【００７５】
図１５に示すように、この集結処理サブルーチンでは、ステップ７３２で前回のリーダーの位置並びに対象兵士の位置及び速度をＲＡＭから呼び出し、次のステップ７３４において、上述した式（４）によりリーダー近傍に集結するための集結加速度を演算しＲＡＭに格納する。次にステップ７３６で、対象兵士の近距離加速度を上記と同様にして演算し、この近距離加速度と、ステップ７３４でＲＡＭに格納した集結加速度を読み出して、それぞれｘ，ｙ，ｚ成分毎に加算した総和加速度（αｘ，αｙ，αｚ）を演算し、ステップ７３８において、上記式（３）により、ｘ，ｙ，ｚ成分毎に最新速度及び最新位置を演算する。
【００７６】
次のステップ７４０では、図４のステップ１０６で演算した選択された隊形上でのリーダーに対する対象兵士の相対位置を読み出し、現在のリーダーの位置に対する現在の対象兵士の位置を集結すべき集結位置として演算する。次にステップ７４２において、ステップ７３８で演算した対象兵士の位置がステップ７４０で演算した集結位置の所定範囲内（例えば、３次元仮想空間上で半径１ｍで画定される円又は球の範囲内）かを判断することにより、対象兵士が集結位置に集結したか否かを判定し、否定判断のときはステップ７４６へ進み、肯定判断のときは、次のステップ７４４において最新速度を０（ｍ／ｓｅｃ）として、ステップ７４６において、ステップ７３８、７４４で演算した最新速度及び最新位置をＲＡＭに格納する。
【００７７】
一方、図８のステップ５０４で肯定判断されたときは、次のステップ５２４において隊形強度演算サブルーチンを呼び出し、図５のステップ２２２と同様に、攻撃力Ａ、防御力Ｄ及び色補正値を演算し、ステップ５２６で、各兵士の位置データ及び色補正値を画像処理部２３へ転送して、戦闘処理サブルーチンを終了して、図４のステップ１２４に進む。このような処理は垂直帰線割込（１／６０秒）毎に行われるので、テレビモニタ４上には戦闘状態での攻撃力Ａの変化が刻々と変化していく様子が表される。
【００７８】
ここで、図８に示した戦闘処理サブルーチンについてまとめると、図２３に示すように、部隊ＦのリーダーＦＬは、前進状態では、プレイヤの介入（↓ボタン３８による停止命令）がない限り、部隊Ｅのリーダーのいる矢印ＦＡ方向に移動するが、リーダーＦＬの所定範囲内に非交戦中の敵兵士（例えば、Ｅ７８）がいるとその敵兵士と戦闘をしながら最終的に部隊Ｅのリーダーと対戦することとなる。一方、部隊Ｆに属する兵士は、リーダーＦＬが部隊Ｅのリーダーに向かって前進中には、図２４（Ａ）に示すように、リーダーＦＬが目指す部隊Ｅのリーダーに向かって前進するが、前進状態では敵兵士を索敵して戦闘することとなるので、時間の経過により徐々に拡散し、整列状態や移動状態のフォーメーションが崩れて行くこととなる。従って、図１７（Ｃ）に示すように、支援兵士数Ｎが少なくなり攻撃力Ａ、防御力Ｄは小さくなる。これに対し、プレイヤの↓ボタン３８による介入があると、図２４（Ｂ）に示すように、戦闘中（攻撃フラグＦＬが攻撃又は防御）でやむを得ず集結できない兵士Ｆ１６、Ｆ６０を除いてリーダーＦＬのもとに集結し隊形を整えることとなるので、兵士の攻撃力Ａ、防御力Ｄが大きくなると共に、隊形の強弱箇所をテレビモニタ４に表示された白く光る箇所で認識することができることとなる。
【００７９】
次に、図４のステップ１２４では、リーダーの状態フラグＦＬが死亡か否かを判断することにより、リーダーが死亡したか否かを判断し、肯定判断のときはステップ１２８へ進み、否定判断のときは、次のステップ１２６において、整列位置（ステップ１０６参照）に整列する整列命令が出されたか否かを判断する。この命令は入力装置３を操作することにより出され、ステップ１２０のメイン処理でＣＰＵブロック２０に取り込まれる。ステップ１２６で否定判断されたときは、ステップ１１８に進み、肯定判断されたときは、ステップ１２８において終了処理を行う。この終了処理では、ステップ１２４で肯定判断されたときは、リーダーが死亡した部隊の兵士は敗走する画像を画像処理部２３に描画させ、ステップ１２６で肯定判断されたときは、生存兵士をステップ１０４で演算した整列位置に戻して隊列を組み直す画像を画像処理部２３に描画させて、戦闘ルーチンを終了する。
【００８０】
（第２実施形態）
次に、本発明を家庭用ビデオゲーム装置に適用した第２の実施の形態について説明する。本実施形態では、第１実施形態で示した隊形強度演算サブルーチンに代えて、異なる処理ロジックの隊形強度演算サブルーチンを用いたものである。なお、本実施形態において、第１実施形態と同一の構成要素及び処理ルーチンには同一の符号を付してその説明を省略し、異なる箇所のみ説明する。
【００８１】
図２５に示すように、本実施形態の隊形強度演算サブルーチンでは、ステップ８０２で、全兵士について支援兵士のカウント処理が終了したか否かを判断し、否定判断のときは、ステップ８０４において対象兵士の位置を読み出し、次のステップ８０６で対象兵士を除く全兵士の処理が終了したかを判断する。ステップ８０６で否定判断されたときは次のステップ８０８へ進み、肯定判断されたときはステップ８０２へ戻る。すなわち、ステップ８０２〜ステップ８０６では、図２６に示すように、対象兵士の番号の若い順に、当該対象兵士を除く全兵士について順に処理がなされる（部隊Ｅについても同じ。）。
【００８２】
次のステップ８０８では、他の兵士の位置を読み出して、ステップ８１０において、対象兵士の支援領域内に他の兵士が存在するか否かを判断し、否定判断のときはステップ８０６へ戻り、肯定判断のときは次のステップ８１２において他の兵士の支援兵士数Ｎのカウンタを１インクリメントしてステップ８０６へ戻る。すなわち、ステップ８０６〜ステップ８１２では、図２７（Ａ）に示すように、対象兵士をＦ１とすると、その位置は上述したステップ８０４で既に取得しており、ステップ８０８で他の兵士Ｆ２の位置を読み出し、ステップ８１０で、下表４に示すように、兵種「歩兵」の場合には３次元仮想空間上で横４ｍ×縦８ｍの所定領域としての支援領域Ａ１内に、他の兵士Ｆ２が存在するか否かを判断し、他の兵士であるＦ２が存在しているので、ステップ８１２において、対象兵士Ｆ１が他の兵士Ｆ２を支援可能なキャラクタとして、他の兵士Ｆ２の支援兵士数Ｎのカウンタを１インクリメントして、ステップ８０６に戻り、次にステップ８０６において、次の他の兵士Ｆ３について同様に処理して他の兵士Ｆ３の支援兵士数Ｎのカウンタを１インクリメントし、ステップ２１８で予め設定された数の他の兵士Ｆ１００まで、同様の処理を行う。従って、ステップ８０２〜８１２では、図２７（Ｂ）に示すように、対象兵士Ｆ１の支援領域Ａ１内に他の兵士Ｆ２、Ｆ３、Ｆ４が存在するので、これらの他の兵士は対象兵士Ｆ１の支援を受けられるものとして支援兵士数Ｎのカウンタがそれぞれ１ずつインクリメントされ、対象兵士Ｆ２の支援領域Ａ２内には他の兵士Ｆ３が存在するので他の兵士Ｆ３は支援兵士数Ｎのカウンタが１インクリメントされる（累積される）。同様の累積についての処理が対象兵士Ｆ１００まで行われる。
【００８３】
【表４】
0003579794.tif 000010
【００８４】
次にステップ８０２で肯定判断されたときは、ステップ８１４において、色補正値の演算を全兵士について処理したか否かを判断し、否定判断のときは、ステップ８１４〜ステップ８２４において、図６のステップ３０６〜ステップ３１４と同様の処理を行ってステップ８１４へ戻り、ステップ８１４での判断が肯定されたときは、本実施形態の隊形強度演算サブルーチンを終了して呼び出した元のステップの次のステップへ進む。
【００８５】
以上のように、上記実施形態では、兵士の近傍に存在する他の味方の兵士数が多いほど、換言すれば、兵士の密集度が高いほど、その兵士の攻撃力Ａ及び防御力Ｄが大きくなる（累積される）ようにしたので（図６のステップ３０４、３１０、３１２、図２５のステップ８０２〜８１２、８２０、８２２）、例えば、歩兵は密集しているほど攻撃力、防御力が大きくなったり、弓兵は横に展開しているほど攻撃力が大きくなるという、集団戦闘戦術をリアルに表現することができる。また、本実施形態では、部隊のフォーメーション（隊形）を選択できるようにしたので、各兵士の攻撃力、防御力の大きさの違いから、そのフォーメーションの強弱箇所の偏在を表すことができる。従って、従来のように、各兵士や集団の攻撃力、防御力が一律に演算されたり、魚鱗の隊形が鶴翼の隊形に強く鋒矢の隊形が魚鱗の隊形に強いというようなジャンケンの如き相性による攻撃力、防御力の設定とは異なり、所定時間（１／６０秒）毎に各兵士の攻撃力等を演算するので、集団の情勢に応じて刻々と攻撃力等が変化していく様を表すことができる。しかも、本実施形態では、攻撃力Ａを、色補正値を演算・転送することにより（ステップ３１４、２２４、４３６、５２６、８２４）、画像処理部２３に色補正処理で演算させた後描画させるようにしたので、攻撃力Ａの大きい兵士が白く光って見えると共に、集団の攻撃力の偏在も直ちに認識することができる。従って、敵部隊の隊形、敵兵士の武器、敵との距離等を考慮して、敵部隊の弱い箇所を攻める等の戦術を楽しむことができる。
【００８６】
なお、上記実施形態では、対象兵士の近傍を定義するために、横ａ（ｍ）、縦ｂ（ｍ）で画定される支援領域を用いたが、支援領域は四角である必要はなく、例えば、円、球、三角、多面体等種々の支援領域を用いることができる。また、上記実施形態では、対象兵士が四角形の上端中央や下端中央に位置しているものとして支援兵士数を演算したが、この設定位置に限らず、支援領域の中央その他任意の位置とするようにしてもよい。更に、上記実施形態では、仮想枠Ｗｍの中心とリーダーの位置と同じとなるようにしたが、仮想枠Ｗｍの中心とリーダーとの位置とを別々に演算するようにしてもよい。
【００８７】
また、上記実施形態では、式（１）（２）で支援兵士数Ｎに応じてリニアに（直線的に）攻撃力、防御力を演算したが、例えば、二次関数のように支援兵士数Ｎが大きくなるにつれて攻撃力、防御力が急に大きくなるようにしてもよく、画像処理部２３が行う色補正処理でもリニアに白に近づけるのではなく、色補正値により二次関数的に白に近づけるようにしてもよい。更に、上記実施形態では、攻撃力と防御力を共に支援兵士数Ｎが大きくなるに従って大きくなるようにしたが、攻撃力と防御力とで異なるロジックとなるようにしてもよい。このような一例として、攻撃力が大きい箇所は防御力が小さくなるように、式（２）において支援係数ＫＤをマイナスとするようにしてもよい。また更に、上記実施形態では演算を簡単にするために色補正値を支援兵士数Ｎと同じとしたが、上述した式（１）（２）により、一旦攻撃力（又は防御力）を演算し、その演算された攻撃力を例えば、１６分割され攻撃力に対応する色補正値を有するテーブルを参照して、色補正値を演算するようにしてもよい。このようにすれば、攻撃力等が支援兵士数Ｎとリニアな関係になくても、すなわち、支援兵士数Ｎと攻撃力等との関係が二次関数的な関係にある場合にも段階的に適正な色補正を行うことができる。
【００８８】
更に、上記実施形態では、画像処理部２３の色補正処理で、兵士全体の色調を一律に補正する例を示したが、例えば、兵士の画像を兵士の正面から背面を１５分割して正面側から順次白く光らせたり、兵士の所定の部位や武器を１６段階で白く光らせるようにしてもよい。また更に、本実施形態では、攻撃力に応じて兵士を１６段階で白く光るようにしたが、１６段階に限る必要はなく、また、白に限定する必要もない。要は、兵士の色調を変更することによりプレイヤがテレビモニタ４を見たときに攻撃力の強い兵士や隊形の攻撃力の強弱箇所を認識できればよい。従って、例えば、同じ兵士について攻撃力の段階に応じて複数の色調のみが異なる画像を用意しておき、色補正値に応じて用意された画像の中から１つを選ぶようにしてもよい。
【００８９】
また、上記実施形態では、攻撃力、防御力及び色補正値の演算を各兵士について垂直帰線割込毎に行う例を示したが、ＣＰＵブロック２０や画像処理部２３の図示しないサブＣＰＵの負荷の関係で、例えば、垂直帰線割込５回に一度とするようにしてもよく、更に、攻撃力、防御力及び色補正値の演算で垂直帰線割込に対する回数をそれぞれ異ならせるようにしてもよい。
【００９０】
更にまた、上記実施形態では、画像処理部２３のサブＣＰＵに色補正処理を実行させたが、ＣＰＵブロック２０のＣＰＵに実行させるようにしてもよい。また、上記実施形態ではゲームプログラムを記録した記録媒体１を媒体読取部２２で読み取ることによりＲＡＭへプログラムを転送するようにしたが、媒体読取部２２を備えずＲＯＭにゲームプログラムを記憶してこのＲＯＭからゲームプログラムを読み出すようにしてもよい。このようにすれば、ゲーム専用機とすることができる。更に、上記実施形態では、記録媒体としてＣＤ−ＲＯＭを使用する例で説明したが、ＣＰＵブロック２０のＲＡＭにロード可能なＲＯＭカートリッジや大容量のフレキシブルディスク、マグネットオプティカルディスク等であっても、これらの媒体読取部を備えていれば本発明を適用することができることはいうまでもない。
【００９１】
そして、上記実施形態では、種々の設定値、計算式を一例として示したが、本発明はこれらに限られることなく、上述した特許請求の範囲において種々の変形が可能であることは当業者にとって論を待たない。
【００９２】
【発明の効果】
以上説明したように、本発明によれば、攻撃防御値演算手段により集団を形成するキャラクタ毎に攻撃値及び／又は防御値が演算され、色補正手段により攻撃値及び／又は防御値に応じてキャラクタの色補正が行われるので、集団全体の攻撃力及び／又は防御力の強弱箇所の偏在を表すことができる、という効果を得ることができる。
【図面の簡単な説明】
【図１】家庭用ゲーム装置の接続態様を示す概略斜視図である。
【図２】家庭用ゲーム装置に使用される入力装置の平面図である。
【図３】本発明を適用した実施形態のゲーム装置本体の構成を示す概略ブロック図である。
【図４】実施形態の戦闘ルーチンを示すフローチャートである。
【図５】戦闘ルーチンのステップ１０４の詳細を示すフォーメーション設定処理サブルーチンのフローチャートである。
【図６】フォーメーション設定処理サブルーチンのステップ２２２、移動処理サブルーチンのステップ４３４及び戦闘処理サブルーチンのステップ５２４の詳細を示す隊形強度演算サブルーチンである。
【図７】戦闘ルーチンのステップ１１２の詳細を示す移動処理サブルーチンのフローチャートである。
【図８】戦闘ルーチンのステップ１２２の詳細を示す戦闘処理サブルーチンのフローチャートである。
【図９】戦闘処理ルーチンのステップ５１２及び５２０の詳細を示す状態処理サブルーチンのフローチャートである。
【図１０】状態処理ルーチンのステップ６１２の詳細を示す索敵処理サブルーチンのフローチャートである。
【図１１】状態処理ルーチンのステップ６１４の詳細を示す接近処理サブルーチンのフローチャートである。
【図１２】状態処理ルーチンのステップ６１６の詳細を示す攻撃処理サブルーチンのフローチャートである。
【図１３】状態処理ルーチンのステップ６１８の詳細を示す防御処理サブルーチンのフローチャートである。
【図１４】戦闘処理ルーチンのステップ５１４の詳細を示す待機処理サブルーチンのフローチャートである。
【図１５】戦闘処理ルーチンのステップ５２２の詳細を示す集結処理サブルーチンのフローチャートである。
【図１６】図１６は部隊Ｅ及び部隊Ｆが採りうるフォーメーションの説明図であり、（Ａ）〜（Ｅ）はそれぞれ、細長、四角、三角、ダイヤ、Ｖ字フォーメーションを示している。
【図１７】処理対象兵士の支援兵士数を説明するための説明図であり、（Ａ）は処理対象兵士の支援領域の画定を説明するための説明図であり、（Ｂ）は整列中の対象兵士の支援兵士数を計数するための説明図であり、（Ｃ）は戦闘中の対象兵士の支援兵士数を示す説明図である。
【図１８】各兵士の攻撃力、防御力の大きさの段階を説明する説明図である。
【図１９】フォーメーションが形成され移動処理サブルーチンが実行される前の各兵士の攻撃力及び部隊の攻撃力の強弱箇所の偏在を示すテレビモニタに表示された画面の説明図である。
【図２０】隊形の仮想枠の一例を説明する説明図であり、（Ａ）は整列時と移動時との領域の大きさの関係を説明するための説明図であり、（Ｂ）は移動時に兵士が外に出たときの位置補正を説明するための説明図である。
【図２１】（Ａ）はプレイヤの移動戦術を説明するための説明図であり、（Ｂ）は戦闘前の敵部隊に対する理想的位置を説明するための説明図である。
【図２２】味方兵士との距離と反発力との関係を説明するための説明図である。
【図２３】戦闘状態におけるリーダーの動きを説明するための説明図である。
【図２４】戦闘状態における兵士の動きを説明するための説明図であり、（Ａ）はリーダーが前進中の兵士の動きを示し、（Ｂ）はリーダーが待機中の兵士の動きを示す。
【図２５】フォーメーション設定処理サブルーチンのステップ２２２、移動処理サブルーチンのステップ４３４及び戦闘処理サブルーチンのステップ５２４の詳細を示す第２実施形態の隊形強度演算サブルーチンである。
【図２６】第２実施形態の隊形強度演算サブルーチンのステップ３０２〜ステップ３０６の対象兵士及び対象兵士を除く兵士の処理手順を説明するための説明図である。
【図２７】第２実施形態の隊形強度演算サブルーチンのステップ３０２〜ステップ３１２の演算内容を説明するための説明図であり、（Ａ）はステップ３０６〜ステップ３１２での演算の概念を示し、（Ｂ）はステップ３０２〜ステップ３１２全体での演算の概念を示す。
【符号の説明】
１  記録媒体
２  ゲーム装置本体
３  入力装置
４  テレビモニタ（ディスプレイ）
２０  ＣＰＵブロック（座標値演算手段、攻撃防御値演算手段、色補正手段、集団隊形選択手段、隊形位置演算手段、隊形維持手段）
【図１】
0003579794.tif 000011
【図２】
0003579794.tif 000012
【図３】
0003579794.tif 000013
【図４】
0003579794.tif 000014
【図５】
0003579794.tif 000015
【図６】
0003579794.tif 000016
【図７】
0003579794.tif 000017
【図８】
0003579794.tif 000018
【図９】
0003579794.tif 000019
【図１０】
0003579794.tif 000020
【図１１】
0003579794.tif 000021
【図１２】
0003579794.tif 000022
【図１３】
0003579794.tif 000023
【図１４】
0003579794.tif 000024
【図１５】
0003579794.tif 000025
【図１６】
0003579794.tif 000026
【図１７】
0003579794.tif 000027
【図１８】
0003579794.tif 000028
【図１９】
0003579794.tif 000029
【図２０】
0003579794.tif 000030
【図２１】
0003579794.tif 000031
【図２２】
0003579794.tif 000032
【図２３】
0003579794.tif 000033
【図２４】
0003579794.tif 000034
【図２５】
0003579794.tif 000035
【図２６】
0003579794.tif 000036
【図２７】
0003579794.tif 000037