説明

ポインティングデバイスに対する入力を用いたゲームプログラムおよびゲーム装置

【課題】 ポインティングデバイスの入力を用いたゲームにおいて、プレイヤキャラクタに多彩なアクションを行わせることが可能なゲームプログラムおよびゲーム装置を提供する。
【解決手段】 ゲーム装置は、入力装置によって所定時間間隔で検出された各入力位置を、検出された順にゲーム装置のメモリに記憶させる。次に、入力面上においてプレイヤによって描かれた軌跡の少なくとも一部を示す軌跡ベクトルを各入力位置から算出する。さらに、入力面上における所定位置を始点とし、軌跡ベクトルによって決められる位置を終点とする基準ベクトルを算出する。軌跡ベクトルと基準ベクトルとのなす角の大きさに基づいてプレイヤキャラクタのアクションが決定される。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ゲームプログラムおよびゲーム装置に関し、より特定的には、ポインティングデバイスに対する入力をゲーム操作に用いたゲームプログラムおよびゲーム装置に関する。
【背景技術】
【0002】
従来、マウスやタッチパネル等のポインティングデバイスを入力装置として用いたゲーム装置が考えられている。例えば、画面上の敵キャラクタをマウスで指定した状態でマウスの入力ボタンを押すことによって、プレイヤキャラクタが敵キャラクタに対して攻撃を行うゲームがある(例えば、非特許文献1参照。)。このゲームでは、プレイヤはマウスを用いてプレイヤキャラクタを移動させる。そして、敵キャラクタに対する攻撃が可能な間合いにプレイヤキャラクタを移動させ、マウスの左ボタンをクリックすることにより攻撃を行う。さらに、プレイヤは、左ボタンを連打することによって連続攻撃を行うことも可能である。
【非特許文献1】“黄昏の世界を旅する、動きの美しいアクションRPG 「Revenant」”、[online]、1999年8月18日、駒沢 丈治、[2005年4月13日検索]、インターネット<URL:http://www.forest.impress.co.jp/article/1999/08/18/game48.html>
【発明の開示】
【発明が解決しようとする課題】
【0003】
上記のゲームにおける攻撃操作は、マウスの左ボタンをクリックするだけであるので、非常に単純である。プレイヤによる攻撃操作は1種類しかなく、この1種類の攻撃操作に対してプレイヤキャラクタが行う攻撃パターンが一義的に決まってしまうので、攻撃操作は非常に単調になってしまう。そのため、プレイヤが操作に慣れると攻撃操作の面白みはすぐに薄れてしまう。つまり、ポインティングデバイスの入力を用いた従来のゲーム装置では、バリエーションに富んだアクションをプレイヤキャラクタに行わせることができず、ゲーム操作が単純になってしまうという課題があった。また、ゲーム操作が単純であることから、ゲームの戦略性や興趣性が低くなってしまうという課題があった。
【0004】
それ故、本発明の目的は、ポインティングデバイスの入力を用いたゲームにおいて、プレイヤキャラクタに多彩なアクションを行わせることが可能なゲームプログラムおよびゲーム装置を提供することである。
【課題を解決するための手段】
【0005】
本発明は、上記の課題を解決するために、以下の構成を採用した。なお、本欄における括弧内の参照符号および補足説明等は、本発明の理解を助けるために後述する実施形態との対応関係を示したものであって、本発明を何ら限定するものではない。
【0006】
第1の発明は、入力面上においてプレイヤが指定した位置を検出する入力装置(タッチパネル15)を備えるゲーム装置(10)のコンピュータ(CPUコア21等)に実行させるゲームプログラムである。ゲームプログラムは、記憶ステップ(S5またはS11)と、軌跡ベクトル算出ステップ(S43またはS72)と、基準ベクトル算出ステップ(S62)と、アクション決定ステップ(S64)と、表示制御ステップ(S65)とをコンピュータに実行させる。記憶ステップにおいては、コンピュータは、入力装置によって所定時間間隔で検出された各入力位置を、検出された順にゲーム装置のメモリ(RAM24)に記憶させる。軌跡ベクトル算出ステップにおいては、入力面上においてプレイヤによって描かれた軌跡の少なくとも一部を示す軌跡ベクトル(v1)を各入力位置から算出する。基準ベクトル算出ステップにおいては、入力面上における所定位置を始点とし、軌跡ベクトルによって決められる位置(軌跡ベクトルの始点、中点、および終点の位置を含む)を終点とする基準ベクトル(v2)を算出する。アクション決定ステップにおいては、軌跡ベクトルと基準ベクトルとのなす角の大きさ(図4に示すθ1)に基づいてプレイヤキャラクタ(41)のアクションを決定する。表示制御ステップにおいては、決定されたアクションをプレイヤキャラクタが行う様子を表示装置(第2のLCD)に表示させる。
【0007】
また、第2の発明においては、入力装置は、表示装置の画面上を入力面として、当該画面上においてプレイヤが指定した位置を検出する装置であってもよい。このとき、画面上には、プレイヤキャラクタが表示されている。所定位置は、プレイヤキャラクタが表示される位置である。
【0008】
また、第3の発明においては、表示制御ステップにおいては、プレイヤキャラクタの位置から軌跡ベクトルの始点、中点、または終点への向きにプレイヤキャラクタが決定されたアクションを行う様子が表示されてもよい。
【0009】
また、第4の発明においては、所定位置は、画面の中央の位置であってもよい。
【0010】
また、第5の発明においては、ゲームプログラムは、移動決定ステップ(S52およびS53)をさらにコンピュータに実行させてもよい。移動決定ステップにおいては、コンピュータは、入力装置によって検出された入力位置に基づいてプレイヤキャラクタの移動方向を決定する。このとき、表示制御ステップは、移動決定ステップにおいて決定された移動方向にプレイヤキャラクタが移動する様子を表示装置に表示させるステップ(S54)を含む。
【0011】
また、第6の発明においては、移動決定ステップは、アクション決定ステップによって決定されたアクションをプレイヤキャラクタが行っていないことを条件として、入力装置によって入力位置が検出される度に実行されてもよい。
【0012】
また、第7の発明においては、アクション決定ステップにおいては、軌跡ベクトルの大きさが所定値以上であるときのみ、プレイヤキャラクタのアクションが決定されてもよい(図19に示すステップS73参照)。
【0013】
また、第8の発明においては、アクション決定ステップにおいては、軌跡ベクトルによって示される軌跡の部分が所定時間以内に入力されたときのみ、プレイヤキャラクタのアクションが決定されてもよい(図16に示すステップS32、図19に示すステップS71参照)。
【0014】
また、第9の発明においては、軌跡ベクトル算出ステップは、入力面上においてプレイヤによって描かれた軌跡を1以上の直線に近似し、当該近似された各直線を示すベクトルを軌跡ベクトルとして当該直線毎に算出するステップ(S31,S32およびS34)を含んでいてもよい。このとき、アクション決定ステップにおいては、各軌跡ベクトルについて個別にプレイヤキャラクタのアクションが決定される。表示制御ステップにおいては、決定されたアクションを連続してプレイヤキャラクタが行う様子が表示装置に表示される。
【0015】
また、第10の発明においては、アクション決定ステップにおいては、軌跡ベクトル算出ステップにおいて軌跡ベクトルが複数算出されるとき、軌跡ベクトルが1つ算出されるときとは異なるアクションが決定されてもよい。
【0016】
また、第11の発明においては、軌跡ベクトル算出ステップにおいては、入力装置によって連続して検出された各入力位置のうちで、最初に検出された入力位置(図5に示す点P2)を始点とし、最後に検出された入力位置(図5に示す点P3)を終点とするベクトルが軌跡ベクトルとして算出されてもよい。
【0017】
また、第12の発明においては、軌跡ベクトル算出ステップは、次の2つのステップを含んでいてもよい。すなわち、1つ目のステップ(S31およびS32)においては、コンピュータは、入力装置によって連続して検出された各入力位置を検出された順に結ぶ折れ線について、互いに接続される2つの線分のなす角度が所定値以下となる頂点に対応する入力位置を選出する。2つ目のステップ(S33)においては、選出された入力位置が2つ以上存在するとき、順に検出された2つの入力位置を検出順に結ぶベクトルを軌跡ベクトルとして算出する。
【0018】
また、第13の発明においては、基準ベクトル算出ステップにおいて、軌跡ベクトルの終点の位置を基準ベクトルの終点として当該基準ベクトルが算出されてもよい。
【0019】
また、本発明は、上記ゲームプログラムを実行することによって実現される機能と同等の機能を有するゲーム装置の形態で提供されてもよい。
【発明の効果】
【0020】
第1の発明によれば、プレイヤは、画面上に描く軌跡を変化させることによって複数種類のアクションを使い分けることができる。すなわち、ポインティングデバイスを用いたゲームにおいても、プレイヤキャラクタに多彩なアクションを容易に行わせることができる。例えば、攻撃のアクションについて第1の発明を適用すれば、所定位置から入力軌跡への方向と、入力軌跡が描かれた方向との関係によって、プレイヤキャラクタの攻撃パターンを変化させることができる。これによって、従来では単調となっていた敵キャラクタへの攻撃にバリエーションを持たせることができ、ゲームの戦略性や興趣性を向上することができる。
【0021】
また、第2の発明によれば、画面上に表示されるプレイヤキャラクタと入力軌跡との関係に応じて、プレイヤキャラクタのアクションを変化させることができる。画面上におけるプレイヤキャラクタの位置は変化するので、画面上の同じ位置に同じ入力軌跡を描いたとしても、プレイヤキャラクタの位置に応じてアクションが変化する。したがって、プレイヤは、プレイヤキャラクタの位置を考慮しながら所望のアクションを行わせるための入力軌跡を描くという、従来にはないゲームの操作感を味わうことができる。
【0022】
また、第3の発明によれば、プレイヤキャラクタは、軌跡が描かれた方向にアクションを行うので、プレイヤは、軌跡を描く操作によってアクションを行う方向を指定することができる。したがって、アクションを行う方向を指定する操作と軌跡を描く操作とを別に行う必要がないので、プレイヤの操作が簡易になり、ゲームの操作性を向上することができる。
【0023】
また、第4の発明によれば、プレイヤは、画面中央に表示されるプレイヤキャラクタを中心として上下左右のどの方向にも軌跡を入力することができる。したがって、プレイヤは、プレイヤキャラクタにアクションを行わせる操作をどの方向であっても容易に行うことができる。
【0024】
また、第5の発明によれば、プレイヤキャラクタを移動させる操作と、プレイヤキャラクタにアクションを行わせる操作とを単一の入力装置で行うことができるので、ゲームの操作性を向上することができる。
【0025】
また、第6の発明によれば、所定のアクションを行っている間はプレイヤキャラクタが移動することはないので、アクション中のプレイヤキャラクタが移動するという不自然な動作を防止することができる。
【0026】
また、第7の発明によれば、アクションを行う操作と移動操作とを区別することができる。すなわち、軌跡ベクトルの大きさが所定値よりも小さい場合には、プレイヤキャラクタの移動のみが行われる。プレイヤは、移動操作を行いたい場合には、軌跡ベクトルの大きさが所定値よりも小さくなるように軌跡を描けばよく、これにより、プレイヤが意図しないアクションが行われることがない。これによって、上記2つの操作を行う場合に操作性を向上することができる。また、プレイヤは、入力面に対する入力操作という1種類の操作方法で、2つの操作を使い分けることができる。
【0027】
また、第8の発明によれば、アクションを行う操作と移動操作とを区別することができる。すなわち、プレイヤは、移動操作を行いたい場合には、軌跡を描く操作を所定時間よりも長く行えばよく、これにより、プレイヤが意図しないアクションが行われることがない。これによって、上記2つの操作を行う場合に操作性を向上することができる。また、プレイヤは、入力面に対する入力操作という1種類の操作方法で、2つの操作を使い分けることができる。
【0028】
また、第9の発明によれば、プレイヤによって描かれた軌跡を1以上の直線に近似することによって、プレイヤが複雑な形状の軌跡を描いた場合でも、軌跡ベクトルを算出することができる。また、軌跡を描く1回の操作によって、複数回のアクションを連続してプレイヤキャラクタに行わせることができる。
【0029】
また、第10の発明によれば、プレイヤキャラクタが行うアクションのバリエーションをさらに増やすことができ、ゲームの戦略性や興趣性をさらに向上することができる。
【0030】
また、第11の発明によれば、プレイヤによって描かれた軌跡から軌跡ベクトルを容易に算出することができる。
【0031】
また、第12の発明によれば、軌跡に複数の直線部分が含まれる場合であっても近似される各直線を容易に算出することができる。また、1つの軌跡から複数の軌跡ベクトルを容易に算出することができる。
【0032】
また、第13の発明によれば、基準ベクトルの終点の位置を軌跡ベクトルに基づいて容易に決定することができる。
【発明を実施するための最良の形態】
【0033】
以下、本発明の一実施形態に係るゲームプログラムおよびゲーム装置について説明する。まず、ゲームプログラムを実行するゲーム装置の一例である、携帯型のゲーム装置の構成について説明する。図1は、ゲーム装置の外観図である。図1において、ゲーム装置10は、第1のLCD(Liquid Crystal Display:液晶表示装置)11および第2のLCD12を含む。ハウジング13は上側ハウジング13aと下側ハウジング13bとによって構成されており、第1のLCD11は上側ハウジング13aに収納され、第2のLCD12は下側ハウジング13bに収納される。第1のLCD11および第2のLCD12の解像度はいずれも256dot×192dotである。なお、第1の実施形態では表示装置としてLCDを用いているが、例えばEL(Electro Luminescence:電界発光)を利用した表示装置など、他の任意の表示装置を利用することができる。また任意の解像度のものを利用することができる。
【0034】
上側ハウジング13aには、後述する1対のスピーカ(図2の30)からの音を外部に放出するための音抜き孔18aおよび18bが形成されている。
【0035】
下側ハウジング13bには、入力装置として、十字スイッチ14a、スタートスイッチ14b、セレクトスイッチ14c、Aボタン14d、Bボタン14e、Xボタン14f、Yボタン14g、Lボタン14LおよびRボタン14Rが設けられている。また、さらなる入力装置として、第2のLCD12の画面上にタッチパネル15(図1に示す2点鎖線)が装着されている。また、下側ハウジング13bには、電源スイッチ19や、メモリカード17やスティック16を収納するための挿入口(図1に示す一点鎖線)も設けられている。
【0036】
タッチパネル15としては、例えば抵抗膜方式や光学式(赤外線方式)や静電容量結合式など、任意の方式のものを利用することができる。タッチパネル15は、その表面をスティック16で触れると、その接触位置に対応する座標データを出力する機能を有している。タッチパネル15は、プレイヤによる入力位置を所定のサンプリング時間間隔で検出し、上記座標データを出力する。なお、以下ではプレイヤがタッチパネル15をスティック16で操作するものとして説明を行うが、スティック16の代わりにペン(スタイラスペン)や指でタッチパネル15を操作することももちろん可能である。第1の実施形態では、タッチパネル15として、第2のLCD12の解像度と同じく256dot×192dotの解像度(検出精度)のものを利用する。ただし、必ずしもタッチパネル15の解像度と第2のLCD12の解像度が一致している必要はない。
【0037】
メモリカード17はゲームプログラムを記録した記録媒体であり、下部ハウジング13bに設けられた挿入口に着脱自在に装着される。
【0038】
次に、図2を参照してゲーム装置10の内部構成を説明する。図2において、ハウジング13に収納される電子回路基板20には、CPUコア21が実装される。CPUコア21には、バス22を介して、コネクタ23が接続されるとともに、入出力インターフェース回路(図面ではI/F回路と記す)25、第1GPU(Graphics Processing Unit)26、第2GPU27、RAM24およびLCDコントローラ31が接続される。コネクタ23には、メモリカード17が着脱自在に接続される。メモリカード17は、ゲームプログラムを記憶するROM171と、バックアップデータを書き換え可能に記憶するRAM172を搭載する。メモリカード17のROM171に記憶されたゲームプログラムはRAM24にロードされ、RAM24にロードされたゲームプログラムがCPUコア21によって実行される。RAM24には、ゲームプログラムの他にも、CPUコア21がゲームプログラムを実行して得られる一時的なデータや、ゲーム画像を生成するためのデータが記憶される。I/F回路25には、タッチパネル15と、スピーカ30と、図1の十字スイッチ14aやAボタン14d等からなる操作スイッチ部14とが接続される。スピーカ30は、音抜き孔18aおよび18bの内側に配置される。
【0039】
第1GPU26には、第1VRAM(Video RAM)28が接続され、第2GPU27には、第2VRAM29が接続される。第1GPU26は、CPUコア21からの指示に応じて、RAM24に記憶されているゲーム画像を生成するためのデータに基づいて第1のゲーム画像を生成し、第1VRAM28に描画する。第2GPU27は、同様にCPUコア21からの指示に応じて第2のゲーム画像を生成し、第2VRAM29に描画する。第1VRAM28および第2VRAM29はLCDコントローラ31に接続されている。
【0040】
LCDコントローラ31はレジスタ32を含む。レジスタ32はCPUコア21からの指示に応じて0または1の値を記憶する。LCDコントローラ31は、レジスタ32の値が0の場合は、第1VRAM28に描画された第1のゲーム画像を第1のLCD11に出力し、第2VRAM29に描画された第2のゲーム画像を第2のLCD12に出力する。また、レジスタ32の値が1の場合は、第1VRAM28に描画された第1のゲーム画像を第2のLCD12に出力し、第2VRAM29に描画された第2のゲーム画像を第1のLCD11に出力する。
【0041】
なお、上記のようなゲーム装置10の構成は単なる一例に過ぎず、本発明は、少なくとも1つの表示装置を有する任意のコンピュータシステムに適用することができる。また、本発明のゲームプログラムは、メモリカード17などの外部記憶媒体を通じてコンピュータシステムに供給されるだけでなく、有線または無線の通信回線を通じてコンピュータシステムに供給されてもよいし、さらにはコンピュータシステム内部の不揮発性記憶装置に予め記録されていてもよい。
【0042】
以下、ゲーム装置10においてゲームプログラムを実行することによって行われるゲームの概要を説明する。本ゲームにおいては、プレイヤによって操作されるプレイヤキャラクタおよび敵キャラクタが3次元の仮想のゲーム空間に登場する。プレイヤは、プレイヤキャラクタを操作して敵キャラクタに対して攻撃を行い、敵キャラクタを倒すことを目的としてゲームを行う。以下、本ゲームの詳細について図3〜図12を用いて説明する。
【0043】
図3は、ゲーム装置10の第2のLCD12に表示されるゲーム画面の例を示す図である。図3に示すように、本実施形態においては、プレイヤキャラクタ41を含むゲーム空間を所定の仮想カメラから見た画像が第2のLCD12に表示される。本実施形態においては、プレイヤキャラクタ41は画面の中央に表示されるように仮想カメラの位置や視線方向等のパラメータが設定されるが、他の実施形態においては、プレイヤキャラクタ41は画面の中央に常に表示されなくてもよい。なお、第1のLCD11は使用されなくてもよいし、プレイヤキャラクタの体力や能力を示す各種パラメータや、プレイヤキャラクタが所持するアイテム等の情報が第1のLCD11に表示されてもよい。
【0044】
プレイヤは、タッチパネル15に対する入力(タッチ入力)によって、プレイヤキャラクタ41を移動させる操作(移動操作)を行うことができる。ゲーム装置10は、プレイヤによる入力が行われた位置(入力位置)を検出すると、検出した入力位置に基づいてプレイヤキャラクタ41の移動方向を決定する。そして、当該移動方向へプレイヤキャラクタ41を移動させる。プレイヤキャラクタ41は、入力位置の方向へ予め定められた所定速度で移動する。例えば、図3に示すように、プレイヤがスティック16で点P1の位置を指定した場合、プレイヤキャラクタ41は、点P1の方向へ所定速度で移動する(図3に示す矢印参照)。
【0045】
また、プレイヤは、タッチパネル15に対する入力によって、プレイヤキャラクタ41に攻撃を行わせる操作(攻撃操作)を行うことができる。つまり、本実施形態では、プレイヤは、プレイヤキャラクタ41に対する各操作(移動操作および攻撃操作)をタッチパネル15を用いて行うことが可能である。さらに、プレイヤは、第2のLCD12の画面上(タッチパネル15の入力面上)に描く軌跡に応じて異なる複数種類の攻撃操作を行うことができる。具体的には、プレイヤは、画面上に直線状の軌跡を描く操作によって4種類の通常攻撃(突き、右斬り、左斬り、および縦斬り)をプレイヤキャラクタに行わせることができ、さらに、直線状の軌跡を連続して描く操作(スクラッチ操作)によって連続攻撃をプレイヤキャラクタに行わせることができる。以下、攻撃操作を詳細に説明する。
【0046】
まず、プレイヤキャラクタが通常攻撃を行う際の処理について図4〜図10を用いて説明する。図4は、プレイヤが通常攻撃の攻撃操作を行うときのゲーム画面を示す図である。図4においては、プレイヤキャラクタ41および敵キャラクタ42が登場するゲーム空間の画像が第2のLCDに表示されている。また、図4においては、プレイヤキャラクタ41の右側の領域において、軌跡T1がプレイヤによって描かれているとする。なお、プレイヤによって描かれた軌跡を示す画像は表示されてもよいし、表示されなくてもよい。
【0047】
図5は、図4に示す軌跡T1を示す図である。図5に示すように、プレイヤによって描かれる軌跡は、タッチパネル15によって連続して検出される入力位置(図5に示す黒丸)の集合として表される。以下では、連続して検出される入力位置のうちで最初に検出される入力位置(図5に示す点P2)を初期入力位置と呼ぶ。また、タッチパネル15によって入力位置が連続して検出される間において、最新の入力位置(最後に検出された入力位置。図5に示す点P3)を現在入力位置と呼び、現在入力位置の1つ前に検出された入力位置(図5に示す点P4)を前入力位置と呼ぶ。
【0048】
なお、本実施形態では、タッチパネル15によって検出される位置は、画面の左下を原点とし、画面の上方向をy軸正方向とし、画面の右方向をx軸正方向とする座標系によって表現される。つまり、タッチパネル15は、当該座標系における座標のデータを出力する。ここで、連続して検出された2つの入力位置を検出順に結ぶベクトルを差分ベクトルと呼ぶ。特に、前入力位置を始点とし現在入力位置を終点とするベクトルを、現在差分ベクトルと呼ぶ。図6は、図5に示す現在入力位置および前入力位置を示す図である。図6に示す例では、現在差分ベクトルは(x1,y1)として表される。また、現在差分ベクトルの1つ前のベクトルを前差分ベクトルと呼ぶ。前差分ベクトルは、前入力位置の1つ前に検出された入力位置を始点とし、前入力位置を終点とするベクトルである。
【0049】
図4の説明に戻り、プレイヤによって軌跡が描かれたとき、ゲーム装置10は、軌跡ベクトルおよび基準ベクトルを算出する。図7は、軌跡ベクトルおよび基準ベクトルを示す図である。なお、図7では、軌跡ベクトルv1および基準ベクトルv2を見やすくする目的でプレイヤキャラクタ41および敵キャラクタ42を点線で示している。また、図7に示す軌跡ベクトルv1および基準ベクトルv2は、実際には画面に表示されない。
【0050】
軌跡ベクトルとは、プレイヤによって描かれた軌跡を示すベクトルである。ここでは、当該軌跡を1本の直線に近似することで軌跡ベクトルを算出する。具体的には、軌跡ベクトルは、軌跡の初期入力位置を始点とし、最後に検出された入力位置を終点とするベクトルとなる。
【0051】
なお、詳細は後述するが、軌跡ベクトルは、軌跡の全体を示すベクトルに必ずしもなるわけではなく、連続して入力された軌跡の少なくとも一部を示すベクトルであることもある。例えば、上述したスクラッチ操作によって描かれる軌跡が描かれる場合には、当該軌跡の一部の直線部分を示すベクトルが軌跡ベクトルとして算出される。
【0052】
一方、基準ベクトルv2は、画面上におけるプレイヤキャラクタ41の位置を始点とし、軌跡ベクトルv1によって決められる位置を終点とするベクトルである。ここで、「軌跡ベクトルによって決められる位置」とは、軌跡ベクトルが決まることによって一義的に決められる位置であり、例えば、軌跡ベクトルの始点や、中点や、終点の位置である。図7に示すように、本実施形態では、軌跡ベクトルv1によって決められる位置は、軌跡ベクトルv1の終点の位置であるとする。
【0053】
軌跡ベクトルv1および基準ベクトルv2を算出すると、ゲーム装置10は、軌跡ベクトルv1と基準ベクトルv2とのなす角度θ1を算出する。そして、算出した角度θ1に基づいてプレイヤキャラクタの攻撃のアクションを決定する。図8は、プレイヤキャラクタの攻撃のアクションを決定する方法を説明するための図である。図8では、軌跡ベクトルv1と基準ベクトルv2との始点の位置をそろえて記載している。本実施形態においては、軌跡ベクトルv1と基準ベクトルv2とのなす角度θ1は、基準ベクトルv2の方向を基準方向(0°)とし、軌跡ベクトルv1を右回りに見たときの角度として表されるものとする。θ1のとり得る範囲は、0°≦θ1<360°とする。θ1のとり得る範囲は、攻撃のアクションに応じて、第1〜第4範囲45〜48の4つに分割される。具体的には、各範囲は次のように設定される。
第1範囲(図8に示す領域45):0≦θ1≦45°または315°<θ1<360°
第2範囲(図8に示す領域46):45°<θ1≦135°
第3範囲(図8に示す領域47):135°<θ1≦225°
第4範囲(図8に示す領域48):225°<θ1≦315°
プレイヤキャラクタ41から見て基準ベクトルv2の方向を正面方向としたとき、第1範囲は、軌跡ベクトルv1がほぼ正面方向を向いている場合におけるθ1の範囲である。また、第2範囲は、軌跡ベクトルv1が右方向を向いている場合におけるθ1の範囲である。第3範囲は、軌跡ベクトルv1が左方向を向いている場合におけるθ1の範囲である。第4範囲は、軌跡ベクトルv1が背面方向を向いている場合におけるθ1の範囲である。
【0054】
各範囲には、攻撃のアクションが1つずつ対応付けられる。すなわち、第1範囲には「突き」のアクションが対応付けられる。第2範囲には「左斬り」のアクションが対応付けられる。第3範囲には、「縦斬り」のアクションが対応付けられる。第4範囲には、「右斬り」のアクションが対応付けられる。
【0055】
ゲーム装置10は、算出したθ1の値がどの範囲に属するかを判断する。そして、プレイヤキャラクタが行うべき攻撃のアクションを、算出したθ1の値が属する範囲に対応するアクションに決定する。例えば図8に示す場合においてはθ1は第2範囲に属するので、プレイヤキャラクタが行うべき攻撃のアクションは、第2範囲に対応する「左斬り」に決定される。
【0056】
プレイヤキャラクタの攻撃のアクションを決定すると、ゲーム装置10は、決定したアクションをプレイヤキャラクタが行う画像を第2のLCDに表示する。図9および図10は、プレイヤキャラクタが攻撃のアクションを行う際のゲーム画面を示す図である。例えば、上記角度θ1が第1範囲に属する場合、プレイヤキャラクタ41は、図9に示す「突き」のアクションを行う。また、角度θ1が第4範囲に属する場合、プレイヤキャラクタ41は、図10に示す「右斬り」のアクションを行う。このように、本実施形態では、プレイヤが描いた軌跡の方向(軌跡ベクトル)とプレイヤキャラクタから当該軌跡への方向(基準ベクトル)との関係に応じて、プレイヤキャラクタが行うアクションが変化する。
【0057】
なお、プレイヤキャラクタ41が攻撃のアクションを行う方向は、軌跡ベクトルに基づいて決定される。具体的には、ゲーム装置10は、軌跡ベクトルの中点の方向に向かってアクションを行うようにプレイヤキャラクタ41の動作を制御する。なお、他の実施形態においては、プレイヤキャラクタ41は、現在の位置から軌跡ベクトルの始点の方向に向かってアクションを行うようにしてもよいし、軌跡ベクトルの終点の方向に向かってアクションを行うようにしてもよい。なお、軌跡ベクトルの中点または終点の方向に向かってアクションを行う場合には、敵キャラクタを斬りつけるように軌跡を描けば(図4参照)、その敵キャラクタに対して攻撃を行うことができる。つまり、この場合、プレイヤは、スティック16を使って実際に敵キャラクタを攻撃するような感覚でゲーム操作を行えばよいので、ゲームの操作性を向上することができる。また、本実施形態では、プレイヤキャラクタ41は画面の中央に表示されるので、プレイヤは、プレイヤキャラクタ41を基準に上下左右のどの方向にも軌跡を容易に描くことができる。つまり、プレイヤは、プレイヤキャラクタ41の全方向に攻撃を行わせることができる。
【0058】
ゲーム装置10は、プレイヤキャラクタ41が攻撃のアクションを行った結果、当該攻撃が敵キャラクタ42に命中したか否かを判定する。命中したと判定される場合、敵キャラクタ42にはダメージが与えられる。本実施形態では、敵キャラクタ42に与えられるダメージは、各アクションに応じて異なる。また、プレイヤキャラクタ41が攻撃するまでの時間(攻撃のアクションが開始されてから敵キャラクタに攻撃が命中するまでの時間)は、各アクションに応じて異なる。例えば、「突き」のアクションについては、攻撃するまでの時間が短い(攻撃が速い)代わりに与えるダメージを小さくしたり、「縦斬り」のアクションは、攻撃するまでの時間が長い(攻撃が遅い)代わりに与えるダメージを大きくしたりすることができる。このように、各アクションによって異なるゲーム効果を設定することによって、ゲームの戦略性を向上することができる。
【0059】
また、本実施形態では、プレイヤキャラクタ41が攻撃のアクションを行っている間、プレイヤキャラクタ41の移動動作は行われない。したがって、プレイヤキャラクタ41が攻撃のアクションを行っている間にプレイヤが移動操作を行っても、その移動操作は無視される。
【0060】
以上のように、本実施形態では、プレイヤキャラクタは4種類の通常攻撃を行うことが可能であり、プレイヤは、画面上に描く軌跡を変化させることによって4種類の攻撃のアクションを使い分けることができる。これによって、タッチパネル15のようなポインティングデバイスを用いたゲームにおいても、プレイヤキャラクタに多彩なアクションを容易に行わせることができる。
【0061】
また、本実施形態では、プレイヤによって描かれた軌跡をプレイヤキャラクタ41から見たとき、当該軌跡が手前から奥に向けて描かれた場合、軌跡ベクトルv1は第1範囲に属することになる。したがって、この場合、プレイヤキャラクタ41は「突き」のアクション(図9参照)を行う。また、プレイヤキャラクタ41から見て左から右に向けて軌跡が描かれた場合、軌跡ベクトルv1は第2範囲に属することになり、プレイヤキャラクタ41は「左斬り」のアクションを行う。同様に、プレイヤキャラクタ41から見て奥から手前に向けて軌跡が描かれた場合、プレイヤキャラクタ41は「縦斬り」のアクションを行い、プレイヤキャラクタ41から見て右から左に向けて軌跡が描かれた場合、プレイヤキャラクタ41は「右斬り」のアクション(図10参照)を行う。このように、本実施形態では、プレイヤキャラクタ41が剣を振る軌道は、プレイヤが描いた軌跡の軌道に近いものとなる。例えば、プレイヤは、「突き」で敵キャラクタ42を攻撃したい場合、スティック16で敵キャラクタ42を実際に突くような感覚で、プレイヤキャラクタ41から見て手前から奥に向けて軌跡を描けばよい。つまり、プレイヤキャラクタ41は、プレイヤが描いた軌跡のイメージに近いアクションを行うこととなる。したがって、プレイヤは攻撃操作の操作方法をイメージしやすく、プレイヤにとってわかりやすい操作方法を提供することができる。
【0062】
以上に述べたように、本実施形態では、画面上に軌跡を描くことによって、プレイヤは、プレイヤキャラクタに通常攻撃を行わせることができる。ただし、本実施形態では、プレイヤが描いた軌跡が、予め定められた所定の長さ以上であり、かつ、予め定められた所定時間以内に入力されたことを条件とする。つまり、プレイヤが描いた軌跡がこの条件を満たさない場合、ゲーム装置10は、プレイヤキャラクタに通常攻撃を行わせない。なお、この場合には、プレイヤが軌跡を描いた操作は移動操作とみなされ、ゲーム装置10は、入力位置に応じた方向へプレイヤキャラクタを移動させる処理を行う。したがって、プレイヤは、攻撃操作を行う場合、所定長さ以上の直線状の軌跡を所定の速度で描かなければならない。
【0063】
上記の条件を設定するのは、プレイヤが行った操作が移動操作であるかそれとも攻撃操作であるかを区別するためである。本実施形態では、移動操作および攻撃操作の両方がタッチパネル15を用いて行われる。そのため、もし上記の条件を設定しなければ、プレイヤが移動操作を行う目的で軌跡を描いた場合でも、当該軌跡を描く操作が攻撃操作とみなされて攻撃のアクションが行われてしまうことがある。そこで、本実施形態では、プレイヤが意図しない攻撃のアクションが行われることを防止するために上記条件を設定している。
【0064】
次に、プレイヤキャラクタがスクラッチ操作を行う際の処理について図11および図12を用いて説明する。図11は、プレイヤがスクラッチ操作を行うときのゲーム画面を示す図である。図11においては、プレイヤキャラクタ41の右側の領域において、軌跡T2がプレイヤによって描かれている。軌跡T2は、直線状の軌跡を5つ連続して描いたような折れ線状の形状である。図11に示すように、スクラッチ操作は、直線状の軌跡を複数回反転させるように軌跡を描く操作である。
【0065】
プレイヤによって画面上に軌跡が描かれると、ゲーム装置10は、当該軌跡を1以上の直線に近似する。図12は、プレイヤによって描かれた軌跡の一例を示す図である。図12では、点P5の位置が初期入力位置であり、点P13の位置が最後に検出された入力位置であるとする。ゲーム装置10は、検出された各入力位置を検出された順に結ぶ折れ線について、互いに接続される2つの線分のなす角度が鋭角となる部分を検出する(後述するステップS31)。具体的には、ゲーム装置10は、新たな入力位置が検出される度に、現在差分ベクトルと前差分ベクトルとの角度差を算出する。そして、当該角度差に基づいて、互いに接続される2つの線分のなす角度が鋭角となるか否かを判断する(後述するステップS32)。
【0066】
例えば、図12に示す折れ線を例とすると、点P6から点P7までを結ぶ線分(差分ベクトル)と、点P7から点P8までを結ぶ線分とのなす角θ2が鋭角になっている。点P6から点P7までを結ぶ線分と点P7から点P8までを結ぶ線分とのなす角θ2が鋭角になる場合とは、点P6から点P7までを結ぶ差分ベクトルと点P7から点P8までを結ぶ差分ベクトルとの角度差θ2’が、90°<θ2’<270°の範囲内の値となることである。なお、以下では、上記折れ線の鋭角部分の頂点となる入力位置を反転位置と呼ぶ。
【0067】
プレイヤによって描かれた軌跡について反転位置が2つ以上検出されると、ゲーム装置10は、順に検出された2つの反転位置について、1カ所目の反転位置が検出されてから所定時間以内に2カ所目の反転位置が入力されたか否かを判定する(後述するステップS42)。なお、この所定時間は予め定められている。判定の結果、所定時間以内に入力された場合、当該2つの反転位置を結ぶベクトルが軌跡ベクトルとして算出される。図12を例にとって説明すると、点P7の入力位置(反転位置)が検出されてから所定時間以内に点P10の入力位置(反転位置)が入力された場合、点P7から点P10までを結ぶベクトルが軌跡ベクトルとして算出される。同様に、点P10の入力位置が検出されてから所定時間以内に点P12の入力位置が入力された場合、点P10から点P12までを結ぶベクトルが軌跡ベクトルとして算出される。
【0068】
以上のように、軌跡を描く操作がスクラッチ操作と判断されるためには、次に示す2つの条件を満たす必要がある。第1の条件は、プレイヤによって描かれた軌跡において2つ以上の反転位置が存在することである。第2の条件は、1カ所目の反転位置が検出されてから所定時間以内に2カ所目の反転位置が入力されることである。
【0069】
ここで、第1の条件において反転位置を2カ所以上としているのは、スクラッチ操作と移動操作とを区別するためである。もし反転位置が1カ所であった場合にスクラッチ操作と判断すれば、プレイヤキャラクタを方向転換させる場合における移動操作がスクラッチ操作と判断される場合が生じる。プレイヤキャラクタを方向転換させる移動操作を行う場合には、プレイヤによって描かれた軌跡に反転位置が含まれるからである。これを防止するため、本実施形態では、第1の条件において反転位置を2カ所以上としている。
【0070】
また、第2の条件も第1の条件と同様、スクラッチ操作と移動操作とを区別するために設定されるものである。プレイヤが移動操作を行う際、プレイヤキャラクタを方向転換させた後しばらくして方向転換を再度行う場合も考えられる。第2の条件を設定することによって、このような場合における操作をスクラッチ操作と判断されることを防止している。
【0071】
また、連続攻撃は、プレイヤによるタッチパネル15への入力が継続している間に開始される。具体的には、ゲーム装置10は、第1および第2の条件が満たされたと判断した時点で、プレイヤによるタッチパネル15への入力が継続している間であっても、プレイヤキャラクタに1回の攻撃のアクションを行わせる。そして、プレイヤによるタッチ入力が続き、第1および第2の条件が再度満たされたと判断されると、プレイヤキャラクタに再度1回の攻撃のアクションを行わせる。したがって、プレイヤは、スクラッチ操作を連続して(タッチ入力を継続したままで)行うことによって、プレイヤキャラクタに連続攻撃を行わせることができる。
【0072】
なお、本実施形態においては、連続攻撃におけるアクションは、通常攻撃におけるアクションと同様、軌跡ベクトルと基準ベクトルとのなす角に応じて決定される。また、他の実施形態においては、軌跡ベクトルが同じであっても、連続攻撃におけるアクションと通常攻撃におけるアクションとを異なるようにしてもよい。また、連続攻撃の回数に応じてアクションを変化させてもよい。例えば、所定回数以上の連続攻撃を行った場合には、特別なアクションを行うことができるようにしてもよい。
【0073】
次に、ゲームプログラムを実行することによってゲーム装置10において行われるゲーム処理の詳細を説明する。まず、ゲーム処理において用いられる主なデータについて図13を用いて説明する。図13は、ゲーム装置10のRAM24に記憶される主なデータを示す図である。図13に示すように、RAM24には、現在入力位置データ51、前入力位置データ52、初期入力位置データ53、第1反転位置データ54、第2反転位置データ55、およびキャラクタ2次元座標データ56等の座標データが記憶される。また、RAM24には、現在差分ベクトルデータ57、前差分ベクトルデータ58、軌跡ベクトルデータ59、および基準ベクトルデータ60等のベクトルデータが記憶される。また、RAM24には、総フレームカウンタ61、反転フレームカウンタ62、反転フラグ63、および攻撃フラグ64等のゲーム処理に用いられるデータが記憶される。なお、RAM24には、図13に示すデータの他、プレイヤキャラクタに関するデータ(プレイヤキャラクタの画像データや位置データ等)やゲーム空間に関するデータ(地形データ等)等、ゲーム処理に必要なデータが記憶される。
【0074】
現在入力位置データ51は、上記現在入力位置の座標を示すデータである。現在入力位置データ51は、最新の入力位置を示し、タッチパネル15が入力位置を検出する毎に、すなわち、タッチパネル15から出力される座標データをゲーム装置10が読み込む毎に更新される。前入力位置データ52は、上記前入力位置の座標を示すデータである。前入力位置データ52は、現在入力位置データ51が更新される度に更新され、更新前の現在入力位置データ51により示される座標が、更新後の前入力位置データ52として記憶される。初期入力位置データ53は、上記初期入力位置の座標を示すデータである。
【0075】
各反転位置データ54および55は、上記反転位置の座標を示すデータである。第1反転位置データ54は、最新の反転位置の座標を示し、第2反転位置データ55は、1つ前の反転位置の座標を示す。例えば図12に示す軌跡が描かれる場合を例にとって説明すると、点P11の位置が現在入力位置である場合、第1反転位置データ54は、点P10の反転位置の座標を示し、第2反転位置データ55は、点P7の反転位置の座標を示す。
【0076】
キャラクタ2次元座標データ56は、プレイヤキャラクタの画面上における位置(座標)を示すデータである。なお、図13には示していないが、キャラクタ2次元座標データ56の他に、プレイヤキャラクタのゲーム空間内における3次元座標を示すデータもRAM24に記憶されている。
【0077】
現在差分ベクトルデータ57は、上記現在差分ベクトルを示すデータである。現在差分ベクトルデータ57は、最新の差分ベクトルを示し、タッチパネル15が入力位置を検出する毎に更新される。前差分ベクトルデータ58は、上記前差分ベクトルを示すデータである。前差分ベクトルデータ58は、現在差分ベクトルデータ57が更新される度に更新され、更新前の現在差分ベクトルデータ57により示される座標が、更新後の前差分ベクトルデータ58として記憶される。また、軌跡ベクトルデータ59は、上記軌跡ベクトルを示すデータである。基準ベクトルデータ60は、上記基準ベクトルを示すデータである。
【0078】
総フレームカウンタ61は、プレイヤによるタッチ入力が開始されてからのフレーム数を示すカウンタである。反転フレームカウンタ62は、プレイヤにより描かれた軌跡が反転してからのフレーム数を示すカウンタである。図12を用いて説明すると、ゲーム装置10は、点P8の入力位置が検出されると、プレイヤにより描かれた軌跡が反転したと判断して、反転フレームカウンタ62による計測を開始する。また、軌跡の反転が再度行われる(図12に示す点P11の入力位置が検出される)と、ゲーム装置10は、反転フレームカウンタ62の値をリセットし、再度最初から計測を行う。
【0079】
また、反転フラグ63は、軌跡の反転が行われたか否かを示すフラグである。すなわち、軌跡の反転が行われたとき、反転フラグ63は“ON”に設定され、軌跡の反転が行われていないとき、反転フラグ63はOFFに設定される。図12を用いて説明すると、ゲーム装置10は、点P8の入力位置が検出されると、プレイヤにより描かれた軌跡が反転したと判断して、反転フラグ63を“ON”に設定する。なお、初期状態では反転フラグ63は“OFF”に設定されている。また、攻撃フラグ64は、プレイヤキャラクタが攻撃のアクションを行っている途中であるか否かを示すフラグである。すなわち、プレイヤキャラクタが攻撃のアクションを開始すると、攻撃フラグ64は“ON”に設定され、当該アクションが終了すると、攻撃フラグ64はOFFに設定される。
【0080】
次に、ゲームプログラムを実行することによってゲーム装置10において行われるゲーム処理の詳細を、図14〜図19を用いて説明する。図14は、ゲーム装置10において実行されるゲーム処理の流れを示すフローチャートである。ゲーム装置10の電源が投入されると、ゲーム装置10のCPUコア21は、図示しないブートROMに記憶されている起動プログラムを実行し、RAM24等の各ユニットが初期化される。そして、メモリカード17に格納されたゲームプログラムがRAM24に読み込まれ、CPUコア21によって当該ゲームプログラムの実行が開始される。図14に示すフローチャートは、以上の処理が完了した後に行われるゲーム処理を示すフローチャートである。なお、図14〜図19においては、ゲーム処理のうち、プレイヤキャラクタに対する移動操作および攻撃操作に関する処理について詳細に示し、本願発明と関連しない他のゲーム処理については詳細な説明を省略する。
【0081】
図14のステップS1において、まず、ゲーム空間が構築され、プレイヤキャラクタや敵キャラクタが初期位置に配置される。そして、プレイヤキャラクタとその周囲のゲーム空間を撮影する位置に仮想カメラが設定され、仮想カメラから見たゲーム空間の画像が第2のLCDに表示される。このステップS1以降の処理において、タッチパネル等を用いたゲーム操作が受け付けられ、ゲームが進行する。ステップS1の次にステップS2の処理が行われる。
【0082】
ステップS2において、タッチ入力があったか否かが判定される。具体的には、CPUコア21は、タッチパネル15から出力されるデータを読み込み、タッチパネル15から座標データが出力されているか否かを判定する。タッチパネル15から座標データが出力されている場合、タッチ入力があると判定されてステップS3の処理が行われる。一方、入力がないことを示すデータがタッチパネル15から出力されている場合、タッチ入力がないと判定されて再度ステップS2の処理が行われる。つまり、CPUコア21は、タッチ入力があるまでステップS2の処理を繰り返し、タッチ入力があるとステップS3の処理を行う。
【0083】
ステップS3において、各データおよび各フレームカウンタが初期化される。具体的には、RAM24に記憶されている各データ(各座標データ51〜56および各ベクトルデータ57〜60)および各フレームカウンタ61および62の内容が初期化される。続くステップS4において、RAM24に記憶されている反転フラグ63の値が“OFF”に設定される。ステップS4の次にステップS5の処理が行われる。
【0084】
ステップS5において、タッチパネル15に対する入力位置が検出される。具体的には、CPUコア21は、タッチパネル15から入力位置の座標データを取得し、取得した座標データを現在入力位置データ51としてRAM24に記憶する。続くステップS6において、ステップS5で検出された入力位置が初期入力位置に設定される。具体的には、CPUコア21は、ステップS5で取得した座標データを初期入力位置データ53としてRAM24に記憶する。続くステップS7において、ステップS5で取得された座標データを前入力位置データ52としてRAM24に記憶する。ステップS7の処理は、後述するステップS13において現在差分ベクトルを算出する際に必要となる前入力位置データ52を記憶しておく処理である。ステップS7の次にステップS8の処理が行われる。
【0085】
ステップS8においては、メイン処理が行われる。メイン処理では、タッチパネル15に対する入力位置が検出され、検出された入力位置に基づいてプレイヤキャラクタが移動したり攻撃のアクションを行ったりする。以下、メイン処理の詳細を図15〜図19を用いて説明する。
【0086】
図15は、図14に示すステップS8の詳細な処理の流れを示すフローチャートである。メイン処理においてはまずステップS11において、タッチパネル15に対する入力位置が検出される。ステップS11の処理は上記ステップS5の処理と同様である。なお、ステップS11において、現在入力位置データ51はRAM24に更新して記憶される。また、メイン処理においては、1フレーム毎にステップS11の処理が行われる。ステップS11の次にステップS12の処理が行われる。
【0087】
ステップS12においては、RAM24に記憶されている現在差分ベクトルデータ57が前差分ベクトルデータ58に代入される。つまり、RAM24に記憶されている現在差分ベクトルデータ57の内容が前差分ベクトルデータ58として記憶される。続くステップS13において、現在差分ベクトルが新たに算出される。上述のように、現在差分ベクトルは、前入力位置を始点とし現在入力位置を終点とするベクトルである(図6参照)。現在差分ベクトルは、RAM24に記憶されている現在入力位置データ51および前入力位置データ52を用いて算出される。続くステップS14において、RAM24に記憶されている総フレームカウンタ61の値が1加算される。
【0088】
ステップS14の次のステップS15において、第1行動判定処理が行われる。第1行動判定処理は、プレイヤによるタッチ入力に基づいてプレイヤの操作が移動操作であるか攻撃操作(スクラッチ操作)であるかを判断し、プレイヤの操作に従ってプレイヤキャラクタを動作させる処理である。以下、図16〜図18を用いて第1行動判定処理の詳細を説明する。
【0089】
図16は、図15に示すステップS15の詳細な処理の流れを示すフローチャートである。第1行動判定処理においてはまずステップS31において、現在差分ベクトルと前差分ベクトルとの角度差が算出される。当該角度差は、RAM24に記憶されている現在差分ベクトルデータ57および前差分ベクトルデータ58を用いて算出される。続くステップS32において、ステップS31で算出された角度差が所定範囲内の値をとるか否かが判定される。この所定範囲は、現在差分ベクトルと前差分ベクトルとの角度差θが、90°<θ<270°となる範囲である。当該角度差θが90°<θ<270°となる場合、プレイヤによって描かれた軌跡を表す各入力位置を検出順に結んだ折れ線は、鋭角の部分を有することになる。例えば図12に示す軌跡が描かれる場合を例にとって説明すると、点P8または点P11の位置が現在入力位置である場合、ステップS32の判定において上記角度差が所定範囲内の値をとると判定される。ステップS32の処理は、プレイヤによって描かれた軌跡を表す各入力位置を検出順に結んだ折れ線について鋭角となる部分があるか否か、換言すれば、プレイヤによって描かれた軌跡の方向が反転したか否かを判定するための処理である。
【0090】
ステップS32の判定において、上記角度差が所定範囲内の値をとると判定される場合、ステップS35の処理が行われる。ステップS35以降の処理においては、所定の条件が満たされればプレイヤによる操作がスクラッチ操作であると判断され、プレイヤキャラクタの攻撃処理が行われる(後述するステップS44)。なお、所定の条件が満たされなければプレイヤによる操作が移動操作であると判断され、プレイヤキャラクタの移動処理が行われる(後述するステップS34またはS41)。一方、ステップS32の判定において、上記角度差が所定範囲内の値をとらないと判定される場合、ステップS33の処理が行われる。ステップS33以降の処理においては、プレイヤキャラクタの移動処理が行われる(後述するステップS34またはS41)。
【0091】
ステップS33においては、RAM24に記憶されている反転フラグ63が“ON”に設定されているか否かが判定される。ステップS33の処理は、現在入力中の軌跡が反転位置を有するか否かを判定するための処理である。例えば図12に示す軌跡が描かれる場合を例にとって説明すると、点P8の位置が現在入力位置である時点で反転フラグ63が“ON”に設定される(後述するステップS37)。したがって、点P8よりも後の位置が現在入力位置である場合には、ステップS33の判定において、反転フラグ63が“ON”に設定されていると判定される。ステップS33の判定において、反転フラグ63が“ON”に設定されていると判定される場合、後述するステップS38の処理が行われる。一方、反転フラグ63が“ON”に設定されていない(すなわち、“OFF”に設定されている)と判定される場合、ステップS34の処理が行われる。
【0092】
ステップS34においては、移動処理が行われる。移動処理は、ゲーム空間内においてプレイヤキャラクタを移動させる処理である。以下、図17を用いて移動処理の詳細を説明する。
【0093】
図17は、図16に示すステップS34の詳細な処理の流れを示すフローチャートである。移動処理においてはまずステップS50において、プレイヤキャラクタが攻撃のアクションを行っている途中であるか否かが判定される。具体的には、RAM24に記憶されている攻撃フラグ64が“ON”に設定されている場合、プレイヤキャラクタが攻撃のアクションを行っている途中であると判定される。この場合、ステップS51〜54の処理はスキップされ、CPUコア21は移動処理を終了する。したがって、本実施形態では、プレイヤキャラクタが攻撃のアクションを行っていないことを条件として、プレイヤキャラクタに移動動作を行わせる処理(ステップS51〜54)が行われる。一方、RAM24に記憶されている攻撃フラグ64が“OFF”に設定されている場合、プレイヤキャラクタが攻撃のアクションを行っている途中ではないと判定される。この場合、ステップS51の処理が行われる。
【0094】
ステップS51において、画面上におけるプレイヤキャラクタの位置を示す2次元座標が算出される。具体的には、CPUコア21は、プレイヤキャラクタのゲーム空間における位置を示す3次元座標を仮想カメラの投影面の2次元座標へ変換し、当該2次元座標からタッチパネル15上の座標系の2次元座標を算出する。算出された座標のデータは、キャラクタ2次元座標データ56としてRAM24に記憶される。ステップS51の次にステップS52の処理が行われる。
【0095】
ステップS52において、ステップS51で算出されたプレイヤキャラクタの2次元座標を始点とし、現在入力位置を終点とするベクトルが算出される。このベクトルは、RAM24に記憶されている現在入力位置データ51およびキャラクタ2次元座標データ56を用いて算出される。続くステップS53において、ステップS52で算出されたベクトルの角度が算出される。具体的には、予め定められた基準方向を0°としたときにおける当該ベクトルの角度が算出される。続くステップS54において、ステップS53で算出された角度に基づいてプレイヤキャラクタがゲーム空間において移動される(図3参照)。具体的には、CPUコア21は、ステップS53で算出された角度に基づいてプレイヤキャラクタの移動方向を決定する。プレイヤキャラクタは、決定された移動方向へ所定距離だけ移動する。なお、この所定距離は、1フレームの間にプレイヤキャラクタが移動可能な距離である。所定距離は、予め定められた一定値であってもよいし、ステップS52で算出されたベクトルの大きさに応じて決定されてもよい。以上に示したステップS51〜S54の処理が終了すると、CPUコア21は移動処理を終了する。
【0096】
図16の説明に戻り、ステップS34の処理が終了すると、CPUコア21は第1行動判定処理を終了する。以上のように、プレイヤの描いた軌跡に反転位置がない場合(ステップS32の判定結果が否定である場合)、プレイヤキャラクタはゲーム空間内を移動する動作を行う。
【0097】
一方、上述したように、プレイヤの描いた軌跡に反転位置がある場合(ステップS32の判定結果が肯定である場合)、ステップS35の処理が行われる。ステップS35においては、RAM24に記憶されている各反転位置データ54および55が更新される。具体的には、RAM24に記憶されている第1反転位置データ54の内容を第2反転位置データ55として記憶し、前入力位置データ52の内容を新たな第1反転位置データ54として記憶する。ステップS35の次にステップS36の処理が行われる。
【0098】
ステップS36においては、RAM24に記憶されている反転フラグ63が“ON”に設定されているか否かが判定される。ステップS36の処理はステップS33の処理と同じである。ステップS36の判定において、反転フラグ63が“ON”に設定されていると判定される場合、後述するステップS42の処理が行われる。一方、反転フラグ63が“ON”に設定されていない(すなわち、“OFF”に設定されている)と判定される場合、ステップS37の処理が行われる。例えば図12に示す軌跡が描かれる場合を例にとって説明すると、点P11の位置が現在入力位置である場合、ステップS32の判定結果が肯定となり、ステップS36の判定結果が肯定となる。したがって、この場合、ステップS42の処理へ進む。また、点P8の位置が現在入力位置である場合、ステップS32の判定結果が肯定となり、ステップS36の判定結果が否定となる。したがって、この場合、ステップS37の処理へ進む。
【0099】
ステップS37においては、RAM24に記憶されている反転フラグ63が“ON”に設定される。続くステップS38においては、RAM24に記憶されている反転フレームカウンタ62の値が1加算される。続くステップS39において、反転フレームカウンタ62の値が予め定められた所定値以上であるか否かが判定される。ステップS39の処理は、スクラッチ操作の上記第2の条件が満たされているか否かを判定するための処理である。反転フレームカウンタ62の値が上記所定値以上であると判定される場合、ステップS40の処理が行われる。一方、反転フレームカウンタ62の値が上記所定値よりも小さいと判定される場合、上記ステップS34の移動処理が行われる。
【0100】
ステップS40においては、RAM24に記憶されている反転フラグ63が“OFF”に設定される。ステップS40の処理が行われる場合には、スクラッチ操作の上記第2の条件が満たされていないからである。続くステップS41において、移動処理が行われる。したがって、スクラッチ操作の上記第2の条件が満たされていない場合には、プレイヤによる操作は移動操作と判断される。なお、ステップS41の移動処理は、上記ステップS34の移動処理と同じである。ステップS41の次に、後述するステップS45の処理が行われる。
【0101】
一方、ステップS42においては、反転フレームカウンタ62の値が予め定められた所定値以上であるか否かが判定される。ステップS42の処理は、上記ステップS39の処理と同じである。反転フレームカウンタ62の値が上記所定値以上であると判定される場合、上記ステップS40の処理が行われる。一方、反転フレームカウンタ62の値が上記所定値よりも小さいと判定される場合、ステップS43の処理が行われる。
【0102】
ステップS43においては、軌跡ベクトルが算出される。この軌跡ベクトルは、上記第2反転位置を始点とし、上記第1反転位置を終点とするベクトルである。したがって、この軌跡ベクトルは、RAM24に記憶されている各反転位置データ54および55を用いて算出することができる。ステップS43の次にステップS44の処理が行われる。
【0103】
ステップS44においては、攻撃処理が行われる。攻撃処理は、ゲーム空間内においてプレイヤキャラクタに攻撃のアクションを行わせる処理である。以下、図18を用いて攻撃処理の詳細を説明する。
【0104】
図18は、図16に示すステップS44の詳細な処理の流れを示すフローチャートである。攻撃処理においてはまずステップS61において、プレイヤキャラクタの画面上における位置を示す2次元座標が算出される。ステップS61の処理は、図17の上記ステップS51の処理と同じである。続くステップS62において、基準ベクトルが算出される。上述したように、基準ベクトルは、ステップS51で算出されたプレイヤキャラクタの2次元座標を始点とし、現在入力位置を終点とするベクトルである。したがって、基準ベクトルは、RAM24に記憶されている現在入力位置データ51およびキャラクタ2次元座標データ56を用いて算出される。算出された基準ベクトルのデータは、基準ベクトルデータ60としてRAM24に記憶される。ステップS62の次にステップS63が行われる。
【0105】
ステップS63においては、軌跡ベクトルと基準ベクトルとのなす角度が算出される。この角度は、RAM24に記憶されている軌跡ベクトルデータ59および基準ベクトルデータ60を用いて算出される。続くステップS64において、ステップS63で算出された角度に基づいて、プレイヤキャラクタが行うべきアクションが決定される。具体的には、ステップS63で算出された角度が上記第1〜第4範囲(図8参照)のいずれに属するかによって、プレイヤキャラクタが行うべきアクションが決定される。
【0106】
続くステップS65において、CPUコア21は、ステップS64で決定されたアクションをプレイヤキャラクタに実行させる。すなわち、プレイヤキャラクタが当該アクションを行うゲーム画像を第2のLCDに表示させる。なお、プレイヤキャラクタが行うアクションのアニメーションは、複数のフレームにわたって表示される。ここで、ステップS65の時点において、以前に行われた攻撃のアクションがまだ終了していない場合(すなわち、攻撃フラグ64が“ON”の場合)、CPUコア21は、当該アクションが終了した後に続けて、直前のステップS64で決定されたアクションをプレイヤキャラクタに実行させるようにしてもよい。これによって、プレイヤキャラクタの攻撃のアクション中においてプレイヤによってさらに攻撃操作が行われた場合、連続して攻撃のアクションが行われることになる。
【0107】
続くステップS66において、RAM24に記憶されている攻撃フラグ64の内容が“ON”に設定される。ステップS66の後、CPUコア21は攻撃処理を終了する。
【0108】
図16の説明に戻り、ステップS44の攻撃処理の次に、ステップS45の処理が行われる。すなわち、ステップS45においては、RAM24に記憶されている反転フレームカウンタ62の値が初期化される(すなわち、0に設定される)。ステップS45の後、CPUコア21は第1行動判定処理を終了する。以上で、第1行動判定処理の説明を終了する。
【0109】
図15の説明に戻り、ステップS15の行動判定処理の次にステップS16の処理が行われる。すなわち、ステップS16において、CPUコア21は、RAM24に記憶されている現在入力位置データ51の内容を前入力位置データ52としてRAM24に記憶する。ステップS16の処理は、上記ステップS7の処理と同じ処理である。ステップS16の次にステップS17の処理が行われる。
【0110】
ステップS17においては、プレイヤキャラクタの攻撃アクションが終了したか否かが判定される。すなわち、上記攻撃処理のステップS65において開始された攻撃アクションのアニメーションが終了したか否かが判定される。当該アニメーションの最後のフレームが画面に表示されている場合、プレイヤキャラクタの攻撃アクションが終了したと判定され、ステップS18およびS19の処理が行われる。一方、当該アニメーションがまだ終了していない場合、または、当該アニメーションが表示されていない場合には、ステップS18およびS19の処理がスキップされてステップS20の処理が行われる。
【0111】
ステップS18においては、CPUコア21は、敵キャラクタのダメージを計算する処理を行う。つまり、上記ステップS65で実行されたアクションに応じたダメージが敵キャラクタに与えられる。具体的には、まず、CPUコア21は、ステップS65において実行されたアクションによる攻撃が敵キャラクタに命中したか否かを判定し、命中した場合にはどの敵キャラクタに命中したかを検出する。当該攻撃が命中していない場合は、ステップS18の処理を終了する。ここで、RAM24には、プレイヤキャラクタのアクションと、そのアクションによる敵キャラクタのダメージとを対応付けたテーブルが記憶されている。上記攻撃が命中した場合、CPUコア21は、当該テーブルを参照して、ステップS65で実行されたアクションに対応するダメージを敵キャラクタに与える。すなわち、敵キャラクタの体力を示すパラメータをダメージに応じて減少させる。以上のステップS18の後、ステップS19の処理が行われる。ステップS19においては、RAM24に記憶されている攻撃フラグ64が“OFF”に設定される。ステップS19の後、ステップS20の処理が行われる。
【0112】
ステップS20においては、プレイヤがタッチオフしたか否か、すなわち、タッチ入力がなくなったか否かが判定される。ステップS20の判定は、ステップS3と同様の方法で行われる。すなわち、CPUコア21は、タッチパネル15から出力されるデータを読み込み、タッチパネル15から座標データが出力されているか否かを判定する。タッチパネル15から座標データが出力されている場合、タッチ入力があると判定されてステップS11の処理が行われる。以降、タッチ入力がないと判定されるまでステップS11〜S20の処理が繰り返される。なお、ステップS20の次のステップS11では、ステップS20で読み込まれた座標データが現在入力位置データ51としてRAM24に記憶される。一方、ステップS20の判定において、入力がないことを示すデータがタッチパネル15から出力されている場合、タッチ入力がなくなったと判定されてステップS21の処理が行われる。
【0113】
ステップS21においては、第2行動判定処理が行われる。第2行動判定処理は、直前のステップS11〜S20のループにおいて検出されたプレイヤの操作が通常攻撃の攻撃操作であるか否かを判定し、通常攻撃の攻撃操作である場合にはプレイヤキャラクタに通常攻撃を行わせる処理である。以下、図19を用いて第2行動判定処理の詳細を説明する。
【0114】
図19は、図15に示すステップS21の詳細な処理の流れを示すフローチャートである。第2行動判定処理においてはまずステップS71において、RAM24に記憶されている総フレームカウンタ61の値が、予め定められた所定値以下であるか否かが判定される。総フレームカウンタ61の値が所定値以下である場合、ステップS72の処理が行われる。一方、総フレームカウンタ61の値が所定値よりも大きい場合、CPUコア21は第2行動判定処理を終了する。ステップS71の処理は、直前のステップS11〜S20においてプレイヤによって描かれた軌跡が、予め定められた所定時間以内に入力されたか否かを判定するための処理である。
【0115】
ステップS72においては、軌跡ベクトルが算出される。この軌跡ベクトルは、ステップS11〜S20においてプレイヤによって描かれた軌跡の始点から終点までを結ぶベクトルである。すなわち、軌跡ベクトルは、初期入力位置を始点とし、最後の入力位置を終点とするベクトルである。したがって、CPUコア21は、RAM24に記憶されている初期入力位置データ53および現在入力位置データ51を用いて軌跡ベクトルを算出する。
【0116】
続くステップS73においては、ステップS72で算出された軌跡ベクトルの大きさが、予め定められた所定値以上であるか否かが判定される。軌跡ベクトルの大きさが所定値以上である場合、ステップS74の処理が行われる。一方、軌跡ベクトルの大きさが所定値よりも小さい場合、CPUコア21は第2行動判定処理を終了する。ステップS73の処理は、直前のステップS11〜S20においてプレイヤによって描かれた軌跡が、予め定められた所定の長さ以上であるか否かを判定するための処理である。
【0117】
ステップS74においては、攻撃処理が行われる。ステップS74の攻撃処理は、上記ステップS34の攻撃処理と同じである。ただし、第1行動判定処理における攻撃処理と、第2行動判定処理における攻撃処理とで、プレイヤキャラクタが行うアクションを異なるようにしてもよい。続くステップS75において、CPUコア21は、敵キャラクタのダメージを計算する処理を行う。ステップS75の処理は上記ステップS18の処理と同じである。続くステップS76において、ステップS19と同様のステップS77の処理が行われる。ステップS77の後、CPUコア21は、図15に示す第2行動判定処理を終了する。また、図15において、ステップS18の第2行動判定処理が終了すると、CPUコア21はメイン処理を終了する。
【0118】
図14の説明に戻り、ステップS8のメイン処理の次にステップS9の処理が行われる。すなわち、ステップS9において、ゲームを終了するか否かが判定される。ステップS9の判定は、例えば、プレイヤキャラクタの体力が0になったか否かや、プレイヤキャラクタが全ての敵キャラクタを倒したか否か等によって行われる。ステップS9の判定において、ゲームを終了すると判定された場合、CPUコア21は、図14に示すゲーム処理を終了する。一方、ゲームを終了しないと判定された場合、ステップS3の処理が行われ、以降、ステップS9においてゲームを終了すると判定されるまでステップS3〜S9の一連の処理が繰り返される。以上で、ゲーム処理の詳細な説明を終了する。
【0119】
なお、以上に説明したゲーム処理においては、敵キャラクタの動作の制御については特に触れていないが、CPUコア21は、1フレーム毎に敵キャラクタの動作を制御する処理を行う。すなわち、予め定められたアルゴリズムに従って各敵キャラクタを移動させたり、攻撃させたりする。さらに、ゲーム処理中においては、敵キャラクタによるプレイヤキャラクタへの攻撃が命中したか否かが判定され、命中した場合には攻撃に応じたダメージをプレイヤキャラクタに与える処理が行われる。
【0120】
また、以上に説明したゲーム処理において、ある入力位置とその次に検出された入力位置との距離が所定長さよりも短い場合、当該次に検出された入力位置を無視するようにしてもよい。具体的には、ステップS13において算出される現在差分ベクトルの大きさが、予め定められた所定長さよりも小さい場合、ステップS16の処理を行わないようにしてもよい。また、この場合、現在差分ベクトルデータは更新されず、直前のステップS12で更新された前差分ベクトルデータは更新前の内容に戻される。このような短い差分ベクトルがある場合、現在差分ベクトルと前差分ベクトルとの角度差を算出する処理(ステップS31)において反転位置を正確に選出することができないおそれがあるからである。
【0121】
以上のように、本実施形態によれば、プレイヤキャラクタは、軌跡ベクトルと基準ベクトルとの角度に応じて異なる攻撃アクションを行う。したがって、プレイヤは、タッチパネル15を用いてプレイヤキャラクタに多彩なアクションを容易に行わせることができる。
【0122】
なお、本実施形態においては、画面上の任意の位置を指定することができるタッチパネルを入力装置として用いて、プレイヤキャラクタの表示位置を基準ベクトルの始点位置とした。ここで、他の実施形態では、入力装置は、タッチパッドのように、入力面上の任意の位置を指定することができる装置であってもよい。このとき、基準ベクトルの始点位置は、タッチパッドの入力面上における予め定められた所定位置(例えば、入力面の中心位置)に設定される。
【産業上の利用可能性】
【0123】
以上のように、本発明は、ポインティングデバイスの入力を用いたゲームにおいて、プレイヤキャラクタに多彩なアクションを行わせること等を目的としてゲームプログラムおよびゲーム装置に利用することが可能である。
【図面の簡単な説明】
【0124】
【図1】本発明の一実施形態に係るゲーム装置の外観図
【図2】ゲーム装置の内部構成図
【図3】ゲーム装置10の第2のLCD12に表示されるゲーム画面の例を示す図
【図4】プレイヤが通常攻撃の攻撃操作を行うときのゲーム画面を示す図
【図5】図4に示す軌跡T1を示す図
【図6】図5に示す現在入力位置および前入力位置を示す図
【図7】軌跡ベクトルおよび基準ベクトルを示す図
【図8】プレイヤキャラクタの攻撃のアクションを決定する方法を説明するための図
【図9】プレイヤキャラクタが「突き」の攻撃アクションを行う際のゲーム画面を示す図
【図10】プレイヤキャラクタが「右斬り」の攻撃アクションを行う際のゲーム画面を示す図
【図11】プレイヤがスクラッチ操作を行うときのゲーム画面を示す図
【図12】プレイヤによって描かれた軌跡の一例を示す図
【図13】ゲーム装置10のRAM24に記憶される主なデータを示す図
【図14】ゲーム装置10において実行されるゲーム処理の流れを示すフローチャート
【図15】図14に示すステップS8の詳細な処理の流れを示すフローチャート
【図16】図15に示すステップS15の詳細な処理の流れを示すフローチャート
【図17】図16に示すステップS34の詳細な処理の流れを示すフローチャート
【図18】図16に示すステップS44の詳細な処理の流れを示すフローチャート
【図19】図15に示すステップS21の詳細な処理の流れを示すフローチャート
【符号の説明】
【0125】
10 ゲーム装置
11,12 LCD
21 CPUコア
24 RAM
41 プレイヤキャラクタ
42 敵キャラクタ
59 軌跡ベクトルデータ
60 基準ベクトルデータ


