以下、本発明を実施するための形態について図面を参照して説明する。なお、各図において、各部の寸法及び縮尺は、実際のものと適宜に異ならせてある。また、以下に述べる実施の形態は、本発明の好適な具体例であるから、技術的に好ましい種々の限定が付されているが、本発明の範囲は、以下の説明において特に本発明を限定する旨の記載がない限り、これらの形態に限られるものではない。
[A.実施形態]
以下、本発明の実施形態を説明する。
[1.ゲームシステムの概要]
図1は、本実施形態に係るゲームシステム1の概要を説明するための説明図である。以下、図1を参照しつつ、ゲームシステム1の概要について説明する。
ゲームシステム1は、競技ゲームを実行可能な複数のゲーム装置10(10−1〜10−M)と、複数のゲーム装置10(10−1〜10−M)に対応して設けられた複数の表示装置30(30−1〜30−M)とを有する(Mは2以上の自然数)。以下では、複数のゲーム装置10−1〜10−Mのうち、m番目のゲーム装置10を、ゲーム装置10−mと称する場合がある(mは、1≦m≦Mを満たす自然数)。同様に、複数の表示装置30−1〜30−Mのうち、m番目の表示装置30を、表示装置30−mと称する場合がある。
本実施形態では、ゲーム装置10が家庭用のゲーム機器である場合を一例として説明する。但し、ゲーム装置10としては、任意の情報処理装置を採用しうる。例えば、ゲーム装置10は、店舗や遊戯施設等に設置された業務用のゲーム機器であってもよいし、携帯電話若しくはスマートフォン等のモバイル機器であってもよいし、また、パーソナルコンピュータ等の端末型の情報機器であってもよい。
ゲーム装置10−mは、ゲーム装置10−mに対応して設けられた表示装置30−mと通信可能である。そして、ゲーム装置10−mは、ゲーム装置10−mにおいて実行されている競技ゲームに関する画像を、ゲーム装置10−mに対応して設けられた表示装置30−mが具備する表示部31−mに表示させることができる。表示装置30としては、例えば、液晶ディスプレイ、テレビ受像機、又は、タッチパネル等が該当する。なお、表示装置30は、ヘッドマウントディスプレイ(HMD:Head Mounted Display)でもよい。また、表示装置30は、ゲーム装置10に含まれてもよい。
複数のゲーム装置10−1〜10−Mのうち一のゲーム装置10、例えば、ゲーム装置10−1は、ネットワークNWを介して、他のゲーム装置10、例えば、ゲーム装置10−2と通信可能である。具体的には、ゲーム装置10−1は、ゲーム装置10−2に対して、ゲーム装置10−1で実行されている競技ゲームに関する情報を送信する。また、ゲーム装置10−2は、ゲーム装置10−1に対して、ゲーム装置10−2で実行されている競技ゲームに関する情報を送信する。このため、各ゲーム装置10−mで実行されている競技ゲームに関する情報を、複数のゲーム装置10−1〜10−Mの間で共有させることができる。これにより、ゲーム装置10−1のユーザと、ゲーム装置10−2のユーザとは、競技ゲームにおいて対戦すること、又は、競技ゲームにおいて互いに協力してミッションなどをクリアすることが可能である。本実施形態では、ゲーム装置10−1のユーザと、ゲーム装置10−2のユーザとが、競技ゲームにおいて対戦する場合について説明する。
なお、本実施形態では、一例として、ゲーム装置10同士がネットワークNWを介して通信しつつ競技ゲームを実行する場合を例示するが、本発明はこのような態様に限定されるものではない。例えば、ゲーム装置10は、他のゲーム装置10と、赤外線通信若しくはBluetooth(登録商標)等の近距離無線通信により、ネットワークNWを介さずに直接に通信可能であってもよいし、又は、ケーブル等で直接接続して通信可能であってもよい。また、ゲームシステム1は、複数のゲーム装置10間の通信を制御するサーバ装置を有してもよい。この場合、複数のゲーム装置10間の通信を制御するサーバ装置は、ネットワークNWに接続されてもよい。また、各ゲーム装置10は、他のゲーム装置10と通信することなく、単独で競技ゲームを実行可能であってもよい。この場合、各ゲーム装置10のユーザは、単独で競技ゲームをプレイすることが可能である。
また、本実施形態では、一例として、各ゲーム装置10が単一のユーザにより操作される場合を想定するが、本発明はこのような態様に限定されるものではなく、複数のユーザが単一のゲーム装置10を操作することで、単一のゲーム装置10を操作する複数のユーザが対戦可能(又は、協力可能)であってもよい。
また、本実施形態において、ゲーム装置10で実行される競技ゲームとは、例えば、一の選手が放った物体に対して、一の選手の対戦相手である他の選手が所定の作用を及ぼす競技を仮想空間でゲーム要素を用いて実行するゲームである。ここで、「仮想空間」とは、ゲーム装置10上の仮想的な空間であり、ゲームに係る仮想的な物体等が存在する空間である。「ゲームに係る仮想的な物体」は、「ゲーム要素」の一例であり、例えば、ゲームに係るキャラクタ、及び、ゲームに係るオブジェクトを含む概念であってもよい。例えば、競技ゲームが野球ゲームである場合、「ゲームに係る仮想的な物体」は、投手キャラクタ、打者キャラクタ及びボールオブジェクト等であり、「所定の作用」は、ボールを打ち返すことである。また、「ゲーム要素」は、「仮想空間に存在する仮想的な物体」に限定されず、「仮想空間を撮像する仮想カメラ」であってもよい。例えば、「ゲーム要素」は、フライトシミュレーターのパイロットの視点から仮想空間を撮像する仮想カメラであってもよいし、サバイバルゲームの主人公の視点から仮想空間を撮像する仮想カメラであってもよい。
「一の選手が放った物体に対して、一の選手の対戦相手である他の選手が所定の作用を及ぼす競技」としては、例えば、野球、ソフトボール、クリケット、サッカー、テニス、卓球及びバレーボール等の球技全般が該当する。「所定の作用」は、例えば、ボールを打ち返すことであってもよいし、ゴールへのボールの進入を阻止することであってもよい。
すなわち、ゲーム装置10で実行される競技ゲームは、野球ゲーム、ソフトボールゲーム、クリケットゲーム、サッカーゲーム、テニスゲーム、卓球ゲーム及びバレーボールゲーム等の球技ゲームである。本実施形態では、ゲーム装置10−1、10―2で実行される競技ゲームが野球ゲームである場合について説明する。この場合、ゲーム装置10−1、10―2の一方は、「第1ゲーム装置」の一例であり、ゲーム装置10−1、10―2の他方は、「第2ゲーム装置」の一例である。また、例えば、ゲーム装置10−1が「第1ゲーム装置」の一例で、ゲーム装置10−2が「第2ゲーム装置」の一例である場合、表示部31−1は、「第1表示部」の一例であり、表示部31−2は、「第2表示部」の一例である。
[2.野球ゲームの概要]
図2を参照しつつ、本実施形態に係るゲーム装置10において実行される野球ゲームの概要について説明する。
図2は、表示部31に表示される仮想空間SPの一例を示す説明図である。野球ゲームでは、表示部31に表示される仮想空間SPは、例えば、野球場を仮想的に実現した空間である。従って、仮想空間SPには、投手に対応する投手キャラクタCpt、打者に対応する打者キャラクタCbt、ボールに対応するボールオブジェクトObl及びピッチャープレートに対応するプレートオブジェクトOpl等が存在する。なお、図2のホームベースオブジェクトOhbは、ホームベースに対応するオブジェクトを示し、バットオブジェクトObtは、バットに対応するオブジェクトを示す。図2では、図を見やすくするために、キャッチャーに対応するキャッチャーキャラクタ及び審判に対応する審判キャラクタ等の記載を省略している。
図2に示す仮想空間SPは、例えば、投手キャラクタCptの後方(後頭部側)にある仮想カメラ(視点)からの画像であり、投手キャラクタCptの操作に使用されるゲーム装置10(例えば、ゲーム装置10−1)に対応する表示部31に表示される。また、図示していないが、打者キャラクタCbtの操作に使用されるゲーム装置10(例えば、ゲーム装置10−2)に対応する表示部31には、例えば、打者キャラクタCbtの後方(後頭部側)にある仮想カメラ(視点)からの画像が表示される。
野球ゲームでは、投手キャラクタCptが投げたボールオブジェクトOblを打者キャラクタCbtが打ち返す対戦が実行される。ゲーム装置10−1のユーザ及びゲーム装置10−2のユーザは、守備側の選手に対応する守備キャラクタを操作する守備操作と、攻撃側の選手に対応する攻撃キャラクタを操作する攻撃操作とを、交互に実行する。なお、守備キャラクタには、投手キャラクタCpt及びキャッチャーキャラクタ等が含まれ、攻撃キャラクタには、打者キャラクタCbt及び走者に対応する走者キャラクタ等が含まれる。
例えば、ゲーム装置10−1のユーザが守備操作を行う場合、ゲーム装置10−2のユーザは、攻撃操作を行う。この場合、ゲーム装置10−1のユーザは、投手キャラクタCptにボールオブジェクトOblを投球させるために、投手キャラクタCptが投球するボールオブジェクトOblの球種及びコース等を選択する操作を、ゲーム装置10−1を用いて行う。そして、ゲーム装置10−2のユーザは、投手キャラクタCptが投げたボールオブジェクトOblを打ち返すために、打者キャラクタCbtにバットオブジェクトObtを振らせる操作をゲーム装置10−2を用いて行う。なお、攻撃と守備とが交代して、ゲーム装置10−1のユーザが攻撃操作を行う場合、ゲーム装置10−2のユーザは、守備操作を行う。
以下では、投手キャラクタCptがボールオブジェクトOblを投球してから打者キャラクタCbtがボールオブジェクトOblを打ち返すまでの動作を中心に例示にして、ゲーム装置10の構成及び動作等を説明する。なお、野球ゲームの守備時の動作や他の試合中の他の状況の説明については省略する。
[3.ゲーム装置の構成]
以下、図3及び図4を参照しつつ、ゲーム装置10の構成について説明する。
図3は、ゲーム装置10の構成の一例を示す機能ブロック図である。ゲーム装置10は、ゲーム制御部110と、各種情報を記憶する記憶部130と、他のゲーム装置10等の外部装置との間の通信を実行するための通信部150と、ゲーム装置10のユーザにより操作されるゲームコントローラ等の操作部170と、光ディスク等の記録媒体から情報を読み込むための情報読込部190とを有する。なお、通信部150は、表示装置30に対しては、表示部31に表示される画像IMGの画像データを出力する。
ゲーム制御部110は、ゲーム装置10の各部を制御する。さらに、ゲーム制御部110は、ゲーム装置10において実行される野球ゲーム等の競技ゲームの進行を制御する。例えば、ゲーム制御部110は、操作受付部1101、情報生成部1102、表示制御部1103、情報共有処理部1104及び球速設定部1105(「速度設定部」の一例)を有する。操作受付部1101は、投球操作受付部111及び打撃操作受付部121を有する。情報生成部1102は、投球情報生成部112及び打撃情報生成部122を有する。表示制御部1103は、守備表示制御部113及び攻撃表示制御部123を有する。情報共有処理部1104は、投球情報共有処理部114及び打撃情報共有処理部124を有する。球速設定部1105は、第1球速設定部115及び第2球速設定部125を有する。
なお、ゲーム装置10−1が「第1ゲーム装置」の一例で、ゲーム装置10−2が「第2ゲーム装置」の一例である場合、ゲーム装置10−1の表示制御部1103は、「第1表示制御部」の一例であり、ゲーム装置10−2の表示制御部1103は、「第2表示制御部」の一例である。また、ゲーム装置10−1が「第1ゲーム装置」の一例で、ゲーム装置10−2が「第2ゲーム装置」の一例である場合、ゲーム装置10−1の球速設定部1105は、「第1速度設定部」の一例であり、ゲーム装置10−2の球速設定部1105は、「第2速度設定部」の一例である。
投球操作受付部111、投球情報生成部112、守備表示制御部113、投球情報共有処理部114及び第1球速設定部115は、ゲーム装置10の操作対象が投手キャラクタCplを含む守備キャラクタである場合(すなわち、守備操作が実行される場合)に動作する。また、打撃操作受付部121、打撃情報生成部122、攻撃表示制御部123、打撃情報共有処理部124及び第2球速設定部125は、ゲーム装置10の操作対象が打者キャラクタCbtを含む攻撃キャラクタである場合(すなわち、攻撃操作が実行される場合)に動作する。
以下では、投手キャラクタCplの操作に使用されるゲーム装置10は、投手側のゲーム装置10とも称され、打者キャラクタCbtの操作に使用されるゲーム装置10は、打者側のゲーム装置10とも称される。例えば、ゲーム装置10−1が投手キャラクタCplの操作に使用され、ゲーム装置10−2が打者キャラクタCbtの操作に使用される場合、ゲーム装置10−1は、投手側のゲーム装置10とも称され、ゲーム装置10−2は、打者側のゲーム装置10とも称される。また、投手側のゲーム装置10に対応する表示部31は、投手側の表示部31とも称され、打者側のゲーム装置10に対応する表示部31は、打者側の表示部31とも称される。
先ず、守備操作が実行される場合に動作する投球操作受付部111、投球情報生成部112、守備表示制御部113、投球情報共有処理部114及び第1球速設定部115について説明する。
投手側のゲーム装置10の投球操作受付部111は、ゲーム装置10のユーザが操作部170を操作した場合に、当該操作の内容を受け付ける。例えば、投球操作受付部111は、ボールオブジェクトOblを投手キャラクタCptに投球させる操作(以下、「投球操作」とも称する)を操作部170を介して受け付ける。なお、投球操作は、例えば、投手キャラクタCptが投げるボールオブジェクトOblの球種及びコース等を選択する操作である。球種には、球速が含まれてもよい。なお、投手側のゲーム装置10の投球操作受付部111は、ゲーム装置10のユーザが操作部170を操作しなかった場合には、ゲーム装置10のユーザが操作部170を操作していないことを示す情報を受け付けてもよい。
投手側のゲーム装置10の投球情報生成部112は、投手キャラクタCptにより投球されるボールオブジェクトOblに関する投球情報を、投球操作受付部111の受け付け結果(すなわち、ユーザによる投球操作の結果)に基づいて生成する。例えば、投球情報は、仮想空間SPにおけるボールオブジェクトOblの移動に関する情報である。具体的には、投球情報は、投球操作受付部111の受け付け結果に応じて決定された“球種”、“球種及びコース”、又は、“球種、球速及びコース”等に従ってボールオブジェクトOblを投球する投手キャラクタCptの動作(以下、「投球動作」とも称する)の開始等を指示する情報である。
投手側のゲーム装置10の守備表示制御部113は、表示部31にボールオブジェクトObl等を表示させる。例えば、守備表示制御部113は、投球操作受付部111の受け付け結果に応じて決定された球種及びコースと後述する第1球速設定部115で設定された移動速度とに従って移動するボールオブジェクトOblを表示部31に表示させる。ここで、ボールオブジェクトOblの移動速度は、ボールオブジェクトOblが野球ゲームに係る仮想空間SPを移動する速度であり、球速に対応する。ボールオブジェクトOblの移動速度の詳細は、第1球速設定部115の動作を説明する際に説明する。
投手側のゲーム装置10の投球情報共有処理部114は、投球情報生成部112により生成された投球情報を、打者側のゲーム装置10に送信する。この結果、打者側の表示部31には、投手側のゲーム装置10から送信された投球情報に基づく移動速度で移動するボールオブジェクトOblが表示される。すなわち、投球情報共有処理部114は、打者キャラクタCbtの操作に使用される他のゲーム装置10に対応する他の表示部31に投球情報に基づく移動速度で移動するボールオブジェクトOblを表示させるために、投球情報を他のゲーム装置10に送信する。
以下では、投手側の表示部31に表示されるボールオブジェクトOblの移動速度を移動速度Vptと称し、打者側の表示部31に表示されるボールオブジェクトOblの移動速度を移動速度Vbtと称する場合もある。また、移動速度Vpt及び移動速度Vbtを総称して移動速度Vと称する場合もある。
投手側のゲーム装置10の第1球速設定部115は、表示部31に表示されるボールオブジェクトOblの移動速度Vptを、打者側の表示部31に表示されるボールオブジェクトOblの移動速度Vbtよりも遅い速度に設定する。例えば、第1球速設定部115は、表示部31に表示されるボールオブジェクトOblの移動速度Vptを、投球操作受付部111の受け付け結果に応じて決定された球速よりも遅い速度に設定する。以下では、投球操作受付部111の受け付け結果に応じて決定された球速、すなわち、投球操作で選択された球速を球速Vsと称する場合もある。
ここで、ボールオブジェクトOblの移動速度Vは、上述したように、ボールオブジェクトOblが野球ゲームに係る仮想空間SPを移動する速度である。例えば、ボールオブジェクトOblの移動速度Vは、ボールオブジェクトOblが投手キャラクタCptからリリースされてから仮想空間SPにおける基準位置(例えば、ホームベースオブジェクトOhb)に到達するまでの時間(以下、「移動時間」とも称する)に応じて算出される。ボールオブジェクトOblが投手キャラクタCptからリリースされるとは、例えば、ボールオブジェクトOblが投手キャラクタCptの手から離れることである。
具体的には、仮想空間SPにおけるボールオブジェクトOblのリリース位置から基準位置までの距離が、プレートオブジェクトOplからホームベースオブジェクトOhbまでの距離Dである場合、移動時間をTMとすると、移動速度Vは、“(1/TM)*D”で表される。また、移動速度Vは、フレーム数を用いて表されてもよい。例えば、ボールオブジェクトOblが投手キャラクタCptからリリースされてから仮想空間SPにおける基準位置に到達するまでの表示に用いられるフレーム数を所要フレーム数Fnumとし、フレームレートをFratとすると、移動時間TMは、“(Fnum/Frat)”で表される。すなわち、移動速度Vは、“(1/(Fnum/Frat))*D”で表される。従って、ボールオブジェクトOblの移動速度Vの設定は、移動時間TMを設定することにより実現されてもよいし、所要フレーム数Fnumを設定することにより実現されてもよい。
さらに、投手側のゲーム装置10の第1球速設定部115は、表示部31に表示されるボールオブジェクトOblの移動速度Vptを打者側の表示部31に表示されるボールオブジェクトOblの移動速度Vbtに比べて遅くする程度を示す調整量(以下、「速度調整量」とも称する)を、打者側のゲーム装置10との通信状況に応じて決定する。打者側のゲーム装置10との通信状況は、投手側のゲーム装置10と打者側のゲーム装置10との間の通信にかかる時間、通信速度、通信遅延の有無又は通信遅延の程度等である。第1球速設定部115による速度調整量の決定方法は、後述する図6で説明する。
次に、攻撃操作が実行される場合に動作する打撃操作受付部121、打撃情報生成部122、攻撃表示制御部123、打撃情報共有処理部124及び第2球速設定部125について説明する。
打者側のゲーム装置10の打撃操作受付部121は、ゲーム装置10のユーザが操作部170を操作した場合に、当該操作の内容を受け付ける。例えば、打撃操作受付部121は、投手キャラクタCptが投げたボールオブジェクトOblを打者キャラクタCbtが打ち返すための操作(以下、「打撃操作」とも称する)を操作部170を介して受け付ける。すなわち、打撃操作受付部121は、打撃操作を受け付ける。なお、打者側のゲーム装置10の打撃操作受付部121は、ゲーム装置10のユーザが操作部170を操作しなかった場合には、ゲーム装置10のユーザが操作部170を操作していないことを示す情報を受け付けてもよい。
打者側のゲーム装置10の打撃情報生成部122は、表示部31に表示される仮想空間SPにおける基準面(「所定の領域」の一例)にボールオブジェクトOblが到達した場合、基準面にボールオブジェクトOblが到達したことを示す到達情報を生成する。基準面は、投手キャラクタCptにより投球されたボールオブジェクトOblが、打者キャラクタCbtがボールオブジェクトOblを打ち返したか否かに拘わらず、到達する領域である。例えば、基準面は、ホームベースオブジェクトOhbの一部を含む領域、又は、キャッチャーミットに対応するキャッチャーミットオブジェクトの一部含む領域等である。なお、基準面は、例えば、ホームベースオブジェクトOhbより投手キャラクタCpt側の位置に設定されてもよい。また、上述の移動速度Vの算出に用いた基準位置は、基準面と同じ位置であってもよいし、基準面と異なる位置であってもよい。以下では、ホームベースオブジェクトOhbが設置される面に垂直で、ホームベースオブジェクトOhbの投手キャラクタCpt側の辺を含む面を基準面として説明する。
さらに、打撃情報生成部122は、投手キャラクタCptが投げたボールオブジェクトOblに対する打撃に関する打撃情報を、打撃操作受付部121の受け付け結果(すなわち、ユーザによる打撃操作の結果)に基づいて生成する。打撃情報は、打者側のゲーム装置10のユーザにより打者キャラクタCbtに対して実行された打撃操作(すなわち、打撃操作受付部121が受け付けた打撃操作)に基づく打撃を実行した結果を含む情報である。例えば、打撃情報には、ボールオブジェクトOblにバットオブジェクトObtが当たったか空振りしたかを示す打撃結果、ボールオブジェクトOblにバットオブジェクトObtが当たった場合のボールオブジェクトOblの軌道(バットオブジェクトObtに当たった後のボールオブジェクトOblの軌道)を示す情報等が含まれる。すなわち、打撃情報には、ボールオブジェクトOblの移動方向、移動速度及び落下地点を示す情報も含まれる。なお、打撃情報生成部122は、ボールオブジェクトOblが基準面に到達するまでに、打撃操作が実行されなかった場合、打撃操作が実行されなかったことを示す打撃情報を生成する。
打者側のゲーム装置10の攻撃表示制御部123は、表示部31にボールオブジェクトObl等を表示させる。例えば、攻撃表示制御部123は、投手側のゲーム装置10から受信した投球情報に基づく球種、球速及びコース等に従って移動するボールオブジェクトOblを表示部31に表示させる。なお、投球情報に基づく球速は、後述する第2球速設定部125により設定される。すなわち、攻撃表示制御部123は、第2球速設定部125で設定された移動速度Vbtで移動するボールオブジェクトOblを表示部31に表示させる。
打者側のゲーム装置10の打撃情報共有処理部124は、打撃情報生成部122により生成された到達情報及び打撃情報を、投手側のゲーム装置10に送信する。この結果、投手側の表示部31には、打者側のゲーム装置10から送信された到達情報及び打撃情報に基づく打撃を演出した画面が表示される。
打者側のゲーム装置10の第2球速設定部125は、投手側のゲーム装置10から受けた投球情報に基づく移動速度(例えば、投球操作で選択された球速Vs)を、表示部31に表示されるボールオブジェクトOblの移動速度Vbtとして設定する。すなわち、打者側の表示部31には、投手側のゲーム装置10のユーザが選択した球速Vsに基づく移動速度Vbt(=Vs)で移動するボールオブジェクトOblが表示される。
記憶部130は、ゲーム装置10において実行される野球ゲームの進行に必要な各種情報と、ゲーム装置10の制御プログラムRPGとを記憶する。制御プログラムRPGは、ゲーム装置10を制御するプログラムである。本実施形態では、制御プログラムRPGは、例えば、ゲーム装置10の各部を制御するためのオペレーションシステムプログラム、及び、ゲーム装置10が野球ゲームを実行するためのアプリケーションプログラム(「野球ゲームのゲームプログラム」の一例)を含む。このうち、アプリケーションプログラムは、例えば、ゲーム装置10のユーザが野球ゲームを開始する場合に、情報読込部190から読み込まれて、記憶部130に記憶されるものであってもよい。なお、ゲーム装置10の構成は、図3に示す例に限定されない。
図4は、ゲーム装置10のハードウェア構成の一例を示す構成図である。
ゲーム装置10は、ゲーム装置10の各部を制御するプロセッサ11と、各種情報を記憶するメモリ13と、ゲーム装置10の外部に存在する外部装置との通信を行うための通信装置15と、ゲーム装置10のユーザによる操作を受け付けるための入力操作装置17と、記録媒体から情報を読み込むためのディスク装置19とを有する。
メモリ13は、例えば、プロセッサ11の作業領域として機能するRAM(Random Access Memory)等の揮発性メモリと、ゲーム装置10の制御プログラムRPG等の各種情報を記憶するEEPROM(Electrically Erasable Programmable Read-Only Memory)等の不揮発性メモリとを含み、記憶部130としての機能を提供する。
プロセッサ11は、例えば、CPU(Central Processing Unit)であり、メモリ13に記憶された制御プログラムRPGを実行し、当該制御プログラムRPGに従って動作することで、ゲーム制御部110として機能する。
通信装置15は、有線ネットワーク及び無線ネットワークの一方又は双方を介して、ゲーム装置10の外部に存在する外部装置との通信を行うためのハードウェアであり、通信部150としての機能を提供する。
入力操作装置17は、ゲーム装置10のユーザの操作を受け付ける操作部170としての機能を提供する。入力操作装置17は、例えば、操作ボタン、タッチパネル、キーボード、ジョイスティック、及び、マウス等のポインティングデバイスの一部又は全部を含む、1又は複数の機器から構成されるものであってもよい。
ディスク装置19は、例えば、光ディスク装置であり、光ディスク等の記録媒体に記録された制御プログラムRPG等の各種情報を読み込む情報読込部190としての機能を提供する。
なお、プロセッサ11は、CPUに加え、又は、CPUに替えて、GPU(Graphics Processing Unit)、DSP(Digital Signal Processor)、又は、FPGA(Field Programmable Gate Array)、等の、ハードウェアを含んで構成されるものであってもよい。この場合、プロセッサ11により実現されるゲーム制御部110の一部又は全部は、DSP等のハードウェアにより実現されてもよい。
[4.ゲーム装置の動作]
図5乃至図9を参照しつつ、ゲーム装置10−1のユーザと、ゲーム装置10−2のユーザとが、野球ゲームにおいて対戦する場合における、ゲーム装置10−1及びゲーム装置10−2の動作の一例を説明する。
図5は、ゲームシステム1の動作の一例を示すシーケンスチャートである。なお、図5は、ゲーム装置10−1のユーザが投手キャラクタCptを操作し、ゲーム装置10−2のユーザが打者キャラクタCbtを操作する場合における、ゲーム装置10−1及びゲーム装置10−2の動作の一例を示すシーケンスチャートである。以下では、投手側のゲーム装置10−1を操作するユーザは、投手側のユーザとも称され、打者側のゲーム装置10−2を操作するユーザは、打者側のユーザとも称される。
また、図5の時刻T20、T22、T23、T50、T52及びT60は、例えば、ゲーム装置10−1に含まれるカウンターのカウント値に対応する時刻であってもよい。また、図5の時刻T30、T32、T40及びT42は、例えば、ゲーム装置10−2に含まれるカウンターのカウント値に対応する時刻であってもよい。なお、本実施形態では、便宜上、ゲーム装置10−1に含まれるカウンターのカウント値のカウントアップの間隔と、ゲーム装置10−2に含まれるカウンターのカウント値のカウントアップの間隔とが、略同一である場合を例示するが、当該2つの間隔は異なっていてもよい。ゲーム装置10が実行する処理には、ゲーム処理と描画処理の2種類があるが、図5の時刻T20等は、例えば、ゲーム処理に関する時刻である。
先ず、時刻T20において、球速100km/hで投球させるための投球操作を投手側のユーザがゲーム装置10−1の操作部170に対して入力すると、ゲーム装置10−1の投球操作受付部111は、ユーザによる投球操作を受け付ける(S100)。なお、上述の“球速100km/h”等の数値例は、ゲーム内で定義している仮想の時速を示している。したがって、第1球速設定部115により設定される移動速度Vpt及び第2球速設定部125により設定される移動速度Vbtは、実際の時速でもよいし、実際の時速と異なる時速でもよい。投球操作受付部111が投球操作を受け付けると、投球情報生成部112が投球操作受付部111で受け付けた投球操作に基づいて投球情報を生成し、投球情報生成部112で生成された投球情報を投球情報共有処理部114がゲーム装置10−2に送信する(S104)。
時刻T22において、ゲーム装置10−1の守備表示制御部113は、投球操作受付部111が受け付けた投球操作に基づいて、投球画面を表示部31に表示させる(S108)。投球画面は、投手キャラクタCptにより投球されるボールオブジェクトOblが表示される画面である。なお、図5に示す例では、投球画面には、投手キャラクタCptの投球動作が表示される画面も含まれる。この場合、投球画面の表示が開始される時刻T22より、投球動作の表示時間分だけ後の時刻T23において、ボールオブジェクトOblが投手キャラクタCptからリリースされる。
また、時刻T20から時刻T22までの間に、ボールオブジェクトOblの球種及びコースが投球操作受付部111の受け付け結果に応じて決定され、ボールオブジェクトOblの球速(移動速度Vpt)が第1球速設定部115で設定される。例えば、第1球速設定部115は、ボールオブジェクトOblの球速(ボールオブジェクトOblが仮想空間SPを移動する移動速度Vpt)を、投球操作で選択された球速(100km/h)より遅い80km/hに設定する。
時刻T30において、ゲーム装置10−2は、投球情報をゲーム装置10−1から受信する(S200)。ゲーム装置10−2がゲーム装置10−1から投球情報を受信すると、ゲーム装置10−2の第2球速設定部125は、ゲーム装置10−1から受信した投球情報に基づいて、ボールオブジェクトOblの球速(移動速度Vbt)を、投球操作で選択された球速(100km/h)に設定する。
時刻T32において、ゲーム装置10−2の攻撃表示制御部123は、ゲーム装置10−1から受信した投球情報に基づいて、投球画面を表示部31に表示させる(S204)。ゲーム装置10−2では、ボールオブジェクトOblの球速が、投球操作で選択された球速(100km/h)に設定されるため、ボールオブジェクトOblは、投手側のゲーム装置10−1の投球操作受付部111が受け付けた投球操作に応じて決定された球種、球速及びコースに従って仮想空間SP内を移動する。
また、ゲーム装置10−1からネットワークNWを介してゲーム装置10−2に投球情報が送信されるため、ゲーム装置10−2では、ゲーム装置10−1において投球画面の表示が開始される時刻T22より、通信時間分だけ後の時刻T32に投球画面の表示が開始される。なお、通信時間は、例えば、2つのゲーム装置10の一方のゲーム装置10が情報(例えば、投球情報等)を送信してから、他方のゲーム装置10が情報を受信するまでの時間である。
時刻T40において、打者側のユーザがボールオブジェクトOblを打ち返すための打撃操作をゲーム装置10−2の操作部170に対して入力すると、ゲーム装置10−2の打撃操作受付部121は、ユーザによる打撃操作を受け付ける(S206)。例えば、打者側のユーザは、ボールオブジェクトOblがホームベースオブジェクトOhbに到達するタイミングに合わせて、打者キャラクタCbtがバットオブジェクトObtを振るように、打撃操作を入力する。そして、ゲーム装置10−2の打撃情報生成部122は、打撃操作受付部121で受け付けた打撃操作とボールオブジェクトOblの仮想空間SPにおける位置とに基づいて打撃情報を生成する。打撃情報生成部122で生成された打撃情報は、打撃情報共有処理部124によりゲーム装置10−1に送信される(S210)。
時刻T42において、打者側の表示部31に表示される仮想空間SPの基準面(ホームベースオブジェクトOhb)にボールオブジェクトOblが到達すると、ゲーム装置10−2の打撃情報生成部122が到達情報を生成し、打撃情報生成部122で生成された到達情報を打撃情報共有処理部124がゲーム装置10−1に送信する(S214)。また、打者側の表示部31に表示される仮想空間SPの基準面にボールオブジェクトOblが到達すると、ゲーム装置10−2の攻撃表示制御部123は、打撃情報生成部122で生成された打撃情報に基づいて、打撃画面を表示部31に表示させる(S216)。
打撃画面は、打撃操作受付部121が受け付けた打撃操作に応じた打撃を実行した結果を表示する画面である。例えば、打撃画面には、打者キャラクタCbtがバットオブジェクトObtを振る打撃動作が表示される画面が含まれる。なお、打撃画面には、ボールオブジェクトOblが基準面に到達するまでに、打撃操作が入力されなかった場合、打者キャラクタCbtがボールオブジェクトOblを見送る動作が表示される画面が含まれる。
時刻T50において、ゲーム装置10−1は、打撃情報をゲーム装置10−2から受信する(S120)。
また、時刻T52において、ゲーム装置10−1は、到達情報をゲーム装置10−2から受信する(S124)。図5に示す例では、到達情報をゲーム装置10−2から受信した時刻T52では、投手側の表示部31に表示される仮想空間SPの基準面にボールオブジェクトOblが到達していない。このため、打撃画面の表示は、投手側の表示部31に表示される仮想空間SPの基準面にボールオブジェクトOblが到達するまで実行されない。
時刻T60において、投手側の表示部31に表示される仮想空間SPの基準面にボールオブジェクトOblが到達すると、ゲーム装置10−1の守備表示制御部113は、ゲーム装置10−2から受信した打撃情報に基づいて、打撃画面を表示部31に表示させる(S170)。そして、例えば、ゲーム装置10−1の守備表示制御部113は、打者側のユーザによる打撃操作により、打者キャラクタCbtがボールオブジェクトOblを打ち返した場合、表示部31に表示される仮想空間SPにおける基準面に到達したボールオブジェクトOblの軌道を、打者キャラクタCbtにより打ち返されたボールオブジェクトOblの軌道に切り替える。すなわち、ゲーム装置10−1の守備表示制御部113は、ゲーム装置10−2において打者キャラクタCbtがボールオブジェクトOblを打ち返したことを示す打撃情報を、ゲーム装置10−2から受信した場合、打撃情報に基づいて、打者キャラクタCbt及びボールオブジェクトOblを表示部31に表示させる。なお、ゲーム装置10−1とゲーム装置10−2とで、共通の打撃情報が打撃画面の表示に使用される。
また、図5に示す例では、投手側の表示部31に表示されるボールオブジェクトOblの移動速度が打者側の表示部31に表示されるボールオブジェクトOblの移動速度より遅くしているため、投手側のゲーム装置10−1が打者側のゲーム装置10−2から到達情報を受信した後に、投手側の表示部31に表示される仮想空間SPの基準面にボールオブジェクトOblが到達することになる。したがって、投手側のゲーム装置10−1は、表示部31に表示される仮想空間SPのホームベースオブジェクトOhb上の基準面でボールオブジェクトOblが停止する等の不自然な表示を実行することなく、投手側の表示部31に打撃画面を表示することができる。すなわち、投手側のゲーム装置10−1では、投球後の表示の不自然さを低減できる。なお、不自然な表示は、ホームベースオブジェクトOhb上の基準面でボールオブジェクトOblが停止する表示の他に、打者側の表示部31に表示される打撃動作と異なるダミーの打撃動作等を表示する場合も該当する。例えば、ダミーの打撃動作は、打者側のゲーム装置10−2から送信される打撃情報に拘わらず予めプログラミングされた打撃動作である。このため、投手側の表示部31にダミーの打撃動作を表示する方法では、ボールオブジェクトOblにバットオブジェクトObtが当たったか空振りしたかを示す打撃結果と異なる結果になる打撃動作が投手側の表示部31に表示される場合がある。この場合、打撃結果が打撃動作に一致しないため、不自然な表示になる。
ここで、打者側のユーザは、通常、ボールオブジェクトOblがホームベースオブジェクトOhbに到達するタイミングに合わせて打撃操作を行う。この場合、打撃情報と到達情報とは同時又はほぼ同時に打者側のゲーム装置10−2から投手側のゲーム装置10−1に送信される。このため、投手側のゲーム装置10−1では、打者側のゲーム装置10−2から到達情報を受信する前に、投手側の表示部31に表示される仮想空間SPの基準面にボールオブジェクトOblが到達すると、打撃情報を反映した打撃画面を表示できない場合がある。この場合、投手側のゲーム装置10−1では、投球後の表示が不自然になる。
これに対し、本実施形態では、投手側のゲーム装置10−1は、表示部31に表示されるボールオブジェクトOblの移動速度Vptを打者側の表示部31に表示されるボールオブジェクトOblの移動速度Vbtより遅くすることにより、打者側のゲーム装置10−2から到達情報を受信する前に、仮想空間SPの基準面にボールオブジェクトOblが到達することを回避している。このため、投手側のゲーム装置10−1は、投球後の表示が不自然になることがない。
なお、投手側の表示部31に表示されるボールオブジェクトOblの移動速度Vptと、打者側の表示部31に表示されるボールオブジェクトOblの移動速度Vbtとの差が大きくなるほど、差分時間TDが長くなる。差分時間TDは、投手側のゲーム装置10−1が打者側のゲーム装置10−2から到達情報を受信した時刻T52から、投手側の表示部31に表示される仮想空間SPの基準面にボールオブジェクトOblが到達する時刻T60までの時間である。なお、時刻T52は、「第1タイミング」の一例であり、時刻T60は、「第2タイミング」の一例である。差分時間TDは、「第1タイミングと第2タイミングとの差分」の一例である。
本実施形態では、投手側のゲーム装置10−1は、表示部31に表示されるボールオブジェクトOblの移動速度Vptを打者側の表示部31に表示されるボールオブジェクトOblの移動速度Vbtに比べて遅くする程度(速度調整量)を、打者側のゲーム装置10との通信状況に応じて決定する。具体的には、投手側のゲーム装置10−1は、1回の投球毎に速度調整量を決定する。例えば、投手側のゲーム装置10−1の第1球速設定部115は、投手キャラクタCptが複数回の投球を実行する場合、一の投球時の通信状況に応じて、後の投球時の速度調整量を決定する。次に、図6を参照して、速度調整量の決定方法を説明する。
図6は、速度調整量の決定方法の概要を説明するための説明図である。なお、図6は、複数回の投球のうちのj回目(jは、2以上の自然数)の投球におけるボールオブジェクトOblの移動の様子を示している。図6では、j回目の投球と他の投球とを区別するために、移動時間TM、差分時間TD、差分時間TDに対応する距離DDの符号の末尾に、符号jを付している。
図6では、投球操作で選択された球速Vsがj回目の投球と(j−1)回目の投球とで同じであり、(j−1)回目の投球において、j回目の投球における差分時間TDjが“T0”になるように、j回目の投球における速度調整量が決定されていた場合について説明する。“T0”は、例えば、“0”である。また、複数の投球の各々において、投手側のゲーム装置10−1から打者側のゲーム装置10−2までの投球情報の通信時間と打者側のゲーム装置10−2から投手側のゲーム装置10−1までの到達情報の通信時間とは、互いに同じであるとする。
(j−1)回目の投球時とj回目の投球時で、投手側のゲーム装置10−1と打者側のゲーム装置10−2との間の通信状況に変化がなければ、j回目の投球における差分時間TDjは、(j−1)回目の投球時の調整通りに、“T0”になるようにしている。また、j回目の投球時における投手側のゲーム装置10−1と打者側のゲーム装置10−2との間の情報の片道の通信時間(「通信状況」の一例)が、(j−1)回目の投球時における投手側のゲーム装置10−1と打者側のゲーム装置10−2との間の情報の片道の通信時間に対して、Δtだけ短くなると、差分時間TDjは、“T0+2・Δt”になる。この場合、(j+1)回目の投球における差分時間TDが“T0”になるように、(j+1)回目の投球の速度調整量を決定する。例えば、(j+1)回目の投球における移動時間TMがj回目の投球における移動時間TMjに対して差分時間TDj(=2・Δt)だけ短くなるように、(j+1)回目の投球の速度調整量を決定する。
例えば、仮想空間SPにおけるボールオブジェクトOblのリリース位置から基準位置までの距離が、プレートオブジェクトOplからホームベースオブジェクトOhbまでの距離Dと一致している場合、ボールオブジェクトOblの移動速度Vptは、ボールオブジェクトOblが投手キャラクタCptからリリースされた時刻T23からボールオブジェクトOblが基準面に到達した時刻T60までの移動時間TMjと距離Dとを用いて、“(1/TMj)*D”で表される。
(j+1)回目の投球におけるボールオブジェクトOblの移動速度Vptは、(j+1)回目の投球における移動時間TMを移動時間TMjより差分時間TDjだけ短くするため、“(1/(TMj−TDj))*D”で表される。この場合、投球操作で選択された球速Vsがj回目の投球と(j+1)回目の投球とで同じであると仮定すると、(j+1)回目の投球におけるボールオブジェクトOblの移動速度Vptは、j回目の投球におけるボールオブジェクトOblの移動速度Vptより速くなり、(j+1)回目の投球における差分時間TDは、差分時間TDjより短くなる。すなわち、(j+1)回目の投球におけるボールオブジェクトOblの移動速度Vptがj回目の投球時より速くなるように速度調整量を設定すると、(j+1)回目の投球における差分時間TDは短くなる。換言すると、(j+1)回目の投球における差分時間TDは、(j+1)回目の投球におけるボールオブジェクトOblの移動速度Vptがj回目の投球時より遅くなるように速度調整量を設定すると、差分時間TDは長くなる。
打者側の表示部31に表示されるボールオブジェクトOblの移動速度Vbtとの関係に着目すると、投手側の表示部31に表示されるボールオブジェクトOblの移動速度Vptを、打者側の表示部31に表示されるボールオブジェクトOblの移動速度Vbtに近づけると、差分時間TDは、短くなる。但し、投手側の表示部31に表示されるボールオブジェクトOblの移動速度Vptと打者側の表示部31に表示されるボールオブジェクトOblの移動速度Vbtとを近づけすぎると、投手側のゲーム装置10−1において、打者側のゲーム装置10−2から到達情報を受信する前に、投手側の表示部31に表示される仮想空間SPの基準面にボールオブジェクトOblが到達する場合がある。この場合、投手側のゲーム装置10−1は、次回の投球におけるボールオブジェクトOblの移動速度Vptが今回の投球時より遅くなるように速度調整量を設定することにより、打者側のゲーム装置10−2から到達情報を受信した後に、表示部31に表示される仮想空間SPの基準面にボールオブジェクトOblが到達するようにする。
ところで、投球操作で選択された球速Vsが(j+1)回目の投球とj回目の投球とで同じ場合、(j+1)回目の投球における移動時間TMを移動時間TMjより差分時間TDjだけ短くすると、(j+1)回目の投球におけるボールオブジェクトOblの移動速度とj回目の投球におけるボールオブジェクトOblの移動速度との比率は、“(1/(1−(TDj/TMj)))”で表される。例えば、速度調整量が、投手側の表示部31に表示されるボールオブジェクトOblの移動速度Vptと投球操作で選択された球速Vsとの比率で表されている場合、(j+1)回目の投球時に使用する速度調整量は、j回目の投球時に使用した速度調整量に“(1/(1−(TDj/TMj)))”を乗算した値に基づいて決定される。なお、速度調整量は、投手側の表示部31に表示されるボールオブジェクトOblの移動速度Vptと投球操作で選択された球速Vsとの差分値でもよい。
すなわち、速度調整量は、差分時間TDに基づいて決定される。また、差分時間TDは、上述したように、投手側のゲーム装置10−1と打者側のゲーム装置10−2との間の通信状況に応じて変化する。従って、「差分時間TDを算出する」ことは、「他のゲーム装置との通信状況を算出する」ことの一例である。また、投手側のゲーム装置10−1は、打者側のゲーム装置10−2から到達情報を受信した時刻T52におけるボールオブジェクトOblの位置と基準面(例えば、ホームベースオブジェクトOhb)との間の距離DDを、差分時間TDの代わりに算出してもよい。あるいは、投手側のゲーム装置10−1は、打者側のゲーム装置10−2から到達情報を受信した時刻T52と表示部31に表示される仮想空間SPの基準面にボールオブジェクトOblが到達する時刻T60との間の期間におけるゲーム画面の表示に用いられるフレーム数を、差分時間TDの代わりに算出してもよい。時刻T52と時刻T60との間の期間におけるフレーム数をFDnumとすると、フレーム数FDnumと差分時間TDとの関係は、フレームレートFratを用いて、“FDnum=Frat・TD”で表される。
なお、速度調整量は、投手側の表示部31に表示されるボールオブジェクトOblの移動速度Vptと投球操作で選択された球速Vsとの比率又は差分値に限定されない。例えば、投手側の表示部31に表示されるボールオブジェクトOblの移動速度Vptに基づく移動時間TMと投球操作で選択された球速Vsに基づく移動時間TMとの比率又は差分値でもよい。あるいは、投手側の表示部31に表示されるボールオブジェクトOblの移動速度Vptに基づく所要フレーム数Fnumと投球操作で選択された球速Vsに基づく所要フレーム数Fnumとの比率又は差分値でもよい。次に、図7を参照して、投手側のゲーム装置10の動作を説明する。
図7は、投手側のゲーム装置10の動作の一例を示すフローチャートである。なお、図7は、投手側のゲーム装置10が投球操作を受付可能な状態になってから、次の投球における速度調整量を決定するまでのゲーム制御部110の動作の一例を示す。なお、図5で説明した動作に対応するステップについては、図5と同じ符号を付している。
先ず、ステップS100において、投球操作受付部111は、ボールオブジェクトOblを投手キャラクタCptに投球させる投球操作を受け付けたか否かを判定する。ステップS100における判定の結果が肯定の場合、すなわち、投球操作受付部111が投球操作を受け付けた場合、投球操作受付部111は、処理をステップS102に進める。一方、ステップS100における判定の結果が否定の場合、すなわち、投球操作受付部111が投球操作を受け付けていない場合、投球操作受付部111は、処理をステップS100に戻す。すなわち、ステップS102の処理は、投球操作受付部111が投球操作を受け付けると実行される。
ステップS102において、投球情報生成部112は、投球操作受付部111が受け付けた投球操作に基づいて、投手キャラクタCptにより投球されるボールオブジェクトOblに関する投球情報を生成する。次に、ステップS104において、投球情報共有処理部114は、ステップS102で生成された投球情報を、打者側のゲーム装置10に送信する。
次に、ステップS106において、第1球速設定部115は、表示部31に表示されるボールオブジェクトOblの移動速度Vpt(球速)を、前回の投球時に決定した速度調整量に基づいて、投球情報に含まれる球速Vsより遅い速度に設定する。
そして、ステップS106において、守備表示制御部113は、表示部31に投球画面を表示させる。これにより、投球画面の表示が開始される。例えば、守備表示制御部113は、第1球速設定部115で設定された移動速度Vptで移動するボールオブジェクトOblを表示部31に表示させる。
次に、ステップS110において、到達時刻情報収集処理が実行される。到達時刻情報収集処理では、例えば、打者側のゲーム装置10から到達情報を受信した時刻を示す情報、及び、投手側の表示部31に表示される仮想空間SPにおける基準面にボールオブジェクトOblが到達した時刻を示す情報等が記憶される。また、到達時刻情報収集処理が実行されることより、打者側のユーザによる打撃操作に基づく打撃が実行された結果に応じた打撃画面が表示される。到達時刻情報収集処理の詳細は、図8で説明する。到達時刻情報収集処理が実行された後、ステップS180の処理が実行される。
ステップS180において、第1球速設定部115は、次回の投球時の球速を設定する際に参照する速度調整量を、打者側のゲーム装置10との通信状況に応じて決定する。例えば、第1球速設定部115は、図6で説明したように、差分時間TDに基づいて、速度調整量を決定する。
なお、投手側のゲーム装置10の動作は、図7に示す例に限定されない。例えば、ステップS106及びステップS108の一連の処理は、ステップS104の処理と並列に実行されてもよいし、ステップS104の処理より先に実行されてもよい。次に、図8を参照して、到達時刻情報収集処理(図7のステップS110)の詳細について説明する。
図8は、到達時刻情報収集処理の一例を示すフローチャートである。なお、図5で説明した動作に対応するステップについては、図5と同じ符号を付している。ステップS120の処理は、図7に示したステップS108の処理が実行された後に実行される。各ステップにおいて、先に説明したステップと同様なステップについては、詳細な説明を省略する。
先ず、ステップS120において、守備表示制御部113は、打撃情報を打者側のゲーム装置10から受信したか否かを判定する。ステップS120における判定の結果が肯定の場合、すなわち、守備表示制御部113が打撃情報を受信した場合、守備表示制御部113は、処理をステップS122に進める。一方、ステップS120における判定の結果が否定の場合、すなわち、守備表示制御部113が打撃情報を受信していない場合、守備表示制御部113は、処理をステップS140に進める。
ステップS122において、守備表示制御部113は、打撃情報に基づいて、打者キャラクタCbtがバットオブジェクトObtを振る打撃動作を表示部31に表示させる時刻である打撃表示時刻を算出する。例えば、守備表示制御部113は、打撃動作を表示してからボールオブジェクトOblが基準面に到達するまでの時間と移動時間TMとの比率が、投手側と打者側とで同じ又は所定値以内の差になるように、打撃表示時刻を算出する。なお、打者キャラクタCbtが振ったバットオブジェクトObtにボールオブジェクトOblが当たる場合は、打者側のユーザによる打撃操作は、ボールオブジェクトOblが基準面に到達した時刻と同じ又はほぼ同じ時刻に実行される。この場合、打撃表示時刻は、投手側の表示部31に表示される仮想空間SPの基準面にボールオブジェクトOblが到達する時刻と同じ又はほぼ同じ時刻になる。守備表示制御部113は、ステップS122の処理を実行した後、処理をステップS124に進める。
ステップS124において、守備表示制御部113は、打者側の表示部31に表示される仮想空間SPにおける基準面にボールオブジェクトOblが到達したことを示す到達情報を打者側のゲーム装置10から受信したか否かを判定する。ステップS124における判定の結果が肯定の場合、すなわち、守備表示制御部113が到達情報を受信した場合、守備表示制御部113は、処理をステップS126に進める。一方、ステップS124における判定の結果が否定の場合、すなわち、守備表示制御部113が到達情報を受信していない場合、守備表示制御部113は、処理をステップS132に進める。
ステップS126において、守備表示制御部113は、到達情報を受信した時刻(以下、到達情報受信時刻とも称する)を記憶部130に記憶する。なお、到達情報受信時刻は、「第1タイミング」の一例である。次に、ステップS128において、守備表示制御部113は、表示部31に表示される仮想空間SPにおける基準面にボールオブジェクトOblが到達したか否かを判定する。ステップS128における判定の結果が肯定の場合、すなわち、投手側の表示部31に表示される仮想空間SPにおける基準面にボールオブジェクトOblが到達した場合、守備表示制御部113は、処理をステップS130に進める。一方、ステップS128における判定の結果が否定の場合、すなわち、投手側の表示部31に表示される仮想空間SPにおける基準面にボールオブジェクトOblが到達していない場合、守備表示制御部113は、処理をステップS128に戻す。
ステップS130において、守備表示制御部113は、投手側の表示部31に表示される仮想空間SPにおける基準面にボールオブジェクトOblが到達した時刻(以下、到達時刻とも称する)を、記憶部130に記憶する。なお、到達時刻は、「第2タイミング」の一例である。守備表示制御部113は、到達時刻を記憶部130に記憶した後、ステップS170において、打撃画面を表示部31に表示させる。これにより、ステップS120及びステップS124の両方の判定の結果が肯定の場合における到達時刻情報収集処理が終了する。なお、ステップS124における判定の結果が否定の場合には、上述したように、ステップS132の処理が実行される。
ステップS132において、守備表示制御部113は、表示部31に表示される仮想空間SPにおける基準面にボールオブジェクトOblが到達したか否かを判定する。ステップS132における判定の結果が肯定の場合、守備表示制御部113は、ステップS134において、到達時刻を記憶部130に記憶し、処理をステップS136に進める。一方、ステップS132における判定の結果が否定の場合、守備表示制御部113は、処理をステップS124に戻す。
ステップS136において、守備表示制御部113は、到達情報を打者側のゲーム装置10から受信したか否かを判定する。ステップS136における判定の結果が肯定の場合、守備表示制御部113は、処理をステップS138に進める。一方、ステップS136における判定の結果が否定の場合、守備表示制御部113は、処理をステップS136に戻す。
ステップS138において、守備表示制御部113は、到達情報受信時刻を記憶部130に記憶する。そして、守備表示制御部113は、ステップS170において、打撃画面を表示部31に表示させる。これにより、ステップS120の判定の結果が肯定で、ステップS124の判定の結果が否定の場合における到達時刻情報収集処理が終了する。なお、ステップS120における判定の結果が否定の場合には、上述したように、ステップS140の処理が実行される。
ステップS140において、守備表示制御部113は、到達情報を打者側のゲーム装置10から受信したか否かを判定する。ステップS140における判定の結果が肯定の場合、守備表示制御部113は、処理をステップS142に進める。一方、ステップS140における判定の結果が否定の場合、守備表示制御部113は、処理をステップS150に進める。
ステップS142において、守備表示制御部113は、到達情報受信時刻を記憶部130に記憶する。次に、ステップS144において、守備表示制御部113は、打撃情報を打者側のゲーム装置10から受信したか否かを判定する。ステップS144における判定の結果が肯定の場合、守備表示制御部113は、処理をステップS146に進める。一方、ステップS144における判定の結果が否定の場合、守備表示制御部113は、処理をステップS144に戻す。
なお、本実施形態では、打者側の表示部31に表示される仮想空間SPの基準面にボールオブジェクトOblが到達するまでに、打撃操作が実行されなかった場合、打撃操作が実行されなかったことを示す打撃情報が打者側のゲーム装置10から送信される。このため、ステップS140における判定の結果が肯定の場合、守備表示制御部113は、打撃情報を、到達情報と同時又はほぼ同時に受信する。従って、ステップS144の判定処理は、省かれてもよい。
ステップS146において、守備表示制御部113は、表示部31に表示される仮想空間SPにおける基準面にボールオブジェクトOblが到達したか否かを判定する。ステップS146における判定の結果が肯定の場合、守備表示制御部113は、処理をステップS148に進める。一方、ステップS146における判定の結果が否定の場合、守備表示制御部113は、処理をステップS146に戻す。
ステップS148において、守備表示制御部113は、到達時刻を記憶部130に記憶する。そして、守備表示制御部113は、ステップS170において、打撃画面を表示部31に表示させる。これにより、ステップS120の判定の結果が否定で、ステップS140の判定の結果が肯定の場合における到達時刻情報収集処理が終了する。なお、ステップS140における判定の結果が否定の場合には、上述したように、ステップS150の処理が実行される。
ステップS150において、守備表示制御部113は、表示部31に表示される仮想空間SPにおける基準面にボールオブジェクトOblが到達したか否かを判定する。ステップS150における判定の結果が肯定の場合、守備表示制御部113は、ステップS152において、到達時刻を記憶部130に記憶し、処理をステップS154に進める。一方、ステップS150における判定の結果が否定の場合、守備表示制御部113は、処理をステップS120に戻す。
ステップS154において、守備表示制御部113は、打撃情報を打者側のゲーム装置10から受信したか否かを判定する。ステップS154における判定の結果が肯定の場合、守備表示制御部113は、処理をステップS156に進める。一方、ステップS154における判定の結果が否定の場合、守備表示制御部113は、処理をステップS160に進める。
ステップS156において、守備表示制御部113は、到達情報を打者側のゲーム装置10から受信したか否かを判定する。ステップS156における判定の結果が肯定の場合、守備表示制御部113は、処理をステップS158に進める。一方、ステップS156における判定の結果が否定の場合、守備表示制御部113は、処理をステップS156に戻す。
ステップS158において、守備表示制御部113は、到達情報受信時刻を記憶部130に記憶する。そして、守備表示制御部113は、ステップS170において、打撃画面を表示部31に表示させる。これにより、ステップS120及びステップS140の両方の判定の結果が否定で、ステップS150及びステップS154の両方の判定の結果が肯定の場合における到達時刻情報収集処理が終了する。なお、ステップS154における判定の結果が否定の場合には、上述したように、ステップS160の処理が実行される。
ステップS160において、守備表示制御部113は、到達情報を打者側のゲーム装置10から受信したか否かを判定する。ステップS160における判定の結果が肯定の場合、守備表示制御部113は、処理をステップS162に進める。一方、ステップS160における判定の結果が否定の場合、守備表示制御部113は、処理をステップS154に戻す。
ステップS162において、守備表示制御部113は、到達情報受信時刻を記憶部130に記憶する。次に、ステップS164において、守備表示制御部113は、打撃情報を打者側のゲーム装置10から受信したか否かを判定する。ステップS164における判定の結果が肯定の場合、守備表示制御部113は、ステップS170において、打撃画面を表示部31に表示させる。一方、ステップS164における判定の結果が否定の場合、守備表示制御部113は、処理をステップS164に戻す。なお、ステップS164の判定処理は、ステップS144の判定処理を省いてもよい理由と同様の理由により、省かれてもよい。
守備表示制御部113は、ステップS170の処理を実行した後、処理を図7に示したステップS180に進める。例えば、図7に示したステップS180では、図8のステップS126、S138、S142、S158及びS162のいずれかの処理で記憶された到達情報受信時刻と、ステップS130、S134、S148及びS152のいずれかの処理で記憶された到達時刻との差分に基づいて、差分時間TDが算出される。
なお、到達時刻情報収集処理は、図8に示す例に限定されない。例えば、到達情報受信時刻又は到達時刻を記憶部130に記憶する処理は、他の処理と並列に実行されてもよい。また、守備表示制御部113は、到達情報受信時刻及び到達時刻を、ゲーム制御部110に含まれるレジスタ等の記憶部に記憶してもよい。次に、図9を参照して、打者側のゲーム装置10の動作を説明する。
図9は、打者側のゲーム装置10の動作の一例を示すフローチャートである。なお、図9は、投手側のゲーム装置10の投球操作受付部111において投球操作が受け付けられてから、打者側の表示部31に打撃画面が表示されるまでのゲーム制御部110の動作の一例を示す。なお、図5で説明した動作に対応するステップについては、図5と同じ符号を付している。
先ず、ステップS200において、攻撃表示制御部123は、投球情報を投手側のゲーム装置10から受信したか否かを判定する。ステップS200における判定の結果が肯定の場合、すなわち、攻撃表示制御部123が投球情報を受信した場合、攻撃表示制御部123は、処理をステップS202に進める。一方、ステップS200における判定の結果が否定の場合、すなわち、攻撃表示制御部123が投球情報を受信していない場合、攻撃表示制御部123は、処理をステップS200に戻す。すなわち、ステップS202の処理は、攻撃表示制御部123が投球情報を投手側のゲーム装置10から受信すると実行される。
ステップS202において、第2球速設定部125は、表示部31に表示されるボールオブジェクトOblの移動速度Vbt(球速)を、投手側のゲーム装置10から受信した投球情報に含まれる球速Vsと同じ速度に設定する。
そして、ステップS204において、攻撃表示制御部123は、投手側のゲーム装置10から受信した投球情報に基づいて、表示部31に投球画面を表示させる。これにより、投球画面の表示が開始される。例えば、攻撃表示制御部123は、第2球速設定部125で設定された移動速度Vbtで移動するボールオブジェクトOblを表示部31に表示させる。攻撃表示制御部123は、表示部31に投球画面を表示させた後、処理をステップS206に進める。
ステップS206において、打撃操作受付部121は、投手キャラクタCptが投げたボールオブジェクトOblを打者キャラクタCbtが打ち返すための打撃操作を受け付けたか否かを判定する。ステップS206における判定の結果が肯定の場合、すなわち、打撃操作受付部121が打撃操作を受け付けた場合、打撃操作受付部121は、処理をステップS208に進める。一方、ステップS206における判定の結果が否定の場合、すなわち、打撃操作受付部121が打撃操作を受け付けていない場合、打撃操作受付部121は、処理をステップS218に進める。
ステップS208において、打撃情報生成部122は、投手キャラクタCptが投げたボールオブジェクトOblに対する打撃の結果を、打撃操作受付部121で受け付けた打撃操作と表示部31に表示される仮想空間SPにおけるボールオブジェクトOblの位置とに基づいて決定する。そして、打撃情報生成部122は、打撃の結果を含む打撃情報を生成する。すなわち、打撃情報生成部122は、投手キャラクタCptが投げたボールオブジェクトOblに対する打撃に関する打撃情報を、打撃操作受付部121が受け付けた打撃操作に基づいて生成する。
次に、ステップS210において、打撃情報共有処理部124は、ステップS208で生成された打撃情報を、投手側のゲーム装置10に送信する。打撃情報共有処理部124は、打撃情報を投手側のゲーム装置10に送信した後、処理をステップS212に進める。
ステップS212において、攻撃表示制御部123は、表示部31に表示される仮想空間SPにおける基準面にボールオブジェクトOblが到達したか否かを判定する。ステップS212における判定の結果が肯定の場合、すなわち、打者側の表示部31に表示される仮想空間SPにおける基準面にボールオブジェクトOblが到達した場合、攻撃表示制御部123は、処理をステップS214に進める。一方、ステップS212における判定の結果が否定の場合、すなわち、打者側の表示部31に表示される仮想空間SPにおける基準面にボールオブジェクトOblが到達していない場合、攻撃表示制御部123は、処理をステップS212に戻す。
ステップS214において、打撃情報生成部122は、基準面にボールオブジェクトOblが到達したことを示す到達情報を生成し、打撃情報共有処理部124は、打撃情報生成部122で生成された到達情報を、投手側のゲーム装置10に送信する。
次に、ステップS216において、攻撃表示制御部123は、ステップS208で生成された打撃情報に基づいて、打者キャラクタCbtがバットオブジェクトObtを振る打撃動作を表示部31に表示させる。すなわち、ステップS206における判定の結果が肯定の場合、基準面にボールオブジェクトOblが到達すると、打撃動作が表示部31に表示される。なお、ステップS206における判定の結果が否定の場合、上述したように、ステップS218の処理が実行される。
ステップS218において、攻撃表示制御部123は、表示部31に表示される仮想空間SPにおける基準面にボールオブジェクトOblが到達したか否かを判定する。ステップS218における判定の結果が肯定の場合、攻撃表示制御部123は、処理をステップS220に進める。一方、ステップS218における判定の結果が否定の場合、攻撃表示制御部123は、処理をステップS206に戻す。
ステップS220において、打撃情報生成部122は、ボールオブジェクトOblが基準面に到達するまでに、打撃操作が実行されなかったため、打撃操作が実行されなかったことを示す打撃情報を生成する。
次に、ステップS222において、打撃情報共有処理部124は、ステップS220で生成された打撃情報を、投手側のゲーム装置10に送信する。
また、ステップS224において、打撃情報生成部122は、基準面にボールオブジェクトOblが到達したことを示す到達情報を生成し、打撃情報共有処理部124は、打撃情報生成部122で生成された到達情報を、投手側のゲーム装置10に送信する。
次に、ステップS226において、攻撃表示制御部123は、ステップS220で生成された打撃情報に基づいて、打者キャラクタCbtがボールオブジェクトOblを見送る見送り動作を表示部31に表示させる。すなわち、打撃操作が実行される前に、基準面にボールオブジェクトOblが到達すると、見送り動作が表示部31に表示される。見送り動作の表示及び打撃動作の表示は、打撃画面の表示に含まれる。
なお、打者側のゲーム装置10の動作は、図9に示す例に限定されない。例えば、ステップS224の処理は、ステップS220及びステップS222の一連の処理と並列に実行されてもよいし、ステップS220又はステップS222の処理より先に実行されてもよい。
[5.本実施形態の結論]
以上において説明したように、本実施形態によれば、投手側のゲーム装置10の第1球速設定部115は、投手側の表示部31に表示されるボールオブジェクトOblの移動速度Vptを、打者側の表示部31に表示されるボールオブジェクトOblの移動速度Vbtよりも遅い速度に設定する。このようにすることで、投手側のゲーム装置10では、打者側のゲーム装置10から到達情報を受信する前に、仮想空間SPの基準面にボールオブジェクトOblが到達することを回避している。この結果、投手側のゲーム装置10は、打者側のユーザによる打撃操作(打者キャラクタCbtの操作)を実行した結果に基づく打者キャラクタCbtの動作が打撃画面に反映されないことを防止でき、投球後の表示が不自然になることをがない。すなわち、通信対戦型のゲームにおいて、不自然な表示を低減することができる。
また、投手側のゲーム装置10の第1球速設定部115は、速度調整量(表示部31に表示されるボールオブジェクトOblの移動速度Vptを打者側の表示部31に表示されるボールオブジェクトOblの移動速度Vbtに比べて遅くする程度を示す調整量)を、打者側のゲーム装置10との通信状況に応じて決定する。このため、投手側のゲーム装置10は、速度調整量が通信状況に拘わらず固定されている場合に比べて、投手側のゲーム装置10の表示部31に表示されるボールオブジェクトOblの移動速度Vptを適切に設定することができる。この結果、投手側のゲーム装置10の表示部31に表示されるボールオブジェクトOblの移動速度Vptが必要以上に遅くなることを防止することができる。
例えば、第1球速設定部115は、投手キャラクタCptが複数回の投球を実行する場合、一の投球時の通信状況に応じて、後の投球時の速度調整量を決定する。この場合、投手側のゲーム装置10は、野球ゲームを実行している最中に通信状況が変化した場合でも、通信状況の変化に応じて、投手側の表示部31に表示されるボールオブジェクトOblの移動速度Vptを適切に設定することができる。
また、第1球速設定部115は、打者側の表示部31に表示される仮想空間SPにおける基準面にボールオブジェクトOblが到達したことを示す到達情報を打者側のゲーム装置10から受信したタイミングと、表示部31に表示される仮想空間SPにおける基準面にボールオブジェクトOblが到達したタイミングとに基づいて、打者側のゲーム装置10との通信状況を算出する。
例えば、第1球速設定部115は、打者側の表示部31に表示される仮想空間SPにおける基準面にボールオブジェクトOblが到達したことを示す到達情報を打者側のゲーム装置10から受信した到達情報受信時刻と、表示部31に表示される仮想空間SPにおける基準面にボールオブジェクトOblが到達した到達時刻との差分を、打者側のゲーム装置10との通信状況を示す情報として算出する。この場合、通信状況を算出するための専用の情報を打者側のゲーム装置10に送信する必要がないため、通信状況を算出するための専用の情報を打者側のゲーム装置10に送信する場合に比べて、投手側のゲーム装置10の処理を簡易にできる。
あるいは、第1球速設定部115は、到達情報受信時刻と到達時刻との間の期間におけるゲーム画面の表示に用いられるフレーム数を、打者側のゲーム装置10との通信状況を示す情報として算出する。この場合においても、通信状況を算出するための専用の情報を打者側のゲーム装置10に送信する必要がないため、通信状況を算出するための専用の情報を打者側のゲーム装置10に送信する場合に比べて、投手側のゲーム装置10の処理を簡易にできる。
また、投手側のゲーム装置10の守備表示制御部113は、打者側の表示部31に表示される仮想空間SPにおける基準面にボールオブジェクトOblが到達し、打者キャラクタCbtがボールオブジェクトOblを打ち返した場合、投手側の表示部31に表示される投手キャラクタCptにより投球され、表示部31に表示される仮想空間における基準面に到達したボールオブジェクトOblの軌道を、打者キャラクタCbtにより打ち返されたボールオブジェクトOblの軌道に切り替える。このため、投手側のゲーム装置10は、打者側のユーザによる打撃操作(打者キャラクタCbtの操作)を実行した結果に基づく打者キャラクタCbtの動作を表示部31に表示させた後に、打撃操作を実行した結果に基づいて移動するボールオブジェクトOblを表示でき、投球後の表示が不自然になることを低減できる。
例えば、守備表示制御部113は、打者側のゲーム装置10において打者キャラクタCbtが投球情報に対応するボールオブジェクトOblを打ち返したことを示す打撃情報を、打者側のゲーム装置10から受信した場合、打撃情報に基づいて、打者キャラクタCbt及びボールオブジェクトOblを表示部31に表示させる。すなわち、打者キャラクタCbt及びボールオブジェクトOblは、打者側のゲーム装置10から受信した打撃情報に基づいて、投手側の表示部31に表示される。このため、投球後の表示が不自然になることを低減することができる。
ここで、投手キャラクタCptが投げたボールオブジェクトOblが投手側の表示部31に表示される仮想空間における基準面に到達する前に、打者側のゲーム装置10から到達情報を受信する手段として、打者側の表示部31に表示されるボールオブジェクトOblの移動速度Vbt(球速)を上げる、ということが考えられる。しかしながら、この場合には、複数回の投球において、投球操作で選択された球速Vsが変化しない場合でも、打者側の表示部31に表示されるボールオブジェクトOblの移動速度Vbt(球速)が投球毎に異なる場合がある。このため、打者側の表示部31に表示されるボールオブジェクトOblの移動速度Vbt(球速)を上げる方法では、打者側のゲーム装置10を操作するユーザの打撃操作の難易度が上がるという欠点がある。なお、投手側のゲーム装置10を操作するユーザは、投球後のボールオブジェクトOblの移動速度Vptが変化しても、投球後の操作において影響を感じない。すなわち、本実施形態では、投手側のゲーム装置10のユーザ及び打者側のゲーム装置10のユーザの両方の操作に全く影響を与えることく、投球後の表示が不自然になることを低減することができる。
[B.変形例]
以上の各形態は多様に変形され得る。具体的な変形の態様を以下に例示する。以下の例示から任意に選択された2以上の態様は、相互に矛盾しない範囲内で適宜に併合され得る。なお、以下に例示する変形例において作用や機能が実施形態と同等である要素については、以上の説明で参照した符号を流用して各々の詳細な説明を適宜に省略する。
[変形例1]
上述した実施形態では、投手側のゲーム装置10は、1回の投球毎に、打者側のゲーム装置10との通信状況に応じて速度調整量を決定するが、本発明はこのような態様に限定されるものではない。例えば、投手側のゲーム装置10は、予め決められた複数回の投球毎に、打者側のゲーム装置10との通信状況に応じて速度調整量を決定してもよい。具体的には、第1球速設定部115は、予め決められた複数回の投球が投手キャラクタCptにより実行される度に打者側のゲーム装置10との通信状況を算出し、算出した通信状況に応じて速度調整量を決定してもよい。変形例1においても上述した実施形態と同様に、投手側のゲーム装置10は、野球ゲームを実行している最中に通信状況が変化した場合でも、投手側の表示部31に表示されるボールオブジェクトOblの移動速度Vptを適切に設定することができる。
[変形例2]
上述した実施形態及び変形例では、投手側のゲーム装置10は、予め決められた1以上の回数の投球毎に、打者側のゲーム装置10との通信状況に応じて速度調整量を決定するが、本発明はこのような態様に限定されるものではない。例えば、投手側のゲーム装置10は、野球ゲームが開始される度に、通信状況に応じて速度調整量を決定してもよい。具体的には、第1球速設定部115は、野球ゲームが開始される度に打者側のゲーム装置10との通信状況を算出し、算出した通信状況に応じて速度調整量を決定してもよい。この場合、投手側のゲーム装置10は、速度調整量が通信状況に拘わらず固定されている場合に比べて、投手側の表示部31に表示されるボールオブジェクトOblの移動速度Vptを野球ゲームの開始時における通信状況に応じて適切に設定することができる。
[変形例3]
上述した実施形態及び変形例では、投手側のゲーム装置10は、1回の投球毎に、投球情報を打者側のゲーム装置10に1回送信するが、本発明はこのような態様に限定されるものではない。例えば、投手側のゲーム装置10は、図10に示すように、1回の投球毎に、投球情報を打者側のゲーム装置10に複数回に分けて送信してもよい。
図10は、変形例3に係るゲームシステム1の動作の一例を示すシーケンスチャートである。図10に示す動作では、投手側のユーザによる投球操作が第1投球操作と第2投球操作との2回に分けて実行される。従って、投球情報の打者側のゲーム装置10への送信も、1回の投球毎に、第1投球情報の送信と第2投球情報の送信との2回実行される。
先ず、時刻T10において、球種、球速(例えば、100km/h)及びコースを選択する第1投球操作を投手側のユーザがゲーム装置10−1の操作部170に対して入力すると、ゲーム装置10−1の投球操作受付部111は、ユーザによる投球操作を受け付ける(S100A)。なお、球速は、球種に対応付けて予め決められていてもよい。投球操作受付部111が第1投球操作を受け付けると、投球情報生成部112が投球操作受付部111で受け付けた第1投球操作に基づいて第1投球情報を生成し、投球情報生成部112で生成された第1投球情報を投球情報共有処理部114がゲーム装置10−2に送信する(S104A)。
時刻T12において、ゲーム装置10−1の守備表示制御部113は、投球操作受付部111が第1投球操作の受け付けを完了したため、投手キャラクタCptの投球動作を表示部31に表示させる(S108A)。
時刻T14において、ゲーム装置10−2は、第1投球情報をゲーム装置10−1から受信する(S200A)。そして、ゲーム装置10−2の攻撃表示制御部123は、待機時間Wmが経過した時刻T21に、投手キャラクタCptの投球動作を表示部31に表示させる(S204A)。
時刻T20において、ボールオブジェクトOblが投げ込まれる位置(コース)を確定する第2投球操作を投手側のユーザがゲーム装置10−1の操作部170に対して入力すると、ゲーム装置10−1の投球操作受付部111は、ユーザによる投球操作を受け付ける(S100B)。具体的には、ゲーム装置10−1の守備表示制御部113は、投手キャラクタCptの投球動作を表示部31に表示させ後、タイミングゲージを表示部31に表示させる。そして、ユーザがタイミングゲージで示される適切なタイミングで第2投球操作(操作ボタンの押下、又は、操作ボタンの押下の解除等)を実行すると、第1投球操作で選択したコースにボールオブジェクトOblが投げ込まれる。第2投球操作が実行されるタイミングが適切なタイミングからずれるほど、ボールオブジェクトOblが投げ込まれる位置も第1投球操作で選択したコースからずれる。
また、投球操作受付部111が第2投球操作を受け付けると、投球情報生成部112が投球操作受付部111で受け付けた第2投球操作に基づいて第2投球情報を生成し、投球情報生成部112で生成された第2投球情報を投球情報共有処理部114がゲーム装置10−2に送信する(S104B)。すなわち、第2投球情報には、第2投球操作に応じて決定されたボールオブジェクトOblが投げ込まれるコースを示す情報が含まれる。なお、第2投球操作が実行されるタイミングに応じて球速も第1投球操作で選択した球速から調整される場合、第2投球情報には、第2投球操作に応じて決定されたボールオブジェクトOblの移動速度(球速)を示す情報も含まれる。
時刻T22において、ゲーム装置10−1の守備表示制御部113は、投球操作受付部111が受け付けた第1投球操作及び第2投球操作に基づいて、投球画面を表示部31に表示させる(S108B)。なお、図10に示す例では、投球画面は、投手キャラクタCptの投球動作が終了した後の投手キャラクタCpt及びボールオブジェクトOblが表示される画面である。時刻12から時刻T22までの時間は、投手キャラクタCptの投球動作が投手側の表示部31に表示されている投球動作時間MT1である。図10に示す例では、時刻T22において、ボールオブジェクトOblが投手キャラクタCptからリリースされる。
なお、時刻T20から時刻T22までの間に、ボールオブジェクトOblの球速及びコースが第1投球操作及び第2投球操作に応じて決定される。例えば、第1球速設定部115は、表示部31に表示されるボールオブジェクトOblの移動速度Vpt(ボールオブジェクトOblが仮想空間SPを移動する速度)を、第1投球操作及び第2投球操作に基づいて設定する。具体的には、第1球速設定部115は、ボールオブジェクトOblの移動速度Vptを、第1投球操作及び第2投球操作に応じて決定された球速Vs(100km/h)より遅い80km/hに設定する。
時刻T30において、ゲーム装置10−2は、第2投球情報をゲーム装置10−1から受信する(S200B)。ゲーム装置10−2がゲーム装置10−1から第2投球情報を受信すると、ゲーム装置10−2の第2球速設定部125は、ゲーム装置10−1から受信した第1投球情報及び第2投球情報に基づいて、ボールオブジェクトOblの球速を、第1投球操作及び第2投球操作により決定された球速(100km/h)に設定する。
そして、投球動作の表示が開始された時刻T21から投球動作時間MT2が経過した時刻T32に、ゲーム装置10−2の攻撃表示制御部123は、ゲーム装置10−1から受信した第1投球情報及び第2投球情報に基づいて、投球画面を表示部31に表示させる(S204B)。ゲーム装置10−2では、ボールオブジェクトOblの球速が、第1投球操作及び第2投球操作により決定された球速(100km/h)に設定されるため、ボールオブジェクトOblは、投手側のゲーム装置10−1の投球操作受付部111が受け付けた第1投球操作及び第2投球操作に応じて決定された球種、球速及びコースに従って仮想空間SP内を移動する。
なお、打者側の投球動作時間MT2は、投手側の投球動作時間MT1と同じである。ゲーム装置10−2の攻撃表示制御部123は、上述したように、第1投球情報をゲーム装置10−1から受信した時刻T14から待機時間Wmが経過した時刻T21に、投手キャラクタCptの投球動作を表示部31に表示させる。このため、ゲーム装置10−2は、第2投球情報の通信時間が第1投球情報の通信時間より長くなる場合でも、第2投球情報の通信時間と第1投球情報の通信時間との差分が待機時間Wm以下であれば、第2投球情報を受信する前に、投手キャラクタCptの投球動作が終了することを防止できる。この結果、打者側の表示部31に表示される投手キャラクタCpt等の動きが不自然になることを防止することができる。すなわち、通信対戦型のゲームにおいて、不自然な表示を低減することができる。なお、待機時間Wmは、固定でもよいし、可変に設定可能でもよい。時刻T32以降の動作は、図5に示した動作と同様であるため、説明を省略する。
[変形例4]
上述した変形例3では、ゲーム装置10の守備表示制御部113は、投球操作受付部111が第1投球操作の受け付けを完了したことを契機にして、投手キャラクタCptの投球動作を表示部31に表示させるが、本発明はこのような態様に限定されるものではない。例えば、投手側のゲーム装置10は、図11に示すように、第1投球情報に対する応答である第1投球操作応答を打者側のゲーム装置10から受信したことを契機にして、投手キャラクタCptの投球動作を表示部31に表示させてもよい。
図11は、変形例4に係るゲームシステム1の動作の一例を示すシーケンスチャートである。図11に示す動作は、投手側の表示部31に投手キャラクタCptの投球動作を表示させるタイミングを除いて、図10に示した動作と同様である。図10で説明した動作と同様な動作については、説明を省略する。
時刻T14において、ゲーム装置10−2は、第1投球情報をゲーム装置10−1から受信する(S200A)と、第1投球情報に対する応答である第1投球操作応答をゲーム装置10−1に送信する(S201A)。そして、ゲーム装置10−2の攻撃表示制御部123は、予め設定された可変待機時間VWmが経過した時刻T21に、投手キャラクタCptの投球動作を表示部31に表示させる(S204A)。可変待機時間VWmは、値(待機時間)を可変に設定可能である。
時刻T15において、ゲーム装置10−1は、第1投球操作応答をゲーム装置10−2から受信する(S105A)。
時刻T16において、ゲーム装置10−1の守備表示制御部113は、第1投球操作応答をゲーム装置10−2から受信したため、投手キャラクタCptの投球動作を表示部31に表示させる(S108A)。時刻T20以降の動作は、図5に示した動作と同様であるため、説明を省略する。変形例4においても、変形例3と同様の効果を得ることができる。
[変形例5]
上述した実施形態及び変形例では、投手側のゲーム装置10の第1球速設定部115は、打者側のゲーム装置10との通信状況に応じて速度調整量を決定するが、本発明はこのような態様に限定されるものではない。例えば、速度調整量は、投手側のゲーム装置10と打者側のゲーム装置10との通信状況に拘わらず、固定されていてもよい。変形例5においても、投手側の表示部31に表示されるボールオブジェクトOblの移動速度Vptは、打者側の表示部31に表示されるボールオブジェクトOblの移動速度Vbtよりも遅い速度に設定される。このため、投手側のゲーム装置10は、表示部31に表示されるボールオブジェクトOblの移動速度Vが投手側と打者側とで互いに同じ速度に設定される場合に比べて、打者側のゲーム装置10から到達情報を受信する前に、仮想空間SPの基準面にボールオブジェクトOblが到達することを低減できる。この結果、投手側のゲーム装置10は、打者側のユーザによる打撃操作(打者キャラクタCbtの操作)を実行した結果に基づく打者キャラクタCbtの動作が打撃画面に反映されないことを低減でき、投球後の表示が不自然になることを低減できる。
[変形例6]
上述した実施形態及び変形例では、投手側のゲーム装置10の第1球速設定部115は、投手側の表示部31に表示されるボールオブジェクトOblの移動速度Vptを、打者側の表示部31に表示されるボールオブジェクトOblの移動速度Vbtよりも遅い速度に設定するが、本発明はこのような態様に限定されるものではない。例えば、投手側のゲーム装置10の第1球速設定部115は、投手側の表示部31に表示されるボールオブジェクトOblの移動速度Vptを、打者側の表示部31に表示されるボールオブジェクトOblの移動速度Vbtよりも速い速度に設定してもよい。すなわち、投手側のゲーム装置10の第1球速設定部115は、投手側の表示部31に表示されるボールオブジェクトOblの移動速度Vptを、打者側の表示部31に表示されるボールオブジェクトOblの移動速度Vbtと異なる速度に設定してもよい。
例えば、図5に示した動作において、ゲーム装置10−1の投球操作受付部111がユーザによる投球操作を受け付けてから、所定時間経過後に、ゲーム装置10−1の守備表示制御部113が投球画面を表示部31に表示させる場合、第1球速設定部115は、投手側の表示部31に表示されるボールオブジェクトOblの移動速度Vptを、打者側の表示部31に表示されるボールオブジェクトOblの移動速度Vbtよりも速い速度に設定してもよい。投球情報の通信時間と到達情報の通信時間との和が所定時間より短い場合、投手側の表示部31に表示されるボールオブジェクトOblの移動速度Vptを、打者側の表示部31に表示されるボールオブジェクトOblの移動速度Vbtよりも速い速度に設定することにより、差分時間TDを短くすることができる。なお、ゲーム装置10−1は、所定時間待機している最中に、投球のキャンセル等をゲーム装置10−2から受け付けてもよい。
[変形例7]
上述した実施形態及び変形例では、打者側のゲーム装置10の打撃情報生成部122は、ボールオブジェクトOblが基準面に到達するまでに、打撃操作が実行されなかった場合、打撃操作が実行されなかったことを示す打撃情報を生成するが、本発明はこのような態様に限定されるものではない。例えば、打者側のゲーム装置10の打撃情報生成部122は、ボールオブジェクトOblが基準面に到達するまでに、打撃操作が実行されなかった場合、打撃情報を生成しなくてもよい。この場合、投手側のゲーム装置10は、図12に示すように、打撃情報を受信する前に到達情報を受信した場合、打撃操作が実行されなかったと判定してもよい。
図12は、変形例7に係る投手側のゲーム装置10の動作の一例を示すフローチャートである。なお、図12は、変形例7に係る到達時刻情報収集処理の一例を示すフローチャートである。図12に示す動作では、図8に示した動作からステップS144及びS164の打撃情報受信の判定処理が省かれ、図8に示したステップS170の打撃画面表示の代わりに、ステップS172、S174、S176及びS178のいずれかの処理が実行される。図12に示すその他の動作は、図8に示した動作と同様である。図8で説明した動作と同様の動作については、説明を省略する。
ステップS172及びS176の打撃動作表示は、投手側のゲーム装置10が到達情報を受信する前に打撃情報を受信した場合に実行される。例えば、ステップS172、又は、ステップS176において、投手側のゲーム装置10の守備表示制御部113は、打者側のゲーム装置10から受信した打撃情報に基づいて、打者キャラクタCbtがバットオブジェクトObtを振る打撃動作を表示部31に表示させる。
ステップS174及びS178の見送り動作表示は、投手側のゲーム装置10が打撃情報を受信する前に到達情報を受信した場合に実行される。例えば、ステップS174、又は、ステップS178において、投手側のゲーム装置10の守備表示制御部113は、打者キャラクタCbtがボールオブジェクトOblを見送る見送り動作を表示部31に表示させる。変形例7においても、上述した実施形態と同様の効果を得ることができる。
[C.付記]
以上の記載から、本発明は例えば以下のように把握される。
[付記1]
本発明の一態様に係るゲーム装置は、投手キャラクタが投げたボールオブジェクトを打者キャラクタが打ち返す野球ゲームにおいて、前記投手キャラクタの操作に使用されるゲーム装置であって、前記ボールオブジェクトを前記投手キャラクタに投球させる操作を受け付ける操作受付部と、前記操作受付部の受け付け結果に基づいて、前記投手キャラクタにより投球される前記ボールオブジェクトに関する投球情報を生成する情報生成部と、前記ゲーム装置に対応する表示部に前記ボールオブジェクトを表示させる表示制御部と、前記打者キャラクタの操作に使用される他のゲーム装置に対応する他の表示部に前記投球情報に基づく移動速度で移動する前記ボールオブジェクトを表示させるために、前記投球情報を前記他のゲーム装置に送信する情報共有処理部と、前記表示部に表示される前記ボールオブジェクトの移動速度を、前記他の表示部に表示される前記ボールオブジェクトの移動速度よりも遅い速度に設定する速度設定部と、を備える、ことを特徴とする。
この態様によれば、速度設定部は、表示部に表示されるボールオブジェクトの移動速度を、他の表示部に表示されるボールオブジェクトの移動速度よりも遅い速度に設定する。このため、この態様によれば、表示部に表示されるボールオブジェクトの移動速度が他の表示部に表示されるボールオブジェクトの移動速度と同じ速度に設定される場合に比べて、表示部に表示されるボールオブジェクトが所定の領域(例えば、ホームベースに対応するホームベースオブジェクト)に到達するタイミングが、他の表示部に表示されるボールオブジェクトが所定の領域に到達するタイミングより早くなることを低減できる。この結果、この態様によれば、他のゲーム装置を使用して操作された打者キャラクタの動作が表示部に反映されないことを低減でき、投球後の表示が不自然になることを低減できる。
なお、上記態様において、「投手キャラクタに投球させる操作を受け付ける」とは、投手キャラクタに投球させる操作の内容を示す操作情報(操作そのものを示す情報)を(操作受付部が)受けることである。例えば、操作受付部は、「投手キャラクタに投球させる操作」がゲームコントローラ等の操作部に対してユーザにより実行された場合、「投手キャラクタに投球させる操作」に対応する操作情報を操作部から受ける。「投手キャラクタに投球させる操作」は、投手キャラクタが投げるボールオブジェクトの球種及びコース等を選択する操作である。また、「投手キャラクタに投球させる操作」は、投手キャラクタがボールオブジェクトをリリースするタイミングを指示する操作を含んでもよい。この場合、例えば、リリースのタイミングを指示する操作(操作ボタンの押下、又は、操作ボタンの押下の解除等)が実行されたタイミング(時刻)を示す情報を含む操作情報が操作部から操作受付部に出力される。
また、上記態様において、「投球情報」とは、操作受付部の受け付け結果に応じて実行されるゲームに係る処理を示す情報である。ここで、「投球操作情報に応じて実行されるゲームに係る処理」は、例えば、ゲームに係る仮想空間におけるボールオブジェクトの移動(処理)に関する情報である。また、「ゲームに係る仮想空間におけるボールオブジェクトの移動(処理)に関する情報」は、例えば、操作受付部の受け付け結果(操作結果)に応じて決定された“球種”、“球速”及び“コース”等に従って投球する投手キャラクタの動作(投球動作)の開始等である。例えば、“コース”は、コースを選択する操作に基づいて決定したコースであってもよいし、コースを選択する操作に基づくコースからコントロールの精度に応じて調整したコースであってもよい。コントロールの精度は、例えば、リリースのタイミングを指示する操作(操作ボタンの押下、又は、操作ボタンの押下の解除等)が実行されたタイミング(時刻)と、リリースのタイミングを指示する操作を実行する際に表示部に表示されたタイミングゲージが示すタイミングとに応じて決定されてもよい。
また、上記態様において、「ボールオブジェクトの移動速度」とは、ボールを表現したボールオブジェクトが野球ゲームに係る仮想空間を移動する速度である。「仮想空間」は、投手に対応する投手キャラクタ、打者に対応する打者キャラクタ及びボールに対応するボールオブジェクト等の存在する仮想的な空間である。例えば、「ボールオブジェクトの移動速度」は、ボールオブジェクトが投手キャラクタからリリースされてから仮想空間における基準位置(例えば、ホームベースオブジェクト)に到達するまでの時間(以下、「移動時間」とも称する)に応じて算出される速度である。具体的には、仮想空間におけるボールオブジェクトのリリース位置から基準位置までの距離が一定(例えば、D)である場合、移動時間をTMとすると、移動速度は、“(1/TM)*D”で表される。また、移動時間をフレーム数に換算した場合、ボールオブジェクトが投手キャラクタからリリースされてから仮想空間における基準位置に到達するまでの表示に用いられるフレーム数を所要フレーム数Fnumとし、フレームレートをFratとすると、移動速度は、“(1/(Fnum/Frat))*D”で表される。
[付記2]
本発明の他の態様に係るゲーム装置は、付記1に記載のゲーム装置であって、前記速度設定部は、前記表示部に表示される前記ボールオブジェクトの移動速度を前記他の表示部に表示される前記ボールオブジェクトの移動速度に比べて遅くする程度を示す調整量を、前記他のゲーム装置との通信状況に応じて決定する、ことを特徴とする。
この態様によれば、速度設定部は、調整量が他のゲーム装置との通信状況に拘わらず固定されている場合に比べて、表示部に表示されるボールオブジェクトの移動速度を他のゲーム装置との通信状況に応じて適切に設定できる。この結果、この態様によれば、投球後の表示が不自然になることを低減できる。
なお、上記態様において、「調整量」とは、例えば、「仮想空間におけるボールオブジェクトの移動速度の差分値(または、比率)」、「仮想空間においてボールオブジェクトが基準位置に到達するまでのフレーム数の差分値(または、比率)」、「仮想空間においてボールオブジェクトが基準位置に到達するまでの時間の差分値(または、比率)」等である。
また、上記態様において、「他のゲーム装置との通信状況」とは、ゲーム装置(投手キャラクタの操作に使用されるゲーム装置)と他のゲーム装置(打者キャラクタの操作に使用されるゲーム装置)との間の「通信状況」である。「通信状況」は、通信にかかる時間、通信速度、通信遅延の有無又は通信遅延の程度等である。
[付記3]
本発明の他の態様に係るゲーム装置は、付記2に記載のゲーム装置であって、前記速度設定部は、前記野球ゲームが開始される度に前記通信状況を算出し、算出した前記通信状況に応じて前記調整量を決定する、ことを特徴とする。
この態様によれば、速度設定部は、調整量が他のゲーム装置との通信状況に拘わらず固定されている場合に比べて、表示部に表示されるボールオブジェクトの移動速度を野球ゲームの開始時における他のゲーム装置との通信状況に応じて適切に設定できる。この結果、この態様によれば、投球後の表示が不自然になることを低減できる。
[付記4]
本発明の他の態様に係るゲーム装置は、付記2に記載のゲーム装置であって、前記速度設定部は、予め決められた1以上の回数の投球が前記投手キャラクタにより実行される度に前記通信状況を算出し、算出した前記通信状況に応じて前記調整量を決定する、ことを特徴とする。
この態様によれば、速度設定部は、野球ゲームを実行している最中に他のゲーム装置との通信状況が変化した場合でも、他のゲーム装置との通信状況の変化に応じて、表示部に表示されるボールオブジェクトの移動速度を適切に設定することができる。この結果、この態様によれば、投球後の表示が不自然になることを低減できる。
[付記5]
本発明の他の態様に係るゲーム装置は、付記4に記載のゲーム装置であって、前記速度設定部は、前記投手キャラクタが複数回の投球を実行する場合、一の投球時の前記通信状況に応じて、後の投球時の前記調整量を決定する、ことを特徴とする。
この態様によれば、速度設定部は、野球ゲームを実行している最中に他のゲーム装置との通信状況が変化した場合でも、他のゲーム装置との通信状況の変化に応じて、表示部に表示されるボールオブジェクトの移動速度を適切に設定することができる。この結果、この態様によれば、投球後の表示が不自然になることを低減できる。
[付記6]
本発明の他の態様に係るゲーム装置は、付記4または5に記載のゲーム装置であって、前記速度設定部は、前記他の表示部に表示される仮想空間における所定の領域に前記ボールオブジェクトが到達したことを示す到達情報を前記他のゲーム装置から受信した第1タイミングと、前記表示部に表示される仮想空間における所定の領域に前記ボールオブジェクトが到達した第2タイミングとの差分を、前記通信状況を示す情報として算出する、ことを特徴とする。
この態様によれば、第1タイミングと第2タイミングとの差分が他のゲーム装置との通信状況を示す情報として用いられる。このため、この態様によれば、他のゲーム装置との通信状況を算出するための専用の情報を他のゲーム装置に送信する必要がないため、通信状況を算出するための専用の情報を他のゲーム装置に送信する場合に比べて、ゲーム装置の処理を簡易にできる。
なお、上記態様において、「所定の領域」とは、投手キャラクタにより投球されたボールオブジェクトが、打者キャラクタがボールオブジェクトを打ち返したか否かに拘わらず、到達する領域である。「所定の領域」は、例えば、ホームベースオブジェクトの一部を含む領域、又はキャッチャーミットオブジェクトの一部含む領域等である。また、「所定の領域」は、例えば、ホームベースオブジェクトより投手キャラクタ側に位置してもよい。
[付記7]
本発明の他の態様に係るゲーム装置は、付記4または5に記載のゲーム装置であって、前記速度設定部は、前記他の表示部に表示される仮想空間における所定の領域に前記ボールオブジェクトが到達したことを示す到達情報を前記他のゲーム装置から受信した第1タイミングと、前記表示部に表示される仮想空間における所定の領域に前記ボールオブジェクトが到達した第2タイミングとの間の期間におけるゲーム画面の表示に用いられるフレーム数を、前記通信状況を示す情報として算出する、ことを特徴とする。
この態様によれば、第1タイミングと第2タイミングとの間の期間におけるフレーム数が他のゲーム装置との通信状況を示す情報として用いられる。このため、この態様によれば、通信状況を算出するための専用の情報を他のゲーム装置に送信する場合に比べて、ゲーム装置の処理を簡易にできる。
[付記8]
本発明の他の態様に係るゲーム装置は、付記6または7に記載のゲーム装置であって、前記表示制御部は、前記他の表示部に表示される仮想空間における所定の領域に前記ボールオブジェクトが到達し、前記打者キャラクタが前記ボールオブジェクトを打ち返した場合、前記表示部に表示される前記投手キャラクタにより投球され、前記表示部に表示される仮想空間における所定の領域に到達した前記ボールオブジェクトの軌道を、前記打者キャラクタにより打ち返された前記ボールオブジェクトの軌道に切り替える、ことを特徴とする。
この態様によれば、表示制御部は、他のゲーム装置のユーザによる打撃操作(打者キャラクタの操作)を実行した結果に基づいて移動するボールオブジェクトの軌道に、表示部に表示される投手キャラクタにより投球されたボールオブジェクトが所定の領域に到達したタイミングに合わせて切り換えることができる。このため、この態様によれば、投球後の表示が不自然になることを低減できる。
なお、上記態様において、「所定の領域」とは、投手キャラクタにより投球されたボールオブジェクトが、打者キャラクタがボールオブジェクトを打ち返したか否かに拘わらず、到達する領域であり、打者キャラクタがボールオブジェクトを打ち返した場合と打ち返さなかった場合とでボールオブジェクトの軌道を変更する境界である。例えば、野球ゲームの場合、「境界」は、ホームベースブジェクトの投手キャラクタ側の辺を含み、ホームベースブジェクトが設置される面に垂直な面であってもよい。
[付記9]
本発明の他の態様に係るゲーム装置は、付記6乃至8のうちいずれか1項に記載のゲーム装置であって、前記所定の領域は、ホームベースオブジェクトの一部を含む、ことを特徴とする。
なお、上記態様において、「ホームベースオブジェクトの一部」とは、例えば、ホームベースオブジェクトの投手キャラクタ側の辺である。この場合、「所定の領域」は、例えば、ホームベースオブジェクトが設置される面に垂直で、ホームベースオブジェクトの投手キャラクタ側の辺を含む面である。なお、「ホームベースオブジェクトの一部」は、ホームベースオブジェクトの投手キャラクタ側の辺に限定されない。例えば、「ホームベースオブジェクトの一部」は、ホームベースオブジェクトの投手キャラクタ側と反対側の頂点であってもよいし、ホームベースオブジェクトの中心であってもよい。この場合、「所定の領域」は、ホームベースオブジェクトの一部に接し、ホームベースオブジェクトが設置される面に垂直で、ホームベースオブジェクトの投手キャラクタ側の辺に並行な面である。
[付記10]
本発明の他の態様に係るゲーム装置は、付記1乃至9のうちいずれか1項に記載のゲーム装置であって、前記表示制御部は、前記他のゲーム装置において前記打者キャラクタが前記投球情報に対応する前記ボールオブジェクトを打ち返したことを示す打撃情報を、前記他のゲーム装置から受信した場合、前記打撃情報に基づいて、前記打者キャラクタ及び前記ボールオブジェクトを前記表示部に表示させる、ことを特徴とする。
この態様によれば、打者キャラクタ及びボールオブジェクトは、他のゲーム装置から受信した打撃情報に基づいて、表示部に表示される。このため、投球後の表示が不自然になることを低減することができる。
なお、上記態様において、「打撃情報」とは、他のゲーム装置(打者キャラクタの操作に使用されるゲーム装置)のユーザにより打者キャラクタに対して実行された打撃操作に基づく打撃が実行された結果を含む情報である。なお、打撃操作は、ボールオブジェクトを打者キャラクタが打ち返すための操作である。例えば、「打撃情報」には、ボールオブジェクトにバットオブジェクトが当たったか空振りしたかを示す打撃結果、ボールオブジェクトにバットオブジェクトが当たった場合のボールオブジェクトの軌道(バットオブジェクトに当たった後のボールオブジェクトの軌道)を示す情報等が含まれる。すなわち、「打撃情報」には、ボールオブジェクトの移動方向、移動速度、落下地点を示す情報も含まれる。さらに、「打撃情報」には、打撃操作が実行されなかった場合、打撃操作が実行されなかったことを示す情報も含まれる。
[付記11]
本発明の他の態様に係るゲーム装置は、投手キャラクタが投げたボールオブジェクトを打者キャラクタが打ち返す野球ゲームにおいて、前記投手キャラクタの操作に使用されるゲーム装置であって、前記ボールオブジェクトを前記投手キャラクタに投球させる操作を受け付ける操作受付部と、前記操作受付部の受け付け結果に基づいて、前記投手キャラクタにより投球される前記ボールオブジェクトに関する投球情報を生成する情報生成部と、前記ゲーム装置に対応する表示部に前記ボールオブジェクトを表示させる表示制御部と、前記打者キャラクタの操作に使用される他のゲーム装置に対応する他の表示部に前記投球情報に基づく移動速度で移動する前記ボールオブジェクトを表示させるために、前記投球情報を前記他のゲーム装置に送信する情報共有処理部と、前記表示部に表示される前記ボールオブジェクトの移動速度を、前記他の表示部に表示される前記ボールオブジェクトの移動速度と異なる速度に設定する速度設定部と、を備える、ことを特徴とする。
この態様によれば、付記1と同様の効果を得ることができる。
[付記12]
本発明の一態様に係るゲームシステムは、投手キャラクタが投げたボールオブジェクトを打者キャラクタが打ち返す野球ゲームを実行するゲームシステムであって、前記投手キャラクタの操作に使用される第1ゲーム装置と、前記第1ゲーム装置と通信可能であり、前記打者キャラクタの操作に使用される第2ゲーム装置とを備え、前記第1ゲーム装置は、前記ボールオブジェクトを前記投手キャラクタに投球させる操作を受け付ける操作受付部と、前記操作受付部の受け付け結果に基づいて、前記投手キャラクタにより投球される前記ボールオブジェクトに関する投球情報を生成する情報生成部と、前記第1ゲーム装置に対応する第1表示部に前記ボールオブジェクトを表示させる第1表示制御部と、前記第2ゲーム装置に対応する第2表示部に前記投球情報に基づく移動速度で移動する前記ボールオブジェクトを表示させるために、前記投球情報を前記第2ゲーム装置に送信する情報共有処理部と、前記第1表示部に表示される前記ボールオブジェクトの移動速度を、前記第2表示部に表示される前記ボールオブジェクトの移動速度よりも遅い速度に設定する第1速度設定部とを備え、前記第2ゲーム装置は、前記第1ゲーム装置から受けた前記投球情報に基づく移動速度を、前記第2表示部に表示される前記ボールオブジェクトの移動速度として設定する第2速度設定部と、前記第2速度設定部で設定された移動速度で移動する前記ボールオブジェクトを前記第2表示部に表示させる第2表示制御部とを備える、ことを特徴とする。
この態様によれば、付記1と同様の効果を得ることができる。
[付記13]
本発明の一態様に係るゲームプログラムは、投手キャラクタが投げたボールオブジェクトを打者キャラクタが打ち返す野球ゲームのゲームプログラムであって、前記投手キャラクタの操作に使用されるゲーム装置のプロセッサを、前記ボールオブジェクトを前記投手キャラクタに投球させる操作を受け付ける操作受付部と、前記操作受付部の受け付け結果に基づいて、前記投手キャラクタにより投球される前記ボールオブジェクトに関する投球情報を生成する情報生成部と、前記ゲーム装置に対応する表示部に前記ボールオブジェクトを表示させる表示制御部と、前記打者キャラクタの操作に使用される他のゲーム装置に対応する他の表示部に前記投球情報に基づく移動速度で移動する前記ボールオブジェクトを表示させるために、前記投球情報を前記他のゲーム装置に送信する情報共有処理部と、前記表示部に表示される前記ボールオブジェクトの移動速度を、前記他の表示部に表示される前記ボールオブジェクトの移動速度よりも遅い速度に設定する速度設定部と、して機能させる、ことを特徴とする。
この態様によれば、付記1と同様の効果を得ることができる。
[付記14]
本発明の他の態様に係るゲーム装置は、第1キャラクタが放ったオブジェクトに対して、第2キャラクタが所定の作用を及ぼすゲームにおいて、前記第1キャラの操作に使用されるゲーム装置であって、前記オブジェクトを前記第1キャラクタが放つための操作を受け付ける操作受付部と、前記操作受付部の受け付け結果に基づいて、前記第1キャラクタにより放たれる前記オブジェクトに関する移動情報を生成する移動情報生成部と、前記ゲーム装置に対応する表示部に前記オブジェクトを表示させる表示制御部と、前記第2キャラクタの操作に使用される他のゲーム装置に対応する他の表示部に前記移動情報に基づく移動速度で移動する前記オブジェクトを表示させるために、前記移動情報を前記他のゲーム装置に送信する情報共有処理部と、前記表示部に表示される前記オブジェクトの移動速度を、前記他の表示部に表示される前記オブジェクトの移動速度よりも遅い速度に設定する速度設定部と、を備える、ことを特徴とする。
この態様によれば、付記1と同様の効果を得ることができる。
なお、上記態様において、「ゲーム」とは、一の選手が放った物体に対して、一の選手の対戦相手である他の選手が所定の作用を及ぼす競技を仮想空間でゲーム要素を用いて実行するゲームである。ここで、「仮想空間」とは、ゲーム装置上の仮想的な空間であり、ゲームに係る仮想的な物体等が存在する空間である。「ゲームに係る仮想的な物体」は、「ゲーム要素」の一例であり、例えば、ゲームに係るキャラクタ、及び、ゲームに係るオブジェクトを含む概念であってもよい。第1キャラクタ及び第2キャラクタは、ゲームに係るキャラクタの一例である。また、「ゲーム要素」は、上述の「仮想空間に存在する仮想的な物体」に限定されず、「仮想空間を撮像する仮想カメラ」であってもよい。
例えば、競技が野球、ソフトボール又はクリケットである場合、「第1キャラクタ」は、投手に対応する投手キャラクタであり、「第2キャラクタ」は、打者に対応する打者キャラクタであり、「オブジェクト」は、ボールに対応するボールオブジェクトである。この場合、「第1キャラクタが放ったオブジェクト」は、投手が投げたボールに対応する。また、所定の作用は、例えば、オブジェクトを打ち返すことである。なお、競技がクリケットの場合、野球ゲームのホームベースオブジェクトに対応するオブジェクトは、例えば、ウィケットに対応するウィケットオブジェクトである。
競技がサッカーである場合、「第1キャラクタ」は、PKのキッカーに対応するキャラクタであり、「第2キャラクタ」は、ゴールキーパーに対応するキャラクタであり、「オブジェクト」は、ボールに対応するボールオブジェクトである。この場合、「第1キャラクタが放ったオブジェクト」は、キッカーが蹴ったボールに対応する。また、所定の作用は、例えば、オブジェクトのゴールへの進入を止めることである。
すなわち、「ゲーム」は、野球ゲーム、ソフトボールゲーム、クリケットゲーム、サッカーゲーム、テニスゲーム、卓球ゲーム及びバレーボールゲーム等の球技ゲーム全般が該当する。
[付記15]
本発明の他の態様に係るゲーム装置は、投手キャラクタが投げたボールオブジェクトを打者キャラクタが打ち返す野球ゲームにおいて、前記投手キャラクタの操作に使用されるゲーム装置であって、前記ボールオブジェクトを前記投手キャラクタに投球させるためのユーザの操作を示す情報を、ユーザにより操作される操作部から受ける操作受付部と、前記操作情報入力部が受けた前記情報に基づいて、前記投手キャラクタにより投球される前記ボールオブジェクトに関する投球情報を生成する情報生成部と、前記ゲーム装置に対応する表示部に前記ボールオブジェクトを表示させる表示制御部と、前記他のゲーム装置に対応する他の表示部に表示される仮想空間において、前記投球情報に基づく移動速度で前記ボールオブジェクトを移動させるために、前記投球情報を前記打者キャラクタの操作に使用される他のゲーム装置に送信する情報共有処理部と、前記表示部に表示される仮想空間における前記ボールオブジェクトの移動速度を、前記他の表示部に表示される仮想空間における前記ボールオブジェクトの移動速度よりも遅い速度に設定する速度設定部と、を備える、ことを特徴とする。
この態様によれば、付記1と同様の効果を得ることができる。
[付記16]
本発明の一態様に係る制御方法は、投手キャラクタが投げたボールオブジェクトを打者キャラクタが打ち返す野球ゲームの制御方法であって、前記投手キャラクタの操作に使用されるゲーム装置のプロセッサが、前記ボールオブジェクトを前記投手キャラクタに投球させる操作を受け付け、前記操作受付部の受け付け結果に基づいて、前記投手キャラクタにより投球される前記ボールオブジェクトに関する投球情報を生成し、前記ゲーム装置に対応する表示部に前記ボールオブジェクトを表示させ、前記打者キャラクタの操作に使用される他のゲーム装置に対応する他の表示部に前記投球情報に基づく移動速度で移動する前記ボールオブジェクトを表示させるために、前記投球情報を前記他のゲーム装置に送信し、前記表示部に表示される前記ボールオブジェクトの移動速度を、前記他の表示部に表示される前記ボールオブジェクトの移動速度よりも遅い速度に設定する、ことを特徴とする。
この態様によれば、付記1と同様の効果を得ることができる。