(57)【特許請求の範囲】
【請求項１】
所与の画面が表示されるタッチパネルへのタッチ操作入力を受け付けるためのプログラムであって、
前記タッチ操作入力された前記画面上の位置に関連付けられた所定位置を基準位置として検出する第１の検出処理を実行し、当該基準位置の検出後であって当該基準位置を検出した際のタッチ操作入力が継続されてスライド操作入力されている間における前記画面へのタッチ操作入力の位置を指示位置として検出する第２の検出処理を行うタッチ操作入力検出処理手段、及び、
（ａ）前記検出された基準位置から前記検出された指示位置までのスライド操作入力における操作量と、当該スライド操作入力における操作方向と、を検出し、（ｂ）少なくとも前記基準位置から当該スライド操作入力を行う領域の端部までの距離に基づいて、前記検出した操作量を補正する補正処理を実行し、（ｃ）当該補正した操作量及び前記検出した操作方向に基づいて前記画面に表示されるオブジェクトの移動制御を行う操作制御手段、
としてコンピュータを機能させることを特徴とするプログラム。
【請求項２】
所与の画面が表示されるタッチパネルへのタッチ操作入力を受け付けるためのプログラムであって、
前記タッチ操作入力された前記画面上の位置に関連付けられた所定位置を基準位置として検出する第１の検出処理を実行し、当該基準位置の検出後であって当該基準位置を検出した際のタッチ操作入力が継続されてスライド操作入力されている間における前記画面へのタッチ操作入力の位置を指示位置として検出する第２の検出処理を行うタッチ操作入力検出処理手段、及び、
（ａ）前記検出された基準位置から前記検出された指示位置までのスライド操作入力における操作量と、当該スライド操作入力における操作方向と、を検出し、（ｂ）少なくとも前記基準位置から所与の前記画面上の位置までの距離に基づいて、前記検出した操作量を補正する補正処理を実行し、（ｃ）当該補正した操作量及び前記検出した操作方向に基づいて前記画面に表示されるオブジェクトの移動制御を行う操作制御手段、
としてコンピュータを機能させ、
前記タッチ操作入力検出処理手段が、
前記スライド操作入力中の所与のタイミングに新たな基準位置を検出し、
前記操作制御手段が、
少なくとも、前記スライド操作入力中に新たに検出された基準位置に基づいて、前記補正処理を実行する、プログラム。
【請求項３】
所与の画面が表示されるタッチパネルへのタッチ操作入力を受け付けるためのプログラムであって、
前記タッチ操作入力された前記画面上の位置に関連付けられた所定位置を基準位置として検出する第１の検出処理を実行し、当該基準位置の検出後であって当該基準位置を検出した際のタッチ操作入力が継続されてスライド操作入力されている間における前記画面へのタッチ操作入力の位置を指示位置として検出する第２の検出処理を行うタッチ操作入力検出処理手段、及び、
（ａ）前記検出された基準位置から前記検出された指示位置までのスライド操作入力における操作量と、当該スライド操作入力における操作方向と、を検出し、（ｂ）少なくとも前記基準位置から所与の前記画面上の位置までの距離に基づいて、前記検出した操作量を補正する補正処理を実行し、（ｃ）当該補正した操作量及び前記検出した操作方向に基づいて前記画面に表示されるオブジェクトの移動制御を行う操作制御手段、
としてコンピュータを機能させ、
前記タッチ操作入力検出処理手段によって、同時に複数のスライド操作入力が検出されている場合には、
前記操作制御手段が、
一のスライド操作入力によって定まる補正量に従って各スライド操作入力に伴う操作量を補正する補正処理を実行することを特徴とするプログラム。
【請求項４】
請求項１〜３のいずれか１項に記載のプログラムにおいて、
所与の制御指示に基づいて、前記補正処理を実行するか否かを判定する判定手段として前記コンピュータを更に機能させ、
前記操作制御手段が、前記補正処理を実行すると判定された場合に当該補正処理を実行する、プログラム。
【請求項５】
請求項１〜４のいずれか１項に記載のプログラムにおいて、 
前記補正処理が実行中であることを示す表示を実行させる補正処理表示制御手段として前記コンピュータを更に機能させる、プログラム。
【請求項６】
請求項１〜５のいずれか１項に記載のプログラムおいて、
前記操作制御手段が、
所与の条件を具備した場合には、前記補正処理の実行を中止し、前記基準位置をクリアする、プログラム。
【請求項７】
請求項１〜６のいずれか１項に記載のプログラムおいて、
前記操作制御手段が、
前記スライド操作入力に従って前記所与の画面内に表示されている操作対象オブジェクトの操作制御を行う、プログラム。
【請求項８】
請求項１〜７のいずれか１項に記載のプログラムおいて、
オブジェクト空間に前記スライド操作入力によって操作対象となる操作対象オブジェクトを配置するオブジェクト制御手段として前記コンピュータを更に機能させ、
前記操作制御手段が、
前記基準位置に基づいて、前記オブジェクト空間内における操作対象オブジェクトの移動速度、当該操作対象オブジェクトの移動量、及び、当該操作対象オブジェクトが所与の処理を実行する実行回数の少なくともいずれか一方を補正する前記補正処理を実行する、プログラム。
【請求項９】
請求項１〜８のいずれか１項に記載のプログラムおいて、
オブジェクト空間内で実行される所与のゲームを制御するゲーム制御手段として前記コンピュータを更に機能させ、
前記操作制御手段が、
前記所与のゲームのゲーム状況の変化に応じて前記補正処理の内容を変化させ、又は、前記補正処理を実行する前記画面上の位置若しくは領域を変化させる、プログラム。
【請求項１０】
請求項１〜９のいずれか１項に記載のプログラムおいて、
前記補正処理が実行されたことを通知する通知手段として前記コンピュータを更に機能させる、プログラム。
【請求項１１】
所与の画面が表示されるタッチパネルへのタッチ操作入力を受け付ける入力処理装置であって、
前記タッチ操作入力された前記画面上の位置に関連付けられた所定位置を基準位置として検出する第１の検出処理を実行し、当該基準位置の検出後であって当該基準位置を検出した際のタッチ操作入力が継続されてスライド操作入力されている間における前記画面へのタッチ操作入力の位置を指示位置として検出する第２の検出処理を行うタッチ操作入力検出処理手段と、
（ａ）前記検出された基準位置から前記検出された指示位置までのスライド操作入力における操作量と、当該スライド操作入力における操作方向と、を検出し、（ｂ）少なくとも前記基準位置から当該スライド操作入力を行う領域の端部までの距離に基づいて、前記検出した操作量を補正する補正処理を実行し、（ｃ）当該補正した操作量及び前記検出した操作方向に基づいて前記画面に表示されるオブジェクトの移動制御を行う操作制御手段と、
を備えることを特徴とする入力処理装置。
【請求項１２】
所与の画面が表示されるタッチパネルへのタッチ操作入力を受け付ける入力処理装置であって、
前記タッチ操作入力された前記画面上の位置に関連付けられた所定位置を基準位置として検出する第１の検出処理を実行し、当該基準位置の検出後であって当該基準位置を検出した際のタッチ操作入力が継続されてスライド操作入力されている間における前記画面へのタッチ操作入力の位置を指示位置として検出する第２の検出処理を行うタッチ操作入力検出処理手段と、
（ａ）前記検出された基準位置から前記検出された指示位置までのスライド操作入力における操作量と、当該スライド操作入力における操作方向と、を検出し、（ｂ）少なくとも前記基準位置から所与の前記画面上の位置までの距離に基づいて、前記検出した操作量を補正する補正処理を実行し、（ｃ）当該補正した操作量及び前記検出した操作方向に基

