説明

ゲーム装置、このゲーム装置を実現するためのプログラム、および、このプログラムを記録した記録媒体

【課題】あらかじめ設定された位置とは異なる位置にオブジェクトを配置した場合でも、ゲーム画面上の表示が不自然なものとならないオブジェクトの配置方法を適用したゲームを提供する。
【解決手段】プレイヤキャラクタPCの位置である特定ポイントTPの周辺に、瞬間移動した敵キャラクタECを出現させる出現ポイントSPの候補である出現予定ポイントYP1〜4を設定する。出現予定ポイントYP1から順に特定ポイントTPとを結ぶ線分である平面線分M上に障害物OBJがあるか否かを判定し、平面線分M上に障害物がないと判定された場合に出現ポイントに決定して、瞬間移動した敵キャラクタECを出現させる。これにより、出現した敵キャラクタECが障害物OBJ1に重なったり、プレイヤキャラクタPCとの間の障害物OBJ2によって攻撃できなかったりという不自然な状態となることを抑制することができる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ゲーム装置、このゲーム装置を実現するためのプログラム、および、このプログラムを記録した記録媒体に関し、特に、オブジェクトの配置方法に関する。
【背景技術】
【0002】
従来、プレイヤが所定のキャラクタを操作し、仮想ゲーム空間上で、敵であるキャラクタと戦うアクションゲームが開発されている(例えば、特開2009−153559号公報)。以下では、プレイヤが操作するキャラクタを「プレイヤキャラクタ」といい、敵であるキャラクタを「敵キャラクタ」という。
【0003】
このようなアクションゲームでは、プレイヤキャラクタが敵キャラクタを攻撃して倒すことでゲームが進行する。また、敵キャラクタもプレイヤキャラクタを攻撃してくるので、プレイヤは、敵キャラクタからの攻撃を防御したり避けたりするように、プレイヤキャラクタを操作する必要がある。敵キャラクタには、銃などの飛び道具による攻撃を行うものもいるが、剣等の武器を用いた攻撃やパンチなどの素手による攻撃などの接近する必要の有る攻撃(以下、「接近攻撃」という。)のみを行うものもいる。接近攻撃のみを行う敵キャラクタは、接近攻撃がプレイヤキャラクタに届く距離まで近づかないと攻撃を行うことができない。したがって、このような敵キャラクタに対して離れた位置から飛び道具で攻撃することにより、プレイヤキャラクタは攻撃を受けることなく当該敵キャラクタを倒すことができる。
【0004】
もし、このような接近攻撃のみを行う敵キャラクタが瞬間移動してプレイヤキャラクタの目前に現れた場合、離れた位置にいることで油断していたプレイヤは、驚きと焦りを感じ、ゲームに新鮮味を感じることができる。また、瞬間移動した後にプレイヤキャラクタに攻撃してくるなど、敵キャラクタの攻撃のバリエーションが増えることで、プレイヤは緊張感をもって当該敵キャラクタとの闘いを行う必要が生じる。なお、「瞬間移動」とは、今までいた場所から離れた別の場所に瞬時に移動することであり、前フレームである場所にいたキャラクタ(オブジェクトであってもよい。)を、次のフレームでは当該場所から消去して、別の場所に突如出現させることである。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2009−153559号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、敵キャラクタがプレイヤキャラクタの近くに瞬間移動してくるアクションゲームは、従来開発されていなかった。これは、以下の理由によると考えられる。すなわち、瞬間移動先に障害物がある場合、ゲーム画面上では当該障害物と瞬間移動後の敵キャラクタとが重なって表示されることになって、映像が不自然なものとなる。三次元の仮想ゲーム空間上で進行されるゲームの場合、不自然さが特に顕著なものとなる。また、瞬間移動先とプレイヤキャラクタとの間に障害物がある場合には、敵キャラクタはプレイヤキャラクタに攻撃を行うことができないので、瞬間移動したことが意味を成さなくなる。特に、瞬間移動先が障害物(例えば、壁など)によって囲まれていた場合、敵キャラクタはそこから移動することができなくなってしまうという不自然な状態となる。さらに、瞬間移動先の高さとプレイヤキャラクタが立っている位置の高さとが著しく異なる場合も、瞬間移動後の敵キャラクタはプレイヤキャラクタに攻撃をすることができない。例えば、瞬間移動先がプレイヤキャラクタの頭上より高い位置の場合、瞬間移動後の敵キャラクタは、プレイヤキャラクタに対してパンチやキックによる攻撃を行うことができない。この場合も、瞬間移動したことが意味を成さなくなる。
【0007】
また、移動後のキャラクタと障害物とが不自然に重なって表示されるという問題は、瞬間移動の場合に限らず、キャラクタの通常の移動の場合にも生じていた。キャラクタは、あらかじめ決められた経路を、仮想ゲーム空間上に張り巡らされたメッシュ(ゲーム画面上には表示されない。)の交点を目標地点に向かって探索しながら移動するという方法がとられていた。つまり、瞬間移動と通常の移動との違いは、キャラクタが前に存在した位置と次の移動先の位置との距離の違いとも考えることができる。したがって、次の移動予定のメッシュの交点にキャラクタが移動したときに、当該キャラクタが障害物と重なる場合があった。
【0008】
また、ゲームステージ(アクションゲームに限られない)を設定する際に、オブジェクト(キャラクタを含む。以下、同じ。)の位置をあらかじめ決めておかず、ゲームステージの開始時に任意に配置するようにすれば、ゲームステージ上のオブジェクトの配置が毎回変更され、ゲームステージのバリエーションが豊富になる。しかし、上記と同様、オブジェクトが重なるように配置されると、ゲーム画面上にこれらが重なって表示され、映像が不自然なものとなる。また、プレイヤキャラクタが他のオブジェクトに囲まれた状態に配置された場合、プレイヤキャラクタの移動が制限されることになる。したがって、ゲームステージの開始時に各オブジェクトを任意に配置するという方法は、従来採用されていなかった。
【0009】
本発明は上記した事情のもとで考え出されたものであって、あらかじめ設定された位置とは異なる位置にオブジェクトを配置した場合でも、ゲーム画面上の表示が不自然なものとならないオブジェクトの配置方法を適用したゲームを提供することをその目的としている。
【課題を解決するための手段】
【0010】
上記課題を解決するため、本発明では、次の技術的手段を講じている。
【0011】
本発明の第1の側面によって提供されるプログラムは、コンピュータを、仮想ゲーム空間上における任意の場所である特定ポイントを設定する特定ポイント設定手段と、前記特定ポイント設定手段によって設定された前記特定ポイントの周辺に前記仮想ゲーム空間上に配置されるオブジェクトを出現させる出現ポイントを設定する出現ポイント設定手段と、前記特定ポイントと前記出現ポイントとを結ぶ線分である判定線分上に前記仮想ゲーム空間上に配置されている障害物がなく、かつ、前記出現ポイントが前記障害物と重ならない場合に前記出現ポイントに前記オブジェクトを出現させてもよいと判定する出現判定処理手段と、前記出現判定処理手段によって前記出現ポイントに前記オブジェクトを出現させてもよいと判定された場合に、前記出現ポイントに前記オブジェクトを出現させる出現処理手段として機能させる。
【0012】
なお、本発明におけるオブジェクトとは、仮想ゲーム空間上に配置される物体であり、キャラクタも含む概念である。また、本発明における障害物とは、仮想ゲーム空間上に配置されるものであり、オブジェクト(キャラクタも含む)の他、キャラクタを出現させたくないエリア、例えば、歩いては渡れない水辺、地面や壁、柱などの背景に含まれるものも含む概念である。
【0013】
本発明の第2の側面によって提供されるプログラムは、コンピュータを、仮想ゲーム空間上における任意の場所である特定ポイントを設定する特定ポイント設定手段と、前記特定ポイント設定手段によって設定された前記特定ポイントの周辺に前記仮想ゲーム空間上に配置されるオブジェクトを出現させる出現ポイントを設定する出現ポイント設定手段と、前記特定ポイントと前記出現ポイントとを結ぶ線分である判定線分上に前記仮想ゲーム空間上に配置されている障害物があり、かつ、前記出現ポイントが前記障害物と重ならない場合に前記出現ポイントに前記オブジェクトを出現させてもよいと判定する出現判定処理手段と、前記出現判定処理手段によって前記出現ポイントに前記オブジェクトを出現させてもよいと判定された場合に、前記出現ポイントに前記オブジェクトを出現させる出現処理手段として機能させる。
【0014】
本発明の好ましい実施の形態においては、前記コンピュータを、前記出現ポイントが閉鎖された空間に存在するか否かを判定する空間判定処理手段としてさらに機能させ、前記出現処理手段は、前記空間判定処理手段によって前記出現ポイントが閉鎖された空間に存在しないと判定された場合にのみ、前記出現ポイントに前記オブジェクトを出現させる。
【0015】
本発明の好ましい実施の形態においては、前記コンピュータを、前記出現ポイントに前記オブジェクトを出現させた場合における前記オブジェクトの所定部位から前記仮想ゲーム空間における高さ方向に延ばした所定長さの線分である高さ線分上に、前記オブジェクトが接地される接地面があるか否かを判定する高さ判定処理手段として更に機能させ、前記出現処理手段は、前記出現判定処理手段によって前記出現ポイントに前記オブジェクトを出現させてもよいと判定され、かつ、前記高さ判定処理手段によって前記高さ線分上に前記接地面があると判定された場合に、前記出現ポイントに前記オブジェクトを出現させる。
【0016】
本発明の好ましい実施の形態においては、前記出現ポイント設定手段は、前記出現処理手段が前記出現ポイントに前記オブジェクトを出現させない場合、他の出現ポイントを設定する。
【0017】
本発明の好ましい実施の形態においては、前記仮想ゲーム空間は三次元の空間であり、前記特定ポイント設定手段は、前記仮想ゲーム空間の高さ方向に直交する平面上に前記特定ポイントを設定し、前記出現ポイント設定手段は、前記平面上に前記出現ポイントを設定する。
【0018】
本発明の好ましい実施の形態においては、前記コンピュータを、前記出現ポイントに前記オブジェクトを出現させた場合に、前記オブジェクトが前記障害物と重なるか否かを判定する重なり判定手段として更に機能させ、前記出現処理手段は、さらに、前記重なり判定手段によって前記オブジェクトが前記障害物と重ならないと判定された場合にのみ、前記出現ポイントに前記オブジェクトを出現させる。
【0019】
本発明の好ましい実施の形態においては、前記出現処理手段は、前記重なり判定手段によって前記オブジェクトが前記障害物と重なると判定された場合に、当該障害物と重ならないように、前記出現ポイントから補正された位置に前記オブジェクトを出現させる。
【0020】
本発明の好ましい実施の形態においては、前記コンピュータを、前記出現ポイントに前記オブジェクトを出現させた場合に、前記オブジェクトが接地面に接地するか否かを判定する接地判定手段として更に機能させ、前記出現処理手段は、前記接地判定手段によって前記オブジェクトが前記接地面に接地しないと判定された場合に、当該接地面に接地するように、前記仮想ゲーム空間上の高さ方向で補正された位置に前記オブジェクトを出現させる。
【0021】
本発明の好ましい実施の形態においては、前記オブジェクトは、第1のキャラクタであり、前記特定ポイント設定手段は、第2のキャラクタの位置を取得して、その位置を前記特定ポイントとして設定する。
【0022】
本発明の好ましい実施の形態においては、前記コンピュータを、前記出現処理手段によって前記第1のキャラクタが出現させられたとき、当該第1のキャラクタに前記第2のキャラクタを倒す攻撃を行わせる攻撃処理手段として更に機能させる。
【0023】
本発明の好ましい実施の形態においては、前記コンピュータを、前記攻撃処理手段による前記第1のキャラクタからの攻撃を受けて倒れたとした場合の前記第2のキャラクタの頭の先と足の先とを結ぶ線分である第2の判定線分上に前記障害物があるか否かを判定する攻撃判定手段として更に機能させ、前記攻撃処理手段は、前記攻撃判定手段によって前記第2の判定線分上に前記障害物があると判定された場合に、前記倒す攻撃以外の攻撃を行わせる。
【0024】
本発明の好ましい実施の形態においては、前記コンピュータを、前記攻撃処理手段による前記第1のキャラクタからの攻撃を受けて倒れたとした場合の前記第2のキャラクタの頭の先と足の先とを結ぶ線分である第2の判定線分上に前記障害物があるか否かを判定する攻撃判定手段として更に機能させ、前記出現処理手段は、さらに、前記攻撃判定手段によって前記第2の判定線分上に前記障害物がないと判定された場合にのみ、前記出現ポイントに前記オブジェクトを出現させる。
【0025】
本発明の好ましい実施の形態においては、前記コンピュータを、前記攻撃判定手段によって前記第2の判定線分上に前記障害物がないと判定された場合に、前記第1のキャラクタからの攻撃を受けて倒れたとした場合の前記第2のキャラクタの所定部位から前記仮想ゲーム空間における高さ方向に延ばした所定長さの線分である第2の高さ線分上に接地面があるか否かを判定する第2の高さ判定処理手段として更に機能させ、前記出現処理手段は、さらに前記第2の高さ判定処理手段によって前記第2の高さ線分上に前記接地面があると判定された場合にのみ、前記出現ポイントに前記オブジェクトを出現させる。
【0026】
本発明の好ましい実施の形態においては、前記コンピュータを、前記攻撃判定手段によって前記第2の判定線分上に前記障害物がないと判定された場合に、前記第1のキャラクタからの攻撃を受けて倒れたとした場合の前記第2のキャラクタの所定部位から前記仮想ゲーム空間における高さ方向に延ばした所定長さの線分である第2の高さ線分上に接地面があるか否かを判定する第2の高さ判定処理手段として更に機能させ、前記攻撃処理手段は、前記第2の高さ判定処理手段によって前記第2の高さ線分上に前記接地面がないと判定された場合に、前記攻撃以外の攻撃を行わせる。
【0027】
本発明の第3の側面によって提供される記録媒体は、本発明の第1または第2の側面によって適用されるプログラムを記録したコンピュータ読み取り可能な記録媒体である。
【0028】
本発明の第4の側面によって提供されるゲーム装置は、本発明の第1または第2の側面によって適用されるプログラムを実行するゲーム装置である。
【発明の効果】
【0029】
本発明の第1の側面によれば、特定ポイントと出現ポイントとを結ぶ線分である判定線分上に障害物がなく、かつ、前記出現ポイントが前記障害物と重ならない場合に、当該出現ポイントにオブジェクトを出現させる。したがって、出現したオブジェクトが障害物に重なって配置されたり、特定ポイントと出現したオブジェクトとの間に障害物が配置されていたりすることを抑制することができる。
【0030】
本発明を敵キャラクタによるプレイヤキャラクタの近くへの瞬間移動に適用した場合、瞬間移動した敵キャラクタが障害物に重なって配置されたり、瞬間移動した敵キャラクタとプレイヤキャラクタとの間に障害物があるという不都合が生じることを抑制することができる。また、本発明をオブジェクトの移動処理に適用した場合、移動後のオブジェクトが障害物に重なって配置されることが抑制されるので、オブジェクトの移動経路をゲーム画像の各描画タイミングで決定することができる。これにより、あるオブジェクトが移動する経路をゲームを行うごとに毎回異ならせることができ、多様性のあるゲームシーンを演出することができる。
【0031】
また、本発明の第2の側面によれば、特定ポイントと出現ポイントとを結ぶ線分である判定線分上に障害物があり、かつ、前記出現ポイントが前記障害物と重ならない場合に、当該出現ポイントにオブジェクトを出現させる。したがって、特定ポイントに対して障害物の裏側にオブジェクトを出現させることができ、その際に出現したオブジェクトが障害物に重なって配置されることを抑制することができる。
【0032】
本発明のその他の特徴および利点は、添付図面を参照して以下に行う詳細な説明によって、より明らかとなろう。
【図面の簡単な説明】
【0033】
【図1】出現予定ポイントの設定と平面判定処理を説明するための図である。
【図2】出現ポイントをXZ平面上で補正してから敵キャラクタを出現させる場合を説明するための図である。
【図3】出現ポイントをY軸方向で補正してから敵キャラクタを出現させる場合を説明するための図である。
【図4】高さ判定処理を説明するための図である。
【図5】接地面の高さによって、出現させた敵キャラクタがプレイヤキャラクタを攻撃できるか否かを説明するための図である。
【図6】攻撃判定処理を説明するための図である。
【図7】本発明に係るゲーム装置を示す構成図である。
【図8】瞬間移動攻撃処理を説明するためのフローチャートである。
【発明を実施するための形態】
【0034】
以下、本発明の好ましい実施の形態として、本発明に係るゲームプログラムをゲームソフトに適用した場合について、添付図面を参照して具体的に説明する。以下の説明では、家庭用ゲーム装置(以下、「ゲーム装置」とする。)において、アクションゲームを進行している場合を例として説明する。
【0035】
本実施形態に係るアクションゲームは、三次元仮想ゲーム空間上でプレイヤキャラクタPCを敵キャラクタと戦わせ、プレイヤキャラクタPCが敵キャラクタを倒すことにより進行する。プレイヤキャラクタPCは、銃や剣等の武器を用いて、あるいは、パンチやキックなどの素手により、敵キャラクタを攻撃する。一方、敵キャラクタも、プレイヤキャラクタPCに対して攻撃を行う。敵キャラクタによる攻撃方法は敵キャラクタ毎にあらかじめ設定されており、武器を使って攻撃するものもいれば、素手で攻撃するものもいる。素手で攻撃してくる敵キャラクタには、プレイヤキャラクタPCの周辺に瞬間移動して、攻撃を行うものもいる。本発明は、このような瞬間移動する敵キャラクタの出現を、ゲーム画面上の表示が不自然なものとならないようにするものである。
【0036】
以下に、瞬間移動した敵キャラクタの出現場所を決定する方法について、図1ないし図6を参照して説明する。
【0037】
本実施形態において、ある敵キャラクタECは、所定の条件(例えば、プレイヤキャラクタPCが敵キャラクタECに対して銃による射撃を2回行う等)が満たされた場合、プレイヤキャラクタPCの周辺に瞬間移動して攻撃を仕掛ける。なお、所定の条件は、ゲーム内容に応じて適宜設定すればよく、例えば、敵キャラクタECが登場してから所定の時間が経過した場合としてもよいし、敵キャラクタECが所定以上のダメージを受けた場合としてもよい。
【0038】
このとき、瞬間移動した敵キャラクタECが出現する場所は、以下のように決定される。すなわち、まず、プレイヤキャラクタPCの周辺に、敵キャラクタECが出現する場所の候補である複数の場所(以下、「出現予定ポイント」という。)が設定される。次に、複数の出現予定ポイントの中から選択された1つの出現予定ポイントが、敵キャラクタECを出現させて攻撃させるのにふさわしい場所であるか否かが判定される。当該判定により、敵キャラクタECを出現させて攻撃させるのにふさわしい場所であると判定された場合、当該出現予定ポイントが敵キャラクタECを出現させる場所(以下、「出現ポイント」という。)とされる。一方、敵キャラクタECを出現させて攻撃させるのにふさわしい場所でないと判定された場合、複数の出現予定ポイントの中から他の出現予定ポイントが選択される。以下、出現ポイントが決定されるまで、出現予定ポイントの判定と選択が繰り返される。なお、設定された出現予定ポイントの中に、敵キャラクタECを出現させて攻撃させるのにふさわしい場所がないときは、敵キャラクタECを出現させてプレイヤキャラクタPCを倒さない攻撃を行わせるのにふさわしい場所を選択する。当該倒さない攻撃を行わせるのにふさわしい場所もないときは、敵キャラクタECに瞬間移動による攻撃を行わせない。なお、この場合に、改めて複数の出現予定ポイントを設定して、判定と選択を行うようにしてもよい。このとき、設定される出現予定ポイントは、前回設定された出現予定ポイントと異なる点とするために、位置をずらして設定されるようにしてもよいし、時間をずらしてプレイヤキャラクタPCの移動後に設定されるようにしてもよい。
【0039】
本実施形態に係るアクションゲームは、三次元仮想ゲーム空間上で進行する。当該三次元仮想ゲーム空間上には三次元直交座標系が設定されており、三次元仮想ゲーム空間の上下方向を示す軸がY軸とされ、水平を示す平面がXZ平面とされている。プレイヤキャラクタPCの位置(プレイヤキャラクタPCの腰のあたりの中心位置)を示す特定ポイントを含むXZ平面上において、特定ポイントから所定距離Lだけ離れ、互いに等距離にある4つの位置が、出現予定ポイントとして設定される(図1のYP1〜YP4参照)。なお、出現予定ポイント(出現ポイント)は、敵キャラクタECを出現させたときに、敵キャラクタECの位置(敵キャラクタECの腰のあたりの中心位置)となる点である(なお、出現予定ポイント(出現ポイント)と敵キャラクタECの位置を示す点とを、Y座標の異なる別の点としてもよい。また、特定ポイントとプレイヤキャラクタPCの位置を示す点とを、Y座標の異なる別の点としてもよい。)。また、所定距離Lは、出現予定ポイントに出現した敵キャラクタECがプレイヤキャラクタPCを攻撃できる距離に応じて設定される。
【0040】
本実施形態では、4つの出現予定ポイントが設定されているが、出現予定ポイントの設定数は限定されない。また、各出現予定ポイントが特定ポイントから等距離であり、各出現予定ポイント間が等間隔となるように設定されているが、これに限られない。各出現予定ポイントと特定ポイントとの距離は一定でなくてもよいし、各出現予定ポイント間の間隔をどのように設定してもよい。
【0041】
敵キャラクタECを出現させてプレイヤキャラクタPCを攻撃させるのにふさわしい場所であるか否かの判定は、移動判定処理および攻撃判定処理によって行われる。移動判定処理は、選択された出現予定ポイントが敵キャラクタECを出現させるのにふさわしい場所であるか否かを判定するものであり、平面判定処理と高さ判定処理とからなる。攻撃判定処理は、選択された出現予定ポイントに出現させた敵キャラクタECがプレイヤキャラクタPCに対して倒す攻撃を行わせるのにふさわしいか否かを判定するものであり、攻撃時平面判定処理と攻撃時高さ判定処理とからなる。
【0042】
選択された出現予定ポイントに敵キャラクタECを出現させたときに、敵キャラクタECが三次元仮想ゲーム空間上に配置された障害物(例えば、他のオブジェクトや地面、壁、柱など)に重なって表示される場合、不自然な映像となる。また、選択された出現予定ポイントに敵キャラクタECを出現させたときに、敵キャラクタECとプレイヤキャラクタPCとの間に障害物が配置されている場合、瞬間移動後の敵キャラクタECがプレイヤキャラクタPCに対して攻撃することができない。平面判定処理は、これらの不都合を排除するための判定処理である。
【0043】
図1は、出現予定ポイントの設定と平面判定処理を説明するための図である。
【0044】
同図は、三次元仮想ゲーム空間を上方から見たときの図である。同図右下の矢印は、当該三次元仮想ゲーム空間上に設定されている三次元直交座標系におけるX軸、Y軸、Z軸を示しており、Y軸は手前側が正の方向であることを示している(以下の図においても同様)。出現予定ポイントYP1〜YP4(なお、特定しない場合は、「出現予定ポイントYP」という。)は、プレイヤキャラクタPCの位置を示す特定ポイントTPを含むXZ平面上で、特定ポイントTPから所定距離Lだけ離れた位置に等間隔で設定される。すなわち、特定ポイントTPの座標を(X0,Y0,Z0)とすると、4つの出現予定ポイントはYP1(X0,Y0,Z0+L)、YP2(X0−L,Y0,Z0)、YP3(X0,Y0,Z0−L)、YP4(X0+L,Y0,Z0)として設定される。
【0045】
平面判定処理は、特定ポイントTPと出現予定ポイントYPとを結ぶ線分である平面線分M上に障害物があるか否かを判定する処理である。なお、「平面判定処理」が本発明の「出現判定処理」に相当し、「平面線分M」が本発明の「判定線分」に相当する。平面線分M上に障害物がある場合、出現予定ポイントYPに敵キャラクタECを出現させたとき(なお、同図においては、敵キャラクタECが配置される前の状態なので、敵キャラクタECを破線で表示している。以下の図においても同様である。)に敵キャラクタECが当該障害物に重なって表示されるか、敵キャラクタECとプレイヤキャラクタPCとの間に当該障害物が配置されることになる。したがって、当該出現予定ポイントYPが敵キャラクタECを出現させるのにふさわしい場所でないと判定される。この場合、次の出現予定ポイントYPが選択され、平面判定処理が行われる。一方、平面線分M上に障害物がない場合、後述する高さ判定処理が行われる。なお、平面線分M上に障害物がない場合、高さ判定処理を行うことなく、後述する攻撃判定処理を行うようにしてもよい。
【0046】
同図の場合、まず、出現予定ポイントYP1が選択されて、平面判定処理が行われる。特定ポイントTPと出現予定ポイントYP1とを結ぶ平面線分M1上にオブジェクトOBJ1があり、出現予定ポイントYP1に敵キャラクタECを出現させたときに敵キャラクタECが当該オブジェクトOBJ1の中に出現することになるので、当該出現予定ポイントYP1は敵キャラクタECを出現させるのにふさわしい場所でないと判定される。次に、出現予定ポイントYP2が選択されて、平面判定処理が行われる。特定ポイントTPと出現予定ポイントYP2とを結ぶ平面線分M2上にオブジェクトOBJ2があり、出現予定ポイントYP2に敵キャラクタECを出現させたときに敵キャラクタECとプレイヤキャラクタPCとの間に当該オブジェクトOBJ2が配置されることになるので、当該出現予定ポイントYP2は敵キャラクタECを出現させるのにふさわしい場所でないと判定される。次に、出現予定ポイントYP3が選択されて、平面判定処理が行われる。特定ポイントTPと出現予定ポイントYP3とを結ぶ平面線分M3上には障害物がないので、高さ判定処理が行われる。なお、出現予定ポイントの選択の順番は、これに限定されない。
【0047】
なお、平面線分M上に障害物がない場合でも、敵キャラクタECを出現させたときに敵キャラクタECが障害物に重なって表示されることになる場合がある。この場合、本実施形態では、敵キャラクタECが障害物に重ならないようにするために、出現ポイントをXZ平面上で補正してから敵キャラクタECを出現させる。この敵キャラクタECが障害物に重なって表示されることになるか否かの判定は、いわゆるアタリ判定によって行われる。
【0048】
図2は、出現ポイントをXZ平面上で補正してから敵キャラクタECを出現させる場合を説明するための図である。
【0049】
同図(a)は、出現予定ポイントYPが出現ポイントSPに決定された状態を示している。同図(a)においては、特定ポイントTP(図示しない)と出現予定ポイントYPとを結ぶ平面線分M上に障害物がないので、平面判定処理において当該出現予定ポイントYPは敵キャラクタECを出現させるのにふさわしい場所であると判定される。高さ判定処理などの他の判定処理でも敵キャラクタECを出現させるのにふさわしい場所であると判定された場合、当該出現予定ポイントYPは出現ポイントSPに決定される。しかし、出現ポイントSPに敵キャラクタECを出現させた場合、敵キャラクタECがオブジェクトOBJに重なって表示されることになる。
【0050】
同図(b)は、出現ポイントSPをXZ平面上で補正してから敵キャラクタECを出現させている状態を示している。同図(a)の状態の場合、そのまま出現ポイントSPに敵キャラクタECを出現させると、敵キャラクタECがオブジェクトOBJに重なって表示されることになる。この場合、敵キャラクタECがオブジェクトOBJに重ならないように、出現ポイントSPを同図における右方向に補正して(同図(b)に白丸で示す元の出現ポイント(SP)から、黒丸で示す出現ポイントSPに移動させる)から、敵キャラクタECを出現させる。これにより、敵キャラクタECは、オブジェクトOBJに重ならないように出現することになる。かかる出現ポイントSPの補正は、前述したとおりXZ平面上だけではなく、XY平面上においても同様に適用することができる。
【0051】
なお、出現ポイントSPをXZ平面上で補正することにより敵キャラクタECが障害物に重ならないようにする代わりに、出現予定ポイントYPに敵キャラクタECを出現させたときに敵キャラクタECが障害物に重なって表示されるか否かを判定し、重なって表示される場合は敵キャラクタECを出現させるのにふさわしい場所でないとして、次の出現予定ポイントYPが選択されるようにしてもよい。また、XZ平面に限らずXY平面やYZ平面上においても敵キャラクタECが障害物に重ならないかアタリ判定を行って、重なる場合(例えば、配置された敵キャラクタECの頭が障害物に埋もれ込んでしまうような場合)には敵キャラクタECを出現させるのにふさわしい場所でないとして、次の出現予定ポイントYPが選択されるようにしてもよい。
【0052】
本実施形態において出現ポイントSPのY座標は特定ポイントTPのY座標と同じであるが、出現ポイントSPに敵キャラクタECを配置した場合に敵キャラクタECが接地面に接地するとは限らない。例えば、出現ポイントSPの直下の接地面が特定ポイントTPの直下の接地面より高い場合、出現ポイントSPに敵キャラクタECを配置したとき、敵キャラクタECは接地面に埋もれた状態で出現することになる。逆に、出現ポイントSPの直下の接地面が特定ポイントTPの直下の接地面より低い場合、出現ポイントSPに敵キャラクタECを配置したとき、敵キャラクタECは接地面から浮き上がった状態で出現することになる。これらの不都合を排除するため、本実施形態では、敵キャラクタECが接地面に接地する状態となるように、出現ポイントSPをY軸方向で補正してから敵キャラクタECを出現させる。なお、出現ポイントSPに敵キャラクタECを配置したときに敵キャラクタECが接地面に接地するか否かの判定が、本発明の「接地判定」に相当する。
【0053】
図3は、出現ポイントSPをY軸方向で補正してから敵キャラクタECを出現させる場合を説明するための図である。なお、同図(a)の右上の三次元直交座標系の各軸を示す記載において、Z軸は手前側が負の方向であることを示している。
【0054】
同図(a)は、出現ポイントSPの直下の接地面GNDが敵キャラクタECの脚の先端(足の裏)より高い状態を示している。同図(a)の状態において敵キャラクタECを出現させた場合、敵キャラクタECの体が接地面GNDに埋もれた状態で表示されることになる。
【0055】
同図(b)は、出現ポイントSPをY軸方向で補正してから敵キャラクタECを出現させている状態を示している。同図(a)の状態の場合、そのまま出現ポイントSPに敵キャラクタECを出現させると、敵キャラクタECの体が接地面GNDに埋もれた状態で表示されることになる。この場合、敵キャラクタECの、例えば足が接地面GNDに接地するように、出現ポイントSPを同図における上方向に補正して(同図(b)に白丸で示す元の出現ポイント(SP)から、黒丸で示す出現ポイントSPに移動させる)から、敵キャラクタECを出現させる。この処理により、敵キャラクタECは、接地面GNDに接地するように出現することになる。当該処理(敵キャラクタECが接地面GNDに接地するように、出現ポイントSPをY軸方向で補正する処理)を、以下では、接地処理という。
【0056】
しかし、出現ポイントSPの直下の接地面が特定ポイントTPの直下の接地面と比べて高すぎる場合や低すぎる場合、敵キャラクタECがプレイヤキャラクタPCに対して高すぎる位置や低すぎる位置に出現することになり、瞬間移動後の敵キャラクタECがプレイヤキャラクタPCに対して攻撃することができない。高さ判定処理は、この不都合を排除するための判定処理であり、平面判定処理において当該出現予定ポイントYPが敵キャラクタECを出現させるのにふさわしい場所であると判定された場合にのみ行われる。
【0057】
図4は、高さ判定処理を説明するための図である。
【0058】
同図は、三次元仮想ゲーム空間を当該三次元仮想ゲーム空間上に設定されている三次元直交座標系におけるZ軸の負の方向から見たときの図である。高さ判定処理は、出現予定ポイントYPから三次元仮想ゲーム空間上での下方向(Y軸の負の方向)に延ばした所定の長さHの線分である高さ線分N上に接地面があるか否かを判定する処理である。高さ線分N上に接地面がある場合(同図において、接地面が接地面GND1または接地面GND2の場合)、接地処理によって敵キャラクタECの出現ポイントSPの高さ(Y軸方向の位置)が変わっても敵キャラクタECがプレイヤキャラクタPCに対して攻撃をすることができるとして、当該出現予定ポイントYPが敵キャラクタECを出現させるのにふさわしい場所であると判定される。
【0059】
図5(a)は、図4における接地面が接地面GND1の場合に出現させた敵キャラクタECを示している。同図(a)において、プレイヤキャラクタPCは図4における接地面GND2の高さの接地面に接地しており、敵キャラクタECは接地面GND1に接地している。したがって、敵キャラクタECの攻撃がプレイヤキャラクタPCに届くので(同図(a)では、敵キャラクタECのパンチがプレイヤキャラクタPCの頭にヒットしている。)、当該出現予定ポイントYPは敵キャラクタECを出現させるのにふさわしい場所であると判定される。
【0060】
一方、高さ線分N上に接地面がない場合(図4において、接地面が接地面GND3の場合参照)、接地処理によって敵キャラクタECの出現ポイントSPの高さ(Y軸方向の位置)が変わると敵キャラクタECがプレイヤキャラクタPCに対して攻撃をすることができないとして、当該出現予定ポイントYPが敵キャラクタECを出現させるのにふさわしい場所でないと判定される。この場合、次の出現予定ポイントYPが選択され、平面判定処理が行われる。
【0061】
図5(b)は、図4における接地面が接地面GND3の場合に出現させた敵キャラクタECを示している。同図(b)において、プレイヤキャラクタPCは図4における接地面GND2の高さの接地面に接地しており、敵キャラクタECは接地面GND3に接地している。したがって、敵キャラクタECの攻撃がプレイヤキャラクタPCに届かないので(同図(b)では、敵キャラクタECのパンチがプレイヤキャラクタPCの体に届いていない。)、当該出現予定ポイントYPは敵キャラクタECを出現させるのにふさわしい場所でないと判定される。
【0062】
なお、高さ線分Nの開始点および長さHは、高さ線分N上に接地面がある場合に敵キャラクタECがプレイヤキャラクタPCに対して攻撃をすることができるように、設定される。したがって、敵キャラクタECが高い位置からでもプレイヤキャラクタPCに対する攻撃を行える場合、高さ線分Nの開始点を高い位置としてもよい。例えば、敵キャラクタECがキックによる攻撃を行う場合、敵キャラクタECの脚がプレイヤキャラクタPCの頭に届けば攻撃できるので、高さ線分Nの開始点を敵キャラクタECの顔の位置とすることができる。また、敵キャラクタECが低い位置からでもプレイヤキャラクタPCに対する攻撃を行える場合、高さ線分Nの長さHを長くしてもよい(あるいは、開始点を低い位置としてもよい)。例えば、敵キャラクタECが槍による攻撃を行う場合、槍の先がプレイヤキャラクタPCの脚から頭のうちのどこかに届けば攻撃できるので、高さ線分Nの開始点を敵キャラクタECの頭の先とし、高さ線分Nの長さHを敵キャラクタECの身長の2倍程度とすることができる。
【0063】
なお、高さ線分Nの長さHが長い場合、接地面が画面上に表示されているよりも低い位置にあっても、高さ判定処理において、出現予定ポイントYPが敵キャラクタECを出現させるのにふさわしい場所であると判定される場合がある。この場合、接地処理によって敵キャラクタECが接地面に接地するように配置されると、出現した敵キャラクタECが画面上に表示されない場合がある。すなわち、接地面が画面最下端より敵キャラクタECの身長分以上に低い場合、敵キャラクタECは画面上に表示されなくなる。これを防ぐため、本実施形態では、高さ線分Nの長さHを、高さ線分Nの開始点から画面最下端までの長さ以下となるように設定している。
【0064】
なお、敵キャラクタECがこうもりのように足で天井にぶら下がる場合、高さ線分NをY軸の正の方向に延ばした線分とし、接地面の代わりに天井に足が接するように接地処理を行うようにすればよい。
【0065】
平面判定処理および高さ判定処理で当該出現予定ポイントYPが敵キャラクタECを出現させるのにふさわしい場所であると判定された場合(すなわち、移動判定処理で当該出現予定ポイントYPが敵キャラクタECを出現させるのにふさわしい場所であると判定された場合)、攻撃判定処理が行われる。
【0066】
敵キャラクタECは、瞬間移動によってプレイヤキャラクタPCの周辺に出現した後、プレイヤキャラクタPCを攻撃する。攻撃を受けたプレイヤキャラクタPCは、接地面に倒れる場合がある。しかし、プレイヤキャラクタPCが倒れる方向に壁があった場合、倒れたプレイヤキャラクタPCは当該壁に埋もれて表示されることになり、不自然な映像となる。また、壁に埋もれた状態とならないようにプレイヤキャラクタPCの倒れる位置を補正すると、敵キャラクタECの攻撃を受けて倒れたにしては不自然な位置に倒れることとなる。また、プレイヤキャラクタPCが倒れる位置の接地面が攻撃を受けた位置の接地面と比べて高すぎる場合や低すぎる場合、プレイヤキャラクタPCが接地処理によって高すぎる位置や低すぎる位置に倒れることになり、不自然なゲーム画像となる。攻撃判定処理はこれらの不都合を排除するための判定処理であり、攻撃時平面判定処理が前者の不都合(倒れたプレイヤキャラクタPCの水平方向の不自然さ)を排除し、攻撃時高さ判定処理が後者の不都合(倒れたプレイヤキャラクタPCの高さ方向の不自然さ)を排除する。
【0067】
図6は、攻撃判定処理を説明するための図である。同図(a)は、攻撃時平面判定処理を説明するためのもので、三次元仮想ゲーム空間を上方(Y軸の正の方向)から見たときの図である。同図(b)は、攻撃時高さ判定処理を説明するためのもので、三次元仮想ゲーム空間を三次元直交座標系におけるZ軸の負の方向から見たときの図である。同図においては、瞬間移動により出現した敵キャラクタECがプレイヤキャラクタPCを攻撃している状態を示している。当該攻撃によって、プレイヤキャラクタPCは、後方(X軸の負の方向)に倒れて(同図(b)の破線矢印参照)、プレイヤキャラクタPC’(同図において破線で記載されている。)として出現することになる。なお、同図(b)においては、プレイヤキャラクタPC’は体が接地した状態で出現することになるが、攻撃時高さ判定処理を説明するために、接地処理される前の状態を記載している。
【0068】
攻撃時平面判定処理は、倒れたプレイヤキャラクタPC’の頭の先と足の先とを結ぶ線分である平面線分M’(長さはL’)上に障害物があるか否かを判定する処理である(同図(a)参照)。なお、倒れたプレイヤキャラクタPC’は、瞬間移動によって出現予定ポイントYPに敵キャラクタECが出現してプレイヤキャラクタPCを攻撃したとする場合に、出現することになる当該攻撃を受けて倒れたプレイヤキャラクタPCを表している。また、「攻撃時平面判定処理」が本発明の「攻撃判定処理」に相当し、「平面線分M’」が本発明の「第2の判定線分」に相当する。平面線分M’上に障害物がある場合、出現予定ポイントYPに敵キャラクタECを出現させて攻撃させたとき、攻撃によって倒れたプレイヤキャラクタPC’が当該障害物に重なって表示されることになるとして、当該出現予定ポイントYPでの当該攻撃(プレイヤキャラクタPCを倒す攻撃)がふさわしくないと判定される。この場合、次の出現予定ポイントYPが選択されて平面判定処理が行われる。なお、平面線分M’上に障害物がある場合に、次の出現予定ポイントYPが選択されるのではなく、敵キャラクタECにプレイヤキャラクタPCを倒さない攻撃を行わせるようにしてもよい。一方、平面線分M’上に障害物がない場合、当該出現予定ポイントYPでのプレイヤキャラクタPCを倒す攻撃がふさわしい(問題ない)と判定され、後述する攻撃時高さ判定処理が行われる。なお、平面線分M’上に障害物がない場合、攻撃時高さ判定処理を行うことなく、出現予定ポイントYPに敵キャラクタECを出現させて攻撃させるようにしてもよい。
【0069】
同図(a)の場合、平面線分M’上に壁WALがあるので、当該出現予定ポイントYPでのプレイヤキャラクタPCを倒す攻撃がふさわしくないと判定され、次の出現予定ポイントYPが選択されて平面判定処理が行われる。
【0070】
攻撃時高さ判定処理は、倒れたプレイヤキャラクタPC’の所定の部位(例えば、頭の中心点)から三次元仮想ゲーム空間上での下方向(Y軸の負の方向)に延ばした所定の長さH’の線分である高さ線分N’上に接地面があるか否かを判定する処理である(同図(b)参照)。なお、倒れたプレイヤキャラクタPC’の所定の部位は、倒される前のプレイヤキャラクタPCの接地していた接地面にプレイヤキャラクタPCが倒れたとした場合の所定の部位を意味している。また、「攻撃時高さ判定処理」が本発明の「第2の判定処理」に相当し、「高さ線分N’」が本発明の「第2の高さ線分」に相当する。高さ線分N’上に接地面がある場合、倒れたプレイヤキャラクタPC’の出現位置の高さが接地処理によって変わったとしても、あまり不自然でないので、当該出現予定ポイントYPでの当該攻撃(プレイヤキャラクタPCを倒す攻撃)がふさわしい(問題ない)と判定される。この場合、出現予定ポイントYPに敵キャラクタECを出現させて当該攻撃を行わせる。一方、高さ線分N’上に接地面がない場合、倒れたプレイヤキャラクタPC’の出現位置の高さが接地処理によって変わると不自然なので、当該出現予定ポイントYPでの当該攻撃(プレイヤキャラクタPCを倒す攻撃)がふさわしくないと判定される。この場合、次の出現予定ポイントYPが選択されて平面判定処理が行われる。なお、高さ線分N’上に接地面がない場合に、次の出現予定ポイントYPが選択されるのではなく、敵キャラクタECにプレイヤキャラクタPCを倒さない攻撃を行わせるようにしてもよい。
【0071】
同図(b)において壁WALがない場合(壁WALがある場合は、攻撃時高さ判定処理の前に攻撃時平面判定処理によってプレイヤキャラクタPCを倒す攻撃がふさわしくないと判定される。)、高さ線分N’上に接地面GND5があるので、プレイヤキャラクタPCを倒す攻撃がふさわしい(問題ない)と判定され、敵キャラクタECに当該攻撃を行わせる。
【0072】
すべての出現予定ポイントYPについて、敵キャラクタECを出現させてプレイヤキャラクタPCを倒す攻撃を行わせるのにふさわしくないと判定された場合、設定された出現予定ポイントYPが再度取得され、順に移動判定処理が行われる。選択された出現予定ポイントYPが敵キャラクタECを出現させるのにふさわしい場所であると判定された場合、攻撃判定処理を行うことなく、当該出現予定ポイントYPに敵キャラクタECを出現させ、プレイヤキャラクタPCを倒さない攻撃を行わせるようにする。一方、すべての出現予定ポイントYPについて、移動判定処理で敵キャラクタECを出現させるのにふさわしくないと判定された場合、敵キャラクタECを瞬間移動させない。なお、再度の移動判定処理を行うことなく、敵キャラクタECを瞬間移動させないようにしてもよい。また、新たな出現予定ポイントYPを設定するようにしてもよい。
【0073】
なお、敵キャラクタECが瞬間移動後に行う攻撃(プレイヤキャラクタPCを倒す攻撃およびプレイヤキャラクタPCを倒さない攻撃どちらも)は、予め定められた攻撃であってもよいし、敵キャラクタECの出現した高さ位置に応じて変化させるようにしてもよい。例えば、出現した敵キャラクタECの足の高さ位置がプレイヤキャラクタPCの頭と同じくらいの高さ位置となる場合には敵キャラクタECがプレイヤキャラクタPCの頭を蹴る攻撃を行い、出現した敵キャラクタECの腕の高さ位置がプレイヤキャラクタPCの足と同じくらいの高さ位置となる場合には敵キャラクタECがプレイヤキャラクタPCの足をつかんで倒す攻撃を行うようにしてもよい。この場合、敵キャラクタECの攻撃方法が多様化するので、プレイヤを飽きさせない。
【0074】
なお、本実施形態では、攻撃時高さ判定処理が攻撃時平面判定処理においてプレイヤキャラクタPCを倒す攻撃がふさわしい(問題ない)と判定された場合に行われるが、移動判定処理で出現予定ポイントYPが敵キャラクタECを出現させるのにふさわしい場所であると判定された場合に攻撃時平面判定処理を行うことなく、攻撃時高さ判定処理を行うようにしてもよい。すなわち、攻撃判定処理として、攻撃時平面判定処理と攻撃時高さ判定処理の両方を行うようにしてもよいし、いずれか一方のみを行うようにしてもよい。また、攻撃判定処理を行わずに、移動判定処理のみを行うようにしてもよい。
【0075】
次に、本実施形態のハード構成について説明する。
【0076】
図7は、本発明に係るゲーム装置を示す構成図である。ゲーム装置1は、本体11、および操作コントローラ12を備えている。操作コントローラ12は、専用のケーブルによって本体11に接続されている。本体11には、モニタ13が専用のケーブルによって接続される。また、本体11には、ゲームプログラムやゲームデータが記録されているディスク14が装着され、また、必要に応じてゲームデータを保存するためのメモリカード15も装着される。
【0077】
本体11は、制御部111、描画処理部112、音声処理部113、ディスクドライブユニット114、メモリカード接続ユニット115、I/Oインターフェース部116、および通信処理部117を備える。制御部111には、描画処理部112、音声処理部113、I/Oインターフェース部116、および通信処理部117が接続されている。また、I/Oインターフェース部116には、ディスクドライブユニット114、メモリカード接続ユニット115、操作コントローラ12、およびモニタ13が接続されている。
【0078】
ゲーム装置1では、上記アクションゲームのソフトウェアが記録されたディスク14がディスクドライブユニット114に装着され、このディスクドライブユニット114からディスク14内のゲームプログラムおよびゲームデータが制御部111内のRAM111c(後述)に読み込まれる。読み込まれたゲームプログラムがCPU111a(後述)によって実行されることにより、プレイヤはゲーム内容を楽しむことができる。プレイヤは、操作コントローラ12の操作部材12a〜12c(後述)を操作することによりプレイヤキャラクタPCを操作し、ゲームを進行させることができる。
【0079】
ディスク14内のゲームデータには、プレイヤキャラクタPCや敵キャラクタECなどのキャラクタデータ、キャラクタや背景などの画像データ、効果音などの音声データ、および、ゲーム進行や描画の際に参照される各種テーブルなどが含まれる。
【0080】
制御部111は、本体11の全体動作を制御するマイクロコンピュータを有している。マイクロコンピュータは、CPU111a、ROM111b、およびRAM111c等からなり、各部は、それぞれバスラインで接続されている。
【0081】
CPU111aは、ディスクドライブユニット114によってディスク14からRAM111cに読み込まれるゲームプログラムを実行することより、ゲーム進行を統括的に制御する。より具体的には、操作コントローラ12からプレイヤが操作することによる操作信号が入力されると、CPU111aは、ゲームプログラムにしたがってその操作信号に対する所定のゲーム進行処理を行う。CPU111aは、その処理結果をモニタ13に例えば三次元ゲーム空間を表現する二次元画像(以下、ゲーム画像という。)によって表示するとともに、モニタ13のスピーカ13a(後述)から効果音などによって出力する。
【0082】
本実施形態において、CPU111aは、敵キャラクタECが瞬間移動するための所定の条件が満たされたか否かの判定処理を行う。また、CPU111aは、瞬間移動した敵キャラクタECの出現ポイントSPの決定処理を行う。すなわち、特定ポイントTPに基づいて複数の出現予定ポイントYPを設定する処理、平面判定処理、高さ判定処理、攻撃時平面判定処理、および攻撃時高さ判定処理を行って、瞬間移動した敵キャラクタECの出現ポイントSPを決定する。また、CPU111aは、敵キャラクタECを出現ポイントSPに瞬間移動させる処理、および、瞬間移動した敵キャラクタECにプレイヤキャラクタPCを攻撃させる処理を行う。
【0083】
ROM111bには、ディスクローディング機能等のゲーム装置1の基本的な機能やディスク14に記録されたゲームプログラムおよびゲームデータを読み出す手順等を示す基本プログラムが記憶されている。CPU111aは、ディスクドライブユニット114にディスク14が装着されると、ROM111bの基本プログラムにしたがってディスクドライブユニット114を動作させ、ディスク14からゲームプログラムおよびゲームデータをRAM111cに読み込み、ゲーム開始状態に設定する。
【0084】
RAM111cは、ディスクドライブユニット114によってディスク14から読み込まれたゲームプログラムやゲームデータが格納されるエリアと、CPU111aがゲームプログラムを実行するためのワークエリアとを提供するものである。
【0085】
上記ゲームプログラムは、複数のプログラムが組み合わされて構成されており、例えばモニタ13に表示されているプレイヤキャラクタPCの動作を操作コントローラ12からのプレイヤの操作信号に基づいて制御するゲーム進行プログラムやモニタ13に表示すべきゲーム画像を制御するグラフィック制御プログラム等によって構成されている。
【0086】
CPU111aは、操作コントローラ12からのプレイヤの操作信号に基づき、必要に応じてディスク14からゲームプログラムや画像データ等をRAM111cに読み込み、これらのデータを処理したりゲームプログラムを実行したりすることにより、モニタ13に表示すべきゲーム画像の内容を決定する。
【0087】
描画処理部112は、描画処理に必要な各種の演算処理を行うものである。CPU111aは、例えば、1/60秒毎に、描画処理部112に描画指令を出力する。このとき、CPU111aは、モニタ13に表示すべき画像を決定し、その画像の描画に必要な画像データ(キャラクタなどのオブジェクトのポリゴンデータ、および背景データ)、および光源データ等をRAM111cから読み出して描画処理部112に供給する。また、CPU111aは、各キャラクタの位置データや、操作コントローラ12から入力される操作信号を描画処理部112に供給する。
【0088】
描画処理部112は、CPU111aから供給される画像データ等および操作信号に基づいて、描画に必要なデータ(各オブジェクトおよび背景の位置関係、モニタ13の画面上における各オブジェクトを構成するポリゴンの座標、各ポリゴンに対応するテクスチャ、並びに各ポリゴンの反射特性等のデータ)を演算し、その演算結果に基づいて描画処理部112内のVRAM(図示せず)に1コマ(1フレーム)の表示画面の画像データを作成する。作成された表示画面の画像データは、例えば、1/60秒毎に映像信号としてモニタ13に出力されて表示される。
【0089】
音声処理部113は、効果音等の音声を発生させる処理に必要な各種の演算処理を行うものである。CPU111aは、モニタ13のスピーカ13aから出力すべき効果音若しくはBGMの音響内容を決定すると、音声処理部113に音声指令を出力する。音声処理部113は、CPU111aからの音声指令に基づき、RAM111cから効果音もしくはBGMの音声データを読み出し、所定の加工処理とD/A変換処理とを施した後、スピーカ13aに出力する。
【0090】
ディスクドライブユニット114は、CPU111aからのローディング指令(ローディングすべきゲームプログラムとゲームデータを指定した読出指令)に基づき、ディスク14に記録されたゲームプログラムやゲームデータを読み出すものである。
【0091】
メモリカード接続ユニット115は、ゲーム進行に関する情報をメモリカード15に書き込んだり、読み出したりするためのユニットである。CPU111aは、ゲーム進行中やゲーム終了時にプレイヤから「データのセーブ」が指令されると、メモリカード接続ユニット115を介してメモリカード15に、ゲーム進行に関する情報(この情報には、例えば、プレイヤが設定したゲームキャラクタの種類、獲得したポイントやアイテムなどの各種の特典などの情報が含まれる。)を記憶する。また、メモリカード15に記憶されたゲーム進行に関する情報は、ゲーム開始前にRAM111cに読み出される。
【0092】
I/Oインターフェース部116は、ディスクドライブユニット114やメモリカード接続ユニット115によって読み出されたゲームプログラムやゲームデータ、および操作コントローラ12からの操作信号等を制御部111に伝送したり、制御部111、描画処理部112や音声処理部113からの映像信号や音声信号等をモニタ13に伝送したりするものである。
【0093】
通信処理部117は、ネットワーク回線2を介して他のゲーム装置1と通信を行う場合に、データの送信および受信を行うための制御を行うものである。通信処理部117は、操作コントローラ12から入力される操作信号やCPU111aから出力される信号をネットワーク回線2を介して他のゲーム装置1に送信し、ネットワーク回線2を介して他のゲーム装置1から送信される信号を受信してCPU111aに入力する。
【0094】
操作コントローラ12は、キャラクタを動作させたり、ゲームに関する各種の設定を行ったりするためにプレイヤによって操作されるものであり、複数のボタン12aと左レバー12bと右レバー12cとを有する。プレイヤによって操作コントローラ12が操作されると、その操作信号が制御部111に伝送され、モニタ13に表示されたキャラクタが所定の動作を行う。所定の動作としては、例えば、走る、しゃがむ、ジャンプする等の移動動作や武器を使用して相手を攻撃する攻撃動作がある。移動動作は、主に左レバー12bによって操作され、攻撃動作は主に複数のボタン12aおよび右レバー12cによって操作される。
【0095】
モニタ13は、本体11から送られてきた映像信号に応じてゲーム進行状態を示す表示画面を映し出したり、本体11から送られてきた音声信号に応じてスピーカ13aから効果音等の音声を出力させたりするための装置である。モニタ13は、映像信号や音声信号を入力するための外部入力端子を備えた、例えばテレビジョン受像機によって構成されている。
【0096】
ディスク14は、例えばDVD−ROM又はCD−ROM等の光ディスクである。ディスク14には、ゲームプログラムやそのゲームプログラムの実行に必要な種々のデータや画像データが記録されている。メモリカード15は、例えばフラッシュメモリ等のデータの書き換えが可能な不揮発性の記録媒体である。RAM111cのワークエリアの記録は、ゲーム装置本体11の電源を切ると消滅してしまうことから、メモリカード15は、RAM111cのワークエリアの記録のうち消滅させずに残しておくべきゲーム進行に関する情報を記録する。
【0097】
ゲーム装置1は、ネットワークアダプタ16を介して、インターネット回線などのネットワーク回線2に接続することができる。この場合、ネットワーク回線2を介して、複数のゲーム装置1間でゲームを行うこともできる(いわゆる「オンラインゲーム」)。本実施形態では、ゲーム装置1単独で行うゲームについて説明しているが、このようなオンラインゲームでも本発明を適用することができる。
【0098】
次に、敵キャラクタECの瞬間移動後の攻撃の処理(以下、「瞬間移動攻撃処理」という。)について、図8を参照して説明する。
【0099】
図8は、ゲーム装置1のCPU111aで行われる、瞬間移動攻撃処理を説明するためのフローチャートである。瞬間移動攻撃処理は、敵キャラクタECが瞬間移動するための所定の条件が満たされたときに開始される。
【0100】
まず、特定ポイントTPが取得される(S1)。すなわち、プレイヤキャラクタPCの現在位置の座標が取得される。次に、当該特定ポイントTPに基づいて、複数の出現予定ポイントYPが設定される(S2)。本実施形態では、特定ポイントTPを含むXZ平面上において、特定ポイントTPから所定距離Lだけ離れ、互いに等距離にある4つの位置が、出現予定ポイントYP1〜YP4として設定される(図1参照)。次に、出現予定ポイントYPが残っているか否かが判別される(S3)。本実施形態では、設定された4つの出現予定ポイントYP1〜YP4の中から1つが選択され、以下に説明する各判定が行われる。いずれかの判定条件が満たされない場合(すなわち、敵キャラクタECを出現させることが不適切であると判定された場合)、当該選択された出現予定ポイントYPは選択肢の中から排除される。ステップS3は、選択肢としての出現予定ポイントYPが残っているか否かを判別する処理である。
【0101】
出現予定ポイントYPが残っている場合(S3:YES)、出現予定ポイントYPが選択される(S4)。本実施形態では、YP1から順に反時計回りに選択される(図1参照)。次に、当該出現予定ポイントYPが平面判定条件を満たすか否かが判別される(S5)。平面判定条件は特定ポイントTPと出現予定ポイントYPとを結ぶ線分である平面線分M上に障害物がないという条件であり、当該判別処理が上述した平面判定処理に対応する(図1参照)。平面判定条件を満たさない場合(S5:NO)、すなわち、平面線分M上に障害物がある場合(図1における平面線分M1、M2参照)、ステップS3に戻る。
【0102】
平面判定条件を満たす場合(S5:YES)、すなわち、平面線分M上に障害物がない場合(図1における平面線分M3、M4参照)、当該出現予定ポイントYPが高さ判定条件を満たすか否かが判別される(S6)。高さ判定条件は出現予定ポイントYPから三次元仮想ゲーム空間上での下方向(Y軸の負の方向)に延ばした線分である高さ線分N上に接地面があるという条件であり、当該判別処理が上述した高さ判定処理に対応する(図4参照)。高さ判定条件を満たさない場合(S6:NO)、すなわち、高さ線分N上に接地面がない場合(図4における接地面GND3参照)、ステップS3に戻る。
【0103】
高さ判定条件を満たす場合(S6:YES)、すなわち、高さ線分N上に接地面がある場合(図4における接地面GND1、GND2参照)、攻撃時平面判定条件を満たすか否かが判別される(S7)。攻撃時平面判定条件は倒れたプレイヤキャラクタPC’の頭の先と足の先とを結ぶ線分である平面線分M’上に障害物がないという条件であり、当該判別処理が上述した攻撃時平面判定処理に対応する(図6(a)参照)。倒れたプレイヤキャラクタPC’は、瞬間移動によって出現予定ポイントYPに敵キャラクタECが出現してプレイヤキャラクタPCを攻撃をしたとする場合に、出現することになる当該攻撃を受けて倒れたプレイヤキャラクタPCを表している。攻撃時平面判定条件を満たさない場合(S7:NO)、すなわち、平面線分M’上に障害物がある場合(図6(a)参照)、ステップS3に戻る。なお、ステップS7において攻撃時平面判定条件を満たさない場合に(S7:NO)、後述するステップS16、S17に進み、ステップS4で選択された出現予定ポイントへの瞬間移動処理およびプレイヤクキャラクタPCを倒さない攻撃処理(以下、単に「倒さない攻撃処理」という。)が行われ、瞬間移動攻撃処理が終了されるようにしてもよい。なお、本実施形態では、平面判定条件(ステップS5)を満たすか否かを判定した後に高さ判定条件(ステップS6)を満たすか否かを判定しているが、これとは逆に、高さ判定条件(ステップS6)を満たすか否かを判定した後に平面判定条件(ステップS5)を満たすか否かを判定するようにしてもよい。
【0104】
攻撃時平面判定条件を満たす場合(S7:YES)、すなわち、平面線分M’上に障害物がない場合、攻撃時高さ判定条件を満たすか否かが判別される(S8)。攻撃時高さ判定条件は倒れたプレイヤキャラクタPC’の所定の部位から三次元仮想ゲーム空間上での下方向(Y軸の負の方向)に延ばした線分である高さ線分N’上に接地面があるという条件であり、当該判別処理が上述した攻撃時高さ判定処理に対応する(図6(b)参照)。攻撃時高さ判定条件を満たさない場合(S8:NO)、すなわち、高さ線分N’上に接地面がない場合、ステップS3に戻る。なお、ステップS8において攻撃時高さ判定条件を満たさない場合に(S8:NO)、敵キャラクタECにプレイヤクキャラクタPCを倒さない攻撃をさせるようにしてもよい。すなわち、後述するステップS16に進んで、瞬間移動処理(S16)および倒さない攻撃処理(S17)が行われ、瞬間移動攻撃処理が終了されるようにしてもよい。
【0105】
攻撃時高さ判定条件を満たす場合(S8:YES)、すなわち、高さ線分N’上に接地面がある場合(図6(b)参照)、瞬間移動処理が行われ(S9)、プレイヤクキャラクタPCを倒す攻撃処理(以下、単に「倒す攻撃処理」という。)が行われ(S10)、瞬間移動攻撃処理は終了される。瞬間移動処理は、敵キャラクタECを出現ポイントSPに瞬間移動させる処理であり、敵キャラクタECに所定の動作(瞬間移動を行う予備行為動作)を行わせる処理と、当該出現予定ポイントYPの座標を敵キャラクタECの位置座標とする処理とを含んでいる。当該瞬間移動処理と別途実行されている描画処理とによって、敵キャラクタECが予備行為動作を行って、出現予定ポイントYPに瞬間移動した映像が表示される。なお、敵キャラクタECが予備行為動作を行っている間、プレイヤキャラクタPCは動くことができないように設定されている。また、瞬間移動によって敵キャラクタECが突然現れる代わりに、敵キャラクタECが地面(床)から飛び出すように現れるような演出とすることもできるし、上空(天井)から落ちてくるように現れるような演出とすることもできる。倒す攻撃処理は、敵キャラクタECにプレイヤキャラクタPCを倒す攻撃をさせる処理であり、敵キャラクタECに所定の攻撃動作(プレイヤキャラクタPCを倒す程度の攻撃力の大きい攻撃のもの)を行わせる処理を含んでいる。当該倒す攻撃処理と別途実行されている描画処理とによって、敵キャラクタECがプレイヤキャラクタPCを攻撃する映像が表示される。
【0106】
なお、高さ判定処理を行わない場合は、ステップS6を省略して、ステップS5でYESの場合にステップS7に進むようにすればよい。また、攻撃時平面判定処理を行わない場合は、ステップS7を省略して、ステップS6でYESの場合にステップS8に進むようにすればよい。また、攻撃時高さ判定処理を行わない場合は、ステップS8を省略して、ステップS7でYESの場合にステップS9に進むようにすればよい。また、攻撃判定処理を行わない場合は、ステップS7およびS8を省略して、ステップS6でYESの場合にステップS9に進むようにすればよい。
【0107】
ステップS3において、出現予定ポイントYPが残っていない場合(S3:NO)、ステップS2で設定された出現予定ポイントYPが再取得される(S11)。次に、出現予定ポイントYPが残っているか否かが判別される(S12)。本実施形態では、ステップS11で再取得された4つの出現予定ポイントYP1〜YP4の中から1つが選択され、ステップS5、S6と同様の平面判定と高さ判定とが行われる(ステップS14、S15)。いずれかの判定条件が満たされない場合、当該選択された出現予定ポイントYPは選択肢の中から排除される。ステップS12は、選択肢としての出現予定ポイントYPが残っているか否かを判別する処理である。
【0108】
出現予定ポイントYPが残っている場合(S12:YES)、出現予定ポイントYPが選択される(S13)。次に、当該出現予定ポイントYPが平面判定条件を満たすか否かが判別される(S14)。平面判定条件はステップS5の処理で説明したものと同じである。平面判定条件を満たさない場合(S14:NO)、ステップS12に戻る。平面判定条件を満たす場合(S14:YES)、当該出現予定ポイントYPが高さ判定条件を満たすか否かが判別される(S15)。高さ判定条件はステップS6の処理で説明したものと同じである。高さ判定条件を満たさない場合(S15:NO)、ステップS3に戻る。高さ判定条件を満たす場合(S15:YES)、瞬間移動処理(S16)および倒さない攻撃処理(S17)が行われ、瞬間移動攻撃処理は終了される。
【0109】
ステップS16の瞬間移動処理は、ステップS9の瞬間移動処理と同様の処理である。また、倒さない攻撃処理は、敵キャラクタECにプレイヤキャラクタPCを倒さない攻撃をさせる処理であり、敵キャラクタECに所定の攻撃動作(プレイヤキャラクタPCを倒さない程度の攻撃力の小さい攻撃のもの)を行わせる処理を含んでいる。当該倒さない攻撃処理と別途実行されている描画処理とによって、敵キャラクタECがプレイヤキャラクタPCを攻撃する映像が表示される。
【0110】
ステップS12において、出現予定ポイントYPが残っていない場合(S12:NO)、瞬間移動攻撃処理は終了される。なお、この場合、ステップS2に戻って、再度出現予定ポイントYPを設定するようにしてもよい。このとき、前回設定された出現予定ポイントYPとは異なる出現予定ポイントYPを設定する必要がある。また、所定時間経過後にステップS1に戻って、再度特定ポイントTPを取得するようにしてもよい。当該所定時間の間にプレイヤキャラクタPCが移動した場合、取得される特定ポイントTPが前回の特定ポイントTPと異なるので、ステップS2で設定される出現予定ポイントYPは前回設定された出現予定ポイントYPとは異なるものとなる。
【0111】
本実施形態によると、プレイヤキャラクタPCの周辺に設定された各出現予定ポイントYPについて各判定条件を満たすか否かを判別して出現ポイントを決定し、当該出現ポイントに敵キャラクタECを出現させて攻撃させている。したがって、瞬間移動した敵キャラクタECが障害物に重なって表示されたり、プレイヤキャラクタPCとの間に障害物が配置されていて瞬間移動後の敵キャラクタECがプレイヤキャラクタPCに対して攻撃することができなかったりという不自然な状態とならない。また、敵キャラクタECを接地するように出現させても、プレイヤキャラクタPCとの高さ位置が異なることによって攻撃することができないという不自然な状態とならない。これにより、瞬間移動した敵キャラクタECをプレイヤキャラクタPCの周辺に出現させても、ゲーム画面上の表示が不自然なものとならない。
【0112】
また、瞬間移動後の敵キャラクタECの攻撃によって倒れたプレイヤキャラクタPCが障害物に重なって表示されたり、当該プレイヤキャラクタPCが不自然な高さの位置に倒れたりという不自然な状態とならない。これにより、瞬間移動した敵キャラクタECにプレイヤキャラクタPCを攻撃させても、ゲーム画面上の表示が不自然なものとならない。
【0113】
なお、上記実施形態では、特定ポイントを含むXZ平面上に出現予定ポイントを設定した場合について説明したが、これに限られない。例えば、特定ポイントを中心とする所定半径の球面上に出現予定ポイントを設定するようにしてもよい。また、特定ポイントを中心とする所定半径の球体内の任意の点に出現予定ポイントを設定するようにしてもよい。
【0114】
また、上記実施形態では、三次元仮想ゲーム空間上で進行するゲームの場合について説明したが、二次元仮想ゲーム空間上で進行するゲームの場合でも、本発明を適用することができる。例えば、二次元平面(水平面)上で進行するゲームの場合、高さ方向が考慮されないので、高さ判定処理および攻撃時高さ判定処理を行う必要がない。したがって、平面判定処理と攻撃時平面判定処理のみを行うようにすればよい。これに対して、例えばいわゆる横スクロールゲーム等の場合は、高さ方向も考慮されるので、高さ判定処理および攻撃時高さ判定処理も行うようにしてもよい。
【0115】
また、上記実施形態では、敵キャラクタECをプレイヤキャラクタPCとの間に障害物がない位置に瞬間移動させる場合について説明したが、これに限られない。ゲームの内容や場面によっては、敵キャラクタECをあえてプレイヤキャラクタPCとの間に障害物がある位置に瞬間移動させるようにしてもよい。例えば、プレイヤキャラクタPCからの銃撃を受けた敵キャラクタECが、銃撃を避けるために柱や壁などの裏側に瞬間移動するようにしてもよい。この場合、平面判定処理のみを行って瞬間移動を行うか否かを判定するようにすればよい。平面判定処理においては、出現予定ポイントYP(敵キャラクタECの出現予定位置)が特定ポイントTP(プレイヤキャラクタPCの現在位置)から近すぎず遠すぎない位置とするように所定距離Lを設定する(図1参照)。選択された出現予定ポイントYPと特定ポイントTPとを結ぶ平面線分M上に障害物OBJが存在し、かつ、出現予定ポイントYP上に障害物OBJが存在しない場合(図1においては出現予定ポイントYP2)には平面判定条件を満たすとして瞬間移動処理に進み、その他の場合には平面判定条件を満たさないとして他の出現予定ポイントYPを選択するようにする。これにより、敵キャラクタECをプレイヤキャラクタPCに対して障害物の裏側に瞬間移動させることができる。また、瞬間移動した敵キャラクタECが障害物に重なって表示されるという不自然な状態とならない。
【0116】
なお、敵キャラクタECをプレイヤキャラクタPCとの間に障害物がある位置に瞬間移動させる場合、閉鎖された空間に瞬間移動して敵キャラクタECが身動きできない状態とならないようにする必要がある。「閉鎖された空間」とは、隙間なく障害物に完全に囲まれている空間(例えば、壁板と壁板に挟まれた壁の中など)のみではなく、その空間に敵キャラクタECが出現した場合に敵キャラクタECが当該空間から脱出することができないようなもの(例えば、中からは開けられない檻の中など)も含まれる。敵キャラクタECが閉鎖された空間に瞬間移動する可能性がある場合は、出現予定ポイントYPが閉鎖された空間に存在するか否かを判定し、出現予定ポイントYPが閉鎖された空間に存在しない場合にのみ瞬間移動をさせるようにすればよい。
【0117】
また、上記実施形態では、敵キャラクタECをプレイヤキャラクタPCの周辺に瞬間移動させる場合について説明したが、これに限られない。本発明は、プレイヤキャラクタPCを敵キャラクタECの周辺に瞬間移動させる場合や、プレイヤキャラクタPCの味方のキャラクタ(例えば、プレイヤキャラクタと行動をともにするキャラクタなど)をプレイヤキャラクタPCの周辺に瞬間移動させる場合にも適用することができる。また、瞬間移動の場合に限られず、キャラクタの通常の移動の場合にも本発明を適用することができる。また、キャラクタの移動の場合に限られず、キャラクタを突然出現させる場合にも適用することができる。
【0118】
また、出現させるものはキャラクタに限定されず、各種オブジェクトを出現させるようにしてもよい。例えば、ゲームステージ(アクションゲームに限られない)を設定する際に、オブジェクト(キャラクタを含む。)の位置をあらかじめ決めておかず、ゲームステージの開始時に任意に配置するようにすれば、ゲームステージ上のオブジェクトの配置が毎回変更され、ゲームステージのバリエーションが豊富になる。
【0119】
なお、上記実施形態では、あるアクションゲームを例として説明したが、これに限られない。本発明は、他のアクションゲームにも適用することができる。他のアクションゲームにおいては、いわゆる「ボスキャラ」が上記「敵キャラクタEC」に相当する。
【0120】
また、上記実施形態では、アクションゲームを例に説明したが、これに限られない。例えば、RPG(ロールプレイングゲーム)やシューティングゲームや格闘ゲームなどの、プレイヤキャラクタと敵キャラクタとが戦うゲームにおいても、本発明を適用することができる。また、本発明は、複数のプレイヤの操作するキャラクタ若しくはCPUの制御するキャラクタがチームを組んで協同して敵キャラクタと対戦するようなゲームや、敵キャラクタとしての他のプレイヤの操作するキャラクタと対戦するようなゲームにも適用することができる。
【0121】
また、プレイヤキャラクタと敵キャラクタとが戦うゲーム以外のゲームにおいても、あるオブジェクトの周辺に他のオブジェクトを出現させる(配置する)場合に、本発明を適用することができる。例えば、アドベンチャーゲームにおいて、プレイヤキャラクタの周辺にアイテムを出現させる場合に、当該アイテムが他のオブジェクトに重なって表示されたり、プレイヤキャラクタが取得できない位置に当該アイテムが出現したりすることを抑制することができる。
【0122】
上記実施形態では、家庭用ゲーム装置でゲームを実施する場合について説明したが、これに限られない。本発明は、ゲームが実施されるゲーム装置の種類に限定されず適用することができ、例えば、携帯型ゲーム装置、アーケードゲーム装置、および、ゲームソフトが搭載されているパーソナルコンピュータ等でゲームを実施する場合にも適用することができる。
【0123】
上記実施形態では、ゲーム装置1を単独で用いる場合について説明したが、これに限られない。本発明は、複数のゲーム装置1をケーブルあるいは無線通信により接続したり、ゲーム装置1をゲームサーバにネットワーク回線2で接続したり、ゲーム装置1同士をネットワーク回線2でP2P接続することにより、複数のゲーム装置1で同時にゲームを実施する場合にも適用することができる。
【0124】
本発明に係るゲーム装置、プログラム、および記録媒体は、上述した実施形態に限定されるものではない。本発明に係るゲーム装置、プログラム、および記録媒体の具体的な構成は、種々に設計変更自在である。
【符号の説明】
【0125】
1 ゲーム装置
11 本体
111 制御部
111a CPU(特定ポイント設定手段、出現ポイント設定手段、出現判定処理手段、出現処理手段、高さ判定処理手段、重なり判定手段、接地判定手段、攻撃処理手段、攻撃判定手段、第2の高さ判定処理手段)
111b ROM
111c RAM
112 描画処理部
113 音声処理部
114 ディスクドライブユニット
115 メモリカード接続ユニット
116 I/Oインターフェース部
117 通信処理部
12 操作コントローラ
13 モニタ
14 ディスク
15 メモリカード
16 ネットワークアダプタ
2 ネットワーク回線

