JP2015150215A - 移動制御装置及びプログラム - Google Patents

移動制御装置及びプログラム Download PDF

Info

Publication number
JP2015150215A
JP2015150215A JP2014026547A JP2014026547A JP2015150215A JP 2015150215 A JP2015150215 A JP 2015150215A JP 2014026547 A JP2014026547 A JP 2014026547A JP 2014026547 A JP2014026547 A JP 2014026547A JP 2015150215 A JP2015150215 A JP 2015150215A
Authority
JP
Japan
Prior art keywords
user
movement
moving
screen
virtual space
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2014026547A
Other languages
English (en)
Other versions
JP6078719B2 (ja
Inventor
菊花 李
Juhua Lee
菊花 李
佐藤 寿樹
Hisaki Sato
寿樹 佐藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Konami Digital Entertainment Co Ltd
Original Assignee
Konami Digital Entertainment Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Konami Digital Entertainment Co Ltd filed Critical Konami Digital Entertainment Co Ltd
Priority to JP2014026547A priority Critical patent/JP6078719B2/ja
Publication of JP2015150215A publication Critical patent/JP2015150215A/ja
Application granted granted Critical
Publication of JP6078719B2 publication Critical patent/JP6078719B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

【課題】仮想空間において移動対象を移動させるときに、ユーザの指示する位置がずれた場合の影響を軽減することができるゲーム装置を提供する。
【解決手段】移動制御装置10は、仮想空間において移動対象を移動させる。取得手段54は、位置検出手段52が検出した仮想空間内又は画面上の第1の位置及び第2の位置に基づいて定まる、仮想空間内又は画面上の位置を指示位置として取得する。方向決定手段56は、取得手段54により取得された指示位置と、仮想空間内又は画面上の基準位置と、に基づいて、移動対象の移動方向を決定する。移動制御手段58は、方向決定手段56により決定された移動方向に基づいて、移動対象を移動させる。
【選択図】図6

Description

本発明は、移動制御装置及びプログラムに関する。
従来から、仮想空間において移動対象(例えば、キャラクタ等)を移動させる移動制御装置が知られている。例えば、特許文献1には、ユーザがコントローラを使って指示した画面上の位置に向けて、仮想空間内のキャラクタが移動する装置が記載されている。
特開2008−220671号公報
しかしながら、画面上の位置を正確に指示することは難しいため、ユーザの指示する位置がずれやすく、特許文献1の技術では、当該ずれてしまった位置に向けてキャラクタは移動してしまうことがある。このため、上記のような技術では、ユーザの指示する位置がずれた場合の影響を軽減することが求められている。
本発明は上記課題に鑑みてなされたものであって、その目的は、仮想空間において移動対象を移動させるときに、ユーザの指示する位置がずれた場合の影響を軽減することが可能な移動制御装置及びプログラムを提供することにある。
上記課題を解決するために、本発明に係る移動制御装置は、仮想空間において移動対象を移動させる移動制御装置であって、位置検出手段が検出した前記仮想空間内又は画面上の第1の位置及び第2の位置に基づいて定まる、前記仮想空間内又は前記画面上の位置を指示位置として取得する取得手段と、前記取得手段により取得された指示位置と、前記仮想空間内又は前記画面上の基準位置と、に基づいて、前記移動対象の移動方向を決定する方向決定手段と、前記方向決定手段により決定された移動方向に基づいて、前記移動対象を移動させる移動制御手段と、を含むことを特徴とする。
また、本発明に係るプログラムは、仮想空間において移動対象を移動させるコンピュータを、位置検出手段が検出した前記仮想空間内又は画面上の第1の位置及び第2の位置に基づいて定まる、前記仮想空間内又は前記画面上の位置を指示位置として取得する取得手段、前記取得手段により取得された指示位置と、前記仮想空間内又は前記画面上の基準位置と、に基づいて、前記移動対象の移動方向を決定する方向決定手段、前記方向決定手段により決定された移動方向に基づいて、前記移動対象を移動させる移動制御手段、として機能させる。
携帯端末の外観の一例を示す図である。 携帯端末のハードウェア構成の一例を示す図である。 ゲーム空間の一例を示す図である。 ゲーム画面の一例を示す図である。 ユーザの操作対象を移動させるための操作を説明するための説明図である。 携帯端末の機能ブロック図である。 位置検出部が検出した位置を時系列的に格納される様子を示す図である。 移動方向の決定方法を説明するための説明図である。 ゲーム空間をYw軸正方向から見た様子を示す図である。 携帯端末が実行する処理を示すフロー図である。 変形例の機能ブロック図である。 指示位置と基準位置を結ぶ方向と、移動方向と、の関係を示す図である。 頻度情報が示す頻度と速度との関連付けを示す図である。 ゲーム画面の一例を示す図である。
以下、本発明の実施形態の例について図面に基づき詳細に説明する。本発明に係る移動制御装置(コンピュータ)は、例えば、携帯端末(スマートフォン等の携帯電話機、及び、タブレット型コンピュータ等の携帯情報端末を含む)、ゲーム装置、及びパーソナルコンピュータ等により実現される。本実施形態では、移動制御装置が、携帯端末を用いて実現される場合を説明する。
[1.携帯端末のハードウェア構成]
図1は、携帯端末の外観の一例を示す図である。また、図2は、携帯端末のハードウェア構成の一例を示す図である。図1及び図2に示すように、携帯端末10は、制御部11、記憶部12、通信部13、操作部14、タッチパネル15、及び表示部16を含む。
制御部11は、例えば、一又は複数のマイクロプロセッサを含む。制御部11は、記憶部12に記憶されたオペレーティングシステム又はその他のプログラムに従って、処理を実行する。
記憶部12は、メインメモリと不揮発性メモリとを含む。不揮発性メモリには、制御部11によって実行されるプログラムが記憶される。例えば、このプログラムは、インターネット等の通信ネットワークを介してサーバ装置からダウンロードされて不揮発性メモリに格納される。または、このプログラムは、メモリカード等のコンピュータ読み取り可能な情報記憶媒体から複写されて不揮発性メモリに格納される。メインメモリには、不揮発性メモリから読み出されるプログラムや、制御部11が処理を実行する場合に必要なデータが書き込まれる。
通信部13は、データ通信を行うためのものである。例えば、通信部13は、制御部11からの指示に従ってデータ通信を実行する。
操作部14は、例えば、ボタン、スティック(レバー)、又はキーボード等を含み、ユーザが操作を行うために用いられる。
タッチパネル15は、例えばユーザによって接触された一又は複数の位置を検出する。タッチパネル15としては、例えば、静電容量方式のタッチパネルが用いられる。静電容量方式のタッチパネルでは、タッチパネルの表面がユーザによって接触された場合に生じる電荷の変化に基づいて、ユーザによって接触された位置が検出される。ユーザによって接触された位置は、例えば、図1に示すような、タッチパネル15の左上頂点を原点Oとし、かつ、右方向及び下方向をそれぞれXs軸正方向及びYs軸正方向とするXs−Ys座標系の座標値によって表される。オペレーティングシステムは、タッチパネル15から供給される情報に基づいて、ユーザによって接触されている位置を取得する。
なお、タッチパネル15は、仮想空間の様子を表示する表示部16に重畳して設けられていて、ユーザがタッチパネル15の表面を触ることによって、表示部16に表示される画面内の位置を指定することができるようになっている。なお、ユーザは自らの指(手)をタッチパネル15の表面に接触させるようにしてもよいし、ユーザが指(手)以外の部位をタッチパネル15の表面に接触させるようにしてもよい。他にも例えば、ユーザが把持する物体(タッチペン等)をタッチパネル15の表面に接触させるようにしてもよい。
表示部16は、例えば、液晶パネルである。表示部16は、制御部11からの指示に従って画面を表示する。
なお、携帯端末10は光ディスクドライブ又はメモリカードスロットを含むようにしてもよい。光ディスクドライブは、光ディスク(情報記憶媒体)に記録されたプログラムやデータを読み出すためのものである。メモリカードスロットは、メモリカード(情報記憶媒体)に記憶されたプログラムやデータを読み出すためのものである。プログラムやデータは、光ディスク又はメモリカードを介して携帯端末10に供給され、記憶部12(不揮発性メモリ)に記憶されるようにしてもよい。また、情報記憶媒体に記憶されているものとして説明するプログラムやデータは、通信部13を介してネットワークから取得されるようにしてもよい。
[2.携帯端末において実行されるゲーム]
携帯端末10は、記憶部12から読み出したプログラムを実行することによって、仮想空間において移動対象を移動させるゲームを実行する。本実施形態では、ゲーム空間において、キャラクタがボールを移動させてサッカーの試合を行うサッカーゲームが実行される場合について説明する。サッカーゲームが開始されると、例えば、ゲーム空間が記憶部12に構築される。
図3は、ゲーム空間の一例を示す図である。ゲーム空間20は、互いに直交する三つの座標軸(Xw軸、Yw軸、及びZw軸)が設定された仮想的な3次元空間である。ゲーム空間20に配置される各オブジェクトの位置は、例えば、ワールド座標系(Xw−Yw−Zw座標系)の3次元座標で特定される。
図3に示すように、ゲーム空間20には、サッカーフィールドを表すオブジェクトであるフィールド22が配置される。フィールド22上では、ユーザが操作するチーム(以降、「ユーザチーム」という。)と、対戦相手(コンピュータ又は他のユーザ)が操作するチーム(以降、「対戦相手チーム」という。)と、の間でサッカーの試合が行われる。
フィールド22上には、サッカーのゴールを表すオブジェクトであるゴール24が配置され、2本のゴールライン26及び2本のタッチライン28が表されている。ゴールライン26及びタッチライン28によって囲まれたピッチ30及び当該ピッチ30の周囲(ゴールライン26又はタッチライン28に接するピッチ30外の所定領域)において、試合が行われる。
更に、フィールド22上には、ユーザチームに所属するサッカー選手を表すオブジェクトであるキャラクタ32と、対戦相手チームに所属するサッカー選手を表すオブジェクトであるキャラクタ34と、サッカーボールを表すオブジェクトであるボール36(移動対象)と、が配置される。なお、図3では省略されているが、フィールド22上には、ユーザチームに所属する11体のキャラクタ32と、対戦相手チームに所属する11体のキャラクタ34と、が配置される。
ユーザチームに所属するキャラクタ32の何れかは、ユーザの操作に基づいて動作する操作対象となる。ユーザの操作対象は、ユーザが指示した方向に移動したり、ユーザが指示した動作を行ったりする。ユーザの操作対象以外のキャラクタ32及び対戦相手チームに所属するキャラクタ34は、所与の行動アルゴリズムのもとで自律的に動作する。
また、キャラクタ32(34)とボール36とが近づくと、所定条件のもとで、キャラクタ32(34)とボール36とが関連付けられる。以降、キャラクタ32(34)とボール36とが関連付けられた状態を、「キャラクタ32(34)がボール36を保持する」と記載する。ボール36を保持するキャラクタ32(34)は、ドリブル動作、パス動作、又はシュート動作をすることにより、ボール36を移動させることができる。例えば、ユーザは、タッチパネル15に所定の操作入力(例えば、フリック操作)を行うと、ユーザの操作対象にシュート動作をさせることができる。更に、ユーザの操作対象がボール36を保持している場合、ユーザの操作対象がドリブル動作をするとボール36も移動することになる。
また、ゲーム空間20には、仮想カメラ38(視点)が設定される。ゲーム空間20を仮想カメラ38から見た様子を表すゲーム画面が、表示部16に表示される。ゲーム画面は、ゲーム空間20に配置された各オブジェクトの頂点座標が、所定の座標変換演算を用いてワールド座標系からスクリーン座標系に座標変換されることによって生成される。
図4は、ゲーム画面の一例を示す図である。図4に示すように、ゲーム画面40には、仮想カメラ38の視野に含まれるオブジェクトが表示される。仮想カメラ38の位置及び視線方向は、ユーザの操作対象の位置及び代表方向(例えば、移動方向又は体の向き)に基づいて設定される。ここでは、仮想カメラ38の位置及び視線方向と、ユーザの操作対象の位置及び代表方向と、が略一致するものとする。なお、略一致とは、これらのずれ量が基準量以内となることをいう。
ゲーム画面40には、ユーザの操作対象の足が届く範囲(ユーザの操作対象とボール36が関連付けられる範囲)を示すライン42やユーザの操作対象の立ち位置を表す立ち位置画像44が表示される。また、ユーザの操作対象の移動方向を示す方向画像46が表示されるようにしてもよい。
本実施形態では、ユーザの操作対象がボール36を保持している状態でゲームがスタートする。そして、ユーザは、対戦相手チームのゴール24内にボール36を移動させて得点をあげることを目指す。例えば、対戦相手チームのキャラクタ34にボール36を奪われた場合は、ゲームオーバーになったり、ゲームの開始時点の状態からやり直しになったりする。
また、ユーザの操作対象は、原則として、対戦相手チームのゴール24がある方向にのみ移動し、ユーザチームのゴール24がある方向には移動しないものとする。ゴール24がある方向とは、ゴール24に近付く方向である。ユーザは、下記に説明する操作を行うことによって、操作対象を移動させることができる。
図5は、ユーザの操作対象を移動させるための操作を説明するための説明図である。ここでは、ユーザの操作対象がボール36を保持しているので、ユーザの操作対象をボール36とともに移動させる操作、言い換えるとユーザの操作対象にドリブルさせる操作ともいえる。また、ユーザが、2本の指で交互にタッチパネル15に触れることで操作を行う場合を一例に挙げて説明する。
まず、ユーザは、タッチパネル15に触れない状態(図5のゲーム画面40Aの状態)から、人差指F1でタッチパネル15に触れる(図5のゲーム画面40Bの状態)。このユーザの人差指F1がタッチパネル15に触れた位置を第1の位置P1とする。そして、ユーザは、人差指F1をタッチパネル15から離し、中指F2でタッチパネル15に触れる(図5のゲーム画面40Cの状態)。このユーザの中指F2がタッチパネル15に触れた位置を第2の位置P2とする。図5のゲーム画面40Dは、ユーザの中指F2がタッチパネル15から離れた状態を示す。
本実施形態では、第1の位置P1及び第2の位置P2の中点と、ボール36の表示位置と、の位置関係に基づいて、ユーザの操作対象の移動方向が決定される。例えば、前記中点がボール36の表示位置よりも左側(Xs軸の負方向)にある場合は、ユーザの操作対象は、ユーザの操作対象又は仮想カメラ38から見て斜め右方向に移動する。一方、前記中点がボール36よりも右側(Xs軸の正方向)にある場合は、ユーザの操作対象は、ユーザの操作対象又は仮想カメラ38から見て斜め左方向に移動する。
ゲーム画面40Dの状態からユーザがそのままタッチパネル15に触れないでいると、ユーザの操作対象は、上記の移動方向に向けて所定時間または所定距離だけ移動した後に停止する。このため、ユーザの操作対象を移動させ続けるためには、ユーザは、人差指F1と中指F2を交互にタッチパネル15に接触させる操作を繰り返す(図5のゲーム画面40B〜40D)。以降、ユーザが操作対象を移動させるため処理の詳細を説明する。
[3.携帯端末において実現される機能]
図6は、携帯端末10の機能ブロック図である。図6に示すように、携帯端末10は、ゲームデータ記憶部50、位置検出部52、指示位置取得部54、方向決定部56、及び移動制御部58を含む。携帯端末10は、記憶部12に記憶されたプログラムを実行することによって、図6に示す各機能を実現する。ゲームデータ記憶部50は、例えば、記憶部12を主として実現され、位置検出部52は、例えば、制御部11及びタッチパネル15を主として実現される。他の各機能は、制御部11を主として実現される。
[3−1.ゲームデータ記憶部]
ゲームデータ記憶部50は、実行中のゲームの状況を示すゲーム状況データを記憶する。ゲーム状況データには、ゲーム空間20の現在の様子を示すデータが格納される。例えば、ゲーム状況データには、ユーザの操作対象を識別する情報、キャラクタ32(34)の状態(例えば、位置、移動方向、及び移動速度)、ボール36の状態(例えば、位置、移動方向、移動速度、回転方向、及び回転数)、仮想カメラ38の状態(例えば、位置及び視線方向等)、及び試合の状況(例えば、残り時間や得点等)が格納される。なお、ここでの回転とは、ボール36の自転のことである。
また、ゲームデータ記憶部50は、位置検出部52が検出した位置を時系列的に格納する。図7は、位置検出部52が検出した位置を時系列的に格納される様子を示す図である。図7に示すように、座標データと、当該座標データが取得されたタイミングと、が関連付けられてゲームデータ記憶部50に記憶される。
なお、ゲームデータ記憶部50に記憶されるデータは、上記の例に限られない。例えば、ゲームデータ記憶部50は、各キャラクタ32(34)に関するパラメータ(例えば、能力値)を記憶するようにしてもよい。ゲームデータ記憶部50は、ゲーム空間20においてユーザの操作対象などを移動させるために必要なデータを記憶すればよい。
[3−2.位置検出部]
位置検出部52は、ユーザにより指示されたゲーム画面40上の位置を検出する。位置検出部52は、ポインティングデバイスからの信号を取得することで、ゲーム画面40上の位置を検出する。本実施形態では、位置検出部52は、タッチパネル15からの検出信号に基づいて、ユーザにより接触されたタッチパネル15の接触位置を示す情報(例えば、座標データ)を検出する。位置検出部52は、座標データを時系列的にゲームデータ記憶部50に記録することになる。
[3−3.指示位置取得部]
指示位置取得部54は、位置検出部52が検出したゲーム画面40上の第1の位置及び第2の位置に基づいて定まるゲーム画面40上の位置を指示位置として取得する。本実施形態では、指示位置取得部54は、第1の位置と、第1の位置が検出された後に検出される第2の位置と、に基づいて定まるゲーム画面40上の位置を指示位置として取得する場合を説明するが、第1の位置と第2の位置は同時に検出されたものであってもよい。なお、第1の位置が検出された後とは、取得時間が第1の位置よりも遅いことであり、例えば、第1の位置の次に検出された位置が、第2の位置となる。
指示位置は、第1の位置及び第2の位置を所定の計算式に代入することで得られる位置であり、例えば、第1の位置及び第2の位置の両方から所定距離以内の位置である。本実施形態では、指示位置は、第1の位置及び第2の位置の間の位置であり、より具体的には、第1の位置及び第2の位置の中点である。2つの位置に基づいて指示位置が決まるので、ユーザが位置を入力するときにずれが生じたとしても、そのずれの影響を軽減することができる。更に、2つの位置の中間を指示位置とすることにより、指示位置をユーザが予測しやすくなる。
なお、ここでは、第1の位置及び第2の位置を所定の計算式に代入することで指示位置を計算する場合を説明したが、第1の位置及び第2の位置と、指示位置と、を関連付けたデータに基づいて指示位置が定まればよく、このデータは、テーブル形式であってもよい。即ち、指示位置取得部54は、当該テーブルを参照して、第1の位置及び第2の位置に関連付けられた指示位置を取得するようにしてもよい。
また、本実施形態では、第1の位置及び第2の位置の中点が指示位置に相当する場合を説明するが、指示位置は中点に限られない。指示位置は、第1の位置及び第2の位置に基づいて定まる位置であればよい。例えば、指示位置は、第1の位置及び第2の位置を結ぶ線分を所定の比率で内分する内分点であってもよいし、第1の位置及び第2の位置を結ぶ線分を所定の比率で外分する外分点であってもよい。所定の比率の内分点や外分点を用いることで、ユーザは当該比率を考えて位置を指示すればよいので、指示位置を予測しやすくなる。他にも、指示位置は、第1の位置及び第2の位置を結ぶ線上の位置に限られず、この線から所定方向に所定距離だけずらした位置であってもよい。この場合は、ユーザは、当該所定方向や所定距離を考えて位置を指示すればよいので、指示位置を予測しやすくなる。更に、上記の場合に、内分点や外分点を決定するための比率や上記所定方向又は所定距離をユーザの好みに応じて登録しておき、ユーザの操作の癖に応じた指示位置を取得することができるようにしてもよい。
更に、第1の位置及び第2の位置が同じ場合には、上記と同様の方法で計算式やテーブルによって指示位置が取得されるようにしてもよいが、第1の位置及び第2の位置が同じなので中点、内分点、又は外分点等の位置は存在しないことになる。このため、第1の位置及び第2の位置が同じ場合には、指示位置取得部54は、第1の位置及び第2の位置をそのまま指示位置として取得するようにしてもよい。即ち、第1の位置及び第2の位置が同じであるということは、ユーザがタッチパネル15の同じ位置を続けてタップしたことになるので、ユーザの指示する位置がずれたわけではない可能性が高い(即ち、ユーザの指示する位置が、2回とも同じ位置にずれてしまうとは考えにくい)ため、この場合は、第1の位置及び第2の位置をそのまま指示位置とするようにしてもよい。
[3−4.方向決定部]
方向決定部56は、指示位置取得部54により取得された指示位置と、ゲーム画面40上の基準位置と、に基づいて、ユーザの操作対象の移動方向を決定する。基準位置は、予め定められた方法によって定まる位置であり、ゲーム画面40上の所定位置又はゲーム空間20内のオブジェクトの表示位置である。本実施形態では、ゲーム画面40におけるボール36の表示位置が、基準位置に相当する場合を説明する。
方向決定部56は、指示位置と基準位置との位置関係に基づいて、ユーザの操作対象の移動方向を決定する。例えば、指示位置と基準位置との位置関係に関する条件と、ユーザの操作対象が移動すべき方向と、を関連付けたデータがゲームデータ記憶部50に定められているようにしてもよい。この関連付けたデータは、数式形式であってもよいし、テーブル形式であってもよい。方向決定部56は、指示位置と基準位置との位置関係が満たす条件に関連付けられた方向を、ユーザの操作対象の移動方向として決定する。
本実施形態では、方向決定部56は、指示位置取得部54により取得された指示位置と、基準位置と、のゲーム画面40上における基準方向のずれ量に基づいて、移動対象の移動方向を決定する。基準方向は、予め定められた方向であればよく、例えば、Xs軸方向(水平方向)又はYs軸方向(垂直方向)である。本実施形態では、基準方向が、Xs軸方向である場合を説明する。
図8は、移動方向の決定方法を説明するための説明図である。図8に示すように、ゲーム画面40上で指示された指示位置Q(ここでは、第1の位置P1及び第2の位置P2の中点)と、ボール36の表示位置である基準位置Rと、のXs軸方向の距離を、ずれ量Lとする。即ち、方向決定部56は、指示位置QのXs座標と、基準位置RのXs座標と、の差を、ずれ量Lとして取得する。方向決定部56は、ずれ量Lに基づいて、ユーザの操作対象の移動方向を決定する。
図9は、ゲーム空間20をYw軸正方向から見た様子を示す図である。図9に示すように、本実施形態では、ユーザの操作対象の現在位置と対戦相手チームのゴール24の代表位置39とを結ぶ方向が、原則として移動すべき所定方向V0として定められている。なお、代表位置39は、ゴール24に関連付けられた位置であればよく、例えば、ゴール24内の所定位置(中心点等)である。方向決定部56は、指示位置取得部54により取得された指示位置Qと、基準位置Rと、に基づいて、所定方向V0とユーザの操作対象の移動方向V1とのずれ量θを決定する。ずれ量θは、所定方向V0から移動方向V1がどれだけずれているかを示す値(ベクトル変化量)であり、ここでは、所定方向V0と移動方向V1のなす角度である。
例えば、ゲームデータ記憶部50に記憶されている関連付けには、指示位置Q及び基準位置Rのずれ量Lと、所定方向V0及び移動方向V1のずれ量θと、が定義されている。方向決定部56は、指示位置Q及び基準位置Rのずれ量Lに関連付けられた、所定方向V0及び移動方向V1のずれ量θに基づいて、移動方向V1を決定する。より具体的には、方向決定部56は、所定方向V0からずれ量θだけ回転させた方向を、移動方向V1として決定する。例えば、方向決定部56は、ずれ量Lが大きいほど、角度θが大きくなるように、移動方向V1を決定する。別の言い方をすれば、方向決定部56は、ずれ量Lが小さいほど、角度θが小さくなるように、移動方向V1を決定する。
なお、ゲームデータ記憶部50に記憶されている上記関連付けには、所定方向V0を回転させる方向も、上記関連付けに定義されているものとする。例えば、方向決定部56は、指示位置Qが基準位置Rよりもユーザから見て左側(Xs軸の負方向側)にある場合は、ユーザの操作対象又は仮想カメラ38からみて右側に所定方向V0をずれ量θだけ回転させる。一方、方向決定部56は、指示位置Qが基準位置Rよりもユーザから見て右側(Xs軸の正方向側)にある場合は、ユーザの操作対象又は仮想カメラ38からみて左側に所定方向V0をずれ量θだけ回転させる。このようにした場合は、ユーザがタッチパネル15を接触した方向とは逆方向に、ユーザの操作対象が移動するので、ユーザの操作対象が向かう方向がユーザの指などで隠れて見えなくなることを防止することができる。
上記とは逆に、方向決定部56は、指示位置Qが基準位置Rよりもユーザから見て左側(Xs軸の負方向側)にある場合は、ユーザの操作対象又は仮想カメラ38からみて左側に所定方向V0をずれ量θだけ回転させるようにしてもよい。同様に、方向決定部56は、指示位置Qが基準位置Rよりもユーザから見て右側(Xs軸の正方向側)にある場合は、ユーザの操作対象又は仮想カメラ38からみて右側に所定方向V0をずれ量θだけ回転させるようにしてもよい。このようにした場合は、ユーザがタッチパネル15を触った方向にユーザの操作対象を移動させることができるので、触った位置と移動方向との関係を分かりやすくすることができる。
[3−5.移動制御部]
移動制御部58は、方向決定部56により決定された移動方向V1に基づいて、ユーザの操作対象を移動させる。例えば、移動制御部58は、方向決定部により決定された移動方向V1にユーザの操作対象を所定距離又は所定時間移動させる。ここでは、移動制御部58は、ユーザの操作対象を、移動方向V1に向けて、所定の移動速度で所定の距離だけ移動させる。この移動距離は、例えば、第2の位置が検出されたタイミングから一定時間だけ所定の速度で移動することによって決定される。なお、ユーザの操作対象の移動速度が速いほど、移動距離は大きくなる。即ち、ユーザの操作対象の移動速度が遅いほど、移動距離は小さくなる。本実施形態では、移動制御部58が上記のようにユーザの操作対象を所定距離又は所定時間だけ移動させると、ユーザの操作対象は停止する。このため、ユーザの操作対象を移動させ続けるためには、ユーザは、タッチパネル15をタップし続けることになる。
また、本実施形態では、ユーザの操作対象がボール36を保持しているので、移動制御部58は、ユーザの操作対象の移動に基づいて、ボール36を移動させることになる。別の言い方をすれば、移動制御部58は、ユーザの操作対象とともに、ボール36を移動させる。例えば、移動制御部58は、ユーザの操作対象の移動方向V1に対して、ユーザの操作対象が移動した距離だけボール36を移動させる。
[4.携帯端末において実行される処理]
図10は、携帯端末10が実行する処理を示すフロー図である。制御部11は、記憶部12に記憶されたプログラムに従って、図10に示す処理を実行する。図10に示す処理が実行されることによって、図6に示す各機能が実現される。なお、以降説明する処理は、ゲームの開始指示が行われた場合に実行される。
まず、図10に示すように、制御部11は、ゲームを開始し、ゲーム空間20を構築する(S1)。S1においては、制御部11は、ゲーム状況データを生成して記憶部12に記録する。例えば、制御部11は、各キャラクタ32(34)及びボール36を初期位置に配置して、仮想カメラ38の位置及び視線方向を設定する。また例えば、制御部11は、所与の条件のもとでユーザの操作対象を設定し、ユーザの操作対象にボール36を保持させる。
制御部11は、仮想カメラ38からゲーム空間20を見た様子を示すゲーム画面40を表示させる(S2)。なお、制御部11は、ボール36を保持しているユーザの操作対象の位置等に基づいて仮想カメラ38の位置及び視線方向を設定するので、仮想カメラ38の視野内にボール36が含まれるようになっている。このため、S2においては、制御部11は、ゲーム画面40にボール36を表示させることになる。
制御部11は、ボール36の現在の表示位置を基準位置として設定する(S3)。S3においては、制御部11は、ゲーム画面40を表示させるための所与の座標変換処理を実行して、ボール36の3次元座標(ワールド座標)を2次元座標(スクリーン座標)に変換し、当該変換した2次元座標を基準位置とする。
制御部11は、タッチパネル15から取得した座標データを、記憶部12に記録する(S4)。S4においては、制御部11は、座標データを時系列順で記憶部12に記録することになる。なお、タッチパネル15から検出信号を受信しない場合には、S4〜S9の処理は実行されない。
制御部11は、記憶部12の記憶内容を参照して、直近で取得した座標データがあるか否かを判定する(S5)。直近とは、現時点よりも前の時点であり、例えば、現時点よりも前の全期間であってもよいし、現時点から所定時間前までの期間(例えば、5秒前までの期間)であってもよい。
直近で取得した座標データがないと判定された場合(S5;N)、後述のS10に移行する。この場合、ゲーム画面40上の位置がまだ一つだけしか検出されていないため、指示位置は取得されないことになるので、ユーザの操作対象は移動しない。
一方、直近で取得した座標データがあると判定された場合(S5;Y)、制御部11は、直近で取得した座標データが示す座標(第1の位置)と、S4で取得した座標データが示す座標(第2の位置)と、の中点を算出して指示位置を取得する(S6)。
制御部11は、S3で設定した基準位置と、S6で取得した指示位置と、のXs軸方向のずれ量Lを算出する(S7)。S7においては、制御部11は、S3で設定した基準位置のXs座標と、S6で算出した中点のXs座標と、の差をずれ量Lとして算出する。
制御部11は、S7で算出したずれ量Lに基づいて、ユーザの操作対象の移動方向V1を決定する(S8)。S8においては、制御部11は、S7で算出したずれ量Lに基づいて、所定方向V0と移動方向V1とのずれ量θを決定する。そして、制御部11は、指示位置が基準位置よりも左にある場合には、所定方向V0をずれ量θだけ右方向に回転させた方向を、移動方向V1として決定し、指示位置が基準位置よりも右にある場合には、所定方向V0をずれ量θだけ左方向に回転させた方向を、移動方向V1として決定する。
制御部11は、S8で決定した移動方向V1に向けて、ユーザの操作対象を移動させる(S9)。S9においては、制御部11は、S8で決定した移動方向V1に、ユーザの操作対象を、所定の移動速度で、所定距離又は所定時間だけ移動させる。なお、先述のように、この移動距離は、例えば、第2の位置が検出されたタイミングから一定時間だけ所定の速度で移動することによって決定される。
制御部11は、ゲームの終了条件が満たされるか否かを判定する(S10)。ゲームの終了条件は、予め定められた条件であれば特に限定されるものではないが、例えば、実行中のゲームが所定の状況となったか否か、又は、ユーザが所定の終了操作を行ったか否かである。例えば、ボール36が対戦相手チームのゴール24内に入った場合や対戦相手チームのキャラクタがボール36を保持している場合には、終了条件が満たされると判定されてもよい。
ゲームの終了条件が満たされないと判定された場合(S10;N)、S2の処理に戻る。ゲームの終了条件が満たされると判定された場合(S10;Y)、本処理は終了する。
以上説明した携帯端末10によれば、2つの位置に基づいて指示位置Qを定めているので、ゲーム空間20においてユーザの操作対象を移動させるときに、ユーザの指示する位置がずれた場合の影響を軽減することができる。例えば、ユーザの指示する位置がずれてしまったとしても、その後に指示する位置によって、自分が指示したかった位置を修正することができるので、ユーザの指示する位置がずれた場合の影響を軽減することができる。より具体的には、第1の位置がずれてしまっていたとしても、第2の位置を正確に指示すれば、これらの位置に基づいて指示位置Qが定まるので、ユーザの指示する位置がずれた場合の影響を第2の位置により吸収することができる。更に、1つの位置だけを考慮して移動方向を決める場合には、ユーザが間違って指示してしまった位置に急激に方向転換してしまうことが考えられるが、携帯端末10では、2つの位置に基づいて指示位置を定めているので、急激な方向転換を防止することができる。
また、移動方向V1にユーザの操作対象を所定距離又は所定時間移動させるときに、ユーザの指示する位置がずれた場合の影響を軽減することができる。例えば、移動方向V1にユーザの操作対象を所定距離又は所定時間だけ移動して停止する場合は、ユーザはタッチパネル15を繰り返しタップする必要があり、ユーザの指示する位置がずれる可能性が高まるが、このときのユーザの指示する位置がずれた場合の影響を効果的に軽減することができる。
また、指示位置Qと基準位置RとのXs軸方向のずれ量Lに基づいてユーザの操作対象の移動方向V1を決定することで、指示位置Qを指示したときの移動方向V1を、その指示位置Qと基準位置RとのXs軸方向のずれ量Lから予想させてその方向に移動させることができるので、直感的な方向指示が可能になる。例えば、ずれ量Lが大きくなるほど移動方向V1を変えるようにすることができ、ずれ量Lと移動方向V1に関連性を持たせることができるので、Xs軸方向のずれ量Lから移動方向V1を予想しやすくなる。
また、第2の位置P2が第1の位置P1が検出された後に検出される位置であるため、第1の位置P1と第2の位置P2を同時に指示する必要がないので、指示位置Qを指示しやすくなる。更に、第2の位置P2の後に、さらに他の位置が検出された場合、元々の第2の位置P2が第1の位置P1となり、当該他の位置が第2の位置P2となる。このため、新たな位置が次々に検出される場合に、検出された位置とその直前の位置とに基づいて指示位置Qが決まることになるので、指示位置Qが大きく移動することが生じにくく、ユーザの操作対象の移動方向の急激な変化を抑制することができる。
また、指示位置Qと基準位置Rとに基づいて所定方向V0と移動方向V1とのずれ量θを決定することで、指示位置Qを指示したときの移動方向V1を、その指示位置Q等によって定まるずれ量Lや所定方向V0から予想させてその方向に移動させることができるので、直感的な方向指示が可能になる。即ち、ユーザの操作対象が原則として移動すべき所定方向V0が決まっているので、ユーザは、そこからのずれ量θを考えて操作をすればよいので、移動方向V1を予想しやすくなる。
また、ユーザの操作対象が保持するボール36の表示位置が、当該ボール36の移動方向を決める基準位置Rとなっているので、ボール36を移動させるときの方向指示がやりやすくなる。即ち、ユーザは、自分が移動させたいボール36の表示位置を基準にして指示位置Qを指示すればよいので、ボール36を移動させるときの移動方向が予想しやすくなり、その予想通りの方向にボール36を移動させやすくなる。例えば、実施形態のように、ユーザの操作対象がボール36を移動させるゲームの場合には、ボール36を基準位置Rにすることで、ボール36を移動させるときの移動方向の指示をしやすくなるので、ドリブル操作がやりやすくなる。
[5.変形例]
なお、本発明は、以上に説明した実施の形態に限定されるものではない。本発明の趣旨を逸脱しない範囲で、適宜変更可能である。
図11は、変形例の機能ブロック図である。図11に示すように、変形例では、実施形態の機能に加えて、頻度情報取得部60、速度決定部62、及び基準位置設定部64が実現される。これらの各機能は、制御部11を主として実現される。なお、携帯端末10では、変形例で説明する機能は省略するようにしてもよい。
(1)例えば、実施形態では、移動方向V1がずれ量Lに基づいて決定される場合を説明したが、移動方向V1の決定方法は、これに限られない。移動方向V1は、指示位置と基準位置とに基づいて決定されるようにすればよい。実施形態で説明した方法以外にも、方向決定部56は、指示位置取得部54により取得された指示位置と、基準位置と、を結ぶゲーム画面40上の方向に基づいて、ユーザの操作対象の移動方向V1を決定するようにしてもよい。
図12は、指示位置と基準位置を結ぶ方向V2と、移動方向V1と、の関係を示す図である。図12に示すように、方向決定部56は、指示位置と基準位置を結ぶゲーム画面40上の方向V2(スクリーン座標系のベクトル)に座標変換処理を行ってゲーム空間20内のベクトル(ワールド座標系のベクトル)に変換し、当該変換したベクトルを、移動方向V1とする。
なお、ベクトルの変換処理は、予め定められた方法に基づいて実行されるようにすればよく、ゲーム画面40上の方向V2からユーザの操作対象の移動方向V2を決定する方法は、上記の例に限られない。例えば、ゲーム画面40上の方向V2と、ユーザの操作対象が移動すべき方向と、を関連付けたデータがゲームデータ記憶部50に記憶されているようにしてもよい。この関連付けたデータは、数式形式であってもよいし、テーブル形式であってもよい。方向決定部56は、ゲーム画面40上の方向V2に関連付けられた方向を、ユーザの操作対象の移動方向V2として決定する。他にも例えば、指示位置Qが基準位置Rよりもユーザから見て上側(Ys軸負方向側)にある場合には、方向決定部56は、方向V2の向きを逆転させたうえで、移動方向V1を計算するようにしてもよい。
変形例(1)によれば、指示位置Qと基準位置Rとを結ぶ方向V2に基づいてユーザの操作対象の移動方向V1を決定することで、指示位置Qを指示したときの移動方向V1を、その指示位置Qと基準位置Rと結んだ方向V2から予想させてその方向に移動させることができるので、直感的な方向指示が可能になる。即ち、指示位置Qと基準位置Rと結んだ方向V2と、実際の移動方向V1と、に関連性を持たせることができるので、指示位置Qと基準位置Rとを結ぶ方向V2によって移動方向V1を予想しやすくなる。
(2)また例えば、ユーザがタッチパネル15に繰り返し触れると、指示位置取得部54は、指示位置を繰り返し取得することになる。この場合に、ユーザがタッチパネル15をタップした頻度に応じて、ユーザの操作対象の移動速度が変化するようにしてもよい。
本変形例の携帯端末10は、頻度情報取得部60及び速度決定部62を含む。頻度情報取得部60は、指示位置を指示するための操作が行われたタイミングに基づいて、当該操作が行われた頻度に関する頻度情報を取得する。指示位置を指示するための操作は、所定の操作であればよく、ここでは、タッチパネル15に触れる行為である。操作が行われたタイミングは、位置検出部52がユーザの操作を検知したタイミングであり、ここでは、座標データの取得タイミングである。頻度情報は、操作の頻度に関する情報であればよく、例えば、一定期間内における操作回数、又は、ある操作と次の操作の時間的な間隔である。
速度決定部62は、頻度情報取得部60により取得された頻度情報に基づいて、ユーザの操作対象の移動速度を決定する。図13は、頻度情報が示す頻度と速度との関連付けを示す図である。図13に示す関連付けは、ゲームデータ記憶部50に記憶されており、数式形式であってもよいし、テーブル形式であってもよい。速度決定部62は、頻度情報が示す頻度に関連付けられた速度を、ユーザの操作対象の移動速度として決定する。例えば、速度決定部62は、頻度情報が示す頻度が多いほど、ユーザの操作対象の移動速度を速くする。即ち、ユーザがタッチパネル15を素早く何度もタップして頻度情報が示す頻度を高くすることで、移動対象であるユーザの操作対象の移動速度が速くなる。別の言い方をすれば、速度決定部62は、頻度情報が示す頻度が少ないほど、ユーザの操作対象の移動速度を遅くする。即ち、ユーザがタッチパネル15を比較的ゆっくりとタップして頻度情報が示す頻度を低くすることで、移動対象であるユーザの操作対象の移動速度が遅くなる。
移動制御部58は、方向決定部56により決定された移動方向と、速度決定部62により決定された移動速度と、に基づいて、ユーザの操作対象を移動させる。移動制御部58は、方向決定部56が決定した移動方向V1に向けて、速度決定部62が決定した移動速度で、ユーザの操作対象を移動させる。例えば、移動制御部58は、方向決定部56が決定した移動方向V1に向けて、速度決定部62が決定した移動速度で、ユーザの操作対象を所定距離又は所定時間だけ移動させる。
変形例(2)によれば、ユーザがタッチパネル15に触れた頻度に基づいてユーザの操作対象の移動速度V1を決定することで、ある頻度でタッチパネル15に触れたときの移動速度を、その頻度から予想させてその速度で移動させることができるので、直感的な移動速度の指示が可能になる。即ち、操作の頻度が多くなるほど速度を上げるように設定することができ、ユーザがタッチパネル15に触れた頻度と、ユーザの操作対象野移動速度と、に関連性を持たせることができるので、移動速度を予想しやすくなる。
(3)また例えば、ずれ量Lが小さければ、ずれ量Lを無視して、ユーザの操作対象を所定方向V0に移動させるようにしてもよい。
図14は、ゲーム画面40の一例を示す図である。図14に示すように、指示位置が、基準位置付近の領域48内であれば、ずれ量Lが0でなくても、ユーザの操作対象が対戦相手チームのゴール24に向けて移動する。図14に示す例では、領域48は、基準位置RとのXs軸方向のずれ量Lが基準量L0未満となる領域である。
方向決定部56は、指示位置取得部54により取得された指示位置と、基準位置と、のゲーム画面40上における基準方向(Xs軸方向)のずれ量Lが基準量L0未満である場合、基準方向(Xs軸方向)に関連付けられた所定方向V0を、ユーザの操作対象の移動方向V1として決定する。所定方向V0は、基準方向と所定の関係を有する方向であり、ここでは、対戦相手チームのゴール24に対する所定方向V0である。
方向決定部56は、ずれ量Lが基準量L0以上である場合、指示位置取得部54により取得された指示位置Qと基準位置Rとに基づいて定まる方向を、ユーザの操作対象の移動方向V1として決定する。移動方向V1の決定方法自体は、実施形態で説明した方法と同様である。
変形例(3)によれば、指示位置Qと基準位置RとのXs軸方向のずれ量Lが基準量L0未満である場合には、ユーザの操作対象を所定方向V0に移動させることができるので、ユーザの操作対象を所定方向V0に移動させるための指示をしやすくなる。
(4)また例えば、上記においては、ユーザの操作対象がボール36を保持している場合の移動制御を説明したが、ユーザの操作対象がボール36を保持していない場合に、ユーザが同様の操作をすることで移動方向V1が決定されるようにしてもよい。この場合は、基準位置Rは、予め定められた位置となるようにしてもよい。例えば、ユーザの操作対象の正面方向に一定距離だけ離れた位置を、基準位置Rとして設定すると、ユーザの正面方向に少し離れた位置が操作対象の移動方向を指示するときの基準になるので、操作がしやすくなる。この場合、上記一定距離は、ドリブル時のボール36とユーザの操作対象との距離よりも大きく設定する方が、操作がしやすくなる。即ち、ドリブル時には、一般的に足元にあるボール36を意識して移動するため、比較的小さい距離に基づいて基準位置Rを設定し(通常、サッカー選手が意識するような手元の位置を基準位置Rとして設定し)、ドリブル時以外は、足元に意識せずに移動することができるので、ドリブル時よりも上記一定距離を大きく設定する(通常の場合にサッカー選手が意識するような正面方向に少し離れた位置を基準位置Rとして設定する)ことで、意識している位置を基準にして移動方向を決めることができるので操作がしやすくなる。なお、本変形例では、ユーザの操作対象がボール36を保持しているか否かに応じて、基準位置Rの設定方法を決めている。
本変形例の携帯端末10は、基準位置設定部64を含む。基準位置設定部64は、ユーザの操作対象とボール36との位置関係に基づいて、ボール36の表示位置を基準位置Rとするか、ゲーム画面40上の所定位置を基準位置Rとするか、を決定する。この所定位置は、予め定められた位置であればよく、例えば、ゲーム画面40の中心点である。
基準位置設定部64は、ユーザの操作対象とボール36との距離が閾値以内であれば、ユーザの操作対象がボール36を保持しているものと判断してボール36の表示位置を基準位置Rとし、ユーザの操作対象とボール36との距離が閾値以上であれば、ユーザの操作対象がボール36を保持していないものと判断してゲーム画面40上の所定位置を基準位置Rとする。別の言い方をすれば、基準位置設定部64は、ユーザの操作対象がボール36を保持していれば、ボール36の表示位置を基準位置Rとし、ユーザの操作対象がボール36を保持していなければ、ゲーム画面40上の所定位置を基準位置Rとする。
変形例(4)によれば、ユーザの操作対象とボール36の位置関係に応じて基準位置Rを変えるので、そのときの位置関係に応じた方向指示が可能になる。例えば、ユーザの操作対象がボール36を保持しているか否かに応じて、基準位置Rを使い分けることができる。
(5)また例えば、上記においては、ユーザがゲーム画面40上の位置を指示する場合を説明したが、ユーザは、ゲーム空間20内の位置を指示できるようにしてもよい。即ち、ゲーム空間20内又はゲーム画面40上の位置が用いられるようにすればよい。指示位置や基準位置もゲーム空間20内の位置となるが、この場合も、上記実施形態や各変形例と同様の処理が実行されるようにしてもよい。
例えば、位置検出部52は、ゲーム空間20内の第1の位置及び第2の位置を取得するようにしてもよい。そして、指示位置取得部54は、ゲーム空間20内の第1の位置及び第2の位置に基づいて定まる、ゲーム空間20内の位置を指示位置として取得するようにしてもよい。この場合も、実施形態と同様、指示位置取得部54は、ゲーム空間20内の第1の位置及び第2の位置を所与の数式に代入することで、ゲーム空間20内の指示位置を定めるようにしてもよい。更に、ゲーム空間20におけるボール36の位置が、基準位置として用いられるようにしてもよい。
本変形例では、方向決定部56は、ゲーム空間20内の基準方向のずれ量Lに基づいて、ユーザの操作対象の移動方向V1を決定することになる。ゲーム空間20内の基準方向は、予め定められたゲーム空間20内の方向であり、ユーザの操作対象又は仮想カメラ38から見て水平方向又は垂直方向である。ずれ量Lの取得方法は、実施形態と同様であり、基準方向の座標値の差により算出される。また、図12で説明した方向V2は、ゲーム空間20における指示位置と基準位置を結ぶゲーム空間20内の方向であってもよい。
(6)また例えば、ゲーム空間20におけるボール36の位置やゲーム画面40におけるボール36の表示位置が基準位置に相当する場合を説明したが、基準位置は、予め定められた方法で定まればよく、これに限られない。他にも例えば、基準位置は、ゲーム空間20又はゲーム画面40内の所定の位置であってもよいし、ゲーム空間20に配置された所定のオブジェクトの位置又はそのオブジェクトの表示位置であってもよい。
また例えば、上記においては、ユーザの操作対象が、原則として対戦相手チームのゴール24に向かって進む場合を説明したが、ユーザの操作対象が原則として進むべき方向は、対戦相手チームのゴール24に限られない。ゲーム空間20内の所定位置又は所定オブジェクトの位置に向けた方向が、ユーザの操作対象が原則として進むべき方向であってもよい。更に、ユーザの操作対象が原則として進むべき方向が定められておらず、ゲーム空間20内を自由に移動できるようにしてもよい。
また例えば、上記においては、ユーザの操作対象のキャラクタ32が移動対象に相当する場合を説明したが、移動対象は、これに限られない。仮想空間において移動するオブジェクトが、移動対象であればよい。また例えば、ゲーム空間20を、図2に示すような3次元空間として説明したが、本発明に係るゲーム空間は、キャラクタ32(34)やボール36の位置等が、2つの座標要素で管理されるような2次元ゲーム空間であってもよい。
また例えば、本発明は、サッカーゲーム以外のゲームを実行する携帯端末にも適用することができる。仮想空間において操作対象を移動させるゲームであればよく、例えば、サッカーゲーム以外のスポーツゲームを実行する携帯端末にも、本発明を適用することができる。他にも例えば、アクションゲーム、ロールプレイングゲーム等を実行する携帯端末にも適用することができる。また、ゲームに限られず、現実世界での移動物体のシミュレーションにも、本発明に係る移動制御を適用することができる。
また例えば、本発明に係る移動制御装置は、携帯端末以外の種々のコンピュータにも適用することができる。例えば、ユーザが操作する端末にネットワーク接続されたサーバ装置が、移動制御装置に相当するようにしてもよい。この場合、ユーザが操作する端末では、主に、ユーザによる操作の検出及び画面の表示が行われ、サーバ装置において、各機能ブロックが実現される。
また例えば、上記では、ユーザが人差指と中指を交互にタップする場合を説明したが、同じ指(例えば、人差指)だけを使用して操作してもよい。更に、ユーザが指を使って操作を行う場合を説明したが、タッチパネル15に触れるのは、指に限られない。ユーザは、指以外の部位又はユーザが把持する物体を用いてタッチパネル15に触れるようにすればよい。他にも例えば、ユーザは、両手の指を使ってタッチパネル15に触れるようにしてもよい。更に、仮想空間内又は画面上の位置を指示するために、種々のポインティングデバイスを適用可能であり、タッチパネル15に限られない。他にも、マウスにより位置が指示されるようにしてもよい。
[6.発明のまとめ]
以上のような記載から、本発明は例えば以下のように把握される。
本発明に係る移動制御装置(10)は、仮想空間(例えば、ゲーム空間20)において移動対象(例えば、ユーザの操作対象のキャラクタ32)を移動させる移動制御装置(10)であって、位置検出手段(52)が検出した前記仮想空間(例えば、ゲーム空間20)内又は画面(例えば、ゲーム画面40)上の第1の位置及び第2の位置に基づいて定まる、前記仮想空間(例えば、ゲーム空間20)内又は前記画面(例えば、ゲーム画面40)上の位置を指示位置として取得する取得手段(54)と、前記取得手段(54)により取得された指示位置と、前記仮想空間(例えば、ゲーム空間20)内又は前記画面(例えば、ゲーム画面40)上の基準位置と、に基づいて、前記移動対象(例えば、ユーザの操作対象のキャラクタ32)の移動方向を決定する方向決定手段(56)と、前記方向決定手段(56)により決定された移動方向に基づいて、前記移動対象(例えば、ユーザの操作対象のキャラクタ32)を移動させる移動制御手段(58)と、を含むことを特徴とする。
また、本発明に係るプログラムは、仮想空間(例えば、ゲーム空間20)において移動対象(例えば、ユーザの操作対象のキャラクタ32)を移動させるコンピュータ(10)を、位置検出手段(52)が検出した前記仮想空間(例えば、ゲーム空間20)内又は画面(例えば、ゲーム画面40)上の第1の位置及び第2の位置に基づいて定まる、前記仮想空間(例えば、ゲーム空間20)内又は前記画面(例えば、ゲーム画面40)上の位置を指示位置として取得する取得手段(54)、前記取得手段(54)により取得された指示位置と、前記仮想空間(例えば、ゲーム空間20)内又は前記画面(例えば、ゲーム画面40)上の基準位置と、に基づいて、前記移動対象(例えば、ユーザの操作対象のキャラクタ32)の移動方向を決定する方向決定手段(56)、前記方向決定手段(56)により決定された移動方向に基づいて、前記移動対象(例えば、ユーザの操作対象のキャラクタ32)を移動させる移動制御手段(58)、として機能させる。
また、本発明に係る情報記憶媒体は、上記プログラムを記録したコンピュータ読み取り可能な情報記憶媒体である。
本発明によれば、仮想空間において移動対象を移動させるときに、ユーザの指示する位置がずれた場合の影響を軽減することができる。
また、本発明の一態様では、移動制御手段(58)は、前記方向決定手段(56)により決定された移動方向に前記移動対象を所定距離又は所定時間移動させる、ことを特徴とする。当該態様によれば、決定された移動方向に移動対象を所定距離又は所定時間移動させるときに、ユーザの指示する位置がずれた場合の影響を軽減することができる。
また、本発明の一態様では、前記取得手段(54)は、前記指示位置を繰り返し取得し、前記移動制御装置(10)は、前記指示位置を指示するための操作が行われたタイミングに基づいて、当該操作が行われた頻度に関する情報を取得する手段(60)と、当該取得された情報に基づいて、前記移動対象(例えば、ユーザの操作対象のキャラクタ32)の移動速度を決定する速度決定手段(62)と、を更に含み、前記移動制御手段(58)は、前記方向決定手段(56)により決定された移動方向と、前記速度決定手段(62)により決定された移動速度と、に基づいて、前記移動対象(例えば、ユーザの操作対象のキャラクタ32)を移動させる、ことを特徴とする。当該態様によれば、操作が行われた頻度に基づいて移動対象の移動速度が決定することで、ある頻度で操作をしたときの移動対象の移動速度を、その頻度から予想させてその速度で移動させることができるので、直感的な移動速度の指示が可能になる。
また、本発明の一態様では、前記方向決定手段(56)は、前記取得手段(54)により取得された指示位置と、前記基準位置と、の前記仮想空間(例えば、ゲーム空間20)内又は前記画面(例えば、ゲーム画面40)上における基準方向(例えば、Xs軸方向)のずれ量に基づいて、前記移動対象(例えば、ユーザの操作対象のキャラクタ32)の移動方向を決定する、ことを特徴とする。当該態様によれば、指示位置と基準位置との基準方向のずれ量に基づいて移動対象の移動方向を決定することで、指示位置を指示したときの移動方向を、その指示位置と基準位置との基準方向のずれ量から予想させてその方向に移動させることができるので、直感的な方向指示が可能になる。
また、本発明の一態様では、前記方向決定手段(56)は、前記取得手段(54)により取得された指示位置と、前記基準位置と、を結ぶ前記仮想空間(例えば、ゲーム空間20)内又は前記画面(例えば、ゲーム画面40)上の方向に基づいて、前記移動対象(例えば、ユーザの操作対象のキャラクタ32)の移動方向を決定する、ことを特徴とする。当該態様によれば、指示位置と基準位置とを結ぶ方向に基づいて移動対象の移動方向を決定することで、指示位置を指示したときの移動方向を、その指示位置と基準位置と結んだ方向から予想させてその方向に移動させることができるので、直感的な方向指示が可能になる。
また、本発明の一態様では、前記取得手段(54)は、前記第1の位置と、前記第1の位置が検出された後に検出される前記第2の位置と、に基づいて定まる前記仮想空間(例えば、ゲーム空間20)内又は前記画面(例えば、ゲーム画面40)上の位置を前記指示位置として取得する、ことを特徴とする。当該態様によれば、第2の位置が第1の位置が検出された後に検出される位置であるため、第1の位置と第2の位置を同時に指示する必要がないので、指示位置を指示しやすくなる。
また、本発明の一態様では、前記方向決定手段(56)は、前記取得手段(54)により取得された指示位置と、前記基準位置と、の前記仮想空間(例えば、ゲーム空間20)内又は前記画面(例えば、ゲーム画面40)上における基準方向(例えば、Xs軸方向)のずれ量が基準量未満である場合、前記基準方向(例えば、Xs軸方向)に関連付けられた所定方向を前記移動対象(例えば、ユーザの操作対象のキャラクタ32)の移動方向として決定し、当該ずれ量が前記基準量以上である場合、前記取得手段(54)により取得された指示位置と前記基準位置とに基づいて定まる方向を前記移動対象(例えば、ユーザの操作対象のキャラクタ32)の移動方向として決定する、ことを特徴とする。当該態様によれば、指示位置と基準位置との基準方向のずれ量が基準量未満である場合には、基準方向に基づいて定まる所定方向に移動対象を移動させることができるので、所定方向に移動対象を移動させるための指示をしやすくなる。
また、本発明の一態様では、前記方向決定手段(56)は、前記取得手段(54)により取得された指示位置と、前記基準位置と、に基づいて、所定方向と前記移動対象(例えば、ユーザの操作対象のキャラクタ32)の移動方向とのずれ量を決定することによって、前記移動対象(例えば、ユーザの操作対象のキャラクタ32)の移動方向を決定する、ことを特徴とする。当該態様によれば、指示位置と基準位置とに基づいて所定方向と移動方向とのずれ量を決定することで、指示位置を指示したときの移動方向を、その指示位置等によって定まるずれ量や所定方向から予想させてその方向に移動させることができるので、直感的な方向指示が可能になる。
また、本発明の一態様では、前記基準位置は、前記仮想空間(例えば、ゲーム空間20)内に配置された移動物体の位置又は前記画面(例えば、ゲーム画面40)における当該移動物体の表示位置であり、前記移動制御手段(58)は、前記移動対象(例えば、ユーザの操作対象のキャラクタ32)の移動に基づいて、前記移動物体を移動させる、ことを特徴とする。当該態様によれば、移動物体の仮想空間内での位置や画面における表示位置が、当該移動物体を移動させる移動対象の移動方向を決める基準位置となっているので、移動物体を移動させるときの方向指示がやりやすくなる。
また、本発明の一態様では、前記移動制御装置(10)は、前記移動対象(例えば、ユーザの操作対象のキャラクタ32)と前記移動物体との位置関係に基づいて、前記仮想空間(例えば、ゲーム空間20)内の前記移動物体の位置又は前記移動物体の表示位置を前記基準位置とするか、前記仮想空間(例えば、ゲーム空間20)内又は前記画面(例えば、ゲーム画面40)上の所定位置を前記基準位置とするか、を決定する手段(64)、を更に含むことを特徴とする。当該態様によれば、移動対象と移動物体の位置関係に応じて基準位置を変えるので、そのときの位置関係に応じた方向指示が可能になる。
10 携帯端末、11 制御部、12 記憶部、13 通信部、14 操作部、15 タッチパネル、16 表示部、20 ゲーム空間、22 フィールド、24 ゴール、26 ゴールライン、28 タッチライン、30 ピッチ、32,34 キャラクタ、36 ボール、38 仮想カメラ、40 ゲーム画面、42 ライン、44 立ち位置画像、46 方向画像、48 領域、50 ゲームデータ記憶部、52 位置検出部、54 指示位置取得部、56 方向決定部、58 移動制御部、60 頻度情報取得部、62 速度決定部、64 基準位置設定部、F1 人差指、F2 中指、Q 指示位置、R 基準位置、L,θ ずれ量、V0 所定方向、V1 移動方向。

Claims (11)

  1. 仮想空間において移動対象を移動させる移動制御装置であって、
    位置検出手段が検出した前記仮想空間内又は画面上の第1の位置及び第2の位置に基づいて定まる、前記仮想空間内又は前記画面上の位置を指示位置として取得する取得手段と、
    前記取得手段により取得された指示位置と、前記仮想空間内又は前記画面上の基準位置と、に基づいて、前記移動対象の移動方向を決定する方向決定手段と、
    前記方向決定手段により決定された移動方向に基づいて、前記移動対象を移動させる移動制御手段と、
    を含むことを特徴とする移動制御装置。
  2. 前記移動制御手段は、前記方向決定手段により決定された移動方向に前記移動対象を所定距離又は所定時間移動させる、
    ことを特徴とする請求項1に記載の移動制御装置。
  3. 前記取得手段は、前記指示位置を繰り返し取得し、
    前記移動制御装置は、
    前記指示位置を指示するための操作が行われたタイミングに基づいて、当該操作が行われた頻度に関する情報を取得する手段と、
    当該取得された情報に基づいて、前記移動対象の移動速度を決定する速度決定手段と、
    を更に含み、
    前記移動制御手段は、前記方向決定手段により決定された移動方向と、前記速度決定手段により決定された移動速度と、に基づいて、前記移動対象を移動させる、
    ことを特徴とする請求項1又は2に記載の移動制御装置。
  4. 前記方向決定手段は、前記取得手段により取得された指示位置と、前記基準位置と、の前記仮想空間内又は前記画面上における基準方向のずれ量に基づいて、前記移動対象の移動方向を決定する、
    ことを特徴とする請求項1〜3の何れかに記載の移動制御装置。
  5. 前記方向決定手段は、前記取得手段により取得された指示位置と、前記基準位置と、を結ぶ前記仮想空間内又は前記画面上の方向に基づいて、前記移動対象の移動方向を決定する、
    ことを特徴とする請求項1〜3の何れかに記載の移動制御装置。
  6. 前記取得手段は、前記第1の位置と、前記第1の位置が検出された後に検出される前記第2の位置と、に基づいて定まる前記仮想空間内又は前記画面上の位置を前記指示位置として取得する、
    ことを特徴とする請求項1〜5の何れかに記載の移動制御装置。
  7. 前記方向決定手段は、前記取得手段により取得された指示位置と、前記基準位置と、の前記仮想空間内又は前記画面上における基準方向のずれ量が基準量未満である場合、前記基準方向に関連付けられた所定方向を前記移動対象の移動方向として決定し、当該ずれ量が前記基準量以上である場合、前記取得手段により取得された指示位置と前記基準位置とに基づいて定まる方向を前記移動対象の移動方向として決定する、
    ことを特徴とする請求項1〜6の何れかに記載の移動制御装置。
  8. 前記方向決定手段は、前記取得手段により取得された指示位置と、前記基準位置と、に基づいて、所定方向と前記移動対象の移動方向とのずれ量を決定することによって、前記移動対象の移動方向を決定する、
    ことを特徴とする請求項1〜7の何れかに記載の移動制御装置。
  9. 前記基準位置は、前記仮想空間内に配置された移動物体の位置又は前記画面における当該移動物体の表示位置であり、
    前記移動制御手段は、前記移動対象の移動に基づいて、前記移動物体を移動させる、
    ことを特徴とする請求項1〜8の何れかに記載の移動制御装置。
  10. 前記移動制御装置は、
    前記移動対象と前記移動物体との位置関係に基づいて、前記仮想空間内の前記移動物体の位置又は前記移動物体の表示位置を前記基準位置とするか、前記仮想空間内又は前記画面上の所定位置を前記基準位置とするか、を決定する手段、
    を更に含むことを特徴とする請求項9に記載の移動制御装置。
  11. 仮想空間において移動対象を移動させるコンピュータを、
    位置検出手段が検出した前記仮想空間内又は画面上の第1の位置及び第2の位置に基づいて定まる、前記仮想空間内又は前記画面上の位置を指示位置として取得する取得手段、
    前記取得手段により取得された指示位置と、前記仮想空間内又は前記画面上の基準位置と、に基づいて、前記移動対象の移動方向を決定する方向決定手段、
    前記方向決定手段により決定された移動方向に基づいて、前記移動対象を移動させる移動制御手段、
    として機能させるためのプログラム。
JP2014026547A 2014-02-14 2014-02-14 移動制御装置及びプログラム Active JP6078719B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014026547A JP6078719B2 (ja) 2014-02-14 2014-02-14 移動制御装置及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014026547A JP6078719B2 (ja) 2014-02-14 2014-02-14 移動制御装置及びプログラム

Publications (2)

Publication Number Publication Date
JP2015150215A true JP2015150215A (ja) 2015-08-24
JP6078719B2 JP6078719B2 (ja) 2017-02-15

Family

ID=53893103

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014026547A Active JP6078719B2 (ja) 2014-02-14 2014-02-14 移動制御装置及びプログラム

Country Status (1)

Country Link
JP (1) JP6078719B2 (ja)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5942031B1 (ja) * 2015-11-27 2016-06-29 グリー株式会社 プログラム、ゲームの制御方法、及び情報処理装置
JP6030258B1 (ja) * 2016-05-23 2016-11-24 グリー株式会社 プログラム、ゲームの制御方法、及び情報処理装置
JP6043448B1 (ja) * 2016-02-25 2016-12-14 株式会社コロプラ ゲームプログラム
JP6069571B1 (ja) * 2016-10-19 2017-02-01 グリー株式会社 プログラム、ゲームの制御方法、及び情報処理装置
JP2017144219A (ja) * 2016-02-19 2017-08-24 株式会社コーエーテクモゲームス ゲームシステム、ゲーム装置、情報処理装置および制御プログラム
JP2019003316A (ja) * 2017-06-13 2019-01-10 株式会社モバダイ ゲームの操作制御プログラム及び操作制御装置
KR20190057121A (ko) * 2016-11-21 2019-05-27 가부시키가이샤 코나미 데지타루 엔타테인멘토 게임 제어 장치, 게임 시스템 및 컴퓨터 판독가능 기록 매체
CN113721820A (zh) * 2021-09-02 2021-11-30 网易(杭州)网络有限公司 人机交互方法、装置和电子设备

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008079989A (ja) * 2006-09-28 2008-04-10 Nintendo Co Ltd ゲーム装置およびゲームプログラム
JP2008220671A (ja) * 2007-03-13 2008-09-25 Konami Digital Entertainment:Kk ゲーム装置、ゲーム装置の制御方法及びプログラム
JP2010029711A (ja) * 2009-11-10 2010-02-12 Nintendo Co Ltd タッチパネルを用いたゲーム装置およびゲームプログラム
JP2010253016A (ja) * 2009-04-24 2010-11-11 Konami Digital Entertainment Co Ltd ゲーム制御プログラム、ゲーム装置、及びゲーム制御方法
JP2014028059A (ja) * 2012-07-31 2014-02-13 Konami Digital Entertainment Co Ltd ゲーム装置、ゲーム装置の制御方法、ゲームシステム、ゲームシステムの制御方法、及びプログラム
JP2014102580A (ja) * 2012-11-16 2014-06-05 Fujitsu Ltd 情報処理装置及びプログラム

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008079989A (ja) * 2006-09-28 2008-04-10 Nintendo Co Ltd ゲーム装置およびゲームプログラム
JP2008220671A (ja) * 2007-03-13 2008-09-25 Konami Digital Entertainment:Kk ゲーム装置、ゲーム装置の制御方法及びプログラム
JP2010253016A (ja) * 2009-04-24 2010-11-11 Konami Digital Entertainment Co Ltd ゲーム制御プログラム、ゲーム装置、及びゲーム制御方法
JP2010029711A (ja) * 2009-11-10 2010-02-12 Nintendo Co Ltd タッチパネルを用いたゲーム装置およびゲームプログラム
JP2014028059A (ja) * 2012-07-31 2014-02-13 Konami Digital Entertainment Co Ltd ゲーム装置、ゲーム装置の制御方法、ゲームシステム、ゲームシステムの制御方法、及びプログラム
JP2014102580A (ja) * 2012-11-16 2014-06-05 Fujitsu Ltd 情報処理装置及びプログラム

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5942031B1 (ja) * 2015-11-27 2016-06-29 グリー株式会社 プログラム、ゲームの制御方法、及び情報処理装置
JP2017144219A (ja) * 2016-02-19 2017-08-24 株式会社コーエーテクモゲームス ゲームシステム、ゲーム装置、情報処理装置および制御プログラム
JP6043448B1 (ja) * 2016-02-25 2016-12-14 株式会社コロプラ ゲームプログラム
WO2017145570A1 (ja) * 2016-02-25 2017-08-31 株式会社コロプラ ゲームプログラム
JP6030258B1 (ja) * 2016-05-23 2016-11-24 グリー株式会社 プログラム、ゲームの制御方法、及び情報処理装置
JP6069571B1 (ja) * 2016-10-19 2017-02-01 グリー株式会社 プログラム、ゲームの制御方法、及び情報処理装置
KR102229285B1 (ko) * 2016-11-21 2021-03-19 가부시키가이샤 코나미 데지타루 엔타테인멘토 게임 제어 장치, 게임 시스템 및 컴퓨터 판독가능 기록 매체
KR20190057121A (ko) * 2016-11-21 2019-05-27 가부시키가이샤 코나미 데지타루 엔타테인멘토 게임 제어 장치, 게임 시스템 및 컴퓨터 판독가능 기록 매체
US10857461B2 (en) 2016-11-21 2020-12-08 Konami Digital Entertainment Co., Ltd. Game control device, game system, and information storage medium
JP2019003316A (ja) * 2017-06-13 2019-01-10 株式会社モバダイ ゲームの操作制御プログラム及び操作制御装置
JP7028428B2 (ja) 2017-06-13 2022-03-02 株式会社モバダイ ゲームの操作制御プログラム及び操作制御装置
CN113721820A (zh) * 2021-09-02 2021-11-30 网易(杭州)网络有限公司 人机交互方法、装置和电子设备
CN113721820B (zh) * 2021-09-02 2023-07-25 网易(杭州)网络有限公司 人机交互方法、装置和电子设备

Also Published As

Publication number Publication date
JP6078719B2 (ja) 2017-02-15

Similar Documents

Publication Publication Date Title
JP6078719B2 (ja) 移動制御装置及びプログラム
US10732742B2 (en) Information processing program and method for causing a computer to transform a displayed object based on input area and force of a touch input
KR101582296B1 (ko) 모바일 게임을 위한 자동 조준 시스템 및 방법
JP5738809B2 (ja) ゲーム装置、ゲーム装置の制御方法、ゲームシステム、ゲームシステムの制御方法、及びプログラム
Kim et al. Finger walking in place (FWIP): A traveling technique in virtual environments
JP5509227B2 (ja) 移動制御装置、移動制御装置の制御方法、及びプログラム
JP5832489B2 (ja) 移動制御装置及びプログラム
EP2558924B1 (en) Apparatus, method and computer program for user input using a camera
JP6534011B2 (ja) 情報処理装置、情報処理プログラム、情報処理システム、および、情報処理方法
JP6519075B2 (ja) 情報処理装置、情報処理プログラム、情報処理システム、および、情報処理方法
US11759702B2 (en) Game system, processing method, and information storage medium
JP5918285B2 (ja) 移動制御装置及びプログラム
JP5081399B2 (ja) ゲーム装置、プログラム及び情報記録媒体
JP6217004B2 (ja) 移動制御装置及びプログラム
Cheung et al. Tangible around-device interaction using rotatory gestures with a magnetic ring
Mohan et al. Head-fingers-arms: physically-coupled and decoupled multimodal interaction designs in mobile VR
Nguyen et al. Direct manipulation video navigation on touch screens
JP2016120039A (ja) ゲームプログラム
Arslan et al. E-Pad: Large display pointing in a continuous interaction space around a mobile device
KR20170001539A (ko) 모바일 게임을 위한 자동 조준 시스템 및 방법
Tsuchida et al. TetraForce: a magnetic-based interface enabling pressure force and shear force input applied to front and back of a smartphone
JP6206781B2 (ja) 移動制御装置及びプログラム
JP6466736B2 (ja) 情報処理装置、情報処理方法、ならびに、プログラム
WO2023002907A1 (ja) 情報処理システム、プログラム及び情報処理方法
Pallavi Multimodal user interaction methods for virtual reality headsets

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160112

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160113

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160308

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20160726

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20161017

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20161025

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20161115

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20161122

R150 Certificate of patent or registration of utility model

Ref document number: 6078719

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250