(57)【特許請求の範囲】
【請求項１】
３次元仮想空間内を移動するオブジェクトに打撃を与えて移動方向を変更させるゲームシステムであって、
前記オブジェクトに打撃を与える目安位置を示すミートカーソルをタッチパネルに対してなされたユーザの操作に応じて移動するミートカーソル移動手段と、
前記オブジェクトに打撃を与える位置から所定の範囲内に前記オブジェクトが入っているか否かを判定し、前記オブジェクトに打撃を与える位置から所定の範囲内に前記オブジェクトが入っている場合に出力を発生するオブジェクト位置判定手段と、
前記オブジェクト位置判定手段の出力を受けて前記ミートカーソル移動手段の動作を少なくとも一部制限するミートカーソル移動制限手段と、
を備え、前記オブジェクトの位置に応じて、前記ミートカーソルの移動を制限しない第１モードと前記ミートカーソルの移動を少なくとも一部制限する第２モードとを切り換えるとともに、タッチパネルに対してなされた所定の方向への打撃操作に基づいて前記オブジェクトに打撃を与えることを特徴とするゲームシステム。
【請求項２】
請求項１に記載のゲームシステムにおいて、前記所定の範囲は距離で規定されることを特徴とするゲームシステム。
【請求項３】
請求項１又は２に記載のゲームシステムにおいて、前記第２モードにおいて、前記オブジェクトに対する打撃操作の方向とは異なる方向への前記ミートカーソルの移動操作が許容されることを特徴とするゲームシステム。
【請求項４】
請求項１〜３のいずれか１項に記載のゲームシステムにおいて、前記オブジェクトに対する打撃操作を任意の位置で行うことができるようにしたことを特徴とするゲームシステム。
【請求項５】
請求項１〜４のいずれか１項に記載のゲームシステムにおいて、少なくとも前記ユーザの打撃操作の方向に基づいて前記オブジェクトの移動軌跡が計算されることを特徴とするゲームシステム。
【請求項６】
請求項１〜５のいずれか１項に記載のゲームシステムにおいて、前記ミートカーソルの移動操作が前記ミートカーソルと前記オブジェクトの表示を妨げない位置でなされるようにしたことを特徴とするゲームシステム。
【請求項７】
請求項６に記載のゲームシステムにおいて、前記ミートカーソルの移動操作が前記ミートカーソルの表示に隣接する領域でなされることを特徴とするゲームシステム。
【請求項８】
請求項１〜７のいずれか１項に記載のゲームシステムにおいて、前記オブジェクトの位置に連動したアニメーションが生成されることを特徴とするゲームシステム。
【請求項９】
請求項１〜８のいずれか１項に記載のゲームシステムにおいて、ゲームが野球ゲームであり、前記オブジェクトが野球ボールであり、前記３次元仮想空間内のキャラクタのバッティング動作により前記野球ボールに打撃を与えることを特徴とするゲームシステム。
【請求項１０】
３次元仮想空間内を移動するオブジェクトに打撃を与えて移動方向を変更させるゲームの制御方法であって、
前記オブジェクトに打撃を与える目安位置を示すミートカーソルをタッチパネルに対してなされたユーザの操作に応じて移動するステップと、
前記オブジェクトに打撃を与える位置から所定の範囲内に前記オブジェクトが入っているか否かを判定し、前記オブジェクトに打撃を与える位置から所定の範囲内に前記オブジェクトが入っている場合に出力を発生するステップと、
前記出力を受けて前記ミートカーソルの移動を少なくとも一部制限するステップと、
を備え、前記オブジェクトの位置に応じて、前記ミートカーソルの移動を制限しない第１モードと前記ミートカーソルの移動を少なくとも一部制限する第２モードとを切り換えるとともに、タッチパネルに対してなされた所定の方向への打撃操作に基づいて前記オブジェクトに打撃を与えることを特徴とする制御方法。
【請求項１１】
請求項１０に記載の制御方法において、前記所定の範囲は距離で規定されることを特徴とする制御方法。
【請求項１２】
請求項１０又は１１に記載の制御方法において、前記第２モードにおいて、前記オブジェクトに対する打撃操作の方向とは異なる方向への前記ミートカーソルの移動操作が許容されることを特徴とする制御方法。
【請求項１３】
請求項１０〜１２のいずれか１項に記載の制御方法において、前記オブジェクトに対する打撃操作を任意の位置で行うことができるようにしたことを特徴とする制御方法。
【請求項１４】
請求項１０〜１３のいずれか１項に記載の制御方法において、少なくとも前記ユーザの打撃操作の方向に基づいて前記オブジェクトの移動軌跡が計算されることを特徴とする制御方法。
【請求項１５】
請求項１０〜１４のいずれか１項に記載の制御方法において、前記ミートカーソルの移動操作が前記ミートカーソルと前記オブジェクトの表示を妨げない位置でなされるように構成されていることを特徴とする制御方法。
【請求項１６】
請求項１５に記載の制御方法において、前記ミートカーソルの移動操作が前記ミートカーソルの表示に隣接する領域でなされるようにしたことを特徴とする制御方法。
【請求項１７】
請求項１０〜１６のいずれか１項に記載の制御方法において、前記オブジェクトの位置に連動したアニメーションが生成されることを特徴とする制御方法。
【請求項１８】
請求項１０〜１７のいずれか１項に記載の制御方法において、ゲームが野球ゲームであり、前記オブジェクトが野球ボールであり、前記３次元仮想空間内のキャラクタのバッティング動作により前記野球ボールに打撃を与えることを特徴とする制御方法。
【請求項１９】
コンピュータに請求項１０〜１８のいずれか１項に記載の制御方法を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、３次元仮想空間内を移動するオブジェクトに打撃を与えて移動方向を変更させるゲームシステム、制御方法、及びプログラムに関するものである。
【背景技術】
【０００２】
投手キャラクタから送球されたボールオブジェクトに対して、画面上のミートカーソル（ボールオブジェクトにバットを当てる目安を与えるためのカーソル）とは異なる領域に表示されている操作アイコンを動かすことにより連動するミートカーソルを移動させるとともに、ボールオブジェクトがベース上近傍に到着した時点でゲーム画面に接触させていた親指を離すことにより打者キャラクタのバットスイングが行なわれるようにした野球ゲームが提案されている（特許文献１、２参照）。
【０００３】
また、特許文献１には、ミートカーソルの移動操作とバットスイングの打撃操作との両方をユーザが片手でスマートフォンを持ちながら行うことが記載されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特許第５２４８７０５号公報
【特許文献２】特開２０１５−１３１０４１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上記特許文献１、２に記載の野球ゲームは、ミートカーソルの移動操作を行った親指を画面から離すことによりバットスイングの打撃操作を行うことから、ミートカーソルの移動操作とバットスイングの打撃操作とが一連の流れとして設定されており、操作の自由度の点で制限があった。
【０００６】
本発明は上記事情に着目してなされたものであって、その目的とするところは、オブジェクトに対する打撃操作とミートカーソルの移動操作の自由度を確保するとともに、両操作間の干渉を防止したゲームシステム、制御方法、及びプログラムを提供することにある。
【課題を解決するための手段】
【０００７】
上記課題を解決するための本発明の基本形態は、３次元仮想空間内を移動するオブジェクトに打撃を与えて移動方向を変更させるゲームシステムであって、前記オブジェクトに打撃を与える目安位置を示すミートカーソルをユーザの操作に応じて移動するミートカーソル移動手段と、前記オブジェクトに打撃を与える位置から所定の範囲内に前記オブジェクトが入っているか否かを判定し、前記オブジェクトに打撃を与える位置から所定の範囲内に前記オブジェクトが入っている場合に出力を発生するオブジェクト位置判定手段と、前記オブジェクト位置判定手段の出力を受けて前記ミートカーソル移動手段の動作を少なくとも一部制限するミートカーソル移動制限手段と、を備え、前記オブジェクトの位置に応じて、前記ミートカーソルの移動を制限しない第１モードと前記ミートカーソルの移動を少なくとも一部制限する第２モードとを切り換えて、オブジェクトに対する打撃操作とミートカーソルの移動操作との間に干渉が生じないようにすることを特徴とするゲームシステムに係るものである。
【発明の効果】
【０００８】
本発明によれば、３次元仮想空間内を移動するオブジェクトに対する打撃操作とミートカーソルの移動操作の自由度を確保するとともに、両操作間の干渉を防止することができる。
【図面の簡単な説明】
【０００９】
【図１】図１は、本発明の実施の一形態に係るシステムの構成を示すブロック図である。
【図２Ａ】図２Ａは、本発明の実施の一形態に係るハードウェア構成の一例を示すブロック図である。
【図２Ｂ】図２Ｂは、本発明の実施の一形態に係るサーバの構成の一例を示すブロック図である。
【図３】図３は、本発明の実施の一形態に係るサーバのハードウェア構成の一例を表すブロック図である。
【図４】図４は、本発明の実施の一形態に係るユーザ端末のハードウェア構成の一例を表すブロック図である。
【図５】図５は、本発明の実施の一形態に係る動作の一態様を示すフローチャートである。
【図６Ａ】図６Ａは、投手キャラクタが投球動作を行う直前のゲーム画面の一例を示す図である。
【図６Ｂ】図６Ｂは、投手キャラクタによる投球動作後、ボールが打撃位置から所定の範囲内に入る前のゲーム画面の一例を示す図である。
【図６Ｃ】図６Ｃは、投手キャラクタによる投球動作後、ボールが打撃位置から所定の範囲内に入った後のゲーム画面の一例を示す図である。
【図６Ｄ】図６Ｄは、ボールに対して打撃操作を行った場合のゲーム画面の一例を示す模式図である
【発明を実施するための形態】
【００１０】
本発明の実施の形態の概要を例示的に列挙すると以下のとおりである。
〔形態１〕
３次元仮想空間内を移動するオブジェクトに打撃を与えて移動方向を変更させるゲームシステムであって、
前記オブジェクトに打撃を与える目安位置を示すミートカーソルをユーザの操作に応じて移動するミートカーソル移動手段と、
前記オブジェクトに打撃を与える位置から所定の範囲内に前記オブジェクトが入っているか否かを判定し、前記オブジェクトに打撃を与える位置から所定の範囲内に前記オブジェクトが入っている場合に出力を発生するオブジェクト位置判定手段と、
前記オブジェクト位置判定手段の出力を受けて前記ミートカーソル移動手段の動作を少なくとも一部制限するミートカーソル移動制限手段と、
を備え、前記オブジェクトの位置に応じて、前記ミートカーソルの移動を制限しない第１モードと前記ミートカーソルの移動を少なくとも一部制限する第２モードとを切り換えて、オブジェクトに対する打撃操作とミートカーソルの移動操作との間に干渉が生じないようにすることを特徴とするゲームシステム。
本形態１によれば、第２モードにおいてミートカーソルの移動を少なくとも一部制限することにより、３次元仮想空間内を移動するオブジェクトに対する打撃操作とミートカーソルの移動操作の自由度を確保するとともに、両操作間の干渉を防止することができる。
【００１１】
〔形態２〕
形態１に記載のゲームシステムにおいて、前記所定の範囲は時間距離で規定されることを特徴とするゲームシステム。
本形態２によれば、オブジェクトの移動速度に拘りなく打撃操作のための時間を確保することができる。
【００１２】
〔形態３〕
形態１又は２に記載のゲームシステムにおいて、前記第２モードにおいて、前記オブジェクトに対する打撃操作の方向とは異なる方向への前記ミートカーソルの移動操作が許容されることを特徴とするゲームシステム。
本形態３によれば、打撃操作と競合しないミートカーソルの移動操作を実施することができ、操作の自由度を高めることができる。
【００１３】
〔形態４〕
形態１〜３に記載のゲームシステムにおいて、前記オブジェクトに対する打撃操作を任意の位置で行うことができるようにしたことを特徴とするゲームシステム。
本形態４によれば、オブジェクトに対する打撃操作を、打撃操作位置を特に意識することなく瞬時に実施することができ、操作の自由度を増大させるとともに、操作性の改善を図ることができる。
【００１４】
〔形態５〕
形態１〜４に記載のゲームシステムにおいて、少なくとも前記ユーザの打撃操作の方向に基づいて前記オブジェクトの移動軌跡が計算されることを特徴とするゲームシステム。
本形態５によれば、オブジェクトの移動方向を簡便に好適なものとすることができる。
【００１５】
〔形態６〕
形態１〜５に記載のゲームシステムにおいて、前記ミートカーソルの移動操作が前記ミートカーソルと前記オブジェクトの表示を妨げない位置でなされるようにしたことを特徴とするゲームシステム。
本形態６によれば、ミートカーソルの移動操作によりミートカーソルとオブジェクトの表示が妨げられることがないようにすることができる。
【００１６】
〔形態７〕
形態６に記載のゲームシステムにおいて、前記ミートカーソルの移動操作が前記ミートカーソルの表示に隣接する領域でなされることを特徴とするゲームシステム。
本形態７によれば、ミートカーソル移動操作位置を好適なものとすることができる。
【００１７】
〔形態８〕
形態１〜７に記載のゲームシステムにおいて、前記オブジェクトの位置に連動したアニメーションが生成されることを特徴とするゲームシステム。
本形態８によれば、ゲームにおけるリアリティを増大させることができる。
【００１８】
〔形態９〕
形態１〜８に記載のゲームシステムにおいて、ゲームが野球ゲームであり、前記オブジェクトが野球ボールであり、前記３次元仮想空間内のキャラクタのバッティング動作により前記野球ボールに打撃を与えることを特徴とするゲームシステム。
本形態９によれば、野球ゲームに好適な態様を実現することができる。
【００１９】
本発明の他の実施の形態は、上記各システムと略同様の内容を有する制御方法、及び、該方法をコンピュータにより実現するためのプログラムに係るものである。
そして、前記方法、及び、プログラムにおいても、前記システムと同様の作用効果を奏するものである。
【００２０】
以下、本発明に係る実施の一形態を図面に基づいて詳細に説明する。なお、本発明は、以下において説明する実施の形態に限定されるべきではなく、特許請求の範囲の記載に基き解釈されるべきである。また、当業者であれば、他の類似する実施形態を使用することができること、また、本発明から逸脱することなく適宜形態の変更又は追加を行うことができることに留意すべきである。
【００２１】
〔システムの構成の概要〕
図１は、本発明の実施の一形態に係るゲームシステム１の構成を示すブロック図である。ゲームシステム１は、ミートカーソル移動手段２、オブジェクト位置判定手段３、ミートカーソル移動制限手段４を具備している。ゲームシステム１の各構成要素２〜４の果たす機能の詳細については、以下において詳述する。
【００２２】
〔システムのハードウェア構成の概要〕
図２Ａは、本発明の一実施形態の基本的ハードウェア構成の概要を示す概念図であり、ハードウェア構成として、サーバ２０と、ネットワーク４０と、ネットワーク４０を介してサーバ２０と通信可能に接続できる各ユーザのユーザ端末３０とを含むものである。
【００２３】
サーバ２０は、例えば、図２Ｂに示すように、ゲームサーバ２１とデータベースサーバ２２とから構成されている。
【００２４】
ゲームサーバ２１は、ゲームサービスを受ける各ユーザのユーザ端末３０からのネットワーク４０を介したアクセスを受け付けて、各ユーザのゲーム情報をデータベースサーバ２２に蓄積して管理し、各ユーザにネットワーク４０を介したゲームサービスを提供する。
【００２５】
データベースサーバ２２は、各ユーザのゲーム履歴や獲得ポイント等のゲーム情報を蓄積して管理するためのサーバである。
【００２６】
なお、サーバ２０が、ゲームサーバ２１、データベースサーバ２２により構成される例を示すが、これに限定されるものではない。例えば、各サーバの有する各機能を複数のサーバに分散して持たせて複数台のサーバとして構成することもできる。また、ユーザの認証を行うための認証サーバや、ユーザが課金対象のアイテムをゲーム内で購入した場合に課金管理を行う課金管理サーバを別体に構成としてもよい。
【００２７】
また、ゲームサービスを利用する多数のユーザのユーザ端末３０からの巨大なアクセスにも耐え得るサーバシステムの構築が求められる場合には、複数のゲームサーバ２１やデータベースサーバ２２を設けて負荷分散型のシステム構成としてもよい。この場合、複数のゲームサーバ２１やデータベースサーバ２２間の負荷を調整するためのロードバランサを設けることが望ましい。
【００２８】
ネットワーク４０は、直接接続のための専用線（専用ケーブル）やイーサネット（登録商標）等によるＬＡＮの他、電話通信網やケーブル網等の通信網を含み、有線／無線を問わない。
【００２９】
なお、提供されるゲームは、ＳＮＳプラットフォーム上で提供されるソーシャルゲームとすることができるが、ＳＮＳプラットフォームとは独立したゲームとして構築してもよい。提供されるゲームとして、野球、サッカー、テニス、卓球、クリケット等様々なゲーム形式・ジャンルのボールゲームを採用できる。
【００３０】
以下の説明においては、提供されるゲームは、ＳＮＳプラットフォーム上で提供されるソーシャルゲームとし、ブラウザゲーム用のプログラム（アプリケーションソフトウェア）がゲームサーバに実装されており、ゲームサーバが、各ユーザのユーザ端末３０における入力操作に応じてゲーム進行のための演算処理やデータ処理を実行するものとする。このようなケースにおいては、ゲームサーバは、ゲームの進行に伴ってデータベースサーバ内に格納されている各ユーザのゲーム情報を更新するとともに、ウェブページ情報（ゲーム画面データ）を各ユーザのユーザ端末３０に送信する。
【００３１】
各ユーザのユーザ端末３０には、ウェブサイト閲覧機能を有するウェブブラウザが搭載されており、ゲームサーバから送信されたウェブページ情報をユーザ端末３０の画面に表示することができるようになっている。このユーザ端末３０としては、例えば、携帯電話端末、ＰＨＳ（Personal Handy-phone System）端末、携帯情報端末（ＰＤＡ：Personal Digital Assistant）、スマートフォン、パーソナルコンピュータまたはタブレット型コンピュータなど、様々な端末を採用できる。
【００３２】
〔ゲームサーバ等の構成〕
ゲームサーバの具体的構成の一例を、図３に基づいて以下説明する。同図に示すように、ゲームサーバは、主に、ＣＰＵ（Central Processing Unit）１１０、ＲＯＭ（Read Only Memory）１２０及びＲＡＭ（Random Access Memory）１３０等の主記憶装置、補助記憶装置１４０、通信制御部１５０、入出力制御部１６０を備えており、これらはアドレスバス、データバス、コントロールバス等を含むバスライン１７０を介して相互に接続されている。なお、バスライン１７０と各構成要素との間には適宜インタフェース回路（不図示）が介在している場合もある。
【００３３】
ＣＰＵ１１０は、ゲームサーバ全体の制御を行う。ＲＯＭ１２０は、ゲームサーバの動作制御に必要なプログラム等を記憶している。ＲＡＭ１３０は、各種プログラム及びデータを記憶するとともに、ＣＰＵ１１０に対して作業領域を提供する。
【００３４】
補助記憶装置１４０は、ゲームプログラム等のアプリケーションソフトウェアや各種データ等を格納する、例えば、ハードディスクドライブ等の記憶装置である。ゲームサーバを起動させるためのプログラムも、この補助記憶装置１４０に記憶されており、当該プログラムはゲームサーバの起動時に補助記憶装置１４０からバスライン１７０を介してＲＡＭ１３０へとロードされる。
【００３５】
通信制御部１５０は、ネットワーク４０と接続される通信インターフェース１５０ａを備え、ネットワーク４０を介した各ユーザのユーザ端末３０との間の通信を制御する。また、ゲームがＳＮＳプラットフォーム上で提供されるソーシャルゲームの場合には、通信制御部１５０は、ＳＮＳサーバ（不図示）との間の通信を制御する。
【００３６】
入出力制御部１６０は、データベースサーバと通信可能に接続されており、ＣＰＵ１１０がデータベースサーバに対してデータ（レコード）の読み書きを実行するときに入出力制御を行う。
【００３７】
データベースサーバは、各ユーザのゲーム情報を記憶する領域を有する記憶装置として、例えばＲＡＩＤ（Redundant Arrays of Inexpensive Disks）構成の大容量ハードディスク装置を具備する。このデータベースサーバは、例えば、各ユーザを一意に識別する識別情報（ユーザＩＤ）に基づいて、各ユーザの各種ゲーム情報（ユーザ名、レベル、ゲーム内ポイント、所持アイテムなど）を管理するするリレーショナルデータベース、オブジェクトデータベース又はオブジェクト関係データベース等として構築することができる。
【００３８】
次に、本実施の一形態に係るゲームサーバにアクセスしてゲームサービスの提供を受けるユーザのユーザ端末３０の構成を説明する。
【００３９】
〔端末装置の構成〕
ユーザ端末３０として携帯端末を例に取り、図４に基づきその構成を説明する。図４に示すように、ユーザ端末３０は、主に、ＣＰＵ３１０と、主記憶装置としてのＲＯＭ３２０及びＲＡＭ３３０と、画像処理部３４０と、表示部３５０と、サウンド処理部３６０と、音声入力部３７０と、音声出力部３８０と、補助記憶装置３９０と、操作入力部４００と、通信制御部４１０とを備えており、構成要素３１０〜３４０、３６０および３９０〜４１０はバスライン４２０を介して相互に接続されている。なお、バスライン４２０と各構成要素との間にはインタフェース回路（不図示）が適宜介在している。
【００４０】
ＣＰＵ３１０は、ユーザ端末３０全体の制御を行う。ＲＯＭ３２０には、ユーザ端末３の動作制御に必要なプログラム等が記憶されている。また、ＲＡＭ３３０には、ＲＯＭ３２０または補助記憶装置３９０からロードされた各種プログラムやデータが記憶され、ＣＰＵ３１０に対して作業領域を提供する。ＨＴＭＬ等で記述されたゲーム画面データを表示するウェブブラウザは、ＲＯＭ３２０または補助記憶装置３９０に記憶されており、ＲＡＭ３３０にロードされてＣＰＵ３１０によって実行される。また、ウェブブラウザのブラウザ機能を拡張するための様々なプラグインソフトウェアを、ウェブブラウザと共にＲＯＭ３２０または補助記憶装置３９０に記憶するようにしてもよい。
【００４１】
画像処理部３４０は、ＣＰＵ３１０からの画像表示命令に基づいて表示部３５０を駆動し、当該表示部３５０の画面に画像を表示させる。表示部３５０としては、液晶ディスプレイ等の種々の表示装置を採用できる。
【００４２】
サウンド処理部３６０は、音声入力部３７０から音声が入力されたときにアナログ音声信号をデジタル音声信号に変換するとともに、ＣＰＵ３１０からの発音指示に基づいてアナログ音声信号を生成して音声出力部３８０に出力する。音声入力部３７０は、ユーザ端末３０に内蔵されたマイクロフォンからなり、電話通信する場合や録音を行う場合などに用いられる。音声出力部３８０は、電話通信時の受話スピーカおよび電話着信音やゲーム実行時の効果音などを出力するスピーカからなる。
【００４３】
補助記憶装置３９０は、各種プログラムやデータ等を格納する記憶装置である。補助記憶装置３９０としては、携帯電話端末の内部メモリとして、例えばフラッシュメモリ等を用いることができ、また、携帯電話端末の外部メモリとして、例えばメモリカードリーダライタ等を用いることができる。
【００４４】
操作入力部４００は、ユーザの操作入力を受け入れて当該操作入力に対応した入力信号を、バスライン４２０を介してＣＰＵ３１０に出力するものである。操作入力部４００の例としては、ユーザ端末３０の本体に設けられた方向指示ボタン、決定ボタン、英数文字等入力ボタンなどの物理的ボタンがある。なお、表示部３５０をタッチスクリーンとして構成している場合には、当該タッチパネルが操作入力部４００となる。
【００４５】
通信制御部４１０は、通信インタフェース４１０ａを備え、ゲーム操作時等にデータ通信するための通信制御機能および携帯電話端末として音声データを送受信するための通信制御機能等を有している。ここで、データ通信用の通信制御機能には、例えば、無線ＬＡＮ接続機能、無線ＬＡＮや携帯電話回線網を介したインターネット接続機能、近距離無線通信機能などが含まれる。通信制御部４１０は、ＣＰＵ３１０からの命令に基づいてユーザ端末３０を無線ＬＡＮやインターネット等に接続するための接続信号を発信するとともに、通信相手側から送信されてきた情報を受信してＣＰＵ３１０へ供給する。
【００４６】
なお、ユーザ端末３０には、ＧＰＳ（Global Positioning System）信号受信回路、ＣＣＤ（Charge Coupled Device）イメージセンサ等の撮像装置（カメラ）、３軸加速度センサなどが備えられていてもよく、例えば、ＧＰＳ位置情報などをゲーム内で活用してもよい。
【００４７】
〔ゲームの処理の態様例〕
次に、本発明の実施の一形態に係るゲームシステムの処理の一例の概略を、図５、図６Ａ〜図６Ｄに示されるような野球ゲームの例に基づき説明する。図５は、本発明の実施の一形態に係るゲームシステムの動作を示すフローチャートである。このフローチャートは、投手キャラクタ６０３によりボール６０８が投球され、打者キャラクタ６０２によりボール６０８に対する打撃が行われる場面を想定したものである。なお、この場面では、投手キャラクタ６０３の投球動作やボールの飛行軌跡はゲームシステムにより制御されているものとする。
【００４８】
メインメニュー画面（不図示）に表示される実行可能なゲームの中からユーザにより野球ゲームの実行が指示されると、野球ゲームが開始され（Ｓ１０１）、図６Ａに示すように、ゲーム画面６００中に打者キャラクタ６０２、投手キャラクタ６０３、ストライクゾーン６０５、ホームベース６０６、バット６０７、ミートカーソル６０９等を含む初期画面が表示される（Ｓ１０２）。
【００４９】
なお、図６Ａ〜図６Ｃには、球場を打者キャラクタ６０２の後方から仮想カメラで撮影した画像が背景画像として表示されている。なお、広範囲に状況を確認できるように仮想カメラの視点を遠距離からの視点や俯瞰的な視点に変更することができる。
【００５０】
次に、投手キャラクタ６０３による投球動作がなされると、投球動作の完了とともにゲーム画面中にボール６０８が表示される（Ｓ１０３、図６Ｂ）。図６Ｂは、投手キャラクタが投球を行った直後のゲーム画面を示しており、ミートカーソル６０９、ストライクゾーン６０５は、移動するボール６０８の表示を遮ることがないように半透明表示となっている。
【００５１】
ユーザは、画面６００内を移動するボール６０８の移動経路を観察し、ミートカーソル６０９をスワイプ操作により移動する（Ｓ１０４）。なお、スワイプ操作によるタッチ情報の取得手法については後述する。ここで、ミートカーソル６０９は、打者キャラクタ６０２がボールを打撃可能な領域を示すための標識であり、ホームベース６０６の上方に表示される。ユーザがスワイプ操作を行ってミートカーソル６０９を移動させることにより、バット６０７のスイングによるボールへの打撃位置を調整できる。なお、ミートカーソル６０９中には、ボールに対する最適打撃位置を示す標識６１０が付されている。また、必要に応じて、ストライクゾーン６０５内又は近傍にボール６０８が到達する際の予想位置を示す標識６０４を表示するようにしてもよい。
【００５２】
上記ミートカーソル６０９を移動させるためのスワイプ操作は、ミートカーソル６０９の表示領域とは異なる領域、例えば、ミートカーソル６０９の表示領域に隣接する領域で行い、スワイプ操作に連動してミートカーソル６０９を間接的に移動させるようにしたものである。このようにすれば、ミートカーソル６０９に接触して直接移動させなくてもよいから、ユーザの指によってミートカーソル６０９の視認が妨げられることを回避でき、その結果、ミートカーソル６０９を位置決めする際の操作性を向上させることができる。
【００５３】
次に、投手キャラクタにより投球されたボールが打撃位置から所定の範囲内に入ったか否かの判定を行う（Ｓ１０５）。ボールが打撃位置から所定の範囲内に入っていないと判定される場合にはステップＳ１０４に戻り、ボールが打撃位置から所定の範囲内に入っていると判定される場合には後述するステップＳ１０６に進む。なお、所定の範囲を時間距離により規定することができる。この場合には、ボールが打撃位置から所定の範囲内に入った時点から打撃位置に到達するまでの飛行時間が略一定となることから、打撃操作等の準備期間を略一定にすることができ、余裕を持って打撃操作等を行うことができる。
【００５４】
図６Ｃは、投手キャラクタにより投球されたボールが打撃位置から所定の範囲内に入っていると判定された場合のゲーム画面の一例を示す図である。この場合には、ミートカーソル６０９が、例えば、黄色に着色（図６Ｃにおいては網掛け）されて固定され、ユーザによるミートカーソル６０９の移動が原則として禁止される。但し、変化球に対応するため、ミートカーソル６０９を打撃操作と干渉しない下方向の任意の方向・位置へ移動させることは許容される。そこで、ユーザは必要に応じてミートカーソル６０９を下方向の任意の方向・位置へ移動させる（Ｓ１０６）。
【００５５】
次に、ユーザはタイミングを捉えてボール対する打撃操作を開始するために上方向にフリック操作を行う（Ｓ１０７）。打撃操作のためのフリック操作の方向を上方向としたのは、ミートカーソル６０９の移動操作方向との干渉を防止するためである。図６Ｄは、ボールに対して打撃操作を行った場合のゲーム画面の一例を示す模式図である。フリック操作は、タッチ操作が可能な画面の任意の位置で行うことができる。このようにすれば、フリック操作を、操作位置を特に意識することなく瞬時に実施できることから、操作の自由度を増大させるとともに、操作性の改善を図ることができる。
【００５６】
次に、フリック操作を解析して、フリック操作の方向、及び、フリック操作のスピードを取得するとともに、打者キャラクタ６０２にバットスイングを開始させる（Ｓ１０８）。本形態では、フリック操作のスピードによりバットスイングのスピードを決定するようにしている。なお、バットスイングのスピードを打者の能力にも依存させるようにしてもよい。フリック操作によるタッチ情報の取得手法については後述する。
【００５７】
次に、ボール飛翔のための初期条件の取得・飛翔経路の算出がなされる（Ｓ１０９）。ボールの飛翔経路を定量的に算出するためには、バットとボールとの衝突を力学的にモデル化し、衝突直後のボールの速度ベクトル、回転軸、回転量をボール飛翔の初期条件として取得する必要がある。また、ボールの飛翔経路の算出に当たっては、取得されたフリック操作の方向も考慮する必要がある。これらについての詳細は後述する。
【００５８】
なお、バットスイングとボールへの打撃との関係に関しては、定性的には現実の野球と同様である。例えば、バットスイングのタイミングが、ボールへの打撃に適合したタイミングから外れて、早過ぎたり遅すぎたりすると空振りとなる。また、バットスイングのタイミングが適合していても、バットスイングの軌跡が、ボールへの打撃に適合した位置範囲から外れていれば空振りとなる。
【００５９】
また、バットスイングのタイミングが適合し、且つ、バットスイングの軌跡がボールの打撃に適合した位置範囲にある場合には、ボールへの打撃が行われることになるが、バット６０７とボール６０８の衝突の態様に応じて各種のボールの飛翔軌跡が得られることになる。例えば、ボール６０８の下部をバット６０７上部で打撃した場合には、打球の角度が上がりフライとなることが予想される。また、ボール６０８の上部をバット６０７下部で打撃した場合には、打球の角度が下がりゴロとなることが予想される。また、所謂ジャストミートの場合にはヒットやホームランが予想され、ジャストミート以外の場合には凡打が予想される。
【００６０】
以下、タッチ情報の取得、ボール飛翔の初期条件の取得、ボール飛翔経路の算出について説明する。
【００６１】
〔タッチ情報の取得〕
スワイプ操作、フリック操作によるタッチ情報の取得手法について説明する。
ユーザが画面にタッチ操作を行うと、タッチ・スクリーンへの物体の接触が検知され、操作の開始位置に相当するタッチ操作の始点位置が指定される。そして、所定周期（例えば、３０ｆｂｐｓのフレーム・レート）で、タッチ・スクリーン上でのタッチ位置を検知し記憶する。
【００６２】
このようにして、タッチ位置の情報が順次取得され、前フレームのタッチ位置（ベクトル；２次元座標位置）と現フレームのタッチ位置（ベクトル；２次元座標位置）とから、タッチの移動方向及びタッチ間の距離を算出することができるとともに、算出した距離をフレームレートで割ることにより、タッチ操作のスピードが算出される。
〔ボール飛翔の初期条件の取得〕
【００６３】
前述のように、バットスイングによりボールに対して打撃を与え、該打撃によるボールの飛翔軌道を演算するためには、バットとボールとの衝突を力学的にモデル化すればよい。また、３次元仮想空間中を飛翔するボールの軌跡を精緻に演算するためには打撃直後のボールの速度ベクトル、回転軸、回転量をボール飛翔の初期条件として取得する必要がある。以下において、ボール飛翔の初期条件の取得に関する原理的な説明を与えるが、本発明はこれに限定されるものではないことに留意されたい。
【００６４】
まず、バット上のボールの衝突位置を特定する。該衝突位置は、衝突前のボールの飛翔経路とバットスイングによるバットの移動経路の情報から取得可能である。
【００６５】
次に、衝突直後のボールの速度ベクトル、回転軸、回転量の情報（ボール飛翔のための初期条件）を取得する。該初期条件を取得するための手法について以下詳述する。
【００６６】
（衝突直後のボールの速度ベクトルの取得）
衝突直前、バットは速度Ｖ（ベクトル。以下、特に断らない限りベクトルを表すものとする）でボールに向かって運動しており、ボールは速度ｖでバットに向かって運動している。衝突直後、バットの速度はＶ’に変化し、ボールの速度はｖ’に変化する。
【００６７】
上記のようなケースでは、力学法則に従って以下の式１、２が成り立つ。なお、Ｍはバットの質量、ｍはボールの質量、ｅは反発係数である。
ＭＶ＋ｍｖ＝ＭＶ’＋ｍｖ’        （式１）
ｖ−Ｖ＝−ｅ（ｖ’−Ｖ’）        （式２）
【００６８】
上記の式１、２から、衝突直後のボールの速度ｖ’は、衝突直前のバットの速度Ｖ、ボールの速度ｖ、反発係数ｅを用いて、以下の式３のように表されることになる。
ｖ’＝（１＋ｅ−１）ＭＶ／（Ｍ＋ｍ）＋（ｍ−Ｍｅ−１）ｖ／（Ｍ＋ｍ）  （式３）
【００６９】
なお、上記の式１、２においては、バットの質量Ｍ、ボールの質量ｍを定数としているが、より精密な議論が必要な場合には、バット及びボールの質量として、各軸方向の慣性モーメントと衝突位置の関数として表される「有効質量」を使用する必要が生ずるケースもあり得る。また、反発係数ｅに関しても、衝突位置の関数として表される「見かけ上の反発係数」を使用しなければならないケースもあり得る。このようにして、衝突直後のボールの速度（ベクトル）を求めることができる。
【００７０】
次に、衝突直後のボールの回転（回転軸、回転量）について説明する。なお、後述するボール飛翔経路の算出において、ボールの回転を考慮しなくてもよい場合には、ボールの回転に係るデータの取得は不要である。
【００７１】
ボールの半径をｒ、衝突直前の角速度をω、衝突直後の角速度ω’とすると、衝突時にバットからボールが受けるバットの長軸方向の力積Ｆｘは、下記の式４によって求められる。なお、ｖｘは速度ｖの上記バットの長軸軸方向成分、ｖ’ｘは速度ｖ’の上記バットの長軸方向成分である。
−Ｆｘ＝ｍｖ’ｘ−ｍｖｘ          （式４）
【００７２】
上記の式４によって求められた力積Ｆｘを用いると、ボールの慣性モーメントをＩとすれば、以下の式５が導出される。
ω’−ω＝Ｆｘｒ／Ｉ            （式５）
但しω’、ωは、衝突前後のボールの回転角速度ω，ω’の上記バットの長軸方向成分を表している。
【００７３】
さらに、ボールＢが野球ボールのような、中実の球体の場合、慣性モーメントＩは、質量ｍと半径ｒとを用いて以下の式６によって与えられる。
Ｉ＝（２／５）ｍｒ２            （式６）
【００７４】
上記の式５、６より、衝突前後のボールの回転角速度ω，ω’の関係を示す以下の式７が得られる。
ω’＝ω＋（２／５ｍｒ）Ｆｘ                （式７）
【００７５】
このようにして、衝突直前のボールの回転角速度ωから衝突直後のボールの回転角速度ω’を求めることができる。なお、上述の計算においては、バットとボールとの間の転がり摩擦係数や滑り摩擦係数、衝突面の角度などについては考慮していないが、必要であれば、これらのパラメータも考慮することができる。
【００７６】
〔ボール飛翔経路の算出〕
上述のようにして、ボール飛翔のための初期条件（ボールの初速度（ベクトル）、回転軸の方向、回転量）が取得されると、次に、取得された初期条件に基づいてボールの飛翔経路が算出される。
【００７７】
ボールの飛翔経路の算出には、簡便な計算で済ませるものから、複雑な計算が必要なものまで、いくつかの手法が考えられる。
簡便な計算手法の一例は、衝突後のボールを質点として捉え、上記初期条件中、ボールの初速度（ベクトル）のみを用いて飛翔経路を算出するものであり、このようなケースでは、運動方程式から一般解を求めておき、そこに初速度（ベクトル）の成分を代入することにより飛翔経路が特定できる。なお、このケースでは、ボールの回転に係るデータは不要であり、初期条件として準備しておく必要はない。
【００７８】
やや複雑な計算を要する一例は、ボールを剛体として捉え、上記初期条件の全て（ボールの初速度（ベクトル）、回転軸の方向、回転量）を用いてボールの飛翔経路を算出するものである。このようなケースの飛翔経路演算（３次元飛翔軌道計算）の原理の一例は、概略以下とおりである。
【００７９】
ボールに作用する外力（ベクトル）としては、抗力Ｄ、揚力Ｌ、トルクＴ、重力が存在するが、抗力Ｄの大きさ｜Ｄ｜、揚力Ｌの大きさ｜Ｌ｜、トルクＴの大きさの大きさ｜Ｔ｜は、空気力係数である、抗力係数ＣＤ、揚力係数ＣＬ、流体トルク係数Ｃｍを用いてそれぞれ次のように表される。
｜Ｄ｜＝0.5ρ｜Ｕ｜２Ａ＊ＣＤ      （式８）
｜Ｌ｜＝0.5ρ｜Ｕ｜２Ａ＊ＣＬ      （式９）
｜Ｔ｜＝0.5ρ｜Ｕ｜２Ａｄ＊Ｃｍ      （式１０）
但し、ρ：空気の密度、｜Ｕ｜：ボールの飛翔速度の大きさ、Ａ：ボール直径断面積、ｄ：ボール直径である。
【００８０】
ここで、抗力係数ＣＤ、揚力係数ＣＬ、流体トルク係数Ｃｍの空気力パラメータは、近似的にボールの回転速度と飛翔速度の関数として表すことができる。なお、回転速度は流体トルクにより徐々に減少していくが、必要であれば、回転速度Ｎ（ｔ）の減少も以下のモデル式（式１１）に基づいて考慮すればよい。
Ｎ（ｔ＋Δｔ）＝−ρＡｄＣｍ（ｔ）｜Ｕ｜２Δｔ／（４πＩ）＋Ｎ（ｔ）  （式１１）
但し、Ｃｍ（ｔ）：時刻ｔにおける流体トルク係数、Ｉ：ボールの慣性モーメントである。
【００８１】
抗力（ベクトル）Ｄは、ボールの速度（ベクトル）Ｕと逆方向であること、揚力（ベクトル）Ｌは、ボールの速度（ベクトル）Ｕと回転軸ＺＲに直交すること等を考慮すれば、飛翔中のボールの運動方程式（微分方程式）を容易に導出することができ、ボールの初速度（ベクトル）、回転軸の方向、回転量を初期条件として与えれば、ボールの飛翔軌跡やボールの回転速度を数値計算（例えば、オイラー法）等により求めることができる。
【００８２】
更に複雑な計算手法として、ボールの飛翔をボールが流体中（空気中）を移動する運動として捉え、ボールに働く力をナビエ・ストークス方程式を用いて流体力学的に数値計算する手法も考えられる。しかしながら、この手法は、野球のボールの運動に対する精密な解析の必要性、演算処理に必要な時間や処理システムの能力等を勘案すれば、適用が限定されると考えられることもあり、詳細な説明は省略する。
【００８３】
なお、ボールが飛翔後に着地してランする場合のラン方向及び距離を求める必要がある場合には、例えば、ボールの着地時の速度（ベクトル）や回転速度、着地点の傾斜や動摩擦係数等に基づいて、ボールのバウンドや転がりを数値計算することで、ラン方向及び距離をシミュレーションすることができる。
【００８４】
また、ボールのバウンド挙動に関しては、地面の動摩擦係数により、ボールのスピンと速度が互いにエネルギーを与え合うことや、地面上方向の反射には反発係数がかかり減衰すること等を考慮する必要がある。また、ボールの転がりに関しては、地面の転がり抵抗による加速度を計算した上でボールの角速度を求め、角速度に基づいてボールの転がる距離を求めることができる。
【００８５】
次に、フリック操作の方向により、打撃後のボールの飛翔方向に影響を与えるための手法について説明する。
【００８６】
簡便な手法としては、ボールの初速度（ベクトル）ｖ’を球場平面に投影した射影ベクトルがフリック操作の方向に合致するように、ｖ’を球場平面に直交する軸の回りに回転させ、その結果得られたベクトルｖ’ ’をボールの初速度（ベクトル）として採用するようにすればよい。なお、回転軸の方向、回転量が必要な場合には、従前の値をそのまま利用するようにすればよい。
【００８７】
上記の簡便な手法を採用すると、場合によっては、バットスイングとボールの飛翔との間にやや違和感が生じることも考えられる。そのような違和感を解消するためには、例えば、バットスイングの開始時期を早めたり、遅らせたりするための時間間隔をフリック操作の方向の関数として設定しておき、バットスイングの基準時点に対して上記時間間隔を加算又は減算し、バットスイングの開始時期をフリック操作の方向に応じて変更するようにすればよい。このようにすれば、フリック操作の方向に応じてバットスイングの開始を早めたり、遅らせたりすることにより、バットとボールの衝突態様を変化させることができ、結果として、自然なバットスイングによりフリック操作の方向と略合致する方向にボールを飛翔させることができる。
【００８８】
以上、野球ゲームを例に説明したが、本発明は、これに限られるものではなく、ボールに打撃を与えて移動させるゲーム、例えば、サッカー、テニス、卓球、クリケット等にも適用可能であることはいうまでもない。
【００８９】
なお、前記システムを構成する各手段は、専用のハードウェアであってもよいが、コンピュータがプログラムを実行することにより各処理段階ごとに実現される仮想的手段（所謂、機能現手段）であってもよい。
【００９０】
また、前記システムは、ゲーム専用の装置に搭載されるものであってもよいが、ユーザが所持する携帯電話機、スマートフォン、ＰＤＡ（Personal Digital Assistant）、携帯型パーソナル・コンピュータ等の携帯端末に搭載されるものであってもよい。
【００９１】
さらに、前記システムは、ゲームを実行するための各処理が複数のコンピュータ等によって分散処理されるようなゲームシステムとしても構成できる。
【符号の説明】
【００９２】
１    ゲームシステム
２    ミートカーソル移動手段
３    ミートカーソル移動制限手段
４    オブジェクト位置判定手段
２０    サーバ
２１    ゲームサーバ
２２    データベースサーバ
３０    ユーザ端末
４０    ネットワーク
１１０、３１０    ＣＰＵ
１２０、３２０    ＲＯＭ
１３０、３３０    ＲＡＭ
１４０、３９０    補助記憶装置
１５０、４１０    通信制御部
１６０    入出力制御部
３４０    画像処理部
３５０    表示部
３６０    サウンド処理部
３７０    音声入力部
３８０    音声出力部
４２０    バスライン
６００    ゲーム画面
６０２    打者キャラクタ
６０３    投手キャラクタ
６０４、６１０    標識
６０５    ストライクゾーン
６０６    ホームベース
６０７    バット
６０８    ボール
６０９    ミートカーソル
【要約】      （修正有）【課題】バットスイングの打撃操作をミートカーソルの移動操作と独立して行うとともに、バットスイングの打撃操作とミートカーソルの移動操作との間の干渉を防止する。【解決手段】投球動作の完了とともにボールが表示されＳ１０３、ユーザはボールの移動経路を観察しミートカーソルをスワイプ操作により移動するＳ１０４。ボールが打撃位置から所定の範囲内に入ったか否かの判定を行いＳ１０５、是の場合は原則としてミートカーソルの移動操作は禁止されるが、打撃操作と干渉しない下方向への移動操作は許容されるＳ１０６。次にフリック操作を行って打撃操作を開始するＳ１０７。フリック操作の方向、スピードが取得されＳ１０８、これらの情報も考慮してボール飛翔のための初期条件の取得・飛翔経路の算出がなされるＳ１０９。【選択図】図５【図２Ａ】
0006050882.tif 000002
【図２Ｂ】
0006050882.tif 000003
【図３】
0006050882.tif 000004
【図４】
0006050882.tif 000005
【図５】
0006050882.tif 000006
【図６Ａ】
0006050882.tif 000007
【図６Ｂ】
0006050882.tif 000008
【図６Ｃ】
0006050882.tif 000009
【図６Ｄ】
0006050882.tif 000010
【図１】
0006050882.tif 000011