【文献】
「プロ野球スピリッツ2013 公式パーフェクトガイド」,日本,株式会社エンターブレイン,2013年 5月 2日,初版,p.008
【文献】
「プロ野球スピリッツ2014 公式パーフェクトガイド」,日本,株式会社KADOKAWA,2014年 5月 1日,初版,p.008
(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0010】
本発明の実施の形態の概要を例示的に列挙すると以下のとおりである。
〔形態1〕
本発明の実施の形態の概要を例示的に列挙すると以下のとおりである。
〔形態1〕
キャラクタのモーションに連動してオブジェクトをリリースし3次元仮想空間内を移動させるゲームシステムであって、
前記オブジェクトの到達目標の目安位置を示すカーソルをユーザの操作に応じて移動するカーソル移動手段と、
ユーザの操作に応じて前記キャラクタのモーションの開始の有無を判定するモーション開始判定手段と、
前記キャラクタのモーションの開始有と判定された場合に、前記オブジェクトの到達目標の目安位置を示すカーソルをユーザの操作に応じて移動する
ことを許可するカーソル移動許可手段と、
前記キャラクタのモーションの開始から所定の期間が経過したか否かの期間経過の有無を判定する期間経過有無判定手段と、
前記
期間経過有無判定手段からの
期間経過有との判定結果の出力を受けて前記カーソル移動手段の動作を禁止するカーソル移動禁止手段と、
を備え、前記
期間経過有無判定手段の前記
期間経過の有無の判定
結果に応じて、前記カーソルの移動を制限しない第1モードと前記カーソルの移動を禁止する第2モードとを切り換えることを特徴とするゲームシステム。
本形態1によれば、到達目標位置の設定操作からオブジェクトのリリースまでの流れの多様性を許容することにより操作の自由度を向上させることができるとともに、第1モードと第2モードの操作間の干渉を防止できる。
【0011】
〔形態2〕
形態1に記載のゲームシステムにおいて、前記所定の範囲は、前記モーションに関連付けられていることを特徴とするゲームシステム。
本形態2によれば、モーションの態様に適合した操作性を実現することができる。
【0012】
〔形態3〕
形態1又は2に記載のゲームシステムにおいて、前記カーソルの移動操作を操作面の任意の位置で行うことができるようにしたことを特徴とするゲームシステム。
本形態3によれば、カーソルの移動操作を、操作位置を特に意識することなく瞬時に実施することができ、操作の自由度を増大させるとともに、操作性の改善を図ることができる。
【0013】
〔形態4〕
形態1〜3に記載のゲームシステムにおいて、前記第2モードにおいて、前記オブジェクトの回転に係る属性を規定する操作が許容されることを特徴とするゲームシステム。
本形態4によれば、誤操作の発生を軽減できるとともに、余裕を持った設定操作が可能になる。
【0014】
〔形態5〕
形態4に記載のゲームシステムにおいて、前記オブジェクトの回転に係る属性を規定する操作がスワイプ操作であり、スワイプ方向により記オブジェクトの回転に係る属性の少なくとも1つが設定されることを特徴とするゲームシステム。
本形態5によれば、オブジェクトの回転に係る属性をスワイプ操作により簡便に設定することができる。
【0015】
〔形態6〕
形態5に記載のゲームシステムにおいて、前記第2モードにおいて、前記リリースのタイミングへの接近度合いに応じた表示がなされ、前記スワイプ操作のタイミングを前記リリースのタイミングに近接させる程、前記オブジェクトの前記到達目標への到達精度が向上することを特徴とするゲームシステム。
本形態6によれば、スワイプ操作のタイミングに応じて目標への到達精度を制御することができ、ゲームに対するユーザの関与の度合いを高めることができる。
【0016】
〔形態7〕
形態6に記載のゲームシステムにおいて、前記スワイプ操作のタイミングは、操作面を所定距離スライド操作する際の速度が所定値を超えた場合に設定されることを特徴とするゲームシステム。
本形態7によれば、操作面に対する接触の消滅を契機とすることなくタイミング設定を行うことができる。
【0017】
〔形態8〕
形態1〜7に記載のゲームシステムにおいて、前記オブジェクトの位置に連動したアニメーションが生成されることを特徴とするゲームシステム。
本形態8によれば、ゲームにおけるリアリティを増大させることができる。
【0018】
〔形態9〕
形態1〜8に記載のゲームシステムにおいて、ゲームが野球ゲームであり、前記オブジェクトが野球ボールであり、前記3次元仮想空間内のキャラクタの投球モーションにより前記野球ボールをリリースさせることを特徴とするゲームシステム。
本形態9によれば、野球ゲームに好適な態様を実現することができる。
【0019】
本発明の他の実施の形態は、上記各システムと略同様の内容を有する制御方法、及び、該方法をコンピュータにより実現するためのプログラムに係るものである。
そして、前記方法、及び、プログラムにおいても、前記システムと同様の作用効果を奏するものである。
【0020】
以下、本発明に係る実施の一形態を図面に基づいて詳細に説明する。なお、本発明は、以下において説明する実施の形態に限定されるべきではなく、特許請求の範囲の記載に基き解釈されるべきである。また、当業者であれば、他の類似する実施形態を使用することができること、また、本発明から逸脱することなく適宜形態の変更又は追加を行うことができることに留意すべきである。
【0021】
〔システムの構成の概要〕
図1は、本発明の実施の一形態に係るゲームシステム1の構成を示すブロック図である。ゲームシステム1は、カーソル移動手段2、
モーション開始判定手段3、カーソル移動
許可手段4
、期間経過有無判定手段5、カーソル移動禁止手段6を具備している。ゲームシステム1の各構成要素2〜
6の果たす機能の詳細については、以下において詳述する。
【0022】
〔システムのハードウェア構成の概要〕
図2Aは、本発明の一実施形態の基本的ハードウェア構成の概要を示す概念図であり、ハードウェア構成として、サーバ20と、ネットワーク40と、ネットワーク40を介してサーバ20と通信可能に接続できる各ユーザのユーザ端末30とを含むものである。
【0023】
サーバ20は、例えば、
図2Bに示すように、ゲームサーバ21とデータベースサーバ22とから構成されている。
【0024】
ゲームサーバ21は、ゲームサービスを受ける各ユーザのユーザ端末30からのネットワーク40を介したアクセスを受け付けて、各ユーザのゲーム情報をデータベースサーバ22に蓄積して管理し、各ユーザにネットワーク40を介したゲームサービスを提供する。
【0025】
データベースサーバ22は、各ユーザのゲーム履歴や獲得ポイント等のゲーム情報を蓄積して管理するためのサーバである。
【0026】
なお、サーバ20が、ゲームサーバ21、データベースサーバ22により構成される例を示すが、これに限定されるものではない。例えば、各サーバの有する各機能を複数のサーバに分散して持たせて複数台のサーバとして構成することもできる。また、ユーザの認証を行うための認証サーバや、ユーザが課金対象のアイテムをゲーム内で購入した場合に課金管理を行う課金管理サーバを別体に構成としてもよい。
【0027】
また、ゲームサービスを利用する多数のユーザのユーザ端末30からの巨大なアクセスにも耐え得るサーバシステムの構築が求められる場合には、複数のゲームサーバ21やデータベースサーバ22を設けて負荷分散型のシステム構成としてもよい。この場合、複数のゲームサーバ21やデータベースサーバ22間の負荷を調整するためのロードバランサを設けることが望ましい。
【0028】
ネットワーク40は、直接接続のための専用線(専用ケーブル)やイーサネット(登録商標)等によるLANの他、電話通信網やケーブル網等の通信網を含み、有線/無線を問わない。
【0029】
なお、提供されるゲームは、SNSプラットフォーム上で提供されるソーシャルゲームとすることができるが、SNSプラットフォームとは独立したゲームとして構築してもよい。提供されるゲームとして、野球、サッカー、テニス、卓球、クリケット等様々なゲーム形式・ジャンルのボールゲームを採用できる。
【0030】
以下の説明においては、提供されるゲームは、SNSプラットフォーム上で提供されるソーシャルゲームとし、ブラウザゲーム用のプログラム(アプリケーションソフトウェア)がゲームサーバに実装されており、ゲームサーバが、各ユーザのユーザ端末30における入力操作に応じてゲーム進行のための演算処理やデータ処理を実行するものとする。このようなケースにおいては、ゲームサーバは、ゲームの進行に伴ってデータベースサーバ内に格納されている各ユーザのゲーム情報を更新するとともに、ウェブページ情報(ゲーム画面データ)を各ユーザのユーザ端末30に送信する。
【0031】
各ユーザのユーザ端末30には、ウェブサイト閲覧機能を有するウェブブラウザが搭載されており、ゲームサーバから送信されたウェブページ情報をユーザ端末30の画面に表示することができるようになっている。このユーザ端末30としては、例えば、携帯電話端末、PHS(Personal Handy-phone System)端末、携帯情報端末(PDA:Personal Digital Assistant)、スマートフォン、パーソナルコンピュータまたはタブレット型コンピュータなど、様々な端末を採用できる。
【0032】
〔ゲームサーバ等の構成〕
ゲームサーバの具体的構成の一例を、
図3に基づいて以下説明する。同図に示すように、ゲームサーバは、主に、CPU(Central Processing Unit)110、ROM(Read Only Memory)120及びRAM(Random Access Memory)130等の主記憶装置、補助記憶装置140、通信制御部150、入出力制御部160を備えており、これらはアドレスバス、データバス、コントロールバス等を含むバスライン170を介して相互に接続されている。なお、バスライン170と各構成要素との間には適宜インタフェース回路(不図示)が介在している場合もある。
【0033】
CPU110は、ゲームサーバ全体の制御を行う。ROM120は、ゲームサーバの動作制御に必要なプログラム等を記憶している。RAM130は、各種プログラム及びデータを記憶するとともに、CPU110に対して作業領域を提供する。
【0034】
補助記憶装置140は、ゲームプログラム等のアプリケーションソフトウェアや各種データ等を格納する、例えば、ハードディスクドライブ等の記憶装置である。ゲームサーバを起動させるためのプログラムも、この補助記憶装置140に記憶されており、当該プログラムはゲームサーバの起動時に補助記憶装置140からバスライン170を介してRAM130へとロードされる。
【0035】
通信制御部150は、ネットワーク40と接続される通信インターフェース150aを備え、ネットワーク40を介した各ユーザのユーザ端末30との間の通信を制御する。また、ゲームがSNSプラットフォーム上で提供されるソーシャルゲームの場合には、通信制御部150は、SNSサーバ(不図示)との間の通信を制御する。
【0036】
入出力制御部160は、データベースサーバと通信可能に接続されており、CPU110がデータベースサーバに対してデータ(レコード)の読み書きを実行するときに入出力制御を行う。
【0037】
データベースサーバは、各ユーザのゲーム情報を記憶する領域を有する記憶装置として、例えばRAID(Redundant Arrays of Inexpensive Disks)構成の大容量ハードディスク装置を具備する。このデータベースサーバは、例えば、各ユーザを一意に識別する識別情報(ユーザID)に基づいて、各ユーザの各種ゲーム情報(ユーザ名、レベル、ゲーム内ポイント、所持アイテムなど)を管理するするリレーショナルデータベース、オブジェクトデータベース又はオブジェクト関係データベース等として構築することができる。
【0038】
次に、本実施の一形態に係るゲームサーバにアクセスしてゲームサービスの提供を受けるユーザのユーザ端末30の構成を説明する。
【0039】
〔端末装置の構成〕
ユーザ端末30として携帯端末を例に取り、
図4に基づきその構成を説明する。
図4に示すように、ユーザ端末30は、主に、CPU310と、主記憶装置としてのROM320及びRAM330と、画像処理部340と、表示部350と、サウンド処理部360と、音声入力部370と、音声出力部380と、補助記憶装置390と、操作入力部400と、通信制御部410とを備えており、構成要素310〜340、360および390〜410はバスライン420を介して相互に接続されている。なお、バスライン420と各構成要素との間にはインタフェース回路(不図示)が適宜介在している。
【0040】
CPU310は、ユーザ端末30全体の制御を行う。ROM320には、ユーザ端末3の動作制御に必要なプログラム等が記憶されている。また、RAM330には、ROM320または補助記憶装置390からロードされた各種プログラムやデータが記憶され、CPU310に対して作業領域を提供する。HTML等で記述されたゲーム画面データを表示するウェブブラウザは、ROM320または補助記憶装置390に記憶されており、RAM330にロードされてCPU310によって実行される。また、ウェブブラウザのブラウザ機能を拡張するための様々なプラグインソフトウェアを、ウェブブラウザと共にROM320または補助記憶装置390に記憶するようにしてもよい。
【0041】
画像処理部340は、CPU310からの画像表示命令に基づいて表示部350を駆動し、当該表示部350の画面に画像を表示させる。表示部350としては、液晶ディスプレイ等の種々の表示装置を採用できる。
【0042】
サウンド処理部360は、音声入力部370から音声が入力されたときにアナログ音声信号をデジタル音声信号に変換するとともに、CPU310からの発音指示に基づいてアナログ音声信号を生成して音声出力部380に出力する。音声入力部370は、ユーザ端末30に内蔵されたマイクロフォンからなり、電話通信する場合や録音を行う場合などに用いられる。音声出力部380は、電話通信時の受話スピーカおよび電話着信音やゲーム実行時の効果音などを出力するスピーカからなる。
【0043】
補助記憶装置390は、各種プログラムやデータ等を格納する記憶装置である。補助記憶装置390としては、携帯電話端末の内部メモリとして、例えばフラッシュメモリ等を用いることができ、また、携帯電話端末の外部メモリとして、例えばメモリカードリーダライタ等を用いることができる。
【0044】
操作入力部400は、ユーザの操作入力を受け入れて当該操作入力に対応した入力信号を、バスライン420を介してCPU310に出力するものである。操作入力部400の例としては、ユーザ端末30の本体に設けられた方向指示ボタン、決定ボタン、英数文字等入力ボタンなどの物理的ボタンがある。なお、表示部350をタッチ・スクリーンとして構成している場合には、当該タッチパネルが操作入力部400となる。
【0045】
通信制御部410は、通信インタフェース410aを備え、ゲーム操作時等にデータ通信するための通信制御機能および携帯電話端末として音声データを送受信するための通信制御機能等を有している。ここで、データ通信用の通信制御機能には、例えば、無線LAN接続機能、無線LANや携帯電話回線網を介したインターネット接続機能、近距離無線通信機能などが含まれる。通信制御部410は、CPU310からの命令に基づいてユーザ端末30を無線LANやインターネット等に接続するための接続信号を発信するとともに、通信相手側から送信されてきた情報を受信してCPU310へ供給する。
【0046】
なお、ユーザ端末30には、GPS(Global Positioning System)信号受信回路、CCD(Charge Coupled Device)イメージセンサ等の撮像装置(カメラ)、3軸加速度センサなどが備えられていてもよく、例えば、GPS位置情報などをゲーム内で活用してもよい。
【0047】
〔ゲームの処理の態様例〕
次に、本発明の実施の一形態に係るゲームシステムの処理の一例の概略を、
図5、
図6A〜
図6Dに示されるような野球ゲームの例に基づき説明する。
図5は、本発明の実施の一形態に係るゲームシステムの動作を示すフローチャートである。このフローチャートは、主として、投手キャラクタ603によりボール610が投球される場面を想定したものである。なお、本形態においては、打者キャラクタ602の打撃動作はゲームシステムにより制御されているものとする。
【0048】
メインメニュー画面(不図示)に表示される実行可能なゲームの中からユーザにより野球ゲームの実行が指示されると、野球ゲームが開始され(S101)、
図6Aに示すように、ゲーム画面600中に捕手キャラクタ601、打者キャラクタ602、投手キャラクタ603、ストライクゾーン604等を含む初期画面が表示される(S102)。
図6Aにおいて、ストライクゾーン604の中心に投球コース(ボールの到達目標)を指定するコース指定カーソル605が表示されている。また、コース指定カーソル605から放射状にスワイプ方向とストレート、カーブ等の球種との対応関係を示す球種表示606がなされている。ストライクゾーン604、コース指定カーソル605は、捕手キャラクタ601等の表示を遮ることがないように半透明表示とされている。なお、球種表示606を投手キャラクタ603の能力に依存させるようにし、投手キャラクタの能力に応じて特定の球種、例えば、フォークボール等を表示させないようにすることもできる。
【0049】
なお、
図6A〜
図6Dには、球場を投手キャラクタ603の後方から仮想カメラで撮影した画像が背景画像として表示されている。なお、広範囲に状況を確認できるように仮想カメラの視点を遠距離からの視点や俯瞰的な視点に変更することができる。
【0050】
次に、操作面の任意の位置をタッチすることにより投球動作が開始されたか否かの判定がなされる(S103)。判定結果が是であれば、
図6Bに示すように、スワイプ方向と球種との対応関係を示す表示が消去されるとともに、画面中のタッチ位置に相応する位置に操作指標607が表示される。また、ストライクゾーン604を囲む円608が表示される。そして、この状態で、操作指標607によるコース指定カーソル605の移動が許容される(S104)。判定結果が非であれば、ステップS102に戻る。
【0051】
コース指定カーソル605の移動が許容された状態において、操作面へのスワイプ操作により操作指標607を操作すると、コース指定カーソル605は、それに連動して移動する。コース指定カーソル605の移動は、操作面へのタッチのタイミング、即ち、投球動作の開始のタイミングを起点として所定の期間のみ許容されており、所定の期間が経過するとカーソル605の移動が禁止される。このため、投球動作のタイミングを始点として計時動作が開始され、所定の期間を経過したか否かの判定が行われる(S105)。なお、前記所定の期間を投球モーションに関連付け、投球モーションが所定のモーション態様に到達するまでの期間を所定の期間として設定するようにしてもよい。このようにすると、投球モーションに適合した操作性を実現することができる。
【0052】
上記判定において、所定の期間を経過したと判定された場合には、操作指標607によるコース指定カーソル605の移動が禁止される(S106)。また、所定の期間を経過していないと判定された場合には、ステップS104に戻る。
【0053】
このコース指定カーソル605の移動が禁止された状態において、操作面をスワイプすることにより、球種等の指定がなされる(S107)。例えば、スワイプ方向により球種が指定されるが、スワイプ操作によるタッチ情報の取得手法やスワイプ操作と球種等の指定との関連に関して詳細は後述する。
【0054】
なお、ステップS106において所定の期間を経過したと判定された場合には、コース指定カーソル605の移動の禁止と同時に計時が開始され、それに伴って、ストライクゾーン604を囲む円608の大きさが減少していく。そして、円608の大きさが極小になるタイミングが、投手キャラクタ603がボール610をリリースするタイミングに一致している。
【0055】
本態様では、スワイプ動作のタイミングがボールのリリースタイミングに近接するに従ってボールの到達位置精度(投球精度)を向上させるようにしている。そこで、ユーザが円608の大きさを視認しその大きさが極小になるタイミングでスワイプ操作を行えば、到達位置精度(投球精度)を最大にすることができる。このようにして、スワイプ操作のタイミングに基づくボールの到達位置精度(投球精度)の設定が行われる(S108)。なお、到達目標に対するボールの到達精度の制御手法の一例は後述する。
【0056】
なお、投球精度を連続する量として設定することは必ずしも必要ではなく、必要に応じて、投球精度を段階的に設定することもできる。また、スワイプ操作の遅れ等により、ボールのリリース時に投球精度や球種等の指定がなされなかった場合には、予め定められた特定の値に基づく制御を行うようにしてもよい。
【0057】
次に、ボールの飛翔パラメータの決定、及び、ボールの飛翔経路の演算・表示がなされる(S109)。
図6Dにボールのリリース後のゲーム画面の一例が表示されている。
【0058】
後述するように、リリース後に3次元仮想空間中を飛翔するボールの軌跡を正確に決定するためには、リリース直後のボールの速度ベクトル、回転軸、回転量をボール飛翔の初期条件として与えればよい。速度ベクトルは3次元の量、回転軸、回転量はそれぞれ1次元の量として把握できるから、ボール飛翔の初期条件として5つのパラメータを指定すれば、ボールの飛翔軌道が決定されることになる。
【0059】
一方、ユーザにより指定されるボールの到達目標(投球コース)は2次元の量として把握でき、2つのパラメータに相当することから、球種等を指定するためスワイプ操作により、残りの3つのパラメータを指定するようにすればよい。このための手法の一例は後述する。
【0060】
以下、タッチ情報の取得手法、到達目標に対するボールの到達精度の制御手法、ボール飛翔経路の算出の原理、ボールを到達目標位置近傍へ到達させるための手法について説明する。
【0061】
〔タッチ情報の取得手法〕
スワイプ操作によるタッチ情報の取得手法について説明する。
ユーザが画面にタッチ操作を行うと、タッチ・スクリーンへの物体の接触が検知され、操作の開始位置に相当するタッチ操作の始点位置が指定される。そして、所定周期(例えば、30fbpsのフレーム・レート)で、タッチ・スクリーン上でのタッチ位置を検知し記憶する。
【0062】
このようにして、タッチ位置の情報が順次取得され、前フレームのタッチ位置(ベクトル;2次元座標位置)と現フレームのタッチ位置(ベクトル;2次元座標位置)とから、タッチの移動方向及びタッチ間の距離を算出することができるとともに、算出した距離をフレームレートで割ることにより、タッチ操作のスピードが算出される。
【0063】
〔到達目標に対するボールの到達精度の制御手法〕
一実施形態では、ボールのリリースのタイミングに近いタイミングでスワイプ動作を行う程、到達目標に対するボールの到達精度を向上させるようにしている。このための制御手法の一例について以下説明する。
【0064】
例えば、ボールのリリースのタイミングまでの時間の減少とともに半径が減少していく同心円を考え、スワイプ動作時の当該同心円の内部領域における点Pをランダムに選択し、同心円の中心を原点とした場合のこのランダムに選択した点Pの座標を(p
x,p
y)とする。当初の到達目標の目安位置の座標(t
x,t
y)に、この座標(p
x,p
y)を加算した座標(t
x+p
x,t
y+p
y)を到達目標位置として設定すればよい。
【0065】
上記のような手法を採用すると、ボールのリリースのタイミングまでの時間が長いタイミングでスワイプ動作を行った場合には、同心円の半径が比較的大きい状態で同心円の内部領域における点Pがランダムに選択されることから、当初の到達目標の目安位置から大きく外れた点が到達目標位置として設定されるケースが生じる可能性がある。また、ボールのリリースのタイミングと近接したタイミングでスワイプ動作を行った場合には、同心円の半径が比較的小さい状態で同心円の内部領域における点Pがランダムに選択されることから、当初の到達目標の目安位置から大きく外れた点が到達目標位置として設定されるケースは生じ得なくなる。したがって、ボールのリリースのタイミングに近いタイミングでスワイプ動作を行う程、到達目標に対するボールの到達精度が向上することになる。
【0066】
〔ボール飛翔経路算出の原理的説明〕
3次元仮想空間中を飛翔するボールの軌跡を決定するためには、リリース直後のボールの速度ベクトル、回転軸、回転量をボール飛翔の初期条件として与えればよい。飛翔経路演算(3次元飛翔軌道計算)の原理の一例は、概略以下とおりである。
【0067】
ボールに作用する外力(ベクトル)としては、抗力D、揚力L、トルクT、重力が存在するが、抗力Dの大きさ|D|、揚力Lの大きさ|L|、トルクTの大きさの大きさ|T|は、空気力係数である、抗力係数C
D、揚力係数C
L、流体トルク係数C
mを用いてそれぞれ次のように表される。
|D|=0.5ρ|U|
2A*C
D (式1)
|L|=0.5ρ|U|
2A*C
L (式2)
|T|=0.5ρ|U|
2Ad*C
m (式3)
但し、ρ:空気の密度、|U|:ボールの飛翔速度の大きさ、A:ボール直径断面積、d:ボール直径である。
【0068】
ここで、抗力係数C
D、揚力係数C
L、流体トルク係数C
mの空気力パラメータは、近似的にボールの回転速度と飛翔速度の関数として表すことができる。なお、回転速度は流体トルクにより徐々に減少していくが、必要であれば、回転速度N(t)の減少も以下のモデル式(式11)に基づいて考慮すればよい。
N(t+Δt)=−ρAdC
m(t)|U|
2Δt/(4πI)+N(t) (式4)
但し、C
m(t):時刻tにおける流体トルク係数、I:ボールの慣性モーメントである。
【0069】
抗力(ベクトル)Dは、ボールの速度(ベクトル)Uと逆方向であること、揚力(ベクトル)Lは、ボールの速度(ベクトル)Uと回転軸Z
Rに直交すること等を考慮すれば、飛翔中のボールの運動方程式(微分方程式)を容易に導出することができ、ボールの初速度(ベクトル)、回転軸の方向、回転量を初期条件として与えれば、ボールの飛翔軌跡を数値計算(例えば、オイラー法)等により求めることができる。
【0070】
〔ボールを到達目標位置近傍へ到達させるための手法〕
上述のように、リリース直後のボールの速度ベクトル(初速度ベクトル)、回転軸、回転量を初期条件として与えれば、3次元飛翔軌道計算により、ボールの飛翔軌道を決定することができる。
【0071】
ピッチングの場合、ボールの到達目標は予め与えられており、また、ボールのリリース位置、及び、ボールのリリース位置から到達目標までの平面距離は略一定であるから、それらの前提の下で上記初期条件を設定することになる。ボールを到達目標位置近傍へ到達させるための手法の一例は、概略以下とおりである。
【0072】
まず、ボールの運動を近似的に地球重力場中を移動する質点の運動と仮定すると、初速度ベクトルV
0(3次元ベクトル)を指定すれば、前述の前提の下でボールの飛翔軌跡が決定される。したがって、到達目標の位置情報(2次元座標:(t
x,t
y))と初速度ベクトルV
0の大きさ|V
0|=v
0を与えると、前述の前提の下で、初速度ベクトルV
0が到達目標の位置情報(t
x,t
y)と初速度ベクトルV
0の大きさv
0との関数V
0(t
x,t
y,v
0)として決定されることになる。
【0073】
次に、ボールの運動が地球重力場中を移動する剛体の運動である場合の取扱いについて説明する。前記のように、ボールを質点と仮定した場合に到達目標の位置情報(t
x,t
y)と初速度ベクトルV
0の大きさv
0との関数として決定される初速度ベクトルV
0(t
x,t
y,v
0)を「仮決定初速度ベクトル」と呼ぶことにする。そうすると、仮決定初速度ベクトルV
0(t
x,t
y,v
0)、回転軸φ及び回転量Nを初期条件として与えることによりボールの飛翔軌道が決定されることになるが、この飛翔軌道は、ボールの回転軸φ及び回転量Nの寄与により到達目標を外れてしまう。そこで、飛翔軌道が到達目標を通過するようにするために、仮決定初速度ベクトルV
0(t
x,t
y,v
0)を補正する必要がある。
【0074】
このためには、例えば、仮決定初速度ベクトルV
0(t
x,t
y,v
0)を少しずつ修正してボール飛翔のシミュレーションを行うことも考えられるが、処理に要する時間や処理能力に制約があることを考慮すれば、この手法には困難性が予測される。そこで、回転軸φ及び回転量Nの寄与を考慮して到達目標を達成するために、仮決定初速度ベクトルV
0(t
x,t
y,v
0)を補正した初速度ベクトル(以下、「補正初速度ベクトルV
0’(t
x,t
y,v
0)」という)を事前に求め、5つのパラメータt
x,t
y,v
0,φ,Nをアドレスとする5次元テーブル(以下、「補正テーブル」という)の各アドレスで指定される領域に対応する補正初速度ベクトルV
0’(t
x,t
y,v
0)を格納するようにすればよい。
【0075】
補正テーブルの事前作成に当たっては、例えば、仮決定初速度ベクトルV
0(t
x,t
y,v
0)を、回転軸φ及び回転量Nの寄与を考慮し少しずつ修正してボール飛翔のシミュレーションを行い、到達目標を実現する仮決定初速度ベクトルV
0(t
x,t
y,v
0)を補正初速度ベクトルV
0’(t
x,t
y,v
0)として採用して、これを補正テーブルに格納するようにすればよい。なお、ボール飛翔のシミュレーションは、例えば、前述の「ボール飛翔経路算出の原理的説明」に基づいて行うようにすればよい。
【0076】
スワイプ操作により回転軸φ及び回転量N、初速度ベクトルV
0の大きさv
0を取得するためには、例えば、スワイプ操作の方向により回転軸φを指定し、スワイプ操作の距離により回転量Nを指定し、スワイプ操作のスピードにより初速度ベクトルV
0の大きさv
0を指定するようにすればよい。なお、スワイプ操作の方向のみを用いて球種の情報sを取得し、当該球種の情報sの関数として回転軸φ及び回転量Nの情報を取得するという簡便な手法を採用することもできる。この後者のケースにおいては、補正テーブルは(t
x,t
y,v
0,s)でアドレス指定される4次元テーブルとして構成できる。あるいは、回転軸φと回転量Nとの間に所定の関係が規定されている場合には、補正テーブルは(t
x,t
y,v
0,φ)でアドレス指定される4次元テーブルとして構成できる。
【0077】
また、特に、前者の場合、5次元補正テーブルのアドレス指定に使用される(t
x,t
y,v
0,φ,N)が、離散的に設定されている補正テーブルのアドレスと一致しないケースも想定される。このようなケースにおいては、例えば、(t
x,t
y,v
0,φ,N)で規定される5次元の点に近接する補正テーブルの複数のアドレスを選び、それらの複数のアドレスに格納されているV
0’(t
x,t
y,v
0)を読み出し、それらを適宜組み合わせ所定の重みをつけて加算する(所謂補間を行う)ことにより、近似的に対応する補正初速度ベクトルV
0’(t
x,t
y,v
0)を取得することができる。
【0078】
なお、上述の説明では、説明を簡潔化するために、5次元の点(t
x,t
y,v
0,φ,N)等を直接アドレス指定に使用するものとしていたが、t
x,t
y,v
0,φ,Nに対し、一対一写像f
1、f
2、f
3、f
4、f
5をそれぞれ適用して得られた(f
1(t
x),f
2(t
y),f
3(v
0),f
4(φ),f
5(N))をアドレスとして採用してもよい。このようにすると、アドレスを整数から成るアドレス(j,k,l,m,n)として整序することができる。このアドレス(j,k,l,m,n)から(t
x,t
y,v
0,φ,N)を復元するには、j,k,l,m,nに対し、写像f
1、f
2、f
3、f
4、f
5の逆写像f
1−1、f
2−1、f
3−1、f
4−1、f
5−1をそれぞれ適用すればよい。
【0079】
以上、野球ゲームを例に説明したが、本発明は、これに限られるものではなく、例えば、クリケット等にも適用可能であることはいうまでもない。
【0080】
なお、前記システムを構成する各手段は、専用のハードウェアであってもよいが、コンピュータがプログラムを実行することにより各処理段階ごとに実現される仮想的手段(所謂、機能現手段)であってもよい。
【0081】
また、前記システムは、ゲーム専用の装置に搭載されるものであってもよいが、ユーザが所持する携帯電話機、スマートフォン、PDA(Personal Digital Assistant)、携帯型パーソナル・コンピュータ等の携帯端末に搭載されるものであってもよい。
【0082】
さらに、前記システムは、ゲームを実行するための各処理が複数のコンピュータ等によって分散処理されるようなゲームシステムとしても構成できる。
【解決手段】投球動作の開始から所定期間、操作指標によるコース指定カーソルの移動が許容され、ボールのコース指定を行うことができる(S104、105)。所定期間の経過後は、ボールのコース指定が禁止され、スワイプ操作による球種等の指定が可能となる(S106、107)。指定されたコースや球種等に基づきボールの飛翔のための初期条件が取得され、飛翔経路の算出・表示がなされる(S109)。なお、スワイプ操作のタイミングにより、ボールの到達位置精度が設定される(S108)。