【特許請求の範囲】
【請求項1】
入力面上においてプレイヤが指定した位置を検出する入力装置を備えるゲーム装置のコンピュータに実行させるゲームプログラムであって、
前記入力装置によって所定時間間隔で検出された各入力位置を、検出された順に前記ゲーム装置のメモリに記憶させる記憶ステップと、
前記入力面上においてプレイヤによって描かれた軌跡の少なくとも一部を示す軌跡ベクトルを前記各入力位置から算出する軌跡ベクトル算出ステップと、
前記入力面上における所定位置を始点とし、前記軌跡ベクトルによって決められる位置を終点とする基準ベクトルを算出する基準ベクトル算出ステップと、
前記軌跡ベクトルと前記基準ベクトルとのなす角の大きさに基づいてプレイヤキャラクタのアクションを決定するアクション決定ステップと、
前記決定されたアクションを前記プレイヤキャラクタが行う様子を表示装置に表示させる表示制御ステップとを前記コンピュータに実行させる、ゲームプログラム。
【請求項2】
前記入力装置は、表示装置の画面上を入力面として、当該画面上においてプレイヤが指定した位置を検出する装置であり、
前記画面上には、前記プレイヤキャラクタが表示されており、
前記所定位置は、前記プレイヤキャラクタが表示される位置である、請求項1に記載のゲームプログラム。
【請求項3】
前記表示制御ステップにおいては、前記プレイヤキャラクタが表示される位置から前記軌跡ベクトルの始点、中点、または終点への向きに前記プレイヤキャラクタが前記決定されたアクションを行う様子が表示される、請求項2に記載のゲームプログラム。
【請求項4】
前記所定位置は前記画面の中央の位置である、請求項3に記載のゲームプログラム。
【請求項5】
前記入力装置によって検出された入力位置に基づいて前記プレイヤキャラクタの移動方向を決定する移動決定ステップをさらに前記コンピュータに実行させ、
前記表示制御ステップは、前記移動決定ステップにおいて決定された移動方向に前記プレイヤキャラクタが移動する様子を前記表示装置に表示させるステップを含む、請求項1に記載のゲームプログラム。
【請求項6】
前記移動決定ステップは、前記アクション決定ステップによって決定されたアクションを前記プレイヤキャラクタが行っていないことを条件として、前記入力装置によって入力位置が検出される度に実行される、請求項5に記載のゲームプログラム。
【請求項7】
前記アクション決定ステップにおいては、前記軌跡ベクトルの大きさが所定値以上であるときのみ、前記プレイヤキャラクタのアクションが決定される、請求項5に記載のゲームプログラム。
【請求項8】
前記アクション決定ステップにおいては、前記軌跡ベクトルによって示される軌跡の部分が所定時間以内に入力されたときのみ、前記プレイヤキャラクタのアクションが決定される、請求項5に記載のゲームプログラム。
【請求項9】
前記軌跡ベクトル算出ステップは、前記入力面上においてプレイヤによって描かれた軌跡を1以上の直線に近似し、当該近似された各直線を示すベクトルを前記軌跡ベクトルとして当該直線毎に算出するステップを含み、
前記アクション決定ステップにおいては、各前記軌跡ベクトルについて個別に前記プレイヤキャラクタのアクションが決定され、
前記表示制御ステップにおいては、前記決定されたアクションを連続して前記プレイヤキャラクタが行う様子が前記表示装置に表示される、請求項1に記載のゲームプログラム。
【請求項10】
前記アクション決定ステップにおいては、前記軌跡ベクトル算出ステップにおいて前記軌跡ベクトルが複数算出されるとき、前記軌跡ベクトルが1つ算出されるときとは異なるアクションが決定される、請求項9に記載のゲームプログラム。
【請求項11】
前記軌跡ベクトル算出ステップにおいては、前記入力装置によって連続して検出された各入力位置のうちで、最初に検出された入力位置を始点とし、最後に検出された入力位置を終点とするベクトルが前記軌跡ベクトルとして算出される、請求項1に記載のゲームプログラム。
【請求項12】
前記軌跡ベクトル算出ステップは、
前記入力装置によって連続して検出された各入力位置を検出された順に結ぶ折れ線について、互いに接続される2つの線分のなす角度が所定値以下となる頂点に対応する入力位置を選出するステップと、
前記選出された入力位置が2つ以上存在するとき、順に検出された2つの入力位置を検出順に結ぶベクトルを前記軌跡ベクトルとして算出するステップとを含む、請求項1に記載のゲームプログラム。
【請求項13】
前記基準ベクトル算出ステップにおいて、前記軌跡ベクトルの終点の位置を基準ベクトルの終点として当該基準ベクトルが算出される、請求項1に記載のゲームプログラム。
【請求項14】
入力面上においてプレイヤが指定した位置を検出する入力装置を備えるゲーム装置であって、
前記入力装置によって所定時間間隔で検出された各入力位置を、検出された順に前記ゲーム装置のメモリに記憶させる記憶手段と、
前記入力面上においてプレイヤによって描かれた軌跡の少なくとも一部を示す軌跡ベクトルを前記各入力位置から算出する軌跡ベクトル算出手段と、
前記入力面上における所定位置を始点とし、前記軌跡ベクトルによって決められる位置を終点とする基準ベクトルを算出する基準ベクトル算出手段と、
前記軌跡ベクトルと前記基準ベクトルとのなす角の大きさに基づいてプレイヤキャラクタのアクションを決定するアクション決定手段と、
前記決定されたアクションを前記プレイヤキャラクタが行う様子を表示装置に表示させる表示制御手段とを備える、ゲーム装置。


【図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

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate


【公開番号】特開2006−325695(P2006−325695A)
【公開日】平成18年12月7日(2006.12.7)
【国際特許分類】
【出願番号】特願2005−150354(P2005−150354)
【出願日】平成17年5月24日(2005.5.24)
【出願人】(000233778)任天堂株式会社 (1,115)
【Fターム(参考)】