説明

ゲーム装置、画像生成方法、および、プログラム

【課題】攻撃を受ける際の緊迫感を適切に高めることのできるゲーム装置等を提供する。
【解決手段】平面画定部241は、自キャラクタが含まれる視界内における水平な平面を画定する。ブロック区分け部242は、画定された平面を複数のブロックに区分けする。着弾点選定部243は、区分けされた各ブロックに対して、ブロック内における任意の位置となる着弾点を所定数ずつランダムに選定する。着弾判定部244は、選定された各着弾点について、銃撃を行う敵キャラクタとの位置関係等に基づき、着弾可能か否かをそれぞれ判別する。着弾点決定部245は、着弾可能と判別された着弾点のうちから、1つの着弾点をランダムに決定する。そして、画像描画部250は、決定された着弾点に向けて銃撃される自キャラクタを含むゲーム画像を生成する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、攻撃を受ける際の緊迫感を適切に高めることのできるゲーム装置、画像生成方法、および、プログラムに関する。
【背景技術】
【0002】
従来より、ゲーム装置(ビデオゲーム装置等)にて、アクションゲームやスポーツゲームといった体感型のゲームが人気を博している。このようなアクションゲーム等では、緊迫感やリアリティを高めるため、ゲームの進行に伴う様々な状況の変化を瞬時(リアルタイム)に表現している。
例えば、敵味方に分かれたキャラクタが銃撃戦を行うようなアクションゲーム(シューティングゲーム等)では、敵キャラクタから発砲された弾丸が自キャラクタ(プレイヤキャラクタ)の近傍に着弾する等により、緊迫感を高めている。
【0003】
このようなゲーム装置の一例として、着弾位置の遠近に応じて着弾音を変え、また、銃弾が近くを通過した際には、風切音を出力する対戦式ビデオゲーム装置の技術も開示されている(例えば、特許文献1参照)。
【特許文献1】特開2002−52243号公報 (第3−10頁、第3図)
【発明の開示】
【発明が解決しようとする課題】
【0004】
上述したような銃撃戦を行うアクションゲーム(ゲーム装置)では、着弾によって、緊迫感を高めるだけでなく、自キャラクタの存在が敵キャラクタに察知されたことや、敵キャラクタの射程内に入ったこと、更に、敵キャラクタのおおよその位置(方向等)をプレイヤに知らせる役目も果たしている。
例えば、ゲーム中の画像(ゲーム画像)において、自キャラクタの前方(視界が自キャラクタの前方)に、敵キャラクタが見えない(存在しない)状況であっても、着弾(跳弾や塵等の巻き上がり等)によって、背後や側面から敵キャラクタに狙われていることを、プレイヤは知ることができる。
それでも、ある程度、自キャラクタの近傍に着弾しないと、緊迫感が足りないだけでなく、敵キャラクタの位置を知ることが難しくなる。
【0005】
そのため、自キャラクタの近傍に着弾するように制御することも考えられるが、単純に制御しようとすると、緊迫感等を与えられない状況も生じうる。
例えば、自キャラクタの直前や直後等、いつも決まった位置(自キャラクタを基準として相対的に同じ位置)に着弾するように制御してしまうと、プレイヤは、敵からの攻撃が単調に思えてしまい、緊迫感を十分に感じることができなくなる。
また、そもそも、自キャラクタの近傍に着弾したとしても、その着弾位置が、視点や視線方向の関係で視界から外れていた場合には、ゲーム画像に表示されないことになり、緊迫感を与えられないだけでなく、プレイヤが敵キャラクタの位置を知ることも困難となってしまう。
【0006】
このようなことから、自キャラクタ等の状況や視点等を考慮しつつ、敵キャラクタから発砲された弾丸等を効果的に着弾させる技術が求められていた。
【0007】
本発明は、このような課題を解決するためになされたもので、攻撃を受ける際の緊迫感を適切に高めることのできるゲーム装置、画像生成方法、および、プログラムを提供することを目的とする。
【課題を解決するための手段】
【0008】
本発明の第1の観点に係るゲーム装置は、仮想空間内において、敵キャラクタが自キャラクタに向けて移動体(例えば、発射された弾丸、投じられた槍や石、射られた矢等であり、飛翔体や被射出体などと称されるものも含む)による攻撃を行うゲーム装置であって、区分け部、選定部、判別部、決定部、及び、画像生成部を含んで構成される。
【0009】
まず、区分け部は、自キャラクタが含まれる視界内における所定の平面を複数のブロックに区分けする。そして、選定部は、区分けされた当該各ブロック内の任意の目標点(例えば、着弾点)を所定数ずつランダムに選定する。
一方、判別部は、選定された当該各目標点について、攻撃元となる敵キャラクタとの位置関係に基づき、移動体が到達可能(例えば、着弾可能)か否かをそれぞれ判別する。また、決定部は、当該到達可能と判別された目標点のうちから、少なくとも1つの目標点をランダムに決定する。そして、画像生成部は、当該決定された目標点に向けて移動体により攻撃される自キャラクタを含むゲーム画像を生成する。
【0010】
すなわち、視界内における自キャラクタの近傍に必ず移動体が到達し、その様子がゲーム画像として表示されることになる。その際、目標点が一定とならず適度にばらけるため、敵からの攻撃が単調になることもない。このため、緊張感を適切に与えることができる。また、プレイヤは、移動体が到達する様子から、敵キャラクタのおおよその位置等を知ることもできる。
この結果、攻撃を受ける際の緊迫感を適切に高めることができる。
【0011】
前記区分け部は、仮想の視点位置に基づいて、奥行き方向(Z軸方向)の長さを変化させた所定形状の水平な平面を、所定数のブロックに区分けしてもよい。
例えば、視点位置が低い場合(仰角が小さい場合)では、奥行き方向の長さを短くした水平な平面を、複数のブロックに区分けし、一方、視点位置が高い場合(仰角が大きい場合)では、奥行き方向の長さを長くした平面を、複数のブロックに区分けする。
この場合、視点位置に応じて、目標点の範囲(選定される範囲)を適宜変化させることができる。
【0012】
前記選定部は、当該各ブロック内における自キャラクタに対応する範囲を除いて各目標点をそれぞれ選定してもよい。
この場合、移動体が自キャラクタに当たらないように、目標点を定めることができる。
【0013】
前記判別部は、敵キャラクタの位置から各目標点までの各軌道上における障害物の有無に従って、それぞれ到達可能か否かを判別してもよい。
この場合、仮想空間に配置される自キャラクタの周りの障害物(建物、木、岩等)を考慮して、自キャラクタの近傍にまで移動体が到達できる目標点だけを候補にすることができる。
【0014】
前記判別部は、当該軌道上に障害物があった場合でも、当該障害物が視界内における自キャラクタの近傍に位置している場合に限り、到達可能と判別し、
前記画像生成部は、前記決定部により弾道上に障害物がある目標点が決定された場合に、当該障害物に移動体が衝突するゲーム画像を生成してもよい。
この場合、障害物に移動体が当たる様子(跳弾等)が表示されることになり、よりリアリティのある緊迫感を与えることができる。
【0015】
本発明の第2の観点に係る画像生成方法は、演算部、及び、描画部を有しており、仮想空間内において、敵キャラクタが自キャラクタに向けて移動体(例えば、発射された弾丸、投じられた槍や石、射られた矢等であり、飛翔体や被射出体などと称されるものも含む)による攻撃を行うゲーム装置における画像生成方法であって、区分けステップ、選定ステップ、判別ステップ、決定ステップ、及び、画像生成ステップを含んで構成される。
【0016】
まず、区分けステップでは、自キャラクタが含まれる視界内における所定の平面を複数のブロックに区分けする。そして、選定ステップでは、区分けされた当該各ブロック内の任意の目標点(例えば、着弾点)を所定数ずつランダムに選定する。
一方、判別ステップでは、選定された当該各目標点について、攻撃元となる敵キャラクタとの位置関係に基づき、移動体が到達可能(例えば、着弾可能)か否かをそれぞれ判別する。また、決定ステップでは、当該到達可能と判別された目標点のうちから、少なくとも1つの目標点をランダムに決定する。そして、画像生成ステップでは、当該決定された目標点に向けて移動体により攻撃される自キャラクタを含むゲーム画像を生成する。
【0017】
すなわち、視界内における自キャラクタの近傍に必ず移動体が到達し、その様子がゲーム画像として表示されることになる。その際、目標点が一定とならず適度にばらけるため、敵からの攻撃が単調になることもない。このため、緊張感を適切に与えることができる。また、プレイヤは、移動体が到達する様子から、敵キャラクタのおおよその位置等を知ることもできる。
この結果、攻撃を受ける際の緊迫感を適切に高めることができる。
【0018】
本発明の第3の観点に係るプログラムは、コンピュータ(電子機器を含む。)を、上記のゲーム装置として機能させるように構成する。
【0019】
このプログラムは、コンパクトディスク、フレキシブルディスク、ハードディスク、光磁気ディスク、ディジタルビデオディスク、磁気テープ、半導体メモリ等のコンピュータ読取可能な情報記録媒体に記録することができる。
【0020】
上記プログラムは、当該プログラムが実行されるコンピュータとは独立して、コンピュータ通信網を介して配布・販売することができる。また、上記情報記録媒体は、当該コンピュータとは独立して配布・販売することができる。
【発明の効果】
【0021】
本発明によれば、攻撃を受ける際の緊迫感を適切に高めることができる。
【発明を実施するための最良の形態】
【0022】
以下に本発明の実施形態を説明する。以下では、理解を容易にするため、ゲーム装置に本発明が適用される実施形態を説明するが、各種のコンピュータ、PDA、携帯電話などの情報処理装置においても同様に本発明を適用することができる。すなわち、以下に説明する実施形態は説明のためのものであり、本願発明の範囲を制限するものではない。したがって、当業者であればこれらの各要素または全要素をこれと均等なものに置換した実施形態を採用することが可能であるが、これらの実施形態も本発明の範囲に含まれる。
【0023】
(実施形態1)
図1は、本発明の実施の形態に係るゲーム装置が実現される典型的な情報処理装置の概要構成を示す模式図である。以下、本図を参照して説明する。
【0024】
情報処理装置100は、CPU(Central Processing Unit)101と、ROM(Read Only Memory)102と、RAM(Random Access Memory)103と、インターフェース104と、コントローラ105と、外部メモリ106と、DVD(Digital Versatile Disk)−ROMドライブ107と、画像処理部108と、音声処理部109と、NIC(Network Interface Card)110と、を備える。
【0025】
なお、ゲーム用のプログラムおよびデータを記憶したDVD−ROMをDVD−ROMドライブ107に装着して、情報処理装置100の電源を投入することにより、当該プログラムが実行され、本実施形態のゲーム装置が実現される。
【0026】
CPU 101は、情報処理装置100全体の動作を制御し、各構成要素と接続され制御信号やデータをやりとりする。
【0027】
ROM 102には、電源投入直後に実行されるIPL(Initial Program Loader)が記録され、これが実行されることにより、DVD−ROMに記録されたプログラムをRAM 103に読み出してCPU 101による実行が開始される。また、ROM 102には、情報処理装置100全体の動作制御に必要なオペレーティングシステムのプログラムや各種のデータが記録される。
【0028】
RAM 103は、データやプログラムを一時的に記憶するためのもので、DVD−ROMから読み出したプログラムやデータ、その他ゲームの進行やチャット通信に必要なデータが保持される。
【0029】
インターフェース104を介して接続されたコントローラ105は、ユーザがゲーム実行の際に行う操作入力を受け付ける。たとえば、コントローラ105は、操作入力に従って、文字列(メッセージ)等の入力を受け付ける。
【0030】
インターフェース104を介して着脱自在に接続された外部メモリ106には、ゲームの進行状態を示すデータ、チャット通信のログ(記録)のデータなどが書き換え可能に記憶される。ユーザは、コントローラ105を介して指示入力を行うことにより、これらのデータを適宜外部メモリ106に記録することができる。
【0031】
DVD−ROMドライブ107に装着されるDVD−ROMには、ゲームを実現するためのプログラムとゲームに付随する画像データや音声データが記録される。CPU 101の制御によって、DVD−ROMドライブ107は、これに装着されたDVD−ROMに対する読み出し処理を行って、必要なプログラムやデータを読み出し、これらはRAM 103等に一時的に記憶される。
【0032】
画像処理部108は、DVD−ROMから読み出されたデータをCPU 101や画像処理部108が備える画像演算プロセッサ(図示せず)によって加工処理した後、これを画像処理部108が備えるフレームメモリ(図示せず)に記録する。フレームメモリに記録された画像情報は、所定の同期タイミングでビデオ信号に変換され画像処理部108に接続されるモニタ(図示せず)へ出力される。これにより、各種の画像表示が可能となる。
【0033】
なお、画像演算プロセッサは、2次元の画像の重ね合わせ演算やαブレンディング等の透過演算、各種の飽和演算を高速に実行できる。
また、仮想3次元空間に配置され、各種のテクスチャ情報が付加されたポリゴン情報を、Zバッファ法によりレンダリングして、所定の視点位置から仮想3次元空間に配置されたポリゴンを俯瞰したレンダリング画像を得る演算の高速実行も可能である。
【0034】
さらに、CPU 101と画像演算プロセッサが協調動作することにより、文字の形状を定義するフォント情報にしたがって、文字列を2次元画像としてフレームメモリへ描画したり、各ポリゴン表面へ描画することが可能である。フォント情報は、ROM 102に記録されているが、DVD−ROMに記録された専用のフォント情報を利用することも可能である。
【0035】
音声処理部109は、DVD−ROMから読み出した音声データをアナログ音声信号に変換し、これに接続されたスピーカ(図示せず)から出力させる。また、CPU 101の制御の下、ゲームの進行の中で発生させるべき効果音や楽曲データを生成し、これに対応した音声をスピーカから出力させる。
【0036】
NIC 110は、情報処理装置100をインターネット等のコンピュータ通信網(図示せず)に接続するためのものであり、LAN(Local Area Network)を構成する際に用いられる10BASE−T/100BASE−T規格にしたがうものや、電話回線を用いてインターネットに接続するためのアナログモデム、ISDN(Integrated Services Digital Network)モデム、ADSL(Asymmetric Digital Subscriber Line)モデム、ケーブルテレビジョン回線を用いてインターネットに接続するためのケーブルモデム等と、これらとCPU 101との仲立ちを行うインターフェース(図示せず)により構成される。
【0037】
このほか、情報処理装置100は、ハードディスク等の大容量外部記憶装置を用いて、ROM 102、RAM 103、外部メモリ106、DVD−ROMドライブ107に装着されるDVD−ROM等と同じ機能を果たすように構成してもよい。
また、ユーザからの文字列の編集入力を受け付けるためのキーボードや、各種の位置の指定および選択入力を受け付けるためのマウスなどを接続する形態も採用することができる。
【0038】
また、本実施形態の情報処理装置100にかえて、一般的なコンピュータ(汎用のパーソナルコンピュータ等)をゲーム装置として利用することもできる。たとえば、一般的なコンピュータは、上記情報処理装置100と同様に、CPU、RAM、ROM、DVD−ROMドライブ、および、NICを備え、情報処理装置100よりも簡易な機能を備えた画像処理部を備え、外部記憶装置としてハードディスクを有する他、フレキシブルディスク、光磁気ディスク、磁気テープ等が利用できるようになっている。また、コントローラではなく、キーボードやマウスなどを入力装置として利用する。そして、ゲームプログラムをインストールした後に、そのプログラムを実行させると、ゲーム装置として機能する。
【0039】
(ゲーム装置の概要構成)
図2は、本実施形態に係るゲーム装置の概要構成を示す模式図である。このゲーム装置は、一例として、敵味方に分かれたキャラクタが銃撃戦を行うようなアクションゲーム(シューティングゲーム等)において、効果的な着弾を表現する装置である。以下、本図を参照して説明する。
【0040】
図示するように、ゲーム装置200は、オブジェクト情報記憶部210と、操作受付部220と、位置管理部230と、着弾演算部240と、画像描画部250とを備えて構成される。
【0041】
まず、オブジェクト情報記憶部210は、仮想空間内に配置される自キャラクタ(プレイヤキャラクタ)、敵キャラクタ、樹木、岩、及び、建物等の各種オブジェクトについての情報を記憶する。具体的には、各オブジェクトについて、3次元モデルやテクスチャといった情報が記憶されている。
なお、RAM 103等が、このようなオブジェクト情報記憶部210として機能しうる。
【0042】
操作受付部220は、プレイヤが操る自キャラクタに対する動作指示等の操作入力を受け付ける。例えば、操作受付部220は、所定方向に移動する、銃を構える、銃を発砲する、しゃがむ、伏せる等の動作に対応した複数のボタン(一例として、コントローラ105に配置された方向キー,Aボタン,Bボタン,Xボタン,Yボタン等)の何れかがプレイヤにより押下されることによって、自キャラクタに向けた操作入力を受け付ける。
なお、コントローラ105がこのような操作受付部220として機能しうる。
【0043】
位置管理部230は、自キャラクタや敵キャラクタといった仮想空間内で位置が変化するオブジェクトの位置情報(現在位置や向き等)を管理する。例えば、自キャラクタは、操作受付部220によって受け付けた移動指示等に従って、仮想空間内の位置や向きが変化するため、位置管理部230にてその位置情報が管理される。また、敵キャラクタも所定のロジックに従って適宜移動し、仮想空間内の位置等が変化するため、同様に位置情報が管理される。
なお、RAM 103及びCPU 101が、このような位置管理部230として機能しうる。
【0044】
着弾演算部240は、敵キャラクタからの発砲等を制御し、この発砲に伴う弾丸の着弾について、種々の演算を行う。
具体的に着弾演算部240は、平面画定部241と、ブロック区分け部242と、着弾点選定部243と、着弾判定部244と、着弾点決定部245とを含んで構成される。
【0045】
まず、平面画定部241は、自キャラクタが含まれる視界内(視点を基準とした視野内)における所定の平面を画定する。
例えば、平面画定部241は、図3(a)に示すように、視点Vから眺めた自キャラクタJcが含まれる視界領域(ビューフラスタム)VFにおいて、矩形形状の平面Fを画定する。
この平面Fは、一例として、自キャラクタJcを中心として、所定の高さ(例えば、自キャラクタJcの膝の高さ)に設定された水平な平面であり、視点Vの位置(仰角等)に基づいて、大きさ等が可変に画定される。
具体的に、平面画定部241は、図3(b)に示すように、視点Vの位置(高さ)が低い場合(仰角αが小さい場合)では、奥行き方向(Z軸方向)の長さを短くした(L1)平面Fを画定する。一方、図3(c)に示すように、視点Vの位置が高い場合(仰角αが大きい場合)では、奥行き方向の長さを長くした(L2)平面Fを画定する。
なお、一例として、矩形形状の平面を画定する場合について説明しているが、平面画定部241が画定する平面は、このような矩形形状の平面に限られず任意である。例えば、円形状や楕円形状等の平面であってもよい。
【0046】
図2に戻って、ブロック区分け部242は、上述した平面画定部241により画定された平面を複数のブロックに区分けする。
例えば、ブロック区分け部242は、図4(a)に示すように、平面Fを4つのブロック(ブロックB1〜B4)に区分けする。この平面Fは、真上から見たようすを示している。
なお、区分けの手法は、このような田の字に区分けする場合に限られず任意である。例えば、図4(b)に示すように、対角線で区分けしてもよい。また、区分けするブロック数もこのような4つに限られず適宜増減可能である。例えば、図4(c)に示すように、3つに区分けしてもよい。
【0047】
図2に戻って、着弾点選定部243は、上述したブロック区分け部242により区分けされた各ブロックに対して、ブロック内における任意の位置となる着弾点を所定数ずつランダムに選定する。
例えば、着弾点選定部243は、図5(a)に示すように、ブロックB1〜B4のそれぞれについて、6つの着弾点をランダムに選定する。この際、着弾点選定部243は、自キャラクタJcの存在を考慮して、図5(b)に示すように、自キャラクタJcに対応するエリアA1を除いて、各着弾点をランダムに選定するようにしてもよい。更に、銃撃を行う(発砲する)敵キャラクタTcの位置(方向)も考慮して、図5(c)に示すように、敵キャラクタTcと逆方向に延ばして拡大させたエリアA2を除いて、各着弾点をランダムに選定するようにしてもよい。
なお、一例として、各ブロックに対して6つの着弾点をランダムに選定する場合について説明しているが、選定する着弾点の数は、このような6つに限られず適宜増減可能である。
【0048】
図2に戻って、着弾判定部244は、上述した着弾点選定部243により選定された各着弾点について、発砲する敵キャラクタとの位置関係等に基づき、着弾可能か否かをそれぞれ判別する。
つまり、着弾判定部244は、仮想空間内における敵キャラクタの位置から各着弾点までの各弾道上における障害物の有無に従って、それぞれ着弾可能か否かを判別する。
具体的に着弾判定部244は、図6(a)に示すように、着弾点P1が着弾可能であるか否かを判別する際に、敵キャラクタTc(例えば、銃の位置)から着弾点P1までの弾道d1を求め、この弾道d1上に障害物が存在するかどうかを、オブジェクト記憶部210等を参照して判別する。ここでは、弾道d1上には障害物がないため、着弾判定部244は、着弾点P1が着弾可能であると判別する。
同様に、着弾点P2についても、弾道d2を求めて障害物の有無を判定する。ここでは、岩R1が弾道d2上に存在するため(弾道d2を塞いでいるため)、着弾判定部244は、着弾点P2が着弾不能(着弾できない)と判別する。
【0049】
なお、障害物が弾道上に存在していても、その障害物が、自キャラクタJcの近傍に位置し、かつ、視界内に位置している場合に限り、着弾判定部244は、着弾可能であると判別する。
例えば、図6(b)に示すように、弾道d3上に岩R2が存在していても、この岩R2の位置が自キャラクタJcの近傍(一例として、所定距離内)であり、かつ、視点Vから眺めた視界内に入っているため、着弾判定部244は、着弾点P3が着弾可能であると判別する。
これは、着弾点P3に向けて発砲した場合に、自キャラクタJcの近傍の岩R2に着弾し、その様子がゲーム画像に表示されることになるため、着弾点P3に着弾する場合と同等に扱うのが妥当だからである。
なお、複数の障害物が存在している場合には、敵キャラクタTcに最も近い障害物を対象として、上記の判断がなされるものとする。
【0050】
このようにして、着弾判定部244は、各着弾点(各ブロックにおけるそれぞれの着弾点、つまり、4×6で24つの着弾点)について着弾可能か否かを順次判別する。そして、着弾可能と判別した着弾点(例えば、着弾点の位置情報等)を、候補リストに登録する。つまり、着弾判定部244は、着弾可能な着弾点だけを、候補リストに登録する。
【0051】
図2に戻って、着弾点決定部245は、上述した着弾判定部244により着弾可能と判別された着弾点のうちから、1つの着弾点をランダムに決定する。
つまり、着弾点決定部245は、候補リストに登録された着弾点のうち、実際に着弾させる1つの着弾点をランダムに決定する。
なお、敵キャラクタTcの銃が連射可能なマシンガン等であり、同時期に複数(例えば、2つ)着弾させる場合には、着弾点決定部245は、複数(例えば、2つ)の着弾点をランダムに決定するようにしてもよい。
【0052】
このような構成の着弾演算部240は、視点位置や、敵キャラクタ及び障害物との位置関係に基づいて、敵キャラクタから発砲される弾丸の着弾点を、自キャラクタの近傍で、かつ、視界内となるものに限り、少なくとも1つ決定する。
なお、CPU 101等が、このような着弾演算部240として機能しうる。
【0053】
画像描画部250は、オブジェクト記憶部210に記憶されたオブジェクトの情報、及び、位置管理部230に管理されるキャラクタの位置情報等に従って、仮想空間内(視界内)のオブジェクトを、視点座標系に変換したゲーム画像(表示画像)を描画する。
例えば、敵キャラクタから発砲がなされ、上述した着弾演算部240により1つの着弾点が決定されると、画像描画部250は、自キャラクタの近傍(視界内)に着弾する様子を示すゲーム画像を生成する。
具体的に画像描画部250は、図7(a)のように、着弾点P4に向けて発砲された弾丸が自キャラクタの近傍に着弾する様子を示すゲーム画像を表示する。なお、この着弾点P4は説明のためのものであり、実際のゲーム画像には表示されない。
この他にも、図7(b)のように、着弾点P5に向けて発砲された弾丸が自キャラクタの近傍の岩R3に着弾する様子を示すゲーム画像を表示する。同様に、この着弾点P5は説明のためのものであり、実際のゲーム画像には表示されない。
なお、画像処理部108が、このような画像描画部250として機能しうる。
【0054】
(ゲーム装置の動作)
図8は、上述した構成のゲーム装置200において実行される着弾処理の流れを示すフローチャートである。以下、本図を参照してゲーム装置200の動作について説明する。この着弾処理は、ゲーム実行中において、敵キャラクタにより発砲される度に、繰り返し実行される。なお、着弾処理の開始時において、候補リストは、クリアされている(何も登録されていない)ものとする。
【0055】
まず、ゲーム装置200は、視界内の平面を画定する(ステップS301)。
すなわち、平面画定部241は、自キャラクタが含まれる視界内における水平な平面を画定する。この際、平面画定部241は、視点の位置(仰角等)に基づいて、少なくとも奥行き方向の長さを変化させた矩形形状の平面を画定する。
【0056】
ゲーム装置200は、画定した平面を、複数のブロックに区分けする(ステップS302)。
つまり、ブロック区分け部242は、上述した図4(a)に示すように、画定された平面を4つのブロックに区分けする。
【0057】
ゲーム装置200は、各ブロックにおいて、所定数の着弾点を選定する(ステップS303)。
つまり、着弾点選定部243は、上述した図5(a)に示すように、ブロックB1〜B4のそれぞれについて、6つの着弾点をランダムに選定する。
【0058】
ゲーム装置200は、変数nに初期値の1をセットする(ステップS304)。この変数nは、着弾点の数を順番にカウントするための変数であり、例えば、1から24(4×6=24)までのカウントに用いられる。
【0059】
ゲーム装置200は、着弾点nが着弾可能か否かを判別する(ステップS305)。
すなわち、着弾判定部244は、n番目の着弾点について、発砲する敵キャラクタとの位置関係等に基づき、着弾可能か否かを判別する。より詳細には、仮想空間内における敵キャラクタの位置から着弾点nまでの弾道を求め、この弾道上における障害物の有無に従って、着弾可能か否かを判別する。
なお、上述したように、障害物が弾道上に存在していても、その障害物が、自キャラクタの近傍に位置し、かつ、視界内に位置している場合に限り、着弾判定部244は、着弾可能であると判別する。
【0060】
ゲーム装置200は、着弾可能でない(着弾不能である)と判別すると(ステップS305;No)、後述するステップS307に処理を進める。
一方、着弾可能であると判別した場合に(ステップS305;Yes)、ゲーム装置200は、候補リストに着弾点nを登録する(ステップS306)。
すなわち、着弾判定部244は、n番目の着弾点が着弾可能と判別した場合に、候補リストにn番目の着弾点の情報を登録する。
【0061】
ゲーム装置200は、変数nが最大値であるか否かを判別する(ステップS307)。つまり、最大値となる24番目の着弾点まで、着弾の判別を終えたかどうかを判別する。
ゲーム装置200は、変数nが最大値でないと判別すると(ステップS307;No)、次の着弾点に移るために、変数nに1を加算する(ステップS308)。そして、ステップS305に処理を戻す。
【0062】
こうして、上述したステップS305〜S308の処理を繰り返すことにより、各着弾点のそれぞれについて着弾可能か否かが判別され、着弾可能な着弾点だけが候補リストに登録されていくことになる。
【0063】
そして、上述したステップS307にて変数nが最大値であると判別されると(ステップS307;Yes)、ゲーム装置200は、候補リストから1つの着弾点を決定する(ステップS309)。
つまり、着弾点決定部245は、候補リストに登録された着弾点のうち、実際に着弾させる1つの着弾点をランダムに決定する。
なお、候補リストに1つの着弾点も登録されていなかった場合には、後続処理を飛ばして、着弾処理をそのまま終了してもよく、また、ステップS303に戻って、再度、着弾点の選定からやり直すようにしてもよい。
【0064】
ゲーム装置200は、決定した着弾点に向けて発砲する画像を生成する(ステップS310)。
つまり、画像描画部250は、上述した図7(a),(b)に示すような自キャラクタJcの近傍に着弾する様子を示すゲーム画像を生成する。
【0065】
このような着弾処理によって、まず、着弾点の第1選考として、自キャラクタの近傍となる所定数の着弾点が選定される。つまり、視点の位置に応じた平面が画定され、その平面が複数のブロックに区分けされる。そして、各ブロックについてランダムに着弾点が選定されるため、自キャラクタの近傍にある程度ばらけた着弾点がそれぞれ求められることになる。
次に、着弾点の第2選考として、敵キャラクタ(狙撃者)から着弾点までの障害物チェックを行うことにより、自キャラクタの近傍に着弾可能な着弾点だけが候補リストに登録される。つまり、第1選考により選ばれた着弾点のうち、実際に、着弾点まで到達できる(若しくは、近傍の障害物まで到達できる)着弾点だけが求められることになる。
こうして、第1、及び、第2選考を通過した(候補リストに登録された)着弾点から、少なくとも1つの着弾点をランダムに決定し、その決定した着弾点に向けて敵キャラクタから発砲を行う。
これにより、視界内における自キャラクタの近傍に必ず着弾し、その着弾の様子がゲーム画像として表示されることになる。このため、緊迫感が適切に高められ、敵キャラクタのおおよその位置等をプレイヤが知ることができる。
この結果、緊迫感のある銃撃戦を適切に表現することができる。
【0066】
(他の実施形態)
上記の実施形態では、視点の位置が、自キャラクタの全容を眺める位置である三人称視点の場合を一例として説明したが、この他にも、自キャラクタの肩口等から眺める位置である一人称視点(主観視点)の場合でも、適宜適用可能である。
例えば、図9(a)に示すように、一人称視点となる視点Vの場合も、平面画定部241は、上述した三人称視点の場合と同様に水平な平面Fを画定する。つまり、視点Vの位置(仰角等)に基づいて、奥行き(Z軸方向)の長さを変化させた矩形形状の平面Fを画定する。
また、ブロック区分け部242も、三人称視点の場合と同様に、平面Fを4つのブロックに区分けする。
【0067】
ここで、着弾点選定部243は、三人称視点の場合と異なり、奥行き方向の2つのブロックに対してのみ、着弾点を選定する。具体的に着弾点選定部243は、図9(b)に示すように、視界前方(Z軸方向)となるブロックB3,B4についてだけ、6つの着弾点をランダムに選定する。つまり、視界内から外れるブロックB1,B2については、着弾点を選定しないようにする。
【0068】
以降は、三人称視点の場合と同様に、着弾判定部244が、各着弾点について着弾可能か否かを判別しつつ、着弾可能な着弾点だけを候補リストに登録し、着弾点決定部245が、候補リストに登録された着弾点のうち、実際に着弾させる1つの着弾点をランダムに決定する。
【0069】
なお、平面画定部241は、図9(c)に示すように、視界内から外れる範囲を除いた平面F2を画定するようにしてもよい。また、ブロック区分け部242は、平面F2を2つのブロックに区分けする。
そして、着弾点選定部243は、図9(d)に示すように、区分けされた2つのブロックB5,B6について、6つの着弾点をランダムに選定する。
【0070】
以降は、三人称視点の場合と同様に、着弾判定部244が、各着弾点について着弾可能か否かを判別しつつ、着弾可能な着弾点だけを候補リストに登録し、着弾点決定部245が、候補リストに登録された着弾点のうち、実際に着弾させる1つの着弾点をランダムに決定する。
【0071】
このようにして、着弾点が決定されると、画像描画部250は、三人称視点の場合と同様に、自キャラクタの近傍に着弾する様子を示すゲーム画像を生成することになる。
この結果、緊迫感のある銃撃戦を適切に表現することができる。
【0072】
上記の実施形態では、平面画定部241が水平な平面を画定する場合について説明したが、自キャラクタ周辺の地形等に応じて、水平と異なる平面を画定するようにしてもよい。
例えば、図10(a)に示すように、自キャラクタJcが壁Wに張り付いて隠れており、敵キャラクタから発砲される弾丸を全て壁Wに着弾させるような場合には、平面画定部241は、垂直な平面を画定するようにしてもよい。
また、図10(b)に示すように、自キャラクタJcがスロープS(角度のある壁等)をよじ登っている際に、高所の敵キャラクタTcから狙撃されるような場合には、平面画定部241は、スロープSの角度に合わせたり、敵キャラクタTcの方向に合わせて傾かせた平面を画定するようにしてもよい。
【0073】
これらの場合、水平な平面を画定するよりも、着弾する範囲が壁WやスロープSに対して広くすることができ、最終的に着弾点決定部245によって決定される着弾点も適切にばらけさせることができる。
この結果、緊迫感のある銃撃戦を適切に表現することができる。
【0074】
上記の実施形態では、敵キャラクタから銃弾(弾丸)が発せられる場合を一例として説明したが、このような銃弾に限られず、投じられた槍や石、射られた矢等のような種々の移動体(飛翔体や被射出体などと称されるものも含む)についても、適宜適用可能である。
【0075】
以上説明したように、本発明によれば、攻撃を受ける際の緊迫感を適切に高めることができる。
【図面の簡単な説明】
【0076】
【図1】本発明の実施形態に係る情報処理装置の概要構成を示す模式図である。
【図2】本発明の実施形態に係るゲーム装置の概要構成を示す模式図である。
【図3】(a)〜(c)共に、画定される平面を説明するための模式図である。
【図4】(a)〜(c)共に、平面が複数のブロックに区分けされる様子を説明するための模式図である。
【図5】(a)〜(c)共に、区分けされた各ブロックにて、ランダムに選定される着弾点の一例を示す模式図である。
【図6】(a),(b)共に、着弾点が着弾可能であるかどうかを判別する様子を説明するための模式図である。
【図7】(a),(b)共に、描画されるゲーム画像の一例を示す模式図である。
【図8】本発明の実施形態に係る着弾処理の一例を示すフローチャートである。
【図9】(a)〜(d)共に、一人称視点における平面及びその平面が複数のブロックに区分けされる様子を説明するための模式図である。
【図10】(a),(b)共に、水平以外の平面が策定される例を説明するための模式図である。
【符号の説明】
【0077】
100 情報処理装置
101 CPU
102 ROM
103 RAM
104 インターフェース
105 コントローラ
106 外部メモリ
107 DVD−ROMドライブ
108 画像処理部
109 音声処理部
110 NIC
200 ゲーム装置
210 オブジェクト情報記憶部
220 操作受付部
230 位置管理部
240 着弾演算部
250 画像描画部