づいて前記画面に表示されるオブジェクトの移動制御を行う操作制御手段と、
を備え、
前記タッチ操作入力検出処理手段が、
前記スライド操作入力中の所与のタイミングに新たな基準位置を検出し、
前記操作制御手段が、
少なくとも、前記スライド操作入力中に新たに検出された基準位置に基づいて、前記補正処理を実行することを特徴とする入力処理装置。
【請求項１３】
所与の画面が表示されるタッチパネルへのタッチ操作入力を受け付ける入力処理装置であって、
前記タッチ操作入力された前記画面上の位置に関連付けられた所定位置を基準位置として検出する第１の検出処理を実行し、当該基準位置の検出後であって当該基準位置を検出した際のタッチ操作入力が継続されてスライド操作入力されている間における前記画面へのタッチ操作入力の位置を指示位置として検出する第２の検出処理を行うタッチ操作入力検出処理手段と、
（ａ）前記検出された基準位置から前記検出された指示位置までのスライド操作入力における操作量と、当該スライド操作入力における操作方向と、を検出し、（ｂ）少なくとも前記基準位置から所与の前記画面上の位置までの距離に基づいて、前記検出した操作量を補正する補正処理を実行し、（ｃ）当該補正した操作量及び前記検出した操作方向に基づいて前記画面に表示されるオブジェクトの移動制御を行う操作制御手段と、
を備え、
前記タッチ操作入力検出処理手段によって、同時に複数のスライド操作入力が検出されている場合には、
前記操作制御手段が、
一のスライド操作入力によって定まる補正量に従って各スライド操作入力に伴う操作量を補正する補正処理を実行することを特徴とする入力処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、入力処理装置及びプログラムなどに関する。
【背景技術】
【０００２】
近年、タブレット型情報通信端末装置又はスマートフォンなどの情報通信端末装置（以下、「通信端末装置」という）の多機能化、機能向上及びその普及に伴い、これらの携帯端末装置においてもゲームを実行する機会が増えている。そして、これらの携帯端末装置の他にもゲームを実行する携帯用端末装置も種々提供されている。
【０００３】
このような端末装置においては、キーボードやテンキーなどによるコントローラを用いて操作するものの他に、表示画面にタッチパネルを備え、実行されたゲームを視認する画面にポインティングデバイスによって又は直接ユーザがタッチすることによって操作するものも登場してきている（以下、このような操作を「タッチ操作」という。）。
【０００４】
また、最近では、パーソナルコンピュータなどの端末装置だけでなく、種々のデバイスにおいても、表示画面へのタッチ操作を行うユーザインタフェースを有するものも多く登場してきており、ゲームを実行する装置においても、キーボードやテンキーなど従来のインターフェースを補完するだけでなく、それらに置き換わるインターフェースとして用いられるようになってきている。
【０００５】
一方、このようなタッチ操作によってゲームを実行するゲーム装置及びそのプログラムとしては、特許文献１に記載のものが知られている。
【０００６】
例えば、特許文献１に記載のゲーム装置又はそのプログラムは、表示画面にタッチを行うと当該タッチした点を基準座標として設定し、その後に当該タッチ操作をスライドすることによって当該タッチが継続する間に、基準座標から当該操作（以下、「スライド操作入力」ともいう。）が継続されている際に操作検出されている座標（すなわち、指示座標）への方向、又は、当該基準座標から指示座標の距離に応じてゲームを制御する構成を有している。そして、このゲーム装置又はそのプログラムは、ユーザに視認させて操作性を向上させるために、基準座標の位置を画像として表示させるようになっている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特許３７３４８２０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、上記特許文献１に記載のゲーム装置にあっては、タッチパネルのどの場所でタッチされたとしても同様なスライド操作入力で操作制御されることとなるので、例えば、基準位置（起点となるタッチ操作入力位置）がタッチパネルの少なくとも一方の画面端部に近くなった場合など、スライド可能領域が十分に確保できない場合に、適切な操作を行うことができない場合がある。
【０００９】
特に、スマートフォンなどの携帯型の端末装置においては、片手で当該端末装置を保持しつつ、保持した手の親指でタッチパネルを操作することも多く、この場合に、親指の操作範囲が当該親指の可動域の関係で画面の一方の端部に近くなる。例えば、右手で保持した場合には、画面に向かって右側への操作範囲が左側への操作範囲より狭くなり、左手で
保持した場合には、画面に向かって左側への操作範囲が右側への操作範囲より狭くなる。したがって、このような状況下においては、上記特許文献１に記載のゲーム装置にあっては、スライド操作入力を行うスライド可能領域を十分に確保できないことも多い。
【００１０】
本発明は、上記課題を解決するためになされたものであり、その目的は、画面上の基準位置に依存することなく、画面に表示されるオブジェクトを的確に表示することができるので、ユーザの操作性を向上することが可能なプログラム及び入力処理装置などを提供することにある。
【課題を解決するための手段】
【００１１】
（１）上記課題を解決するため、本発明のプログラムは、
所与の画面が表示されるタッチパネルへのスライド操作入力を受け付けるためのプログラムであって、
前記タッチ操作入力された画面上の位置に関連付けられた所定位置を基準位置として検出する第１の検出処理を実行し、当該基準位置の検出後であって当該基準位置を検出した際のタッチ操作入力が継続されてスライド操作入力されている場合に、当該スライド操作入力の位置を指示位置として検出する第２の検出処理を行うタッチ操作入力検出処理手段、及び、
前記検出された基準位置及び指示位置を含むスライド操作入力における操作量に従って前記画面に表示されるオブジェクトの制御を行う操作制御手段、
としてコンピュータを機能させ、
前記操作制御手段が、
前記第１の検出処理によって検出された基準位置又は指示位置の画面上の位置に基づいて、前記操作量を補正する補正処理を実行する、構成を有している。
【００１２】
また、本発明は、上記各手段を有する入力処理装置に関する。また、本発明は、コンピュータ読み取り可能な情報記憶媒体であって、上記各部としてコンピュータを機能させるためのプログラムを記憶した情報記憶媒体に関する。
【００１３】
この構成により、本発明のプログラムは、例えば画面の右隅や左隅など画面中心ではなく、少なくともいずれか一方の画面端部に近い位置が基準位置又は指示位置の画面上の位置として検出された場合であっても、画面に表示されるオブジェクトを的確に表示することができる。
【００１４】
すなわち、本発明のプログラムは、基準位置又は指示位置の画面上の位置が少なくとも一方の画面端部に近くなり、スライド可能な領域が狭くなっている方向にスライド操作入力を行う場合であっても、スライド可能な領域が広くなっている方向にスライド操作入力した場合と同様に、移動量又は移動速度などの操作量を制御することができる。
【００１５】
例えば、本発明のプログラムは、基準位置又は指示位置の画面上の位置が少なくとも一方の画面端部に近くなり、一方のスライド可能領域が他方のスライド可能領域の半分の場合には、一方のスライド領域の方向にスライド操作入力した際の操作量を他方のスライド可能領域の方向にスライド操作入力した際の操作量を２倍にすることによって、スライド可能領域の広狭に依存することなく、同一の操作量を確保することができる。
【００１６】
したがって、本発明のプログラムは、画面上の基準位置又は指示位置の画面上の位置に依存することなく、画面に表示されるオブジェクトを的確に表示することができるので、ユーザの操作性を向上することができる。
【００１７】
なお、「タッチ操作入力」及び「スライド操作入力」には、
（１）ユーザの指によるタッチパネル上への直接的なタッチ操作又はスライド操作入力、（２）ポインティングデバイスなどのデバイスを介して実行される間接的なタッチパネル上へのタッチ操作又はスライド操作入力、及び、
（３）タッチパネルに直接的及び間接的にタッチ操作又はスライド操作入力することによって操作入力を検出せずに、タッチパネル上への擬似的な操作（接触及び非接触を含む）を検出することによって認識するタッチ操作又はスライド操作入力、
も含まれる。
【００１８】
特に、擬似的なタッチ操作又はスライド操作入力とは、例えば、
（３Ａ）赤外線などの光ビームをタッチパネル面と平行に当該タッチパネル面に近接した位置で照射し、当該タッチパネルの一端部に縦横方向に一定間隔に形成される複数の照射部と、各照射部と対を構成し、当該各照射部に対向するタッチパネルの他端部に設けられ、各照射された光ビームをそれぞれ受信する複数のセンサとによって、タッチパネルに接触又は近接した際に光ビームが遮断された縦横の座標を検出し、当該検出した座標に基づいて認識するタッチ操作又はスライド操作入力、及び、
（３Ｂ）タッチパネルの表示面を撮像するカメラを設け、当該カメラによってユーザがタッチパネルに接触又は近接した位置座標を検出し、当該検出した位置座標に基づいて認識するタッチ操作又はスライド操作入力、
などタッチパネルとは別形状を有する検出手段を用いて実際にタッチパネルに接触することによって又は近接させることを検出することによって認識するタッチ操作又はスライド操作入力を含む。
【００１９】
また、「タッチ操作入力画面上の位置に関連付けられた所定位置」は、例えば、画面へのタッチ操作入力されていない状態からタッチ操作入力された状態への変化を検出した際の検出位置に関連付けた所定の位置、及び、予め定められたタイミングにおいて検出した際の検出位置に関連付けた所定の位置を示すとともに、当該検出位置そのものでもよいし、検出位置から所定の距離離れた位置、当該検出位置に基づいて画面に表示される仮想コントローラが表示される位置、又は、タッチパネルの隅に形成されたエリアなど特定の位置であってもよい。
【００２０】
さらに、「操作量」には、例えば、基準位置から第２の検出処理によって検出された位置までの距離を示す移動量と、基準位置から第２の検出処理によって検出された位置まで移動速度と、スライド操作入力の操作対象が実行する実行回数を含む。
【００２１】
（２）また、本発明のプログラムは、
前記タッチ操作入力検出処理手段が、
前記スライド操作入力中の所与のタイミングに新たな基準位置を検出し、
前記操作制御手段が、
前記スライド操作入力中に新たに検出された基準位置又は当該新たな基準位置による指示位置の画面上の位置に基づいて、前記操作量を補正する、構成を有している。
【００２２】
この構成により、本発明のプログラムは、スライド操作入力中に動的に操作量を補正することができるので、例えば、スライド操作入力中に操作方向を切り換えることによって、又は、長い時間継続してスライド操作入力を実行していることによって、さらにスライド操作入力を行う領域が狭くなっている場合であっても、画面に表示されるオブジェクトを的確に表示することができる。
【００２３】
なお、「所与のタイミング」には、スライド操作入力中に５ｍｓなど予め定められた期間毎に到来するタイミング、及び、スライド操作入力方向が１０度など予め定められた角度以上に変更したときのタイミングが含まれる。
【００２４】
（３）また、本発明のプログラムは、
前記所与の制御指示に基づいて、前記補正処理を実行するか否かを判定する判定手段として前記コンピュータを更に機能させ、
前記操作制御手段が、前記補正処理を実行すると判定された場合に当該補正処理を実行する、構成を有している。
【００２５】
この構成により、本発明のプログラムは、ユーザの指示によって補正処理が不要の場合やオブジェクトが存在するオブジェクト空間が表示画面内に収まる場合には、補正処理によって移動量や移動速度の操作量が補正されない場合の方が、当該補正処理によって操作量が補正された場合より容易にかつ的確に操作することができるので、補正処理の実行の可否を判断する処理を有することによって、オブジェクトの種々の操作に対応することができる。
【００２６】
（４）また、本発明のプログラムは、
前記補正処理が実行中であることを示す表示を実行させる補正処理表示制御手段として前記コンピュータを更に機能させる、構成を有している。
【００２７】
この構成により、本発明のプログラムは、補正処理が実行中の場合には操作者にそのことを容易に知らしめることができるので、補正処理が実行されている場合と当該補正処理が実行されていない場合とで操作が異なることによって被る不利益を防止することができる。
【００２８】
例えば、本発明のプログラムは、補正処理が実行中である旨を画面上に表示することによって、又は、十字コントローラや矢印など画面上に操作オブジェクトを表示している場合には、その形状、色若しくは大きさを変更させることによって補正処理が実行中であることを表示することができるようになっている。
【００２９】
（５）また、本発明のプログラムは、
前記タッチ操作入力検出処理手段によって、同時に複数のスライド操作入力が検出されている場合には、
前記操作制御手段が、一のスライド操作入力によって定まる補正量に従って各スライド操作入力に伴う操作量を補正する補正処理を実行する、構成を有している。
【００３０】
この構成により、本発明のプログラムは、複数のスライド操作入力を検出した場合であっても、同一の操作感覚によってスライド操作入力を行うことができるので、ユーザの操作性を向上させることができる。
【００３１】
（６）また、本発明のプログラムは、
前記操作制御手段が、
所与の条件を具備した場合には、前記補正処理の実行を中止し、前記基準位置をクリアする、構成を有している。
【００３２】
この構成により、本発明のプログラムは、スライド操作入力中に画面からタッチ操作が中止された場合には、基準位置をクリアすることができるので、スライド操作入力を繰り返しても、その都度、新しい基準位置をリセットして補正処理を実行することができる。
【００３３】
なお、「所与の条件」には、スライド操作入力中に、画面へのタッチ操作入力されていない状態を検出した場合、基準位置が検出されてから一定期間が経過した場合、又は、スライド操作入力におけるスライド操作入力量が一定以上になった場合が含まれる。
【００３４】
（７）また、本発明のプログラムは、
前記操作制御手段が、
前記スライド操作入力に従って前記所与の画面内に表示されている操作対象オブジェクトの操作制御を行う、構成を有している。
【００３５】
この構成により、本発明のプログラムは、スライド操作入力によって所与の画面内に表示されている操作対象オブジェクトを制御することができるので、例えば、戦闘ゲームやシューティングゲームなど、プレーヤキャラクタやその他のキャラクタを迅速にかつ的確に操作する必要があるゲームの操作手段として用いることができる。
【００３６】
（８）また、本発明のプログラムは、
オブジェクト空間に前記スライド操作入力によって操作対象となる操作対象オブジェクトを配置するオブジェクト制御手段として前記コンピュータを更に機能させ、
前記操作制御手段が、
前記第１の検出処理によって検出された基準位置又は指示位置の画面上の位置に基づいて、前記オブジェクト空間内における操作対象オブジェクトの移動速度、当該操作対象オブジェクトの移動量、及び、当該操作対象オブジェクトが所与の処理を実行する実行回数の少なくともいずれか一方を補正する前記補正処理を実行する、構成を有している。
【００３７】
この構成により、本発明のプログラムは、補正処理として、ゲームなどにおいてオブジェクト空間内における操作対象オブジェクトの移動速度、当該操作対象オブジェクトの移動量、及び、当該操作対象オブジェクトが所与の処理を実行する実行回数の少なくともいずれか一方を補正することができる。
【００３８】
なお、「操作対象オブジェクト」には、ゲームなどにおけるプレーヤキャラクタや敵キャラクタなどの重要なキャラクタやオブジェクト空間内でユーザ操作の対象となる各種のオブジェクトが含まれるとともに、所定の画像や動画における重要な表示又はキーワードなどの重要なコンテンツ及び画像を形成するための各種のオブジェクトが含まれる。
【００３９】
また、この「操作対象オブジェクト」には、直接的にユーザによって操作されるオブジェクトの他に、例えば、プレーヤキャラクタに装備されるアイテムなど、直接的に操作されるオブジェクトの動作に基づいて制御される間接的に操作されるオブジェクトも含まれる。
【００４０】
（９）また、本発明のプログラムは、
オブジェクト空間内で実行される所与のゲームを制御するゲーム制御手段として前記コンピュータを更に機能させ、
前記操作制御手段が、
前記所与のゲームのゲーム状況の変化に応じて前記補正処理の内容を変化させ、又は、前記補正処理を実行する基準となる前記画面上の位置を変化させる、構成を有している。
【００４１】
この構成により、本発明のプログラムは、ゲームが実行されているオブジェクト空間を形成するためのマップの形状の変化、ゲーム内のステージやレベルの変化、又は、ＲＰＧなどの操作対象となる操作対象オブジェクトのレベル変化に応じて、補正処理の内容を変化させ、又は、補正処理を実行する基準となる画面上の位置を変化させることができる。
【００４２】
なお、「補正処理の内容を変化させる」とは、例えば、オブジェクト空間内においてユーザ操作の対象となる操作対象オブジェクトの移動速度の補正処理を、当該操作対象オブジェクトの移動量、又は、当該操作対象オブジェクトが所与の処理を実行する実行回数な
どの補正処理に変更することをいい、当該補正内容に限られない。
【００４３】
また、「補正処理を実行する基準となる画面上の位置を変化させる」とは、所与のゲームのゲーム状況が変化した場合には、例えば、補正処理を実行するタッチパネル上の位置が当該タッチパネルの最外縁となる端部から所定の距離離れた位置までの有効領域（外縁に環状に形成される領域）が、当該タッチパネル左半分の領域のみ有効で右半分を無効に変更すること、又は、タッチパネルの四隅を含む予め定められた矩形領域（又は円形領域など）にのみ有効でその他は無効に変更することを示し、所与のゲームのゲーム状況の変化に応じて補正処理を実行すべきタッチパネル上の位置や領域が変化することを示す。
【００４４】
（１０）また、本発明のプログラムは、
前記補正処理が実行されたことを通知する通知手段として前記コンピュータを更に機能させる、構成を有している。
【００４５】
この構成により、本発明のプログラムは、補正処理が実行されたことを操作者に容易に知らしめることができる。
【００４６】
なお、「補正処理が実行されたことを通知する」とは、補正処理が実行されことを表示すること、又は、補正内容を表示することの他に、音や振動などによって補正処理が実行されたことを通知することも含まれる。
【００４７】
（１１）上記課題を解決するため、本発明の入力処理装置は、
所与の画面が表示されるタッチパネルへのスライド操作入力を受け付ける入力処理装置であって、
前記タッチ操作入力された画面上の位置に関連付けられた所定位置を基準位置として検出する第１の検出処理を実行し、当該基準位置の検出後であって当該基準位置を検出した際のタッチ操作入力が継続されてスライド操作入力されている場合に、当該スライド操作入力の位置を指示位置として検出する第２の検出処理を行うタッチ操作入力検出処理手段と、
前記検出された基準位置及び指示位置を含むスライド操作入力における操作量に従って前記画面に表示されるオブジェクトの制御を行う操作制御手段と、
を備え、
前記操作制御手段が、
前記第１の検出処理によって検出された基準位置又は指示位置の画面上の位置に基づいて、前記操作量を補正する補正処理を実行する構成を有している。
【００４８】
この構成により、本発明の入力処理装置は、例えば画面の右隅や左隅など画面中心ではなく、少なくともいずれか一方の画面端部に近い位置が基準位置又は指示位置の画面上の位置として検出された場合であっても、画面に表示されるオブジェクトを的確に表示することができる。
【００４９】
したがって、本発明の入力処理装置は、画面上の基準位置又は指示位置の画面上の位置に依存することなく、画面に表示されるオブジェクトを的確に表示することができるので、ユーザの操作性を向上することができる。
【図面の簡単な説明】
【００５０】
【図１】一実施形態のゲームシステムの構成を示すシステム構成の一例を示す図である。
【図２】一実施形態におけるサーバ装置の構成を示す機能ブロック図の一例である。
【図３】一実施形態における端末装置の構成を示す機能ブロック図の一例である。
【図４】一実施形態における端末装置の外観構成を示す図の一例である。
【図５】一実施形態の仮想コントローラの表示制御について説明するための図（その１）である。
【図６】一実施形態の仮想コントローラの表示制御について説明するための図（その２）である。
【図７】一実施形態の端末装置によって実行されるスライド操作入力量の補正処理の動作を示すフローチャートである。
【発明を実施するための形態】
【００５１】
以下、本実施形態について説明する。なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また本実施形態で説明される構成の全てが、本発明の必須構成要件であるとは限らない。
【００５２】
［１］ゲームシステム
まず、図１を用いて本実施形態のゲームシステム１の概要及び概要構成について説明する。なお、図１は、本実施形態のゲームシステム１の構成を示すシステム構成の一例を示す図である。
【００５３】
本実施形態のゲームシステム１は、図１に示すように、ゲームサービスを提供するサーバ装置１０と、端末装置２０（例えば、端末装置２０Ａ、２０Ｂ、２０Ｃ）とが、インターネット（ネットワークの一例）に接続可能に構成されている。
【００５４】
ユーザは、端末装置２０からサーバ装置１０にアクセスすることにより、インターネットを介してサーバ装置１０から送信されてくるゲームをプレーすることができる。さらに、ユーザは端末装置２０からサーバ装置１０にアクセスすることにより、他のユーザとの間でコミュニケーションを図ることができるようになっている。
【００５５】
サーバ装置１０は、インターネットを介して通信接続された端末装置２０を用いて、ユーザにゲームをプレーさせるサービスを提供することが可能な情報処理装置である。また、サーバ装置１０は、コミュニケーション型のサービスを提供するＳＮＳサーバとして機能してもよい。ここで、ＳＮＳサーバとは、複数のユーザ間でコミュニケーションを提供することが可能なサービスを提供する情報処理装置であってもよい。
【００５６】
また、サーバ装置１０は、例えば、ＳＮＳサーバとして機能する場合には、提供するＳＮＳの動作環境（ＡＰＩ（アプリケーションプログラミングインタフェース）、プラットフォーム等）を利用して実行されるソーシャルゲーム（Ｓｏｃｉａｌ  Ｇａｍｅ）をと呼ばれるゲームを提供することができるようになっている。
【００５７】
特に、サーバ装置１０は、端末装置２０のＷｅｂブラウザ上で提供されるゲーム、例えばＨＴＭＬ、ＦＬＡＳＨ、ＣＧＩ、ＰＨＰ、ｓｈｏｃｋｗａｖｅ、Ｊａｖａ（登録商標）アプレット、ＪａｖａＳｃｒｉｐｔ（登録商標）など様々な言語で作られたブラウザゲーム（Ｗｅｂブラウザで設置サイトを開くだけで起動するゲーム）を提供することができるようになっている。
【００５８】
なお、ソーシャルゲームとは、既存のオンラインゲームとは違い、専用のクライアントソフトウェアを必要とせず、ＷｅｂブラウザとＳＮＳのアカウントのみで利用可能なゲームが含まれる。また、サーバ装置１０は、ネットワークを介して他のユーザの端末（スマートフォン、パソコン、ゲーム機など）と接続し、オンラインで同時に同じゲーム進行を共有することができるオンラインゲームを提供することが可能な構成を有している。
【００５９】
一方、サーバ装置１０は、１つの（装置、プロセッサ）で構成されていてもよいし、複
数の（装置、プロセッサ）で構成されていてもよい。
【００６０】
そして、サーバ装置１０の記憶領域（後述する記憶部１４０）に記憶される課金情報、ゲーム情報等の情報を、ネットワーク（イントラネット又はインターネット）を介して接続されたデータベース（広義には記憶装置、メモリ）に記憶するようにしてもよいし、ＳＮＳサーバとして機能する場合には、記憶領域に記憶されるユーザ情報１４６等の情報を、ネットワーク（イントラネット又はインターネット）を介して接続されたデータベース（広義には記憶装置、メモリ）に記憶するようにしてもよい。
【００６１】
具体的には、本実施形態のサーバ装置１０は、端末装置２０のユーザ（すなわち、ゲームを実行するプレーヤ）の操作に基づく入力情報を受信し、受信した入力情報に基づいてゲーム処理を行うようになっている。そして、サーバ装置１０は、ゲーム処理結果を端末装置２０に送信し、端末装置２０は、サーバ装置１０から受信したゲーム処理結果を端末装置２０にユーザに閲覧可能に提供する各種の処理を行うようになっている。
【００６２】
端末装置２０は、スマートフォン、携帯電話、ＰＨＳ、コンピュータ、ゲーム装置、ＰＤＡ、携帯型ゲーム機等、画像生成装置などの情報処理装置であり、インターネット（ＷＡＮ）、ＬＡＮなどのネットワークを介してサーバ装置１０に接続可能な装置である。なお、端末装置２０とサーバ装置１０との通信回線は、有線でもよいし無線でもよい。
【００６３】
また、端末装置２０は、Ｗｅｂページ（ＨＴＭＬ形式のデータ）を閲覧可能なＷｅｂブラウザを備えている。すなわち、端末装置２０は、サーバ装置１０との通信を行うための通信制御機能、及びサーバ装置１０から受信したデータ（Ｗｅｂデータ、ＨＴＭＬ形式で作成されたデータなど）を用いて表示制御を行うとともに、ユーザ操作のデータをサーバ装置１０に送信するＷｅｂブラウザ機能などを備え、ゲーム画面をユーザに提供する各種の処理を実行し、ユーザによってゲームを実行させるようになっている。ただし、端末装置２０は、サーバ装置１０から提供されたゲーム制御情報を取得して所定のゲーム処理を実行し、ゲーム処理に基づくゲームを実行してもよい。
【００６４】
具体的には、端末装置２０は、所定ゲームを行う旨の要求をサーバ装置１０に対して行うと、サーバ装置１０のゲームサイトに接続され、ゲームが開始される。特に、端末装置２０は、必要に応じてＡＰＩを用いることにより、ＳＮＳサーバとして機能するサーバ装置１０に所定の処理を行わせ、又は、ＳＮＳサーバとして機能するサーバ装置１０が管理するＳＮＳユーザ情報１４６を取得させてゲームを実行する構成を有している。
【００６５】
［２］サーバ装置
次に、図２を用いて本実施形態のサーバ装置１０について説明する。なお、図２は、本実施形態のサーバ装置１０の機能ブロックを示す図である。また、本実施形態のサーバ装置１０は図２の構成要素（各部）の一部を省略した構成としてもよい。
【００６６】
サーバ装置１０は、管理者やその他の入力に用いるための入力部１２０、所定の表示を行う表示部１３０、所定の情報が記憶された情報記憶媒体１８０、端末装置２０その他と通信を行う通信部１９６、主に提供するゲームに関する処理を実行する処理部１００、及び、主にゲームに用いる各種のデータを記憶する記憶部１４０を含む。
【００６７】
入力部１２０は、システム管理者等がゲームに関する設定やその他必要な設定、データの入力に用いるものである。例えば、本実施形態の入力部１２０は、マウスやキーボード等によって構成される。
【００６８】
表示部１３０は、システム管理者用の操作画面を表示するものである。例えば、本実施
形態の表示部１３０は、液晶ディスプレイ等によって構成される。
【００６９】
情報記憶媒体１８０（コンピュータにより読み取り可能な媒体）は、プログラムやデータなどを格納するものであり、その機能は、光ディスク（ＣＤ、ＤＶＤ）、光磁気ディスク（ＭＯ）、磁気ディスク、ハードディスク、磁気テープ、或いはメモリ（ＲＯＭ）などによって構成される。
【００７０】
通信部１９６は外部（例えば、端末、他のサーバや他のネットワークシステム）との間で通信を行うための各種制御を行うものであり、その機能は、各種プロセッサ又は通信用ＡＳＩＣなどのハードウェアや、プログラムなどによって構成される。
【００７１】
記憶部１４０は、処理部１００や通信部１９６などのワーク領域となるもので、その機能は、ＲＡＭ（ＶＲＡＭ）などによって構成される。なお、記憶部１４０に記憶される情報は、データベースで管理してもよい。
【００７２】
また、本実施形態においては、記憶部１４０には、提供するゲームに関する情報を示すゲーム情報１４４、提供するゲームに関しプレーヤとしてのユーザに関する情報を示すユーザ情報１４６、及び、その他のゲーム演算に必要な各種の情報が記憶される。
【００７３】
処理部１００は、記憶部１４０内の主記憶部１４２をワーク領域として各種処理を行う。処理部１００の機能は各種プロセッサ（ＣＰＵ、ＤＳＰ等）、ＡＳＩＣ（ゲートアレイ等）などのハードウェアや、プログラムにより実現できる。
【００７４】
処理部１００は、情報記憶媒体１８０に格納されるプログラム（データ）に基づいて本実施形態の種々の処理を行う。即ち情報記憶媒体１８０には、本実施形態の各部としてコンピュータを機能させるためのプログラム（各部の処理をコンピュータに実行させるためのプログラム）が記憶される。
【００７５】
例えば、処理部１００（プロセッサ）は、情報記憶媒体に記憶されているプログラムに基づいて、サーバ装置１０全体の制御を行うとともに、各部間におけるデータ等の受け渡しの制御などの各種の処理を行う。さらに、端末装置２０からの要求に応じた各種サービスを提供する処理を行う。
【００７６】
具体的には、本実施形態の処理部１００は、通信制御部１０１、Ｗｅｂ処理部１０２及びゲーム管理部１０４を少なくとも有している。
【００７７】
通信制御部１０１は、端末装置２０とネットワークを介してデータを送受信する処理を行う。すなわち、サーバ装置１０は、通信制御部１０１によって端末装置２０等から受信した情報に基づいて各種処理を行う。
【００７８】
特に、本実施形態の通信制御部１０１は、ユーザの端末装置２０からの要求に基づいて、ゲーム画面を、当該ユーザの端末装置２０に送信する処理を行う。
【００７９】
Ｗｅｂ処理部１０２は、Ｗｅｂサーバとして機能する。例えば、Ｗｅｂ処理部１０２は、ＨＴＴＰ（Ｈｙｐｅｒｔｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）等の通信プロトコルを通じて、端末装置２０にインストールされているＷｅｂブラウザの要求に応じてデータを送信する処理、及び、端末装置２０のＷｅｂブラウザによって送信されるデータを受信する処理を行う。
【００８０】
なお、本実施形態では、サーバ装置１０がＳＮＳサーバとしての機能も備えていている
場合を例にとり説明するが、サーバ装置１０を、ゲーム用のサーバと、ＳＮＳ用のサーバと別々に形成してもよい。また、本実施形態のゲームの処理は、サーバ装置１０が一部又は全部を行ってもよいし、端末装置２０が一部を行ってもよい。
【００８１】
ゲーム管理部１０４は、端末装置２０と連動し、当該端末装置２０を介して入力されたプレーヤの操作に基づいて、各プレーヤにおいてロールプレーイングゲーム（ＲＰＧ）や対戦ゲームに関するゲーム処理を実行するとともに、各ユーザのゲームの進行状況やアイテム管理などの各ユーザにおいて使用するキャラクタ及び各種のアイテムを含むユーザ情報を管理する。
【００８２】
なお、ゲーム管理部１０４は、ユーザの操作に基づかず、ユーザが設定した各種のデータに基づいて自動的にゲームを実行するための自動演算処理を実行し、端末装置２０で再生するためのデータを生成し、生成したデータを端末装置２０に提供してもよい。
【００８３】
［３］端末装置
次に、図３及び図４を用いて本実施形態の端末装置２０について説明する。なお、図３は、本実施形態における端末装置の構成を示す機能ブロック図の一例であり、図４は、本実施形態における端末装置の外観構成を示す図の一例である。また、本実施形態の端末装置２０は図３の構成要素（各部）の一部を省略した構成としてもよい。
【００８４】
入力部２６０は、プレーヤが操作データを入力するためのものであり、その機能は、タッチパネル又はタッチパネルディスプレイなどにより実現できる。すなわち、入力部２６０は、画像が表示される画面上における２次元の指示位置座標（ｘ，ｙ）を検出可能な検出部２６２を備えている。例えば、入力部２６０は、接触検出領域（タッチパネル）における、２次元の接触位置座標（ｘ，ｙ）を検出可能な検出部２６２を備えている。
【００８５】
本実施形態において、接触位置（基準位置及び指示位置の一例）は、プレーヤの接触操作（直接的な接触及びポインティングデバイスによる間接的な接触も含む）により、接触検出領域から得られる位置情報である。
【００８６】
なお、本実施形態のプレーヤの接触操作には、ユーザの指によるタッチパネル１２上への直接的なタッチ操作又はスライド操作入力、及び、ポインティングデバイスなどのデバイスを介して実行される間接的なタッチパネル１２上へのタッチ操作又はスライド操作入力の他に、タッチパネル１２に直接的及び間接的にタッチ操作又はスライド操作入力をせずに、タッチパネル１２上への擬似的なタッチ操作又はスライド操作入力も含まれる。
【００８７】
例えば、擬似的なタッチ操作又はスライド操作入力とは、
（１）赤外線などの光ビームをタッチパネル面と平行に当該タッチパネル面に近接した位置で照射し、当該タッチパネル１２の一端部に縦横方向に一定間隔に形成される複数の照射部と、各照射部と対を構成し、当該各照射部に対向するタッチパネルの他端部に設けられ、各照射された光ビームをそれぞれ受信する複数のセンサとによって、タッチパネル１２に接触又は近接した際に光ビームが遮断された縦横の座標を検出し、当該検出した座標に基づいて認識するタッチ操作又はスライド操作入力、及び、
（２）タッチパネル１２の表示面を撮像するカメラを設け、当該カメラによってユーザがタッチパネル１２に接触又は近接した位置座標を検出し、当該検出した位置座標に基づいて認識するタッチ操作又はスライド操作入力、
などタッチパネル１２に実際に接触することによって又は近接させて検出することによって認識するタッチ操作又はスライド操作入力を含む。
【００８８】
また、接触検出領域に同時に複数の接触位置が検出される場合には、いずれか１つの接
触位置（先に検出された接触位置）を用いるようにしてもよいし、複数の接触位置を同時に処理してもよい。
【００８９】
なお、接触検出領域に複数の判定領域が存在する場合には、各判定領域において、１つの接触位置（先に検出された接触位置）を用いるようにしてもよい。また、判定領域とは、取得した接触位置のうち、移動制御など処理部２００で処理するための接触位置を予め特定する接触検出領域上の範囲である。
【００９０】
特に、本実施形態では、図４（Ａ）及び（Ｂ）に示す表示画面（ディスプレイ）１２が、液晶ディスプレイと、プレーヤ（操作者、ユーザ）の接触位置を検出するためのタッチパネルとが積層されたタッチパネルディスプレイとなっている。すなわち、本実施形態では、表示画面１２が入力部２６０として機能するとともに表示部２９０としても機能する（以下、「タッチパネル」ともいう。）。
【００９１】
なお、表示画面１２への接触操作は、指先を用いて行うようにしてもよいし、タッチペンなどの入力機器を用いて行うようにしてもよい。
【００９２】
また、入力部２６０は、指示位置以外の操作情報（操作信号）を入力可能なボタンやレバー、キーボード、ステアリング、マイク、加速度センサなどを備えていてもよい。
【００９３】
記憶部２７０は、処理部２００や通信部２９６などのワーク領域となるもので、その機能はＲＡＭ（ＶＲＡＭ）などにより実現できる。そして、本実施形態の記憶部２７０は、ワーク領域として使用される主記憶部２７１と、最終的な表示画像等が記憶される画像バッファ２７２とを含む。なお、これらの一部を省略する構成としてもよい。
【００９４】
特に、本実施形態の記憶部２７０には、タッチ検出処理部２１１において取得された基準位置及び指示位置、及び、各種のマーカの画像及び各種の判定処理において用いる条件を示す条件情報などを主記憶部２７１に記憶することができる。
【００９５】
情報記憶媒体２８０（コンピュータにより読み取り可能な媒体）は、プログラムやデータなどを格納するものであり、その機能は、光ディスク（ＣＤ、ＤＶＤ）、光磁気ディスク（ＭＯ）、磁気ディスク、ハードディスク、磁気テープ、或いはメモリ（ＲＯＭ）などにより実現できる。
【００９６】
また、情報記憶媒体２８０には、本実施形態の各部としてコンピュータを機能させるためのプログラム（各部の処理をコンピュータに実行させるためのプログラム）を記憶することができる。なお、処理部２００は、後述するように、情報記憶媒体２８０に格納されるプログラム（データ）に基づいて本実施形態の種々の処理を行う。
【００９７】
表示部２９０は、本実施形態により生成された画像を出力するものであり、その機能は、ＣＲＴ、ＬＣＤ、タッチパネルディスプレイ、或いはＨＭＤ（ヘッドマウントディスプレイ）などにより実現できる。
【００９８】
特に、本実施形態では表示部２９０は、タッチパネルディスプレイを用いることによりプレーヤがゲーム操作を行う入力部２６０としても機能する。ここでタッチパネルとして、例えば抵抗膜方式（４線式、５線式）、静電容量方式、電磁誘導方式、超音波表面弾性波方式、赤外線走査方式などのタッチパネルを用いることができる。
【００９９】
音出力部２９２は、本実施形態により生成された音を出力するものであり、その機能は、スピーカ、或いはヘッドフォンなどにより実現できる。
【０１００】
通信部２９６は、外部（例えばホスト装置や他の端末装置）との間で通信を行うための各種制御を行うものであり、その機能は、各種プロセッサ又は通信用ＡＳＩＣなどのハードウェアや、プログラムなどにより実現できる。
【０１０１】
なお、端末装置２０は、サーバ装置１０が有する情報記憶媒体や記憶部に記憶されている本実施形態の各部としてコンピュータを機能させるためのプログラムやデータを、ネットワークを介して受信し、受信したプログラムやデータを情報記憶媒体２８０や記憶部２７０に記憶してもよい。このようにプログラムやデータを受信して端末装置２０を機能させる場合も本発明の範囲内に含めることができる。
【０１０２】
処理部２００（プロセッサ）は、入力部２６０からの入力データやプログラムなどに基づいて、サーバ装置１０と連動して、ゲーム処理、画像生成処理、或いは音生成処理などの処理を行う。
【０１０３】
特に、本実施形態においては、ゲーム処理としては、ゲーム開始条件が満たされた場合にゲームを開始する処理、ゲームを進行させる処理、プレーヤオブジェクト、敵オブジェクトなどのオブジェクトを配置する処理、オブジェクトを表示する処理、ゲーム結果を演算する処理、或いはゲーム終了条件が満たされた場合にゲームを終了する処理などが含まれる。
【０１０４】
また、処理部２００は、記憶部２７０をワーク領域として各種処理を行う。処理部２００の機能は各種プロセッサ（ＣＰＵ、ＤＳＰ等）、ＡＳＩＣ（ゲートアレイ等）などのハードウェアや、プログラムにより実現できる。
【０１０５】
特に、本実施形態の処理部２００は、オブジェクト空間設定部２１０と、タッチ検出処理部２１１と、仮想コントローラ制御部２１２と、操作制御部２１３と、移動処理部２１４と、ゲーム演算部２１５と、仮想カメラ制御部２１６と、描画部２２０と、音処理部２３０とを含む。また、これらの一部を省略する構成としてもよい。
【０１０６】
なお、例えば、本実施形態のオブジェクト空間設定部２１０は、本発明のオブジェクト制御手段を構成し、本実施形態のタッチ検出処理部２１１は、本発明のタッチ操作入力検出処理手段を構成する。また、例えば、本実施形態の操作制御部２１３は、本発明の操作制御手段、判定手段、補正処理表示制御手段及び通知手段を構成し、ゲーム演算部２１５は、本発明のゲーム制御手段を構成する。
【０１０７】
オブジェクト空間設定部２１０は、オブジェクト（プレーヤオブジェクト、移動体、敵オブジェクト）、移動経路、建物、樹木、柱、壁、マップ（地形）などの表示物を表す各種オブジェクト（スプライト、ビルボード、ポリゴン、自由曲面又はサブディビジョンサーフェスなどのプリミティブ面で構成されるオブジェクト）をオブジェクト空間に配置設定する処理を行う。具体的にはオブジェクト空間設定部２１０は、オブジェクト（モデルオブジェクト）の位置や回転角度（向き、方向と同義）を決定し、その位置（Ｘ、Ｙ）或いは（Ｘ、Ｙ、Ｚ）にその回転角度（Ｘ、Ｙ軸回りでの回転角度）或いは（Ｘ、Ｙ、Ｚ軸回りでの回転角度）でオブジェクトを配置する。
【０１０８】
ここで、オブジェクト空間とは、いわゆる仮想２次元空間、仮想３次元空間の両方を含む。２次元空間とは、例えば２次元座標（Ｘ，Ｙ）においてオブジェクトが配置される空間であり、３次元空間とは、例えば３次元座標（Ｘ，Ｙ，Ｚ）においてオブジェクトが配置される空間である。
【０１０９】
そしてオブジェクト空間を２次元空間とした場合には、複数のオブジェクトそれぞれについて設定された優先順位に基づいてオブジェクトを配置する。例えば、奥側にあるように見せたいオブジェクト（スプライト）から順にオブジェクトを配置し、手前側にあるように見せたいオブジェクトを重ねて配置する処理を行うことができる。
【０１１０】
また、描画サイズが大きなオブジェクトを画像の下方に配置し、描画サイズが小さなオブジェクトを画像の上方に配置すれば、画面の上方に対応するオブジェクト空間が奥側にあるように見せることができ、画面の下方に対応するオブジェクト空間が手前側にあるように見せることができる。
【０１１１】
また、オブジェクト空間を３次元空間とした場合には、ワールド座標系にオブジェクトを配置する。
【０１１２】
タッチ検出処理部２１１は、プレーヤが入力部２６０から入力した入力情報の認識処理を行う。具体的には、本実施形態のタッチ検出処理部２１１は、入力部２６０によって入力された指示位置を取得する。
【０１１３】
例えば、タッチ検出処理部２１１は、プレーヤの接触操作（以下、「タッチ操作」ともいう。）を検出する接触検出領域（タッチパネル）における接触位置（２次元の接触位置座標）を指示位置として取得する。すなわち、タッチ検出処理部２１１は、プレーヤが指でタッチパネル１２にタッチ（以下、「タッチ操作入力」という。）し、そのまま指を移動して最後にタッチパネル１２から離す操作（以下、「スライド操作入力」という。）を行う期間に相当する接触操作期間中（スライド操作入力期間中）における接触位置（指示位置）を取得する。
【０１１４】
特に、タッチ検出処理部２１１は、
（１）画面へのタッチ操作入力されていない状態（以下、「無接触状態」という。）からタッチ操作入力された状態（以下、「接触状態」という。）への第１の変化（以下、「状態変化」という。）を検出するとともに、当該状態変化が実行された検出位置（以下、「基準位置」ともいう。）を検出する第１の検出処理、及び、
（２）第１の変化の検出後であって当該第１の変化を検出した際（すなわち、無接触状態から接触状態に状態変化した際）のタッチ操作入力が継続されて（すなわち、接触状態が継続されて）スライド操作入力による入力（以下、「スライド操作入力」という。）されている場合に、当該スライド操作入力の変化（すなわち、指示位置及び当該指示位置の変化）を第２の変化として検出する第２の検出処理、
（３）スライド操作入力中に、画面へのタッチ操作入力がされていない状態（すなわち、スライド操作入力が終了して無接触状態となった場合）を検出する第３の検出処理
を実行する。
【０１１５】
また、タッチ検出処理部２１１は、所定の周期毎に入力された指示位置を取得する。具体的には、所定の周期とはフレーム毎、例えば、１／６０秒〜１／１２０秒程度とすることができる。
【０１１６】
なお、本実施形態においては、「基準位置」及び「指示位置」としては、上述のようにタッチ操作入力やスライド操作入力によって検出されたタッチパネル１２上の位置だけなく、検出位置から所定の距離離れた位置又はタッチパネル１２の隅などの所定のエリアに形成されたエリアなどの特定のタッチパネル１２上の位置に関連した所定位置も含む。
【０１１７】
仮想コントローラ制御部２１２は、タッチパネル（表示画面）上に、タッチ操作入力及びスライド操作入力をした際に、最上位層（すなわち、ゲームやその他の画像に重畳させ
てその最上位）に仮想的な操作コントローラを表示し、タッチ操作入力及びスライド操作入力のユーザへのサポートを行うとともに、当該表示された操作コントローラへの操作を検出し、検出した結果を操作制御部２１３などの他の部材に出力する。
【０１１８】
特に、仮想コントローラ制御部２１２は、
（１）スライド操作入力の起点となる基準位置に起点操作入力オブジェクトマーカ（以下、「起点マーカ」という。）を表示させる表示制御、
（２）基準位置を基準に指示位置の変化に応じてスライド操作入力中のスライド操作入力方向を視認させるためのスライド操作入力オブジェクトマーカ（以下、「スライド操作マーカ」という。）を表示させる表示制御、
（３）スライド操作入力中の指示位置に、スライド操作マーカとは異なる第２の操作入力オブジェクトマーカ（以下、「指示位置マーカ」という。）を表示させる表示制御、
（４）ユーザの指示（タッチ操作入力及びスライド操作入力）に基づいて表示画面内に配置された所定の操作コマンドを表示する表示制御、及び、
（５）スライド操作入力中に表示された起点マーカをスライド操作入力に従って追従させ、当該追従している起点マーカを表示する追従表示制御、
を実行する。
【０１１９】
また、仮想コントローラ制御部２１２は、起点マーカ、スライド操作マーカ及び指示位置マーカが表示されるタッチパネル１２上の表示エリアと、操作オブジェクトやその他のゲームを実行する際に表示されるコンテンツ（以下、「表示コンテンツ」ともいう、）が表示される表示エリアとの干渉状況を判定する干渉状況判定処理を実行し、当該干渉状況が発生する場合には、各マーカの表示を制御して表示コンテンツの視認性を確保する非干渉処理を実行する。
【０１２０】
操作制御部２１３は、タッチ操作入力及びスライド操作入力に基づいて、オブジェクト空間に配置されたプレーヤキャラクタなどの操作対象オブジェクトを制御する。特に、操作制御部２１３は、仮想コントローラに従って入力された操作指示に基づいて操作対象オブジェクトを制御する。
【０１２１】
具体的には、操作制御部２１３は、
（１）起点マーカが表示されている基準位置を基準に、スライド操作入力によって変化する指示位置に伴って所与の画面内に表示されている操作対象オブジェクト（すなわち、オブジェクト空間に配置されている操作対象オブジェクト）の操作制御、
（２）タッチ操作入力された操作コマンドに基づいて、操作対象オブジェクトやその他のオブジェクトやゲームの進行に係わる操作制御、及び、
（３）スライド操作入力における移動量や移動速度など、スライド操作入力における起点位置から指示位置までの長さを示す操作量及び指示位置に基づく入力速度又は入力ベクトルを示すスライド操作入力における単位時間当たりの変化（すなわち、スライド操作入力における操作量（以下、「スライド操作入力量」ともいう。））を補正する補正処理、
を実行する。
【０１２２】
なお、「操作対象オブジェクト」には、ゲームなどにおけるプレーヤキャラクタや敵キャラクタなどの重要なキャラクタやオブジェクト空間内でユーザ操作の対象となる各種のオブジェクトが含まれるとともに、所定の画像や動画における重要な表示又はキーワードなどの重要なコンテンツ及び画像を形成するための各種のオブジェクトが含まれる。
【０１２３】
また、この「操作対象オブジェクト」には、直接的に操作するオブジェクトの他に、例えば、プレーヤキャラクタに装備されるアイテムなど、直接的に操作されるオブジェクトの動作に基づいて制御される間接的に操作されるオブジェクトも含まれる。
【０１２４】
さらに、上記の操作対象オブジェクト以外のオブジェクト空間に配置されるオブジェクトとしては、例えば、移動経路、建物、樹木、柱、壁、マップ（地形）などの表示物を表す各種オブジェクトが含まれる。
【０１２５】
移動処理部２１４は、オブジェクト空間内におけるオブジェクト（特に、キャラクタオブジェクト、移動体オブジェクト等の操作対象オブジェクト）の移動演算を行う。すなわち、移動処理部２１４は、操作制御部２１３の制御の下、仮想コントローラを含み、入力部２６０によりプレーヤが入力した入力データ又はプログラム（移動アルゴリズム）や各種データ（モーションデータ）などに基づいて、移動体オブジェクトをオブジェクト空間内で移動させ、又は、移動体オブジェクトの動作（モーション、アニメーション）を制御するための処理を行う。
【０１２６】
具体的には、本実施形態の移動処理部２１４は、オブジェクトの移動情報（移動方向、移動量、移動速度、位置、回転角度、或いは加速度）や動作情報（各パーツオブジェクトの位置、或いは回転角度）を、１フレーム毎に順次求めるシミュレーション処理を行う。ここでフレームとは、オブジェクトの移動処理、動作処理（シミュレーション処理）や画像生成処理を行う時間の単位である。そして、本実施形態では、フレームレートは、固定としてもよいし、処理負荷に応じて可変としてもよい。
【０１２７】
特に、本実施形態の移動処理部２１４は、操作制御部２１３の制御の下、仮想コントローラによって入力されたスライド操作入力量（補正量も含む）、スライド操作入力によって定まるスライド操作入力の方向及び操作コマンドに基づいて、オブジェクトを移動させる処理を行う。
【０１２８】
具体的には、移動処理部２１４は、
（１）スライド操作入力における操作方向に操作対象オブジェクトを移動させる処理、
（２）スライド操作入力におけるスライド操作入力量に応じて操作対象オブジェクトを移動させる処理、及び、
（３）操作コマンドに応じて操作対象オブジェクトを移動させる処理、
を実行する。
【０１２９】
なお、移動処理部２１４は、３次元のオブジェクト空間において入力方向に基づいてオブジェクトを移動させる処理を行ってもよい。例えば、予め、入力方向毎に移動方向を対応づけ、入力方向に対応する移動方向にオブジェクトを移動させる。
【０１３０】
ゲーム演算部２１５は、種々のゲーム演算処理を行う。例えば、ゲーム演算部２１５は、マップに基づくオブジェクト空間の形成、ＲＰＧの場合には、ユーザの操作に応じて予め設定されたシナリオに基づくゲームの進行、プレーヤオブジェクト（操作対象オブジェクト）と敵オブジェクトやその他のオブジェクト（操作非対象オブジェクト）との対戦、及び、当該対戦時のパラメータ管理などのゲームを実行する上で必要な演算処理を行う。
【０１３１】
なお、ゲーム演算部２１５は、サーバ装置１０と連動して実行されるが、その一部又は全部がサーバ装置１０に形成されていてもよい。
【０１３２】
仮想カメラ制御部２１６は、所与の視点から見える画像であって、奥行きがあるように見える画像を生成する。この場合に、仮想カメラ制御部が、オブジェクト空間内の所与（任意）の視点から見える画像を生成するための仮想カメラ（視点）の制御処理を行う。具体的には、仮想カメラの位置（Ｘ、Ｙ、Ｚ）又は回転角度（Ｘ、Ｙ、Ｚ軸回りでの回転角度）を制御する処理（視点位置や視線方向を制御する処理）を行う。
【０１３３】
例えば、仮想カメラによりオブジェクト（例えば、キャラクタ、ボール、車）を後方から撮影する場合には、オブジェクトの位置又は回転の変化に仮想カメラが追従するように、仮想カメラの位置又は回転角度（仮想カメラの向き）を制御する。
【０１３４】
この場合には、移動処理部２１４で得られたオブジェクトの位置、回転角度又は速度などの情報に基づいて、仮想カメラを制御できる。或いは、仮想カメラを、予め決められた回転角度で回転させたり、予め決められた移動経路で移動させる制御を行ってもよい。また、この場合には、仮想カメラの位置（移動経路）又は回転角度を特定するための仮想カメラデータに基づいて仮想カメラを制御する。
【０１３５】
なお、仮想カメラ（視点）が複数存在する場合には、それぞれの仮想カメラについて上記の制御処理が行われる。
【０１３６】
一方、仮想カメラ制御部２１６は、上述のように、起点マーカ、スライド操作マーカ及び指示位置マーカが表示されるタッチパネル１２上の表示エリアと、操作オブジェクトやその他のゲームを実行する際に表示される表示コンテンツが表示される表示エリアとの干渉状況が発生する場合には、仮想カメラの位置、向き、及び、画角の少なくともいずれか一方を制御し、操作対象オブジェクトの視認性を確保するカメラ制御を実行する。
【０１３７】
描画部２２０は、処理部２００で行われる種々の処理（ゲーム処理）の結果に基づいて描画処理を行い、これにより画像を生成し、表示部（ディスプレイ）２９０に出力する。描画部２２０が生成する画像は、いわゆる２次元画像であってもよいし、いわゆる３次元画像であってもよい。特に、描画部２２０は、オブジェクト空間における仮想カメラから見える画像であって、画面上に表示する画像を生成する。
【０１３８】
ここで２次元画像を生成する場合には、描画部２２０は、設定された優先度が低いオブジェクトから順に描画して、オブジェクト同士が重なる場合には、優先度の高いオブジェクトを上書きして描画する。
【０１３９】
また、３次元画像を生成する場合には、本実施形態の描画部２２０は、まずオブジェクト（モデル）の各頂点の頂点データ（頂点の位置座標、テクスチャ座標、色データ、法線ベクトル或いはα値等）を含むオブジェクトデータ（モデルデータ）が入力され、入力されたオブジェクトデータに含まれる頂点データに基づいて、頂点処理が行われる。なお、頂点処理を行うに際して、必要に応じてポリゴンを再分割するための頂点生成処理（テッセレーション、曲面分割、ポリゴン分割）を行うようにしてもよい。
【０１４０】
また、頂点処理では、頂点の移動処理や、座標変換（ワールド座標変換、カメラ座標変換）、クリッピング処理、透視変換、あるいは光源処理等のジオメトリ処理が行われ、その処理結果に基づいて、オブジェクトを構成する頂点群について与えられた頂点データを変更（更新、調整）する。そして、頂点処理後の頂点データに基づいてラスタライズ（走査変換）が行われ、ポリゴン（プリミティブ）の面とピクセルとが対応づけられる。そしてラスタライズに続いて、画像を構成するピクセル（表示画面を構成するフラグメント）を描画するピクセル処理（フラグメント処理）が行われる。
【０１４１】
ピクセル処理では、テクスチャの読出し（テクスチャマッピング）、色データの設定／変更、半透明合成、アンチエイリアス等の各種処理を行って、画像を構成するピクセルの最終的な描画色を決定し、透視変換されたオブジェクトの描画色を画像バッファ２７２（フレームバッファ、ピクセル単位で画像情報を記憶できるバッファ。ＶＲＡＭ、レンダリングターゲット）に出力（描画）する。すなわち、ピクセル処理では、画像情報（色、法
線、輝度、α値等）をピクセル単位で設定あるいは変更するパーピクセル処理を行う。
【０１４２】
これにより、オブジェクト空間内に設定された仮想カメラ（所与の視点）から見える画像が生成される。なお、仮想カメラ（視点）が複数存在する場合には、それぞれの仮想カメラから見える画像を分割画像として１画面に表示できるように画像を生成することができる。
【０１４３】
なお、描画部２２０が行う頂点処理やピクセル処理は、シェーディング言語によって記述されたシェーダプログラムによって、ポリゴン（プリミティブ）の描画処理をプログラム可能にするハードウェア、いわゆるプログラマブルシェーダ（頂点シェーダやピクセルシェーダ）により実現されてもよい。プログラマブルシェーダでは、頂点単位の処理やピクセル単位の処理がプログラム可能になることで描画処理内容の自由度が高く、ハードウェアによる固定的な描画処理に比べて表現力を大幅に向上させることができる。
【０１４４】
そして、描画部２２０は、オブジェクトを描画する際に、ジオメトリ処理、テクスチャマッピング、隠面消去処理、αブレンディング等を行う。
【０１４５】
ジオメトリ処理では、オブジェクトに対して、座標変換、クリッピング処理、透視投影変換、或いは光源計算等の処理を行う。そして、ジオメトリ処理後（透視投影変換後）のオブジェクトデータ（オブジェクトの頂点の位置座標、テクスチャ座標、色データ（輝度データ）、法線ベクトル、或いはα値等）を記憶部２７０に記憶する。
【０１４６】
テクスチャマッピングでは、記憶部２７０のテクスチャ記憶部に記憶されるテクスチャ（テクセル値）をオブジェクトにマッピングする処理を行う。具体的には、オブジェクトの頂点に設定（付与）されるテクスチャ座標等を用いて記憶部２７０のテクスチャ記憶部からテクスチャ（色（ＲＧＢ）、α値などの表面プロパティ）を読み出し、２次元の画像であるテクスチャをオブジェクトにマッピングする。この場合に、ピクセルとテクセルとを対応づける処理や、テクセルの補間としてバイリニア補間などを行う。
【０１４７】
なお、本実施形態では、オブジェクトを描画する際に、所与のテクスチャをマッピングする処理を行うようにしてもよい。この場合には、マッピングされるテクスチャの色分布（テクセルパターン）を動的に変化させることができる。
【０１４８】
また、この場合において、色分布（ピクセルパターン）が異なるテクスチャを動的に生成してもよいし、複数の色分布が異なるテクスチャを予め用意しておき、使用するテクスチャを動的に切り替えるようにしてもよい。またオブジェクト単位でテクスチャの色分布を変化させてもよい。
【０１４９】
隠面消去処理では、描画ピクセルのＺ値（奥行き情報）が格納されるＺバッファ（奥行きバッファ）を用いたＺバッファ法（奥行き比較法、Ｚテスト）による隠面消去処理を行う。すなわち、オブジェクトのプリミティブに対応する描画ピクセルを描画する際に、Ｚバッファに格納されるＺ値を参照するとともに、当該参照されたＺバッファのＺ値と、プリミティブの描画ピクセルでのＺ値とを比較し、描画ピクセルでのＺ値が、仮想カメラから見て手前側となるＺ値（例えば小さなＺ値）である場合には、その描画ピクセルの描画処理を行うとともにＺバッファのＺ値を新たなＺ値に更新する。
【０１５０】
αブレンディング（α合成）では、描画部２２０は、α値（Ａ値）に基づく半透明合成処理（通常αブレンディング、加算αブレンディング又は減算αブレンディング等）を行う。なお、α値は、各ピクセル（テクセル、ドット）に関連づけて記憶できる情報であり、例えば色情報以外のプラスアルファの情報である。α値は、マスク情報、半透明度（透
明度、不透明度と等価）、バンプ情報などとして使用できる。
【０１５１】
特に、本実施形態での描画部２２０は、接触検出領域に対応する表示領域に表示させる画像を生成してもよい。表示領域に表示させる画像とは、例えばオブジェクトを含む画像でもよい。
【０１５２】
音処理部２３０は、処理部２００で行われる種々の処理の結果に基づいて音処理を行い、ＢＧＭ、効果音、又は音声などのゲーム音を生成し、音出力部２９２に出力する。
【０１５３】
なお、本実施形態の端末装置は、１人のプレーヤのみがプレーできるシングルプレーヤモード専用のシステムにしてもよいし、複数のプレーヤがプレーできるマルチプレーヤモードも備えるシステムにしてもよい。
【０１５４】
また、複数のプレーヤがプレーする場合に、これらの複数のプレーヤに提供するゲーム画像やゲーム音を、１つの端末装置２０を用いて生成してもよいし、ネットワーク（伝送ライン、通信回線）などで接続された複数の端末装置２０又はサーバ装置１０を用いて分散処理により生成してもよい。
【０１５５】
［４］本実施形態の手法
［４．１］概要
次に、図５及び図６を用いて本実施形態の手法（仮想コントローラの表示制御）の概要について説明する。なお、図５及び図６は、本実施形態の仮想コントローラの表示制御について説明するための図である。
【０１５６】
本実施形態の端末装置２０は、所与の画面が表示されるタッチパネル１２へのスライド操作入力を受け付け、受け付けたスライド操作入力を視覚的にユーザに伝達し、操作を的確に行う際に必要なタッチ操作マーカやスライド操作マーカを含む仮想コントローラ（すなわち、操作入力オブジェクト）を画面（タッチパネル１２）上に表示し、ユーザの操作性を向上させることができるようになっている。
【０１５７】
特に、端末装置２０は、スライド操作入力を行う際にタッチ操作入力したタッチパネル１２上の位置に基づいて、当該スライド操作入力における操作量（具体的には、移動量や移動速度）を補正する構成を有している。
【０１５８】
例えば、タッチパネル１２の画面の右隅や左隅など画面中心ではなく、少なくともいずれか一方の画面端部に近い位置が基準位置として検出された場合には、画面端部に近い方は物理的にスライド操作入力を行う際の操作量（すなわち、スライド量）を十分に確保できない場合あり、その方向にスライド操作入力すると、適切なスライド操作入力を行うことができない場合がある。
【０１５９】
すなわち、図５（Ａ）に示すように、画面の左隅（紙面に向かって右隅）を基準（基準位置）としてスライド操作入力を行う場合であって、プレーヤオブジェクトを右（具体的には右斜め上）に移動させるため、又は、右方向（具体的には右斜め上）に移動させる際の速度や加速度を増加させるために、さらに紙面に向かって右へのスライド操作入力における操作量（すなわち、スライド操作入力量）が必要な場合に、スライド操作入力可能なスライド可能領域を十分に確保することができず、当該スライド可能領域以上の操作量が必要な場合には、ユーザが希望するプレーヤキャラクタの右方向への移動や当該右方向への移動速度の増加を制御することができない。
【０１６０】
また、最近では、スマートフォンなどの端末装置２０を片手で保持しつつ、保持した手
の親指で操作することも増えており、このような場合に、上記のように、親指側への操作可能領域を確保することが難しくなっている。
【０１６１】
そこで、本実施形態の端末装置２０は、図５（Ｂ）に示すように、無接触状態から接触状態への状態変化を検出した際の検出位置（すなわち、基準位置）がタッチパネル１２の画面端部に近い場合には、同一のスライド操作入力量であっても、スライド可能領域が狭い方向へのスライド操作入力量が、スライド可能領域が広い方向へのスライド操作入力量よりも大きくなるように、スライド操作入力量を補正するようになっている。
【０１６２】
なお、図５（Ｂ）は、画面左隅（紙面に向かった右隅）が基準位置として検出された場合に、操作量が補正される場合のイメージを示しており、複数の楕円（補正領域円）のラインは補正後のスライド操作入力量が同一となることを示している。すなわち、操作方向を無視すれば、同一の補正領域円の周縁部においては、基準位置からの物理的な距離が異なっていても、同一の操作量となることを示し、図５（Ｂ）においては、操作方向を無視すれば、物理的な距離が異なっていても、補正後においては、ポイントＰとポイントＱが同一のスライド量となる。
【０１６３】
また、図６（Ａ）〜（Ｄ）は、図５（Ｂ）と基準位置が異なる場合の補正領域円の例を示ししている。例えば、図５（Ｂ）は、端末装置２０が右手で保持された場合に右手親指で操作する際に適しており、図６（Ａ）は、端末装置２０が左手で保持された場合に左手親指で操作する際に適している。
【０１６４】
さらに、図５（Ｂ）及び図６（Ａ）〜（Ｄ）に示す補正領域及び補正領域の外縁は、本実施形態を説明するために便宜上図示しているだけで有り、通常はタッチパネル１２には表示されるものでなく、また、補正領域及び補正領域外縁を設けずに、タッチパネル１２全体において補正を行うようになっていてもよい。
【０１６５】
特に、端末装置２０は、
（１）無接触状態から接触状態への第１の変化を検出した検出位置を基準位置（又は、それに関連付けられた所定位置）として検出するとともに、当該基準位置の検出後であって当該基準位置を検出した際のタッチ操作入力が継続されてスライド操作入力されている場合に、当該スライド操作入力位置を指示位置として検出し、
（２）検出した基準位置及び指示位置を含むスライド操作入力における操作量に従って画面に表示されるオブジェクトの移動制御を実行し、
（３）検出した基準位置に基づいて、操作量を補正する補正処理を実行する
構成を有している。
【０１６６】
また、この構成により、端末装置２０は、画面上の基準位置に依存することなく、画面に表示されるオブジェクトを的確に表示することができるので、ユーザの操作性を向上することができるようになっている。
【０１６７】
なお、本実施形態においては、起点マーカやスライド操作マーカを表示する際に、無接触状態を検出した際の位置である基準位置を用いているが、当該基準位置に代えて当該基準位置に関連付けられた所定位置、例えば、検出位置から所定の距離離れた位置又はタッチパネルの隅などの所定のエリアに形成されたエリアなど特定の表示位置を基準位置として用いてもよい。
【０１６８】
［４．２］補正処理
次、本実施形態において実行される補正処理の詳細について説明する。
【０１６９】
（基本的な補正処理）
操作制御部２１３は、タッチ検出処理部２１１によって検出された基準位置と、スライド操作入力中に当該タッチ検出処理部２１１によって随時検出された指示位置と、に基づいて、当該スライド操作入力において入力されたスライド操作入力の移動量及びその移動速度を含むスライド操作入力量を補正する。
【０１７０】
具体的には、操作制御部２１３は、
（１）スライド操作入力において最初に検出された基準位置のタッチパネル１２上の位置座標と最近接するタッチパネル１２の端部との距離（以下、「補正基準距離」という。）及び方向（以下、「補正基準方向」という。）を算出し、
（２）算出した補正基準距離及び補正基準方向と実際にスライド操作入力によって入力された操作方向とスライド操作入力量（絶対値）とに基づいて、スライド操作入力量を補正する。
【０１７１】
特に、操作制御部２１３は、（２）の処理においては、予め補正基準距離によって定まる補正割合とスライド操作入力方向と補正基準方向とのずれ（角度差）によって生ずる調整量とを有し、補正割合をスライド操作入力方向と補正基準方向とのずれ（角度差）によって調整量を用いて調整し、当該調整した補正割合を乗算することによってスライド操作入力量を補正する。
【０１７２】
例えば、操作制御部２１３は、補正基準距離と補正割合を予め定めたテーブル又は所定の演算式を用いて、補正基準距離が２０ｍｍで補正割合が３０％増であることを得た場合に、補正基準方向とスライド操作入力方向であれば、当該スライド操作入力方向におけるスライド操作入力量を３０％増加させて補正量を得る。
【０１７３】
その一方、同様に、補正基準距離が２０ｍｍで補正割合が３０％増である場合であっても、補正基準方向とスライド操作入力方向の角度差が１０度であれば、基準位置からタッチパネル１２の最近接の端部までの距離は多少長くなるので、その分を調整量（例えば、マイナス５％）によって調整する必要がある。
【０１７４】
そこで、この場合には、操作制御部２１３は、最終的には、当該スライド操作入力方向におけるスライド操作入力量を２５％増加させて補正量を得るようになっている。また、操作制御部２１３は、得た補正量に基づいてプレーヤオブジェクトなどの操作対象オブジェクトのオブジェクト空間内における移動量又は移動速度を制御する。
【０１７５】
なお、このような場合に、補正基準距離が２０ｍｍで補正基準方向とスライド操作入力方向の角度差が１８０度（すなわち、近接する端部とは反対方向）であれば、例えば、調整量は補正割合のマイナスの２倍、すなわち、６０％と設定することによって、操作制御部２１３は、最終的には、当該スライド操作入力方向におけるスライド操作入力量を３０％減少させて補正量を得ることになる。
【０１７６】
また、本実施形態においては、タッチパネル１２上の画面を予め複数の領域に分けて、当該領域毎に補正割合が設定されていてもよい。ただし、この場合も、上述のように角度差によって補正割合を調整する必要がある。
【０１７７】
さらに、本実施形態においては、基準位置と最近接するタッチパネル１２上の端部との補正基準距離と補正基準方向に基づいて補正量を定めているが、補正基準距離のみによって補正量を定めてもよいし、基準位置と２以上のタッチパネル１２上の端部とのそれぞれの補正基準距離によって補正量を定めてもよい。
【０１７８】
特に、前者の場合には、例えば、操作制御部２１３は、補正基準距離に応じて４分割、８分割又は１６分割の操作方向に対する補正割合が予め定まっており、補正基準距離とスライド操作入力方向に基づいて補正割合を検出し、検出した補正割合によって補正量を算出する。
【０１７９】
また、後者の場合には、例えば、操作制御部２１３は、２以上の補正基準距離に応じて補正割合が予め定まっており、当該補正割合と上述のような調整量又は予め定まる操作方向に対する補正割合を取得し、取得した補正割合によって補正量を算出する。
【０１８０】
（２）具体的な補正処理
操作制御部２１３は、スライド操作入力によって検出された基準位置又は指示位置のタッチパネル１２上の位置（画面の座標位置）に基づいて、
（Ａ）オブジェクト空間内における操作対象オブジェクトの移動速度、
（Ｂ）当該操作対象オブジェクトの移動量、及び、
（Ｃ）当該操作対象オブジェクトが所与の処理を実行する実行回数
の少なくともいずれか一方を補正する補正処理を実行する。
【０１８１】
特に、操作制御部２１３は、操作対象オブジェクトが所与の処理を実行する実行回数としては、
（Ｃ１）プレーヤキャラクタなどの操作対象オブジェクトの戦闘時の弾やその他の発射回数、
（Ｃ２）当該戦闘時の攻撃（特別な攻撃を含む。）の回数が増減するなどの行動回数、
（Ｃ３）特定の動作を行う際の表示期間、当該特定の動作を表示するフレーム数や表示するための動作アニメーションの数（アニメーションのカット割りの数や副画面を用いて表示する場合の当該副画面の数等）
を補正する補正処理を実行する。
【０１８２】
また、操作制御部２１３は、ゲームが実行されているオブジェクト空間を形成するためのマップの形状の変化、ゲーム内のステージやレベルの変化、又は、ＲＰＧなどの操作対象となる操作対象オブジェクトのレベル変化など、ゲーム状況の変化に応じて補正処理の内容を変化させ、又は、補正処理を実行する基準となる画面上の位置を変化させる。
【０１８３】
具体的には、操作制御部２１３は、補正処理の内容を変化させる場合としては、オブジェクト空間内においてユーザ操作の対象となる操作対象オブジェクトの移動速度の補正処理を、当該操作対象オブジェクトの移動量、又は、当該操作対象オブジェクトが所与の処理を実行する実行回数などの補正処理に変更し、当該変更した補正処理を実行する。
【０１８４】
また、操作制御部２１３は、補正処理を実行する基準となる画面上の位置を変化させる場合としては、ゲーム状況が変化すると、補正処理を実行すべきタッチパネル１２上の位置や領域が変化する。例えば、操作制御部２１３は、ゲーム状況が変化すると、補正処理を実行する領域を、当該タッチパネル１２の最外縁となる端部から所定の距離離れた位置までの領域（外縁に環状に形成される領域）から、当該タッチパネル左半分の領域（すなわち、右半分は無効に設定）、又は、タッチパネルの四隅を含む予め定められた矩形領域や円形領域（当該四隅の矩形領域以外は無効）に変更する。
【０１８５】
（３）基準位置の動的変化に基づく補正処理
タッチ検出処理部２１１は、例えば、スライド操作入力中の５ｍｓ毎など予め定められた期間毎に到来するタイミング、又は、スライド操作入力方向が１０度など予め定められた角度以上に変更したときのタイミングにおいて当該タイミングにおけるスライド操作入力の位置（当該タイミング時のタッチパネル１２上の指示位置）を新たな基準位置として
検出する。
【０１８６】
この場合には、操作制御部２１３は、当該スライド操作入力中に新たに検出された基準位置に基づいて、操作量を補正する。
【０１８７】
なお、スライド操作入力は、その入力が継続されることによってタッチパネル１２上の種々のエリアに移動することになるが、上述のように、タッチパネル１２上のエリアが変われば、その補正量も変えないと、適切にスライド量を補正することができない。
【０１８８】
そこで、操作制御部２１３は、上述のように、新たな基準位置が検出されると、当該新たな基準位置に基づいて上述の補正処理を実行し、スライド操作入力中にスライド操作入力を行う領域が狭くなっている領域に移動した場合であっても、画面に表示されるオブジェクトを的確に表示することができるようになっている。
【０１８９】
（４）補正処理の実行判定
操作制御部２１３は、例えば、ユーザの指示、又は、ゲームの進行上の指示など所与の制御指示に基づいて、補正処理を実行するか否かを判定し、当該補正処理を実行すると判定された場合に、上述のように補正処理を実行する。
【０１９０】
例えば、ユーザの指示によって補正処理が不要と判断された場合やオブジェクトが存在するオブジェクト空間がタッチパネル１２の表示画面内に収まる場合（マップによる移動がない場合）には、補正処理によって移動量や移動速度の操作量が補正されない場合の方が、当該補正処理によって操作量が補正された場合より容易にかつ的確に操作することができる。
【０１９１】
そこで、操作制御部２１３は、ユーザの指示、又は、ゲームの進行上の指示など所与の制御指示に基づいて、補正処理の実行の可否を判断する処理を有することによって、オブジェクトの種々の操作に対応することができるようになっている。
【０１９２】
（５）補正処理の実行中である旨の表示
操作制御部２１３は、描画部２２０と連動し、補正処理が実行中であることを示す表示（ガイド表示）を実行させてもよい。
【０１９３】
例えば、操作制御部２１３は、補正処理が実行中である旨をタッチパネル１２の画面上に表示することによって、又は、仮想コントローラを当該画面上に表示している場合には、その形状、色若しくは大きさを変更させることによって補正処理が実行中であることを表示する。
【０１９４】
このような構成により、操作制御部２１３は、補正処理が実行中の場合には操作者にそのことを容易に知らしめることができるので、補正処理が実行されている場合と当該補正処理が実行されていない場合とで操作が異なることによって被る不利益を防止することができるようになっている。
【０１９５】
なお、操作制御部２１３は、当該補正処理が実行されたことを通知する構成を有していてもよい。例えば、操作制御部２１３は、補正処理が実行されことを画面上に表示すること、又は、その補正内容を画面上に表示することの他に、音や振動などによって補正処理が実行されたことを通知する。
【０１９６】
（６）複数のスライド操作入力がある場合の処理
操作制御部２１３は、タッチ検出処理部２１１によって同時に複数のスライド操作入力
が検出されている場合には、
（Ａ）一のスライド操作入力によって定まる補正量に従って各スライド操作入力に伴うスライド操作入力量を補正してもよいし、
（Ｂ）スライド操作入力毎に、それぞれのスライド操作入力によって定まる補正量に従って各スライド操作入力に伴うスライド操作入力量を補正してもよい。
【０１９７】
特に、操作制御部２１３は、（Ａ）の場合には、複数のスライド操作入力のうち、操作量の補正が最大のスライド操作入力、最小のスライド操作入力、中間となるスライド操作入力、又は、補正量の平均若しくはそれに一番近いスライド操作入力を用いる。
【０１９８】
このような構成により、複数のスライド操作入力を検出した場合であっても、同一の操作感覚によってスライド操作入力を行うこと、又は、それぞれ個別に対応することができるので、ユーザの操作性を向上させることができるようになっている。
【０１９９】
（７）スライド操作入力の解除
操作制御部２１３は、タッチ検出処理部２１１によって、所与の条件を具備した場合には、スライド操作入力量の補正処理の実行を中止し、主記憶部２７１に記憶されている基準位置をクリアする。
【０２００】
例えば、操作制御部２１３は、スライド操作入力中に、所与の条件として、画面へのタッチ操作入力されていない状態を検出した場合、基準位置が検出されてから一定期間が経過した場合、又は、スライド操作入力におけるスライド操作入力量が一定以上になった場合が含まれる。
【０２０１】
（８）その他
本実施形態においては、タッチ操作入力によって検出された位置（無接触状態において検出した位置）を基準位置として用いてスライド操作入力量の補正を行っているが、当該検出された位置に代えて当該検出された位置に関連付けられた所定位置、例えば、検出位置から所定の距離離れた位置又はタッチパネルの隅などの所定のエリアに形成されたエリアなど特定の表示位置を基準位置として用いてもよい。
【０２０２】
また、タッチ操作入力によって検出された位置（無接触状態において検出した位置）に代えて、当該検出位置に基づいて仮想コントローラが配置された位置（その基準点、中心点又は重心点）を基準位置として用いてもよい。特に、仮想コントローラとしては、起点マーカ及びスライド操作マーカから形成される物の他に、単一の操作コマンド又は十字キーなどが含まれる。
【０２０３】
［５］本実施形態における動作
次に、図７を用いて本実施形態の端末装置２０によって実行されるスライド操作入力量の補正処理の動作について説明する。なお、図７は、本実施形態の端末装置２０によって実行されるスライド操作入力量の補正処理の動作を示すフローチャートである。
【０２０４】
本動作は、サーバ装置１０と連動してＲＰＧなどのゲームが実行されており、順次ユーザのタッチ操作入力及びスライド操作入力が行われているものとし、スライド操作入力に基づく起点マーカの追従の処理は発生しないものとする。
【０２０５】
まず、タッチ検出処理部２１１は、入力部２６０を介してタッチ操作入力を検出すると（ステップＳ１０１）、当該タッチ操作入力が検出されたタッチパネル１２上の位置座標（基準位置の位置座標）を検出して主記憶部２７１に記憶する（ステップＳ１０２）。
【０２０６】
次いで、操作制御部２１３は、主記憶部２７１に記憶された基準位置から最近接するタッチパネル１２の端部までの補正基準距離を算出し、指示位置の検出を待機する（ステップＳ１０４）。
【０２０７】
次いで、タッチ検出処理部２１１は、スライド操作入力における指示位置を検出すると（ステップＳ１０５）、操作制御部２１３は、検出した指示位置に基づいてスライド操作入力におけるスライド操作入力方向とスライド操作入力量を算出する（ステップＳ１０６）。
【０２０８】
次いで、操作制御部２１３は、補正基準方向とスライド操作入力方向とのずれを算出するとともに、テーブルデータなどから補正基準距離に対応する補正割合及び調整量を取得する（ステップＳ１０７）。
【０２０９】
次いで、操作制御部２１３は、補正基準距離に対応する補正割合及び調整量に基づいてスライド操作入力量を補正し（ステップＳ１０８）、当該補正した操作量に基づいて操作対象オブジェクトを制御する（ステップＳ１０９）。
【０２１０】
次いで、操作制御部２１３は、タッチ検出処理部２１１によって新たな基準位置を検出したしか否か（ステップＳ１１０）、及び、無接触状態になった否かを判定し（ステップＳ１１１）、新たな基準位置を検出した場合には、ステップＳ１０２の処理に移行し、新たな基準位置を検出せずに、無接触状態になったことを検出した場合には、本動作を終了させる。
【０２１１】
［６］その他
本発明は、上記実施形態で説明したものに限らず、種々の変形実施が可能である。例えば、明細書又は図面中の記載において広義や同義な用語として引用された用語は、明細書又は図面中の他の記載においても広義や同義な用語に置き換えることができる。
本実施形態では、ＲＰＧのゲームの操作入力として説明しているが、対戦型ゲーム又はシミュレーションゲームなどの他のゲームにおいても用いることがきる。
【０２１２】
また、ゲームに限らず、ユーザインタフェースとしてタッチ操作入力及びスライド操作入力を用いるものであれば適用可能である。
【０２１３】
また、本実施形態は、一のサーバ装置１０によって各ゲームを端末装置２０に提供してもよいし、複数のサーバ装置１０を連動させてサーバシステムを構築し、各ゲームを端末装置に提供してもよい。
【０２１４】
本発明は、実施形態で説明した構成と実質的に同一の構成（例えば、機能、方法及び結果が同一の構成、あるいは目的及び効果が同一の構成）を含む。また、本発明は、実施形態で説明した構成の本質的でない部分を置き換えた構成を含む。また、本発明は、実施形態で説明した構成と同一の作用効果を奏する構成又は同一の目的を達成することができる構成を含む。また、本発明は、実施形態で説明した構成に公知技術を付加した構成を含む。
【０２１５】
上記のように、本発明の実施形態について詳細に説明したが、本発明の新規事項及び効果から実体的に逸脱しない多くの変形が可能であることは当業者には容易に理解できるであろう。したがって、このような変形例はすべて本発明の範囲に含まれるものとする。
【符号の説明】
【０２１６】
１０  …  サーバ装置
２０  …  端末装置
２００  …  処理部
１０１  …  通信制御部
１０２  …  Ｗｅｂ処理部
１０３  …ゲーム演算実行部
１０４  …ゲーム管理部
１２０  …  入力部
１３０  …  表示部
１４０  …  記憶部
１４２  …  主記憶部
１４４  …  ゲーム情報
１４６  …  ユーザ情報
１４８  …  自動演算情報
１８０  …  情報記憶媒体、
１９６  …  通信部
２００  …  処理部
２１０  …  オブジェクト空間設定部
２１１  …  タッチ検出処理部
２１２  …  仮想コントローラ制御部
２１３  …  操作制御部
２１４  …  移動処理部
２１５  …  ゲーム演算部
２１６  …  仮想カメラ制御部
２２０  …  描画部
２３０  …  音処理部
２７０  …  記憶部
２７１  …  主記憶部
２７２  …  画像バッファ
２６０  …  入力部
２６２  …  検出部
２８０  …  情報記憶媒体
２９０  …  表示部
２９１  …  音出力部、
【図１】
0006427414.tif 000002
【図２】
0006427414.tif 000003
【図３】
0006427414.tif 000004
【図４】
0006427414.tif 000005
【図５】
0006427414.tif 000006
【図６】
0006427414.tif 000007
【図７】
0006427414.tif 000008