JP5106894B2 - プログラム、情報記憶媒体及びゲーム装置 - Google Patents

プログラム、情報記憶媒体及びゲーム装置 Download PDF

Info

Publication number
JP5106894B2
JP5106894B2 JP2007075142A JP2007075142A JP5106894B2 JP 5106894 B2 JP5106894 B2 JP 5106894B2 JP 2007075142 A JP2007075142 A JP 2007075142A JP 2007075142 A JP2007075142 A JP 2007075142A JP 5106894 B2 JP5106894 B2 JP 5106894B2
Authority
JP
Japan
Prior art keywords
game
character
tracking
program
missile
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2007075142A
Other languages
English (en)
Other versions
JP2008229159A (ja
Inventor
泰広 下野
三四郎 日高
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Namco Ltd
Bandai Namco Entertainment Inc
Original Assignee
Namco Ltd
Namco Bandai Games Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Namco Ltd, Namco Bandai Games Inc filed Critical Namco Ltd
Priority to JP2007075142A priority Critical patent/JP5106894B2/ja
Publication of JP2008229159A publication Critical patent/JP2008229159A/ja
Application granted granted Critical
Publication of JP5106894B2 publication Critical patent/JP5106894B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Processing Or Creating Images (AREA)

Description

本発明は、プログラム、情報記憶媒体及びゲーム装置に関する。
3次元仮想空間にゲーム空間を形成してプレーヤが操作する戦闘機や兵士といったプレーヤキャラクタのオブジェクトを配置し、プレーヤキャラクタに随伴するように移動制御される仮想カメラから見たゲーム空間の画像をゲーム画面として表示させつつ、プレーヤキャラクタを操作して敵キャラクタをミサイルや銃で攻撃するゲームが知られている。
近年では、攻撃目標が3次元仮想空間を撮影する仮想カメラの撮影範囲に入り易いように仮想カメラの制御を補正し、プレーヤがゲーム空間内の目標を見失うのを抑制することで、プレーヤがゲームを楽しみ易くするものが知られている(例えば、特許文献1を参照。)。また、プレーヤキャラクタが構える銃の照準内にある敵キャラクタの位置や移動方向、移動速度と、プレーヤキャラクタの位置や弾の速度とに基づいて「弾が到達したときの対象物の予測位置」に当るように銃身方向を補正することで、初心者プレーヤの技量を補うものも知られるところである(例えば、特許文献2を参照。)。
特開2001−9158号公報 特開2001−46743号公報
ところで、プレーヤが戦闘機を操縦して敵キャラクタの戦闘機と空中戦をするコンバットフライトシミュレーションと呼ばれるゲームにおいては、通常攻撃兵器は標的となる敵キャラクタを所定時間追尾するように飛翔するミサイルである。ところが、このミサイルの追尾能力には限界が有り、発射すれば必ず当たるものではない。ミサイル発射時点における敵キャラクタとプレーヤキャラクタとの相対的な位置関係、敵キャラクタの進行方向に対するプレーヤキャラクタの機首方向の関係などから命中率が大きく変わる。換言すると、「ミサイルで撃墜するのに適切な相対位置関係で適当なタイミングで発射する」必要がある。コンバットフライトシミュレーションゲームでは、この見極めが初級者プレーヤと上級者プレーヤの戦果の差となる。初級者プレーヤにとってみれば、撃ったのに当らないと不満を感じる原因であった。
そうした不満を感じずに初心者プレーヤでもゲームが楽しめるように、前述の特許文献2の技術を適用することも考えられる。しかし、同特許文献の技術は銃の弾のように基本的に直進するものが前提とされているため、コンバットフライトシミュレーションゲームのミサイルのように自動的に攻撃目標を追尾する飛翔体を攻撃手段とするゲームでは、必ずしも適当とは言えなかった。
本発明は、こうした事情を鑑みてなされたものであり、その目的とするところは、自動的に攻撃目標を追尾する飛翔体を攻撃手段とするゲームであっても、プレーヤが攻撃の命中精度を高められるようにして、初心者プレーヤでも敵を狙い撃った感じを楽しめるようにすることである。
上記の課題を解決する第1の発明は、コンピュータに、キャラクタの仮想空間中の移動制御及び所与の仮想カメラに基づく前記ゲーム空間の画像生成を行わせて所定のゲームを実行させるためのプログラムであって、プレーヤの操作入力に基づき、追尾対象キャラクタ(例えば、図3の敵キャラクタ6)を追尾して飛翔する飛翔体(例えば、図3のミサイル2)を発射可能なプレーヤキャラクタの移動制御を行うプレーヤキャラクタ移動制御手段(例えば、図9の操作入力部100、処理部200、ゲーム演算部210、図12のステップS8〜S10)、前記追尾対象キャラクタの移動制御を行う追尾対象キャラクタ移動制御手段(例えば、図9の処理部200、ゲーム演算部210、図12のステップS6)、現在の前記プレーヤキャラクタと前記追尾対象キャラクタとの少なくとも相対的な位置及び向きに基づき、複数の追尾制御方法の中から追尾制御方法を選択する追尾制御方法選択手段(例えば、図9の処理部200、ゲーム演算部210、図12のステップS16〜S18、図14のステップS104〜S108)、プレーヤの発射操作入力を検出する検出手段(例えば、図9の処理部200、ゲーム演算部210、図12のステップS18、図14のステップS100)、前記検出に応じて前記飛翔体を発射し、当該検出の際に前記追尾制御方法選択手段により選択された追尾制御方法により当該飛翔体の飛翔を制御する飛翔制御手段(例えば、図9の処理部200、ゲーム演算部210、図12のステップS18、図14のステップS114〜S130)、として前記コンピュータを機能させるためのプログラムである。
第10の発明は、キャラクタの仮想空間中の移動制御及び所与の仮想カメラに基づく前記ゲーム空間の画像生成を行って所定のゲームを実行するゲーム装置であって、プレーヤの操作入力に基づき、追尾対象キャラクタを追尾して飛翔する飛翔体を発射可能なプレーヤキャラクタの移動制御を行うプレーヤキャラクタ移動制御手段と、前記追尾対象キャラクタの移動制御を行う追尾対象キャラクタ移動制御手段と、現在の前記プレーヤキャラクタと前記追尾対象キャラクタとの少なくとも相対的な位置及び向きに基づき、複数の追尾制御方法の中から追尾制御方法を選択する追尾制御方法選択手段と、プレーヤの発射操作入力を検出する検出手段と、前記検出に応じて前記飛翔体を発射し、当該検出の際に前記追尾制御方法選択手段により選択された追尾制御方法により当該飛翔体の飛翔を制御する飛翔制御手段と、を備えたゲーム装置である。
第1又は第10の発明によれば、飛翔体の発射操作が為されたとき現在の前記プレーヤキャラクタと前記追尾対象キャラクタとの少なくとも相対的な位置及び向きに基づき、複数の追尾制御方法の中から追尾制御方法を選択することができる。飛翔体は、追尾対象に向けてどのように移動制御するかその制御方法によって命中率が変わり得る。したがって、自動的に攻撃目標を追尾する飛翔体を攻撃手段とするゲームを初心者プレーヤがプレイしても、攻撃の命中精度を高めることが可能となる。
第2の発明は、第1の発明のプログラムであって、前記複数の追尾制御方法には、少なくとも未来位置予測型追尾制御方法が含まれ、前記飛翔制御手段が、前記追尾制御方法選択手段により未来位置予測型追尾制御方法が選択された場合に、前記追尾対象キャラクタの所定時間後の未来位置を予測演算し、該未来位置を前記飛翔体の移動目標位置として前記飛翔体を移動させる処理を繰り返し行って前記飛翔体の飛翔を制御するように前記コンピュータを機能させるためのプログラムである。
第2の発明によれば、第1の発明と同様の効果を奏するとともに、追尾対象キャラクタの未来位置に向けて飛翔体を移動制御できるので、高い命中精度で追尾対象キャラクタを攻撃できる。
第3の発明は、第2の発明のプログラムであって、前記追尾制御方法選択手段が、前記追尾対象キャラクタの所定の判定基準時間後の未来位置である判定基準未来位置(例えば、図6の未来予測位置12)を予測演算する判定基準未来位置予測演算手段(例えば、図9の処理部200、ゲーム演算部210、図13のステップS50〜S54)と、前記予測演算された判定基準未来位置が、前記プレーヤキャラクタの向き又は前記飛翔体の発射方向の延長方向に対して所定の近接条件を満たす位置にあることを検出する方向適合検出手段(例えば、図9の処理部200、ゲーム演算部210、図13のステップS60〜S64)と、を有し、前記方向適合検出手段による検出がなされた場合に前記未来位置予測型追尾制御方法を選択するように前記コンピュータを機能させるためのプログラムである。
第3の発明は、第2の発明と同様の効果を奏するとともに、プレーヤキャラクタの向き又は飛翔体の発射方向の延長方向に対して所定の近接条件を満たす位置にあることを条件に、未来位置予測型追尾制御方法を選択することができる。逆説的に言うと、プレーヤが積極的に所定の近接条件を満たすようにプレーヤキャラクタを操作することで、初めて未来位置予測型追尾制御方法が適用される飛翔体で攻撃できるようになる。したがって、無条件にプレーヤを補助するだけでなく適当な操作を要求することで、プレーヤの操作技量の向上を促す効果がある。
第4の発明は、第3の発明のプログラムであって、前記判定基準未来位置予測演算手段が、前記プレーヤキャラクタと前記追尾対象キャラクタとの距離に応じて前記所定の判定基準時間を可変するように前記コンピュータを機能させるためのプログラム。
第4の発明によれば、第3の発明と同様の効果を奏するとともに、未来位置予測型追尾制御方法が適用される飛翔体の命中精度をプレーヤキャラクタと前記追尾対象キャラクタとの距離に応じて可変することができる。
第5の発明は、第3又は第4の発明のプログラムであって、前記予測演算された判定基準未来位置が、前記仮想カメラの撮影範囲外に位置する場合に撮影範囲内に補正する、又は、当該撮影範囲の周縁部に位置する場合に中央部位置に補正する、ように前記コンピュータを機能させるためのプログラムである。
第5の発明によれば、第3又は第4の発明と同様の効果を奏するとともに、未来位置予測型追尾制御方法が適用される機会を多くし、初心者プレーヤの補助をより効果的に実施できる。
第6の発明は、第3〜第5の発明の何れかのプログラムであって、前記方向適合検出手段による検出がなされている際に、該検出がなされている旨を所定の報知方法(例えば、図5のシュートタイミング表示10)で報知する報知制御手段(例えば、図9の処理部200、ゲーム演算部210、画像生成部260、図12のステップS26〜S30)として前記コンピュータを機能させるためのプログラムである。
第6の発明によれば、第3〜第5の発明の何れかと同様の効果を奏するとともに、未来位置予測型追尾制御方法が適用される飛翔体で攻撃できるタイミングを報知することで、プレーヤを補助することができる。
第7の発明は、第3〜第6の発明の何れかのプログラムであって、前記判定基準未来位置を中心とし、前記所定の近接条件を満たす範囲(例えば、図5のレティクル8)を、前記ゲーム空間の画像中に表示する判定範囲表示制御手段(例えば、図9の処理部200、ゲーム演算部210、画像生成部260、)として前記コンピュータを機能させるためのプログラムである。
第7の発明によれば、第3〜第6の発明の何れかと同様の効果を奏するとともに、判定基準未来位置を中心とし、前記所定の近接条件を満たす範囲をゲーム画像に表示させることで、未来位置予測型追尾制御方法が適用される飛翔体で攻撃できるようにプレーヤの操作を補助することができる。
第8の発明は、第2〜第7の発明の何れかのプログラムであって、前記複数の追尾制御方法には、少なくとも現在位置基準追尾制御方法が含まれ、前記飛翔制御手段が、前記追尾制御方法選択手段により現在位置基準追尾制御方法が選択された場合に、前記追尾対象キャラクタ現在位置を前記飛翔体の移動目標位置として前記飛翔体を移動させる処理を繰り返し行った前記飛翔体の飛翔を制御するように前記コンピュータを機能させるためのプログラムである。
第8の発明によれば、第2〜第7の発明の何れかと同様の効果を奏するとともに、未来位置予測型追尾制御方法と、現在位置基準追尾制御方法とから飛翔体の制御に適用する追尾制御方法を選択し、飛翔体の命中精度に差を設けることができる。
第9の発明は、第1〜第8の発明の何れかのプログラムを記憶したコンピュータ読取可能な情報記憶媒体である。ここで言う「情報記憶媒体」とは、例えば磁気ディスクや光学ディスク、ICメモリなどを含む。第9の発明によれば、第1〜第8の発明の何れかのプログラムをコンピュータに読み取らせて実行させることによって、コンピュータに第1〜第8の発明の何れかと同様の効果を発揮させることができる。
本発明によれば、飛翔体の発射操作が為されたとき現在の前記プレーヤキャラクタと前記追尾対象キャラクタとの少なくとも相対的な位置及び向きに基づき、複数の追尾制御方法の中から追尾制御方法を選択することができる。飛翔体は、追尾対象に向けてどのように移動制御するかその制御方法によって命中率が変わり得る。したがって、自動的に攻撃目標を追尾する飛翔体を攻撃手段とするゲームを初心者プレーヤがプレイしても、攻撃の命中精度を高めることが可能となる。
以下、本発明を適用した実施形態として、家庭用ゲーム装置でコンバットフライトシミュレーションゲームを実行する場合を例に挙げて説明する。
尚、本実施形態が適用可能なゲームジャンルはコンバットフライトシミュレーションゲームに限らない。プレーヤキャラクタが、自動的に攻撃目標を追尾する飛翔体(例えば、手裏剣のように回転しながら飛ぶ武器、気の集まりを表現した光球、レーザ兵器を意味する光、キャラクタの構造物の一部が分離して攻撃する武器、回転でカーブして飛ぶ球を含む。)を使って攻撃・戦闘するゲームであれば同様に適用することができる。
[ゲーム装置の構成]
図1は、本実施形態における家庭用ゲーム装置の構成例を説明する構成図である。同図に示すように、家庭用ゲーム装置1200は、ゲーム装置本体1201と、ゲームコントローラ1230と、ビデオモニタ1220とを備える。
ゲーム装置本体1201は、例えばCPUや画像処理用LSI、ICメモリ等が実装された制御ユニット1210と、光学ディスク1202やメモリカード1204といった情報記憶媒体の読み取り装置1206,1208とを備える。そして、家庭用ゲーム装置1200は、光学ディスク1202やメモリカード1204からゲームプログラム及び各種設定データを読み出し、ゲームコントローラ1230に為される操作入力に基づいて制御ユニット1210が各種のゲーム演算を実行し、所与のビデオゲームを実行する。
制御ユニット1210は、CPU(Central Processing Unit)やGPU(Graphics Processing Unit)及びDSP(Digital Signal Processor)などの各種マイクロプロセッサ、ASIC(Application Specific Integrated Circuit)、ICメモリなどの電気電子機器を備え家庭用ゲーム装置1200の各部を制御する。また、制御ユニット1210は、インターネットやLAN(Local Area Network)、WAN(Wide Area Network)と言った通信回線1と有線又は無線接続し、外部装置との間でデータ通信を実現する通信装置1212を備える。
ゲームコントローラ1230は、選択の決定やキャンセル、タイミングの入力などに用いられるコントローラ上面に設けられた複数のプッシュボタン1232と、左右の前側面に設けられたプッシュボタン1233R,1233Lと、図で言うところの上下左右の各方向を単独入力するための方向入力キー1234(上方向キー1234U、下方向キー1234D、右方向キー1234R、左方向キー1234L)と、右アナログレバー1236Rと、左アナログレバー1236Lとを備える。
右アナログレバー1236R及び左アナログレバー1236Lは、図で言うところの上下方向と左右方向の2軸方向を同時入力可能な方向入力デバイスである。通常はゲームコントローラ1230を左右の手で把持し、レバーにそれぞれ親指を添えて操作する。レバーを倒すことによって2軸成分を含む任意の方向入力と、レバーの傾倒量に応じた任意操作量を入力することができる。また、何れのアナログレバーも、操作入力していない中立状態からレバーの軸方向に押し込むことでプッシュスイッチとして使用することもできる。
本実施形態では、プッシュボタン1232でプレーヤキャラクタである戦闘機からミサイルの発射、機銃の発射、攻撃目標の切換(選択)などの操作を入力する。また、プッシュボタン1233Rで加速操作、プッシュボタン1233Lで減速操作を入力し、左アナログレバー1236Lの上下入力で機体のピッチアップ/ダウン、左右入力で機体の左右ロール及び左右ヨーを入力して操舵操作する。そして、これらの操作入力に応じた操作入力信号は、ゲーム装置本体1201に送信される。
ゲーム装置本体1201の制御ユニット1210は、ゲームコントローラ1230から受信した検出信号や操作入力信号に基づいてゲーム画像やゲーム音を生成してビデオゲームを実行する。生成されたゲーム画像やゲーム音は、信号ケーブル1209で接続されたビデオモニタ1220(ディスプレイモニタ)に出力される。ビデオモニタ1220には、画像を表示する画像表示素子であるディスプレイ1222と音声を放音するスピーカ1224とが備えられており、プレーヤはディスプレイ1222に映し出されるゲーム画像を見ながら、スピーカ1224から放音されるゲーム音を聞きつつゲームをプレイする。
図2は、本実施形態におけるゲーム画面の一例を示す図である。同図に示すように、ゲーム画面W2には、ゲーム空間画像30が主画像として表示される。ゲーム空間画像30は、各家庭用ゲーム装置1200を操作するプレーヤが操作するプレーヤキャラクタとともに移動制御される仮想カメラで撮影したプレーヤキャラクタから見た或いはプレーヤキャラクタを含むゲーム空間の画像である。そして、プレーヤキャラクタの操縦を補助するための情報として、ゲーム画像上に所謂HUD(Head Up Display)表示として、ウィスキーマーク32、姿勢表示34、高度表示36、速度表示38、方位表示40、残弾数表示42、ダメージ表示44が合成表示される。
また、ゲーム画面W2の左下隅の所定領域には、レーダ画像W3が表示される。レーダ画像W3は、プレーヤキャラクタを中心とした俯瞰視簡略図である。中央にプレーヤキャラクタを表すレーダ表示マーク48が配され、これを中心に前後方向・左右方向を示す機軸線50が表示される。そして、その周囲にプレーヤキャラクタから所定範囲(前述の索敵範囲や攻撃範囲よりも広い範囲)に存在する敵キャラクタを示す表示体として敵レーダ表示マーク(図中の黒塗りマーク)を、プレーヤキャラクタからの相対位置を維持して縮小表示される。
本実施形態におけるコンバットフライトシミュレーションゲームは、従来のそれと同様に、3次元仮想空間に形成されたゲーム世界に、プレーヤが操作するプレーヤキャラクタとしての戦闘機と、コンピュータが自動制御する敵キャラクタとしての複数の戦闘機が配置され、各々ミサイルで相手を攻撃するゲームである。同図の例では、ゲーム空間画面30には、プレーヤキャラクタの前方に存在する敵キャラクタの機影52a,52b,52cが表示されている。
プレーヤキャラクタから所定の索敵範囲に存在し、ゲーム空間画像30に写る敵キャラクタの機影52a,52b,52cには、それらのキャラクタを注目させるための識別子であるコンテナ表示56,57が付属表示される。プレーヤは、プッシュボタン1232の操作でコンテナ表示56,57が付属表示される敵キャラクタ52a,52b,52cの何れか一つを攻撃目標として選択できる。
同図では、中央の機影の敵キャラクタ52bが選択されており、選択された証としてコンテナ表示57は他のコンテナ表示56よりも強調表示され、更に右上には同敵キャラクタの兵器種類を示す情報58が付加表示される。通常、攻撃目標として選択された状態で、更に当該敵キャラクタが所定の攻撃可能範囲に所定時間以上存在すれば、ミサイル攻撃の標的(ミサイルの追尾対象)として記憶される所謂「ロックオン」の状態となる。ロックオン状態となるとコンテナ表示57は、更に特別色で表示されロックオンされたことを示す。このロックオン状態となったことを確認してプレーヤが所定のプッシュボタン1232を操作するとプレーヤキャラクタから飛翔体としてのミサイルが発射される。ミサイルはロックオンした敵キャラクタを追尾する。
ミサイルが発射されると、3次元仮想空間内に新たにミサイルのオブジェクトが配置され、ディスプレイ1222の表示サイクル(描画サイクル)毎にロックオンした敵キャラクタに向かって所定時間追尾飛行するように移動制御される。
より具体的には、例えば図3に示すように、ミサイル2の現在位置Pmt(t=0,1,2,3…;但し発射時点における位置はプレーヤキャラクタ4と同じ位置)から追尾対象であるロックオンした敵キャラクタ6の現在位置Pet(t=0,1,2,3…)に向かうように移動方向が修正される。つまり、標準的なミサイル2の航法制御は、現在位置基準追尾制御方法と呼ぶこともできる。
ミサイル2は、現実のそれと同様に時間当たり(この場合一回の移動制御当り)に進行方向を変えることのできる上限角度(転舵限界角度θm)が定められている。したがって、ミサイルが発射された時点におけるプレーヤキャラクタ4と、敵キャラクタ6との相対位置関係や向きの関係、敵キャラクタ6のその後の機動によってはミサイルが命中しないことが起きる。
例えば、同図の例で言うと、発射後に時間経過した現在位置Pm1,Pm2におけるミサイル2の移動制御では、各時点における敵キャラクタの現在位置Pe1,Pe2を向くようにそれぞれ転舵制御される。同図の例では、現在位置Pm1,Pm2における要求転舵角度θ1,θ2は何れも転舵限界角度θm以下であり、ミサイル2はロックオンした敵キャラクタ6を追尾するように、敵キャラクタ6の現在位置を目標移動位置として、移動制御される。
ところが、さらに時間が経過した時点(t=3)では、ミサイル2の現在位置Pm3は敵キャラクタ6の現在位置Pe3に接近しているものの敵キャラクタ6の軌道はミサイル2の現在の進行方向(線分Pm2からPm3への方向)と大きな角度を成している。ミサイル2の現在位置Pm3における移動制御では、ミサイル2を敵キャラクタ6の現在位置Pe3に向けるための要求転舵角度θ3が求められるが、要求転舵角度θ3が転舵限界角度θmを超過するため、実際に移動制御されるときには転舵限界角度θm分しか転舵されない。よって、転舵量が不足する事態となり、ミサイル2はロックオンした敵キャラクタ6に命中せず横をかすめることになる。そして、発射後所定時間経過すると推進剤を使い切ったと判断され以降は推進できなくなり失効となる(失速して落下することとなる。具体的には、ゲーム空間への配置が中止され、非表示とされる。)。
つまり、ロックオンしてミサイル2を発射すれば、必ず敵キャラクタ6を撃墜できるわけではなく「ミサイルで撃墜するのに適切な相対位置関係で適当なタイミングで発射する」必要がある。コンバットフライトシミュレーションゲームでは、この見極めが初級者プレーヤと上級者プレーヤの戦果の差となる。初級者プレーヤにとってみれば、撃ったのに当らないと不満を感じる原因でもある。
そこで、本実施形態ではこの「ミサイルで撃墜するのに適切な相対位置関係と適切なタイミング」で発射操作入力した場合には、ミサイルの追尾制御方法を別の制御方法に切替る。また、「ミサイルで撃墜するのに適切な相対位置関係と適切なタイミング」をプレーヤに通知することでミサイルの発射操作入力を補助する機能を備える。
図4〜図5は、本実施形態におけるゲーム画面例であって、発射操作入力補助表示を説明するための図である。
図4に示すように、本実施形態では「ミサイルで撃墜するのに適切な相対位置関係」を通知するためにゲーム空間画像30にレティクル8を合成表示する。レティクル8は、ミサイルで撃墜するのに適切なプレーヤキャラクタの機首が向くべき範囲を示す。そして、プレーヤキャラクタの機首(機首方向は、ウィスキーマーク32が示している。)がレティクル8の範囲内に入ったならば「適切なタイミング」と判断され、図5に示すようにゲーム画像30に例えば「SHOOT(撃て)」といったシュートタイミング表示10が表示される。
図6は、本実施形態におけるレティクルの表示方法を説明するための概念図である。同図に示すように、攻撃目標に選択された敵キャラクタ6の進行方向に推定移動距離L2だけ離れた先に未来予測位置12が設定される。推定移動距離L2は、プレーヤキャラクタ4の現在位置Pc0(=Pm0)から敵キャラクタ6の現在位置Pe0に向けてミサイル2を推定速度(=プレーヤキャラクタの現在速度Vp+ミサイルの飛行速度Vm)で直進させた場合に現在位置Pe0に到達するのに要する時間Tm(=L/(Vm+Vp))の間、敵キャラクタ6が敵キャラクタ6の現在の速度Veで直進したと仮定した場合に推定される移動距離である。
そして、本実施形態では未来予測位置12を中心として所定半径のタイミング判定領域14が定義される。図7に示すように、タイミング判定領域14は、プレーヤキャラクタ4の機首方向線16が通過すれば、「ミサイルで撃墜するのに適切な相対位置関係」を満たすと判定される領域である。よって、レティクル8はゲーム画像30における未来予測位置12の位置を中心にタイミング判定領域14の外形を示す所定半径の円(又は判定領域の仮想カメラから見た場合の輪郭線)として表示される(図5参照)。
また、本実施形態では、前述のようにプレーヤがウィスキーマーク32をレティクル8の中に入れるように機首方向を変更するとシュートタイミング表示10が表示される。そして、シュートタイミング表示10が表示されている間にミサイル2の発射操作を入力した場合、このミサイル2がウィスキーマーク32をレティクル8の中には入っていない場合に比べて実際に高い命中率を出すようにより命中精度の高い特別な制御方法で当該ミサイル2の移動を制御する。ミサイル2は別種類のものが自動的に選択発射されるのではなく、自動的に当該ミサイル2に適用される制御方法を標準追尾航法から特別航法に変更する。
尚、本実施形態では、プレーヤキャラクタの戦闘機の機首方向とミサイルの発射方向が同一であるので機首方向線16とシュートタイミング判定領域14との位置関係を判定したが、ミサイルの発射方向が機首方向と異なる場合には、ミサイル発射方向線とシュートタイミング判定領域14との位置関係から、シュートタイミング表示10の表示/非表示を判定すると良い。
図8は、本実施形態における特別な航法によるミサイル制御方法を説明するための概念図である。本実施形態における特別航法はいわゆる「比例航法」に似た航法であり、未来位置予測型追尾制御方法と呼ぶこともできる。具体的には、ミサイル2は、ディスプレイ1222の描画サイクルに応じた制御サイクル毎に移動制御される。この際、ミサイル2は、敵キャラクタ6が現在の速度Veを維持したまま直進したと仮定した場合に次の制御サイクルの時点で存在するであろうと推定される推定予測位置座標に向かうように移動方向が修正される。
同図の例で言うと、ミサイル2の発射時(t=0)では、敵キャラクタ6の現在速度Veで次の制御タイミングの時刻(t=1)まで直進したと仮定して求められた推定予測位置座標Pe1に向かって発射される。
発射後に時間が経過して次の制御タイミング(t=1)における位置Pm1でのミサイル2の制御では、同時点における敵キャラクタ6の現在位置Pe1´から同時点における速度で次の制御タイミングの時刻(t=2)まで移動したと仮定した推定予測位置座標Pe2を求める。そして、この推定予測位置座標Pe2に向けてミサイル2の移動方向の修正が実行される。以下、ミサイル2が敵キャラクタ6に命中するまで、あるいは発射後所定時刻が経過するまで常に追尾対象の敵キャラクタ6の推定予測位置座標を算出し、その推定予測位置座標に向かうように移動方向の修正が行われる。勿論、実際に移動制御されるときは転舵限界角度θm以内の転舵角度でしか転舵されないのは、ミサイルの制御方法の切り替えにかかわらず同様である。
この結果、ミサイル2は常に敵キャラクタ6の先回りをする格好となるので、敵キャラクタ6の軌道が大きく変化しても要求転舵角度θ1〜θ3は、標準追尾航法の場合に比べて小さくなる。よって、要求転舵角度θが転舵限界角度θmを超過するために転舵量が不足して敵キャラクタに当たらないといった事態を抑制し、命中率を高めることができる。
このように、本実施形態では、標的との相対位置や移動方向を考慮して標的の行く先を先回りして狙い撃つ感覚で、プレーヤがレティクル8を参考にして攻撃目標の敵キャラクタ6の行き先にプレーヤキャラクタ4の機首を向けミサイル2を発射すると、「ミサイルで撃墜するのに適切な相対位置関係」でミサイルを撃ったことになり、高い確率で敵キャラクタ6にミサイル2を命中させることができる。
[機能ブロックの説明]
図9は、本実施形態における家庭用ゲーム装置1200の機能構成の一例を示す機能ブロック図である。同図に示すように本実施形態では、操作入力部100と、処理部200と、音出力部350と、画像表示部360と、通信部370と、記憶部500とを備える。
操作入力部100は、プッシュボタンや、レバー、タッチパッド、ダイヤル、キーボード、マウス、各種ポインタ、加速度センサ、傾斜センサなどの入力デバイスやセンサ類によって実現され、プレーヤによって為された各種の操作入力に応じて操作入力信号を処理部200に出力する。図1のゲームコントローラ1230が操作入力部100に該当する。
処理部200は、例えばマイクロプロセッサやASIC(特定用途向け集積回路)、ICメモリなどの電子部品によって実現され、各機能部との間でデータの入出力を行うとともに所定のプログラムやデータ及び操作入力部100からの操作入力信号に基づいて各種の演算処理を実行して、家庭用ゲーム装置1200の動作を制御する。図1では、ゲーム装置本体1201に内蔵された制御ユニット1210が処理部200に該当する。
そして、本実施形態における処理部200は、ゲーム演算部210と、音生成部250と、画像生成部260と、通信制御部270とを備える。
ゲーム演算部210は、ゲームの進行に係る処理を実行する。例えば、3次元仮想空間中にゲーム空間を形成する処理や、ゲーム空間中に配置されたキャラクタ等のオブジェクトの配置制御処理、敵キャラクタ等のNPC(ノンプレーヤキャラクタ)の自動制御処理、ヒット判定処理、物理演算処理、ゲーム結果の判定処理、等が実行対象に含まれる。
より具体的には、本実施形態のゲーム演算部210は、攻撃目標選択制御部212、発射操作入力補助部214、推定予測位置判定部216、ミサイル制御部218を含む。
攻撃目標選択制御部212は、プレーヤキャラクタ4の攻撃目標の選択・登録に係る処理を実行する。具体的には、プレーヤキャラクタ4の前方の所定の索敵範囲内に存在し、且つ仮想カメラの撮影範囲に存在する敵キャラクタ6を抽出し、抽出した敵キャラクタ6の機影52a,52b,52cのゲーム空間画像の画像座標系における位置座標を算出し、画像生成部260に算出した位置座標にコンテナ表示56をゲーム空間画像30に合成表示させる。そして、所定のプッシュボタン1232が入力される都度、抽出した敵キャラクタ6の中から攻撃目標となるキャラクタを切り替えて選択し、選択したキャラクタのキャラクタ識別情報を、記憶部500の攻撃目標識別情報522として一時的に記憶する。また、攻撃目標として選択されている敵キャラクタが更にミサイル2の射程範囲に一定時間以上存在する場合には、ロックオンフラグ526に「1」を格納してフラグを立てる。
発射操作入力補助部214は、シュートタイミング表示10の表示に係る処理を実行する。具体的には、攻撃目標に選択されている敵キャラクタ6の現在位置座標と現在速度とから当該敵キャラクタの未来予測位置12を算出し、タイミング半径領域14を設定する。そして、画像生成部260に、このタイミング半径領域14に基づくレティクル8を、ゲーム空間画像30に合成表示させる。また、プレーヤキャラクタ4の機首方向線16がこのタイミング変形領域14を通過するか否かを判定する。そして、通過すると判定した場合には、シュートタイミングフラグ520のフラグを立て、画像生成部260に、ゲーム空間画像30へシュートタイミング表示10を合成表示させる。
推定予測位置判定部216は、特別な航法に基づいてミサイルの移動を制御する際、当該ミサイルの追尾対象とされた敵キャラクタ6の推定予測位置を推定する。
ミサイル制御部218は、ミサイルの管理に係る処理を実行する。具体的には、攻撃目標識別情報522に何れかの敵キャラクタの識別情報が格納されていて、且つロックオンフラグ526が立っている場合で、操作入力部100から所定のミサイル発射操作の操作入力を検知した場合に、3次元仮想空間に新たにミサイル2のオブジェクトを配置するとともに、当該新たなミサイルをミサイル管理情報518に登録する。そして、ミサイル管理情報518に登録されているミサイル2の有効/失効を判定し、有効判定されたミサイル2の移動を制御する。また、ミサイル発射操作入力時点において、追尾目標として選択されている敵キャラクタとプレーヤキャラクタ4との少なくとも相対的な位置及び向きに基づき、命中精度の異なる複数の追尾制御方法の中から何れか一つの追尾制御方法を選択し、発射後のミサイルの制御方法(航法)として設定する。そして、一旦発射されたミサイルを、設定された制御方法で移動制御する処理を実行する。
音生成部250は、例えばデジタルシグナルプロセッサ(DSP)などのプロセッサやその制御プログラムなどの公知技術によって実現され、ゲーム演算部210による処理結果に基づいてゲームに係る効果音やBGM、各種操作音の音信号を生成し、音出力部350に出力する。
音出力部350は、音生成部250から入力される音信号に基づいて効果音やBGM等を音出力する装置によって実現される。図1ではビデオモニタ1220のスピーカ1224がこれに該当する。
画像生成部260は、例えば、デジタルシグナルプロセッサ(DSP)などのプロセッサ、その制御プログラム、フレームバッファ等の描画フレーム用ICメモリ等の公知技術によって実現される。そして、画像生成部260は、ゲーム演算部210による処理結果に基づいて1フレーム時間(1/60秒)で1枚のゲーム画像30を生成するとともにレーダ画像W3を生成し、ゲーム画像30にHUD表示(図2参照)やレーダ画像W3、レティクル8等を合成表示して最終的なゲーム画面W2を生成し、ゲーム画像の画像信号を画像表示部360に出力させる。
画像表示部360は、画像生成部260から入力される画像信号に基づいて各種ゲーム画像W2を表示する。例えば、フラットパネルディスプレイ、ブラウン管(CRT)、プロジェクター、ヘッドマウントディスプレイといった画像表示装置によって実現できる。図1ではビデオモニタ1220の画像表示部であるディスプレイ1222が該当する。
通信制御部270は、データ通信に係るデータ処理を実行し、通信部370を介して他の家庭用ゲーム装置との間でデータのやりとりを実現する。
通信部370は、通信回線2と接続して通信を実現する。例えば、無線通信機、モデム、TA(ターミナルアダプタ)、有線用の通信ケーブルのジャックや制御回路等によって実現され、図1では通信装置1212がこれに該当する。
記憶部500は、予め定義されたプログラムやデータを記憶するとともに、処理部200の作業領域として用いられて処理部200が各種プログラムに従って実行した演算結果や操作部100から入力される入力データ等を一時的に記憶する。この機能は、例えばRAMやROMなどのICメモリ、ハードディスク等の磁気ディスク、CD−ROMやDVDなどの光学ディスクなどによって実現される。
本実施形態における記憶部500は、処理部200にゲーム装置1200を統合的に制御させるための諸機能を実現するためのシステムプログラム501や、ゲームを実行させるために必要なゲームプログラム502並びに各種データ等を記憶する。処理部200がゲームプログラム502を読み出して実行することによって、処理部200にゲーム演算部210としての機能を実現させることができる。
ゲームプログラム502は、敵キャラクタ(NPC:ノンプレーヤキャラクタ)を自動制御するためのNPC制御プログラム504を含む。NPC制御プログラム504は、所謂「AI」とも呼ばれる公知の技術を用いて実現できる。また、ゲームプログラム502は、ミサイル2の移動制御を実現させるための標準追尾航法制御プログラム506及び特別航法制御プログラム508を含む。前者は、図3で説明した標準状態の航法に相当する標準追尾航法によるミサイルの移動制御を実現するためのプログラムであり、後者は図8で説明した特別な航法による移動制御を実現するためのプログラムである。
また、記憶部500には、予め用意されるデータとしてゲーム空間設定データ510、兵器初期設定データ512、敵キャラクタ設定データ514が記憶されている。
更にゲームの進行に伴って生成され、随時書き換えられるデータとして、キャラクタステータスデータ516、ミサイル管理情報518が記憶されるほか、ゲームの進行に係る処理の実行に必要となる情報として、例えばシュートタイミングフラグ520や攻撃目標識別情報522、攻撃目標未来予測位置座標524、ロックオンフラグ526、仮想カメラを制御するための画角・視線方向・姿勢情報などのデータ、各種制限時間のカウントデータなどが適宜記憶される。
ゲーム空間設定データ510には、3次元仮想空間にゲーム空間を形成するための各種データが格納されている。例えば、空や地表、建物などの配置物に関するモデルデータやテクスチャデータ及びモーションデータが格納されている。
兵器初期設定データ512には、ミサイル2やプレーヤキャラクタ4、敵キャラクタ6などゲームに登場する兵器に関する初期設定データが兵器の種類毎に格納されている。具体的には、兵器の表示用モデル、テクスチャ、最高速度や最高加速度、耐久力(ヒットポイント)、兵装の種類や搭載数など当該兵器の能力パラメータ値の初期値が格納されている。
敵キャラクタ設定データ514は、敵キャラクタ6を定義するデータが格納されている。例えば、敵キャラクタ6の識別情報と対応づけて兵器種類、初期配置位置などが格納されている。
キャラクタステータスデータ516は、ゲーム空間に配置されたプレーヤキャラクタや敵キャラクタの現在の位置や状態を示す各種パラメータ値を格納する。例えば、図10に示すように、キャラクタ識別情報516aと対応づけて、現在位置座標516b、現在の機体の姿勢角度516c、現在の速度516d、最大速度や残弾数、現在のヒットポイントに相当する耐久値といった能力パラメータ値516eといった情報を格納する。能力パラメータ値516eの耐久値は攻撃を受ける都度減算され、「0」になると撃墜されたことを示す。勿論、これらのパラメータに限るものでは無く、各キャラクタに係る情報を適宜対応付けて格納することができる。
ミサイル管理情報518は、飛翔中のミサイルに関する情報を格納する。例えば、図11に示すように、ミサイル識別情報518aと対応づけて、当該ミサイルの移動制御に適用される航法の種類を示す情報を格納する航法種類518bと、現在位置座標518cと、姿勢情報518dと、現在の速度518eと、発射された時点のシステム時刻を格納する発射時刻518fと、当該ミサイルがロックオンした敵キャラクタの識別情報を格納する追尾対象識別情報518gが格納される。
ミサイル制御部218は、ミサイルの発射操作が入力されたことを検知して新たなミサイルを追加登録する一方で、現在のシステム時刻が発射時刻518fから所定時間(例えば、15秒)以上経過していたならば、当該ミサイルの推進剤は消尽されたと判断して、登録を抹消しミサイルを失効させる。また、ミサイルが敵キャラクタに命中したと判定された場合にも当該ミサイルの登録を抹消する。
攻撃目標識別情報522には、プレーヤキャラクタ4の前方所定範囲に存在する敵キャラクタの中からプレーヤが選択した敵キャラクタのキャラクタ識別情報が格納される。
そして、攻撃目標未来予測位置座標524には、攻撃目標として選択された敵キャラクタの未来予測位置12の座標値が格納される。
[処理の流れの説明]
次に、本実施形態における処理の流れについて説明する。ここで説明される処理は、処理部200がゲームプログラム502を実行することによって実現され、所定のゲーム終了条件を満たすまで繰り返し実行される。尚、敵キャラクタの自動制御については適宜公知の技術を適用することができるので、ここでの詳細な説明は省略する。
図12は、本実施形態におけるゲーム進行に係る主たる処理の流れについて説明するためのフローチャートである。同図に示すように、先ずゲーム演算部210は、ゲーム空間設定データ510、兵器初期設定データ512並びに敵キャラクタ設定データ514を参照して、3次元仮想空間内にゲーム空間を形成し、プレーヤキャラクタ及び敵キャラクタを所定の初期位置に配置する(ステップS2)。
所定のゲームスタート操作が入力されたならばゲームを開始し(ステップS4のYES)、NPC制御プログラム504を実行して、プレーヤキャラクタを索敵・攻撃するように各敵キャラクタを動作制御する(ステップS6)。動作制御に伴って変化した現在位置座標や姿勢角度、速度などの各種パラメータは、キャラクタステータスデータ516に格納する。
次に、操作入力部100からプレーヤキャラクタの加速や減速、操舵といった操縦操作が入力されたことを検知したならば(ステップS8のYES)、ゲーム演算部210はプレーヤキャラクタを機体の姿勢や移動方向、速度を変化させるなどして移動制御する(ステップS10)。これに伴って変化したプレーヤキャラクタの現在位置座標や姿勢、速度の値は、キャラクタステータスデータ516に格納される。
更に、操作入力部100から攻撃目標の選択操作が入力されたことを検知したならば(ステップS12のYES)、ゲーム演算部210は公知のコンバットフライシミュレーションゲームと同様に、敵キャラクタの攻撃目標設定処理を行う(ステップS14)。
具体的には、例えばゲーム演算部210が、プレーヤキャラクタ4の前方索敵範囲に存在する敵キャラクタを抽出し、画像生成部260に抽出された敵キャラクタの機影キャラクタを注目させるための識別子であるコンテナ表示56,67(図3参考)を付属表示させる。そして、ゲーム演算部210は、抽出した敵キャラクタの何れか一つをプレーヤの操作に従って攻撃目標として切換選択して、選択した敵キャラクタの識別情報を攻撃目標識別情報522に格納する。また、攻撃目標識別情報522に同じキャラクタ識別情報が格納されている時間をカウントする。そして、攻撃目標に選択されている敵キャラクタが所定の攻撃可能範囲に所定時間以上存在している場合には、ミサイルの追尾対象として記憶された、つまり「ロックオン」されたと判断して、ロックオンフラグ526を立てる処理をする。攻撃目標識別情報522を参照することで、プレーヤキャラクタ4が何れの敵キャラクタを攻撃目標として選択しているかを知ることができる。そして、ロックオンフラグ526を参照することで当該攻撃目標の敵キャラクタがミサイルの標的とされているかを判断できる。
次に、ゲーム演算部210は、発射操作入力補助処理を実行する(ステップS16)。
図13は、本実施形態における発射操作入力補助処理の流れを説明するためのフローチャートである。同図に示すように、先ずキャラクタステータスデータ516を参照して、プレーヤキャラクタ4の現在位置座標と追尾対象とされた敵キャラクタの現在位置座標との相対距離L1を算出し(ステップS50)、相対距離L1に基づいて推定移動距離L2を求める(ステップS52)。具体的には、相対距離L1を現在のプレーヤキャラクタ4の速度Vpとミサイル2の設定速度Vmの和で除算して、ミサイル2が敵キャラクタの現在位置座標に到達するための所要時間Tmを算出する。そして、所要時間Tmに当該敵キャラクタの現在速度Veを乗算して、推定移動距離L2を求める(図6参照)。
そして、推定移動距離L2を算出したならば、ゲーム演算部210は追尾対象とされた敵キャラクタの移動方向(ここでは機首方向)に推定移動距離L2だけ離れた位置に未来予測位置12を設定する(ステップS54)。設定された未来予測位置12の座標値は、攻撃目標未来予測位置座標524に格納される。
次いで、ステップS54で設定した未来予測位置12が仮想カメラの撮影範囲内に含まれるか否かを判定し(ステップS56)、撮影範囲内に含まれないと判定した場合には(ステップS56のNO)、ステップS52で求めた推定移動距離L2を所定の割合だけ小さくして未来予測位置12を補正する(ステップS58)。
前述のように、レティクル8は未来予測位置12の位置に基づいてゲーム画面W2内に表示される。しかし、ステップS52で求めた未来予測位置12の位置を補正することで、仮想カメラの撮影範囲内に含まる確率を高める。これによって、特別な航法が適用されるミサイルが発射できる機会をより多くして、初心者プレーヤでも戦果をあげられるように工夫されている。
尚、同様のことは未来予測位置12がゲーム画面W2に入っているがゲーム画面W2の周縁部に位置している場合に、レティクル8を画面中央に寄せるために適用することができる。具体的には、ステップS56の代わり、又はステップS58の後に、未来予測位置12のゲーム画像座標系における位置座標を算出し、算出した位置座標がゲーム画面の外縁から所定範囲の周縁部に位置するか否かを判定する。そして、肯定判定の場合、ステップS58と同様の処理をすれば良い。
次にゲーム演算部210は、未来予測位置12を中心に球形のタイミング判定領域14を設定し(ステップS60)、プレーヤキャラクタ4の機首方向線16(図7参照)がこのタイミング判定領域14を通るか否かを判定する(ステップS62)。そして、機首方向線がこのタイミング判定領域14を通ると判定した場合には(ステップS62のYES)、シュートタイミングフラグ520のフラグを立て(ステップS64)、発射操作入力補助処理を終了する。
発射操作入力補助処理を終了したならば、図12のフローに戻り、ゲーム演算部210は次にミサイル管理処理を実行する(ステップS18)。
図14は、本実施形態におけるミサイル管理処理の流れを説明するためのフローチャートである。同図に示すように、ミサイル管理処理では先ずゲーム演算部210は、操作入力部100から所定のミサイル発射操作の入力が有ったか否かを判定する(ステップS100)。本実施形態では、所定のプッシュボタン1232が押下されるとミサイルの発射操作の入力が有ったと判定する。
発射操作の入力が有ったと判定した場合(ステップS100のYES)、ゲーム空間に新たなミサイルを新規配置し、ミサイル管理情報518に登録する(ステップS102)。具体的には、プレーヤキャラクタ4の翼下、或いは機体胴体部分下に配置する。
そして、ゲーム演算部210はシュートタイミングフラグ520を参照し、フラグが立っていれば(ステップS104のYES)、ミサイル管理情報518の新規配置したミサイルの航法種類518bに、特別な航法制御を適用することを示す情報を格納する(ステップS106)。反対に、フラグが立っていなければ(ステップS104のNO)、航法種類518bに標準的な航法制御を適用することを示す情報を格納する(ステップS108)。図11の例では、「ミサイル2」が前者の例に相当し、「ミサイル1」が後者の例に相当する。
次にゲーム演算部210は、ミサイル管理情報518の新規配置したミサイルの発射時刻518fに現在のシステム時刻を格納し、追尾対象識別情報518gに攻撃目標識別情報522に格納されているキャラクタ識別情報を格納する(ステップS110)。
次に、ゲーム演算部210は、発射時刻518fから所定時間経過したミサイルの削除処理を行う(ステップS112)。具体的には、ミサイル管理情報518の発射時刻518fを参照し、登録されているミサイル毎に現在のシステム時刻がそれぞれの発射時刻518fから所定時間(例えば、15秒)経過しているか否かを判定し、経過しているミサイルの登録を抹消するともに、同ミサイルのオブジェクトをゲーム空間から消去する。
次に、ゲーム演算部210は、ミサイル管理情報518を参照して現在飛翔中のミサイルを抽出し(ステップS114)、抽出したミサイルそれぞれについてループAの処理を実行する(ステップS116〜S130)。
ループAの処理では、ゲーム演算部210は先ず処理対象のミサイルの航法種類518bを参照し、設定されている航法種類が特別な航法、本実施形態では特別航法に設定されているか否かを判定する(ステップS118)。特別航法が適用されている場合(ステップS118のYES)、ゲーム演算部210は、追尾対象識別情報518gに格納されているキャラクタ識別情報に対応する敵キャラクタの推定予測位置を求める(ステップS120)。
具体的には、追尾対象識別情報518gに設定されている敵キャラクタの現在位置座標516bと現在の速度516dをキャラクタステータスデータ516から参照し、そのままの速度で直進したと仮定した場合に所定時間後に到達が予測される位置を算出し、これを推定予測位置とする。
尚、ここで言う所定時間は、本実施形態ではディスプレイ1222の描画サイクルに相当する時間(例えば、1/60秒)とするが、この所定時間を可変する設定としても良い。例えば、処理対象ミサイルの現在位置座標518cと追尾対象識別情報518gに設定されている敵キャラクタの現在位置座標516bとの相対距離L3に応じて「(1/60秒)×k・L3(但し、1>k>0)」とし、相対距離L3が長い程、所定時間を長くするとしても良い。
追尾対象の敵キャラクタの推定予測位置が求められたならば、次にゲーム演算部210は、求めた推定予測位置に向かうよう、当該推定予測位置を新たな移動目標位置に設定して、処理対象のミサイルの姿勢・移動方向を変更し(ステップS122)、同ミサイルの移動制御を実行して(ステップS124)ループAを終了する。
ステップS118において、処理対象のミサイルの航法種類518bが「標準追尾」に設定されている場合には(ステップS118のNO)、処理対象のミサイルをロックオン対象の敵キャラクタの現在位置を新たな移動目標位置に設定して、該移動目標位置に向かうように姿勢・移動方向を変更し(ステップS126)、同ミサイルの移動制御を実行して(ステップS128)、ループAを終了する。
このように、ループAの処理によって、発射されてからまだ敵キャラクタに命中せずに飛行しているミサイルを、発射時におけるプレーヤキャラクタ4と追尾対象の敵キャラクタとの少なくとも相対的な位置及び向きに基づいて選択された追尾制御方法で移動制御することができる。
さて、ステップS114で抽出した全てのミサイルについてループAの処理を実行したならばミサイル管理処理を終了して図12のフローに戻り、次にゲーム演算部210は、画像生成部60に、プレーヤキャラクタに随伴するように移動制御している仮想カメラから見たゲーム空間画像30を生成させ(ステップS20)、生成したゲーム空間画像30にHUD表示やレーダ画像W3、コンテナ表示56,57を合成させる(ステップS22)。
更に、攻撃目標識別情報522と未来予測位置座標525を参照し、攻撃目標に設定されている敵キャラクタの未来予測位置12に基づいてレティクル8を合成させる(ステップS24)。より具体的には、ゲーム演算部210は未来予測位置12のゲーム空間画像座標系における位置座標を算出し、画像生成部260に算出した位置座標を中心として所定の大きさ(ここでは、タイミング判定領域14をゲーム空間画像座標系に投影した場合の大きさ)の円をレティクル8として描画させる。
本実施形態では、タイミング判定領域14の大きさを一定としているため、未来予測位置12のゲーム空間画像座標系における位置座標からプレーヤキャラクタ4の現在位置までの距離が遠いほど、レティクル8が小さく表示されることとなる。タイミング判定領域14の輪郭線を表示することに相当するからである。この場合、ロックオンした敵キャラクタが遠くに位置するほどレティクル8の表示サイズが小さくなり狙い撃つ感じとなり、初心者プレーヤにとっては特別な航法で制御されるミサイルが発射される機会を得にくくなる。しかしその反面、上級者プレーヤにとってみれば、ミサイル2の命中率を上げるためには敵キャラクタ6の出来るだけ真後ろ近距離からミサイル2を撃つといった従来のコンバットフライトシミュレーションゲームでは常套とされた戦法以外での戦い方で空中戦を楽しむ事ができるようになるといったメリットが得られる。
従って、タイミング判定領域14の大きさを一定とせず、可変とするとしてもよい。例えば、未来予測位置12のゲーム空間画像座標系における位置座標からプレーヤキャラクタ4の現在位置までの距離が遠いほどタイミング判定領域14の大きさを大きくして、未来予測位置12までの距離が遠い場合であっても、レティクル8があまり小さく表示されないようにしてもよい。また、更には、表示されるレティクル8自体の大きさが一定となるように、逆算してタイミング判定領域14の大きさを可変するとしてもよい。
次に、ゲーム演算部210は、シュートタイミングフラグ520を参照し、フラグが立っている場合には(ステップS26のYES)、画像生成部260にゲーム空間画像30にシュートタイミング表示10を合成させる(ステップS28)。フラグが立っていない場合には(ステップS26のNO)、シュートタイミング表示10を止めさせる(ステップS30)。
ステップS20〜S30までの処理によってゲーム画像W2が出来上がったことになるので、画像生成部260はゲーム画像W2を画像表示部360に表示出力させる(ステップS32)。
続いて、ゲーム演算部210が、ゲーム結果の判定及び判定したゲーム結果に伴う演出処理等を行う(ステップS34)。例えば、ミサイルのヒット判定処理や、ミサイルがヒットしたキャラクタの耐久値の減算処理、減算された耐久値が「0」になったキャラクタが撃墜する様子の表示処理といった処理が実行される。
そしてゲーム演算部210は、判定したゲーム結果が所定のゲーム終了条件を満たすか否かを判定する(ステップS36)。本実施形態では、プレーヤキャラクタが撃墜された場合にはゲームオーバ、敵キャラクタを全て撃墜した場合にはゲームクリアの各ゲーム終了条件を満たすと判定する。
ゲーム終了条件を満たさないと判定した場合には(ステップS36のNO)、ステップS6に戻る。反対に、ゲーム終了条件を満たすと判定した場合には(ステップS36のYES)、それぞれの終了形態に応じたエンディング画面の表示といったゲーム終了処理を実行し(ステップS38)、一連の処理を終了する。
以上の一連の処理によって、図4や図5で示したように、プレーヤが選択した攻撃目標の敵キャラクタ52bの未来予測位置にレティクル8を表示させることができる。そして、プレーヤキャラクタ4の機首がレティクル8の方向を向く状態に操縦操作してミサイルの発射操作を入力すると、標準よりも命中率の高い特別航法で移動制御されるミサイルが発射される。このミサイルは標準状態のミサイルに比べて、命中率が高い制御がなされる。したがって、初級者プレーヤであっても、レティクル8の表示を参考にしてあたかも標的の行先を先読みして攻撃するかのように、敵キャラクタをより確実に撃墜できるようになる。
[ハードウェア構成]
次に、本実施形態におけるハードウェア構成例について説明する。
図15は、本実施形態における家庭用ゲーム装置1200を実現するためのハードウェア構成例を示す図である。家庭用ゲーム装置1200は、CPU1000、ROM1002、RAM1004、情報記憶媒体1006、画像生成IC1008、音生成IC1010、I/Oポート1012,1014がシステムバス1016により相互にデータ入出力可能に接続されている。I/Oポート1012にはコントロール装置1022が、I/Oポート1014には通信装置1024が、それぞれ接続されている。
CPU1000は、情報記憶媒体1006に格納されるプログラム、ROM1002に格納されるシステムプログラムや、コントロール装置1022によって入力される信号等に従って、装置全体の制御や各種データ処理を行う。
RAM1004は、CPU1000の作業領域等として用いられる記憶手段であり、情報記憶媒体1006やROM1002内の所与の内容、CPU1000の演算結果等が格納される。
情報記憶媒体1006は、プログラム、画像データ、音データ、プレーデータ等が主に格納されるものであり、情報記憶媒体として、ICメモリやハードディスク、CD−ROM、DVD、ICカード、磁気ディスク、光ディスク等が用いられる。
尚、ROM1002、RAM1004及び情報記憶媒体1006は、図9の記憶部500に相当する。
また、この装置に設けられている画像生成IC1008と音生成IC1010により、音や画像の好適な出力が行えるようになっている。
画像生成IC1008は、CPU1000の命令によって、ROM1002、RAM1004、情報記憶媒体1006等から送られる情報に基づいて画素情報を生成する集積回路であり、生成される画像信号は、表示装置1018に出力される。表示装置1018は、CRTやLCD、ELD、プラズマディスプレイ、或いはプロジェクター等により実現され、図9の画像表示部360に相当する。
また、音生成IC1010は、CPU1000の命令によって、情報記憶媒体1006やROM1002に記憶される情報、RAM1004に格納される音データに応じた音信号を生成する集積回路であり、生成される音信号はスピーカ1020によって出力される。スピーカ1020は、図9の音出力部350に相当するものである。
コントロール装置1022は、プレーヤがゲームに係る操作を入力するための装置であり、その機能は、レバー、ボタン、タッチパネル、ダイヤル、ポインティングデバイス等のハードウェアにより実現される。尚、このコントロール装置1022は、図9の操作入力部100に相当するものである。
通信装置1024は、装置内部で利用される情報を外部とやりとりするものであり、所与の情報を他の装置と送受すること等に利用される。尚、この通信装置1024は、図9の通信部370に相当するものである。
そして、ゲーム処理等の上述した処理は、図9のゲームプログラム502等を格納した情報記憶媒体1006と、これらプログラムに従って動作するCPU1000、画像生成IC1008、音生成IC1010等によって実現される。CPU1000、画像生成IC1008、及び音生成IC1010は、図9の処理部200に相当するものであり、主にCPU1000がゲーム演算部210、画像生成IC1008が画像生成部260に、音生成IC1010が音生成部250にそれぞれ相当する。
尚、画像生成IC1008、音生成IC1010等で行われる処理は、CPU1000或いは汎用のDSP等によりソフトウェア的に行ってもよい。この場合には、CPU1000が、図9の処理部200に相当する。
以上、本実施形態によれば、複数のプレーヤがそれぞれ家庭用ゲーム装置1200〜1200Cを使用して、複数のプレーヤが同時に同じ戦場で空中戦をするオンラインゲームを実行することができる。
そして、ゲーム中に他のプレーヤから支援要請が有った場合には、レーダ画像W3に支援要請した味方キャラクタと、同支援要請において攻撃目標とされた敵キャラクタとを特別なレーダ表示マークで表示することができる。したがって、複数の味方プレーヤが参加する対戦型のオンラインゲームにおいて、プレーヤは味方からの支援要請により速やかに応じることができるようになる。
〔変形例〕
以上、本発明を適用した実施形態について説明したが、本発明の適用形態がこれに限定されるものではない。
例えば、家庭用ゲーム装置1200を用いる構成を例に挙げたが、業務用のゲーム装置やパソコン、携帯型ゲーム装置などを代わりに用いることとしても良い。
また、上記実施形態では、ミサイルの特別な航法制御として比例航法に似た特別航法を用いているが、その他の航法であっても、標準状態の航法に比べて命中精度が高くなる航法であれば適宜選択することができる。
また、レティクル8を常時表示する形態としたが、逆に非表示としても良いのはもちろんである。ゲーム中に、所定の操作入力によって表示/非表示を切り替え可能にするとより好適である。
また、上述した実施形態においては、発射するミサイルに適用する航法種類として特別航法を適用するか否かを、タイミング判定領域14に、プレーヤキャラクタ4の機首方向線16(より具体的にはミサイルの発射方向)が通過するか否かでもって判定することとした。これを次のようにしてもよい。すなわち、未来予測位置12を算出した後、ゲーム空間画像30中の未来予測位置12に対応する位置を中心として、所定半径のレティクルを表示する。そして、この表示されたレティクル内にウィスキーマーク32が位置した場合にシュートタイミングフラグを立たせてシュートタイミング表示10を表示させるとともに、この時に発射操作がなされた場合には、発射するミサイルに特別航法を適用して移動制御する。
この制御によれば、より簡易な演算で、特別航法を適用するか否かを判定できる。また、この制御を行う際、表示されるレティクルの半径を次のようにしてもよい。すなわち、例えば、算出された未来予測位置12のゲーム空間画像座標系における位置座標からプレーヤキャラクタ4の現在位置までの距離が遠いほど、半径を小さくするといった方法である。
また、上記実施形態では、ミサイルの航法制御方法を切り替えることとしたが、航法制御方法の切り替えに伴って、ミサイルに設定されているパラメータを併せて切り替え・変更することとしてもよい。具体的には、ミサイルの攻撃力や、移動速度、転舵限界角度といったパラメータを変更することとしてよい。勿論、これらのパラメータのうちの1つのみを変更するとしてもよい。例えば、特別航法の場合には、転舵限界角度θmを1.2倍に変更し、敵キャラクタへの命中確度を一層高めることとしてもよい。
家庭用ゲーム装置の構成例を示す構成図。 ゲーム画面例を示す図。 標準の追尾航法によるミサイルの移動制御について説明する概念図。 レティクルが表示されたゲーム画面例を示す図。 シュートタイミング表示がされたゲーム画面例を示す図。 レティクルの表示方法を説明するための概念図。 シュートタイミング表示される状態におけるプレーヤキャラクタと敵キャラクタの相対位置関係及び向きの関係を示す概念図。 特別な航法によるミサイルの移動制御について説明する概念図。 家庭用ゲーム装置の機能構成の一例を示す機能ブロック図。 キャラクタステータスデータの構成例を示すデータ構成図。 ミサイル管理情報の構成例を示すデータ構成図。 ゲーム進行に係る主たる処理の流れについて説明するためのフローチャート。 発射操作入力補助処理の流れを説明するためのフローチャート。 ミサイル管理処理の流れを説明するためのフローチャート。 家庭用ゲーム装置を実現するためのハードウェア構成例を示す図。
符号の説明
2 ミサイル
4 プレーヤキャラクタ
6 敵キャラクタ
8 レティクル
10 シュートタイミング表示
12 未来予測位置
14 シュートタイミング判定領域
16 機首方向線
100 操作入力部
200 処理部
210 ゲーム演算部
212 攻撃目標選択制御部
214 発射操作入力補助部
216 推定予測位置判定部
218 ミサイル制御部
260 画像生成部
270 通信制御部
500 記憶部
502 ゲームプログラム
506 標準追尾航法制御プログラム
508 特別航法制御プログラム
516 キャラクタステータスデータ
518 ミサイル管理情報
522 攻撃目標識別情報
524 攻撃目標未来予測位置座標
W2 ゲーム画像
W3 レーダ画像

Claims (10)

  1. コンピュータに、キャラクタの仮想空間中の移動制御及び所与の仮想カメラに基づく前記ゲーム空間の画像生成を行わせて所定のゲームを実行させるためのプログラムであって、
    プレーヤの操作入力に基づき、追尾対象キャラクタを追尾して飛翔する飛翔体を発射可能なプレーヤキャラクタの移動制御を行うプレーヤキャラクタ移動制御手段、
    前記追尾対象キャラクタの移動制御を行う追尾対象キャラクタ移動制御手段、
    現在の前記プレーヤキャラクタと前記追尾対象キャラクタとの少なくとも相対的な位置及び向きに基づき、複数の追尾制御方法の中から追尾制御方法を選択する追尾制御方法選択手段、
    プレーヤの発射操作入力を検出する検出手段、
    前記検出に応じて前記飛翔体を発射し、当該検出の際に前記追尾制御方法選択手段により選択された追尾制御方法により当該飛翔体の飛翔を制御する飛翔制御手段、
    として前記コンピュータを機能させるためのプログラム。
  2. 請求項1に記載のプログラムであって、
    前記複数の追尾制御方法には、少なくとも未来位置予測型追尾制御方法が含まれ、
    前記飛翔制御手段が、前記追尾制御方法選択手段により未来位置予測型追尾制御方法が選択された場合に、前記追尾対象キャラクタの所定時間後の未来位置を予測演算し、該未来位置を前記飛翔体の移動目標位置として前記飛翔体を移動させる処理を繰り返し行って前記飛翔体の飛翔を制御するように前記コンピュータを機能させるためのプログラム。
  3. 請求項2に記載のプログラムであって、
    前記追尾制御方法選択手段が、
    前記追尾対象キャラクタの所定の判定基準時間後の未来位置である判定基準未来位置を予測演算する判定基準未来位置予測演算手段と、
    前記予測演算された判定基準未来位置が、前記プレーヤキャラクタの向き又は前記飛翔体の発射方向の延長方向に対して所定の近接条件を満たす位置にあることを検出する方向適合検出手段と、
    を有し、前記方向適合検出手段による検出がなされた場合に前記未来位置予測型追尾制御方法を選択する、
    ように前記コンピュータを機能させるためのプログラム。
  4. 請求項3に記載のプログラムであって、
    前記判定基準未来位置予測演算手段が、前記プレーヤキャラクタと前記追尾対象キャラクタとの距離に応じて前記所定の判定基準時間を可変するように前記コンピュータを機能させるためのプログラム。
  5. 請求項3又は4に記載のプログラムであって、
    前記予測演算された判定基準未来位置が、前記仮想カメラの撮影範囲外に位置する場合に撮影範囲内に補正する、又は、当該撮影範囲の周縁部に位置する場合に中央部位置に補正する、ように前記コンピュータを機能させるためのプログラム。
  6. 請求項3〜5の何れか一項に記載のプログラムであって、
    前記方向適合検出手段による検出がなされている際に、該検出がなされている旨を所定の報知方法で報知する報知制御手段として前記コンピュータを機能させるためのプログラム。
  7. 請求項3〜6の何れか一項に記載のプログラムであって、
    前記判定基準未来位置を中心とし、前記所定の近接条件を満たす範囲を、前記ゲーム空間の画像中に表示する判定範囲表示制御手段として前記コンピュータを機能させるためのプログラム。
  8. 請求項2〜7の何れか一項に記載のプログラムであって、
    前記複数の追尾制御方法には、少なくとも現在位置基準追尾制御方法が含まれ、
    前記飛翔制御手段が、前記追尾制御方法選択手段により現在位置基準追尾制御方法が選択された場合に、前記追尾対象キャラクタ現在位置を前記飛翔体の移動目標位置として前記飛翔体を移動させる処理を繰り返し行った前記飛翔体の飛翔を制御するように前記コンピュータを機能させるためのプログラム。
  9. 請求項1〜8の何れか一項に記載のプログラムを記憶したコンピュータ読取可能な情報記憶媒体。
  10. キャラクタの仮想空間中の移動制御及び所与の仮想カメラに基づく前記ゲーム空間の画像生成を行って所定のゲームを実行するゲーム装置であって、
    プレーヤの操作入力に基づき、追尾対象キャラクタを追尾して飛翔する飛翔体を発射可能なプレーヤキャラクタの移動制御を行うプレーヤキャラクタ移動制御手段と、
    前記追尾対象キャラクタの移動制御を行う追尾対象キャラクタ移動制御手段と、
    現在の前記プレーヤキャラクタと前記追尾対象キャラクタとの少なくとも相対的な位置及び向きに基づき、複数の追尾制御方法の中から追尾制御方法を選択する追尾制御方法選択手段と、
    プレーヤの発射操作入力を検出する検出手段と、
    前記検出に応じて前記飛翔体を発射し、当該検出の際に前記追尾制御方法選択手段により選択された追尾制御方法により当該飛翔体の飛翔を制御する飛翔制御手段と、
    を備えたゲーム装置。
JP2007075142A 2007-03-22 2007-03-22 プログラム、情報記憶媒体及びゲーム装置 Active JP5106894B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007075142A JP5106894B2 (ja) 2007-03-22 2007-03-22 プログラム、情報記憶媒体及びゲーム装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007075142A JP5106894B2 (ja) 2007-03-22 2007-03-22 プログラム、情報記憶媒体及びゲーム装置

Publications (2)

Publication Number Publication Date
JP2008229159A JP2008229159A (ja) 2008-10-02
JP5106894B2 true JP5106894B2 (ja) 2012-12-26

Family

ID=39902663

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007075142A Active JP5106894B2 (ja) 2007-03-22 2007-03-22 プログラム、情報記憶媒体及びゲーム装置

Country Status (1)

Country Link
JP (1) JP5106894B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110465087B (zh) * 2019-08-23 2020-12-01 腾讯科技(深圳)有限公司 虚拟物品的控制方法、装置、终端及存储介质
CN112957737B (zh) * 2021-02-25 2024-06-25 网易(杭州)网络有限公司 一种游戏中信息处理方法、装置、电子设备及存储介质
CN113546422A (zh) * 2021-07-30 2021-10-26 网易(杭州)网络有限公司 虚拟资源的投放控制方法、装置、计算机设备及存储介质

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3478334B2 (ja) * 2001-03-28 2003-12-15 株式会社ナムコ プログラム、情報記憶媒体及びゲーム装置
JP2002049938A (ja) * 2001-06-15 2002-02-15 Namco Ltd 3次元ゲーム装置及び画像合成方法

Also Published As

Publication number Publication date
JP2008229159A (ja) 2008-10-02

Similar Documents

Publication Publication Date Title
JP5234716B2 (ja) プログラム、情報記憶媒体及びゲーム装置
JP5411473B2 (ja) プログラム及びゲーム装置
US8556695B2 (en) Information storage medium, image generation device, and image generation method
US5704837A (en) Video game steering system causing translation, rotation and curvilinear motion on the object
US10046233B2 (en) Game machine controller
US8142277B2 (en) Program, game system, and movement control method for assisting a user to position a game object
US6972756B1 (en) Image generating device
US20130023341A1 (en) Program and recording medium on which the program is recorded
JP5184801B2 (ja) プログラム及びサーバ
US20120322523A1 (en) Target interface
JP2008272123A (ja) プログラム、情報記憶媒体及びゲーム装置
JP2011036432A (ja) プログラム、情報記憶媒体及び画像生成システム
JP3685836B2 (ja) 3次元シューティングゲーム装置
US8944914B2 (en) Control of translational movement and field of view of a character within a virtual world as rendered on a display
JP5106894B2 (ja) プログラム、情報記憶媒体及びゲーム装置
JP2009072319A (ja) プログラム、情報記憶媒体、ゲーム装置及びコントローラ
JP3369956B2 (ja) 画像生成装置及び情報記憶媒体
JP3467487B2 (ja) プログラム、情報記憶媒体、及びゲーム装置
JP2003245465A (ja) ゲーム装置、ゲーム制御プログラムおよびそのプログラムが記録された記録媒体
JPH08229239A (ja) 3次元ゲーム装置
JP3424959B2 (ja) ゲーム装置及びゲームを行うための装置の制御方法
JP4363595B2 (ja) 画像生成装置及び情報記憶媒体
JP2013000232A (ja) ゲーム機及びそのコンピュータプログラム
JP2012252659A (ja) プログラム、情報記憶媒体、及びサーバ
JP4114825B2 (ja) 画像生成装置及び情報記憶媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100315

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20121002

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20121003

R150 Certificate of patent or registration of utility model

Ref document number: 5106894

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20151012

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20151012

Year of fee payment: 3

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250