(57)【要約】【課題】  タッチスクリーンに表示された仮想操作子を介してユーザが操作するゲームにおいて、ユーザが行った操作入力に対する視認性の向上を図ることができるゲームプログラムおよびゲームシステムを提供する。【解決手段】  コンピュータを、仮想操作子が第１領域上を移動した場合に、起点表示体の中心位置が仮想操作子の中心位置に近づくように追従して移動させる追従制御手段、および起点表示体の追従時の移動速度を設定する移動速度設定手段、として機能させ、移動速度設定手段は、起点表示体の中心位置に基づいて設定される第２領域外に仮想操作子が位置している場合における起点表示体の移動速度を、第２領域内に仮想操作子が位置している場合における起点表示体の移動速度より速い速度に設定する。【選択図】図３
2020178822.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータを、
第１領域を有するタッチスクリーンにゲーム画面を表示するゲーム画面表示手段、
前記タッチスクリーンへのユーザの操作を受け付ける操作受付手段、
ユーザの前記操作に基づいてゲームを制御するゲーム制御手段、
前記第１領域上に所定の基準点を設定する基準点設定手段、
前記ユーザの操作に基づいて仮想操作子の前記第１領域上の位置を設定し、前記仮想操作子を表示する操作子表示手段、
前記基準点に基づいて前記第１領域上に初期位置が設定される起点表示体を表示する起点表示体表示手段、
前記仮想操作子が前記第１領域上を移動した場合に、前記起点表示体の中心位置が前記仮想操作子の中心位置に近づくように追従して移動させる追従制御手段、および
前記起点表示体の追従時の移動速度を設定する移動速度設定手段、として機能させ、
前記移動速度設定手段は、前記起点表示体の中心位置に基づいて設定される第２領域外に前記仮想操作子が位置している場合における前記起点表示体の移動速度を、前記第２領域内に前記仮想操作子が位置している場合における前記起点表示体の移動速度より速い速度に設定する、ゲームプログラム。
【請求項２】
前記操作子表示手段は、前記第１領域の少なくとも一部の領域である第３領域において前記タッチスクリーンにユーザが触れている位置を前記仮想操作子の位置に設定し、
前記基準点設定手段は、前記第３領域において前記タッチスクリーンにユーザが最初に触れた位置に基づいて前記基準点を設定する、請求項１に記載のゲームプログラム。
【請求項３】
前記操作子表示手段は、前記第１領域の少なくとも一部の領域である第３領域において前記タッチスクリーンにユーザが触れている位置を前記仮想操作子の位置に設定し、
前記基準点設定手段は、前記第３領域において予め定められた位置に前記基準点を設定する、請求項１に記載のゲームプログラム。
【請求項４】
前記追従制御手段は、前記タッチスクリーンにユーザが最初に触れた位置から接触状態を保ちながら前記タッチスクリーン上をスライド操作することにより、前記タッチスクリーンにユーザが触れている位置が前記第１領域の一部の領域である第４領域内に位置した場合、前記第４領域内における前記起点表示体の移動を行わない、請求項１から３の何れかに記載のゲームプログラム。
【請求項５】
前記追従制御手段は、前記仮想操作子の位置と前記起点表示体の中心位置と間に所定のオブジェクトが位置している場合、前記起点表示体が前記オブジェクトに重ならないように、前記起点表示体の追従を停止する、請求項１から４の何れかに記載のゲームプログラム。
【請求項６】
前記追従制御手段は、
前記起点表示体の追従時において、前記所定のオブジェクトに設定されている当たり判定領域と前記起点表示体に設定されている当たり判定領域とが重なったか否かによって、前記起点表示体が前記オブジェクトに重なったか否かを判定し、
前記起点表示体が前記オブジェクトに重なったと判定した場合に、前記起点表示体の移動を停止し、前記起点表示体の移動停止後、前記起点表示体が前記オブジェクトに重ならなくなったと判定された場合に、前記起点表示体の移動を再開する、請求項１から４の何れかに記載のゲームプログラム。
【請求項７】
請求項１から６の何れかに記載のゲームプログラムを記憶したプログラム記憶部と、
前記プログラム記憶部に記憶されたプログラムを実行するコンピュータと、を備えたゲームシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、仮想空間内で動作する操作対象を、タッチスクリーンに表示された仮想操作子を介してユーザが操作するゲームプログラム、およびゲームシステムに関する。
【背景技術】
【０００２】
近年、ユーザの操作により仮想空間内で操作対象を動作させてゲームを進行させるゲームプログラムが、携帯型ゲーム装置や携帯電話等の小型コンピュータ装置向けにも提供されている。このような小型コンピュータ装置では、表示画面をできるだけ大きくするために、物理操作子を省き、より大型のタッチスクリーンを搭載したものがある。この場合、省かれた物理操作子は、タッチスクリーンに表示した仮想操作子によって代替されている。例えば、上下左右の方向を示す十字キーの画像が、タッチスクリーンに仮想操作子として表示され、ユーザはこれを操作することで、ゲーム中のキャラクタの進行方向等を指示する。
【０００３】
しかし、タッチスクリーンは表面が平滑であり、仮想操作子には物理操作子のように指先で知覚できる凹凸がないため、ユーザは、十字キーのどこを操作しているのかを手元を見ずに認識することができない。そのため、ゲームに熱中していると、いつのまにか十字キーから離れた位置を操作していたり、十字キーの意図せぬ位置を操作していたり、といった事態が起きてしまう。
【０００４】
これに対し、タッチスクリーンにユーザがタッチした場所に仮想操作子を表示し、接触状態を維持しつつスライド操作することにより、その操作方向に対応する操作入力が行われる態様が知られている。さらに、下記特許文献１には、このようなスライド操作可能な態様において、スライド操作の操作方向の基準位置を表示する起点マーカがスライド方向に追従して移動する態様が開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特許第６４４９６４７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
上記特許文献１のように操作の基準位置を表示するマーカ（起点表示体）が追従する態様においては、現在の接触位置と、起点との距離が遠く離れた場合でも、マーカが追従することにより、起点に対する操作方向の把握が容易となる。しかし、現在の接触位置と起点との距離がもともと近い場合、マーカの位置が現在の接触位置にすぐに位置してしまい、かえって操作方向の把握が困難となる。
【０００７】
そこで本発明は、タッチスクリーンに表示された仮想操作子を介してユーザが操作するゲームにおいて、ユーザが行った操作入力に対する視認性の向上を図ることができるゲームプログラムおよびゲームシステムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明の一態様に係るゲームプログラムは、コンピュータを、第１領域を有するタッチスクリーンにゲーム画面を表示するゲーム画面表示手段、前記タッチスクリーンへのユーザの操作を受け付ける操作受付手段、ユーザの前記操作に基づいてゲームを制御するゲーム制御手段、前記第１領域上に所定の基準点を設定する基準点設定手段、前記ユーザの操作に基づいて仮想操作子の前記第１領域上の位置を設定し、前記仮想操作子を表示する操作子表示手段、前記基準点に基づいて前記第１領域上に初期位置が設定される起点表示体を表示する起点表示体表示手段、前記仮想操作子が前記第１領域上を移動した場合に、前記起点表示体の中心位置が前記仮想操作子の中心位置に近づくように追従して移動させる追従制御手段、および前記起点表示体の追従時の移動速度を設定する移動速度設定手段、として機能させ、前記移動速度設定手段は、前記起点表示体の中心位置に基づいて設定される第２領域外に前記仮想操作子が位置している場合における前記起点表示体の移動速度を、前記第２領域内に前記仮想操作子が位置している場合における前記起点表示体の移動速度より速い速度に設定する。
【０００９】
前記操作子表示手段は、前記第１領域の少なくとも一部の領域である第３領域において前記タッチスクリーンにユーザが触れている位置を前記仮想操作子の位置に設定し、前記基準点設定手段は、前記第３領域において前記タッチスクリーンにユーザが最初に触れた位置に基づいて前記基準点を設定してもよい。
【００１０】
前記操作子表示手段は、前記第１領域の少なくとも一部の領域である第３領域において前記タッチスクリーンにユーザが触れている位置を前記仮想操作子の位置に設定し、前記基準点設定手段は、前記第３領域において予め定められた位置に前記基準点を設定してもよい。
【００１１】
前記追従制御手段は、前記タッチスクリーンにユーザが最初に触れた位置から接触状態を保ちながら前記タッチスクリーン上をスライド操作することにより、前記タッチスクリーンにユーザが触れている位置が前記第１領域の一部の領域である第４領域内に位置した場合、前記第４領域内における前記起点表示体の移動を行わなくてもよい。
【００１２】
前記追従制御手段は、前記仮想操作子の位置と前記起点表示体の中心位置と間に所定のオブジェクトが位置している場合、前記起点表示体が前記オブジェクトに重ならないように、前記起点表示体の追従を停止してもよい。
【００１３】
前記追従制御手段は、前記起点表示体の追従時において、前記所定のオブジェクトに設定されている当たり判定領域と前記起点表示体に設定されている当たり判定領域とが重なったか否かによって、前記起点表示体が前記オブジェクトに重なったか否かを判定し、前記起点表示体が前記オブジェクトに重なったと判定した場合に、前記起点表示体の移動を停止し、前記起点表示体の移動停止後、前記起点表示体が前記オブジェクトに重ならなくなったと判定された場合に、前記起点表示体の移動を再開してもよい。
【００１４】
本発明の他の態様に係るゲームシステムは、上記何れかのゲームプログラムを記憶したプログラム記憶部と、前記プログラム記憶部に記憶されたプログラムを実行するコンピュータと、を備える。
【発明の効果】
【００１５】
本発明によれば、タッチスクリーンに表示された仮想操作子を介してユーザが操作するゲームにおいて、ユーザが行った操作入力に対する視認性の向上を図ることができるゲームプログラムおよびゲームシステムを提供することができる。
【図面の簡単な説明】
【００１６】
【図１】図１は、本発明の実施の形態１に係るゲーム装置のハードウェア構成を示すブロック図である。
【図２】図２は、図１に示すゲーム装置の機能的な構成を示すブロック図である。
【図３】図３は、図１に示すゲーム装置でのゲームのプレイ中のゲーム画面の一例を示す模式図である。
【図４Ａ】図４Ａは、実施の形態１における仮想操作子の表示手順を模式的に示す図である。
【図４Ｂ】図４Ｂは、実施の形態１における仮想操作子の表示手順を模式的に示す図である。
【図４Ｃ】図４Ｃは、実施の形態１における仮想操作子の表示手順を模式的に示す図である。
【図４Ｄ】図４Ｄは、実施の形態１における仮想操作子の表示手順を模式的に示す図である。
【図４Ｅ】図４Ｅは、実施の形態１における仮想操作子の表示手順を模式的に示す図である。
【図５】図５は、本発明の実施の形態２におけるゲームのプレイ中のゲーム画面の一例を示す模式図である。
【発明を実施するための形態】
【００１７】
［実施の形態１］
以下、本発明の実施の形態１に係るゲームプログラムおよびゲームシステムについて、図面を参照しつつ説明する。
【００１８】
［ハードウェアの構成］
本実施の形態におけるゲームシステムは、携帯型のビデオゲーム機または携帯電話等のタッチスクリーンを備えた小型のゲーム装置に適用できる。以下ではこのようなゲーム装置を例に、本発明の実施の形態について説明する。
【００１９】
図１は、本発明の実施の形態１に係るゲーム装置１のハードウェア構成を示すブロック図である。図１に示すようにゲーム装置１は制御部３０を備えている。制御部３０は、ＣＰＵ１１、描画データ生成プロセッサ１２、ＲＡＭ（Random Access Memory）１３、ＲＯＭ（Read Only Memory）１４、描画処理プロセッサ１５、および音声処理プロセッサ１６を備えている。さらに、ゲーム装置１は、ＶＲＡＭ（Video-RAM）２０、操作入力インタフェース２１、タッチスクリーン２、アンプ２２、スピーカ２３、イヤホン端子２４、外部バスインタフェース２６、および無線通信モジュール２７を備えている。ＣＰＵ１１、描画データ生成プロセッサ１２、ＲＡＭ１３、ＲＯＭ１４、描画処理プロセッサ１５、音声処理プロセッサ１６、操作入力インタフェース２１、外部バスインタフェース２６、および無線通信モジュール２７が、バス１０を介して相互にデータ伝送可能に接続されている。
【００２０】
外部バスインタフェース２６は、ゲーム装置１をＵＳＢ（Universal Serial Bus）ケーブル等の外部バスを介して他のコンピュータ装置と接続する。外部バスインタフェース２６は、接続された他のコンピュータ装置（記録媒体の一種）からゲームプログラム５ａおよびゲームデータ５ｂをロードする。ゲームプログラム５ａは、例えばプレイヤキャラクタと敵キャラクタとが仮想ゲーム空間にて対戦する内容のアクションゲームをゲーム装置１に実行させるためのコンピュータプログラムである。また、ゲームデータ５ｂには、上記ゲームを実行する上で必要なデータが含まれている。例えば、ゲームデータ５ｂは、仮想ゲーム空間を構成する背景の画像データ、ステータス等の情報表示用の画像データ、十字キー等の仮想操作子の画像データ、効果音またはＢＧＭ等の音声データ、文字または記号によるメッセージデータ等を含む。
【００２１】
無線通信モジュール２７は、ＨＳＰＡ（High Speed Packet Access）等の通信規格に準拠した無線通信によって、インターネット上のサーバ装置との間でデータ通信を行う。このデータ通信により、サーバ装置からゲームプログラム５ａおよびゲームデータ５ｂをダウンロードでき、あるいは、他のゲーム装置１との間で通信できる。本実施の形態におけるゲーム装置１は、外部バスインタフェース２６または無線通信モジュール２７を介してロードしたゲームプログラム５ａおよびゲームデータ５ｂに基づいて、ゲームを実行することができる。また、無線通信モジュール２７により他のゲーム装置１との間でインターネットを介して通信することにより、他のユーザが操作するキャラクタと対戦することも可能である。
【００２２】
ＲＡＭ１３には、ロードエリアおよびワークエリアが設定されている。ロードエリアには、外部バスインタフェース２６または無線通信モジュール２７を介してロードしたゲームプログラム５ａおよびゲームデータ５ｂが格納される。ワークエリアは、ＣＰＵ１１がゲームプログラム５ａを実行する際に使用される。ＲＯＭ１４には、外部バスインタフェース２６または無線通信モジュール２７を介するローディング機能等のゲーム装置１の基本プログラムが記憶されている。
【００２３】
ＣＰＵ１１は、ＲＡＭ１３にロードしたゲームプログラム５ａを、後述する仮想操作子Ｂ１（図３参照）に対するユーザの操作に応じて実行し、ゲーム進行を制御する。すなわち、ユーザに操作されることによって仮想操作子Ｂ１から操作信号が入力されると、ＣＰＵ１１は、ゲームプログラム５ａに従ってその操作信号に対応する所定のゲーム進行処理を行う。この処理結果は、ゲーム進行を示す画像（フレーム毎のゲーム画面）としてタッチスクリーン２に表示される。この際、ＣＰＵ１１は、必要に応じて、音声信号を出力し、スピーカ２３またはイヤホン端子２４から音声を出力させる。
【００２４】
より具体的には、ＣＰＵ１１は、ユーザにより入力された操作信号に基づき、タッチスクリーン２に表示すべきゲーム画面の内容を決定する。描画データ生成プロセッサ１２は、ＣＰＵ１１が決定した内容に対して必要な描画データを生成し、描画処理プロセッサ１５に転送する。描画処理プロセッサ１５は、描画データに基づいてゲーム画面の描画処理を行う。例えば、描画処理プロセッサ１５は、描画データに基づいて１／６０秒毎にゲーム画面を生成し、生成したゲーム画面をＶＲＡＭ２０に書き込む。タッチスクリーン２は、半透過型カラー液晶ディスプレイとバックライトＬＥＤ（Light Emitting Diode）とを有し、ＶＲＡＭ２０に書き込まれたゲーム画面を表示する。
【００２５】
タッチスクリーン２は、上記液晶ディスプレイおよびバックライトＬＥＤの他に、液晶ディスプレイ上に配設されたタッチパネル等の入力手段を有している。したがって、ユーザが手の指先等でタッチスクリーン２上に接触することにより、その接触位置に関する情報が、操作入力インタフェース２１およびバス１０を介してＣＰＵ１１へ入力される。後述するように、ユーザが予め定められた操作態様で操作するようにタッチスクリーン２に触れることにより、タッチスクリーン２にボタンまたはレバー等の物理操作子を模した仮想操作子Ｂ１が表示され、ユーザの操作態様に応じた所定の操作入力を行うことができる。
【００２６】
また、ＣＰＵ１１は、ゲームの進行に応じて、スピーカ２３から出力すべき効果音またはＢＧＭ等の音声を決定し、その音声を発音するための音声データ（ゲームデータ５ｂに含まれる音声データ）をＲＡＭ１３から読み出して音声処理プロセッサ１６に入力する。音声処理プロセッサ１６は、ＤＳＰ（Digital Signal Processor）で構成されている。音声処理プロセッサ１６は、ＣＰＵ１１によって入力された音声データに対して所定の効果（例えば、リバーブ、コーラス等）を付与した後、アナログ信号に変換して、アンプ２２に出力する。アンプ２２は、音声処理プロセッサ１６から入力された音声信号を増幅し、スピーカ２３およびイヤホン端子２４から音声を出力させる。
【００２７】
［制御部の機能的構成］
図２は、図１に示すゲーム装置１の機能的な構成を示すブロック図である。図３は、図１に示すゲーム装置１でのゲームのプレイ中のゲーム画面の一例を示す模式図である。上述したように、ゲーム装置１は、ＣＰＵ１１、描画データ生成プロセッサ１２、ＲＡＭ１３、ＲＯＭ１４、描画処理プロセッサ１５、および音声処理プロセッサ１６等を含む制御部３０を備えたコンピュータとして動作する。図２に示すように、ゲーム装置１の制御部３０は、ゲームプログラム５ａを実行することによって、ゲーム画面表示手段３１、操作対象表示手段３２、操作受付手段３３、ゲーム制御手段３４、基準点設定手段３５、操作子表示手段３６、起点表示体表示手段３７、追従制御手段３８、移動速度設定手段３９、および、仮想空間生成手段４０等の機能を発揮する。
【００２８】
仮想空間生成手段４０は、プレイヤキャラクタＰ１が行動する仮想空間（仮想ゲーム空間）Ｓを生成する。仮想空間Ｓには、プレイヤキャラクタＰ１およびその他のオブジェクトが配置される。その他のオブジェクトには、例えば、後述する味方キャラクタＰ２または敵キャラクタ等の移動オブジェクトおよび岩または木等の固定オブジェクトが含まれる。仮想空間生成手段４０は、プレイヤキャラクタＰ１の移動に伴って、ゲームデータ５ｂに含まれるオブジェクトおよびテクスチャなどのデータを読み出し、三次元の仮想空間Ｓを生成する。
【００２９】
ゲーム画面表示手段３１は、仮想空間Ｓに配置された所定の仮想カメラで仮想空間Ｓを撮影したときの二次元画像を生成し、タッチスクリーン２の第１領域Ａ１にゲーム画面Ｄとして表示する。
【００３０】
操作対象表示手段３２は、ゲーム画面にユーザの操作対象であるプレイヤキャラクタＰ１を表示する。操作対象表示手段３２は、ゲームデータ５ｂに含まれるプレイヤキャラクタＰ１のデータを読み出し、ゲーム画面に表示する。ゲーム制御手段３４は、後述するユーザの操作に基づいてゲームを制御する。特に、ゲーム制御手段３４は、ユーザの操作に基づいてプレイヤキャラクタＰ１の動作を制御する。これによりゲーム画面に表示されるプレイヤキャラクタＰ１が仮想空間Ｓ内で行動する。
【００３１】
操作受付手段３３は、ユーザがタッチスクリーン２に対して行った操作を受け付ける。より具体的には、例えばユーザがタッチスクリーン２の第１領域Ａ１の一部の領域である第３領域Ａ３に接触すると、操作受付手段３３はその接触位置を検出し、この接触位置を含む所定の操作領域への操作があったものと判断する。なお、本明細書におけるタッチ操作（タッチスクリーン２への接触による操作）には、タッチスクリーン２への指等の接近を検知する近接検知に基づく操作が含まれる。
【００３２】
基準点設定手段３５は、タッチスクリーン２上に所定の基準点Ｒを設定する。操作子表示手段３６は、仮想操作子Ｂ１の第１領域Ａ１上の位置を、ユーザの操作に基づき設定する。操作子表示手段３６は、設定された第１領域Ａ１上の位置に仮想操作子Ｂ１を表示する。起点表示体表示手段３７は、基準点Ｒに基づいて第１領域Ａ１上に初期位置Ｂｉが設定される起点表示体Ｂ２を表示する。
【００３３】
仮想操作子Ｂ１はユーザの操作に基づいて移動する。追従制御手段３８は、仮想操作子Ｂ１が第１領域Ａ１上を移動した場合に、起点表示体Ｂ２の中心位置Ｃ２が仮想操作子Ｂ１の中心位置Ｃ１に近づくように追従して移動させる追従制御を行う。移動速度設定手段３９は、起点表示体Ｂ２の追従時の移動速度ｖを設定する。仮想操作子Ｂ１および起点表示体Ｂ２の設定および追従制御については以下で詳述する。
【００３４】
［仮想操作子および起点表示体の表示態様］
図３および図４Ａ〜図４Ｅを参照して、仮想操作子Ｂ１および起点表示体Ｂ２の表示態様についてより詳しく説明する。図４Ａ〜図４Ｅは、実施の形態１における仮想操作子の表示手順を模式的に示す図である。
【００３５】
本実施の形態において、第３領域Ａ３は、ゲーム画面Ｄの全域に設定される第１領域Ａ１の左半分の領域に設定される。図４Ａに示されるように、操作子表示手段３６は、第３領域Ａ３においてタッチスクリーン２にユーザが触れている位置（図４Ａにおいてはユーザの親指Ｕの位置）を仮想操作子Ｂ１の位置に設定する。この際、基準点設定手段３５は、第３領域Ａ３においてタッチスクリーン２にユーザが最初に触れた位置（その操作において最初に触れた位置）に基づいて基準点Ｒを設定する。
【００３６】
起点表示体表示手段３７は、基準点Ｒの位置に起点表示体Ｂ２の中心位置Ｃ２が位置するように起点表示体Ｂ２の初期位置Ｂｉを設定し、その初期位置Ｂｉに起点表示体Ｂ２を表示する。すなわち、ユーザの操作入力の開始時において、ユーザが最初に触れた位置を中心位置として仮想操作子Ｂ１および起点表示体Ｂ２が第３領域Ａ３にそれぞれ表示される。
【００３７】
本実施の形態において、仮想操作子Ｂ１は所定の径を有する円である。起点表示体Ｂ２は、仮想操作子Ｂ１より大きい径を有する円である。仮想操作子Ｂ１および起点表示体Ｂ２が重なって表示されることにより、現実のゲームコントローラのレバー状の操作子が模擬されている。
【００３８】
操作受付手段３３は、第３領域Ａ３においてタッチスクリーン２にユーザが最初に触れた位置から接触状態を保ちながらタッチスクリーン２上をスライド操作（例えばドラッグ操作）したときの操作方向に応じた操作入力を操作方向に応じて異なる操作入力として受け付ける。本実施の形態において、仮想操作子Ｂ１は、プレイヤキャラクタＰ１の移動操作を行うための操作子として構成される。例えば、ユーザが、最初に触れた位置から右上方向にスライド操作した場合、操作受付手段３３は、プレイヤキャラクタＰ１を右上に移動させる操作入力として受け付ける。その他の方向への操作入力についても同様である。
【００３９】
図４Ｂまたは図４Ｃに示されるように、操作子表示手段３６は、このような操作入力に応じて、仮想操作子Ｂ１の位置を移動させる。すなわち、操作子表示手段３６は、ユーザが触れている位置が仮想操作子Ｂ１の中心位置Ｃ１となるように、仮想操作子Ｂ１を移動させる。一方、基準点設定手段３５は、ユーザのタッチスクリーン２への接触が継続している限り、基準点Ｒの位置を保持する（変更しない）。これにより、基準点Ｒに対する仮想操作子Ｂ１の位置（中心位置Ｃ１）の方向が操作方向となる。
【００４０】
追従制御手段３８は、起点表示体Ｂ２の中心位置Ｃ２が仮想操作子Ｂ１の中心位置Ｃ１に近づくように追従して移動させる。すなわち、起点表示体Ｂ２は、仮想操作子Ｂ１の移動に遅れてその移動に追従するように移動する。例えば、ユーザの親指Ｕが最初に触れた位置（基準点Ｒ）からある距離離れた位置までスライド操作した後、接触状態を維持しつつ停止している場合、起点表示体Ｂ２の追従制御により、起点表示体Ｂ２の中心位置Ｃ２が仮想操作子Ｂ１の中心位置Ｃ１へ近づいて行き、再び仮想操作子Ｂ１の中心位置Ｃ１に位置する。このような状態であっても基準点Ｒの位置は変更されないため、基準点Ｒに対する仮想操作子Ｂ１の位置の方向が操作方向となる操作入力が継続される。
【００４１】
起点表示体Ｂ２の追従制御中（起点表示体Ｂ２の中心位置Ｃ２が仮想操作子Ｂ１の中心位置Ｃ１に位置していない状態）において、スライド操作の方向が変化した場合、起点表示体Ｂ２の追従方向もスライド操作の方向に応じて変化する。すなわち、起点表示体Ｂ２は、中心位置Ｃ２が基準点Ｒと仮想操作子Ｂ１の中心位置Ｃ１とを結ぶ仮想線分Ｆ（図４Ｃ参照）上に位置するように追従制御される。なお、各領域Ａ１〜Ａ４（後述）、基準点Ｒ、各中心位置Ｃ１，Ｃ２、起点表示体Ｂ２の初期位置Ｂｉ、仮想線分Ｆは、ゲーム画面Ｄには表示されない。
【００４２】
本実施の形態において、図４Ｃに示されるように、仮想操作子Ｂ１は、起点表示体Ｂ２の外部に移動可能である。すなわち、仮想操作子Ｂ１は、起点表示体Ｂ２から離れて位置可能である。ただし、両者の距離があまり離れすぎると、ユーザがどのような操作入力が行われているかを仮想操作子Ｂ１と起点表示体Ｂ２の位置関係により確認することが難しくなる。そこで、上記のような起点表示体Ｂ２の追従制御を行うことにより、両者の位置関係が分かり易くなるようにしている。
【００４３】
ここで、移動速度設定手段３９は、起点表示体Ｂ２の中心位置Ｃ２に基づいて設定される第２領域Ａ２外に仮想操作子Ｂ１が位置している場合における起点表示体Ｂ２の移動速度ｖ２を、第２領域Ａ２内に仮想操作子Ｂ１が位置している場合における起点表示体Ｂ２の移動速度ｖ１より速い速度に設定する。
【００４４】
より具体的には、移動速度設定手段３９は、図４Ｂに示されるように、起点表示体Ｂ２の中心位置Ｃ１に基づいて設定される第２領域Ａ２内に仮想操作子Ｂ１が位置している場合に、起点表示体Ｂ２の移動速度ｖを第１速度範囲内の速度ｖ１に設定する。また、移動速度設定手段３９は、図４Ｃに示されるように、第２領域Ａ２外に仮想操作子Ｂ１が位置している場合に、起点表示体Ｂ２の移動速度ｖを第２速度範囲内の速度ｖ２に設定する。第１速度範囲内の速度ｖ１は、０より速い速度を下限値とし、第２速度範囲の下限値より遅い速度を上限値とする。第２速度範囲内の速度ｖ２は、第１速度範囲の上限値より速い速度を下限値とする。
【００４５】
本実施の形態において、第１速度範囲内の速度ｖ１は、起点表示体Ｂ２の中心位置Ｃ２と仮想操作子Ｂ１の中心位置Ｃ１との間の距離および仮想操作子Ｂ１の移動速度（スライド操作の速度）にかかわらず所定の第１速度に固定される（以下、第１速度ｖ１と表記する）。例えば、第１速度ｖ１は、第１速度範囲の上限値に設定される。
【００４６】
また、第２速度範囲内の速度ｖ２は、起点表示体Ｂ２の中心位置Ｃ２と仮想操作子Ｂ１の中心位置Ｃ１との間の距離および仮想操作子Ｂ１の移動速度（スライド操作の速度）にかかわらず第１速度ｖ１より速い第２速度に固定される（以下、第２速度ｖ２と表記する）。例えば、第２速度ｖ２は、第２速度範囲の上限値に設定される。
【００４７】
第２領域Ａ２は、起点表示体Ｂ２を画する境界線（円）の内部の領域として設定される。図４においては、見易くするために起点表示体Ｂ２の内側に第２領域Ａ２の境界線が示されている。前述の通り、第２領域Ａ２は、起点表示体Ｂ２の中心位置Ｃ２に基づいて設定される。このため、第２領域Ａ２は、起点表示体Ｂ２の移動とともに移動する。
【００４８】
本実施の形態によれば、仮想操作子Ｂ１の位置（中心位置Ｃ１）と起点表示体Ｂ２の位置（中心位置Ｃ２）との距離が遠い場合には、起点表示体Ｂ２が仮想操作子Ｂ１の位置に早く近づくように、追従するための移動速度が速く設定される。一方で、仮想操作子Ｂ１の位置と起点表示体Ｂ２の位置との距離が近い場合には、その距離が遠い場合に比べて、起点表示体Ｂ２が仮想操作子Ｂ１の位置にゆっくり近づくように、追従するための移動速度が遅く設定される。
【００４９】
これにより、ユーザの操作による現在の接触位置に対応する仮想操作子Ｂ１の位置が、ユーザの操作の起点となる基準点Ｒの方向の目安として表示される起点表示体Ｂ２から離れている場合には起点表示体Ｂ２が仮想操作子Ｂ１に速く追従する。したがって、両者の距離が早く近づき、起点に対する操作方向の把握が容易となる。
【００５０】
また、両者の距離が近い場合には、起点表示体Ｂ２を遅く追従させることにより、仮想操作子Ｂ１が起点表示体Ｂ２の中心位置Ｃ２に位置することを遅らせることができる。したがって、起点に対する操作方向の把握が可能な時間を長くすることができる。
【００５１】
このように、本実施の形態によれば、タッチスクリーン２に表示された仮想操作子Ｂ１を介してユーザが操作するゲームにおいて、ユーザが行った操作入力に対する視認性の向上を図ることができる。
【００５２】
なお、本実施の形態において、スライド操作後、ユーザとタッチスクリーン２との接触状態が解除された場合、追従制御手段３８は、起点表示体Ｂ２の追従制御を継続し、起点表示体Ｂ２の中心位置Ｃ２が仮想操作子Ｂ１の中心位置Ｃ１に位置させる。その後、さらに所定時間経過後、操作子表示手段３６は、仮想操作子Ｂ１を非表示とする。これに合わせて、起点表示体表示手段３７は、起点表示体Ｂ２を非表示とする。なお、プレイヤキャラクタＰ１は、ユーザとタッチスクリーン２との接触状態が解除された時点で今回の操作入力に基づく行動（左上方向への移動）を停止する。
【００５３】
［追従制限領域の設定］
さらに、図４Ｄに示すように、追従制御手段３８は、タッチスクリーン２にユーザが最初に触れた位置から接触状態を保ちながらタッチスクリーン２上をスライド操作することにより、タッチスクリーン２にユーザが触れている位置が第１領域Ａ１の一部の領域である第４領域Ａ４内に位置した場合、第４領域Ａ４内における起点表示体Ｂ２の移動を行わないようにする。なお、図４Ｄでは、プレイヤキャラクタＰ１の図示を省略している。
【００５４】
本実施の形態において、起点表示体Ｂ２の追従制限領域として設定される第４領域Ａ４は、ゲーム画面Ｄの全域に設定される第１領域Ａ１の右半分の領域に設定される。操作子表示手段３６は、ユーザのスライド操作によりユーザがタッチスクリーン２に触れている位置が第４領域Ａ４に移動した場合、第４領域Ａ４のその位置に仮想操作子Ｂ１を移動（表示）させる。
【００５５】
この場合、追従制御手段３８は、起点表示体Ｂ２を第４領域Ａ４内に進入させずに、進入方向（仮想線分Ｆに沿った方向）における第４領域Ａ４の境界線Ｅ１に起点表示体Ｂ２が接触した時点で起点表示体Ｂ２を停止させる。
【００５６】
さらに、仮想操作子Ｂ１がユーザのスライド操作に基づいて第４領域Ａ４内で移動した場合、追従制御手段３８は、第１領域Ａ１内の第４領域Ａ４外の領域である第３領域Ａ３内において、起点表示体Ｂ２を追従制御する。例えば、図４Ｄに示すように、仮想操作子Ｂ１が第４領域Ａ４内で上方に移動した場合、起点表示体Ｂ２は、第４領域Ａ４と第３領域Ａ３との境界線Ｅ１に沿って（境界線Ｅ１に起点表示体Ｂ２が接した状態で）上方に移動する。この場合であっても、起点表示体Ｂ２は、中心位置Ｃ２が基準点Ｒと仮想操作子Ｂ１の中心位置Ｃ１とを結ぶ仮想線分Ｆ上に位置するように追従制御される。
【００５７】
このように、起点表示体Ｂ２が進入できない領域が形成されることにより、起点表示体Ｂ２をゲーム画面Ｄ上に表示することにより、ゲーム画面Ｄにおいて起点表示体Ｂ２がプレイヤキャラクタＰ１等の主要要素に近接して見難くなることを防止することができる。
【００５８】
［干渉防止処理］
さらに、追従制御手段３８は、仮想操作子Ｂ１の位置（中心位置Ｃ１）と起点表示体Ｂ２の中心位置Ｃ２と間に所定のオブジェクトが位置している場合、起点表示体Ｂ２がオブジェクトに重ならないように、起点表示体Ｂ２の追従を停止する。例えば図４Ｅに示すように、本ゲームにおいて、ゲーム中に所定のアイテムを獲得した場合、プレイヤキャラクタＰ１に並んで行動するノンプレイヤキャラクタ（味方キャラクタ）Ｐ２がゲーム画面Ｄの第１領域Ａ１に表示される。図５Ｅにおいては、味方キャラクタＰ２は、第３領域Ａ３に表示される。
【００５９】
このため、第３領域Ａ３に表示される仮想操作子Ｂ１および起点表示体Ｂ２が味方キャラクタＰ２に重なる可能性が生じる。本実施の形態において、仮想操作子Ｂ１はユーザのタッチスクリーン２との接触位置に位置する。したがって、仮想操作子Ｂ１が味方キャラクタＰ２に重なっている状態において、仮想操作子Ｂ１および味方キャラクタＰ２上がユーザの接触位置となる（ユーザの指が置かれている）。このため、仮想操作子Ｂ１が味方キャラクタＰ２に重なっている状態においては、味方キャラクタＰ２上にユーザの指があるため、あまり問題にならない（いずれにしてもよく見えない）。
【００６０】
一方、起点表示体Ｂ２において、上記のような追従制御を行う場合、図４Ｃに示されるように、仮想操作子Ｂ１から離れた位置に起点表示体Ｂ２が位置する可能性が生じる。より詳しくは、仮想操作子Ｂ１の中心位置Ｃ１と基準点Ｒとを結ぶ仮想線分Ｆ上に味方キャラクタＰ２が位置する可能性が生じる。
【００６１】
このような場合に、上記追従制御をそのまま実行すると、味方キャラクタＰ２と起点表示体Ｂ２とがゲーム画面Ｄ上において重なってしまい、ゲームの操作性向上のための補助表示である起点表示体Ｂ２のために、味方キャラクタＰ２が見え難くなってしまう。このため、ゲーム画面Ｄにおける視認性が悪化し、かえってゲームの操作性が悪化してしまう恐れがある。
【００６２】
このような課題を解決するために、本実施の形態において、追従制御手段３８は、仮想操作子Ｂ１の位置（中心位置Ｃ１）と起点表示体Ｂ２の中心位置Ｃ２と間に所定のオブジェクトとして設定される味方キャラクタＰ２が位置している場合、起点表示体Ｂ２が味方キャラクタＰ２に重ならないように、干渉防止処理として起点表示体Ｂ２の追従を停止する。
【００６３】
より具体的には、追従制御手段３８は、起点表示体Ｂ２の境界部（外周部）と、基準点Ｒと仮想操作子Ｂ１の中心位置Ｃ１とを結ぶ仮想線分Ｆとの交点が味方キャラクタＰ２に設定されている当たり判定領域内に位置したか否かを判定する。追従制御手段３８は、起点表示体Ｂ２の境界部と仮想線分Ｆと交点が味方キャラクタＰ２の当たり判定領域内に位置したと判定した場合、起点表示体Ｂ２の追従を停止する。
【００６４】
このような態様によれば、起点表示体Ｂ２の仮想操作子Ｂ１への追従制御を行いつつ、起点表示体Ｂ２が味方キャラクタＰ２に重なって表示されることが防止される。したがって、起点表示体Ｂ２の移動により味方キャラクタＰ２が見え難くなってゲーム画面Ｄにおける視認性が悪化することを防止することができる。
【００６５】
［実施の形態２］
次に、本発明の実施の形態２に係るゲームプログラムおよびゲームシステムについて、図面を参照しつつ説明する。本実施の形態に係るゲーム装置１のハードウェア構成および機能的な構成は、実施の形態１における図１および図２と同様であるため、説明を省略する。
【００６６】
図５は、本発明の実施の形態２におけるゲームのプレイ中のゲーム画面の一例を示す模式図である。本実施の形態において、実施の形態１と同様の構成は同じ符号を付し、説明を省略する。図５の上側に示す第１状態Ｇ１は、ユーザがタッチ操作を行う前の状態を示し、図５の下側に示す第２状態Ｇ２は、ユーザがタッチスクリーン２の第３領域Ａ３に最初に触れたときの状態を示している。
【００６７】
本実施の形態が実施の形態１と異なる点は、基準点Ｒの設定態様である。より具体的には、本実施の形態において、基準点設定手段３５は、第３領域Ａ３において予め定められた位置に基準点Ｒを設定する。すなわち、基準点Ｒは、ユーザのタッチスクリーン２への接触位置に関係なく第３領域Ａ３上の予め定められた位置に固定される。
【００６８】
起点表示体表示手段３７は、基準点Ｒに基づいて設定される初期位置Ｂｉに起点表示体Ｂ２を表示する。本実施の形態において、ユーザの第３領域Ａ３への操作がない場合、起点表示体Ｂ２は、予め基準点Ｒに基づいて設定される初期位置Ｂｉにおいて予め表示されている（第１状態Ｇ１）。一方、操作子表示手段３６は、実施の形態１と同様に、第３領域Ａ３においてタッチスクリーン２にユーザが触れている位置を仮想操作子Ｂ１の位置に設定する。この結果、ユーザの操作入力の初期段階において、ユーザが最初に触れた位置を中心位置として表示される仮想操作子Ｂ１の位置とは関係なく起点表示体Ｂ２が第３領域Ａ３の所定位置に表示される（第２状態Ｇ２）。
【００６９】
操作受付手段３３は、基準点Ｒの位置（すなわち、起点表示体Ｂ２の初期位置Ｂｉの中心位置）に対する仮想操作子Ｂ１の位置（中心位置Ｃ１）の方向（相対的な方向）に応じた操作入力を相対的な方向に応じて異なる操作入力として受け付ける。
【００７０】
例えば、ユーザが、初めに触れた位置が基準点Ｒから右上方向に位置した場合、操作受付手段３３は、プレイヤキャラクタＰ１を右上に移動させる操作入力として受け付ける。その他の方向への操作入力についても同様である。さらに、タッチスクリーン２にユーザが最初に触れた位置から接触状態を保ちながらタッチスクリーン２上をスライド操作（例えばドラッグ操作）したときも、操作受付手段３３は、上記相対的な方向に応じた操作入力として受け付ける。
【００７１】
実施の形態１と同様に、第２領域Ａ２は、起点表示体Ｂ２の中心位置Ｃ２に基づいて設定される。このため、ユーザの操作の初期段階において、ユーザのタッチスクリーン２への接触位置が第２領域Ａ２外に位置する場合が生じ得る。本実施の形態においても、追従制御手段３８は、起点表示体Ｂ２の仮想操作子Ｂ１に対する追従制御を行う。移動速度設定手段３９は、起点表示体Ｂ２の追従制御における移動速度ｖを起点表示体Ｂ２に基づいて設定される第２領域Ａ２内か否かに応じて設定する。
【００７２】
以上より、ユーザのタッチスクリーン２への最初の接触位置が第２領域Ａ２外である場合、起点表示体Ｂ２の追従制御における移動速度ｖが初めから第１速度ｖ１より速い第２速度ｖ２となり得る。このように、ユーザのタッチスクリーン２への最初の接触位置が第２領域Ａ２内か否かで初めから起点表示体Ｂ２の追従制御における移動速度ｖが異なる。
【００７３】
本実施の形態によっても、仮想操作子Ｂ１の位置（中心位置Ｃ１）と起点表示体Ｂ２の位置（中心位置Ｃ２）との距離が遠い場合には、起点表示体Ｂ２が仮想操作子Ｂ１の位置に早く近づくように、追従するための移動速度ｖが速く設定される。一方で、仮想操作子Ｂ１の位置と起点表示体Ｂ２の位置との距離が近い場合には、その距離が遠い場合に比べて、起点表示体Ｂ２が仮想操作子Ｂ１の位置にゆっくり近づくように、追従するための移動速度ｖが遅く設定される。
【００７４】
したがって、本実施の形態によっても、タッチスクリーン２に表示された仮想操作子Ｂ１を介してユーザが操作するゲームにおいて、ユーザが行った操作入力に対する視認性の向上を図ることができる。特に、本実施の形態においては、固定位置として設定される基準点Ｒに基づいた起点表示体Ｂ２とユーザのタッチスクリーン２への接触位置に設定される仮想操作子Ｂ１との距離が初めから離れた位置となり易い。このような場合に、起点表示体Ｂ２を仮想操作子Ｂ１に速く追従させることができ、両者の距離が近づいた後は、起点表示体Ｂ２を遅く追従させることにより、仮想操作子Ｂ１が起点表示体Ｂ２の中心位置Ｃ２に位置することを遅らせることができる。
【００７５】
このように、本実施の形態によっても、タッチスクリーン２に表示された仮想操作子Ｂ１を介してユーザが操作するゲームにおいて、ユーザが行った操作入力に対する視認性の向上を図ることができる。
【００７６】
なお、本実施の形態において、ユーザの接触操作後、ユーザとタッチスクリーン２との接触状態が解除された場合、追従制御手段３８は、起点表示体Ｂ２の追従制御を停止し、起点表示体Ｂ２を初期位置Ｂｉ（基準点Ｒに基づいて設定される位置）にリセットして表示させる。プレイヤキャラクタＰ１は、ユーザとタッチスクリーン２との接触状態が解除された時点で移動を停止する。
【００７７】
また、本実施の形態においても、実施の形態１で説明した、追従制限領域（第４領域Ａ４）の設定（図４Ｄ）および／または味方キャラクタＰ２と起点表示体Ｂ２との干渉防止処理（図４Ｅ）を適用可能である。
【００７８】
以上をまとめると、上記実施の形態は、コンピュータ（ゲーム装置１）を、第１領域Ａ１を有するタッチスクリーン２にゲーム画面Ｄを表示するゲーム画面表示手段３１、前記タッチスクリーン２へのユーザの操作を受け付ける操作受付手段３３、ユーザの前記操作に基づいてゲームを制御するゲーム制御手段３４、前記第１領域Ａ１上に所定の基準点Ｒを設定する基準点設定手段３５、前記ユーザの操作に基づいて仮想操作子Ｂ２の前記第１領域Ａ１上の位置を設定し、前記仮想操作子Ｂ１を表示する操作子表示手段３６、前記基準点Ｒに基づいて前記第１領域Ａ１上に初期位置Ｂｉが設定される起点表示体Ｂ２を表示する起点表示体表示手段３７、前記仮想操作子Ｂ１が前記第１領域Ａ１上を移動した場合に、前記起点表示体Ｂ２の中心位置Ｃ２が前記仮想操作子Ｂ１の中心位置Ｃ１に近づくように追従して移動させる追従制御手段３８、および前記起点表示体Ｂ２の追従時の移動速度ｖを設定する移動速度設定手段３９、として機能させ、前記移動速度設定手段３９は、前記起点表示体Ｂ２の中心位置Ｃ２に基づいて設定される第２領域Ａ２外に前記仮想操作子Ｂ１が位置している場合における前記起点表示体Ｂ２の移動速度（第２移動速度ｖ２）を、前記第２領域Ａ２内に前記仮想操作子Ｂ１が位置している場合における前記起点表示体Ｂ２の移動速度（第１移動速度ｖ１）より速い速度に設定する、ゲームプログラムである。
【００７９】
［発明の効果］
上記各実施の形態におけるゲームプログラムによれば、仮想操作子Ｂ１の位置（中心位置Ｃ１）と起点表示体Ｂ２の位置（中心位置Ｃ２）との距離が遠い場合には、起点表示体Ｂ２が仮想操作子Ｂ１の位置に早く近づくように、追従するための移動速度が速く設定される。一方で、仮想操作子Ｂ１の位置と起点表示体Ｂ２の位置との距離が近い場合には、その距離が遠い場合に比べて、起点表示体Ｂ２が仮想操作子Ｂ１の位置にゆっくり近づくように、追従するための移動速度が遅く設定される。
【００８０】
これにより、ユーザの操作による現在の接触位置に対応する仮想操作子Ｂ１の位置が、ユーザの操作の起点となる基準点Ｒの方向の目安として表示される起点表示体Ｂ２から離れている場合には起点表示体Ｂ２が仮想操作子Ｂ１に速く追従する。したがって、両者の距離が早く近づき、起点に対する操作方向の把握が容易となる。
【００８１】
また、両者の距離が近い場合には、起点表示体Ｂ２を遅く追従させることにより、仮想操作子Ｂ１が起点表示体Ｂ２の中心位置Ｃ２に位置することを遅らせることができる。したがって、起点に対する操作方向の把握が可能な時間を長くすることができる。
【００８２】
このように、上記各実施の形態によれば、タッチスクリーン２に表示された仮想操作子Ｂ１を介してユーザが操作するゲームにおいて、ユーザが行った操作入力に対する視認性の向上を図ることができる。
【００８３】
［他の実施形態］
以上、本発明の実施の形態について説明したが、本発明は上記実施の形態に限定されるものではなく、その趣旨を逸脱しない範囲内で種々の改良、変更、修正が可能である。
【００８４】
また、上記実施の形態において、第２領域Ａ２は、起点表示体Ｂ２を画する境界線の内部の領域として設定される例を示したが、これに限られない。例えば、第２領域Ａ２は、起点表示体Ｂ２を画する境界線より大きい領域（より大径の円）に設定されてもよいし、起点表示体Ｂ２を画する境界線より小さい領域に設定されてもよい。また、第２領域Ａ２の形状は、起点表示体Ｂ２と相似形状であってもよいし、相似形状でなくてもよい。例えば、起点表示体Ｂ２はひし形または多角形の境界線を有し、第２領域Ａ２は所定の半径を有する円として設定されてもよい。
【００８５】
また、上記実施の形態において、第１速度範囲内の速度ｖ１は、起点表示体Ｂ２の中心位置Ｃ２と仮想操作子Ｂ１の中心位置Ｃ１との間の距離および仮想操作子Ｂ１の移動速度（スライド操作の速度）にかかわらず第１速度範囲の上限値の速度（第１速度）に固定され、第２速度範囲内の速度ｖ２は、起点表示体Ｂ２の中心位置Ｃ２と仮想操作子Ｂ１の中心位置Ｃ１との間の距離および仮想操作子Ｂ１の移動速度（スライド操作の速度）にかかわらず第２速度範囲の上限値の速度（第２速度）に固定される態様を例示した。
【００８６】
本発明は、これに限られず、第１速度範囲内の速度ｖ１および／または第２速度範囲内の速度ｖ２は、起点表示体Ｂ２の中心位置Ｃ２と仮想操作子Ｂ１の中心位置Ｃ１との間の距離または仮想操作子Ｂ１の移動速度（スライド操作の速度）に応じて変化してもよい。
【００８７】
例えば、第２領域Ａ２内における仮想操作子Ｂ１の移動速度が第１速度範囲の上限値の速度より遅く下限値の速度より速い場合、仮想操作子Ｂ１の移動速度に基づいて起点表示体Ｂ２の移動速度（追従速度）が設定されてもよい。この時の追従速度は、仮想操作子Ｂ１の移動速度と同じでもよいし、仮想操作子Ｂ１の移動速度より速い速度または遅い速度としてもよい。追従速度を仮想操作子Ｂ１の移動速度より速い速度または遅い速度とする場合、例えば仮想操作子Ｂ１の移動速度に所定の係数を掛けた値または加えた値としてもよい。
【００８８】
同様に、例えば、第２領域Ａ２外における仮想操作子Ｂ１の移動速度が第２速度範囲の上限値の速度より遅く下限値の速度より速い場合、仮想操作子Ｂ１の移動速度に基づいて起点表示体Ｂ２の移動速度（追従速度）が設定されてもよい。
【００８９】
なお、起点表示体Ｂ２の追従速度が仮想操作子Ｂ１の移動速度に基づいて設定される場合においても、仮想操作子Ｂ１の移動速度は、各速度範囲内に設定される。すなわち、例えば、第２領域Ａ２内における仮想操作子Ｂ１の移動速度が第１速度範囲の上限値を超える速度である場合、起点表示体Ｂ２の追従速度は第１速度範囲の上限値に設定される。また、例えば、第２領域外における仮想操作子Ｂ１の移動速度が第２速度範囲の下限値未満の速度である場合、起点表示体Ｂ２の追従速度は第２速度範囲の下限値に設定される。
【００９０】
また、例えば、起点表示体Ｂ２の中心位置Ｃ２と仮想操作子Ｂ１の中心位置Ｃ１との間の距離が長い（遠い）ほど、起点表示体Ｂ２の追従速度を各速度範囲内においてより速い速度に設定してもよい。
【００９１】
また、上記実施の形態において、仮想操作子Ｂ１の移動は、第４領域Ａ４に進入することも許容される態様を例示した。これに代えて、仮想操作子Ｂ１の第４領域への移動を禁止してもよい。この場合、タッチスクリーン２にユーザが触れている位置（スライド操作位置）が第３領域Ａ３を越えて第４領域Ａ４に進入しても仮想操作子Ｂ１および起点表示体Ｂ２は第３領域Ａ３内で停止した状態となる。このとき、ユーザのスライド操作を有効として、プレイヤキャラクタＰ１を引き続き移動させてもよい。これに代えて、ユーザが触れている位置が第４領域Ａ４に進入した時点でユーザのスライド操作を無効としてもよい。
【００９２】
また、このような第４領域Ａ４を設定しないようにしてもよい。すなわち、起点表示体Ｂ２が進入できない領域を設けないようにしてもよい。
【００９３】
また、上記実施の形態において、味方キャラクタＰ２と起点表示体Ｂ２との干渉防止処理（図４Ｅ）が行われる態様について例示したが、このような干渉防止処理は行わなくてもよい。また、起点表示体Ｂ２を味方キャラクタＰ２に重ならないように停止させる態様に代えて、起点表示体Ｂ２が味方キャラクタＰ２に重なっている間は起点表示体Ｂ２を非表示とする干渉防止処理を行ってもよい。
【００９４】
さらに、起点表示体Ｂ２に対して仮想操作子Ｂ１に追従させる制御を行うことにより、味方キャラクタＰ２と起点表示体Ｂ２とがゲーム画面Ｄ上において重なってしまうという課題を解決するために、上記のような干渉防止処理を行うという観点からは、起点表示体Ｂ２の追従制御において仮想操作子Ｂ１が第２領域Ａ２内に位置しているか否かに応じて移動速度ｖを変更する制御は必須ではない。すなわち、干渉防止処理を行うためには、コンピュータを、移動速度設定手段３９として機能させなくてもよい。
【００９５】
また、上記実施の形態において、味方キャラクタＰ２と起点表示体Ｂ２との間で干渉防止処理を行う態様を説明したが、味方キャラクタＰ２以外の所定のオブジェクトと起点表示体Ｂ２との間で同様の干渉防止処理を行ってもよい。例えば、所定のオブジェクトには、操作対象となるプレイヤキャラクタＰ１等の操作対象オブジェクト、敵キャラクタ等のノンプレイヤキャラクタ、壁等の固定オブジェクト、アイテム等、ゲーム画面Ｄに表示される何れのオブジェクトも含まれ得る。複数種類のオブジェクトに対して干渉防止処理を行ってもよい。
【００９６】
干渉防止処理において、追従制御手段３８は、起点表示体Ｂ２の仮想操作子Ｂ１への追従を停止した後、起点表示体Ｂ２と味方キャラクタＰ２との接触が解除された場合、起点表示体Ｂ２の追従を再開してもよいし、そのまま追従動作を終了していもよい。追従が再開された場合、移動速度設定手段３９は、起点表示体Ｂ２の移動速度ｖを再開時における仮想操作子Ｂ１と第２領域Ａ２との位置関係に応じて再設定する。
【００９７】
これに代えて、起点表示体Ｂ２の移動速度ｖは、干渉防止処理が行われない場合に比べて速い速度で移動させてもよい。例えば、移動速度設定手段３９は、再開時における仮想操作子Ｂ１と第２領域Ａ２との位置関係に応じた移動速度に所定の係数を掛けた値または加えた値を再開後の移動速度ｖに設定してもよい。
【００９８】
また、干渉防止処理において、起点表示体Ｂ２の仮想操作子Ｂ１への追従を停止するために、起点表示体Ｂ２の追従制御に基づく位置演算は継続する一方で、ゲーム画面Ｄに表示される起点表示体Ｂ２の移動を停止させてもよい。この場合、追従再開後は、追従再開時において、干渉防止処理が行われていなかった場合において位置しているはずの起点表示体Ｂ２の位置に位置するまで、第２速度範囲の上限値より速い第３速度で起点表示体Ｂ２を移動させてもよい。
【００９９】
また、干渉防止処理の変形例として、追従制御手段３８は、起点表示体Ｂ２の追従時において、起点表示体Ｂ２が味方キャラクタ（所定のオブジェクト）Ｐ２に重なったか否かを判定し、起点表示体Ｂ２が味方キャラクタＰ２に重なったと判定した場合に、起点表示体Ｂ２の移動を停止し、起点表示体Ｂ２の移動停止後、起点表示体Ｂ２が味方キャラクタＰ２に重ならなくなったと判定された場合に、起点表示体Ｂ２の移動を再開してもよい。この場合、移動速度設定手段３９は、起点表示体Ｂ２の移動再開時における移動速度ｖを再開時における仮想操作子Ｂ１と第２領域Ａ２との位置関係に応じて再設定する。
【０１００】
起点表示体Ｂ２および味方キャラクタＰ２には、それぞれ表示領域に相当する範囲に、当たり判定領域が設定されている。追従制御手段３８は、起点表示体Ｂ２の当たり判定領域と味方キャラクタＰ２の当たり判定領域とが重なった場合に、両者が重なったと判定する。
【０１０１】
このような制御態様において、起点表示体Ｂ２および味方キャラクタＰ２のそれぞれに設定される当たり判定領域を用いて両者が重なったと判定されると、起点表示体Ｂ２が一時停止する。この際、起点表示体Ｂ２の追従方向（仮想線分Ｆに沿った方向）と、起点表示体Ｂ２と味方キャラクタＰ２との重なりの方向とは必ずしも一致しない。このため、味方キャラクタＰ２と起点表示体Ｂ２とが互いに近接している状態では、味方キャラクタＰ２の移動または仮想操作子Ｂ１の移動に伴って起点表示体Ｂ２と味方キャラクタＰ２との重なりおよび重なり解除が断続的に行われ得る。この場合、味方キャラクタＰ２の当たり判定領域の外周に沿って起点表示体Ｂ２が移動および停止を繰り返す。この結果、起点表示体Ｂ２は味方キャラクタＰ２に接触しながら少しずつ移動する。
【０１０２】
その後、起点表示体Ｂ２が味方キャラクタＰ２の当たり判定領域から離れた位置に位置すると、両者の重なり解除が継続され、移動速度設定手段３９によって設定される移動速度ｖで起点表示体Ｂ２の追従が再開される。
【０１０３】
このような態様によっても、起点表示体Ｂ２の仮想操作子Ｂ１への追従制御を行いつつ、起点表示体Ｂ２が味方キャラクタＰ２に重なって表示されることが防止される。したがって、起点表示体Ｂ２の移動により味方キャラクタＰ２が見え難くなってゲーム画面Ｄにおける視認性が悪化することを防止することができる。
【０１０４】
また、実施の形態１において、スライド操作後、ユーザとタッチスクリーン２との接触状態が解除された場合、起点表示体Ｂ２の追従制御を継続させた後、追従制御完了後所定時間経過の後に仮想操作子Ｂ１および起点表示体Ｂ２を非表示とする態様を例示した。これに代えて、追従制御が完了したか否か（起点表示体Ｂ２の中心位置Ｃ２が仮想操作子Ｂ１の中心位置Ｃ１に位置したか否か）にかかわらず、接触状態が解除されてから所定時間経過後に仮想操作子Ｂ１および起点表示体Ｂ２を非表示としてもよい。
【０１０５】
あるいは、接触状態が解除された時点で、追従制御を停止し、仮想操作子Ｂ１および起点表示体Ｂ２を非表示としてもよい。また、何れの場合であっても、仮想操作子Ｂ１および起点表示体Ｂ２の表示を継続してもよい。
【０１０６】
また、実施の形態２において、スライド操作後、ユーザとタッチスクリーン２との接触状態が解除された場合、起点表示体Ｂ２の追従制御を停止し、起点表示体Ｂ２を初期位置Ｂｉ（基準点Ｒに基づいて設定される位置）にリセットして表示させる態様を例示した。これに代えて、実施の形態１と同様に、接触状態が解除された後も起点表示体Ｂ２の追従制御を継続してもよい。
【０１０７】
また、上記実施の形態において、仮想操作子Ｂ１に対応する操作入力が許容される第３領域Ａ３は、第１領域Ａ１の左半分の領域に設定される態様を説明した。これに代えて、第３領域Ａ３は、右半分、左下部分、または右下部分等、タッチ操作が可能な第１領域Ａ１内であれば自由に設定可能である。第１領域Ａ１全域が第３領域Ａ３に設定されてもよい。この場合、第１領域Ａ１と第３領域Ａ３とが同じ領域となる。
【０１０８】
また、上記実施の形態において、第１領域Ａ１は、ゲーム画面Ｄの全面に設定されているが、ゲーム画面Ｄの一部の領域を、ユーザがタッチ操作可能な第１領域Ａ１として設定されてもよい。この場合、ゲーム画面Ｄにおける第１領域Ａ１に設定されていない領域には、ゲームスコア、ゲームのステータス等を表示する表示領域、または、装飾画像等が表示され得る。
【０１０９】
また、上記実施の形態において、仮想操作子Ｂ１および起点表示体Ｂ２の形状が円である態様を例示したが、これに限られず、これらの形状を多角形等の種々の形状とすることができる。
【０１１０】
また、上記実施の形態において、仮想操作子Ｂ１と起点表示体Ｂ２とが別体として表示されている。これに代えて、仮想操作子Ｂ１と起点表示体Ｂ２とが一体的に表示されていてもよい。例えば仮想操作子Ｂ１が操作スティック状の仮想操作子の先端部として構成され、起点表示体Ｂ２が操作スティック状の仮想操作子の基端部として構成され、先端部と基端部とが棒状のオブジェクトによって接続されたような表現としてもよい。
【０１１１】
また、仮想操作子Ｂ１および起点表示体Ｂ２は、例えば、非透過に表示されてもよいし、仮想空間Ｓの映像が透過するように半透明に表示されてもよい。また、仮想操作子Ｂ１および起点表示体Ｂ２のいずれか一方が非透過に表示され、他方が半透明に表示されてもよい。
【０１１２】
また、起点表示体Ｂ２は、例えば基準点Ｒを中心とする円が基準点Ｒから所定の大きさとなるまで徐々に拡大（拡径）する等の所定の表示態様を経て表示されてもよい。
【０１１３】
また、上記実施の形態において、操作対象がプレイヤキャラクタＰ１である場合を説明したが、操作対象は、例えば乗物等、ユーザがゲームにおいて操作するオブジェクトであればこれに限定されない。
【０１１４】
また、上記実施の形態において、仮想操作子Ｂ１による操作入力は、プレイヤキャラクタＰ１の移動方向を入力するための操作入力である例を示したが、これに限られない。例えば、仮想操作子Ｂ１による操作入力を、プレイヤキャラクタＰ１に基づいて仮想空間Ｓ内に配置される仮想カメラの向きを入力するための操作入力としてもよい。また、例えば、仮想操作子Ｂ１による操作入力を、攻撃等の所定の動作を行う方向を入力するための操作入力としてもよい。
【０１１５】
また、上記実施の形態では、第３領域Ａ３に仮想操作子Ｂ１が設定される態様に基づいて例示したが、第３領域Ａ３に設定される仮想操作子（第１仮想操作子）Ｂ１に加えて第４領域Ａ４に別の仮想操作子（第２仮想操作子）が設定されてもよい。この場合、第２仮想操作子も上記実施の形態における表示態様で表示されてもよい。
【０１１６】
また、上記実施の形態において、仮想空間Ｓが二次元である場合を例示したが、仮想空間Ｓは、三次元であってもよい。この場合、プレイヤキャラクタおよびその他のオブジェクトも三次元のデータが用いられる。また、上記実施の形態においては、総対象としてプレイヤキャラクタＰ１が表示されるゲームを例示したが、操作対象がゲーム画面Ｄ上に表示されないゲームであってもよい。例えば、仮想空間Ｓ内の仮想カメラの撮像領域をユーザの視点としてゲーム画面Ｄに表示するＦＰＳゲーム等にも上記実施の形態で説明した仮想操作子Ｂ１および起点表示体Ｂ２の制御態様を適用可能である。
【０１１７】
また、上記実施の形態の適用対象として、小型のゲーム装置に適用する例を示したが、これに限られない。上記実施の形態は、例えば、タッチスクリーンを有する操作デバイスと、仮想ゲーム空間を表示する液晶ディスプレイ等の表示デバイスとを別々に備えるゲームシステムにも適用可能である。
【０１１８】
これらの他の実施形態を採用した場合においても、本発明の作用効果は発揮される。また、上記実施の形態１または２と他の実施形態、および他の実施形態同士を適宜組み合わせることも可能である。
【産業上の利用可能性】
【０１１９】
本発明は、タッチスクリーンに表示された仮想操作子を介してユーザが操作するゲームにおいて、ユーザが行った操作入力に対する視認性の向上を図ることができるゲームプログラムおよびゲームシステムを提供するために有用である。
【符号の説明】
【０１２０】
１  ゲーム装置（ゲームシステム）
２  タッチスクリーン
５ａ  ゲームプログラム
３０  制御部（コンピュータ）
３１  ゲーム画面表示手段
３２  操作対象表示手段
３３  操作受付手段
３４  ゲーム制御手段
３５  基準点設定手段
３６  操作子表示手段
３７  起点表示体表示手段
３８  追従制御手段
３９  移動速度設定手段
Ａ１  第１領域
Ａ２  第２領域
Ａ３  第３領域
Ａ４  第４領域
Ｂ１  仮想操作子
Ｂ２  起点表示体
Ｂｉ  起点表示体の初期位置
Ｃ１  仮想操作子の中心位置
Ｃ２  起点表示体の中心位置
Ｄ  ゲーム画面
Ｐ１  プレイヤキャラクタ（操作対象）
Ｐ２  味方キャラクタ（オブジェクト）
Ｒ  基準点
【図１】
2020178822.tif 000003
【図２】
2020178822.tif 000004
【図３】
2020178822.tif 000005
【図４Ａ】
2020178822.tif 000006
【図４Ｂ】
2020178822.tif 000007
【図４Ｃ】
2020178822.tif 000008
【図４Ｄ】
2020178822.tif 000009
【図４Ｅ】
2020178822.tif 000010
【図５】
2020178822.tif 000011