(57)【要約】【課題】表示画面上の位置を検出するタッチパネル等のポインティングデバイスを用いて、違和感なくプレイヤが操作することができるゲームプログラムおよびゲーム装置を提供する。【解決手段】ポインティングデバイスによって指示された表示画面上の指示座標を取得して、指示座標に対応する仮想ゲーム空間内の目標座標が算出される。表示画面に設定された基準座標から指示座標までの距離が算出され、距離に基づいた速度情報が算出される。そして、仮想ゲーム空間内において目標座標の方向へ速度情報に応じた移動速度で所定のオブジェクトを移動させる。【選択図】図８
2007130312.tif 000002
【特許請求の範囲】
【請求項１】
仮想ゲーム空間の少なくとも一部を表現したゲーム画像を表示画面上に表示し、プレイヤが指示した当該表示画面上の位置を検出するポインティングデバイスを用いて操作されるゲーム装置のコンピュータで実行されるゲームプログラムであって、
前記コンピュータに、
前記ポインティングデバイスによって指示された前記表示画面上の指示座標を取得してメモリに記憶する指示座標取得ステップと、
前記指示座標に対応する仮想ゲーム空間内の目標座標を算出してメモリに記憶する目標座標算出ステップと、
前記表示画面に設定された基準座標から前記指示座標までの距離を算出する距離算出ステップと、
前記距離に基づいて、速度情報を算出する速度情報算出ステップと、
仮想ゲーム空間内において前記目標座標の方向へ前記速度情報に応じた移動速度で所定のオブジェクトを移動させるオブジェクト移動ステップとを実行させる、ゲームプログラム。
【請求項２】
前記ゲームプログラムは、プレイヤの操作対象となるオブジェクトが表示される位置と重なる前記表示画面上の位置を前記基準座標として設定してメモリに記憶する基準座標設定ステップを、さらに前記コンピュータに実行させる、請求項１に記載のゲームプログラム。
【請求項３】
前記基準座標は、前記表示画面の中心位置に固定されることを特徴とする、請求項１に記載のゲームプログラム。
【請求項４】
前記目標座標算出ステップでは、前記表示画面上の前記指示座標に重なる前記仮想ゲーム空間に設定されたゲームフィールド上の位置が前記目標座標として算出されることを特徴とする、請求項１記載のゲームプログラム。
【請求項５】
前記速度情報算出ステップでは、前記距離に基づいた速度情報として前記オブジェクトの目標速度が所定の関数を用いて算出されることを特徴とする、請求項１に記載のゲームプログラム。
【請求項６】
前記速度情報算出ステップでは、前記距離が第１閾値以上のとき前記目標速度が一定の最高目標速度にされることを特徴とする、請求項５に記載のゲームプログラム。
【請求項７】
前記速度情報算出ステップでは、前記距離が第２閾値未満のとき前記目標速度が０に設定されることを特徴とする、請求項５に記載のゲームプログラム。
【請求項８】
前記ポインティングデバイスは、前記表示画面に装着されたタッチパネルであることを特徴とする、請求項１記載のゲームプログラム。
【請求項９】
仮想ゲーム空間の少なくとも一部を表現したゲーム画像を表示画面上に表示し、プレイヤが指示した当該表示画面上の位置を検出するポインティングデバイスを用いて操作されるゲーム装置であって、
記憶手段と、
前記ポインティングデバイスによって指示された前記表示画面上の指示座標を取得して前記記憶手段に記憶する指示座標取得手段と、
前記指示座標に対応する仮想ゲーム空間内の目標座標を算出して前記記憶手段に記憶する目標座標算出手段と、
前記表示画面に設定された基準座標から前記指示座標までの距離を算出する距離算出手段と、
前記距離に基づいて、速度情報を算出する速度情報算出手段と、
仮想ゲーム空間内において前記目標座標の方向へ前記速度情報に応じた移動速度で所定のオブジェクトを移動させるオブジェクト移動手段とを備える、ゲーム装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ゲームプログラムおよびゲーム装置に関し、より特定的には、タッチパネル等のポインティングデバイスを用いて入力を行うゲーム装置で実行されるゲームプログラムおよびゲーム装置に関する。
【背景技術】
【０００２】
従来、プレイヤがゲーム画面に表示されるプレイヤオブジェクトを操作してゲームを楽しむゲーム装置が広く利用されている。例えば、仮想ゲーム空間において、プレイヤオブジェクトは、平面状のゲームフィールド上に配置され、その状態を仮想カメラによって捉えた状態を描画して、ゲーム画面を生成していた（例えば、特許文献１参照）。
【０００３】
上記特許文献１で開示されたゲーム装置は、タッチパネル等のポインティングデバイスを用いてプレイヤからの入力が行われる。当該ゲーム装置は、ゲーム画面を表示する表示画面に設けられたタッチパネルにプレイヤが接触したタッチ位置を検出し、そのタッチ位置に応じて表示画面に表示されるゲームのオブジェクトを変化させるゲームを表現する。上記特許文献１のようなタッチパネルは、ゲーム画面を直接操作することによってゲームのオブジェクトを変化させるため、プレイヤが直接オブジェクトを操作でき、ゲームの進行を画面上で表現できるので、ゲームの楽しみが増加するとともに、容易に且つ正確にゲームを進行することができる。
【０００４】
ここで、従来は２次元の仮想ゲーム世界内に存在するオブジェクトを操作するゲームが主流であったが、最近はコンピュータ自体の性能も飛躍的に向上し、３次元の仮想ゲーム空間内に存在するオブジェクトを操作するゲームが主流となっている。例えば、上記特許文献１のＲＰＧの例で説明されたような手法では、３次元の仮想ゲーム空間内に存在するオブジェクトを操作する際、仮想ゲーム空間内の所定の座標（プレイヤオブジェクトの位置等）から、タッチ座標に応じて算出した仮想ゲーム空間内のゲームフィールド上の座標までのベクトルを取得し、当該ベクトルの大きさおよび方向に応じてプレイヤオブジェクトを動作させる。
【０００５】
図１０は、仮想ゲーム空間内に設定された平面のゲームフィールドＧＦ上に操作対象キャラクタＰＣを配置し、当該ゲームフィールドＧＦを真上から見下ろすようにゲーム画像が描画される一例であり、その際にタッチパネルＴＰが当該仮想ゲーム空間に設定されたイメージを示す側面図である。また、図１１は、仮想ゲーム空間内に設定された平面のゲームフィールドＧＦ上に操作対象キャラクタＰＣを配置し、当該ゲームフィールドＧＦを斜め上方から見下ろすようにゲーム画像が描画される一例であり、その際にタッチパネルＴＰが当該仮想ゲーム空間に設定されたイメージを示す側面図である。つまり、図１０および図１１は、仮想ゲーム空間内を描画する表示装置を覆うように装着されたタッチパネルＴＰを介して、平面のゲームフィールドＧＦ上に存在する操作対象キャラクタＰＣを描画している様子を示している。
【０００６】
図１０および図１１において、中心座標Ｐ０が設定されたタッチパネルＴＰを介して、仮想ゲーム空間内が正射影（平行投影）によりゲーム画像が描かれ、当該中心座標Ｐ０と重なる位置に操作対象キャラクタＰＣが配置される。このとき、プレイヤが中心座標Ｐ０をタッチした際に、ゲームフィールドＧＦ上の対応する位置が座標ｐ０となる。タッチパネルＴＰに対して中心座標ＰＯから距離Ｄ１離れた座標Ｐ１をタッチした際に、ゲームフィールドＧＦ上の対応する位置が座標ｐ１となる。タッチパネルＴＰに対して中心座標ＰＯから距離Ｄ２離れた座標Ｐ２をタッチした際に、ゲームフィールドＧＦ上の対応する位置が座標ｐ２となる。そして、座標ｐ０から座標ｐ１までの距離をｄ１、座標ｐ０から座標ｐ２までの距離をｄ２とする。
【０００７】
このようにゲームフィールドＧＦが平面で構成される場合、同じ方向（図１０および図１１では上下方向）にタッチ操作されて距離Ｄ１と距離Ｄ２とが等しければ、距離ｄ１と距離ｄ２とが等しくなる。つまり、操作対象キャラクタＰＣが位置するゲームフィールドＧＦ上の座標からタッチ座標に対応するゲームフィールドＧＦ上の座標まで距離は、タッチパネルＴＰ上の中心座標Ｐ０（つまり、操作対象キャラクタＰＣと重なる位置）からタッチ座標までの距離と比例関係にある。したがって、例えば、操作対象キャラクタＰＣが位置するゲームフィールドＧＦ上の座標からタッチ座標に対応するゲームフィールドＧＦ上の座標までの距離を用いて操作対象キャラクタＰＣの移動速度を制御する場合、タッチパネルＴＰ上における所定の座標（プレイヤオブジェクトの位置等）からタッチ座標までの距離と比例して、操作対象キャラクタＰＣの移動速度をコントロールすることができる。
【特許文献１】特開２００２−９３９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、仮想ゲーム空間には、差角を有する複数平面や曲面上のゲームフィールドＧＦが設定されることも考えられる。図１２は、傾斜の異なる２つの平面で構成されたゲームフィールドＧＦ上に操作対象キャラクタＰＣを配置し、当該操作対象キャラクタＰＣを斜め上方から見下ろすようにゲーム画像が描画される一例であり、その際にタッチパネルＴＰが当該仮想ゲーム空間に設定されたイメージを示す側面図である。図１３は、曲面状で構成されたゲームフィールドＧＦ上に操作対象キャラクタＰＣを配置し、当該操作対象キャラクタＰＣを斜め上方から見下ろすようにゲーム画像が描画される一例であり、その際にタッチパネルＴＰが当該仮想ゲーム空間に設定されたイメージを示す側面図である。つまり、図１２および図１３は、仮想ゲーム空間内を描画する表示装置を覆うように装着されたタッチパネルＴＰを介して、傾斜の異なる複数の平面または曲面状のゲームフィールドＧＦ上に存在する操作対象キャラクタＰＣを描画している様子を示している。
【０００９】
図１２および図１３において、中心座標Ｐ０が設定されたタッチパネルＴＰを介して、仮想ゲーム空間内が正射影によりゲーム画像が描かれ、当該中心座標Ｐ０と重なる位置に操作対象キャラクタＰＣが配置される。このとき、プレイヤが中心座標Ｐ０をタッチした際に、ゲームフィールドＧＦ上の対応する位置が座標ｐ０となる。タッチパネルＴＰに対して中心座標ＰＯから距離Ｄ１離れた座標Ｐ１をタッチした際に、ゲームフィールドＧＦ上の対応する位置が座標ｐ１となる。タッチパネルＴＰに対して中心座標ＰＯから距離Ｄ２離れた座標Ｐ２をタッチした際に、ゲームフィールドＧＦ上の対応する位置が座標ｐ２となる。そして、座標ｐ０から座標ｐ１までの距離をｄ１、座標ｐ０から座標ｐ２までの距離をｄ２とする。
【００１０】
このようにゲームフィールドＧＦが単一平面で構成されていない場合、距離Ｄ１と距離Ｄ２とが等しくても、距離ｄ１と距離ｄ２とが等しくないことがある。これは、同じ方向（例えば、図１２および図１３における上下方向）にタッチ操作しても、同様の現象が生じる。つまり、操作対象キャラクタＰＣが位置するゲームフィールドＧＦ上の座標からタッチ座標に対応するゲームフィールドＧＦ上の座標まで距離は、タッチパネルＴＰ上の中心座標Ｐ０（つまり、操作対象キャラクタＰＣと重なる位置）からタッチ座標までの距離と比例関係にない。したがって、例えば、操作対象キャラクタＰＣが位置するゲームフィールドＧＦ上の座標からタッチ座標に対応するゲームフィールドＧＦ上の座標までの距離を用いて操作対象キャラクタＰＣの移動速度を制御する場合、当該距離とタッチパネルＴＰ上における所定の座標（プレイヤオブジェクトの位置等）からタッチ座標までの物理的な距離とが比例しないため、タッチパネルＴＰ上でタッチ操作する距離が同じであっても操作対象キャラクタＰＣの移動速度が異なることが生じる。
【００１１】
したがって、例えば操作対象キャラクタＰＣの位置座標からタッチ座標に対応するゲームフィールドＧＦ上の座標への距離に応じて操作対象キャラクタＰＣの移動速度を決める場合、タッチする距離が物理的に同じであってもゲームフィールドＧＦの形状によって仮想ゲーム空間で対応する距離が変化することが生じる。具体的には、図１０および図１１に示した態様では、タッチパネルＴＰ上の中心座標Ｐ０からタッチ座標までの距離と、操作対象キャラクタＰＣの位置座標からタッチ座標に対応するゲームフィールドＧＦ上の座標までの距離が比例関係にある（ただし、図１１に示した態様では、上下方向等同じ方向にタッチ操作する場合に限る）ため、タッチパネルＴＰ上のどの位置であっても所望の距離を入力すれば所望の移動速度が得られる。しかしながら、図１２および図１３に示した態様では、タッチパネルＴＰ上の中心座標Ｐ０からタッチ座標までの距離と、操作対象キャラクタＰＣの位置座標からタッチ座標に対応するゲームフィールドＧＦ上の座標までの距離が比例関係にないため、タッチパネルＴＰ上のタッチ位置によっては所望の距離を入力しても所望の移動速度が得られないことがある。例えば、図１２および図１３では距離Ｄ１＝距離Ｄ２であっても距離ｄ１＞距離ｄ２であるため、タッチ座標Ｐ１によって決定される移動速度よりタッチ座標Ｐ２によって決定される移動速度が小さくなる。その結果、プレイヤはタッチパネルＴＰ上でタッチした感覚と移動速度とが異なるために操作感覚に違和感が生じる。これは、仮想ゲーム空間内のゲームフィールドＧＦが単一の平面で構成されない限り生じる現象であり、仮想カメラの視点より透視投影（遠近投影）で描かれた場合も同様である。したがって、プレイヤは、タッチパネルＴＰに対するゲームフィールドＧＦの傾き（つまり、ゲーム画像として表現されるゲームフィールドＧＦの奥行）を考慮した上で操作しなければならない。
【００１２】
それ故に、本発明の目的は、表示画面上の位置を検出するタッチパネル等のポインティングデバイスを用いて、違和感なくプレイヤが操作することができるゲームプログラムおよびゲーム装置を提供することである。
【課題を解決するための手段】
【００１３】
上記の目的を達成するために、本発明は以下の構成を採用した。なお、括弧内の参照符号やステップ番号（ステップをＳと略称しステップ番号のみを記載する）等は、本発明の理解を助けるために後述する実施形態との対応関係を示したものであって、本発明の範囲を何ら限定するものではない。
【００１４】
第１の発明は、仮想ゲーム空間の少なくとも一部を表現したゲーム画像を表示画面（１２）上に表示し、プレイヤが指示したその表示画面上の位置を検出するポインティングデバイス（１５）を用いて操作されるゲーム装置（１）のコンピュータ（２１）で実行されるゲームプログラムである。ゲームプログラムは、指示座標取得ステップ（Ｓ５１）、目標座標算出ステップ（Ｓ５２）、距離算出ステップ（Ｓ５４）、速度情報算出ステップ（Ｓ５４）、およびオブジェクト移動ステップ（Ｓ５９〜Ｓ６１）を、コンピュータに実行させる。指示座標取得ステップは、ポインティングデバイスによって指示された表示画面上の指示座標（ＴＰ）を取得してメモリ（２４）に記憶する。目標座標算出ステップは、指示座標に対応する仮想ゲーム空間内の目標座標（Ｐｔ）を算出してメモリに記憶する。距離算出ステップは、表示画面に設定された基準座標（Ｐ０）から指示座標までの距離（Ｄ）を算出する。速度情報算出ステップは、距離に基づいて、速度情報（Ｖｔ）を算出する。オブジェクト移動ステップは、仮想ゲーム空間内において目標座標の方向へ速度情報に応じた移動速度で所定のオブジェクト（ＰＣ）を移動させる。なお、ポインティングデバイスは、表示画面上での入力位置や座標を指定する入力装置であり、例えば、タッチパネル、マウス、トラックパッド、トラックボールなどで実現される。そして、それぞれの入力装置で用いられる座標系は、タッチパネル座標系や画面座標系である。
【００１５】
第２の発明は、上記第１の発明において、ゲームプログラムは、基準座標設定ステップ（Ｓ５３）を、さらにコンピュータに実行させる。基準座標設定ステップは、プレイヤの操作対象となるオブジェクトが表示される位置（Ｐｐｃ）と重なる表示画面上の位置を基準座標として設定してメモリに記憶する。
【００１６】
第３の発明は、上記第１の発明において、基準座標は、表示画面の中心位置に固定される。
【００１７】
第４の発明は、上記第１の発明において、目標座標算出ステップでは、表示画面上の指示座標に重なる仮想ゲーム空間に設定されたゲームフィールド（ＦＤ）上の位置が目標座標として算出される。
【００１８】
第５の発明は、上記第１の発明において、速度情報算出ステップでは、距離に基づいた速度情報としてオブジェクトの目標速度が所定の関数を用いて算出される（図９）。
【００１９】
第６の発明は、上記第５の発明において、速度情報算出ステップでは、距離が第１閾値（Ｄ２）以上のとき目標速度が一定の最高目標速度（Ｖｔｍａｘ）にされる。
【００２０】
第７の発明は、上記第５の発明において、速度情報算出ステップでは、距離が第２閾値（Ｄ１）未満のとき目標速度が０に設定される。
【００２１】
第８の発明は、上記第１の発明において、ポインティングデバイスは、表示画面に装着されたタッチパネルである。
【００２２】
第９の発明は、仮想ゲーム空間の少なくとも一部を表現したゲーム画像を表示画面上に表示し、プレイヤが指示したその表示画面上の位置を検出するポインティングデバイスを用いて操作されるゲーム装置である。ゲーム装置は、記憶手段、指示座標取得手段、距離算出手段、目標座標算出手段、速度情報算出手段、およびオブジェクト移動手段を備える。指示座標取得手段は、ポインティングデバイスによって指示された表示画面上の指示座標を取得して記憶手段に記憶する。距離算出手段は、表示画面に設定された基準座標から指示座標までの距離を算出する。目標座標算出手段は、指示座標に対応する仮想ゲーム空間内の目標座標を算出して記憶手段に記憶する。速度情報算出手段は、距離に基づいて、速度情報を算出する。オブジェクト移動手段は、仮想ゲーム空間内において目標座標の方向へ速度情報に応じた移動速度で所定のオブジェクトを移動させる。
【発明の効果】
【００２３】
上記第１の発明によれば、ポインティングデバイスを用いて仮想ゲーム空間内のオブジェクトを移動させる際、その移動速度が表示画面に設定された基準座標から指示座標までの距離に応じた値に設定され、移動方向が指示座標に対応する仮想ゲーム空間内の目標座標に応じて設定される。つまり、仮想ゲーム空間に設定されるゲームフィールドの形状や傾きに影響されない表示画面における物理的な距離に応じて移動速度を制御できるため、ポインティングデバイスを用いて指示する位置によってプレイヤが所望の距離を入力すれば所望の移動速度が得られる。例えば、ジョイスティックを模した操作を実現する場合、ジョイスティックの倒し具合（斜傾角度）がポインティングデバイスへの操作に応じた物理的な距離に応じて設定され、ジョイスティックを倒す方向がポインティングデバイスによる指示座標に応じたゲーム空間内の位置によって設定される。したがって、ポインティングデバイスを用いて移動目標をゲーム空間内の位置に指定しながら、違和感なく移動速度を制御してオブジェクトを操作することができる。
【００２４】
上記第２の発明によれば、距離の基準となる基準座標が移動対象のオブジェクトが表示される位置に設定されるため、プレイヤが移動対象のオブジェクトの表示位置を基準として入力距離を指定できる。したがって、移動対象のオブジェクトに対する移動速度の入力を直感的に行うことができる。
【００２５】
上記第３の発明によれば、距離の基準となる基準座標が表示画面の中央に固定されるため、プレイヤが表示画面中央を基準として入力距離を指定できる。
【００２６】
上記第４の発明によれば、ポインティングデバイスを用いて仮想ゲーム空間内のオブジェクトを移動させる際、移動方向が指示座標と重なるゲームフィールド上の位置に目標座標が設定される。例えば、ジョイスティックを模した操作を実現する場合、ジョイスティックを倒す方向がポインティングデバイスによる指示座標と重なるゲームフィールド上の位置によって設定される。したがって、ポインティングデバイスを用いてゲーム空間内の移動目標の位置を直接的に指定しながら、違和感なく移動速度を制御してオブジェクトを操作することができる。
【００２７】
上記第５の発明によれば、オブジェクトの目標速度がポインティングデバイスによる入力距離を所定の関数を用いて換算することによって得られるため、当該入力距離に応じて設定される目標距離を関数によって調整することができる。例えば、上記入力距離に対して比例するように目標距離を設定することができる。また、入力距離が長くなることに応じて、目標距離を漸増的に加速させることができ、入力距離に対して設定される目標距離のレスポンスのバリエーションが期待できる。
【００２８】
上記第６の発明によれば、第１閾値以上の距離が入力されても一定の最高目標速度に設定される。したがって、表示画面の形状によって相対的に長い距離が入力可能であっても設定可能な目標速度が最高目標速度以下となるため、表示画面の形状によって設定可能な目標速度が異なるようなアンバランスを回避できる。
【００２９】
上記第７の発明によれば、基準座標周辺領域において、目標速度が０に設定される領域を形成することができる。
【００３０】
上記第８の発明によれば、タッチパネルを用いて仮想ゲーム空間内のオブジェクトを移動させる際、移動速度をタッチパネルの基準座標からタッチ座標までの距離に応じた値に設定し、移動角度をタッチパネルのタッチ座標に応じた仮想ゲーム空間内の目標座標に応じて設定する。つまり、ゲームフィールドの形状や傾きに影響されないタッチパネル座標系における距離に応じて移動速度を制御できるため、タッチパネル上のタッチ距離によって、プレイヤが所望の距離を入力すれば所望の移動速度が得られる。したがって、移動目標をタッチパネルでタッチする位置に応じたゲーム空間内の位置に指定しながら、違和感なく移動速度を制御してオブジェクトを操作することができる。
【００３１】
また、本発明のゲーム装置によれば、上述したゲームプログラムと同様の効果を得ることができる。
【発明を実施するための最良の形態】
【００３２】
図面を参照して、本発明の一実施形態に係るゲームプログラムを実行するゲーム装置について説明する。本発明のゲームプログラムは、表示装置に表示可能な任意のコンピュータシステムで実行されることによって適用することができるが、情報処理装置（ゲーム装置）の一例としてゲーム装置１で実行されるゲームプログラムを用いて説明する。なお、図１は、本発明のゲームプログラムを実行するゲーム装置１の外観図である。ここでは、ゲーム装置１の一例として、携帯ゲーム装置を示す。
【００３３】
図１において、ゲーム装置１は、第１のＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ：液晶表示装置）１１および第２のＬＣＤ１２を含む。ハウジング１３は、上側ハウジング１３ａと下側ハウジング１３ｂとによって構成されており、第１のＬＣＤ１１は上側ハウジング１３ａに収納され、第２のＬＣＤ１２は下側ハウジング１３ｂに収納される。第１のＬＣＤ１１および第２のＬＣＤ１２の解像度は、いずれも２５６ｄｏｔ×１９２ｄｏｔである。なお、本実施形態では表示装置としてＬＣＤを用いているが、例えばＥＬ（Ｅｌｅｃｔｒｏ  Ｌｕｍｉｎｅｓｃｅｎｃｅ：電界発光）を利用した表示装置等、他の任意の表示装置を利用することができる。また、第１のＬＣＤ１１および第２のＬＣＤ１２は、任意の解像度のものを利用することができる。
【００３４】
上側ハウジング１３ａには、後述する１対のスピーカ（図２の３０ａ、３０ｂ）からの音を外部に放出するための音抜き孔１８ａ、１８ｂが形成されている。
【００３５】
下側ハウジング１３ｂには、入力装置として、十字スイッチ１４ａ、スタートスイッチ１４ｂ、セレクトスイッチ１４ｃ、Ａボタン１４ｄ、Ｂボタン１４ｅ、Ｘボタン１４ｆ、Ｙボタン１４ｇ、電源スイッチ１４ｈ、Ｌボタン１４Ｌ、およびＲボタン１４Ｒが設けられている。また、さらなる入力装置として、第２のＬＣＤ１２の画面上にタッチパネル１５が装着されている。また、下側ハウジング１３ｂには、メモリカード１７やスティック１６を収納するための挿入口も設けられている。
【００３６】
タッチパネル１５としては、例えば抵抗膜方式や光学式（赤外線方式）や静電容量結合式等、任意の方式のものを利用することができる。タッチパネル１５は、その表面をスティック１６で触れると、その接触位置に対応する座標データを出力する機能を有するポインティングデバイスの一例である。なお、以下ではプレイヤがタッチパネル１５をスティック１６で操作するものとして説明を行うが、スティック１６の代わりにペン（スタイラスペン）や指でタッチパネル１５を操作することももちろん可能である。本実施形態では、タッチパネル１５として、第２のＬＣＤ１２の解像度と同じく２５６ｄｏｔ×１９２ｄｏｔの解像度（検出精度）のものを利用する。ただし、必ずしもタッチパネル１５の解像度と第２のＬＣＤ１２との解像度が一致している必要はない。
【００３７】
メモリカード１７は、ゲームプログラム等を記録した記録媒体であり、下部ハウジング１３ｂに設けられた挿入口に着脱自在に装着される。
【００３８】
次に、図２を参照して、ゲーム装置１の内部構成を説明する。なお、図２は、ゲーム装置１の内部構成を示すブロック図である。
【００３９】
図２において、ハウジング１３に収納される電子回路基板２０には、ＣＰＵコア２１が実装される。ＣＰＵコア２１には、バス２２を介して、コネクタ２３が接続されるとともに、入出力インターフェース回路（図面ではＩ／Ｆ回路と記す）２５、第１ＧＰＵ（Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）２６、第２ＧＰＵ２７、ＲＡＭ２４、ＬＣＤコントローラ３１、およびワイヤレス通信部３３が接続される。コネクタ２３には、メモリカード１７が着脱自在に接続される。メモリカード１７は、ゲームプログラムを記憶するＲＯＭ１７ａと、バックアップデータを書き換え可能に記憶するＲＡＭ１７ｂを搭載する。メモリカード１７のＲＯＭ１７ａに記憶されたゲームプログラムは、ＲＡＭ２４にロードされ、ＲＡＭ２４にロードされたゲームプログラムがＣＰＵコア２１によって実行される。ＲＡＭ２４には、ゲームプログラムの他にも、適宜、ＣＰＵコア２１がプログラムを実行して得られる一時的なデータを生成するためのデータ等が記憶される。Ｉ／Ｆ回路２５には、タッチパネル１５、右スピーカ３０ａ、左スピーカ３０ｂ、および図１の十字スイッチ１４ａやＡボタン１４ｄ等から成る操作スイッチ部１４が接続される。右スピーカ３０ａおよび左スピーカ３０ｂは、音抜き孔１８ａおよび１８ｂの内側にそれぞれ配置される。
【００４０】
第１ＧＰＵ２６には、第１ＶＲＡＭ（Ｖｉｄｅｏ  ＲＡＭ）２８が接続され、第２ＧＰＵ２７には、第２ＶＲＡＭ２９が接続される。第１ＧＰＵ２６は、ＣＰＵコア２１からの指示に応じて、ＲＡＭ２４に記憶されている表示画像を生成するためのデータに基づいて第１の表示画像を生成し、第１ＶＲＡＭ２８に描画する。第２ＧＰＵ２７は、同様にＣＰＵコア２１からの指示に応じて第２の表示画像を生成し、第２ＶＲＡＭ２９に描画する。第１ＶＲＡＭ２８および第２ＶＲＡＭ２９は、ＬＣＤコントローラ３１に接続されている。
【００４１】
ＬＣＤコントローラ３１は、レジスタ３２を含む。レジスタ３２は、ＣＰＵコア２１からの指示に応じて０または１の値を記憶する。ＬＣＤコントローラ３１は、レジスタ３２の値が０の場合は、第１ＶＲＡＭ２８に描画された第１のゲーム画像を第１のＬＣＤ１１に出力し、第２ＶＲＡＭ２９に描画された第２のゲーム画像を第２のＬＣＤ１２に出力する。また、レジスタ３２の値が１の場合は、第１ＶＲＡＭ２８に描画された第１のゲーム画像を第２のＬＣＤ１２に出力し、第２ＶＲＡＭ２９に描画された第２のゲーム画像を第１のＬＣＤ１１に出力する。
【００４２】
ワイヤレス通信部３３は、他のゲーム装置のワイヤレス通信部３３との間で、ゲーム処理に利用されるデータやその他のデータをやりとりする機能を有しており、一例としてＩＥＥＥ８０２．１１の無線ＬＡＮ規格に則った無線通信機能を提供する。そして、ワイヤレス通信部３３は、受信したデータをＣＰＵコア２１に出力する。また、ワイヤレス通信部３３は、ＣＰＵコア２１から指示されたデータを他のゲーム装置へ送信する。なお、ＴＣＰ／ＩＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ／Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）等のプロトコルや所定のブラウザをワイヤレス通信部３３やゲーム装置１内の記憶部に実装することによって、ゲーム装置１は、ワイヤレス通信部３３を介してインターネット等のネットワークとの接続が可能となる。そして、ゲーム装置１は、ネットワーク上で公開されている文書や画像等のデータを第１のＬＣＤ１１および第２のＬＣＤ１２で閲覧することができる。
【００４３】
なお、本発明のゲームプログラムは、メモリカード１７等の外部記憶媒体を通じてコンピュータシステムに供給されるだけでなく、有線または無線の通信回線を通じてコンピュータシステムに供給されてもよい。また、ゲームプログラムは、コンピュータシステム内部の不揮発性記憶装置に予め記録されていてもよい。なお、ゲームプログラムを記憶する情報記憶媒体としては、上記不揮発性半導体メモリに限らず、ＣＤ−ＲＯＭ、ＤＶＤ、あるいはそれらに類する光学式ディスク状記憶媒体でもよい。
【００４４】
次に、図３〜図６を参照して、ゲーム装置１で実行されるゲームプログラムによる具体的な処理動作を説明する前に、当該処理動作によって第１のＬＣＤ１１および第２のＬＣＤ１２に表示される表示形態例や処理例等について説明する。なお、図３は、第１のＬＣＤ１１および第２のＬＣＤ１２に表示される画面表示例を示す図である。図４は、第２のＬＣＤ１２に表示されるゲーム画像を得るためのゲーム空間座標系およびタッチパネル１５との位置関係を説明するための概略斜視図である。図５は、ゲーム空間座標系とタッチパネル１５との位置関係を説明するための側面図である。図６は、ゲーム処理で用いられる距離Ｄと目標角度θｔとを説明するために図４の一部を拡大して示した概略斜視図である。
【００４５】
図３において、ゲーム装置１の第１のＬＣＤ１１および第２のＬＣＤ１２には、それぞれゲーム画像が表示される。本発明に関わるゲーム画像は、主に第２のＬＣＤ１２に表示されるため、以下、第２のＬＣＤ１２に表示される画像を単にゲーム画像と記載する。
【００４６】
第２のＬＣＤ１２には、プレイヤキャラクタＰＣおよびノンプレイヤキャラクタＮＰＣの他に、オブジェクトＯＢＪがゲーム空間に設定されたドラムフィールドＦＤ上に配置されてゲーム画像として表現される。図３に示したゲーム画像例では、１つのプレイヤキャラクタＰＣおよびノンプレイヤキャラクタＮＰＣと６つのオブジェクトＯＢＪ１〜ＯＢＪ６とが表示されている。ドラムフィールドＦＤは、その円筒曲面の一部がゲーム画像として表示される円筒形状（つまり、曲面状）のゲームフィールドであり、ゲーム空間内でその円筒軸が水平になるように設置される。プレイヤキャラクタＰＣ、ノンプレイヤキャラクタＮＰＣ、およびオブジェクトＯＢＪは、それぞれドラムフィールドＦＤの円筒曲面上に配置される。例えば、プレイヤキャラクタＰＣは、ゲーム空間内でドラムフィールドＦＤの円筒曲面上に沿って移動可能なキャラクタである。また、ドラムフィールドＦＤ後方には、背景ＢＩ（例えば、空）が表示される。なお、図３で示した例では、ドラムフィールドＦＤの側方から円筒曲面を注視点とし、当該円筒曲面の一部を描画範囲とした仮想カメラから透視投影（遠近投影）によって得たゲーム画像を示している。
【００４７】
図４において、上記ゲーム画像を得るための仮想カメラＣおよびタッチパネル１５が配置された仮想３次元ゲーム空間の様子が表示されている。ゲーム空間には、仮想カメラＣに対してドラムフィールドＦＤおよび背景ＢＩが設定されている。仮想カメラＣは、ドラムフィールドＦＤの円筒曲面の側方に配置される。そして、仮想カメラＣのカメラ位置を基準とした所定のクリップ面に挟まれた視体積に設定されるゲーム空間がゲーム画像として第２のＬＣＤ１２に表示される。図４に示した例では、仮想カメラＣからドラムフィールドＦＤの円筒曲面の一部を透視投影した画像ＩＭ１と、その後方の背景ＢＩを透視投影した画像ＩＭ２とによって、ゲーム画像が構成される。このとき、後述する位置座標に基づいて各オブジェクトの描画モデルがドラムフィールドＦＤ上に配置され（図４におけるプレイヤキャラクタＰＣおよびオブジェクトＯＢＪ）、視体積内に含まれる描画モデルも第２のＬＣＤ１２に表示される。そして、手前側（仮想カメラＣ側）クリップ面にタッチパネル１５が配置されたようにタッチパネル座標系が設定され、タッチパネル１５からの入力座標が仮想カメラＣの視線方向に沿ってゲーム空間内に透視変換される。
【００４８】
図５において、プレイヤがタッチパネル１５をタッチしたタッチ入力座標（以下、単にタッチ座標と記載する）がゲーム空間内に透視変換される様子を示している。例えば、プレイヤがタッチパネル１５をスティック１６ａの位置でタッチ操作したとき、そのタッチ操作で得られるタッチ座標を仮想カメラＣから放射状に延伸する視線方向に沿ってゲーム空間内に透視投影した直線（図５では、破線で示す）がプレイヤキャラクタＰＣと交差または接触するとする。このとき、プレイヤキャラクタＰＣがプレイヤによってタッチ操作されたと判断する。さらに、上記直線がプレイヤキャラクタＰＣを通過してドラムフィールドＦＤと交差する交点Ｐｔａを、プレイヤによってタッチ操作されたドラムフィールドＦＤ上の点であると判断する。この交点Ｐｔａを示すゲーム空間座標が、タッチ操作されたスティック１６ａの位置を透視変換した目標位置座標となる。
【００４９】
また、プレイヤがタッチパネル１５をスティック１６ｂの位置でタッチ操作したとき、そのタッチ操作で得られるタッチ座標を仮想カメラＣの視線方向に沿ってゲーム空間内に透視投影した直線がオブジェクトＯＢＪと交差または接触するとする。このとき、オブジェクトＯＢＪがプレイヤによってタッチ操作されたと判断する。さらに、上記直線がオブジェクトＯＢＪを通過してドラムフィールドＦＤと交差する交点Ｐｔｂを、プレイヤによってタッチ操作されたドラムフィールドＦＤ上の点であると判断する。この交点Ｐｔｂを示すゲーム空間座標が、タッチ操作されたスティック１６ｂの位置を透視変換した目標位置座標となる。
【００５０】
また、プレイヤがタッチパネル１５をスティック１６ｃの位置でタッチ操作したとき、そのタッチ操作で得られるタッチ座標を仮想カメラＣの視線方向に沿ってゲーム空間内に透視投影した直線が直接ドラムフィールドＦＤと交差するとする。このとき、上記直線がドラムフィールドＦＤと交差する交点Ｐｔｃを、プレイヤによってタッチ操作されたドラムフィールドＦＤ上の点であると判断する。なお、この場合、プレイヤによってタッチ操作されたキャラクタやオブジェクトがないと判断する。そして、この交点Ｐｔｃを示すゲーム空間座標が、タッチ操作されたスティック１６ｃの位置を透視変換した目標位置座標となる。
【００５１】
図６において、プレイヤがタッチパネル１５をタッチ座標ＴＰの位置でタッチ操作したとき、タッチ座標ＴＰがドラムフィールドＦＤ上に透視変換されて目標位置座標Ｐｔが得られる。つまり、目標位置座標Ｐｔは、プレイヤがタッチパネル１５をタッチした位置と重なって表示されているドラムフィールドＦＤ上の位置となる。また、プレイヤキャラクタＰＣは、ドラムフィールドＦＤ上に配置される位置座標Ｐｐｃが設定されている。そして、仮想カメラＣの視線方向に沿って位置座標Ｐｐｃおよび仮想カメラＣを結ぶ直線とタッチパネル１５とが交差する。この直線とタッチパネル１５との交点を基準座標Ｐ０とする。そして、タッチパネル座標系において、基準座標Ｐ０とタッチ座標ＴＰとの間の距離Ｄが取得される。
【００５２】
このように、プレイヤのタッチ操作に応じて、目標位置座標Ｐｔおよび距離Ｄが得られたとき、プレイヤキャラクタＰＣが目標位置座標Ｐｔおよび距離Ｄに応じてドラムフィールドＦＤ上を移動する。具体的には、位置座標Ｐｐｃから目標位置座標Ｐｔへ向かう方向とゲーム空間における基準方向（例えば、図６において一点鎖線で示す方向）との間の角度が目標角度θｔとして演算される。また、距離Ｄに応じて、目標速度Ｖｔが演算される。そして、プレイヤキャラクタＰＣは、目標角度θｔで指定される方向を目指して目標速度Ｖｔまで移動速度を増減してドラムフィールドＦＤ上を移動する。つまり、プレイヤキャラクタＰＣは、タッチパネル１５のタッチ位置と重なるドラムフィールドＦＤ上の位置を移動目標として、基準座標Ｐ０からタッチ位置までのタッチパネル１５上の距離に応じた移動速度で移動することになる。
【００５３】
次に、図７〜図９を参照して、ゲーム装置１で実行されるゲームプログラムによる具体的な処理動作について説明する。なお、図７は、ゲーム処理動作でＲＡＭ２４に記憶される各種データの一例を示す図である。図８は、当該ゲームプログラムを実行することによってゲーム装置１がゲーム処理を行う動作を示すフローチャートである。図９は、距離Ｄと目標速度Ｖｔとの関係を示すグラフである。なお、これらの処理を実行するためのプログラムは、ＲＯＭ１７ａに格納されたゲームプログラムに含まれており、ゲーム装置１の電源がオンになったときに、ＲＯＭ１７ａからＲＡＭ２４に読み出されて、ＣＰＵコア２１によって実行される。なお、図８に示すフローチャートにおいては、ゲーム処理のうち、プレイヤキャラクタＰＣの移動およびアクションに関するゲーム処理について説明し、本願発明と直接関連しない他のゲーム処理については詳細な説明を省略する。また、図８では、ＣＰＵコア２１が実行する各ステップを「Ｓ」と略称する。
【００５４】
図７において、ＲＡＭ２４は、プログラム記憶領域およびデータ記憶領域を有しており、図７では本発明のプレイヤキャラクタＰＣの移動およびアクションに関する動作で用いられるデータ記憶領域のみを示している。具体的には、ＲＡＭ２４のデータ記憶領域には、大略的に操作データＤ１、プレイヤキャラクタデータＤ２、およびオブジェクトデータＤ３が格納される。
【００５５】
操作データＤ１は、タッチ座標データＤ１１、目標位置座標データＤ１２、および基準座標データＤ１３等を含んでいる。タッチ座標データＤ１１は、現在タッチパネル１５をプレイヤがタッチしているタッチパネル座標系のタッチ座標ＴＰ（図６参照）を示すデータである。目標位置座標データＤ１２は、タッチ座標ＴＰを透視変換することによって得られるドラムフィールドＦＤ上の目標位置座標Ｐｔ（図６参照）を示すデータである。基準座標データＤ１３は、プレイヤキャラクタＰＣの位置座標Ｐｐｃをタッチパネル座標系に変換することによって得られた基準座標Ｐ０（図６参照）を示すデータである。
【００５６】
プレイヤキャラクタデータＤ２は、位置座標データＤ２１、目標速度データＤ２２、目標角度データＤ２３、移動速度データＤ２４、移動角度データＤ２５、アクションフラグデータＤ２６、および描画モデル画像データＤ２７等を含んでいる。位置座標データＤ２１は、ゲーム空間座標系において配置されるプレイヤキャラクタＰＣの位置座標Ｐｐｃ（図６参照）を、例えば３次元座標（Ｘ、Ｙ、Ｚ）で示すデータである。目標速度データＤ２２は、プレイヤキャラクタＰＣの移動速度の目標となる目標速度Ｖｔを示すデータである。目標角度データＤ２３は、位置座標Ｐｐｃから目標位置座標Ｐｔへ向かう方向とゲーム空間における基準方向との間の角度である目標角度θｔ（図６参照）を示すデータである。移動速度データＤ２４は、ゲーム空間における現在のプレイヤキャラクタＰＣの移動速度を示すデータである。移動角度データＤ２５は、現在プレイヤキャラクタＰＣが向かっている（または、向いている）方向とゲーム空間における基準方向との間の角度を示すデータである。アクションフラグデータＤ２６は、プレイヤキャラクタＰＣが所定のアクションを実行しているか否か、およびそのアクションの種別を示すデータである。描画モデル画像データＤ２７は、プレイヤキャラクタＰＣのゲーム画像を生成したりタッチ操作の対象を検出したりするための画像／モデルデータデータである。
【００５７】
オブジェクトデータＤ３は、位置座標データＤ３１、オブジェクトＩＤデータＤ３２、および描画モデル画像データＤ３３等を含んでいる。オブジェクトデータＤ３は、ゲーム空間に各オブジェクトやノンプレイヤキャラクタを配置するためのデータベースであり、各オブジェクトに対応する位置座標データＤ３１ａ、Ｄ３１ｂ…、オブジェクトＩＤデータＤ３２ａ、Ｄ３２ｂ…、および描画モデル画像データＤ３３ａ、Ｄ３３ｂ…等が記憶される。位置座標データＤ３１は、ゲーム空間座標系において配置される各オブジェクトＯＢＪの位置座標を、例えば３次元座標（Ｘ、Ｙ、Ｚ）で示すデータである。オブジェクトＩＤデータＤ３２は、オブジェクト毎に固有に付与される番号であり、この番号によって当該オブジェクトの種別（ノンプレイヤキャラクタや他のオブジェクト等）を区別することができる。描画モデル画像データＤ３３は、オブジェクトＯＢＪやノンプレイヤキャラクタのゲーム画像を生成したりタッチ操作の対象を検出したりするための画像／モデルデータデータである。
【００５８】
まず、ゲーム装置１の電源（例えば、電源スイッチ１４ｈ）がＯＮされると、ＣＰＵコア２１によってブートプログラム（図示せず）が実行され、これによりメモリカード１７に格納されているゲームプログラムがＲＡＭ２４にロードされる。当該ロードされたゲームプログラムがＣＰＵコア２１で実行されることによって、図８に示す各ステップが実行される。
【００５９】
図８において、ＣＰＵコア２１は、ゲームの初期設定を行って（ステップ５０）、処理を次のステップに進める。例えば、ＣＰＵコア２１がステップ５０で行う初期設定として、ゲーム空間に登場させるオブジェクトＯＢＪやプレイヤキャラクタＰＣに関するデータを設定して、ＲＡＭ２４に記憶する。
【００６０】
次に、ＣＰＵコア２１は、プレイヤが現在タッチパネル１５をタッチしている接触位置を示すタッチパネル１５に対するタッチ座標ＴＰを取得して、ＲＡＭ２４のタッチ座標データＤ１１を更新する（ステップ５１）。そして、ＣＰＵコア２１は、タッチパネル座標系で示されるタッチ座標ＴＰをゲーム空間座標系の座標に変換して目標位置座標Ｐｔを取得し、ＲＡＭ２４の目標位置座標データＤ１２を更新する（ステップ５２）。そして、ＣＰＵコア２１は、処理を次のステップに進める。例えば、ＣＰＵコア２１は、タッチ座標ＴＰをドラムフィールドＦＤ上に透視変換して目標位置座標Ｐｔを算出する。この場合、目標位置座標Ｐｔは、タッチ座標ＴＰと重なって表示されているドラムフィールドＦＤ上の位置となる。なお、タッチ座標ＴＰと重なって表示される位置にプレイヤキャラクタＰＣや他のオブジェクトＯＢＪが配置されている場合、ＣＰＵコア２１は、当該プレイヤキャラクタＰＣまたは他のオブジェクトＯＢＪを接触オブジェクトとして区別すると共に、目標位置座標Ｐｔを取得する（図５参照）。
【００６１】
次に、ＣＰＵコア２１は、プレイヤキャラクタＰＣの位置座標Ｐｐｃをタッチパネル座標系の座標に変換して基準座標Ｐ０を取得し、ＲＡＭ２４の基準座標データＤ１３を更新する（ステップ５３）。そして、ＣＰＵコア２１は、処理を次のステップに進める。例えば、ＣＰＵコア２１は、仮想カメラＣの視線方向に沿って位置座標Ｐｐｃおよび仮想カメラＣを結ぶ直線とタッチパネル１５とが交差する交点を基準座標Ｐ０として取得する（図６参照）。なお、基準座標Ｐ０は、固定値でもかまわない。例えば、プレイヤキャラクタＰＣの位置が第２のＬＣＤ１２に対して固定的に表示される（例えば、第２のＬＣＤ１２の中央や第２のＬＣＤ１２における下半分領域の中央等）場合、そのプレイヤキャラクタＰＣの位置と重なるタッチパネル１５上の位置を基準座標Ｐ０としてもかまわない。
【００６２】
次に、ＣＰＵコア２１は、タッチパネル座標系において、基準座標Ｐ０からタッチ座標ＴＰまでの距離Ｄを算出し、当該距離Ｄに応じた目標速度Ｖｔを取得して、ＲＡＭ２４の目標速度データＤ２２を更新する（ステップ５４）。以下、図９を参照して、距離Ｄと目標速度Ｖｔとの関係について説明する。
【００６３】
図９において、ＣＰＵコア２１は、所定の関数を用いて距離Ｄから目標速度Ｖｔを演算する。例えば、目標速度Ｖｔは、
【数１】
2007130312.tif 000003
を用いて演算される。ここで、数式（１）におけるａおよびｂは、定数である。また、ＣＰＵコア２１は、最高目標速度Ｖｔｍａｘと低速目標速度Ｖｔ１とを設定する。例えば、上記数式（１）を用いて、最高目標速度Ｖｔｍａｘ以上の値に目標速度Ｖｔが演算されたとき、ＣＰＵコア２１は、目標速度Ｖｔを最高目標速度Ｖｔｍａｘとする。また、上記数式（１）を用いて、低速目標速度Ｖｔ１未満の値に目標速度Ｖｔが演算されたとき、ＣＰＵコア２１は、目標速度Ｖｔを０とする。これによって、タッチパネル１５において、目標速度Ｖｔが０となる領域、目標速度Ｖｔが低速目標速度Ｖｔ１から最高目標速度Ｖｔｍａｘまで変化する領域、および目標速度Ｖｔが最高目標速度Ｖｔｍａｘ一定となる領域とが形成される。例えば、数式（１）によって低速目標速度Ｖｔ１が演算される距離をＤ１、最高目標速度Ｖｔｍａｘが演算される距離をＤ２とする。この場合、基準座標Ｐ０を基準として半径Ｄ１の円内のタッチパネル１５上をプレイヤがタッチすると、目標座標Ｖｔは常に０に設定される。また、基準座標Ｐ０を基準として半径Ｄ２の円外のタッチパネル１５上をプレイヤがタッチすると、目標座標Ｖｔは常に最高目標速度Ｖｔｍａｘに設定される。なお、目標速度Ｖｔを演算する手順を簡単にするために、距離Ｄ＜Ｄ１のときは数式（１）を用いた演算を省略して目標速度Ｖｔ＝０にし、距離Ｄ≧Ｄ２のときは数式（１）を用いた演算を省略して目標速度Ｖｔ＝Ｖｔｍａｘにしてもかまわない。
【００６４】
図８に戻って、上記ステップ５４の処理の後、ＣＰＵコア２１は、ゲーム空間座標系において、プレイヤキャラクタＰＣの位置座標Ｐｐｃから目標位置座標Ｐｔに向かう目標角度θｔ（図６参照）を取得して、ＲＡＭ２４の目標角度データＤ２３を更新する（ステップ５５）。そして、ＣＰＵコア２１は、プレイヤキャラクタＰＣが移動以外のアクション中か否か（ステップ５６）または移動以外のアクションを開始するか否か（ステップ５７）を判断する。ＣＰＵコア２１は、例えば、アクションフラグデータＤ２６がＯＮの場合、プレイヤキャラクタＰＣがアクション中であると判断し（ステップ５６でＹｅｓ）、処理を次のステップ６２に進める。また、ＣＰＵコア２１は、上記ステップ５２の処理において接触オブジェクトが設定され、かつプレイヤキャラクタＰＣが所定の条件を満たしているとき、プレイヤキャラクタＰＣがアクションを開始すると判断し（ステップ５７でＹｅｓ）、アクションフラグデータＤ２６をＯＮに設定して、処理を次のステップ６２に進める。また、ＣＰＵコア２１は、プレイヤキャラクタＰＣがアクション中でもアクション開始でもない場合（ステップ５６、ステップ５７が何れもＮｏ）、処理を次のステップ５８に進める。
【００６５】
上記ステップ５７における判断基準例について説明する。例えば、ＣＰＵコア２１は、接触オブジェクトがノンプレイヤキャラクタであって当該ノンプレイヤキャラクタがプレイヤキャラクタＰＣの会話範囲または呼びかけ範囲内に存在する場合、プレイヤキャラクタＰＣがノンプレイヤキャラクタと会話する、またはノンプレイヤキャラクタに呼びかけるアクションを開始すると判断する。また、ＣＰＵコア２１は、接触オブジェクトがプレイヤキャラクタＰＣである場合、当該プレイヤキャラクタＰＣが現在向いている方向に向かって装備しているアイテムを使うアクションを開始すると判断する。また、ＣＰＵコア２１は、接触オブジェクトがアクション範囲内に存在するプレイヤキャラクタＰＣが装備するアイテムのアクション対象のオブジェクトＯＢＪ（例えば、装備「斧」に対するオブジェクト「木」）である場合、当該オブジェクトＯＢＪに対するアクションを開始すると判断する。
【００６６】
ステップ５８において、ＣＰＵコア２１は、現在のプレイヤキャラクタＰＣの移動速度（移動速度データＤ２４）が閾値以上であり、かつ移動角度（移動角度データＤ２５）と目標角度θｔとの差分角度が閾値以上か否かを判断する。そして、ＣＰＵコア２１は、移動速度および差分角度が共に閾値以上である場合、アクションフラグデータＤ２６をＯＮに設定して、処理を次のステップ６２に進める。一方、ＣＰＵコア２１は、移動速度および差分角度の少なくとも一方が閾値未満である場合、処理を次のステップ５９に進める。例えば、プレイヤキャラクタＰＣが閾値以上の高速でゲーム空間を移動しているときにプレイヤが当該移動の方向転換を指示したとき（つまり、上記差分角度が大きい）、後述する移動処理とは別のアクション（例えば、プレイヤキャラクタＰＣがスリップするようなアクション）を表現するために、上記ステップ５８でＹｅｓが選ばれる。
【００６７】
ステップ５９において、ＣＰＵコア２１は、プレイヤキャラクタＰＣの移動速度を目標速度Ｖｔまで所定量増減して、ＲＡＭ２４の移動速度データＤ２４を更新する。次に、ＣＰＵコア２１は、プレイヤキャラクタＰＣの移動角度を目標角度θｔに向けて所定量変更して、ＲＡＭ２４の移動角度データＤ２５を更新する（ステップ６０）。そして、ＣＰＵコア２１は、ステップ５９および６０で更新した移動速度および移動角度に基づいて、ゲーム空間内でプレイヤキャラクタＰＣを移動させて、ＲＡＭ２４の位置座標データＤ２１を更新して（ステップ６１）、処理を次のステップ６５に進める。
【００６８】
上記ステップ５６〜ステップ５８の何れかでＹｅｓと判断された場合、ＣＰＵコア２１は、ステップ６２においてアクション処理を行い、処理を次のステップに進める。ここで、アクション処理とは、プレイヤキャラクタＰＣがゲーム空間内を移動する動作とは別に行う特別な動作を行うための処理であり、接触オブジェクトと装備アイテムとの組み合わせ、接触オブジェクトとプレイヤキャラクタＰＣとの位置関係、プレイヤキャラクタＰＣに対する特別な移動指示等に応じて行われる。例えば、接触オブジェクトが所定の範囲内に存在するノンプレイヤキャラクタであるとき、当該ノンプレイヤキャラクタとプレイヤキャラクタＰＣとが会話したり、ノンプレイヤキャラクタに呼びかけたりするアクションが表現される。また、接触オブジェクトが所定範囲内のアクション対象のオブジェクトである場合、当該オブジェクトに対してプレイヤキャラクタＰＣの所定のアクション（例えば、プレイヤキャラクタＰＣが斧で木を切る）が表現される。さらに、プレイヤキャラクタＰＣが閾値以上の高速でゲーム空間を移動しているときにプレイヤが当該移動の方向転換を指示したとき、当該プレイヤキャラクタＰＣの移動速度を急減速してプレイヤキャラクタＰＣがスリップするようなアクションが表現される。
【００６９】
次に、ＣＰＵコア２１は、上記ステップ６２で処理したアクションが終了したか否かを判断する（ステップ６３）。アクションが終了した場合、ＣＰＵコア２１は、当該アクション表現を停止しアクションフラグデータＤ２６をＯＦＦに設定して（ステップ６４）、処理を次のステップ６５に進める。一方、アクションが継続中である場合、ＣＰＵコア２１は、そのまま処理を次のステップ６５に進める。
【００７０】
ステップ６５において、ＣＰＵコア２１は、プレイヤキャラクタＰＣの位置座標Ｐｐｃや各オブジェクトの位置座標に応じて各描画モデルをゲーム空間内に配置し、仮想カメラＣを視点としたゲーム画像を描画する。このステップ６５によって、ゲーム空間に登場するプレイヤキャラクタＰＣや他のオブジェクトＯＢＪに対応する描画モデルがゲーム空間に配置されて、仮想カメラＣを視点としたゲーム画像として描画される。次に、ＣＰＵコア２１は、ゲームを終了するか否かを判断する。ゲームを終了する条件としては、例えば、ゲームオーバとなる条件（例えば、ゲーム目的をクリアしたり、操作対象のプレイヤキャラクタがリタイヤしたりする等）が満たされたことや、プレイヤがゲームを終了する操作を行ったこと等がある。そして、ＣＰＵコア２１は、ゲームを継続する場合に上記ステップ５１に戻って処理を繰り返し、ゲームを終了する場合に当該フローチャートによる処理を終了する。
【００７１】
このように、ゲーム装置１で実行されるゲーム処理では、タッチパネル１５を用いて仮想ゲーム空間内のプレイヤキャラクタＰＣを移動させる際、移動速度をタッチパネル１５の基準座標Ｐ０からタッチ座標ＴＰまでの距離Ｄに応じた値に設定し、移動角度をタッチパネル１５のタッチ座標ＴＰと重なる仮想ゲーム空間内のゲームフィールド上の座標（目標位置座標Ｐｔ）に応じて設定する。つまり、ゲームフィールドの形状や傾きに影響されないタッチパネル座標系における距離に応じて移動速度を制御できるため、タッチパネル１５上のタッチ位置（距離）によって、プレイヤが所望の距離を入力すれば所望の移動速度が得られる。例えば、タッチパネル１５を用いてジョイスティックを模した操作を実現する場合、ジョイスティックの倒し具合（斜傾角度）がタッチパネル１５への操作に応じた物理的な距離に応じて設定され、ジョイスティックを倒す方向がタッチパネル１５へのタッチ位置と重なるゲーム空間内の位置に応じて設定される。したがって、移動目標をタッチパネル１５でタッチする位置と重なるゲーム空間内の位置に直接的に指定しながら、違和感なく移動速度を制御してプレイヤキャラクタＰＣを操作することができる。
【００７２】
なお、上述した説明においては、図５や図６に示したようにタッチパネル座標系が設定される手前側クリップ面（タッチパネル１５）を介して、仮想カメラＣから透視投影によってゲーム画像が得られる説明をしたが、平行投影によってゲーム画像を生成してもかまわない。さらに、ゲームフィールドを円筒状のドラムフィールドＦＤを用いて説明したが、球面状のゲームフィールド等立体感が表現される曲面を有するゲームフィールドや傾きの異なる複数の平面で構成されるゲームフィールドを用いてもかまわない。また、ゲームフィールドが単一の平面で構成される場合も、当該平面が手前側クリップ面（タッチパネル１５）に対して傾いて配置されていれば、本発明の効果を得ることができる。
【００７３】
また、上述では、説明を具体的にするために、具体的な座標軸を設定して座標変換方法を説明し、具体的なゲームフィールドの形状等を示してゲーム処理を説明したが、これらは一実施例であり、本発明がこれらの方法や形状に限定されることはないことは言うまでもない。
【００７４】
また、上述した実施形態では、２画面分の液晶表示部の一例として、物理的に分離された第１のＬＣＤ１１および第２のＬＣＤ１２を互いに上下に配置した場合（上下２画面の場合）を説明した。しかしながら、２画面分の表示画面の構成は、他の構成でもかまわない。例えば、下側ハウジング１３ｂの一方主面に第１のＬＣＤ１１および第２のＬＣＤ１２を左右に配置してもかまわない。また、第２のＬＣＤ１２と横幅が同じで縦の長さが２倍のサイズからなる縦長サイズのＬＣＤ（すなわち、物理的には１つで、表示サイズが縦に２画面分あるＬＣＤ）を下側ハウジング１３ｂの一方主面に配設して、第１および第２のゲーム画像を上下に表示（すなわち上下の境界部分無しに隣接して表示）するように構成してもよい。また、第２のＬＣＤ１２と縦幅が同じで横の長さが２倍のサイズからなる横長サイズのＬＣＤを下側ハウジング１３ｂの一方主面に配設して、横方向に第１および第２のゲーム画像を左右に表示（すなわち左右の境界部分無しに隣接して表示）するように構成してもよい。すなわち、物理的に１つの画面を２つに分割して使用することにより第１および第２のゲーム画像を表示してもかまわない。いずれのゲーム画像の形態に対しても、第２のゲーム画像が表示される画面上にタッチパネル１５を配設すれば、同様に本発明を実現することができる。また、物理的に１つの画面を２つに分割して使用することにより第１および第２のゲーム画像を表示する場合、当該画面全面にタッチパネル１５を配設してもかまわない。
【００７５】
また、上述した実施例では、ゲーム装置１にタッチパネル１５が一体的に設けられているが、ゲーム装置とタッチパネルとを別体にして構成しても、本発明を実現できることは言うまでもない。また、第１のＬＣＤ１１の上面にタッチパネル１５を設けても良い。さらに、上記実施例では表示画面を２つ（第１のＬＣＤ１１、第２のＬＣＤ１２）を設けたが、表示画面は１つであってもかまわない。すなわち、上記実施例において、第１のＬＣＤ１１設けず単に第２のＬＣＤ１２のみを表示画面としてタッチパネル１５を設けるように構成してもよい。また、上記実施例において、第２のＬＣＤ１２を設けず第１のＬＣＤ１１の上面にタッチパネル１５を設けても良い。
【００７６】
また、上記実施例では、ゲーム装置１の入力手段としてタッチパネルを用いたが、他のポインティングデバイスを用いてもかまわない。ここで、ポインティングデバイスは、画面上での入力位置や座標を指定する入力装置であり、例えば、マウス、トラックパッド、トラックボールなどを入力手段として用いる情報処理装置であっても、本発明を同様に実現することができる。
【産業上の利用可能性】
【００７７】
本発明のゲームプログラムおよびゲーム装置は、ポインティングデバイスを用いて違和感のない操作を実現でき、様々なゲームフィールドを用いてゲーム画像等を表現する情報処理装置やその情報処理装置で実行されるプログラム等として有用である。
【図面の簡単な説明】
【００７８】
【図１】本発明のゲームプログラムを実行するゲーム装置１の外観図
【図２】図１のゲーム装置１の内部構成を示すブロック図
【図３】第１のＬＣＤ１１および第２のＬＣＤ１２に表示される画面表示例を示す図
【図４】第２のＬＣＤ１２に表示されるゲーム画像を得るためのゲーム空間座標系およびタッチパネル１５との位置関係を説明するための概略斜視図
【図５】ゲーム空間座標系とタッチパネル１５との位置関係を説明するための側面図
【図６】ゲーム処理で用いられる距離Ｄと目標角度θｔとを説明するために図４の一部を拡大して示した概略斜視図
【図７】ゲーム処理動作でＲＡＭ２４に記憶される各種データの一例を示す図
【図８】ゲームプログラムを実行することによってゲーム装置１がゲーム処理を行う動作を示すフローチャート
【図９】距離Ｄと目標速度Ｖｔとの関係を示すグラフ
【図１０】仮想ゲーム空間内に設定された平面のゲームフィールドＧＦ上に操作対象キャラクタＰＣを配置して真上から見下ろすようにゲーム画像を描画する際に、タッチパネルＴＰが当該仮想ゲーム空間に設定されたイメージを示す側面図
【図１１】仮想ゲーム空間内に設定された平面のゲームフィールドＧＦ上に操作対象キャラクタＰＣを配置して斜め上方から見下ろすようにゲーム画像を描画する際に、タッチパネルＴＰが当該仮想ゲーム空間に設定されたイメージを示す側面図
【図１２】仮想ゲーム空間内に設定された傾斜の異なる２つの平面で構成されたゲームフィールドＧＦ上に操作対象キャラクタＰＣを配置して斜め上方から見下ろすようにゲーム画像を描画する際に、タッチパネルＴＰが当該仮想ゲーム空間に設定されたイメージを示す側面図
【図１３】仮想ゲーム空間内に設定された曲面状で構成されたゲームフィールドＧＦ上に操作対象キャラクタＰＣを配置して斜め上方から見下ろすようにゲーム画像を描画する際に、タッチパネルＴＰが当該仮想ゲーム空間に設定されたイメージを示す側面図
【符号の説明】
【００７９】
１  ゲーム装置
１１  第１のＬＣＤ
１２  第２のＬＣＤ
１３  ハウジング
１３ａ  上側ハウジング
１３ｂ  下側ハウジング
１４  操作スイッチ部
１４ａ  十字スイッチ
１４ｂ  スタートスイッチ
１４ｃ  セレクトスイッチ
１４ｄ  Ａボタン
１４ｅ  Ｂボタン
１４ｆ  Ｘボタン
１４ｇ  Ｙボタン
１４ｈ  電源スイッチ
１４Ｌ  Ｌボタン
１４Ｒ  Ｒボタン
１５  タッチパネル
１６  スティック
１７  メモリカード
１７ａ  ＲＯＭ
１７ｂ  ＲＡＭ
１８ａ、１８ｂ  音抜き孔
２０  電子回路基板
２１  ＣＰＵコア
２２  バス
２３  コネクタ
２４  ＲＡＭ
２５  Ｉ／Ｆ回路
２６  第１ＧＰＵ
２７  第２ＧＰＵ
２８  第１ＶＲＡＭ
２９  第２ＶＲＡＭ
３０ａ  右スピーカ
３０ｂ  左スピーカ
３１  ＬＣＤコントローラ
３２  レジスタ
３３  ワイヤレス通信部
【図１】
2007130312.tif 000004
【図２】
2007130312.tif 000005
【図３】
2007130312.tif 000006
【図４】
2007130312.tif 000007
【図５】
2007130312.tif 000008
【図６】
2007130312.tif 000009
【図７】
2007130312.tif 000010
【図８】
2007130312.tif 000011
【図９】
2007130312.tif 000012
【図１０】
2007130312.tif 000013
【図１１】
2007130312.tif 000014
【図１２】
2007130312.tif 000015
【図１３】
2007130312.tif 000016