【特許請求の範囲】
【請求項1】
コンピュータを、
仮想ゲーム空間上における任意の場所である特定ポイントを設定する特定ポイント設定手段と、
前記特定ポイント設定手段によって設定された前記特定ポイントの周辺に前記仮想ゲーム空間上に配置されるオブジェクトを出現させる出現ポイントを設定する出現ポイント設定手段と、
前記特定ポイントと前記出現ポイントとを結ぶ線分である判定線分上に前記仮想ゲーム空間上に配置されている障害物がなく、かつ、前記出現ポイントが前記障害物と重ならない場合に前記出現ポイントに前記オブジェクトを出現させてもよいと判定する出現判定処理手段と、
前記出現判定処理手段によって前記出現ポイントに前記オブジェクトを出現させてもよいと判定された場合に、前記出現ポイントに前記オブジェクトを出現させる出現処理手段と、
して機能させるためのプログラム。
【請求項2】
コンピュータを、
仮想ゲーム空間上における任意の場所である特定ポイントを設定する特定ポイント設定手段と、
前記特定ポイント設定手段によって設定された前記特定ポイントの周辺に前記仮想ゲーム空間上に配置されるオブジェクトを出現させる出現ポイントを設定する出現ポイント設定手段と、
前記特定ポイントと前記出現ポイントとを結ぶ線分である判定線分上に前記仮想ゲーム空間上に配置されている障害物があり、かつ、前記出現ポイントが前記障害物と重ならない場合に前記出現ポイントに前記オブジェクトを出現させてもよいと判定する出現判定処理手段と、
前記出現判定処理手段によって前記出現ポイントに前記オブジェクトを出現させてもよいと判定された場合に、前記出現ポイントに前記オブジェクトを出現させる出現処理手段と、
して機能させるためのプログラム。
【請求項3】
前記コンピュータを、前記出現ポイントが閉鎖された空間に存在するか否かを判定する空間判定処理手段としてさらに機能させ、
前記出現処理手段は、前記空間判定処理手段によって前記出現ポイントが閉鎖された空間に存在しないと判定された場合にのみ、前記出現ポイントに前記オブジェクトを出現させる、
請求項2に記載のプログラム。
【請求項4】
前記コンピュータを、前記出現ポイントに前記オブジェクトを出現させた場合における前記オブジェクトの所定部位から前記仮想ゲーム空間における高さ方向に延ばした所定長さの線分である高さ線分上に、前記オブジェクトが接地される接地面があるか否かを判定する高さ判定処理手段として更に機能させ、
前記出現処理手段は、前記出現判定処理手段によって前記出現ポイントに前記オブジェクトを出現させてもよいと判定され、かつ、前記高さ判定処理手段によって前記高さ線分上に前記接地面があると判定された場合に、前記出現ポイントに前記オブジェクトを出現させる、
請求項1ないし3のいずれかに記載のプログラム。
【請求項5】
前記出現ポイント設定手段は、前記出現処理手段が前記出現ポイントに前記オブジェクトを出現させない場合、他の出現ポイントを設定する、請求項1ないし4のいずれかに記載のプログラム。
【請求項6】
前記仮想ゲーム空間は三次元の空間であり、
前記特定ポイント設定手段は、前記仮想ゲーム空間の高さ方向に直交する平面上に前記特定ポイントを設定し、
前記出現ポイント設定手段は、前記平面上に前記出現ポイントを設定する、
請求項1ないし5のいずれかに記載のプログラム。
【請求項7】
前記コンピュータを、前記出現ポイントに前記オブジェクトを出現させた場合に、前記オブジェクトが前記障害物と重なるか否かを判定する重なり判定手段として更に機能させ、
前記出現処理手段は、さらに、前記重なり判定手段によって前記オブジェクトが前記障害物と重ならないと判定された場合にのみ、前記出現ポイントに前記オブジェクトを出現させる、
請求項1ないし6のいずれかに記載のプログラム。
【請求項8】
前記出現処理手段は、前記重なり判定手段によって前記オブジェクトが前記障害物と重なると判定された場合に、当該障害物と重ならないように、前記出現ポイントから補正された位置に前記オブジェクトを出現させる、請求項7に記載のプログラム。
【請求項9】
前記コンピュータを、前記出現ポイントに前記オブジェクトを出現させた場合に、前記オブジェクトが接地面に接地するか否かを判定する接地判定手段として更に機能させ、
前記出現処理手段は、前記接地判定手段によって前記オブジェクトが前記接地面に接地しないと判定された場合に、当該接地面に接地するように、前記仮想ゲーム空間上の高さ方向で補正された位置に前記オブジェクトを出現させる、
請求項1ないし8のいずれかに記載のプログラム。
【請求項10】
前記オブジェクトは、第1のキャラクタであり、
前記特定ポイント設定手段は、第2のキャラクタの位置を取得して、その位置を前記特定ポイントとして設定する、
請求項1ないし9のいずれかに記載のプログラム。
【請求項11】
前記コンピュータを、前記出現処理手段によって前記第1のキャラクタが出現させられたとき、当該第1のキャラクタに前記第2のキャラクタを倒す攻撃を行わせる攻撃処理手段として更に機能させる、請求項10に記載のプログラム。
【請求項12】
前記コンピュータを、前記攻撃処理手段による前記第1のキャラクタからの攻撃を受けて倒れたとした場合の前記第2のキャラクタの頭の先と足の先とを結ぶ線分である第2の判定線分上に前記障害物があるか否かを判定する攻撃判定手段として更に機能させ、
前記攻撃処理手段は、前記攻撃判定手段によって前記第2の判定線分上に前記障害物があると判定された場合に、前記倒す攻撃以外の攻撃を行わせる、
請求項11に記載のプログラム。
【請求項13】
前記コンピュータを、前記攻撃処理手段による前記第1のキャラクタからの攻撃を受けて倒れたとした場合の前記第2のキャラクタの頭の先と足の先とを結ぶ線分である第2の判定線分上に前記障害物があるか否かを判定する攻撃判定手段として更に機能させ、
前記出現処理手段は、さらに、前記攻撃判定手段によって前記第2の判定線分上に前記障害物がないと判定された場合にのみ、前記出現ポイントに前記オブジェクトを出現させる、
請求項11に記載のプログラム。
【請求項14】
前記コンピュータを、前記攻撃判定手段によって前記第2の判定線分上に前記障害物がないと判定された場合に、前記第1のキャラクタからの攻撃を受けて倒れたとした場合の前記第2のキャラクタの所定部位から前記仮想ゲーム空間における高さ方向に延ばした所定長さの線分である第2の高さ線分上に接地面があるか否かを判定する第2の高さ判定処理手段として更に機能させ、
前記出現処理手段は、さらに前記第2の高さ判定処理手段によって前記第2の高さ線分上に前記接地面があると判定された場合にのみ、前記出現ポイントに前記オブジェクトを出現させる、
請求項12または13に記載のプログラム。
【請求項15】
前記コンピュータを、前記攻撃判定手段によって前記第2の判定線分上に前記障害物がないと判定された場合に、前記第1のキャラクタからの攻撃を受けて倒れたとした場合の前記第2のキャラクタの所定部位から前記仮想ゲーム空間における高さ方向に延ばした所定長さの線分である第2の高さ線分上に接地面があるか否かを判定する第2の高さ判定処理手段として更に機能させ、
前記攻撃処理手段は、前記第2の高さ判定処理手段によって前記第2の高さ線分上に前記接地面がないと判定された場合に、前記攻撃以外の攻撃を行わせる、
請求項12に記載のプログラム。
【請求項16】
請求項1ないし15のいずれかに記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項17】
請求項1ないし15のいずれかに記載のプログラムを実行するゲーム装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate