(57)【特許請求の範囲】
【請求項１】
オブジェクトが配置された仮想空間を仮想カメラから見た様子を表す画面を表示手段に表示する画像処理装置において、
前記画面内の一部領域を指定するための指定操作を受け付ける操作受付手段と、
前記指定操作に要した時間に関する情報を取得する操作時間情報取得手段と、
前記仮想カメラ又は／及び操作対象オブジェクトを、前記一部領域に表示された前記仮想空間内の注目領域に近づけるように移動させる移動制御手段と、
を含み、
前記移動制御手段は、
前記注目領域に前記仮想カメラ又は／及び前記操作対象オブジェクトを近づける場合の前記仮想カメラ又は／及び前記操作対象オブジェクトの移動目標位置を、前記指定された一部領域の前記仮想空間内における位置と、前記指定された一部領域の大きさと、に基づいて決定する移動目標位置決定手段と、
前記仮想カメラ又は／及び前記操作対象オブジェクトを前記移動目標位置に向けて移動させる場合の移動態様を、前記指定操作に要した前記時間に基づいて決定する移動態様決定手段と、
前記移動態様決定手段によって決定された移動態様で、前記仮想カメラ又は／及び前記操作対象オブジェクトを前記移動目標位置に向けて移動させる手段と、を含む、
ことを特徴とする画像処理装置。
【請求項２】
請求項１に記載の画像処理装置において、
前記移動態様決定手段は、前記仮想カメラ又は／及び前記操作対象オブジェクトを前記移動目標位置に向けて移動させる場合の移動速度を、前記指定操作に要した前記時間に基づいて決定することを特徴とする画像処理装置。
【請求項３】
請求項１又は２に記載の画像処理装置において、
前記移動態様決定手段は、前記指定操作に要した前記時間に基づいて、前記指定操作の操作速度を取得する手段を含み、前記仮想カメラ又は／及び前記操作対象オブジェクトを前記移動目標位置に向けて移動させる場合の移動態様を、前記指定操作の操作速度に基づいて決定することを特徴とする画像処理装置。
【請求項４】
請求項１乃至３のいずれかに画像処理装置において、
前記一部領域を示す画像を前記画面に表示する手段と、
前記操作対象オブジェクトのパラメータと、前記一部領域内に含まれるオブジェクトのパラメータと、の比較結果に基づいて、前記一部領域を示す前記画像の表示態様を変更する手段と、を含む、
ことを特徴とする画像処理装置。
【請求項５】
オブジェクトが配置された仮想空間を仮想カメラから見た様子を表す画面を表示手段に表示する画像処理装置の制御方法において、
前記画面内の一部領域を指定するための指定操作を受け付ける操作受付ステップと、
前記指定操作に要した時間に関する情報を取得する操作時間情報取得ステップと、
前記仮想カメラ又は／及び操作対象オブジェクトを、前記一部領域に表示された前記仮想空間内の注目領域に近づけるように移動させる移動制御ステップと、
を含み、
前記移動制御ステップは、
前記注目領域に前記仮想カメラ又は／及び前記操作対象オブジェクトを近づける場合の前記仮想カメラ又は／及び前記操作対象オブジェクトの移動目標位置を、前記指定された一部領域の前記仮想空間内における位置と、前記指定された一部領域の大きさと、に基づいて決定する移動目標位置決定ステップと、
前記仮想カメラ又は／及び前記操作対象オブジェクトを前記移動目標位置に向けて移動させる場合の移動態様を、前記指定操作に要した前記時間に基づいて決定する移動態様決定ステップと、
前記移動態様決定ステップにおいて決定された移動態様で、前記仮想カメラ又は／及び前記操作対象オブジェクトを前記移動目標位置に向けて移動させるステップと、を含む、
ことを特徴とする画像処理装置の制御方法。
【請求項６】
オブジェクトが配置された仮想空間を仮想カメラから見た様子を表す画面を表示手段に表示する画像処理装置としてコンピュータを機能させるためのプログラムであって、
前記画面内の一部領域を指定するための指定操作を受け付ける操作受付手段、
前記指定操作に要した時間に関する情報を取得する操作時間情報取得手段、及び、
前記仮想カメラ又は／及び操作対象オブジェクトを、前記一部領域に表示された前記仮想空間内の注目領域に近づけるように移動させる移動制御手段、
として前記コンピュータを機能させ、
前記移動制御手段は、
前記注目領域に前記仮想カメラ又は／及び前記操作対象オブジェクトを近づける場合の前記仮想カメラ又は／及び前記操作対象オブジェクトの移動目標位置を、前記指定された一部領域の前記仮想空間内における位置と、前記指定された一部領域の大きさと、に基づいて決定する移動目標位置決定手段と、
前記仮想カメラ又は／及び前記操作対象オブジェクトを前記移動目標位置に向けて移動させる場合の移動態様を、前記指定操作に要した前記時間に基づいて決定する移動態様決定手段と、
前記移動態様決定手段によって決定された移動態様で、前記仮想カメラ又は／及び前記操作対象オブジェクトを前記移動目標位置に向けて移動させる手段と、を含む、
ことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は画像処理装置、画像処理装置の制御方法、及びプログラムに関する。
【背景技術】
【０００２】
オブジェクトが配置された仮想空間を仮想カメラから見た様子を表す画面を表示手段に表示する画像処理装置（例えばゲーム装置等）が知られている。このような画像処理装置では、仮想カメラ又は／及びユーザの操作対象オブジェクトがユーザの操作に応じて移動するものがある。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１０−０４６２１９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
従来の画像処理装置では、仮想カメラ又は／及び操作対象オブジェクトを所望の位置まで所望の態様（例えば移動速度又は移動手段等）で移動させる場合、ユーザは、目標位置を指定する操作と、移動態様を指定する操作と、を行わなければならなかった。
【０００５】
本発明は上記課題に鑑みてなされたものであって、その目的は、仮想カメラ又は／及び操作対象オブジェクトを所望の移動目標位置まで所望の移動態様で移動させる場合において、所望の移動目標位置と所望の移動態様とを一の操作で指定することが可能な画像処理装置、画像処理装置の制御方法、及びプログラムを提供することにある。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、本発明に係る画像処理装置は、オブジェクトが配置された仮想空間を仮想カメラから見た様子を表す画面を表示手段に表示する画像処理装置において、前記画面内の一部領域を指定するための指定操作を受け付ける操作受付手段と、前記指定操作に要した時間に関する情報を取得する操作時間情報取得手段と、前記仮想カメラ又は／及び操作対象オブジェクトを、前記一部領域に表示された前記仮想空間内の注目領域に近づけるように移動させる移動制御手段と、を含み、前記移動制御手段は、前記注目領域に前記仮想カメラ又は／及び前記操作対象オブジェクトを近づける場合の前記仮想カメラ又は／及び前記操作対象オブジェクトの移動目標位置を、前記指定された一部領域の前記仮想空間内における位置と、前記指定された一部領域の大きさと、に基づいて決定する移動目標位置決定手段と、前記仮想カメラ又は／及び前記操作対象オブジェクトを前記移動目標位置に向けて移動させる場合の移動態様を、前記指定操作に要した前記時間に基づいて決定する移動態様決定手段と、前記移動態様決定手段によって決定された移動態様で、前記仮想カメラ又は／及び前記操作対象オブジェクトを前記移動目標位置に向けて移動させる手段と、を含むことを特徴とする。
【０００７】
また、本発明に係る画像処理装置の制御方法は、オブジェクトが配置された仮想空間を仮想カメラから見た様子を表す画面を表示手段に表示する画像処理装置の制御方法において、前記画面内の一部領域を指定するための指定操作を受け付ける操作受付ステップと、前記指定操作に要した時間に関する情報を取得する操作時間情報取得ステップと、前記仮想カメラ又は／及び操作対象オブジェクトを、前記一部領域に表示された前記仮想空間内の注目領域に近づけるように移動させる移動制御ステップと、を含み、前記移動制御ステップは、前記注目領域に前記仮想カメラ又は／及び前記操作対象オブジェクトを近づける場合の前記仮想カメラ又は／及び前記操作対象オブジェクトの移動目標位置を、前記指定された一部領域の前記仮想空間内における位置と、前記指定された一部領域の大きさと、に基づいて決定する移動目標位置決定ステップと、前記仮想カメラ又は／及び前記操作対象オブジェクトを前記移動目標位置に向けて移動させる場合の移動態様を、前記指定操作に要した前記時間に基づいて決定する移動態様決定ステップと、前記移動態様決定ステップにおいて決定された移動態様で、前記仮想カメラ又は／及び前記操作対象オブジェクトを前記移動目標位置に向けて移動させるステップと、を含むことを特徴とする。
【０００８】
また、本発明に係るプログラムは、オブジェクトが配置された仮想空間を仮想カメラから見た様子を表す画面を表示手段に表示する画像処理装置としてコンピュータを機能させるためのプログラムであって、前記画面内の一部領域を指定するための指定操作を受け付ける操作受付手段、前記指定操作に要した時間に関する情報を取得する操作時間情報取得手段、及び、前記仮想カメラ又は／及び操作対象オブジェクトを、前記一部領域に表示された前記仮想空間内の注目領域に近づけるように移動させる移動制御手段、として前記コンピュータを機能させ、前記移動制御手段は、前記注目領域に前記仮想カメラ又は／及び前記操作対象オブジェクトを近づける場合の前記仮想カメラ又は／及び前記操作対象オブジェクトの移動目標位置を、前記指定された一部領域の前記仮想空間内おける位置と、前記指定された一部領域の大きさと、に基づいて決定する移動目標位置決定手段と、前記仮想カメラ又は／及び前記操作対象オブジェクトを前記移動目標位置に向けて移動させる場合の移動態様を、前記指定操作に要した前記時間に基づいて決定する移動態様決定手段と、前記移動態様決定手段によって決定された移動態様で、前記仮想カメラ又は／及び前記操作対象オブジェクトを前記移動目標位置に向けて移動させる手段と、を含むことを特徴とするプログラムである。
【０００９】
また、本発明に係る情報記憶媒体は、上記プログラムを記録したコンピュータ読み取り可能な情報記憶媒体である。
【００１０】
本発明によれば、仮想カメラ又は／及び操作対象オブジェクトを所望の移動目標位置まで所望の移動態様（例えば移動速度又は移動手段等）で移動させる場合において、所望の移動目標位置と所望の移動態様とを一の操作で指定することが可能になる。
【００１１】
また本発明の一態様では、前記移動態様決定手段は、前記仮想カメラ又は／及び前記操作対象オブジェクトを前記移動目標位置に向けて移動させる場合の移動速度を、前記指定操作に要した前記時間に基づいて決定するようにしてもよい。
【００１２】
また本発明の一態様では、前記移動態様決定手段は、前記指定操作に要した前記時間に基づいて、前記指定操作の操作速度を取得する手段を含み、前記仮想カメラ又は／及び前記操作対象オブジェクトを前記移動目標位置に向けて移動させる場合の移動態様を、前記指定操作の操作速度に基づいて決定するようにしてもよい。
【００１３】
また本発明の一態様では、前記一部領域を示す画像を前記画面に表示する手段と、前記操作対象オブジェクトのパラメータと、前記一部領域内に含まれるオブジェクトのパラメータと、の比較結果に基づいて、前記一部領域を示す前記画像の表示態様を変更する手段と、を含むようにしてもよい。
【図面の簡単な説明】
【００１４】
【図１】本発明の実施形態に係るゲーム装置（画像処理装置）のハードウェア構成の一例を示す図である。
【図２】仮想空間の一例を示す図である。
【図３】仮想カメラについて説明するための図である。
【図４】ゲーム画面の一例を示す図である。
【図５】ユーザキャラクタ及び仮想カメラを移動させるための操作について説明するための図である。
【図６】ユーザキャラクタ及び仮想カメラが移動目標位置まで移動した場合の仮想空間の一例を示す図である。
【図７】ユーザキャラクタ及び仮想カメラが移動目標位置まで移動した場合のゲーム画面の一例を示す図である。
【図８】操作速度と移動速度との対応関係の一例を示す図である。
【図９】本発明の実施形態に係るゲーム装置（画像処理装置）の機能ブロック図である。
【図１０】軌跡データの一例について説明するための図である。
【図１１】ゲーム装置で実行される処理の一例を示すフロー図である。
【図１２】囲み条件について説明するための図である。
【図１３】囲み条件について説明するための図である。
【図１４】囲み条件について説明するための図である。
【図１５】移動目標位置の決定方法の一例を説明するための図である。
【図１６】移動目標位置の決定方法の一例を説明するための図である。
【図１７】面積と距離との対応関係の一例を示す図である。
【図１８】ユーザキャラクタ及び仮想カメラの移動の一例について説明するための図である。
【図１９】操作時間と移動速度との対応関係の一例を示す図である。
【図２０】パラメータの差と表示態様情報との対応関係の一例を示す図である。
【図２１】指定操作の他の一例について説明するための図である。
【発明を実施するための形態】
【００１５】
以下、本発明の実施形態の例について図面に基づき詳細に説明する。なお、以下では、画像処理装置の一態様であるゲーム装置に本発明を適用した場合について説明する。本発明の実施形態に係るゲーム装置（画像処理装置）は、例えば、携帯ゲーム機、携帯電話機（スマートフォン）、携帯情報端末、パーソナルコンピュータ、業務用ゲーム機、又は家庭用ゲーム機（据置型ゲーム機）等によって実現される。
【００１６】
図１は、本発明の実施形態に係るゲーム装置のハードウェア構成の一例を示す。図１に示すように、ゲーム装置１０は制御部１１、記憶部１２、通信部１３、表示部１４、音声出力部１５、操作部１６、及びタッチパネル１７を含む。
【００１７】
制御部１１は例えば一又は複数のマイクロプロセッサを含む。制御部１１は、記憶部１２に記憶されたオペレーティングシステム又はその他のプログラムに基づいて、ゲーム装置１０の各部を制御するための処理を実行したり、情報処理を実行したりする。
【００１８】
記憶部１２は主記憶部及び補助記憶部を含む。主記憶部は例えばＲＡＭを含み、補助記憶部から読み出されたプログラム及びデータが主記憶部に書き込まれる。主記憶部は制御部１１の作業用メモリとしても用いられる。補助記憶部は例えばハードディスクドライブ又はソリッドステートドライブ等の不揮発性記憶媒体を含み、プログラムやデータが補助記憶部に記憶される。
【００１９】
通信部１３は、インターネット等の通信ネットワークを介してデータ通信を行うためのものである。例えば、プログラムやデータは、通信ネットワークを介して遠隔地からゲーム装置１０に供給され、記憶部１２（補助記憶部）に記憶される。
【００２０】
表示部１４は例えば液晶ディスプレイである。表示部１４は制御部１１からの指示に従って画面を表示する。音声出力部１５は例えばスピーカ又はヘッドホン端子である。音声出力部１５は制御部１１からの指示に従って音声（例えば、音楽又は効果音等）を出力する。操作部１６は例えばボタン、スティック（レバー）、キーボード、又はマウスを含み、ユーザが操作を行うために用いられる。
【００２１】
タッチパネル１７は、例えば抵抗膜方式又は静電容量方式等の一般的なタッチパネルである。タッチパネル１７はユーザによって接触された位置を検出する。タッチパネル１７は、ユーザによって接触された位置に応じた情報を制御部１１に供給する。タッチパネル１７は表示部１４の上に重ねられ、表示部１４に表示される画面内の位置をユーザが指し示すために用いられる。例えば、タッチパネル１７によって検出された位置（すなわち、ユーザによって接触された位置）はスクリーン座標系で表される。スクリーン座標系は、表示部１４に表示される画面の左上の頂点を原点Ｏとし、横方向（右方向）をＸｓ軸正方向とし、縦方向（下方向）をＹｓ軸正方向とするようなＸｓＹｓ座標系である（後述の図４参照）。
【００２２】
なお、ゲーム装置１０は光ディスクドライブ又はメモリカードスロットを含むようにしてもよい。光ディスクドライブは光ディスク（情報記憶媒体）に記録されたプログラムやデータを読み出すためのものであり、メモリカードスロットはメモリカード（情報記憶媒体）に記憶されたプログラムやデータを読み出すためのものである。プログラムやデータは、光ディスク又はメモリカードを介してゲーム装置１０に供給され、記憶部１２（補助記憶部）に記憶されるようにしてもよい。
【００２３】
ゲーム装置１０は記憶部１２に記憶されるゲームプログラムに基づいて各種ゲームを実行する。以下では、ユーザがゲームキャラクタ（以下「ユーザキャラクタ」と記載する。）を操作することによって、ユーザキャラクタと対立するゲームキャラクタ（以下「敵キャラクタ」と記載する。）を退治するゲームをゲーム装置１０が実行する場合について説明する。
【００２４】
ゲーム装置１０が上記のゲームを実行する場合、仮想空間が記憶部１２（主記憶部）に構築される。図２は仮想空間の一例を示す。図２に示す仮想空間２０は、互いに直交する３つの座標軸（Ｘｗ軸、Ｙｗ軸、及びＺｗ軸）が設定された仮想的な３次元空間である。仮想空間２０に配置されるオブジェクトの位置等はこれらの３つの座標軸によって特定される。なお、以下では、ＸｗＹｗＺｗ座標系のことを「ワールド座標系」と記載する。
【００２５】
図２に示すように、各種オブジェクトが仮想空間２０に配置される。例えば、フィールドを表すオブジェクトであるフィールドオブジェクト（以下、単に「フィールド」と記載する。）２１が仮想空間２０に配置される。また、ユーザキャラクタを表すオブジェクトであるユーザキャラクタオブジェクト（以下、単に「ユーザキャラクタ」と記載する。）２２がフィールド２１上に配置される。さらに、敵キャラクタを表すオブジェクトである敵キャラクタオブジェクト（以下、単に「敵キャラクタ」と記載する。）２３Ａ，２３Ｂ，２３Ｃもフィールド２１上に配置される。なお、以下では、敵キャラクタ２３Ａ，２３Ｂ，２３Ｃのことを総称して「敵キャラクタ２３」と記載する場合がある。
【００２６】
また、ユーザキャラクタ２２の味方キャラクタを表すオブジェクトである味方キャラクタオブジェクト（以下、単に「味方キャラクタ」と記載する。）２４もフィールド２１上に配置される。なお、図２に示す状態では２体の敵キャラクタ２３Ａ，２３Ｂが味方キャラクタ２４に向かって迫ってきている。
【００２７】
さらに、宝箱を表すオブジェクトである宝箱オブジェクト（以下、単に「宝箱」と記載する。）２５もフィールド２１上に配置される。なお、図２に示す状態では敵キャラクタ２３Ｃが宝箱２５の付近に位置している。
【００２８】
また、仮想空間２０には仮想カメラ（視点）が設定される。図３は仮想カメラについて説明するための図である。例えば、仮想カメラ３０はユーザキャラクタ２２の位置に基づいて設定される。より具体的には、例えば、仮想カメラ３０はユーザキャラクタ２２の頭部内の位置２２Ａ（例えば、左目と右目との間の中間位置）に設定される。この場合、ユーザキャラクタ２２の移動に従って仮想カメラ３０も移動し、仮想カメラ３０の視界はユーザキャラクタ２２の視界と略等しくなる。
【００２９】
なお、仮想カメラ３０はユーザキャラクタ２２の頭部内の位置２２Ａに設定されなくてもよい。例えば、仮想カメラ３０はユーザキャラクタ２２の背後の上方に設定されるようにしてもよい。なお、この場合にも、仮想カメラ３０はユーザキャラクタ２２の移動に従って移動するようにすればよい。
【００３０】
上記の仮想カメラ３０から見た仮想空間２０を表す画面が表示部１４に表示される。図４は画面の一例を示す。画面４０は、ワールド座標系の座標値をスクリーン座標系の座標値に変換するための行列演算によって、仮想空間２０に配置されたオブジェクトの各頂点の座標値をワールド座標系からスクリーン座標系に変換することによって生成される。
【００３１】
なお、上述したように、仮想カメラ３０がユーザキャラクタ２２の頭部内の位置２２Ａに設定される場合には、ユーザキャラクタ２２から見た仮想空間２０が画面４０に表示されることになる。この場合、ユーザは、ユーザキャラクタ２２から見た仮想空間２０が表された画面４０を見ながらゲームをプレイすることになる。
【００３２】
以下、上記のようなゲーム装置１０において、ユーザキャラクタ２２及び仮想カメラ３０の移動目標位置と、ユーザキャラクタ２２及び仮想カメラ３０が移動目標位置まで移動する場合の移動態様（例えば移動速度）と、をユーザが一つの操作によって指定することが可能なユーザインタフェースを実現するための技術について説明する。
【００３３】
図５は、ユーザキャラクタ２２及び仮想カメラ３０を移動させるための操作について説明するための図である。本実施形態の場合、ユーザは、画面４０内の一部の領域５０を囲むような軌跡５２をタッチパネル１７上で描くことによって、ユーザキャラクタ２２及び仮想カメラ３０の移動目標位置と、ユーザキャラクタ２２及び仮想カメラ３０が移動目標位置まで移動する場合の移動速度（移動態様）と、を指定する。
【００３４】
画面４０内の一部の領域５０を囲むような軌跡５２が描かれた場合、ユーザキャラクタ２２及び仮想カメラ３０が、該領域５０に表示された仮想空間２０の領域（以下「注目領域」と記載する。）に向かって移動する。すなわち、ユーザキャラクタ２２及び仮想カメラ３０は注目領域に近づいていく。
【００３５】
この場合、ユーザキャラクタ２２及び仮想カメラ３０の視界が注目領域に対応することになるような位置が、ユーザキャラクタ２２及び仮想カメラ３０の移動目標位置として設定される。すなわち、ユーザキャラクタ２２及び仮想カメラ３０の視界が注目領域に略一致することになるような位置が、ユーザキャラクタ２２及び仮想カメラ３０の移動目標位置として設定される。
【００３６】
図６及び図７は、ユーザキャラクタ２２及び仮想カメラ３０が上記の移動目標位置まで移動した場合の仮想空間２０及び画面４０の一例をそれぞれ示す。なお、図６では、ユーザキャラクタ２２を省略しているが、上述したように、仮想カメラ３０はユーザキャラクタ２２の頭部内の位置２２Ａに設定されるため、実際には、ユーザキャラクタ２２も仮想カメラ３０の位置に配置される。
【００３７】
ユーザキャラクタ２２及び仮想カメラ３０が、現在の位置から移動目標位置まで移動する場合の仮想空間２０における移動速度は、軌跡５２を描く操作の操作速度に基づいて設定される。図８は、軌跡５２を描く操作の操作速度（ｖｏ）と、ユーザキャラクタ２２及び仮想カメラ３０の移動速度（ｖｍ）と、の対応関係の一例を示す。なお、軌跡５２を描く操作の操作速度（ｖｏ）は、軌跡５２の長さを、軌跡５２を描くために要した時間によって除することによって算出される。また、図８において、「Ｖ１」，「Ｖ２」、及び「Ｖ３」は所定の操作速度を示し、これらは「Ｖ１＜Ｖ２＜Ｖ３」の関係を有する。また、「Ｖａ」、「Ｖｂ」、「Ｖｃ」、及び「Ｖｄ」は所定の移動速度を示し、これらは「Ｖａ＜Ｖｂ＜Ｖｃ＜Ｖｄ」の関係を有する。図８に示す対応関係では、軌跡５２を描く操作の操作速度（ｖｏ）が速いほど、ユーザキャラクタ２２及び仮想カメラ３０の移動速度（ｖｍ）が速くなるようになっている。
【００３８】
以上のように、ゲーム装置１０では、ユーザは、画面４０内の領域５０を囲むような軌跡５２を描くことによって、ユーザキャラクタ２２及び仮想カメラ３０の移動目標位置を指定することができる。さらに、ユーザは、軌跡５２を描く操作の操作速度を調整することによって、ユーザキャラクタ２２及び仮想カメラ３０が移動目標位置まで移動する場合の移動速度（移動態様）を指定することができる。すなわち、ゲーム装置１０では、ユーザキャラクタ２２及び仮想カメラ３０の移動目標位置と、ユーザキャラクタ２２及び仮想カメラ３０が移動目標位置に向かって移動する場合の移動速度（移動態様）と、の両方を指定することを、画面４０内の領域５０を囲むような軌跡５２を描くという一つの直感的な操作で行えるようになっている。
【００３９】
例えば、図２に示す状態では、２体の敵キャラクタ２３Ａ，２３Ｂが味方キャラクタ２４に迫ってきている。このような場合、味方キャラクタ２４を助けるべく、ユーザは、例えば図５に示すような、敵キャラクタ２３Ａ，２３Ｂ及び味方キャラクタ２４を囲む軌跡５２を素早く描くことによって、ユーザキャラクタ２２（及び仮想カメラ３０）を敵キャラクタ２３Ａ，２３Ｂ及び味方キャラクタ２４の所まで速く移動させる。
【００４０】
また、図２に示す状態では、敵キャラクタ２３Ｃが宝箱２５の付近に位置している。このような場合、敵キャラクタ２３Ｃに注意を払いながら宝箱２５に慎重に近づくべく、ユーザは、敵キャラクタ２３Ｃ及び宝箱２５を囲む軌跡５２を比較的ゆっくりと描くことによって、ユーザキャラクタ２２（及び仮想カメラ３０）を敵キャラクタ２３Ｃ及び宝箱２５の所までゆっくり移動させる。
【００４１】
上記に説明したようなユーザインタフェースを実現するための構成について説明する。図９は、ゲーム装置１０で実現される機能ブロックを示す機能ブロック図である。図９に示すように、ゲーム装置１０はデータ記憶部９０、操作受付部９１、操作時間情報取得部９２、及び移動制御部９３を含む。例えば、データ記憶部９０は記憶部１２によって実現され、他の機能ブロックは、制御部１１が記憶部１２から読み出されたプログラムを実行することによって実現される。
【００４２】
まず、データ記憶部９０について説明する。データ記憶部９０は、ゲームを実行するために必要なデータを記憶する。例えば、仮想空間２０に配置される各オブジェクトのモデルデータや、ユーザキャラクタ２２、敵キャラクタ２３、及び味方キャラクタ２４のモーションデータがデータ記憶部９０に記憶される。
【００４３】
また、ユーザキャラクタ２２、敵キャラクタ２３、及び味方キャラクタ２４のパラメータデータがデータ記憶部９０に記憶される。例えば、下記のようなパラメータがパラメータデータに含まれる。
・強さを示す強さパラメータ（例えば、攻撃パラメータ又は守備パラメータ等）
・体力の残り又はダメージの累積を示すヒットポイントパラメータ
【００４４】
さらに、仮想空間２０の現在の状態を示す状態データがデータ記憶部９０に記憶される。例えば、下記に示すようなデータが状態データに含まれる。
・ユーザキャラクタ２２の状態（位置、移動方向、及び移動速度等）を示すデータ
・敵キャラクタ２３の状態（位置、移動方向、及び移動速度等）を示すデータ
・味方キャラクタ２４の状態（位置、移動方向、及び移動速度等）を示すデータ
・仮想カメラ３０の状態（位置、視線方向、及び画角等）を示すデータ
【００４５】
次に、操作受付部９１について説明する。操作受付部９１は、画面４０内の領域５０を指定するための操作（以下「指定操作」と記載する。）を受け付ける。
【００４６】
本実施形態の場合、画面４０内の領域５０を囲むような軌跡５２を描く操作が「指定操作」に相当する。すなわち、本実施形態の場合、操作受付部９１は、ユーザの指がタッチパネル１７上に接触している間において所定時間（例えば１／６０秒）ごとにタッチパネル１７から供給される位置情報に基づいて、ユーザによって指示（接触）されているタッチパネル１７上の位置を所定時間（例えば１／６０秒）ごとに取得する。そして、操作受付部９１はユーザによって指示（接触）された位置の軌跡を取得する。この場合、ユーザの指がタッチパネル１７上に接触している間において所定時間ごとに取得されたユーザの指示位置（接触位置）の集合が、軌跡データとして取得される。この軌跡データは記憶部１２に記憶される。
【００４７】
図１０は軌跡データの一例について説明するための図である。図１０に示すように、軌跡データには、軌跡５２上の複数の位置（ここでは位置Ｐ１〜Ｐ１８）が含まれる。なお、図１０において、位置Ｐ１は軌跡５２の始点である。すなわち、位置Ｐ１は、タッチパネル１７への接触が開始された際の接触位置である。位置Ｐ１８は軌跡５２の終点である。すなわち、位置Ｐ１８は、タッチパネル１７への接触が終了された際の接触位置である。
【００４８】
操作時間情報取得部９２について説明する。操作時間情報取得部９２は指定操作を行うために要した時間（以下「操作時間」と記載する。）に関する情報を取得する。
【００４９】
例えば、操作時間情報取得部９２は、指定操作が開始された時刻を取得する。また、操作時間情報取得部９２は、指定操作が終了した時刻を取得する。そして、操作時間情報取得部９２は、開始時刻から終了時刻までに経過した時間を、操作時間に関する情報として取得する。
【００５０】
または、指定操作が開始された場合に、操作時間情報取得部９２は、記憶部１２に記憶される数値を初期値（例えば０）に初期化する。また、指定操作が終了するまでの間、操作時間情報取得部９２は、記憶部１２に記憶される上記の数値を、所定時間（例えば１／６０秒）ごとに、所定値（例えば１）ずつ増加（又は減少）させていく。そして指定操作が終了した場合、操作時間情報取得部９２は、記憶部１２に記憶される上記の数値と初期値との差を、操作時間に関する情報として取得する。
【００５１】
上述したように、本実施形態の場合、画面４０内の領域５０を囲むような軌跡５２を描く操作が「指定操作」に相当する。このため、本実施形態の場合、画面４０内の領域５０を囲むような軌跡５２を描くために要した時間が「操作時間」に相当する。
【００５２】
例えば図１０に示した軌跡データの場合、ユーザの指が位置Ｐ１に接触した時点から、ユーザの指が位置Ｐ１８まで移動した後にタッチパネル１７から離れた時点までの時間が「操作時間」に相当する。なお、ユーザの接触位置は所定時間（例えば１／６０秒）ごとに取得されるため、軌跡データに含まれる位置Ｐ１〜Ｐ１８の数（図１０の場合には１８個）をＮとし、かつ、所定時間ΔＴとすると、操作時間（ｔ）は下記の式（１）によって取得される。
ｔ＝（Ｎ−１）＊ΔＴ  ・・・  （１）
【００５３】
移動制御部９３について説明する。移動制御部９３は、指定操作によって指定された画面４０内の領域５０に基づいて、仮想カメラ３０又は／及びユーザの操作対象オブジェクトを移動させる。「操作対象オブジェクト」は、仮想空間２０に配置されるオブジェクトのうちの、ユーザによって操作されるオブジェクトである。本実施形態の場合、ユーザキャラクタ２２が「操作対象オブジェクト」に相当する。
【００５４】
移動制御部９３は、ユーザキャラクタ２２（操作対象オブジェクト）又は／及び仮想カメラ３０を、指定操作によって指定された画面４０内の領域５０に表示される仮想空間２０内の領域（注目領域）に近づけるように移動させる。
【００５５】
図９に示すように、移動制御部９３は移動目標位置決定部９４及び移動態様決定部９５を含む。
【００５６】
移動目標位置決定部９４は、ユーザキャラクタ２２又は／及び仮想カメラ３０を注目領域に近づける場合のユーザキャラクタ２２又は／及び仮想カメラ３０の移動目標位置を決定する。移動目標位置決定部９４は、上記の移動目標位置を、指定操作によって指定された画面４０内の領域５０の仮想空間２０における位置と、領域５０の大きさと、に基づいて決定する。ここで、「領域５０の大きさ」とは、例えば、領域５０の、画面４０内（スクリーン座標系）における大きさであってもよいし、領域５０の、仮想空間２０内（ワールド座標系）における大きさであってもよい。なお、「領域５０の、仮想空間２０内における大きさ」とは、領域５０に対応する仮想空間２０内の領域（すなわち注目領域）の大きさである。
【００５７】
例えば、移動目標位置決定部９４は、ユーザキャラクタ２２から見える仮想空間２０の領域（すなわち、ユーザキャラクタ２２の視界）が注目領域に対応することになるような位置（言い換えれば、ユーザキャラクタ２２から見える仮想空間２０の領域が注目領域に略一致することになるような位置）を、ユーザキャラクタ２２の移動目標位置として決定する。また例えば、移動目標位置決定部９４は、仮想カメラ３０から見える仮想空間２０の領域（すなわち、仮想カメラ３０の視界）が注目領域に対応することになるような位置（言い換えれば、仮想カメラ３０から見える仮想空間２０の領域が注目領域に略一致することになるような位置）を、仮想カメラ３０の移動目標位置として決定する。移動目標位置決定部９４の動作の詳細については後述する（後述の図１１のステップＳ１０６参照）。
【００５８】
移動態様決定部９５は、ユーザキャラクタ２２又は／及び仮想カメラ３０が移動目標位置に向けて移動する場合の移動態様を、指定操作に要した時間（操作時間）に基づいて決定する。例えば、「ユーザキャラクタ２２又は／及び仮想カメラ３０が移動目標位置に向けて移動する場合の移動態様」とは、ユーザキャラクタ２２又は／及び仮想カメラ３０が移動目標位置に向けて移動する場合の移動速度である。また、例えば、ユーザキャラクタ２２が複数の移動手段（例えば乗物）のうちから選択される移動手段によって移動するような場合であれば、「ユーザキャラクタ２２が移動目標位置に向けて移動する場合の移動態様」とは、ユーザキャラクタ２２が移動目標位置に向けて移動する場合に用いる移動手段である。
【００５９】
移動態様決定部９５を実現するために、例えば、指定操作を行うために要した時間（操作時間）に関する条件と、移動態様と、の対応関係を示す対応関係情報がデータ記憶部９０に記憶される。より具体的には、例えば図８に示したような対応関係情報がデータ記憶部９０に記憶される。図８に示した対応関係情報は、軌跡５２を描く操作の操作速度（ｖｏ）と、移動速度（ｖｍ）と、の対応関係を示す情報の一例である。なお、図８に示した対応関係情報は上記の対応関係を示すテーブル形式の情報であるが、対応関係情報は、操作速度（ｖｏ）に基づいて移動速度（ｖｍ）を算出するための数式形式の情報であってもよい。
【００６０】
上述したように、本実施形態の場合、画面４０内の領域５０を囲むような軌跡５２を描く操作が「指定操作」に相当する。このため、軌跡５２を描くために要した時間が「操作時間」に相当する。また、軌跡５２を描く操作の操作速度は、軌跡５２を描く操作の操作時間に基づいて算出される。つまり、軌跡５２を描く操作の操作速度は、軌跡５２の長さを、軌跡５２を描くために要した時間（操作時間）で除することによって算出される。このため、図８に示した対応関係情報において、操作速度の範囲は、軌跡５２を描く操作の操作時間に関する条件に相当し、その結果、「指定操作を行うために要した時間（操作時間）に関する条件」に相当する。
【００６１】
移動態様決定部９５は、ユーザキャラクタ２２又は／及び仮想カメラ３０を移動目標位置に向けて移動させる場合の移動速度を、上記のような対応関係情報に基づいて決定する。すなわち、移動態様決定部９５は、指定操作を行うために要した時間（操作時間）によって満足される条件に対応づけられた移動速度を選択する。例えば、図８に示した対応関係情報が記憶されている場合、移動態様決定部９５は、軌跡５２を描く操作の操作速度が属する範囲に対応づけられた移動速度を選択する。
【００６２】
移動制御部９３は、移動態様決定部９５によって決定された移動態様でユーザキャラクタ２２又は／及び仮想カメラ３０を移動目標位置に向けて移動させる。
【００６３】
次に、ゲーム装置１０で実行される処理について説明する。図１１は、ゲーム装置１０で実行される処理のうち、本発明に関連する処理の一例を示すフロー図である。例えば、図１１に示す処理は所定時間（例えば１／６０秒）ごとに繰り返し実行される処理である。制御部１１が記憶部１２に記憶されるプログラムに従って、図１１に示す処理を実行することによって、制御部１１が操作受付部９１、操作時間情報取得部９２、及び移動制御部９３として機能するようになる。
【００６４】
図１１に示すように、制御部１１（操作受付部９１）は、軌跡５２の入力が完了されたか否かを判定する（Ｓ１０１）。軌跡５２の入力が完了されていないと判定された場合、制御部１１は本処理を終了する。一方、軌跡５２の入力が完了されたと判定された場合、制御部１１は変数ｉの値をＮに初期化する（Ｓ１０２）。なお、ここでは、位置Ｐ１〜ＰＮが、ユーザによって入力された軌跡５２を示す軌跡データに含まれている場合を想定している。すなわち、「Ｎ」は軌跡データに含まれる位置の総数を示している。言い換えれば、「Ｎ」は、軌跡５２が入力される間にタッチパネル１７によって検出された位置の総数を示している。例えば図１０に示す軌跡データの場合、「Ｎ」の値は１８である。
【００６５】
ステップＳ１０２の処理が実行された後、制御部１１は軌跡データを参照し、位置Ｐ１から位置Ｐｉまでの軌跡５２が囲み条件を満足するか否かを判定する（Ｓ１０３）。「囲み条件」とは、画面４０内の領域５０が軌跡５２によって囲まれたと判断されるような条件である。本実施形態では、下記の２種類の条件Ａ，Ｂの各々が囲み条件として設定されている。図１２、図１３、及び図１４は囲み条件について説明するための図である。
［条件Ａ］位置Ｐｉ−１から位置Ｐｉへの直線が、位置Ｐｉ−ｊ−１から位置Ｐｉ−ｊ（２≦ｊ≦ｉ−２）への直線と交わる。
［条件Ｂ］位置Ｐ１と位置Ｐｉとの間の直線距離ｄが基準距離Ｄｒ以下であって、かつ、位置Ｐ２〜Ｐｉ−１のうちに、位置Ｐ１からの直線距離が基準距離Ｄｒ以上となる位置が存在する。
【００６６】
まず、条件Ａについて説明する。ここでは、例えば、位置Ｐ１から位置Ｐｉまでの軌跡５２が、図１２に示す位置Ｐ１から位置Ｐ１２までの軌跡５２である場合を想定する。この場合、位置Ｐ１１から位置Ｐ１２への直線が、位置Ｐ１から位置Ｐ２への直線と交わるため、図１２に示す位置Ｐ１から位置Ｐ１２までの軌跡５２は条件Ａを満足する。
【００６７】
次に、条件Ｂについて説明する。ここでは、例えば、位置Ｐ１から位置Ｐｉまでの軌跡５２が、図１３に示す位置Ｐ１から位置Ｐ１２までの軌跡５２である場合を想定する。
【００６８】
本実施形態の場合、条件Ｂが満足されるか否かを判断するのにあたって、まず、基準距離Ｄｒが設定される。例えば、基準距離Ｄｒは、位置Ｐ１〜Ｐ１２のＸｓ軸座標値のうちの最大値及び最小値の差と、位置Ｐ１〜Ｐ１２のＹｓ軸座標値のうちの最大値及び最小値の差との少なくとも一方に基づいて設定される。
【００６９】
具体的には、例えば図１３に示すような、位置Ｐ１から位置Ｐ１２までの軌跡５２を含むような矩形１３０の大きさに基づいて、基準距離Ｄｒが設定される。なお、矩形１３０の横辺１３２Ａは、Ｙ軸座標値が最小である位置Ｐ６を通り、かつ、Ｘｓ軸方向に平行な辺であり、横辺１３２Ｂは、Ｙ軸座標値が最大である位置Ｐ１を通り、かつ、Ｘ軸方向に平行な辺である。また、矩形１３０の縦辺１３４Ａは、Ｘ軸座標値が最小である位置Ｐ３を通り、かつ、Ｙｓ軸方向に平行な辺であり、縦辺１３４Ｂは、Ｘ軸座標値が最大である位置Ｐ１０を通り、かつ、Ｙｓ軸方向に平行な辺である。
【００７０】
矩形１３０の横辺１３２Ａ，１３２Ｂの長さをＳｘとし、縦辺１３４Ａ，１３４Ｂの長さをＳｙとすると、下記の式（２）に従って基準距離Ｄｒが決定される。
Ｄｒ＝（（Ｓｘ／２）２＋（Ｓｙ／２）２）１／２  ・・・  （２）
【００７１】
上記の式（２）に従って基準距離Ｄｒが決定される場合、例えば図１４に示すように、斜辺１４２Ｃ以外の２辺１４２Ａ，１４２Ｂの長さがそれぞれＳｘ／２、Ｓｙ／２である直角三角形１４０の斜辺１４２Ｃの長さが、基準距離Ｄｒとして設定されることになる。なお、基準距離Ｄｒを算出するための式は上記の式（２）に限られず、他の式によって算出されるようにしてもよい。また、基準距離Ｄｒは予め定められていてもよい。
【００７２】
図１３に示す例の場合、位置Ｐ１と位置Ｐ１２との間の直線距離ｄは基準距離Ｄｒ以下であり、かつ、位置Ｐ２〜Ｐ１１のうちに、位置Ｐ１からの直線距離が基準距離Ｄｒ以上である位置（例えば位置Ｐ６）が存在するため、図１３に示す位置Ｐ１から位置Ｐ１２までの軌跡５２は条件Ｂを満足する。
【００７３】
ステップＳ１０３において、位置Ｐ１から位置Ｐｉまでの軌跡５２が上記の条件Ａ，Ｂのいずれも満足しないと判定された場合、すなわち、位置Ｐ１から位置Ｐｉまでの軌跡５２が囲み条件を満足しないと判定された場合、制御部１１は変数ｉの値から１を減少させる（Ｓ１０４）。そして、制御部１１は位置Ｐｉが始点であるか否かを判定する（Ｓ１０５）。
【００７４】
位置Ｐｉが始点であると判定された場合とは、ユーザによって入力された軌跡５２が画面４０内の領域５０を囲むような軌跡ではなかった場合である。この場合、制御部１１は本処理を終了する。一方、位置Ｐｉが始点でないと判定された場合、制御部１１はステップＳ１０３の処理を実行する。
【００７５】
ステップＳ１０３において、位置Ｐ１から位置Ｐｉまでの軌跡５２が囲み条件を満足すると判定された場合、すなわち、位置Ｐ１から位置Ｐｉまでの軌跡５２が上記の条件Ａ，Ｂの少なくとも一方を満足すると判定された場合、制御部１１（移動目標位置決定部９４）は、ユーザキャラクタ２２（仮想カメラ３０）の移動目標位置を決定する（Ｓ１０６）。制御部１１は、位置Ｐ１から位置Ｐｉまでの軌跡５２によって囲まれる画面４０の領域５０の位置及び大きさに基づいて所定の処理を実行することによって、ユーザキャラクタ２２（仮想カメラ３０）の移動目標位置を決定する。
【００７６】
図１５及び図１６は、ユーザキャラクタ２２（仮想カメラ３０）の移動目標位置の決定方法の一例について説明するための図である。以下では、例えば、位置Ｐ１から位置Ｐｉまでの軌跡５２が、図１５に示す位置Ｐ１から位置Ｐ１２までの軌跡５２である場合を想定する。
【００７７】
なお、図１５において、矩形１３０は図１３の矩形１３０と同様にして得られる矩形である。また、位置Ｑｉ（ｉ＝２，４，５，７〜９，１１，１２）は、位置Ｐｉから矩形１３０の縦辺１３４Ａ，１３４Ｂ又は横辺１３２Ａ，１３２Ｂへの垂線の足を示す。例えば、位置Ｑ４は、位置Ｐ４から矩形１３０の横辺１３２Ａへの垂線の足である。また、Ｒ１，Ｒ２，Ｒ３，Ｒ４は矩形１３０の頂点を示す。
【００７８】
ステップＳ１０６において、まず、制御部１１は、位置Ｐ１から位置Ｐ１２までの軌跡５２によって囲まれる領域５０の位置及び大きさに関する情報を取得する。
【００７９】
位置Ｐ１から位置Ｐ１２までの軌跡５２によって囲まれる領域５０の位置に関する情報の取得方法について説明する。例えば、制御部１１は、位置Ｐ１から位置Ｐ１２までの軌跡５２によって囲まれる領域５０の位置に関する情報として、軌跡５２によって囲まれる領域５０内の代表位置を取得する。例えば図１５に示すように、制御部１１は、軌跡５２を含む矩形１３０の中心点Ｃを上記の代表位置として取得する。
【００８０】
なお、制御部１１は、軌跡５２によって囲まれる領域５０に含まれているオブジェクトのいずれかの位置を上記の代表位置として取得するようにしてもよい。例えば、制御部１１は、軌跡５２によって囲まれる領域５０に含まれているオブジェクトのうちで、ユーザキャラクタ２２（又は仮想カメラ３０）に最も近いオブジェクトの位置を上記の代表位置として取得するようにしてもよい。例えば、軌跡５２によって囲まれる領域５０内に敵キャラクタ２３及び味方キャラクタ２４が含まれており、かつ、味方キャラクタ２４が敵キャラクタ２３よりもユーザキャラクタ２２（又は仮想カメラ３０）に近い場合には、制御部１１は味方キャラクタ２４の位置を上記の代表位置として取得するようにしてもよい。
【００８１】
次に、位置Ｐ１から位置Ｐ１２までの軌跡５２によって囲まれる領域５０の大きさに関する情報の取得方法について説明する。ここでは、軌跡５２によって囲まれる領域５０の大きさに関する情報として、領域５０の、画面４０内（スクリーン座標系）における大きさに関する情報を取得する場合について説明する。
【００８２】
例えば、制御部１１は、位置Ｐ１から位置Ｐ１２までの軌跡５２によって囲まれる領域５０の大きさに関する情報として、軌跡５２によって囲まれる領域５０の面積を取得する。例えば、制御部１１は、軌跡５２によって囲まれる領域５０以外の領域の面積を矩形１３０の面積から引くことによって、軌跡５２によって囲まれる領域５０の面積を取得する。なお、図１５に示す例の場合、軌跡５２によって囲まれる領域５０以外の領域の面積は、下記の三角形及び四角形の面積を足すことによって取得される。
・三角形Ｐ１Ｐ２Ｑ２，Ｐ１Ｐ１２Ｑ１２，Ｐ６Ｐ５Ｑ５，Ｐ６Ｐ７Ｑ７
・四角形Ｐ２Ｐ３Ｒ３Ｑ２，Ｐ３Ｐ４Ｑ４Ｒ１，Ｐ４Ｐ５Ｑ５Ｑ４，Ｐ７Ｐ８Ｑ８Ｑ７，Ｐ８Ｐ９Ｑ９Ｑ８，Ｐ９Ｐ１０Ｒ２Ｑ９，Ｐ１０Ｐ１１Ｑ１１Ｒ４，Ｐ１１Ｐ１２Ｑ１２Ｑ１１
【００８３】
なお、軌跡５２によって囲まれる領域５０の大きさに関する情報として、領域５０の、画面４０内（スクリーン座標系）における大きさに関する情報を取得する代わりに、領域５０の、仮想空間２０内（ワールド座標系）における大きさに関する情報を取得するようにしてもよい。例えば、制御部１１は、軌跡５２によって囲まれる領域５０に対応する仮想空間２０内の領域（すなわち注目領域）を特定し、該領域（注目領域）の大きさに関する情報を取得するようにしてもよい。
【００８４】
位置Ｐ１から位置Ｐ１２までの軌跡５２によって囲まれる領域５０の位置及び大きさに関する情報が取得された後、制御部１１はそれらの情報に基づいてユーザキャラクタ２２（仮想カメラ３０）の移動目標位置を決定する。図１６を参照しながら、ユーザキャラクタ２２（仮想カメラ３０）の移動目標位置の決定方法の一例について説明する。
【００８５】
まず、制御部１１は、軌跡５２によって囲まれる領域５０の代表位置（例えば図１５の矩形１３０の中心点Ｃ）に対応する仮想空間２０内の位置を取得する。例えば、制御部１１は、スクリーン座標系の座標値をワールド座標系の座標値に変換するための行列演算に基づいて、上記の代表位置のスクリーン座標値をワールド座標系の座標値に変換することによって、上記の代表位置に対応する仮想空間２０内の位置を取得する。図１６における符号「１６０」は、上記の代表位置に対応する仮想空間２０内の位置を示す。
【００８６】
次に、制御部１１は、上記のようにして取得された位置１６０から、仮想カメラ３０の視線方向３２と平行な直線１６２上を、仮想カメラ３０の視線方向３２とは逆方向に移動した位置１６４を、ユーザキャラクタ２２（仮想カメラ３０）の移動目標位置として取得する。この場合、制御部１１は、位置１６０と位置１６４との間の距離（ｋ）を、軌跡５２によって囲まれる領域５０の面積に基づいて決定する。
【００８７】
軌跡５２によって囲まれる領域５０の面積に基づいて上記の距離（ｋ）を決定するためには、領域５０の面積と距離（ｋ）との対応関係を示す対応関係情報が必要となる。
【００８８】
図１７は上記の対応関係情報の一例を示す。図１７において、「Ａ１」，「Ａ２」、及び「Ａ３」は所定の面積を示し、これらは「Ａ１＜Ａ２＜Ａ３」の関係を有する。また、「Ｋ１」、「Ｋ２」、及び「Ｋ３」は所定の距離を示し、これらは「Ｋ１＜Ｋ２＜Ｋ３」の関係を有する。図１７に示す対応関係情報では、軌跡５２によって囲まれる領域５０の面積（ａ）が大きいほど、距離（ｋ）が大きくなるようになっている。図１７に示す対応関係情報は、ユーザキャラクタ２２（仮想カメラ３０）の視界が、軌跡５２によって囲まれる領域５０に表示される仮想空間２０内の領域（注目領域）と対応（略一致）することとなるように設定される。
【００８９】
例えば、図１７に示したような対応関係情報が記憶されている場合、制御部１１は、軌跡５２によって囲まれる領域５０の面積（ａ）が属する範囲に対応づけられた距離（ｋ）を選択する。なお、図１７に示す対応関係情報は上記の対応関係を示すテーブル形式の情報であるが、対応関係情報は、面積（ａ）に基づいて距離（ｋ）を算出するための数式形式の情報であってもよい。
【００９０】
ステップＳ１０６の処理が実行された後、図１１に示すように、制御部１１（操作時間情報取得部９２）は、軌跡５２を描く操作を行うのに要した時間（操作時間）を取得する（Ｓ１０７）。すなわち、制御部１１は、位置Ｐ１から位置Ｐｉまでの軌跡５２を描くために要した時間（操作時間）を算出する。この操作時間（ｔ）は上記の式（１）によって算出される。ただし、この場合、変数ｉの値が上記の式（１）における「Ｎ」の値に相当する。
【００９１】
また、制御部１１は、軌跡５２を描く操作の操作速度を算出する（Ｓ１０８）。すなわち、制御部１１は、位置Ｐ１から位置Ｐｉまでの軌跡５２が描かれた際の操作速度を算出する。
【００９２】
例えば、制御部１１は位置Ｐ１から位置Ｐｉまでの軌跡５２の長さを取得する。軌跡５２の長さ（Ｌ）は下記の式（３）に従って算出される。なお、下記の式（３）において、「Ｄｉ−１」は位置Ｐｉ−１と位置Ｐｉとの間の直線距離を示している。例えば、「Ｄ１」は位置Ｐ１と位置Ｐ２との間の距離を示している。
Ｌ＝Ｄ１＋Ｄ２＋・・・＋Ｄｉ−１  ・・・  （３）
【００９３】
そして、制御部１１は、位置Ｐ１から位置Ｐｉまでの軌跡５２の長さ（Ｌ）と、位置Ｐ１から位置Ｐｉまでの軌跡を描くために要した時間（操作時間：ｔ）に基づいて、位置Ｐ１から位置Ｐｉまでの軌跡５２が描かれた際の操作速度を算出する。すなわち、制御部１１は軌跡の長さ（Ｌ）を操作時間（ｔ）で除することによって操作速度を算出する。
【００９４】
なお、ステップＳ１０７，Ｓ１０８において、制御部１１は、位置Ｐ１（始点）から位置ＰＮ（終点）までの軌跡５２が描かれた際の操作時間及び操作速度を算出するようにしてもよい。
【００９５】
ステップＳ１０８の処理が実行された後、制御部１１（移動態様決定部９５）はユーザキャラクタ２２（仮想カメラ３０）の移動速度を決定する（Ｓ１０９）。例えば、制御部１１は、ステップＳ１０９で決定された操作速度と、図８に示した対応関係情報と、に基づいて移動速度を決定する。すなわち、制御部１１は、ステップＳ１０８で算出された操作速度に対応する移動速度を取得する。
【００９６】
ステップＳ１０９の処理が完了した後、制御部１１（移動制御部９３）は、ステップＳ１０６で決定された移動目標位置への移動をユーザキャラクタ２２（仮想カメラ３０）に開始させる（Ｓ１１０）。この場合、制御部１１は、ユーザキャラクタ２２及び仮想カメラ３０を移動目標位置まで移動させる（図１８参照）。また、この場合、制御部１１は、ステップＳ１０９で決定された移動速度でユーザキャラクタ２２（仮想カメラ３０）を移動させる。以上で図１１に示す処理は終了する。
【００９７】
以上に説明したゲーム装置１０によれば、ユーザキャラクタ２２及び仮想カメラ３０の移動目標位置と、ユーザキャラクタ２２及び仮想カメラ３０が移動目標位置に向かって移動する場合の移動態様（移動速度）と、の両方を指定することを、画面４０内の領域５０を囲むような軌跡５２を描くという一つの直感的な操作で行うことが可能になる。すなわち、ゲーム装置１０によれば、ユーザキャラクタ２２及び仮想カメラ３０の移動目標位置と、ユーザキャラクタ２２及び仮想カメラ３０が移動目標位置に向かって移動する場合の移動態様（移動速度）と、の両方を指定することを一つの直感的な操作によって行えるようなユーザインタフェースを実現することが可能になる。
【００９８】
なお、本発明は以上に説明した実施形態に限定されるものではない。
【００９９】
（１）図８に示した対応関係情報の代わりに、例えば図１９に示すような対応関係情報が記憶されるようにしてもよい。図１９に示す対応関係情報は、指定操作（軌跡５２を描く操作）のために要した操作時間（ｔ）と、移動速度（ｖｍ）と、の対応関係を示す情報であり、操作時間（ｔ）から移動速度（ｖｍ）を直接求めるための情報である。なお、図１９において、「Ｔ１」、「Ｔ２」、及び「Ｔ３」は所定の時間を示し、これらは「Ｔ１＜Ｔ２＜Ｔ３」の関係を有する。「Ｖａ」、「Ｖｂ」、「Ｖｃ」、及び「Ｖｄ」は図８と同様である。図１９に示す対応関係情報では、操作時間（ｔ）が短いほど、移動速度（ｖｍ）が速くなるようになっている。
【０１００】
なお、図１９に示す対応関係情報が記憶される場合、図１１のステップＳ１０８の処理は不要になる。また、図１９に示す対応関係情報はテーブル形式の情報であるが、対応関係情報は、操作時間（ｔ）に基づいて移動速度（ｖｍ）を算出するための数式形式の情報であってもよい。
【０１０１】
（２）制御部１１は、指定操作によって指定された画面４０内の領域５０を示す画像（以下「領域画像」と記載する。）を画面４０に表示するようにしてもよい。また、指定操作によって指定された画面４０内の領域５０に敵キャラクタ２３が含まれる場合、制御部１１は、ユーザキャラクタ２２のパラメータと敵キャラクタ２３のパラメータとの比較結果に基づいて、領域画像の表示態様を変更するようにしてもよい。
【０１０２】
本実施形態の場合、例えば、軌跡５２を示す画像が「領域画像」に相当する。例えば、「領域画像の表示態様を変更する」とは、領域画像の色等を変更することを含む。また例えば、領域画像が、指定操作によって指定された領域５０の境界線を示す線である場合、「領域画像の表示態様を変更する」とは、線の太さや種類等を変更することを含む。
【０１０３】
また例えば、「ユーザキャラクタ２２のパラメータと敵キャラクタ２３のパラメータとの比較結果」とは、「ユーザキャラクタ２２のパラメータと敵キャラクタ２３のパラメータとの間の差（大小）である。より具体的には、上記の「比較結果」とは、ユーザキャラクタ２２のヒットポイントパラメータと敵キャラクタ２３のヒットポイントパラメータとの間の差（大小）である。または、上記の「比較結果」とは、ユーザキャラクタ２２の強さパラメータと敵キャラクタ２３の強さパラメータとの間の差（大小）である。
【０１０４】
なお、軌跡５２によって囲まれる領域５０に複数の敵キャラクタ２３が含まれている場合、それら複数の敵キャラクタ２３のパラメータの統計値（例えば平均値又は最大値等）を上記の「敵キャラクタ２３のパラメータ」として用いるようにすればよい。または、それら複数の敵キャラクタ２３のうちのいずれかの敵キャラクタ２３のパラメータを上記の「敵キャラクタ２３のパラメータ」として用いるようにしてもよい。
【０１０５】
ユーザキャラクタ２２のパラメータと敵キャラクタ２３のパラメータとの比較結果に基づいて、領域画像の表示態様を変更するためには、上記の比較結果と、領域画像の表示態様と、の対応関係を示す対応関係情報が必要となる。図２０はこの対応関係情報の一例を示す。
【０１０６】
図２０に示す対応関係情報では、ユーザキャラクタ２２のパラメータと敵キャラクタ２３のパラメータとの間の差（Δｐ）と、領域画像の表示態様を示す表示態様情報と、の対応関係が定められている。なお、図２０において、「Δｐ」の値が正の値である場合とは、ユーザキャラクタ２２のパラメータが敵キャラクタ２３のパラメータよりも大きい場合を示し、「Δｐ」の値が負の値である場合とは、ユーザキャラクタ２２のパラメータが敵キャラクタ２３のパラメータよりも小さい場合を示している。
【０１０７】
制御部１１は図２０に示す対応関係情報を参照し、ユーザキャラクタ２２のパラメータと敵キャラクタ２３のパラメータとの比較結果（Δｐ）に対応する表示態様情報を取得する。そして、制御部１１は領域画像の表示態様を該表示態様情報が示す表示態様に設定する。
【０１０８】
以上のようにすれば、ユーザキャラクタ２２のパラメータと、指定操作（軌跡５２を描く操作）によって指定された領域５０内に含まれている敵キャラクタ２３のパラメータと、の比較結果をユーザが領域画像（軌跡５２）の表示態様から把握できる。したがって、敵キャラクタ２３と戦う前に、その敵キャラクタ２３がユーザキャラクタ２２よりも強いか弱いかを一目で把握することが可能になる。
【０１０９】
（３）指定操作は軌跡５２を描く操作に限られず、別の操作であってもよい。例えば図２１に示すように、タッチパネル１７上の二つの位置２１０，２１２を指示するような操作であってもよい。この場合、二つの位置２１０，２１２を結ぶ直線を対角線とするような矩形領域２１４が「指定操作によって指定された画面４０内の領域」に相当する。また、この場合、二つの位置２１０，２１２を指示するために要した時間が「指定操作に要した時間（操作時間）」に相当する。例えば、先に位置２１０が指示された後に位置２１２が指示された場合、位置２１０が指示されてから位置２１２が指示されるまでの時間が「指定操作に要した時間（操作時間）」に相当する。
【０１１０】
（４）ユーザキャラクタ２２を仮想空間２０に配置しないようにしてもよい。この場合、仮想カメラ３０のみがユーザの操作に従って移動するようにすればよい。
【０１１１】
（５）ユーザキャラクタ２２と仮想カメラ３０との相対的位置関係は変化するようにしてもよい。例えば、仮想カメラ３０は、ユーザキャラクタ２２と他のオブジェクト（例えば敵キャラクタ２３）との位置関係に合わせて最適な位置に自動的に設定されるようにしてもよい。このような場合、ユーザキャラクタ２２のみがユーザの操作に従って移動するようにすればよい。
【０１１２】
（６）ゲーム装置１０は、タッチパネル１７以外のポインティングデバイスを備えるようにしてもよい。例えば、ゲーム装置１０はマウスを備えるようにしてもよい。また、ゲーム装置１０は、任天堂社製のＷｉｉ（登録商標）のリモコンコントローラのようなポインティングデバイスを備えるようにしてもよい。あるいは、ゲーム装置１０は、マイクロソフト社製のＫＩＮＥＣＴ（登録商標）コントローラのようなポインティングデバイスを備えるようにしてもよい。なお、この場合、ユーザの所定部位（例えば右手）の位置が、ユーザが指示している位置として扱われるようにすればよい。
【０１１３】
（７）ゲーム装置１０で実行されるゲームは以上に説明したゲームに限られない。本発明は、ユーザによって操作されるオブジェクト又は／及び仮想カメラ３０がユーザの操作に従って移動するようなゲームに適用することができる。また、本発明は、ゲーム装置１０以外の画像処理装置にも適用することも可能である。本発明は、ユーザによって操作されるオブジェクト又は／及び仮想カメラ３０がユーザの操作に従って移動するような画面を表示手段に表示する画像処理装置に適用することが可能である。
【符号の説明】
【０１１４】
１０  画像処理装置、１１  制御部、１２  記憶部、１３  通信部、１４  表示部、１５  音声出力部、１６  操作部、１７  タッチパネル、２０  仮想空間、２１  フィールド、２２  ユーザキャラクタ、２３Ａ，２３Ｂ，２３Ｃ  敵キャラクタ、２４  味方キャラクタ、２５  宝箱、３０  仮想カメラ、３２  視線方向、４０  画面、５０  領域、５２  軌跡、９０  データ記憶部、９１  操作受付部、９２  操作時間情報取得部、９３  移動制御部、９４  移動目標位置決定部、９５  移動態様決定部。
【要約】
【課題】仮想カメラ又は／及び操作対象オブジェクトを所望の移動目標位置まで所望の移動態様で移動させる場合において、所望の移動目標位置と所望の移動態様とを一の操作で指定することが可能な画像処理装置を提供すること。
【解決手段】操作時間情報取得部（９２）は、画面内の一部領域を指定するための指定操作に要した時間に関する情報を取得する。移動制御部（９３）は、仮想カメラ又は／及び操作対象オブジェクトを、一部領域に表示された仮想空間内の注目領域に近づけるように移動させる。移動目標位置決定部（９４）は、仮想カメラ又は／及び操作対象オブジェクトの移動目標位置を、一部領域の仮想空間内における位置と、一部領域の大きさと、に基づいて決定する。移動態様決定部（９５）は、仮想カメラ又は／及び操作対象オブジェクトを移動目標位置に向けて移動させる場合の移動態様を、指定操作に要した時間に基づいて決定する。
【選択図】図９【図１】
0005160680.tif 000002
【図２】
0005160680.tif 000003
【図３】
0005160680.tif 000004
【図４】
0005160680.tif 000005
【図５】
0005160680.tif 000006
【図６】
0005160680.tif 000007
【図７】
0005160680.tif 000008
【図８】
0005160680.tif 000009
【図９】
0005160680.tif 000010
【図１０】
0005160680.tif 000011
【図１１】
0005160680.tif 000012
【図１２】
0005160680.tif 000013
【図１３】
0005160680.tif 000014
【図１４】
0005160680.tif 000015
【図１５】
0005160680.tif 000016
【図１６】
0005160680.tif 000017
【図１７】
0005160680.tif 000018
【図１８】
0005160680.tif 000019
【図１９】
0005160680.tif 000020
【図２０】
0005160680.tif 000021
【図２１】
0005160680.tif 000022