JP2017205311A - ゲームプログラム、方法及びタッチスクリーンを備える情報処理装置 - Google Patents
ゲームプログラム、方法及びタッチスクリーンを備える情報処理装置 Download PDFInfo
- Publication number
- JP2017205311A JP2017205311A JP2016100019A JP2016100019A JP2017205311A JP 2017205311 A JP2017205311 A JP 2017205311A JP 2016100019 A JP2016100019 A JP 2016100019A JP 2016100019 A JP2016100019 A JP 2016100019A JP 2017205311 A JP2017205311 A JP 2017205311A
- Authority
- JP
- Japan
- Prior art keywords
- game
- game character
- character
- user
- touch screen
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- User Interface Of Digital Computer (AREA)
Abstract
【課題】タッチスクリーンを備えるコンピュータにおいて、対戦相手となるゲームキャラクタとの間で、ボールなどを打球させる等の操作を受け付けてゲームを進行させるスポーツゲームにおいて、着弾位置を演算する技術を提供する。【解決手段】情報処理装置は、タッチスクリーンに対するタップ操作またはフリック操作を受け付けることで、ゲームキャラクタ134に、対象物(ボール)を打球させる。情報処理装置は、対象物の着弾位置を、フィールド面におけるゲームキャラクタ134の位置に基づいて決定する。情報処理装置は、対象物を打球するための入力操作のタイミングに応じて、対象物の移動先を決定する。情報処理装置は、ゲームキャラクタのストロークパラメータの設定に応じて、設定値が良好であるほど、対戦相手のフィールド面の、着弾が有効な領域の境界付近に着弾させ、打球のばらつきを抑える。【選択図】図12
Description
本開示は、タッチ操作による入力操作を受け付けてゲームを進行させるゲームプログラムの技術に関し、特に、ゲームキャラクタを操作して、ゲームキャラクタを移動させつつ、対戦相手となるゲームキャラクタとの間で、ボールなどの対象物を打球させる等の操作を受け付けてゲームを進行させるスポーツゲームの技術に関する。
仮想空間内にゲームキャラクタを表示させてゲームを進行させるゲームプログラムが、様々な事業者によって提供されている。例えば、テニス、卓球、バドミントン、バレーボールなどのスポーツを題材としたスポーツゲームが提供されている。
スポーツゲームは、コンピュータで実行されることにより、例えば、仮想空間内にゲームキャラクタおよび対戦相手となるキャラクタを配置させ、仮想空間内に仮想カメラを配置して、仮想カメラの撮影範囲の画像をディスプレイに表示することでゲームを進行させる。ユーザは、例えば、仮想空間内のゲームキャラクタを操作して、ゲームキャラクタを移動させつつ、対戦相手となるキャラクタとの間で、ボールなどの対象物を打球させる等の操作を行うことでゲームを進行させることができる。
これらのスポーツゲームの興趣性を向上させるため、様々な技術が検討されている。例えば、スポーツゲームにおいて、現実のスポーツにおける臨場感を再現することでゲームの興趣性を向上させているものがある。例えば、特開2009−112427号公報(特許文献1)には、テニスゲームの例において、ショット可能領域を操作対象キャラクタの位置に基づいて設定することと、ボールがショット可能領域に含まれないタイミングでユーザがショット指示ボタンを押下した場合に、操作対象キャラクタが空振りすることと、ボールがショット可能領域に含まれるタイミングでユーザがショット指示ボタンを押下した場合に、操作対象キャラクタがショット動作を行うこと等が記載されている。
また、特許文献1に記載されるテニスゲームにおいて、ボールを打ち返す領域を、十字ボタンを用いてユーザが指示することが記載されている。対戦相手コート内に、複数の目標領域が設定されており、各目標領域と、十字ボタンの押下方向とを対応付けることで、ボールを目標領域に打ち返すことをユーザが操作対象キャラクタに指示することができる。特許文献1の技術によると、ショット可能領域のうち、操作対象キャラクタの位置から近い領域にボールがあるときにショット指示ボタンが押下された場合よりも、操作対象キャラクタの位置から遠い領域にボールがあるときにショット指示ボタンが押下された場合に、ショットの精度を低下させることが記載されている。こうすることで、スポーツゲームのリアリティを向上させることができ、ゲームの興趣性を向上させることができる。
しかしながら、特許文献1の技術によると、対戦相手に打球するための対象物の着弾位置を演算する処理が煩雑になるという課題がある。特許文献1の技術によると、対戦相手のコート内の、いずれの領域が十字キーによって指定されているかの情報、および、ボールを打球するためのショット指示ボタンが押下された場合に、ボールが操作対象キャラクタの位置から近くにあるか遠くにあるか等の情報を必要とする。
また、近年は、スマートフォンなどタッチスクリーンを備えた情報処理装置で動作させることができるゲームプログラムも、ネットワークを介して広く流通している。このようなゲームプログラムは、十字キーなど方向を指定するための物理的な入力ボタンを備えていない。
また、近年は、スマートフォンなどタッチスクリーンを備えた情報処理装置で動作させることができるゲームプログラムも、ネットワークを介して広く流通している。このようなゲームプログラムは、十字キーなど方向を指定するための物理的な入力ボタンを備えていない。
本開示は、対戦相手となるゲームキャラクタとの間で、ボールなどの対象物を打球させる等の操作を受け付けてゲームを進行させるスポーツゲームにかかるゲームプログラムを実行する場合に、対象物の着弾位置の演算をいっそう容易にする技術を提供することを目的とする。また、本開示は、タッチスクリーンを備えるコンピュータにおいて、対戦相手に打球する領域を指定するためのユーザの入力操作をいっそう容易にすることで、ゲームに対する興趣性をいっそう向上させる技術を提供することを目的とする。
本開示に示す一実施形態によれば、タッチ操作による入力操作を受け付けるタッチスクリーンと、プロセッサと、メモリとを備えるコンピュータにおいて実行されるゲームプログラムが提供される。ゲームプログラムは、プロセッサに、タッチスクリーンに対する第1の入力操作に基づいて、ゲームキャラクタを、ゲームキャラクタが移動可能な範囲内で移動させるステップと、タッチスクリーンに対する第2の入力操作を受け付けた場合に、ゲームキャラクタにスイング動作を行わせるステップと、スイング動作を行わせるための第2の入力操作を受け付けた場合に、対象物が、ゲームキャラクタの周囲に設定されるスイング領域に含まれるときは、ゲームキャラクタが移動可能な範囲内におけるゲームキャラクタの位置に基づいて、対象物を打ち返す移動先を決定し、決定された移動先に向けて対象物をスイング動作により相手側ゲームキャラクタに向けて打ち返すよう対象物を移動させるステップと、を実行させる。
別の実施形態によると、タッチスクリーンを備えるコンピュータが、入力操作を受け付けることによりユーザが操作するゲームキャラクタと、ゲームキャラクタと対戦する相手側ゲームキャラクタとの間で、対象物を交互に打ち返すスポーツゲームを実行する方法が提供される。方法は、コンピュータが、タッチスクリーンに対する第1の入力操作に基づいて、ゲームキャラクタを、ゲームキャラクタが移動可能な範囲内で移動させるステップと、タッチスクリーンに対する第2の入力操作を受け付けた場合に、ゲームキャラクタにスイング動作を行わせるステップと、スイング動作を行わせるための第2の入力操作を受け付けた場合に、対象物が、ゲームキャラクタの周囲に設定されるスイング領域に含まれるときは、ゲームキャラクタが移動可能な範囲内におけるゲームキャラクタの位置に基づいて、対象物を打ち返す移動先を決定し、決定された移動先に向けて対象物をスイング動作により相手側ゲームキャラクタに向けて打ち返すよう対象物を移動させるステップとを実行することを含む。
別の実施形態によると、タッチ操作による入力操作を受け付けるタッチスクリーンを備える情報処理装置が提供される。情報処理装置は、制御部と、記憶部とを備える。記憶部は、入力操作を受け付けることによりユーザが操作するゲームキャラクタと、ゲームキャラクタと対戦する相手側ゲームキャラクタとの間で、対象物を交互に打ち返すスポーツゲームのゲームプログラムを記憶するように構成されている。制御部は、タッチスクリーンに対する第1の入力操作に基づいて、ゲームキャラクタを、ゲームキャラクタが移動可能な範囲内で移動させるキャラクタ移動制御部と、タッチスクリーンに対する第2の入力操作を受け付けた場合に、ゲームキャラクタにスイング動作を行わせるキャラクタ動作制御部と、スイング動作を行わせるための第2の入力操作を受け付けた場合に、対象物が、ゲームキャラクタの周囲に設定されるスイング領域に含まれるときは、ゲームキャラクタが移動可能な範囲内におけるゲームキャラクタの位置に基づいて、対象物を打ち返す移動先を決定し、決定された移動先に向けて対象物をスイング動作により相手側ゲームキャラクタに向けて打ち返すよう対象物を移動させる対象物移動制御部とを含む。
一実施形態によると、スポーツゲームにかかるゲームプログラムを実行する場合に、対象物の着弾位置の演算をいっそう容易にすることができる。また、一実施形態によると、タッチスクリーンを備えるコンピュータにおいて、対象物を対戦相手に打球する領域を指定するためのユーザの入力操作をいっそう容易にしつつ、ゲームに対する興趣性をいっそう向上させることができる。
以下、図面を参照しつつ、本発明の実施の形態について説明する。以下の説明では、同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがって、それらについての詳細な説明は繰り返さない。
<実施の形態1>
本実施形態において、ユーザは、例えばスマートフォンなどの、タッチスクリーンを搭載した情報処理装置を操作して、ゲームサーバと、スマートフォンとの間でゲームに関するデータを送受信しながらゲームを進行させる。ゲームは、ユーザが一人でプレイするシングルプレイと、ユーザが他のユーザとともにプレイするマルチプレイとに対応する。
本実施形態において、ユーザは、例えばスマートフォンなどの、タッチスクリーンを搭載した情報処理装置を操作して、ゲームサーバと、スマートフォンとの間でゲームに関するデータを送受信しながらゲームを進行させる。ゲームは、ユーザが一人でプレイするシングルプレイと、ユーザが他のユーザとともにプレイするマルチプレイとに対応する。
図1は、実施の形態のゲーム配信システム1の構成を示す図である。図1に示すように、ゲーム配信システム1は、ユーザが使用する情報処理装置と、サーバ20とを含み、これらの装置がネットワーク80によって互いに通信可能に接続されている。
図1の例では、ユーザが使用する情報処理装置として、携帯端末10A、携帯端末10Bおよび携帯端末10C(以下、携帯端末10A、10B、10Cなどの携帯端末を総称して「携帯端末10」と記載することもある)など複数の携帯端末を示している。携帯端末10Aと携帯端末10Bとは、無線基地局81と通信することにより、ネットワーク80と接続する。携帯端末10Cは、家屋などの施設に設置される無線ルータ82と通信することにより、ネットワーク80と接続する。携帯端末10は、タッチスクリーンを備える端末であり、例えば、スマートフォン、ファブレット、タブレットなどである。
携帯端末10は、ゲームプログラムを実行することにより、ゲームプログラムに応じたゲームをプレイする環境をユーザに対して提供する。携帯端末10は、例えば、アプリケーション等を配信するプラットフォームを介してゲームプログラムをインストールする。携帯端末10は、携帯端末10にインストールされたゲームプログラム、または、予めプリインストールされているゲームプログラムを実行することで、ユーザによるゲームのプレイを可能とする。携帯端末10は、ゲームプログラムを読み込んで実行することにより、携帯端末10と、サーバ20とを通信接続して、ゲームの進行に応じてゲームに関連するデータを携帯端末10とサーバ20との間で送受信する。
サーバ20は、ゲームのプレイに必要なデータを、適宜、携帯端末10へ送信することで、携帯端末10でのゲームのプレイを進行させる。サーバ20は、ゲームをプレイする各ユーザの、ゲームに関連する各種データを管理する。サーバ20は、携帯端末10と通信し、各ユーザのゲームの進行に応じて、画像、音声、テキストデータその他のデータを携帯端末10へ送信する。
例えば、サーバ20は、各ユーザがゲームのストーリーを進行させた進行状況、ゲーム内に登場するゲームキャラクタのうち各ユーザが使用可能なゲームキャラクタの情報、ゲームキャラクタの能力を示すパラメータ、ゲームキャラクタが使用する道具の性能を示すパラメータその他の各種データを管理する。また、サーバ20は、ゲームの運営者がユーザに対してキャンペーン、ゲームの進行における不具合の発生、不具合の解消その他のゲームの運営に関連する情報等をユーザに通知する処理を行う。
ゲームプログラムは、ユーザがゲームをプレイするモードとして、一人のユーザがプレイする場合(シングルプレイ)と、複数人のユーザが協同してプレイする場合(マルチプレイ)とに対応している。例えば、ゲーム配信システム1において、サーバ20が、マルチプレイに参加するユーザを特定して各ユーザの各携帯端末10と通信すること等により、マルチプレイでゲームをプレイする環境を各ユーザに提供する。
ゲーム配信システム1は、マルチプレイに対応することにより、例えば、テニスゲームであれば、各ユーザでチームを結成してダブルスの試合を行うことを可能とする。また、ゲーム配信システム1は、サッカーゲームであれば、各ユーザが同一のサッカーチームのメンバーとなって試合を行うことを可能とする。また、ゲーム配信システム1は、アクションゲームであれば、各ユーザでチームを結成して、クエストモードなど比較的強力なキャラクタと対戦するゲームモードを複数のユーザがプレイすることを可能とする。また、ゲーム配信システム1は、マルチプレイに対応することにより、ユーザ同士が対戦することを可能とする。
<構成>
サーバ20のハードウェアの構成を説明する。サーバ20は、通信IF(Interface)22と、入出力IF23と、メモリ25と、ストレージ26と、プロセッサ29とを備え、これらが通信バスを介して互いに接続する。
サーバ20のハードウェアの構成を説明する。サーバ20は、通信IF(Interface)22と、入出力IF23と、メモリ25と、ストレージ26と、プロセッサ29とを備え、これらが通信バスを介して互いに接続する。
通信IF22は、例えばLAN(Local Area Network)規格など各種の通信規格に対応しており、携帯端末10など外部の通信機器との間でデータを送受信するためのインタフェースとして機能する。
入出力IF23は、サーバ20への情報の入力を受け付けるとともに、サーバ20の外部へ情報を出力するためのインタフェースとして機能する。入出力IF23は、マウス、キーボード等の情報入力機器の接続を受け付ける入力受付部と、画像等を表示するためのディスプレイ等の情報出力機器の接続を受け付ける出力部とを含む。
メモリ25は、処理に使用されるデータ等を記憶するための記憶装置である。メモリ25は、例えば、プロセッサ29が処理を行う際に一時的に使用するための作業領域をプロセッサ29に提供する。メモリ25は、ROM(Read Only Memory)、RAM(Random Access Memory)等の記憶装置を含んで構成されている。
ストレージ26は、プロセッサ29が読み込んで実行するための各種プログラム及びデータを記憶するための記憶装置である。ストレージ26が記憶する情報は、ゲームプログラム、ゲームプログラムに関連する情報、ゲームプログラムをプレイするユーザの情報その他の情報を含む。ストレージ26は、HDD(Hard Disk Drive)、フラッシュメモリ等の記憶装置を含んで構成されている。
プロセッサ29は、ストレージ26に記憶されるプログラム等を読み込んで実行することにより、サーバ20の動作を制御する。プロセッサ29は、例えば、CPU(Central Processing Unit)、MPU(Micro Processing Unit)、GPU(Graphics Processing Unit)等を含んで構成される。
図2は、携帯端末10の構成を示すブロック図である。図2を参照して、携帯端末10は、アンテナ110と、無線通信IF120と、タッチスクリーン130と、入出力IF140と、記憶部150と、音声処理部160と、マイク170と、スピーカ180と、制御部190とを含む。
アンテナ110は、携帯端末10が発する信号を電波として空間へ放射する。また、アンテナ110は、空間から電波を受信して受信信号を無線通信IF120へ与える。
無線通信IF120は、携帯端末10が他の通信機器と通信するため、アンテナ110等を介して信号を送受信するための変復調処理などを行う。無線通信IF120は、チューナー、高周波回路などを含む無線通信用の通信モジュールであり、携帯端末10が送受信する無線信号の変復調や周波数変換を行い、受信信号を制御部190へ与える。
タッチスクリーン130は、ユーザからの入力を受け付けて、ユーザに対し情報をディスプレイ132に出力する。タッチスクリーン130は、ユーザの入力操作を受け付けるための部材(タッチパネル131)を含む。また、タッチスクリーン130は、メニュー画面や、ゲームの進行を画面に表示するための部材(ディスプレイ132)を含む。タッチパネル131は、例えば静電容量方式のものを用いることによって、ユーザの指などが接近したことを検出する。ディスプレイ132は、例えばLCD(Liquid Crystal Display)、有機EL(electroluminescence)その他の表示装置によって実現される。
入出力IF140は、携帯端末10への情報の入力を受け付けるとともに、携帯端末10の外部へ情報を出力するためのインタフェースとして機能する。
記憶部150は、フラッシュメモリ、RAM(Random Access Memory)等により構成され、携帯端末10が使用するプログラム、および、携帯端末10がサーバ20から受信する各種データ等を記憶する。
音声処理部160は、音声信号の変復調を行う。音声処理部160は、マイク170から与えられる信号を変調して、変調後の信号を制御部190へ与える。また、音声処理部160は、音声信号をスピーカ180へ与える。音声処理部160は、例えば、音声処理用のプロセッサによって実現される。マイク170は、音声信号の入力を受け付けて制御部190へ出力するための音声入力部として機能する。スピーカ180は、音声信号を、携帯端末10の外部へ出力するための音声出力部として機能する。
制御部190は、記憶部150に記憶されるプログラムを読み込んで実行することにより、携帯端末10の動作を制御する。制御部190は、例えば、アプリケーションプロセッサによって実現される。
携帯端末10がゲームプログラム151を実行する処理について、より詳細に説明する。ある局面において、記憶部150は、ゲームプログラム151と、ゲーム情報152と、ユーザ情報153とを記憶する。携帯端末10は、例えば、サーバ20からゲームプログラムをダウンロードして記憶部150に記憶させる。また、携帯端末10は、ゲームの進行に伴いサーバ20と通信することで、ゲーム情報152およびユーザ情報153等の各種のデータをサーバ20と送受信する。
ゲームプログラム151は、携帯端末10においてゲームを進行させるためのプログラムである。ゲーム情報152は、ゲームプログラム151が参照する各種のデータを含む。ゲーム情報152は、例えば、ゲームにおいて仮想空間に配置するオブジェクトの情報、オブジェクトに対応付けられた効果の情報(ゲームキャラクタに設定されるスキルの情報などを含む)などを含む。ユーザ情報153は、ゲームをプレイするユーザについての情報を含む。ユーザ情報153は、例えば、ゲームをプレイする携帯端末10のユーザを識別する情報、マルチプレイ時に協同してゲームをプレイする他のユーザを識別する情報その他の情報を含む。
制御部190は、ゲームプログラム151を読み込んで実行することにより、入力操作受付部191と、ゲーム進行処理部192と、移動操作検出部193と、カメラ配置制御部194と、オブジェクト制御部195と、表示制御部196と、の各機能を発揮する。
入力操作受付部191は、タッチスクリーン130の出力に基づいて、ユーザの入力操作を受け付ける。具体的には、入力操作受付部191は、ユーザの指などがタッチパネル131に接近したことを、タッチスクリーン130を構成する面の横軸および縦軸からなる座標系の座標として検出する。
入力操作受付部191は、タッチスクリーン130に対するユーザの操作を判別する。入力操作受付部191は、例えば、(1)「接近操作」、(2)「リリース操作」、(3)「タップ操作」、(4)「ダブルタップ操作」、(5)「長押し操作(ロングタッチ操作)」、(6)「ドラッグ操作(スワイプ操作)」、(7)「ムーブ操作」、(8)「フリック操作」、その他のユーザの操作を判別する。入力操作受付部191が判別するユーザの操作は、上記に限られない。例えば、タッチパネル131が、ユーザがタッチパネル131に対して押下する圧力の大きさを検出可能な機構を有する場合、入力操作受付部191は、ユーザが押下した圧力の大きさを判別する。また、制御部190は、タッチスクリーン130へのユーザの指などの接近を検出している状態を、「タッチオン状態」と判別する。制御部190は、タッチスクリーン130へのユーザの指などの接近を検出しない状態を、「タッチオフ状態」と判別する。制御部190は、タッチスクリーン130が逐次出力するユーザの指などの接近位置を示す座標を、「タッチナウ」の座標として受け付ける。
ここで、(1)「接近操作」とは、ユーザが指などをタッチスクリーン130に接近させる操作である。タッチスクリーン130は、ユーザの指などが接近したこと(ユーザの指などがタッチスクリーン130に接触したことを含む)をタッチパネル131により検出し、検出したタッチスクリーン130の座標に応じた信号を制御部190へ出力する。制御部190は、タッチスクリーン130へのユーザの指などの接近を検出しない状態から、接近を検出したときに、状態が「タッチオン状態」になったと判別する。
(2)「リリース操作」とは、ユーザがタッチスクリーン130に指などを接近させることで操作する状態を止める操作である。入力操作受付部191は、例えば、ユーザが指などをタッチスクリーン130に接触させている状態から、指を離す操作をしたときに、ユーザの操作を「リリース操作」と判別する。制御部190は、タッチスクリーン130へのユーザの指などの接近を検出している状態から、接近を検出しない状態になったときに、状態が「タッチオン状態」から「タッチオフ状態」になったと判別する。
(3)「タップ操作」とは、ユーザがタッチスクリーン130に対して指などを接近させる接近操作をした後に、接近操作をした位置でリリース操作を行うことである。入力操作受付部191は、接近操作が検出されない状態(ユーザの指などがタッチパネル131から離れており、タッチパネル131がユーザの指などの接近を検出していない状態)から、タッチスクリーン130の出力に基づいて、ユーザの指などが接近したことを検出した場合に、その検出した座標を「初期タッチ位置」として保持する。入力操作受付部191は、初期タッチ位置の座標と、リリース操作をする直前に(タッチオフ状態が検出される直前に)タッチスクリーン130により検出されている座標とがほぼ同一である場合(接近操作が検出された座標から一定範囲内の座標においてリリース操作にかかる座標が検出された場合)に、ユーザの操作を「タップ操作」と判別する。
(4)「ダブルタップ操作」とは、ユーザがタップ操作を一定時間内に2回行う操作である。入力操作受付部191は、例えば、ユーザの操作をタップ操作と判別してから一定時間内に、タップ操作にかかる座標で再びタップ操作を判別した場合に、ユーザの操作を「ダブルタップ操作」と判別する。
(5)「長押し操作」とは、ユーザがタッチスクリーン130を押し続ける操作である。タッチスクリーン130は、ユーザの操作を検出して接近操作を判別してから、接近操作が検出された座標において接近操作が継続している時間が一定時間を超えた場合に、ユーザの操作を「長押し操作」(「長押し操作」を、「ロングタッチ操作」と称することもある)と判別する。
(6)「ドラッグ操作」とは、ユーザがタッチスクリーン130に指などを接近させた接近状態を維持したまま、指をスライドさせる操作である。
(7)「ムーブ操作」とは、ユーザがタッチスクリーン130において、接近操作を維持しつつ、タッチスクリーン130に指などを接近させている位置を移動させてリリース操作を行う一連の操作をいう。
(8)「フリック操作」は、ユーザがムーブ操作を予め定められた時間よりも短い時間で行う操作をいう。フリック操作は、ユーザがタッチスクリーン130で指を弾くような操作である。制御部190は、例えば、ユーザがムーブ操作を行う時間と比較するための複数の閾値を保持し、ユーザがタッチスクリーン130において指などを接近させている位置を一定距離移動させるまでの時間が第1の閾値よりも短い場合(比較的素早く指を弾く場合)は、フリック操作が「強フリック」であると判定し、第1の閾値よりも大きく第2の閾値(第2の閾値を、第1の閾値よりも大きく設定する)よりも小さい場合に、フリック操作が「弱フリック」であると判定することとしてもよい。
ゲーム進行処理部192は、ユーザの操作に応じて、各種のプログラムを呼び出す等によりゲームを進行させる処理を行う。例えば、ゲーム進行処理部192は、サーバ20と通信し、ゲームの進行に応じてサーバ20へデータを送信する処理、サーバ20からゲームに関連するデータを受信する処理、ゲームの進行に応じてユーザに報酬を付与する処理、時間の経過を計測する処理その他の処理を行う。
移動操作検出部193は、タッチスクリーン130に対するユーザの入力操作に基づいて、ゲームに登場するキャラクタ(以下、「ゲームキャラクタ」と称することもある)を移動させる入力操作の操作内容を検出する。例えば、ゲームプログラム151がスポーツゲームである場合、移動操作検出部193は、ユーザの入力操作に基づいて、ゲームキャラクタを移動させる方向を検出する。このように、移動操作検出部193は、ユーザがゲームキャラクタの移動方向を指定する入力操作を受け付ける。
具体的には、移動操作検出部193は、タッチスクリーン130からユーザの指が離れた状態から、ユーザが指をタッチスクリーン130に接近させて、入力操作受付部191がタッチパネル131にユーザの指が接近したことを検出した座標を初期タッチ位置として、ユーザがドラッグ操作を行った場合に、初期タッチ位置の座標とタッチスクリーン130の検出結果とに基づいて、ゲームキャラクタの移動方向を検出する。移動操作検出部193の詳細な処理は、後述する。
カメラ配置制御部194は、仮想空間に配置される各オブジェクトを、どのようにユーザに見せるかを決定する。具体的には、カメラ配置制御部194は、制御部190がゲームプログラム151を読み込んで実行することで生成される仮想空間において、仮想カメラの配置(カメラワーク)を制御する。制御部190は、仮想空間における仮想カメラの撮影画像をディスプレイ132に表示することで、ユーザに対しゲームのプレイ環境を提供する。
オブジェクト制御部195は、携帯端末10がゲームプログラム151を実行することにより進行されるゲームに登場する各種オブジェクト、および、入力操作受付部191が受け付けたユーザの操作内容に基づいて生成される各種オブジェクト(例えば、GUI(Graphical User Interface)画面など)の生成、変形、移動などの処理を制御する。オブジェクト制御部195は、例えば、ユーザがゲームキャラクタを移動させるためのタッチスクリーン130に対する入力操作に基づいて、ゲームキャラクタの移動方向を示すオブジェクトを生成し、生成したオブジェクトを変形する。
表示制御部196は、仮想カメラのカメラワークに従った画像をディスプレイ132に出力する。表示制御部196は、仮想空間内における仮想カメラの配置に応じて、ディスプレイ132の表示内容を決定し、決定した表示内容に従う画像、テキスト等の各種の情報をディスプレイ132に出力する。
図3は、サーバ20の機能的な構成を示すブロック図である。図3を参照して、サーバ20の詳細な構成を説明する。サーバ20は、プログラムに従って動作することにより、通信部220と、記憶部250と、制御部290としての機能を発揮する。
通信部220は、サーバ20が携帯端末10などの外部の通信機器と通信するためのインタフェースとして機能する。
記憶部250は、携帯端末10においてユーザがゲームを進行させるための各種プログラムおよびデータを記憶する。ある局面において、記憶部250は、ゲームプログラム251と、ゲーム情報252と、ユーザ情報253とを記憶する。
ゲームプログラム251は、サーバ20が携帯端末10と通信して、携帯端末10においてゲームを進行させるためのプログラムである。ゲームプログラム251は、ゲームを進行させるための各種データであるゲーム情報252およびユーザ情報253等を参照して、ユーザの入力操作に応じてゲームを進行させる。ゲームプログラム251は、制御部290に実行されることにより、携帯端末10とデータを送受信する処理、携帯端末10のユーザが行った操作内容に応じてゲームを進行させる処理、ゲームをプレイするユーザの情報を更新する処理その他の処理をサーバ20に行わせる。
ゲーム情報252は、ゲームプログラム251が参照する各種のデータを含む。ゲーム情報252は、オブジェクト管理テーブル252Aと、パッシブスキル管理テーブル252Bと、アクティブスキル管理テーブル252Cとを含む。
オブジェクト管理テーブル252Aは、ゲームの仮想空間内に配置されるオブジェクトの設定を示す。携帯端末10は、ゲームプログラム151を実行することにより、仮想空間内に配置されるオブジェクトを、仮想空間内に配置される仮想カメラによって撮影した画像をディスプレイ132に表示することでゲームを進行させる。
ここで、オブジェクトとしては、例えば、ユーザが操作するゲームキャラクタを示すオブジェクト、ゲームキャラクタが装着する装着対象物を示すオブジェクトなど様々なものがある。制御部190は、ユーザがタッチスクリーン130に対して予め定められた入力操作を行うこと、ゲームの進行に伴い一定の条件を満たすこと、その他の様々な事象の発生を契機として、オブジェクトに対応付けられた処理を行う。
例えば、あるオブジェクトに対してユーザがタッチスクリーン130に対して接近操作を行うことで、制御部190は、オブジェクトを、ユーザによって選択された状態とする。また、例えば、制御部190は、ユーザによるドラッグ操作を受け付けることで、ユーザが移動対象とするオブジェクトを、ユーザの入力操作に応じて移動させる等の処理を行う。また、例えば、制御部190は、ユーザがオブジェクトに対して行うタッチ操作を受け付けることで、ユーザに対し、ゲームを有利に進めるための報酬を付与する等の処理を行う。
パッシブスキル管理テーブル252Bは、オブジェクトを識別する情報と、オブジェクトに対応付けられたパッシブスキルの情報とが対応付けられている。ここで、パッシブスキルとは、例えば、ゲームにおいて予め定められた条件が満たされたときに発動され、ユーザがゲームを有利に進行させることができるものである。例えば、パッシブスキルが発動した場合に、ゲームキャラクタの移動速度が向上する等の、ゲームを有利に進行させられる効果を発揮させる。
アクティブスキル管理テーブル252Cは、オブジェクトを識別する情報と、オブジェクトに対応付けられたアクティブスキルの情報とが対応付けられている。ここで、アクティブスキルとは、例えば、ゲームにおいて予め定められた条件が満たされたときに発動可能な状態となり、ユーザから、スキルを発動させるための入力操作を受け付けることにより、ユーザがゲームを有利に進行させることができるものである。
ユーザ情報253は、ゲームをプレイするユーザについての情報である。ユーザ情報253は、ユーザ管理テーブル253Aを含む。ユーザ管理テーブル253Aは、各ユーザを識別する情報と、ユーザがゲームを進行させた度合いを示す情報と、ユーザがゲーム内で保有するアイテム、ゲームキャラクタ、ゲームキャラクタが使用する装着物等の情報その他の情報を含む。
制御部290は、記憶部250に記憶されるゲームプログラム251を実行することにより、送受信部291、サーバ処理部292、データ管理部293、マッチング部294、計測部295としての機能を発揮する。
送受信部291は、ゲームプログラム151を実行する携帯端末10から、各種情報を受信し、携帯端末10に対し、各種情報を送信する。携帯端末10とサーバ20とは、ユーザに関連付けられるオブジェクトを仮想空間に配置する要求、オブジェクトを削除する要求、オブジェクトを移動させる要求、ユーザが獲得する報酬に応じて各種パラメータを更新する要求、ゲームを進行させるための画像、音声その他のデータ、サーバ20から携帯端末10へ送信される通知などの情報を送受信する。
サーバ処理部292は、サーバ20全体の動作を制御し、各種のプログラムを呼び出す等によりゲームの進行に必要な処理を行う。サーバ処理部292は、例えば、携帯端末10から受信した情報に基づいて、ゲーム情報252、ユーザ情報253などのデータを更新し、携帯端末10に各種データを送信することでゲームを進行させる。
データ管理部293は、サーバ処理部292の処理結果に従って、記憶部250に記憶される各種データを更新する処理、データベースにレコードを追加/更新/削除する処理などを行う。
マッチング部294は、複数のユーザを関連付けるための一連の処理を行う。マッチング部294は、例えば、ユーザがマルチプレイを行うための入力操作を行った場合に、ゲームを協同してプレイさせるユーザ同士を関連付ける処理などを行う。
計測部295は、時間を計測する処理を行う。計測部295は、例えば、仮想空間に配置される各オブジェクトについて時間の経過を計測する。また、計測部295は、ゲームが進行している時間を計測する。サーバ20は、携帯端末10から、携帯端末10においてゲームプログラム151を実行して計測される各種の計測結果の情報を受信し、受信した情報と、計測部295の計測結果とを照合することで、携帯端末10とサーバ20とで、各種の時間に関する情報を同期させる。
<実施の形態1の構成のまとめ>
以上のように、実施の形態のゲーム配信システム1の構成を説明してきた。本実施形態において、ゲームプログラム151は、例えばスポーツゲームであり、仮想空間内の仮想カメラの配置に応じた画面をタッチスクリーン130に表示させることでゲームを進行させる。
以上のように、実施の形態のゲーム配信システム1の構成を説明してきた。本実施形態において、ゲームプログラム151は、例えばスポーツゲームであり、仮想空間内の仮想カメラの配置に応じた画面をタッチスクリーン130に表示させることでゲームを進行させる。
例えば、ゲームプログラム151がスポーツゲームである場合、ゲーム進行処理部192は、ユーザの操作に応じてストーリーを進行させ、画像、テキストなどディスプレイ132に表示するデータを決定する処理、スポーツの対戦相手の選択をユーザから受け付ける処理、ユーザの操作に応じてスポーツの試合を進める処理などの基本的な処理を行う。
例えば、ゲームプログラム151がスポーツゲームである場合、カメラ配置制御部194は、スポーツの試合を行うための仮想空間における仮想カメラの配置個所および撮影軸の方向を、スポーツの試合の進展に応じて、逐次、決定する。カメラ配置制御部194は、仮想カメラのカメラワークを制御する。カメラ配置制御部194の詳細な処理は、後述する。
<動作>
図面を参照して、実施の形態のゲーム配信システム1を構成する各装置の動作を説明する。
図面を参照して、実施の形態のゲーム配信システム1を構成する各装置の動作を説明する。
図4は、移動操作検出部193が、ユーザの入力操作に応じてゲームキャラクタを移動させる方向を検出する処理を示す図である。移動操作検出部193は、ユーザがタッチスクリーン130を押していない状態から、指などをタッチパネル131に接近させてタッチスクリーン130を押した位置(初期タッチ位置)を起点と設定する。入力操作受付部191は、ユーザの操作をドラッグ操作と判別している場合に、起点となる座標と、タッチスクリーン130がユーザの指などの接近を検出している座標とに基づいて、ゲームキャラクタを移動させる方向を検出する。
図4の状態(A)は、タッチスクリーン130からユーザの指が離れた状態から、ユーザが指をタッチスクリーン130に接近させた状態を示す。入力操作受付部191は、ユーザの指がタッチパネル131に接近したことを検出し、検出した座標を初期タッチ位置としてメモリに保持する。
図4の例では、メモリが保持する初期タッチ位置の座標を、初期タッチ位置座標155として示す。入力操作受付部191は、タッチスクリーン130の検出結果(ユーザの指がタッチスクリーン130に接近している座標、および、ユーザの指がタッチスクリーン130に接近していることを検出していないこと(検出結果「null」)、タッチオフ状態)を、一定フレーム分、バッファメモリ153に格納する。バッファメモリ153は、タッチスクリーン130における検出結果を、各フレームについて一定フレーム分(図3の例では、メモリ領域fp〔0〕〜メモリ領域fp〔10〕までの11フレーム分)、格納することができる。バッファメモリ153は、例えばリングバッファとして実現することができるが、これに限られない。
状態(A)の例では、ユーザがタッチスクリーン130を押した位置(タッチオン座標)を、押下位置30A(タッチスクリーン130の座標(x0,y0))として示す。
図4の状態(B)は、ユーザがタッチスクリーン130に対してドラッグ操作を行って、タッチスクリーン130に対する押下位置を、押下位置30Aから押下位置30B(タッチスクリーン130の座標(x9,y9))まで10フレーム(メモリ領域fp〔0〕〜メモリ領域fp〔9〕までの10フレーム分)で移動させたことを示す。入力操作受付部191は、タッチスクリーン130の検出結果をバッファメモリ153に格納し、バッファメモリ153に保持される値を参照して、タッチスクリーン130に対するユーザの操作をドラッグ操作と判別する。
図4の状態(C)は、ユーザがタッチスクリーン130を押している位置を、押下位置30Bから押下位置30C(タッチスクリーン130の座標(x14,y14))まで、5フレーム(メモリ領域fp〔10〕、fp〔0〕、fp〔1〕、fp〔2〕、fp〔3〕の5フレーム分)で移動させたことを示す。
図4の状態(D)は、移動操作検出部193が、状態(B)および状態(C)のそれぞれにおいて、ユーザがゲームキャラクタを移動させる方向を指定する入力操作の検出結果を示す。移動操作検出部193は、バッファメモリ153において、タッチスクリーン130が検出する押下位置の座標を書き込む対象となるメモリ領域がいずれであるかを示す情報(バッファメモリ153の書き込み位置)を管理している。
状態(B)において、タッチナウの座標を、座標(x9、y9)とする。移動操作検出部193は、入力操作受付部191の判別結果に基づいて、ユーザがドラッグ操作を行ったことを検出する。移動操作検出部193は、初期タッチ位置の座標31A(タッチオンの座標)を起点として、座標31A(タッチオンの座標)と座標31B(タッチナウの座標)とによって規定されるベクトル32B((x9−x0),(y9−y0))を、ゲームキャラクタを移動させる方向として検出する。
状態(C)において、タッチナウの座標を、座標(x14、y14)とする。移動操作検出部193は、入力操作受付部191の判別結果に基づいて、ユーザがドラッグ操作を行ったことを検出する。移動操作検出部193は、初期タッチ位置の座標31A(タッチオンの座標)を起点として、座標31A(タッチオンの座標)と座標31C(タッチナウの座標)とによって規定されるベクトル32C((x14−x0),(y14−y0))を、ゲームキャラクタを移動させる方向として検出する。
<ゲームキャラクタを移動させるための画面表示例>
図5から図8を参照して、オブジェクト制御部195が、移動操作検出部193の検出結果に基づいて、オブジェクトとしてのゲームキャラクタを移動させる画面例を詳しく説明する。
図5から図8を参照して、オブジェクト制御部195が、移動操作検出部193の検出結果に基づいて、オブジェクトとしてのゲームキャラクタを移動させる画面例を詳しく説明する。
例えば、ゲームプログラム151は、仮想空間内において、ゲームキャラクタが、対象物を交互に打ち返すスポーツゲームにかかるものであり、具体的にはテニスゲームである。ゲームプログラム151は、入力操作を受け付けることにより、ゲームのプレイヤであるユーザが操作するゲームキャラクタと、ゲームキャラクタと対戦する相手側キャラクタとの間で、テニスボールを交互に打ち返す動作を行わせてゲームを進行させる。例えば、タッチスクリーンで入力操作を受け付ける場合、ゲームキャラクタを移動させる操作と、ゲームキャラクタにボールを打球させる操作とを、ともにタッチスクリーンで受け付ける。例えば、ユーザは、タッチスクリーンに対し、ドラッグ操作を行うことで、ドラッグ操作におけるタッチ開始位置とタッチ操作が継続している位置との位置関係により定まる方向へゲームキャラクタを移動させる。ゲームキャラクタにスイング動作を行わせるため、ユーザは、ドラッグ操作においてタッチスクリーンへの接触を継続している指をいったんタッチスクリーンから離して、タップ操作またはフリック操作を行う。現実のテニスにおいても、テニスボールに対して打球する位置へ移動したうえで、スイングのタイミングを図って打球することがよく行われている。
カメラ配置制御部194は、ユーザが操作するゲームキャラクタを、例えば画面の中央付近に位置するように、ユーザの入力操作によるゲームキャラクタの移動にあわせて仮想カメラを移動させる。また、シングルスとは異なり、ダブルスのように、2人が一組のチームとなって、チーム同士が対戦する場合、複数のゲームキャラクタがそれぞれ対象物をラケットで対戦相手のチームに打ち返すことなどによりゲームを進行させるので、各ゲームキャラクタをユーザが容易に視認できるように、試合に参加する全てのゲームキャラクタがディスプレイ132に表示されるよう仮想カメラを配置することとしている。
図5は、仮想空間内に配置されるフィールド面Fを示す図である。図5に示すように、ゲームプログラム151を実行する制御部190は、仮想空間内に、ゲームキャラクタ(ユーザが操作する対象のゲームキャラクタ134及び対戦相手となるゲームキャラクタ136)および対象物138を配置する処理を行う。
図5の例では、仮想空間内のxyz座標軸において、xy平面に平行にフィールド面Fを配置する。フィールド面Fは、テニスコートを模した面である。制御部190は、移動操作検出部193によって検出されるゲームキャラクタの移動方向に従って、ゲームキャラクタ134を、仮想空間内に配置されるフィールド面Fにおいて移動させる。また、制御部190は、ゲームの進行に応じて、ゲームキャラクタ136をフィールド面Fにおいて移動させる。仮想空間内のz軸は、フィールド面Fに対する高さ方向を示す。制御部190は、各ゲームキャラクタが対象物138を打球するスイング動作を行うことで、オブジェクトとしての対象物138を、例えば物理演算の結果に基づいてフィールド面Fを地面としてz軸方向に重力が働いているものとして移動させる。
ここで、z軸方向において、フィールド面Fからの高さに関する閾値181Hがゲームプログラム151において設定されている。例えば、ゲームキャラクタのそれぞれに、閾値181Hが設定されていることとしてもよい。この閾値181Hは、ゲームキャラクタが対象物を打球できる高さの上限値を示す。例えば、制御部190は、対象物138の位置が、xy平面上の座標としてはゲームキャラクタ134の周囲にあるとしても、閾値181Hを超えて高い位置にある場合は、ゲームキャラクタ134にスイング動作を行わせたとしても、対象物138の位置が高すぎるとして当該対象物138の打球に空振りするようにゲームを進行させる。一方、制御部190は、対象物138の位置が、平面上の座標としては、ゲームキャラクタ134の周囲に設定されるスイング領域の範囲内であり、閾値181Hよりも低い位置にある場合は、ゲームキャラクタ134にスイング動作を行わせた場合に、ゲームキャラクタ134が対象物138を打球するようにゲームを進行させる。
このように構成されることで、ゲームプログラム151は、ユーザに対し、より対戦相手となるゲームキャラクタ136から打たれる対象物138の弾道を見極めて、対象物138の落下点がフィールド面Fのいずれであるかをもユーザに意識させつつゲームを進行させることができ、対象物138に対するゲームキャラクタ134の位置取りと打球のタイミングによってゲームにおける有利不利が定まることを示唆することができる。そのためゲームの興趣性がいっそう向上する。
<データ構造>
図6は、ゲームキャラクタに設定される各種パラメータの一例を示す図である。サーバ20と携帯端末10とは、ゲームキャラクタに設定される各種パラメータを管理する。例えば、サーバ20が、ゲームに登場するゲームキャラクタの各種パラメータを管理し、携帯端末10が、ユーザが使用可能なゲームキャラクタを、キャラクタ管理テーブル121として管理する。
図6に示すように、キャラクタ管理テーブル121の1件のレコードは、キャラクタ識別情報121Aと、サーブパラメータ121Bと、ストロークパラメータ121Cと、テクニックパラメータ121Dと、スタミナパラメータ121Eと、スピードパラメータ121Fとを含む。
図6は、ゲームキャラクタに設定される各種パラメータの一例を示す図である。サーバ20と携帯端末10とは、ゲームキャラクタに設定される各種パラメータを管理する。例えば、サーバ20が、ゲームに登場するゲームキャラクタの各種パラメータを管理し、携帯端末10が、ユーザが使用可能なゲームキャラクタを、キャラクタ管理テーブル121として管理する。
図6に示すように、キャラクタ管理テーブル121の1件のレコードは、キャラクタ識別情報121Aと、サーブパラメータ121Bと、ストロークパラメータ121Cと、テクニックパラメータ121Dと、スタミナパラメータ121Eと、スピードパラメータ121Fとを含む。
キャラクタ識別情報121Aは、ゲームキャラクタそれぞれを識別する情報である。サーブパラメータ121Bは、ゲームキャラクタがボールをサーブ動作により相手側のコートに打ち込む際の、打球の速さの設定値を示す。
ストロークパラメータ121Cは、ゲームキャラクタがボールを対戦相手となるゲームキャラクタと交互に打ち返す際の、打球の速さの設定値を示す。テクニックパラメータ121Dは、ゲームキャラクタがボールを相手側のコートに打ち込む際の、コントロールの精度などの設定値を示す。
スタミナパラメータ121Eは、ゲームキャラクタがゲーム中で移動する、打球する等の動作時に消費する体力の大きさの設定値を示す。スピードパラメータ121Fは、ゲームキャラクタがコートを移動する速度の設定値を示す。
なお、ゲームキャラクタに設定される各種のパラメータは、これらに限らず、ゲームキャラクタの利き手の情報その他の情報を含むこととしてもよい。
図7は、ゲームキャラクタの周囲に設定される、対象物138を打球可能な範囲を示す図である。
図7の状態(A)は、スイング領域を示す図である。状態(B)は、仮想カメラの配置に従ってタッチスクリーン130に表示されるゲームキャラクタ134および打球範囲画像147を示す図である。状態(C)は、ユーザが対象物138を打球するための入力操作を行った場合に、ゲームキャラクタ134に関連付けられる(ゲームキャラクタ134が利き手の設定に応じて保持する)ラケットが移動する軌跡を示す。
状態(A)の例では、図面の上側を、ゲームキャラクタ134と対戦するゲームキャラクタ136が配置されるものとしてスイング領域(第1のスイング領域(スイング領域149F、スイング領域149R、スイング領域149Lおよびスイング領域149Bにより構成される、ゲームキャラクタ134の周囲の一定範囲の領域)および第2のスイング領域149W)を示している。
スイング領域は、ゲームキャラクタ134が対象物138を打球することができる領域である。制御部190は、ユーザがタッチスクリーン130に対するタップ操作またはフリック操作の少なくともいずれかの入力操作を受け付けた場合に、ゲームキャラクタ134に、ゲームキャラクタ136から打たれる対象物138を打球するためのスイング動作を行わせる。制御部190は、スイング動作を行わせるための入力操作(タップ操作またはフリック操作の少なくともいずれか)を受け付けた場合に、対象物138が、ゲームキャラクタ134の周囲に設定されるスイング領域に含まれるときは、対象物138をスイング動作によりゲームキャラクタ136に向けて打ち返すよう対象物138をゲームキャラクタ136が配置されるコートに向けて飛翔させるように移動させる。制御部190は、スイング動作を行わせるための入力操作を受け付けた場合に、対象物138がスイング領域の範囲外にあるときは、ゲームキャラクタ134が対象物138の打ち返しに空振りするよう動作させ、対象物138を移動させる。
状態(A)に示すように、ゲームキャラクタ134の周囲に、第1のスイング領域と、第2のスイング領域149Wとが設定されている。本実施形態のテニスゲームにおいては、打球範囲画像147の外側でゲームキャラクタ134が対象物138を打球する場合よりも、打球範囲画像147の内側で対象物138を打球するほうが、よりよい打球を対戦相手(ゲームキャラクタ136)に打ち返せるものとしている(例えば、弾速が比較的速い打球をゲームキャラクタが打ち返す)。
また、ゲームキャラクタが、対象物138が第1のスイング領域にあるときに対象物138を打球する場合、打球のタイミングによっても対象物138の着弾位置を変化させるようにしている。例えば、ゲームキャラクタの左右で対象物138を打球した場合(対象物138が右側スイング領域149Rまたは左側スイング領域149Lのいずれかにあるときに、対象物138を打球するための操作を検出した場合)を基準とする。ゲームキャラクタが右利きで、ゲームキャラクタの位置よりも前方よりで対象物138をフォアで打球した場合(ゲームキャラクタが左利きでバックで打球した場合も同様)は(比較的早めに打球した場合)、対象物の着弾位置を、ゲームキャラクタの視点で左側にずらす。具体的には、対象物138が前方スイング領域149Fにあるときに、対象物138を打球するための操作(タップ操作またはフリック操作)が検出された場合である。また、ゲームキャラクタが左利きで対象物138をフォアで打球した場合(ゲームキャラクタが右利きで対象物138をバックで打球した場合も同様)は、対象物138の着弾位置を、ゲームキャラクタの視点で右側にずらす。
また、ゲームキャラクタが右利きで、ゲームキャラクタの位置よりも後方よりで対象物138をフォアで打球した場合(ゲームキャラクタが左利きでバックで打球した場合も同様)は(比較的遅めに打球した場合)、対象物の着弾位置を、ゲームキャラクタの視点で右側にずらす。具体的には、対象物138が後方スイング領域149Bにあるときに、対象物138を打球するための操作(タップ操作またはフリック操作)が検出された場合である。また、ゲームキャラクタが左利きで対象物138をフォアで打球した場合(ゲームキャラクタが右利きで対象物138をバックで打球した場合も同様)は、対象物138の着弾位置を、ゲームキャラクタの視点で左側にずらす。
状態(A)の例では、ゲームキャラクタ134の位置を中心とした矩形の領域を、スイング領域(第1のスイング領域および第2のスイング領域)として設定しているが、スイング領域の形状は矩形に限らず円形、楕円形その他の形状であってもよく、また、ゲームキャラクタ134の位置を中心とすることに限られない。制御部190は、ゲームキャラクタ134の周囲に、ユーザに対し、スイング領域の大きさを視認させるための打球範囲画像147をディスプレイ132に表示させる。このように、ゲームキャラクタ134の位置を中心とした場合に、第1のスイング領域は、第2のスイング領域149Wよりも内側に設定されている。このように、第2のスイング領域149Wは、第1のスイング領域よりも広い領域が設定されている。
状態(C)において、ゲームキャラクタ134の利き手は右手と設定されており、フォアによるスイング動作を行っているものとする。状態(C)に示すように、スイング動作をすることで、ラケットの位置が、ラケット148A〜ラケット148Eの位置までゲームキャラクタ134の位置を中心に移動する。なお、ゲームキャラクタ134が、バックハンドによるスイング動作を行うことができるように構成されている。制御部190は、例えば、オブジェクトとしてのラケットを、ラケット148A〜148Eのように、ユーザの入力操作に応じて移動させ、当該オブジェクトとしてのラケットと、オブジェクトとしての対象物138とが衝突したときに、衝突したタイミングに応じて、対象物138において予め定められていた動作(相手側となるゲームキャラクタ136のコートへと対象物138を移動させる動作)を行わせることとしてもよい。
このように、ゲームキャラクタ134の位置に基づいて、オブジェクトとしてのラケットを、打球範囲画像147の範囲内で移動させることで、ユーザに対し、打球範囲画像147の範囲内に対象物138を収めるようドラッグ操作による移動操作を入力させつつ、タップ操作またはフリック操作によってスイング動作を行わせるよう促すことができる。このように、ユーザに対し、相手側のゲームキャラクタ136から打たれる対象物138の軌跡を視認させつつ、対象物138の移動の軌跡を推測させて、ゲームキャラクタ134を移動させる操作およびタイミングに応じてスイング動作をさせるための入力操作をするよう促すことができ、ゲームの興趣性をいっそう高めることができる。
図8は、ゲームキャラクタに、第1の動作としてサーブ動作を行わせた後、第2の動作として、相手側キャラクタとの間でボールを交互に打ち返すためにゲームキャラクタを移動させるための入力操作を受け付けるゲーム画面の遷移を示す図である。図8の例では、自キャラクタ134の位置に対し、ネットを挟んで画面の奥方向(縦方向)に相手側キャラクタ136を配置している。
図8の画面例(A)、画面例(B)および画面例(C)は、ユーザが操作する自キャラクタ134に、第1の動作としてサーブ動作を行わせるための入力操作を受け付ける画面である。画面例(A)に示すように、ゲーム進行処理部192は、タッチスクリーン130に、ユーザが操作するゲームキャラクタである自キャラクタ134と、テニスゲームの対戦相手となるゲームキャラクタである相手側キャラクタ136とを表示させて、ユーザに対し、自キャラクタ134にサーブ動作を行わせるための入力操作を受け付ける。
画面例(A)に示す状態において、ゲーム進行処理部192は、ユーザが自キャラクタ134にサーブ動作を行わせるため、自キャラクタ134がサーブ動作を開始する位置を指定する入力操作を受け付ける。ここで、サーブ動作を開始する位置は、コートの辺に沿った方向(画面では左右方向)に規定されるため、ユーザは、自キャラクタ134を左右方向に移動させる入力操作を行って、サーブ動作を開始する位置を決定する。
画面例(B)に示すように、ゲーム進行処理部192は、自キャラクタ134にサーブ動作を行わせるための入力操作をユーザから受け付ける。ゲーム進行処理部192は、ユーザがタップ操作を行ったことを入力操作受付部191が検出した場合に、自キャラクタ134に、ボールをトスアップさせる動作を行わせる。ゲーム進行処理部192は、打球対象オブジェクト138を、自キャラクタ134がテニスボールをトスアップしたように移動させる。すなわち、ゲーム進行処理部192は、自キャラクタ134がテニスボールを投げることで、テニスボールが上昇及び下降するように打球対象オブジェクト138を移動させる。
画面例(C)に示すように、ゲーム進行処理部192は、自キャラクタ134に、トスアップしたテニスボールを打球させるための入力操作をユーザから受け付ける。ユーザは、トスアップされた打球対象オブジェクト138が上昇したのちに下降するよう移動していくのを視認して、タイミングをはかってタッチスクリーン130にタップ操作を行うことで、打球対象オブジェクト138を打球するよう自キャラクタ134を操作する。
ゲーム進行処理部192は、例えば、打球対象オブジェクト138を上昇及び下降していくよう表示する総フレーム数のうち、予め規定された一定のフレーム数においてユーザからのタップ操作を受け付ける。ゲーム進行処理部192は、この一定のフレーム数においてタップ操作を検出した場合に、自キャラクタ134に、打球対象オブジェクト138を打球させる動作を行わせて打球対象オブジェクト138を相手側キャラクタに向けて飛翔させるよう移動させる。
画面例(A)〜画面例(C)で説明したように、ユーザは、トスアップされた打球対象オブジェクト138を視認して、タイミングを見計らってタップ操作を行うことで、自キャラクタ134にサーブ動作を行わせる。そのため、ユーザにとっては、自キャラクタ134および打球対象オブジェクト138が比較的小さく表示されている場合よりも、自キャラクタ134および打球対象オブジェクト138がタッチスクリーン130の手前側に配置されて比較的大きく表示されている方が、サーブ動作を入力することが容易となる。
画面例(C)に示すように、自キャラクタ134にサーブ動作を行わせて打球対象オブジェクト138を相手側キャラクタ136に向けて飛翔させた後は、ユーザは、自キャラクタ134を移動させつつ、自キャラクタ134と相手側キャラクタ136との間で、打球対象オブジェクト138を交互に打ち返す入力操作を行うことでゲームを進行させることとなる。
ここで、ゲーム進行処理部192は、例えば図4に示すように、ユーザからドラッグ操作を受け付けることで自キャラクタ134を移動させる方向を指定する入力操作を受け付ける。ユーザは、主に、タッチスクリーン130の手前側の領域を用いて、自キャラクタ134を移動させる入力操作を行うこととなる。そのため、ユーザの指と自キャラクタ134とがなるべく重ならないよう、自キャラクタ134をユーザが視認しやすくすることで、ゲームの操作性を向上させることができる。
そこで、カメラ配置制御部194は、ゲームキャラクタに、第1の動作を行わせる画面表示をし、タッチスクリーン130の少なくとも1つの辺から中央部に向かう一定領域を空けてゲームキャラクタを表示させるよう仮想カメラを移動させる。例えば、カメラ配置制御部194は、タッチスクリーン130の1つの辺から中央部に向かう略4分の1から略3分の1の一定領域を空けてゲームキャラクタを表示させる。
図8の画面例(D)に示すように、テニスゲームであれば、カメラ配置制御部194は、ゲームキャラクタに、第1の動作としてサーブ動作を行わせる画面表示をした後(画面例(A)〜画面例(C))、タッチスクリーン130の、ユーザから見て手前側となる辺から画面の中央部へ向かう一定領域139を空けてゲームキャラクタ(自キャラクタ134)を表示させるよう、第1の動作(サーブ動作)後に仮想カメラの撮影方向を維持したまま仮想カメラの配置個所を平行に移動させる。
図9は、ユーザの入力操作に応じて、ゲームキャラクタ134の移動およびスイング動作を行う場合の画面の表示例を示す図である。
図9の状態(A)は、ユーザがタッチスクリーン130に対してドラッグ操作を行うための起点となる位置(初期タッチ位置)に対して指を接近させた状態(押下位置30E)を示す。状態(A)に示すように、タッチスクリーン130を縦長にした状態で入力操作を受け付けるよう、仮想空間内の仮想カメラにより撮影される画面をタッチスクリーン130に表示する。このように、制御部190は、ユーザが入力操作を行って動作させるゲームキャラクタ134がタッチスクリーン130の手前側に配置され、対戦相手となるゲームキャラクタ136がタッチスクリーン130の奥側に配置されるように、仮想カメラの撮影画像をディスプレイ132に表示する。状態(A)に示すように、制御部190は、タッチスクリーン130の手前側の辺からの一定領域139を空けて、ゲームキャラクタ134を表示する。こうすることで、タッチスクリーン130の手前側の辺からの一定領域139において、ユーザがゲームキャラクタ134を操作するために入力操作を行う領域が確保されるため、入力操作がいっそう容易となる。
状態(B)は、状態(A)に示す状態から、ユーザがタッチスクリーン130においてドラッグ操作を行うことで、ドラッグ操作の起点となった位置(押下位置30E)と、ドラッグ操作が継続している位置(押下位置30F)との位置関係に基づく方向にゲームキャラクタ134を移動させた状態を示す。制御部190は、ゲームキャラクタ134が移動する方向を示すUI画像187を、タッチスクリーン130に表示する。状態(B)の例では、制御部190は、UI画像187として、ドラッグ操作の起点となった位置から、ドラッグ操作が継続している位置へと向かうように、円形状のオブジェクトを変形させた画像をタッチスクリーン130に表示する。こうすることで、ユーザに対し、ドラッグ操作の起点と、ドラッグ操作が継続している位置との位置関係に応じて定まるゲームキャラクタ134の移動方向を提示することができ、ユーザは、ドラッグ操作の起点を視認しつつ、ゲームキャラクタ134の移動方向を、ドラッグ操作が継続している位置を移動させることで入力することができる。このように、ゲームキャラクタ134を移動させる方向を示す入力操作をドラッグ操作で受け付けているため、ユーザがゲームキャラクタ134を移動させたい位置が仮想空間のいずれであっても、ユーザは、ゲームキャラクタ134を容易に移動させることができ、ゲームの興趣性がいっそう向上する。
状態(C)は、相手側のゲームキャラクタ136から打たれる対象物138が第1のスイング領域149Aにあるときに、ユーザがフリック操作(指をタッチスクリーン130に接触させてから押下位置30Gまで移動させて、タッチスクリーン130から指を離す)を行ってゲームキャラクタ136にスイング動作を行わせて、対象物138を相手側のゲームキャラクタ136のコートへとゲームキャラクタ134が打ち返している状態を示す。このように、ゲームキャラクタ134の周囲の打球範囲画像147の範囲内において対象物138をユーザが打ち返したときは、ゲームキャラクタ134が姿勢を崩さずスイング動作をしたようにユーザに提示する。
状態(D)は、相手側のゲームキャラクタ136から打たれる対象物138が第1のスイング領域の範囲外であって第2のスイング領域149Wにあるときに、ユーザがタップ操作を行ってゲームキャラクタ136にスイング動作を行わせて、対象物138を相手側のゲームキャラクタ136のコートへとゲームキャラクタ134が打ち返している状態を示す。このように、ゲームキャラクタ134の周囲の打球範囲画像147の範囲外において対象物138をユーザが打ち返したときは、ゲームキャラクタ134が姿勢を崩しつつスイング動作をしたようにユーザに提示する。
状態(C)と状態(D)とを比較すると、いずれも、対象物138をゲームキャラクタ134が相手側のゲームキャラクタ136のコートへと打ち返している。しかし、状態(D)の例では、ゲームキャラクタ134が姿勢を崩しつつ打ち返している。そのため、打球範囲画像147の外周の境界付近に対象物138が位置している場合にユーザがスイング動作を行うことが、打球範囲画像147の内側に対象物138が位置している場合にスイング動作を行うことよりも不利であることをユーザに示唆することができる。こうすることで、相手側ゲームキャラクタ136から打たれる対象物138を、よりより位置でタイミングを計って打球するようユーザの入力操作を促すことができ、ゲームの興趣性をいっそう向上させることができる。
<ゲームキャラクタの位置に基づく着弾点の制御>
図10は、サーブ動作時のゲームキャラクタの位置に応じて、制御部190が対象物138の着弾位置を決定する処理を示す。
図10は、サーブ動作時のゲームキャラクタの位置に応じて、制御部190が対象物138の着弾位置を決定する処理を示す。
図10の状態(A)は、サーブ動作時に、コートの縦方向の境界付近(位置134A)でゲームキャラクタがサーブをする際の着弾位置の範囲125Aを示す。
図10の状態(B)は、サーブ動作時に、コートの中央側(位置134B)でゲームキャラクタがサーブをする際の着弾位置の範囲125Bを示す。
状態(A)および状態(B)に示すように、サーブ動作時に、ゲームキャラクタは、移動可能範囲134Rの範囲内で移動して、サーブをするための位置を決定する。また、状態(A)および状態(B)に示すように、コートの縦方向の境界付近でゲームキャラクタがサーブをする際は、よりコートのコーナー付近を狙うように対象物138を着弾させ、コートの中央側でゲームキャラクタがサーブをする際は、コートの中央付近に対象物138を着弾させる。
状態(C)は、対象物138の着弾位置の範囲125を示す図である。状態(C)に示すように、着弾位置の範囲125に、左側着弾範囲126Lと、中央側着弾範囲126Cと、右側着弾範囲126Rとして、対象物138が着弾する範囲を示す。左側着弾範囲126Lは、着弾基準位置127Lを中心とする一定範囲の領域である。中央側着弾範囲126Cは、着弾基準位置127Cを中心とする一定範囲の領域である。右側着弾範囲126Rは、着弾基準位置127Rを中心とする一定範囲の領域である。
本実施形態のテニスゲームにおいては、ユーザが打球時にタップ操作またはコートの縦方向(上方向または下方向)へのフリック操作をした場合に、制御部190は、中央側着弾範囲126Lを、対象物138が着弾する範囲として特定する。また、ユーザが打球時に左方向への一定量の指の移動をするフリック操作をした場合に(左方向、左上方向、左下方向へのフリック操作)、制御部190は、左側着弾範囲126Lを、対象物138が着弾する範囲として特定する。また、ユーザが打球時に右方向への一定量の指の移動をするフリック操作をした場合に(右方向、右上方向、右下方向へのフリック操作)、制御部190は、右側着弾範囲126Rを、対象物138が着弾する範囲として特定する。なお、着弾範囲を、左側、中央側および右側の3つとしているが、3つに限らない。
図11は、ゲームキャラクタがフィールド面Fにおいて対象物138を打球する位置に応じて、着弾位置の範囲が変動する例を示す図である。
図11の状態(A)は、コートの中央付近(位置134C)でゲームキャラクタが対象物138を打球する際の、着弾位置の範囲(左側着弾範囲126L、中央側着弾範囲126Cおよび右側着弾範囲126R)を示す。
図11の状態(B)は、コートの中央付近より左側(位置134D)でゲームキャラクタが対象物138を打球する際の、着弾位置の範囲を示す。
図11の状態(C)は、コートの中央付近より右側(位置134E)でゲームキャラクタが対象物138を打球する際の、着弾位置の範囲を示す。
状態(A)、状態(B)および状態(C)に示すように、ゲームキャラクタが対象物138を打球する位置に応じて、対象物138が着弾する範囲も移動する。
図11の状態(D)は、ゲームキャラクタに設定されるパラメータに応じて、対象物138の着弾範囲が変化する例を示す。例えば、状態(A)の例と比べて、状態(D)のゲームキャラクタは、打球の精度が比較的良好なパラメータ(比較的良好なテクニックパラメータ)が設定されているとする。状態(A)と比べると、着弾位置の範囲が広範囲に広がっており、ゲームキャラクタが、より広い範囲で打球を打ち分けることができる。
図12は、ゲームキャラクタが対象物138を打球するタイミングが早いか遅いかに応じて、着弾基準位置を変動させる例、および、ゲームキャラクタのテクニックパラメータに応じて着弾基準位置および着弾範囲を変動させる例を示す図である。
ゲームキャラクタが比較的早いタイミングで打球する場合(対象物138がスイング領域149Fにあるときに打球する場合)に、対戦相手のゲームキャラクタがいる方向を前方としたときのゲームキャラクタの右側(ゲームキャラクタが右利きの設定であればフォアの場合、または、ゲームキャラクタが左利きの設定であればバックハンドの場合)からラケットを旋回させてスイング動作をするときは、着弾基準位置を左側に移動させる。図12の例では、着弾基準位置127Lを着弾基準位置127Lへ移動させ、着弾基準位置127Cを着弾基準位置127CEに移動させ、着弾基準位置127Rを着弾基準位置127REへ移動させる。ゲームキャラクタが比較的遅いタイミングで打球する場合に、ゲームキャラクタの左側からラケットを旋回させてスイング動作をするときも同様である。このように着弾基準位置を、打球のタイミングに応じて変動させる量は、テクニックパラメータの設定値に応じて予め定められていることとする。
ゲームキャラクタが比較的遅いタイミングで打球する場合(対象物138がスイング領域149Bにあるときに打球する場合)に、ゲームキャラクタの右側からラケットを旋回させてスイング動作をするときは、着弾基準位置を右側に移動させる。図12の例では、着弾基準位置127Lを着弾基準位置127LLへ移動させ、着弾基準位置127Cを着弾基準位置127CLへ移動させ、着弾基準位置127Rを着弾基準位置127RLへ移動させる。ゲームキャラクタが比較的早いタイミングで打球する場合に、ゲームキャラクタの左側からラケットを旋回させてスイング動作をするときも同様である。
また、制御部190は、ゲームキャラクタに設定されている、打球の精度を示すパラメータ(テクニックパラメータ)が良好であるか否かに応じて、着弾基準位置を移動させる。図12の例では、テクニックパラメータが良好であるほど、コートのコーナー付近を目指して対象物138を移動させるよう着弾基準位置を決定し、着弾基準位置を中心とする着弾範囲を小さくして着弾位置のブレを小さくする。こうすることで、テクニックパラメータが良好なゲームキャラクタであるほど、より対戦相手のゲームキャラクタにとって厳しい打球をゲームキャラクタが打ち返しつつ、コースアウトの確率を低減させることができる。例えば、ゲームキャラクタのテクニックパラメータが良好であるほど、着弾位置127Lが、よりコーナーを突くよう着弾域129Lへ移動するとともに、着弾範囲128Lが着弾範囲126Lより小さくなる。着弾位置127C、着弾位置127Rについても同様である。
<処理の流れ>
図13は、制御部190が、対象物138を打ち返すためのタップ操作またはフリック操作を受け付けた場合に、ゲームキャラクタ134にスイング動作を行わせて対象物138の移動を制御する処理を示すフローチャートである。制御部190は、スイング動作のための入力操作(タップ操作またはフリック操作)を受け付けると、図13に示す処理を行って、対象物138の移動を制御する。
図13は、制御部190が、対象物138を打ち返すためのタップ操作またはフリック操作を受け付けた場合に、ゲームキャラクタ134にスイング動作を行わせて対象物138の移動を制御する処理を示すフローチャートである。制御部190は、スイング動作のための入力操作(タップ操作またはフリック操作)を受け付けると、図13に示す処理を行って、対象物138の移動を制御する。
ステップS1301において、制御部190は、スイング動作のための入力操作を受け付けたときの、フィールド面Fにおける対象物138のxy平面における位置およびz軸方向の高さの情報を取得する。
ステップS1303において、制御部190は、ゲームキャラクタ134の位置と、ゲームキャラクタ134に設定されるスイング領域(第1のスイング領域149および第2のスイング領域149B)と、対象物138の位置の情報(フィールド面Fにおける対象物138のxy平面の座標)とに基づいて、対象物138(テニスボール)が、スイング領域に含まれるか否かを判断する。制御部190は、対象物138がスイング領域に含まれる場合は(ステップS1303においてYES)、ステップS1305の処理を行い、そうでない場合は(ステップS1303においてNO)、ステップS1313の処理を行う。
ステップS1305において、制御部190は、対象物138の高さと、閾値とを比較することにより、対象物138の高さが、フィールド面から一定距離以内の高さであるか否か(ゲームキャラクタ134が打球可能な高さであるか)を判断する。対象物138の高さがフィールド面から一定距離以内の高さである場合(ステップS1305においてYES)、制御部190は、ステップS1306の処理を行い、そうでない場合(ステップS1305においてNO)、ステップS1313の処理を行う。
ステップS1306において、制御部190は、フィールド面におけるゲームキャラクタの位置(座標)、フリック入力により指定される打球の方向、およびスイング領域における対象物138の打球位置に基づいて、対象物138の着弾地点を演算する。
ステップS1307において、制御部190は、スイング領域の内側(第1のスイング領域の範囲内)に対象物138があるか否かを判断し、第1のスイング領域の内側に対象物138がある場合(ステップS1307においてYES)、ステップS1309の処理を行い、そうでない場合(ステップS1307においてNO)、ステップS1311の処理を行う。
ステップS1307において、制御部190は、スイング領域の内側(第1のスイング領域の範囲内)に対象物138があるか否かを判断し、第1のスイング領域の内側に対象物138がある場合(ステップS1307においてYES)、ステップS1309の処理を行い、そうでない場合(ステップS1307においてNO)、ステップS1311の処理を行う。
ステップ1309において、制御部190は、ゲームキャラクタ134に通常のスイング動作(図9の状態(C))を行わせて、対象物138の着弾点を演算し、演算結果に応じて対象物138を相手側のゲームキャラクタ136へ向けて打ち返すよう対象物138を移動させる。
ステップS1311において、制御部190は、ゲームキャラクタ134に、ゲームキャラクタ134がよろめきつつ(姿勢を崩しつつ)打球するスイング動作(図9の状態(D))を行わせて、対象物138の着弾点を演算し、演算結果に応じて対象物138を相手側のゲームキャラクタ136へ向けて打ち返すよう対象物138を移動させる。
ステップS1313において、制御部190は、ゲームキャラクタ134が打球に空振りするようスイング動作を行わせて対象物138を移動させる。
図14は、対象物138の着弾地点を決定する処理の詳細を示すフローチャートである。図14に示す処理は、図13のステップS1306に対応する。
ステップS1401において、制御部190は、フィールド面Fにおけるゲームキャラクタの、対戦相手となるゲームキャラクタが位置する方向を縦方向(y軸)としたときの横方向における座標(x軸)と、フリック操作により入力される方向とに基づいて、対象物138の移動先の基準となる座標(着弾基準位置127L、127C、127Rのいずれか)を決定する。
ステップS1403において、制御部190は、スイング領域内で対象物138を打球したタイミングが早いか遅いかに応じて、着弾基準位置を、図12の例に示すように補正する。
ステップS1405において、制御部190は、ゲームキャラクタに設定される、打球の精度を示すパラメータ(テクニックパラメータ)に応じて、着弾基準位置および着弾範囲の大きさを補正する。
ステップS1407において、制御部190は、ゲームキャラクタのテクニックパラメータの設定に応じて、着弾基準位置を中心とする着弾範囲を読みだして、着弾範囲内のいずれかの点を、対象物138の移動先としてランダムに決定する。
<実施の形態2>
次に、別の実施の形態のゲーム配信システム1について説明する。
次に、別の実施の形態のゲーム配信システム1について説明する。
実施の形態2では、ゲームキャラクタ134が対象物138を打球する場合に、打球範囲画像147の中心部に近い位置での打球がユーザにとって、有利に働かないことをユーザに示唆する。
図15は、実施の形態2におけるスイング領域を示す図である。
図15の状態(A)は、第1のスイング領域149Aの範囲内に含まれる、近距離エリア149Cと、好打球エリア149BRと、好打球エリア149BLとを示す図である。
図15の状態(A)は、第1のスイング領域149Aの範囲内に含まれる、近距離エリア149Cと、好打球エリア149BRと、好打球エリア149BLとを示す図である。
状態(B)は、ゲームキャラクタ134の正面に、相手側のゲームキャラクタ136から打たれる対象物138が接近している状態を示す。
状態(C)は、ゲームキャラクタ134の正面において対象物138を打球する入力操作をユーザが行った場合に、対象物138に対する打球位置がゲームキャラクタ134に近すぎることをユーザに通知するためのタッチスクリーン130の表示例を示す。
制御部190は、スイング動作をゲームキャラクタ134に行わせるための入力操作があった場合に、ゲームキャラクタ134の正面の一領域に設定される近距離エリア149Cに対象物138が位置するときは、ユーザにとって不利な位置取りであることを示す通知をタッチスクリーン130に表示する。例えば、状態(C)に示すように、制御部190は、ゲームキャラクタ134の周囲に、ゲームキャラクタ134が対象物138を打球するための位置取りを示唆する情報185をタッチスクリーン130に表示する。このとき、制御部190は、対象物138を、相手側のゲームキャラクタ136にとってスマッシュを打球するための好機を示すよう移動させることとしてもよい。
また、制御部190は、スイング動作をゲームキャラクタ134に行わせるための入力操作があった場合に、ゲームキャラクタ134の第1のスイング領域149Aの範囲内であって、好打球エリア149BRまたは好打球エリア149BLに対象物138が位置する場合に、ゲームキャラクタ134のスイング動作が良好であることをタッチスクリーン130に表示し、相手側のゲームキャラクタ136が位置するコートに向けて、対象物138を、より高速で移動させることとしてもよい。好打球エリア149BRおよび好打球エリア149BLは、例えば、現実にラケットでテニスボールを打球するときに、打球されたテニスボールの弾速が高速となるような打球位置を模して、第1のスイング領域149Aの範囲内に設定してもよい。
このように構成することで、ユーザに対し、対象物138を打ち返すために、打球範囲画像147の範囲内に対象物138を収めようとゲームキャラクタ134を移動させるよう促しつつ、単に打球範囲画像147の中心付近で対象物138を打球するだけではゲームの進行が有利にならないと示唆することで、より対象物138に対するゲームキャラクタ134の良好な位置取りに変化を持たせることができ、ゲームの興趣性をいっそう向上させることができる。
また、図15の状態(A)に示すように、(相手側のゲームキャラクタ136が配置される方向を縦方向とした場合に)ゲームキャラクタ134の縦方向(前後方向)において近距離エリア149C、好打球エリア149Rおよび好打球エリア149Lの位置を近くすることで、対象物138を打球するタイミングとしては良好であっても、対象物138を打球する位置取りがゲームキャラクタ134の正面になるほど打球がユーザにとって不利になるようにすることで、打球のタイミングのみならず打球のための良好な位置取りをもユーザに示唆することができる。
また、図15の状態(A)に示すように、(相手側のゲームキャラクタ136が配置される方向を縦方向とした場合に)ゲームキャラクタ134の縦方向(前後方向)において近距離エリア149C、好打球エリア149Rおよび好打球エリア149Lの位置を近くすることで、対象物138を打球するタイミングとしては良好であっても、対象物138を打球する位置取りがゲームキャラクタ134の正面になるほど打球がユーザにとって不利になるようにすることで、打球のタイミングのみならず打球のための良好な位置取りをもユーザに示唆することができる。
また、対戦相手から打球される対象物138がゲームキャラクタ134に接触した場合に、ゲームキャラクタ134にボールが衝突したことを示すよう、ゲームキャラクタ134をひざまずかせる等の動作をして、対戦相手が得点するよう表示してもよい。こうすることで、対象物138を打球するための効果的な位置取りをユーザに示唆することができる。
<実施の形態3>
上記実施例の他に、以下のように構成することとしてもよい。
上記実施例の他に、以下のように構成することとしてもよい。
(1)ゲームプログラム151は、仮想空間内にゲームキャラクタ134、相手側のゲームキャラクタ136、および、対象物138を少なくとも配置し、ゲームキャラクタ134および相手側のゲームキャラクタ136を、仮想空間内に配置されるフィールド面Fにおいて移動させることで、対象物138を交互に打ち返すものである。
制御部190は、相手側のゲームキャラクタ136が打ち返す対象物138のフィールド面Fへの落下点(着弾点)が、テニスゲームにおけるフィールド面Fの対象物138が着弾可能な有効領域の領域外である場合(アウトである場合)に、当該領域外に着弾した対象物138がスイング領域の範囲内にあるか否かにかかわらず、スイング動作を行わせるための入力操作を受け付けたときにゲームキャラクタ134が対象物138の打ち返しに空振りするよう対象物138を移動させる。
このように、相手側のゲームキャラクタ136が打ち返した打球が、フィールド面Fにおいて、テニスゲーム上はアウトである領域に着弾した場合は、制御部190は、ゲームキャラクタ134にスイング動作を行わせていたとしても、当該スイング動作によっては対象物138を打ち返さないようにタッチスクリーン130に表示する。こうすることで、ユーザに対し、対象物138を打球範囲画像147の範囲内に収めるようゲームキャラクタ134を移動させることに入力操作を注力させつつ、アウトになった対象物138については打球しないことで、テニスゲームにおけるラリーが決着したことをユーザに示唆することができる。
(2)制御部190は、テニスゲームとしての試合の開始が、相手側のゲームキャラクタ136による対象物138への打撃(サーブ動作)によりなされる場合に、相手側のゲームキャラクタ136が対象物138への打撃(サーブ動作)を行うまで、タップ操作またはフリック操作を受け付けたとしてもゲームキャラクタ134にスイング動作を行わせず、相手側のゲームキャラクタ136が対象物138への打撃(サーブ動作)を行うことでプレイ開始となると、タップ操作またはフリック操作によるスイング動作を行わせることとしてもよい。
<変形例>
上記の実施形態において、打球範囲画像147は、ゲームキャラクタ134のパラメータに応じて広さが設定されていることとしてもよい。
上記の実施形態において、打球範囲画像147は、ゲームキャラクタ134のパラメータに応じて広さが設定されていることとしてもよい。
上記の実施形態において、打球範囲画像147は、ゲームキャラクタ134がよろめきつつスイング動作をする場合のように、ユーザにとって不利なスイング動作をしているときに、タッチスクリーン130における表示方法を、打球範囲画像147の透過度合いを高める、または打球範囲画像147の表示をオフにする等の制御をすることとしてもよい。こうすることで、ユーザにとって不利な状態にあることを、打球範囲画像147の表示方法を変更することでユーザに示唆することができ、ゲームの興趣性をいっそう向上させることができる。
相手側のゲームキャラクタ136がサーブ動作を行うまでは、ゲームキャラクタ134にスイング動作を行わせることは試合の決着には影響を及ぼさないため、このように構成することで、相手側のゲームキャラクタ136のサーブ動作による試合の開始をユーザにいっそう意識させることができ、ゲームの興趣性をいっそう向上させることができる。
以上のように各実施形態のゲーム配信システムを構成する携帯端末10およびサーバ20の動作について説明してきたが、携帯端末10で行われる各処理をサーバ20で行うこととしてもよいし、サーバ20で行われる処理を携帯端末10で行うこととしてもよい。
例えば、携帯端末10は、タッチスクリーン130に対するユーザの入力操作を受け付けて、受け付けた操作内容をサーバ20へ送信する。サーバ20は、ユーザの入力操作を携帯端末10から受け付けて、ゲームを進行させるための各処理を行い、仮想カメラの配置に基づいて携帯端末10に表示させるための表示画面を生成し、生成した表示画面を、逐次、携帯端末10に表示する。このように、ゲームを進行させるための処理の大部分をサーバ20が担うこととしてもよい。また、ゲームを進行させるための処理の大部分を携帯端末10が担うこととしてもよい。
今回開示された実施の形態はすべての点で例示であって制限的なものでないと考えられるべきである。この発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
10 携帯端末、20 サーバ、22 通信IF、23 入出力IF、25 メモリ、26 ストレージ、29 プロセッサ、80 ネットワーク、81 無線基地局、82 無線ルータ、110 アンテナ、120 無線通信IF、130 タッチスクリーン、131 タッチパネル、132 ディスプレイ、134 ゲームキャラクタ、136 ゲームキャラクタ、138 対象物、150 記憶部、151 ゲームプログラム、153 バッファメモリ、155 初期タッチ位置座標、160 音声処理部、170 マイク、180 スピーカ、187 UI画像、190 制御部、191 入力操作受付部、192 ゲーム進行処理部、193 移動操作検出部、194 カメラ配置制御部、195 オブジェクト制御部、196 表示制御部、220 通信部、250 記憶部、251 ゲームプログラム、252 ゲーム情報、253 ユーザ情報、290 制御部、291 送受信部、292 サーバ処理部、293 データ管理部、294 マッチング部、295 計測部。
Claims (10)
- ゲームプログラムであって、
前記ゲームプログラムは、タッチ操作による入力操作を受け付けるタッチスクリーンと、プロセッサと、メモリとを備えるコンピュータにおいて実行されるものであり、前記入力操作を受け付けることによりユーザが操作するゲームキャラクタと、前記ゲームキャラクタと対戦する相手側ゲームキャラクタとの間で、対象物を交互に打ち返すスポーツゲームにかかるものであり、
前記ゲームプログラムは、前記プロセッサに、
前記タッチスクリーンに対する第1の入力操作に基づいて、前記ゲームキャラクタを、前記ゲームキャラクタが移動可能な範囲内で移動させるステップと、
前記タッチスクリーンに対する第2の入力操作を受け付けた場合に、前記ゲームキャラクタにスイング動作を行わせるステップと、
前記スイング動作を行わせるための前記第2の入力操作を受け付けた場合に、前記対象物が、前記ゲームキャラクタの周囲に設定されるスイング領域に含まれるときは、前記ゲームキャラクタが移動可能な範囲内における前記ゲームキャラクタの位置に基づいて、前記対象物を打ち返す移動先を決定し、前記決定された移動先に向けて前記対象物を前記スイング動作により前記相手側ゲームキャラクタに向けて打ち返すよう前記対象物を移動させるステップと、を実行させる、ゲームプログラム。 - 前記移動させるステップにおいて前記移動先を決定することは、前記スイング動作を行わせるための第2の入力操作を受け付けた場合に、前記相手側ゲームキャラクタにより打球される前記対象物の位置と、前記ゲームキャラクタの位置とにより定まる位置関係に基づいて、前記対象物を打ち返す移動先を決定することを含む、請求項1に記載のゲームプログラム。
- 前記移動させるステップにおいて前記移動先を決定することは、前記相手側ゲームキャラクタにより打球される前記対象物を前記ゲームキャラクタが打球するタイミングの早さに基づいて、前記対象物を打ち返す移動先を決定することを含む、請求項2に記載のゲームプログラム。
- 前記移動させるステップにおいて前記移動先を決定することは、前記ゲームキャラクタが移動可能な範囲内における前記ゲームキャラクタの位置に基づいて定まる着弾基準点を含む一定領域内のいずれかを、前記対象物を打ち返す移動先として決定することを含む、請求項1から3のいずれか1項に記載のゲームプログラム。
- 前記ゲームプログラムにおいて、前記ゲームキャラクタには、打球の精度を示す技術パラメータが関連づけられており、
前記移動させるステップにおいて前記移動先を決定することは、前記技術パラメータの設定に応じて、前記技術パラメータが良好であるほど、前記着弾基準点を含む前記一定領域の範囲を小さくして、前記対象物を打ち返す移動先を決定することを含む、請求項4に記載のゲームプログラム。 - 前記ゲームプログラムにおいて、前記ゲームキャラクタには、打球の精度を示す技術パラメータが関連づけられており、
前記移動させるステップにおいて前記移動先を決定することは、前記技術パラメータの設定に応じて、前記技術パラメータが良好であるほど、前記着弾基準点を、前記スポーツゲームにおいて前記対象物の着弾が有効な領域の境界に近づけるように前記対象物を打ち返す移動先を決定することを含む、請求項4に記載のゲームプログラム。 - 前記着弾基準点を含む前記一定領域の範囲は、前記着弾基準点を中心とする円形状の領域であることを含む、請求項5または6に記載のゲームプログラム。
- 前記タッチスクリーンに対する第1の入力操作に基づいて、前記ゲームキャラクタを、前記ゲームキャラクタが移動可能な範囲内で移動させるステップは、前記タッチスクリーンに対するドラッグ操作を受け付けている場合に、前記ドラッグ操作における前記タッチ操作の開始位置と、前記タッチ操作が継続している位置との位置関係により定まる方向に基づいて、前記ゲームキャラクタを移動させることを含み、
前記タッチスクリーンに対する第2の入力操作を受け付けた場合に、前記ゲームキャラクタにスイング動作を行わせるステップは、前記第2の入力操作として、前記タッチスクリーンに対するタップ操作またはフリック操作の少なくともいずれかの入力操作を受け付けることを含む、請求項1から7のいずれか1項に記載のゲームプログラム。 - タッチスクリーンを備えるコンピュータが、入力操作を受け付けることによりユーザが操作するゲームキャラクタと、前記ゲームキャラクタと対戦する相手側ゲームキャラクタとの間で、対象物を交互に打ち返すスポーツゲームを実行する方法であって、
前記方法は、前記コンピュータが、
前記タッチスクリーンに対する第1の入力操作に基づいて、前記ゲームキャラクタを、前記ゲームキャラクタが移動可能な範囲内で移動させるステップと、
前記タッチスクリーンに対する第2の入力操作を受け付けた場合に、前記ゲームキャラクタにスイング動作を行わせるステップと、
前記スイング動作を行わせるための前記第2の入力操作を受け付けた場合に、前記対象物が、前記ゲームキャラクタの周囲に設定されるスイング領域に含まれるときは、前記ゲームキャラクタが移動可能な範囲内における前記ゲームキャラクタの位置に基づいて、前記対象物を打ち返す移動先を決定し、前記決定された移動先に向けて前記対象物を前記スイング動作により前記相手側ゲームキャラクタに向けて打ち返すよう前記対象物を移動させるステップとを実行することを含む、方法。 - タッチ操作による入力操作を受け付けるタッチスクリーンと、制御部と、記憶部とを備える情報処理装置であって、
前記記憶部は、前記入力操作を受け付けることによりユーザが操作するゲームキャラクタと、前記ゲームキャラクタと対戦する相手側ゲームキャラクタとの間で、対象物を交互に打ち返すスポーツゲームのゲームプログラムを記憶するように構成されており、
前記制御部は、
前記タッチスクリーンに対する第1の入力操作に基づいて、前記ゲームキャラクタを、前記ゲームキャラクタが移動可能な範囲内で移動させるキャラクタ移動制御部と、
前記タッチスクリーンに対する第2の入力操作を受け付けた場合に、前記ゲームキャラクタにスイング動作を行わせるキャラクタ動作制御部と、
前記スイング動作を行わせるための前記第2の入力操作を受け付けた場合に、前記対象物が、前記ゲームキャラクタの周囲に設定されるスイング領域に含まれるときは、前記ゲームキャラクタが移動可能な範囲内における前記ゲームキャラクタの位置に基づいて、前記対象物を打ち返す移動先を決定し、前記決定された移動先に向けて前記対象物を前記スイング動作により前記相手側ゲームキャラクタに向けて打ち返すよう前記対象物を移動させる対象物移動制御部とを含む、情報処理装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016100019A JP2017205311A (ja) | 2016-05-19 | 2016-05-19 | ゲームプログラム、方法及びタッチスクリーンを備える情報処理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016100019A JP2017205311A (ja) | 2016-05-19 | 2016-05-19 | ゲームプログラム、方法及びタッチスクリーンを備える情報処理装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2017205311A true JP2017205311A (ja) | 2017-11-24 |
Family
ID=60416781
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016100019A Pending JP2017205311A (ja) | 2016-05-19 | 2016-05-19 | ゲームプログラム、方法及びタッチスクリーンを備える情報処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2017205311A (ja) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004113377A (ja) * | 2002-09-25 | 2004-04-15 | Konami Co Ltd | スポーツゲームプログラム |
JP2004113376A (ja) * | 2002-09-25 | 2004-04-15 | Konami Co Ltd | ゲームにおけるボールの着地点決定プログラム及びスポーツゲームプログラム |
JP2005349174A (ja) * | 2004-05-10 | 2005-12-22 | Nintendo Co Ltd | ゲームプログラムおよびゲーム装置 |
JP2007244525A (ja) * | 2006-03-14 | 2007-09-27 | Sony Computer Entertainment Inc | ゲーム制御プログラム、ゲーム制御方法、及びゲーム装置 |
JP2009112427A (ja) * | 2007-11-02 | 2009-05-28 | Konami Digital Entertainment Co Ltd | ゲーム装置、ゲーム装置の制御方法及びプログラム |
JP2013039232A (ja) * | 2011-08-16 | 2013-02-28 | Sega Corp | コンピュータゲーム装置、コンピュータゲーム装置を制御するための制御方法及びゲームプログラム、並びにゲームプログラムを記録した記録媒体 |
JP5865535B1 (ja) * | 2015-04-16 | 2016-02-17 | 株式会社コロプラ | ユーザ・インタフェース・プログラム |
-
2016
- 2016-05-19 JP JP2016100019A patent/JP2017205311A/ja active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004113377A (ja) * | 2002-09-25 | 2004-04-15 | Konami Co Ltd | スポーツゲームプログラム |
JP2004113376A (ja) * | 2002-09-25 | 2004-04-15 | Konami Co Ltd | ゲームにおけるボールの着地点決定プログラム及びスポーツゲームプログラム |
JP2005349174A (ja) * | 2004-05-10 | 2005-12-22 | Nintendo Co Ltd | ゲームプログラムおよびゲーム装置 |
JP2007244525A (ja) * | 2006-03-14 | 2007-09-27 | Sony Computer Entertainment Inc | ゲーム制御プログラム、ゲーム制御方法、及びゲーム装置 |
JP2009112427A (ja) * | 2007-11-02 | 2009-05-28 | Konami Digital Entertainment Co Ltd | ゲーム装置、ゲーム装置の制御方法及びプログラム |
JP2013039232A (ja) * | 2011-08-16 | 2013-02-28 | Sega Corp | コンピュータゲーム装置、コンピュータゲーム装置を制御するための制御方法及びゲームプログラム、並びにゲームプログラムを記録した記録媒体 |
JP5865535B1 (ja) * | 2015-04-16 | 2016-02-17 | 株式会社コロプラ | ユーザ・インタフェース・プログラム |
Non-Patent Citations (2)
Title |
---|
"【白猫攻略】"ぷにコン"の基本操作をマスターしよう", ファミ通APP, JPN6016044841, 29 August 2014 (2014-08-29), ISSN: 0003444807 * |
"白猫プロジェクト", 週刊ファミ通 2014 11/27・12/4合併号, vol. 第29巻第48号通巻1354号, JPN6016044842, 13 November 2014 (2014-11-13), pages 104 - 105, ISSN: 0003444806 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6450875B1 (ja) | ゲームプログラム、ゲーム方法、および情報処理装置 | |
JP2021041190A (ja) | ゲームプログラム、方法、および情報処理装置 | |
JP7272765B2 (ja) | ゲームプログラム | |
JP7510290B2 (ja) | ゲームプログラム、およびゲーム方法 | |
JP6002345B1 (ja) | ゲームプログラム、方法及びタッチスクリーンを備える情報処理装置 | |
JP2017192537A (ja) | ゲームプログラム、方法及びタッチスクリーンを備える情報処理装置 | |
JP2017192538A (ja) | ゲームプログラム、方法及びタッチスクリーンを備える情報処理装置 | |
JP6924564B2 (ja) | ゲームプログラム | |
JP7037279B2 (ja) | ゲームプログラム、方法、および情報処理装置 | |
JP2018083057A (ja) | ゲームプログラム、方法、および情報処理装置 | |
JP7216154B2 (ja) | ゲームプログラム、方法及びタッチスクリーンを備える情報処理装置 | |
JP6209243B1 (ja) | ゲームプログラム、方法及びタッチスクリーンを備える情報処理装置 | |
JP2017205311A (ja) | ゲームプログラム、方法及びタッチスクリーンを備える情報処理装置 | |
JP6501814B2 (ja) | ゲームプログラム、方法、および情報処理装置 | |
JP6002344B1 (ja) | ゲームプログラム、方法及びタッチスクリーンを備える情報処理装置 | |
JP6174202B1 (ja) | ゲームプログラム、方法及びタッチスクリーンを備える情報処理装置 | |
TWI599388B (zh) | 遊戲處理方法以及遊戲處理程式 | |
JP2018033972A (ja) | ゲームプログラム、方法及びタッチスクリーンを備える情報処理装置 | |
JP7457662B2 (ja) | プログラム、および情報処理装置 | |
JP2018020150A (ja) | ゲームプログラム、方法及びタッチスクリーンを備える情報処理装置 | |
JP2019208920A (ja) | ゲームプログラム、ゲーム方法、および情報処理装置 | |
JP2018161513A (ja) | ゲームプログラム、方法、および情報処理装置 | |
JP2017221676A (ja) | ゲームプログラム、方法及びタッチスクリーンを備える情報処理装置 | |
JP7171403B2 (ja) | プログラム、ゲーム方法、および情報処理装置 | |
WO2021033563A1 (ja) | ゲームプログラム、ゲーム方法、および情報処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20170913 |