【特許請求の範囲】
【請求項1】
仮想空間内において、敵キャラクタが自キャラクタに向けて移動体による攻撃を行うゲーム装置であって、
自キャラクタが含まれる視界内における所定の平面を複数のブロックに区分けする区分け部と、
区分けされた当該各ブロック内の任意の目標点を所定数ずつランダムに選定する選定部と、
選定された当該各目標点について、攻撃元となる敵キャラクタとの位置関係に基づき、移動体が到達可能か否かをそれぞれ判別する判別部と、
当該到達可能と判別された目標点のうちから、少なくとも1つの目標点をランダムに決定する決定部と、
当該決定された目標点に向けて移動体により攻撃される自キャラクタを含むゲーム画像を生成する画像生成部と、を備える、
ことを特徴とするゲーム装置。
【請求項2】
請求項1に記載のゲーム装置であって、
前記区分け部は、仮想の視点位置に基づいて、奥行き方向の長さを変化させた所定形状の水平な平面を、所定数のブロックに区分けする、
ことを特徴とするゲーム装置。
【請求項3】
請求項1又は2に記載のゲーム装置であって、
前記選定部は、当該各ブロック内における自キャラクタに対応する範囲を除いて各目標点をそれぞれ選定する、
ことを特徴とするゲーム装置。
【請求項4】
請求項1乃至3の何れか1項に記載のゲーム装置であって、
前記判別部は、敵キャラクタの位置から各目標点までの各軌道上における障害物の有無に従って、それぞれ到達可能か否かを判別する、
ことを特徴とするゲーム装置。
【請求項5】
請求項4に記載のゲーム装置であって、
前記判別部は、当該軌道上に障害物があった場合でも、当該障害物が視界内における自キャラクタの近傍に位置している場合に限り、到達可能と判別し、
前記画像生成部は、前記決定部により軌道上に障害物がある目標点が決定された場合に、当該障害物に移動体が衝突するゲーム画像を生成する、
ことを特徴とするゲーム装置。
【請求項6】
演算部、及び、描画部を有しており、仮想空間内において、敵キャラクタが自キャラクタに向けて移動体による攻撃を行うゲーム装置における画像生成方法であって、
前記演算部が行う、自キャラクタが含まれる視界内における所定の平面を複数のブロックに区分けする区分けステップと、
前記演算部が行う、区分けされた当該各ブロック内の任意の目標点を所定数ずつランダムに選定する選定ステップと、
前記演算部が行う、選定された当該各目標点について、攻撃元となる敵キャラクタとの位置関係に基づき、移動体が到達可能か否かをそれぞれ判別する判別ステップと、
前記演算部が行う、当該到達可能と判別された目標点のうちから、少なくとも1つの目標点をランダムに決定する決定ステップと、
前記描画部が行う、当該決定された目標点に向けて移動体により攻撃される自キャラクタを含むゲーム画像を生成する画像生成ステップと、を備える、
ことを特徴とする画像生成方法。
【請求項7】
仮想空間内において、敵キャラクタが自キャラクタに向けて移動体による攻撃を行うコンピュータを、
自キャラクタが含まれる視界内における所定の平面を複数のブロックに区分けする区分け部、
区分けされた当該各ブロック内の任意の目標点を所定数ずつランダムに選定する選定部、
選定された当該各目標点について、攻撃元となる敵キャラクタとの位置関係に基づき、移動体が到達可能か否かをそれぞれ判別する判別部、
当該到達可能と判別された目標点のうちから、少なくとも1つの目標点をランダムに決定する決定部、
当該決定された目標点に向けて移動体により攻撃される自キャラクタを含むゲーム画像を生成する画像生成部、
として機能させることを特徴とするプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate