【文献】
セガ、PS3/Xbox 360「パワースマッシュ4」。ひとりでもみんなでも楽しめるミニゲームを紹介,GAME Watch,2011年 6月24日,URL,http://game.watch.impress.co.jp/docs/news/20110624_455391.html
(58)【調査した分野】(Int.Cl.,DB名)
前記効果処理部は、前記球が前記面に到達した位置に配置された前記面オブジェクトが、所定のアイテムオブジェクトであったとき、プレイヤにアイテムを付与する処理および/または得点を付与する処理を行う、請求項1ないし5のいずれかに記載のゲームシステム。
前記効果ステップでは、前記球が前記面に到達した位置に配置された前記面オブジェクトが、所定のアイテムオブジェクトであったとき、プレイヤにアイテムを付与する処理および/または得点を付与する処理を行う、請求項10ないし14のいずれかに記載のゲーム制御方法。
前記動作ステップでは、時間の経過とともに前記面内に配置された前記面オブジェクトをスクロールさせる処理を行う、請求項10ないし16のいずれかに記載のゲーム制御方法。
【発明の概要】
【発明が解決しようとする課題】
【0004】
一方で、ゲームのプレイヤは、新規のゲーム要素を盛り込んだゲームを求める傾向にある。
【0005】
そこで、本発明の目的は、仮想空間内での球技ゲームと同時に、別のゲーム要素を実行する新規なゲームシステム、ゲーム制御方法、ゲーム装置およびゲームプログラムを提供することにある。
【課題を解決するための手段】
【0006】
上記目的を達成するために、本発明は、以下に述べるような特徴を有している。
【0007】
本発明は、仮想空間内で球技ゲームを行うゲームシステムである。ゲームシステムは、プレイヤの操作に応じて球を打つ処理を行う打球処理部と、前記仮想空間内において前記球が到達する所定の位置に面を設定する面設定部と、前記面内に、面オブジェクトを配置するオブジェクト配置部と、前記面内に配置された前記面オブジェクトを前記面内において動かすオブジェクト処理部と、前記球が前記面に到達した際の球の位置に配置される前記面オブジェクトに応じて、当該球技ゲームにおける所定の効果を与える効果処理部を備えている。
【0008】
上記によれば、プレイヤの操作に応じて球を打つ動作を含む球技ゲームを行う仮想空間内の所定の位置に、面オブジェクトを配置した面を設定し、その面に配置した面オブジェクトを動かすことが可能となる。そして、プレイヤの操作に応じて打った球が面に到達した際の位置に配置された面オブジェクトに応じて、当該球技ゲームにおける所定の効果をプレイヤに与えることができる。これによれば、当該球技ゲームのプレイヤは、仮想空間内で球技ゲームをしながら、同時に、面内に配置された動く面オブジェクトが付与する所定の効果を狙った別のゲーム要素を楽しむことができる。
【0009】
また、ゲームシステムは、前記球が前記面に到達したとき、当該球を跳ね返す処理を行う跳ね返し処理部をさらに備えていてもよい。
【0010】
上記によれば、仮想空間内での球技ゲームを行う際に、球が、面オブジェクトが配置された面に到達したとき、当該球を跳ね返すことができる。これによれば、プレイヤの操作に応じて打った球が面に到達したとき、跳ね返ってくるので、プレイヤは、繰り返し球を打ち返すことで当該球技ゲームを楽しむことができる。
【0011】
また、ゲームシステムにおける前記球技ゲームは、前記仮想空間内のコート内で相手と対戦を行う球技ゲームであって、前記面は、前記コートの中央に設定され、かつ前記球が通過可能としてもよい。
【0012】
上記によれば、仮想空間内のコート内で相手と対戦を行う際に、プレイヤと対戦相手との間に、動く面オブジェクトが配置され、かつ球が通過可能な面を配置することができる。これによれば、プレイヤとその対戦相手は、当該球技ゲームで対戦しながら、同時に、動く面オブジェクトが配置された面を通して互いに球の打ち合いが可能な対戦ゲームを楽しむことができる。
【0013】
また、ゲームシステムは、前記球が相手側のコートにある場合、前記面の少なくとも一部の透明度を上げる透明処理部をさらに備えていてもよい。
【0014】
上記によれば、球が相手側のコートにある場合、球が自分側のコートにある場合に比べて、面の少なくとも一部の透明度を上げることができる。これによれば、球技ゲームのプレイヤは、球が相手側のコートにある場合に、透明度が上がった面の一部を通して対戦相手の動きや球の位置を把握することができるので、次の操作をスムーズに行うことができる。
【0015】
また、ゲームシステムにおける前記球技ゲームは、テニスゲームとしてもよい。
【0016】
上記によれば、球技ゲームをテニスゲームとして楽しむことができる。具体的には、球はテニスボールになり、プレイヤの操作に応じてテニスボールを打つ道具はラケットになり、コートはテニスコートになり、面はネット付近に配置される。
【0017】
また、前記効果処理部は、前記球が前記面に到達した位置に配置された前記面オブジェクトが、所定のアイテムオブジェクトであったとき、プレイヤにアイテムを付与する処理および/または得点を付与する処理を行うようにしてもよい。
【0018】
上記によれば、球が面に到達した位置に配置された面オブジェクトが、所定のアイテムオブジェクトに対応していた場合、プレイヤは、所定のアイテムを取得したり、得点を得たりすることができる。これにより、例えば、プレイヤが取得したアイテムや得点の獲得数によって、プレイヤに様々な特典を与えて、様々なゲーム展開を提供することができる。
【0019】
また、前記面内に配置される複数の前記面オブジェクトにより構成されるマップを複数有し、前記効果処理部は、前記球が前記面に到達した位置に配置された前記面オブジェクトが所定の種類の面オブジェクトであったとき、前記マップを別のマップに切り替えてもよい。
【0020】
上記によれば、球が面に到達した位置に配置された面オブジェクトが所定の種類の面オブジェクトであったとき、マップを別のマップに切り替えることができる。これにより、プレイヤは様々なマップにおいて、球技ゲームを楽しむことができる。
【0021】
また、前記オブジェクト処理部は、時間の経過とともに前記面内に配置された前記面オブジェクトをスクロールさせてもよい。
【0022】
上記によれば、面内に配置された面オブジェクトを、時間の経過とともにスクロールすることができる。これにより、例えば、スクロールによって次々に面オブジェクトを供給する構成とした場合には、プレイヤは、スクロールによって次々に供給される面オブジェクトを狙って球を打つことができる。即ち、プレイヤに対して、常に新しい面オブジェクトを提供することができる。
【0023】
また、本発明は、第1の仮想空間内でゲームを行うゲームシステムである。ゲームシステムは、プレイヤの操作に応じて操作対象物を前記第1の仮想空間内でコントロールする対象物処理部と、前記第1仮想空間内における所定の位置にスクリーン領域を設定するスクリーン設定部と、前記第1の仮想空間とは異なる第2の仮想空間を設定する第2仮想空間設定部と、前記第2仮想空間の一部領域を、当該領域の移動可能にしつつ前記スクリーン領域に表示する第2仮想空間描画部と、前記第1の仮想空間内で移動する前記操作対象物が前記スクリーン領域に到達した際の前記操作対象物の位置に対応する前記第2仮想空間の位置に関連して、前記ゲームにおける所定の効果を与える効果処理部を備えていてもよい。
【0024】
上記構成によれば、プレイヤの操作に応じて操作対象物のコントロールを行う第1の仮想空間内の所定の位置にスクリーン領域を設定し、設定したスクリーン領域に、第1の仮想空間とは異なる第2の仮想空間の一部領域を移動可能に表示することが可能となる。そして、プレイヤの操作に応じて第1の仮想空間内で移動する操作対象物がスクリーン領域に到達した際の操作対象物の位置に対応する第2仮想空間の位置に関連して、ゲームにおける所定の効果を、プレイヤに与えることができる。これによれば、ゲームのプレイヤは、第1の仮想空間内でゲームをしながら、同時に、第2の仮想空間内で付与される所定の効果を狙った別のゲーム要素を楽しむことができる。
【0025】
また、上記に挙げた発明は、ゲームシステムの他に、ゲーム制御方法、ゲーム装置およびゲームプログラムの形態で実施されてもよい。
【発明の効果】
【0026】
本発明によれば、仮想空間内での球技ゲームと同時に、別のゲーム要素を実行する新規なゲームシステム、ゲーム制御方法、ゲーム装置およびゲームプログラムを提供することができる。
【発明を実施するための形態】
【0028】
(実施形態)
本実施形態に係るゲームシステム1を図面に基づいて説明する。
【0029】
(ゲームシステム1の構成)
ゲームシステム1は、
図1のブロック図に示すように、複数の携帯型のゲーム装置10を含む構成としている。本実施形態では、ゲームシステム1は、2台のゲーム装置10によって構成されるように示しているが、3台以上のゲーム装置10によって構成するようにしてもよい。ゲームシステム1では、互いのゲーム装置10は、無線通信可能に接続されている。そして、複数のプレイヤがゲーム装置10を1つずつ使用するものとする。
【0030】
なお、本実施形態のゲームシステム1では、互いのゲーム装置10が、無線通信により接続される構成としているが、これに限らず、互いのゲーム装置10がインターネット等のネットワークを介して接続される構成としてもよい。
【0031】
また、それぞれのゲーム装置10では、プレイヤが単独(オフラインモード)でもゲームが可能なように構成されているものとする。
【0032】
(ゲーム装置10の構成)
次に、ゲームシステム1を構成する各ゲーム装置10の構成について
図1を参照して説明する。
【0033】
ゲーム装置10は、CPU11、メインメモリ12、サブデータメモリ13、メモリカードインターフェース(メモリカードI/F)15、通信モジュール16、ディスプレイ装置18、操作部20、及びインターフェース回路(I/F回路)21等を有する。
【0034】
CPU11には、メインメモリ12、サブデータメモリ13、メモリカードI/F15、通信モジュール16、ディスプレイ装置18、操作部20及びI/F回路21等が図略のバスを介して接続されている。
【0035】
CPU11は、所定のプログラムを実行することで所定の処理を行う。例えば、CPU11は、後述するテニスゲームプログラムや壁当テニスゲームプログラムを実行する。メインメモリ12は、CPU11の作業領域として機能する。すなわち、メインメモリ12には、CPU11によってメモリカードI/F15や通信モジュール16等を介して外部から取得された所定のプログラム・情報データや、上記所定の処理によって得られた各種データ等が記憶される。メインメモリ12には、例えば、PSRAM(Pseudo−SRAM)が用いられる。
【0036】
サブデータメモリ13は、書き換え可能な不揮発性のメモリである。サブデータメモリ13には、例えばNAND型フラッシュメモリが用いられる。このサブデータメモリ13には、ゲーム装置10の起動用プログラム及び予め設定された各種パラメータ等を記憶するためのメモリである。
【0037】
メモリカードI/F15には、メモリカード2が着脱自在に接続される。メモリカードI/F15は、CPU11の指示に従って、メモリカード2へのデータの書き込み及びメモリカード2からのデータの読み出しを行う。
【0038】
通信モジュール16は、例えばIEEE802.11b/gの通信規格に準拠した方式によって他のゲーム装置10と無線通信を行う機能を有する。なお、ゲーム装置10は、無線通信に代えて、又は無線に加えて、有線によって他のゲーム装置10と通信を行ってもよい。
【0039】
ディスプレイ装置18は、例えば液晶ディスプレイを備えた液晶ディスプレイ装置である。本実施形態では、ディスプレイ装置18は、仮想空間60内(3次元の仮想空間)で実施されるテニスゲームのゲーム画像を表示する。
【0040】
操作部20は、プレイヤの操作を受け付けるための一つ又は複数の操作子を備える。例えば、操作部20には、十字ボタン、スタートボタン、セレクトボタン、決定ボタン、キャンセルボタン、更に、プレイヤからのタッチ操作に応じて、信号をI/F回路21に出力するタッチパネルなどが配置されている。なお、タッチパネルとしては、抵抗膜方式や光学式(赤外線方式)や静電容量結合式など、任意の方式のものを利用することができる。
【0041】
また、ゲーム装置10は、マイク23、アンプ24及びスピーカ25を有し、マイク23、アンプ24はI/F回路21に接続されている。
【0042】
I/F回路21は、マイク23及びアンプ24の制御を行うための音声制御回路を含む。音声制御回路は、CPU11の指示に従って、マイク23で集音した音声の信号をA/D変換してCPU11に出力する。また、音声制御回路は、CPU11の指示に従って、CPU11から入力された音声データに対して所定の音声信号処理を行った後、この音声データをD/A変換してアンプ24に対して出力し、更に、スピーカ25より音を出力する
【0043】
マイク23は、音声を集音し、この集音した音声の信号をI/F回路21に出力する。アンプ24は、スピーカ25を接続し、I/F回路21から入力した音声の信号を増幅してスピーカ25に出力する。スピーカ25はアンプ24から入力された音声を出力する。
【0044】
(3次元の仮想空間に2次元の仮想空間を設定する処理の概要)
以下に、
図7〜
図9及び
図11を用いて上記ゲーム装置10が実行する3次元の仮想空間60に2次元の仮想空間を設定する処理の概要について説明する。
【0045】
3次元の仮想空間60に2次元の仮想空間を設定する処理は、後述のテニスゲーム処理において実行される。本実施形態では、ゲーム装置10は、3次元の仮想空間60(第1仮想空間)において、操作キャラクタ70と対戦キャラクタ73とが、テニスボール72を交互に打球することで対戦するテニスゲームを行う。操作キャラクタ70は、プレイヤの操作によって動くキャラクタであり、対戦キャラクタ73は、通信相手のプレイヤの操作によって又は自動的に動くキャラクタである。
【0046】
仮想空間60内にはテニスコート61が配置され、このテニスコート61における、対戦キャラクタ73側のコートと、操作キャラクタ70側のコートの間には、面が設定されている。「この面を設定する」とは、例えば、ゲーム背景画像63を貼り付け、かつ面オブジェクトを配置するための面を有するオブジェクト(本実施形態では、壁オブジェクト59:
図7参照)を3次元の仮想空間60内に配置することである。その上で、壁オブジェクト59の面に、ゲーム背景画像63を貼り付けるための処理が行われる。なお、本実施形態では、面は平面であるが、曲面であってもよい。なお、平面を有するオブジェクトは、壁オブジェクト59に限定されず、如何なる種類のオブジェクト(例えば、板ポリゴン等)であってもよい。
【0047】
また、壁オブジェクト59の平面には、ゲーム背景画像63上に重ねて配置されるように、複数の面オブジェクトが配置される。この面オブジェクトは、厚みを有さない2次元的なオブジェクトであり、複数種類用意される。ゲーム背景画像63と、複数の面オブジェクトとで、本発明の「第2仮想空間」に対応する2次元の仮想空間を構成している。テニスボール72が面オブジェクトに当たったときに、3次元の仮想空間60において所定のゲーム効果が発生する。この所定のゲーム効果は、例えば、所定のアイテムが、新たな面オブジェクトとして発生したり、プレイヤにアイテムを付与したりすることである。また、所定のゲーム効果は、壁オブジェクト59の平面に貼り付けられるゲーム背景画像63が別のゲーム背景画像63に切り替えられ、このゲーム背景画像63上に配置される面オブジェクトの配置位置が変更されること等である。なお、以下に、壁オブジェクト59に貼り付けられるゲーム背景画像63を切り替え、この切り替えられたゲーム背景画像63に対応する面オブジェクトも変更することを、「マップを切り替える」と記載する。
【0048】
この「マップの切り替え」を具体的に説明する。例えば、
図11で示すように、複数種類のゲーム背景画像63(63A、63B、63C)が用意され、これらのうちの一つが壁オブジェクト59の面に貼り付けられる。複数種類のゲーム背景画像63は、それぞれの異なる一つのマップ(地上マップ63A、上空マップ63B、地下マップ63C)を構成する。例えば、地上マップ63Aに対応するゲーム背景画像63(真ん中のゲーム背景画像63)が壁オブジェクト59の面に貼り付けられていたときに、テニスボール72が所定のアイテムオブジェクト(豆の木69A、土管69B)にあたったら、このゲーム背景画像63に代えて、上空マップ63Bに対応するゲーム背景画像63B、又は地下マップ63Cに対応するゲーム背景画像63Cが、壁オブジェクト59の面に貼り付けられる。また、マップが切り替えられることにより、それぞれのゲーム背景画像63の種類に対応する面オブジェクトも変わることになる。
【0049】
また、ゲーム背景画像63及び面オブジェクトを、仮想空間60において、スクロール(
図7から
図9の右から左方向にスクロール)して表示するための処理(スクロール処理)が実行される。このスクロール処理を説明する。
図11で示すように、ゲーム背景画像63は、壁オブジェクト59の平面におけるゲーム背景画像63の貼り付け領域Rよりも大きいサイズである。そして、ゲーム背景画像63における壁オブジェクト59に貼り付け領域Rは、ゲーム背景画像63において一定方向(
図11における左から右)に、単位時間について一定量で移動(スライド移動)される。これによって、ゲーム背景画像63が、
図7及び
図8で示すスライド方向(図中の右から左)に移動するように、プレイヤに視認させることができる。また、面オブジェクトの配置位置も、一定方向(図中の右から左)に、単位時間について一定量で移動される。これによって、面オブジェクトも、ゲーム背景画像63と同時にスクロールされるように、プレイヤに視認させることができる。
【0050】
なお、以下の説明において、単に「仮想空間」と記載した場合には、「2次元仮想空間」ではなく「3次元仮想空間」を示す。
【0051】
(メインメモリ12のメモリマップ)
次に、メインメモリ12に記憶されるプログラム及びデータについて説明する。
図2に示すように、メインメモリ12は、ゲームプログラム記憶領域30およびゲームデータ記憶領域40を有する。
【0052】
ゲームプログラム記憶領域30には、テニスゲームプログラム31、及び壁当テニスゲームプログラム32などが含まれる。テニスゲームプログラム31は、後述するテニスゲーム処理を実行するためのプログラムである。また、壁当テニスゲームプログラム32は、後述する壁当テニスゲーム処理を実行するためのプログラムである。なお、テニスゲームプログラム31及び壁当テニスゲームプログラム32は、
図1のメモリカード2から読み出されて、メインメモリ12に記憶される。もっとも、テニスゲームプログラム31及び壁当テニスゲームプログラム32は、通信モジュール16を用いて、サーバや、他のゲーム装置10からダウンロードされてメインメモリ12に記憶されてもよい。
【0053】
一方、ゲームデータ記憶領域40には、操作データ41、送信用データ42、受信用データ43、コインカウンタ44、背景スクロール用データ45、面オブジェクトスクロール用データ46、透明度データ47、操作キャラクタ画像生成用データ48、対戦キャラクタ画像生成用データ49、壁オブジェクト生成用データ50等が含まれる。
【0054】
操作データ41は、ゲーム装置10の操作部20に対して行われた入力操作に関する情報を示すデータである。操作データ41は、例えば、操作部20の各ボタンの操作状態(各ボタンが押下されたか否かなど)を示すデータである。送信用データ42は、ゲーム装置10から他のゲーム装置10へ送信される情報データである。受信用データ43は、他のゲーム装置10からゲーム装置10へ送信されてきた情報データである。この受信用データ43の内容は、他のゲーム装置10から情報データを受信する度に更新される。コインカウンタ44は、獲得したコイン65を計数するカウンタである。
【0055】
背景スクロール用データ45は、ゲーム背景画像63の移動方向及び単位時間(例えば、1/60sec)についての移動量を示す情報である。面オブジェクトスクロール用データ46は、面オブジェクトの移動方向及び単位時間(例えば、1/60sec)についての移動量を示す情報である。透明度データ47は、壁オブジェクト59におけるゲーム背景画像63の配置領域と、各面オブジェクトの透明度を示す。操作キャラクタ画像生成用データ48は、操作キャラクタ70の画像を生成するためのデータであり、操作キャラクタ70の位置、向き、姿勢(動作)等を示す。対戦キャラクタ画像生成用データ49は、対戦キャラクタ73の画像を生成するためのデータであり、対戦キャラクタ73の位置、向き、姿勢(動作)等を示す。壁オブジェクト生成用データ50は、壁オブジェクト59の画像を生成するためのデータであり、壁オブジェクト59の位置、ゲーム背景画像63における読み出し位置(壁オブジェクト59に貼り付けられる領域)、及び、各面オブジェクトの座標(ローカル座標)を示す。
【0056】
その他、メインメモリ12には、複数種類の面オブジェクトの画像データ、複数種類のゲーム背景画像63のデータ、複数種類のゲーム背景画像63に対応する面オブジェクトの初期位置情報、ポリゴンモデルやテクスチャ等、テニスゲームにおけるゲーム画像を表示するための必要なデータが記憶されている。
【0057】
(処理動作)
次に、ゲーム装置10において実行される処理動作について説明する。
【0058】
(テニスゲーム処理)
まず、
図3のフローチャートを参照して、ゲーム装置10で実行されるテニスゲーム処理について説明する。
【0059】
まず、
図3のフローチャートを参照して、ゲーム装置10(CPU11)により実行されるテニスゲーム処理について説明する。テニスゲーム処理はテニスゲームプログラムが実行されることにより行われる。
【0060】
プレイヤからテニスゲーム処理の開始の指示があると、テニスゲームプログラムによって以下のステップをCPU11に実行させる。まず、CPU11は、他のゲーム装置10との間で通信対戦を行なう通信対戦モードの選択をプレイヤから受け付けたか否かを判断する(S10)。そして、通信対戦モードの選択をプレイヤから受け付けたときは(S10:YES)、CPU11は、他のゲーム装置10との間で通信を確立し、通信対戦モードに設定する(S11)。これによって、通信相手のゲーム装置10のプレイヤが操作する対戦キャラクタ73と対戦することになる。
【0061】
一方、通信対戦モードの選択をプレイヤから受け付けないときは(S10:NO)、CPU11は、自動作動させる対戦キャラクタ73と対戦を行う対戦モードを設定する(S12)。
【0062】
S11の処理後、又は、S12の処理後、CPU11は、仮想空間60内にテニスコート61を配置する(S13)。
【0063】
次に、CPU11は、テニスコート61の中央に、壁オブジェクト59を配置するとともに、この壁オブジェクト59の面にゲーム背景画像63(面に相当)を設置する(S14)。本実施形態では、ゲーム背景画像63として、
図11の中段に示すような地上・山・草むら・雲などを盛り込んだゲーム背景画像63Aや、
図11の上段に示すような空の情景をイメージしたゲーム背景画像63Bや、
図11の下段に示すような地下の情景をイメージした黒いゲーム背景画像63Cなどを採用している。なお、CPU11によるS14の処理において、CPU11は面設定部として機能する。
【0064】
次に、CPU11は、ゲーム背景画像63内に、様々な種類の面オブジェクト(ブロック64、コイン65、アイテムボックス66、モンスター67など)を配置する(S15)。面オブジェクトには、ゲーム背景画像63内の配置位置が変わらない固定オブジェクトと、独自に移動(ゲーム背景画像63内の配置位置を変える)することのできる移動オブジェクト、プレイヤに所定の効果を付与するアイテムオブジェクトなどが含まれる。例えば、固定オブジェクトには、ブロック64、アイテムボックス66などが挙げられる。また、移動オブジェクトには、モンスター67、アイテムオブジェクトには、特典オブジェクト68(キノコ68A、キノコ68B)、マップ切替オブジェクト69(豆の木69A、土管69B)、得点オブジェクト(コイン65など)などが挙げられる。また、CPU11によるS15の処理において、CPU11はオブジェクト配置部として機能する。
【0065】
次に、CPU11は、テニスコート61に、ゲーム装置10のプレイヤが操作する操作キャラクタ70、通信対戦相手又はCPUが操作する対戦キャラクタ73、テニスボール72、ラケット71、74などを配置する(S16)。このように、上記S13〜S16によって、テニスゲームの初期設定(仮想空間を構築すること)が実行される。
【0066】
この後、CPU11は、後述のS17からS21の処理を所定の描画周期毎に繰り返し実行する。
【0067】
まず、CPU11は、上述したスクロール処理を実行する(S17)。具体的には、
図9に示すように、ゲーム背景画像63及び面オブジェクトが、時間の経過とともに右側から左側へ移動するようにプレイヤに視認させるための処理を実行する。なお、CPU11によるS17の処理において、CPU11は動作処理部として機能する。
【0068】
次に、CPU11は、後述するキャラクタ・ボール制御処理を実行する(S18)。その後、後述するアイテム・得点取得処理を実行する(S19)。
【0069】
次に、S17からS19の処理結果に従ってゲーム画像が生成され、ディスプレイ装置18に表示される(S20)。
【0070】
次に、CPU11は、テニスゲームの終了条件が成立したか否かを判断する(S21)。テニスゲームの終了条件が成立したと判断したときには(S21:YES)、CPU11は本処理を終了させる。一方、テニスゲームの終了条件が成立していないと判断したときには(S21:NO)、CPU11は、上記ステップS17に処理を戻す。なお、テニスゲームの終了条件としては、ミスなどによりテニスボール72を後ろに逸らしたり、コート内で2回バウンドさせたりして、相手コート内にテニスボール72を返せなかったりした場合が挙げられる。
【0071】
(キャラクタ・ボール制御処理1)
次に、
図4のフローチャートを参照して、上記テニスゲーム処理内で実行されるキャラクタ・ボール制御処理1(S18)について説明する。このキャラクタ・ボール制御処理1は、上記テニスゲーム処理において、通信対戦モード(S11)に設定された場合の処理である。
【0072】
まず、CPU11は、操作部20からの操作入力を検出する(S30)。次に、S30の操作入力に基づいて、CPU11は、操作キャラクタ70の位置、向き、動作(姿勢)の制御を行う(S31)。具体的には、操作キャラクタ70の移動の入力であれば、指定の位置に移動させる。また、操作キャラクタ70がテニスボール72を打つ入力であれば、ラケット71を振らせる。また、ラケット71にテニスボール72が当たったら、テニスボール72の移動方向と速度を変更する。そして、テニスボール72に設定された移動方向と速度に応じてテニスボール72を移動させる。そして、S31の動作制御で生成した操作キャラクタ70の位置データや、ラケット71のスイング動作データや、操作キャラクタ70がラケット71で打ったテニスボール72の移動方向や速度のデータや、操作するプレイヤの操作入力に基づいて作成されるデータなどの情報データは、送信用データとしてメインメモリ12に記憶される。なお、テニスボール72の移動方向と速度は、テニスコート61・ネット、面オブジェクトに当たる毎に変化させてもよい。また、CPU11によるS31の処理は、打球処理部に相当する。
【0073】
次に、CPU11は、送信処理を実行する(S32)。具体的には、CPU11は、S31で送信用データ43として記憶した情報データを通信対戦相手に送信する。
【0074】
次に、CPU11は、受信処理を実行する(S33)。具体的には、CPU11は、他のゲーム装置10から情報データを受信しているか否かをチェックする。そして、情報データを受信した場合、受信した情報データを受信用データ43としてメインメモリ12に記憶する。この受信用データ43には、対戦キャラクタ73の位置データや、動作データ、テニスボール72の位置、移動方向や速度のデータや、対戦するプレイヤの操作入力に基づいて作成されるその他のデータなどが含まれている。
【0075】
次に、CPU11は、S33でメインメモリ12に受信用データ43として記憶した情報データに基づいて、対戦キャラクタ73の位置、向き、動作(姿勢)を制御する(S34)。これにより、対戦キャラクタ73に、移動又はラケット74を振らせる動作を行わせる。
【0076】
また、CPU11は、テニスボール72の位置を制御する(S35)。例えば、CPU11は、対戦キャラクタ73のラケット74にテニスボール72が当たったら、テニスボール72の移動方向と速度を変更し、これに基づいて仮想空間60内でのテニスボール72の位置を制御する。
【0077】
次に、操作キャラクタ70又は対戦キャラクタ73が打ち返したテニスボール72が、テニスコート61の中央に配置された2次元的な面として表示されるゲーム背景画像63の配置位置(壁オブジェクト59における面の位置)に到達したか否かが判断される(S36)。
【0078】
テニスボール72がゲーム背景画像63の配置位置に到達していないときは(S36:NO)、本処理は終了する。一方、テニスボール72がゲーム背景画像63の配置位置に到達したときは(S36:YES)、テニスボール72がゲーム背景画像63の配置位置に到達したときのテニスボール72の移動方向から、テニスボール72が操作キャラクタ70側からゲーム背景画像63に到達したか否かを判断する(S37)。
【0079】
そして、テニスボール72が操作キャラクタ70側からゲーム背景画像63の配置位置に到達したときは(S37:YES)、ゲーム背景画像63の透明度を上げる処理を実行する(S38)。具体的には、壁オブジェクト59におけるゲーム背景画像63が貼り付けられている領域は、半透明であり、壁オブジェクト59の背後に位置するオブジェクト等(対戦キャラクタ73等)も、プレイヤが視認することができるようになっている。そして、
図7に示すように、テニスボール72が操作キャラクタ70側からゲーム背景画像63に到達したときは、ゲーム背景画像63の透明度を上げることによって、対戦キャラクタ73側のテニスコート61、対戦キャラクタ73の可視度を上げる。なお、この後、
図8及び
図9で示すように、数フレームかけて、更に段階的にゲーム背景画像63の透明度が上がるように設定される。
【0080】
上記ゲーム背景画像63の透明度を上げる処理を実行することにより、テニスボール72が操作キャラクタ70側のテニスコート61にあるときは、対戦キャラクタ73や対戦キャラクタ73側のテニスコート61などが見え難い状況にあるため、操作キャラクタ70のプレイヤは、当てたい面オブジェクトを狙って集中して操作することができる。一方、操作キャラクタ70のプレイヤは、テニスボール72が対戦キャラクタ73側のテニスコート61にあるときなどは、対戦キャラクタ73が打ち返すテニスボール72に対応するため、対戦キャラクタ73の位置・動き、テニスボール72の位置を把握する必要がある。そのため、ゲーム背景画像63の透明度を上げることによって、透明度が上がったゲーム背景画像63を通して対戦キャラクタ73の位置・動き、テニスボール72の位置を把握させて、次の操作をスムーズに行わせることができる。
【0081】
なお、上記ゲーム背景画像63の透明度を上げる処理では、テニスボール72がゲーム背景画像63に到達したときに透明度を上げているが、操作キャラクタ70がラケット71でテニスボール72を打ったときからゲーム背景画像63の透明度を上げるようにしてもよい。また、例えば、対戦キャラクタ73や、テニスコート61エンドラインや、ゲーム背景画像63などを基準物に設定し、この基準物とテニスボール72との相対的な距離に応じて、ゲーム背景画像63の透明度を変化させてもよい。また、上記ゲーム背景画像63の透明度を上げる処理では、テニスボール72がゲーム背景画像63に到達してから対戦キャラクタ73がテニスボール72を打ち返すまでに徐々にゲーム背景画像63の透明度を上げているが、所定の位置、例えば、ゲーム背景画像63に到達した時点で、ゲーム背景画像63の透明度を一気に最高値に設定してしまってもよい。
上記S37の処理が終われば、本処理は終了される。
【0082】
一方で、テニスボール72が操作キャラクタ70側からゲーム背景画像63に到達していないとき(S37:NO)、換言すれば、テニスボール72が対戦キャラクタ73側からゲーム背景画像63に到達したときは、ゲーム背景画像63の透明度を下げる処理を実行する(S39)。この透明度を下げる処理は、上記透明度を上げる処理の反対の処理である。具体的には、
図9に示すように、テニスボール72が、対戦キャラクタ73側にあるときは、ゲーム背景画像63の透明度は高く、対戦キャラクタ73側のテニスコート61、対戦キャラクタ73の可視度は高い。そして、テニスボール72がゲーム背景画像63の配置位置に到達すると、
図8に示すように、ゲーム背景画像63の可視度が上がる(ゲーム背景画像63の透明度が下がる)。なお、この後、数フレームかけて、更に段階的にゲーム背景画像63の透明度が下がるように設定される。
上記S38の処理が終われば、本処理は終了される。
【0083】
(キャラクタ・ボール制御処理2)
次に、
図5のフローチャートを参照して、上記テニスゲーム処理内で実行されるキャラクタ・ボール制御処理2(S18)について説明する。このキャラクタ・ボール制御処理2は、上記テニスゲーム処理において、CPUとの対戦モード(S12)に設定された場合の処理である。なお、キャラクタ・ボール制御処理1における説明と重複する部分については説明を省略する。
【0084】
まず、CPU11は、上述したS30の処理同様に、操作部20からの操作入力を検出する(S50)。次に、CPU11は、上述したS31の処理と同様に、S50の操作入力に基づいて、操作キャラクタ70の位置、向き、動作(姿勢)の制御を行う(S51)。
【0085】
次に、CPU11は、上述したS34の処理同様に、対戦キャラクタ73の位置、向き、動作(姿勢)を制御する(S52)。本処理は、CPU11との対戦モードであるため、対戦キャラクタ73は、CPU11が自動的に動作させる。これにより、対戦キャラクタ73に、移動又はラケット74を振らせる動作を行わせる。また、CPU11は、上述したS35の処理同様に、テニスボール72の位置を制御する(S53)。
【0086】
次に、S36同様に、CPU11は、操作キャラクタ70又は対戦キャラクタ73が打ち返したテニスボール72が、テニスコート61の中央に配置された2次元的な面として表示されるゲーム背景画像63に到達したか否かを判断する(S54)。
【0087】
テニスボール72がゲーム背景画像63に到達していないときは(S54:NO)、CPU11は本処理を終了させる。一方、テニスボール72がゲーム背景画像63に到達したときは(S54:YES)、CPU11は、S37の処理同様に、テニスボール72がゲーム背景画像63に到達したときのテニスボール72の移動方向から、テニスボール72が操作キャラクタ70側からゲーム背景画像63に到達したか否かを判断する(S55)。
【0088】
そして、テニスボール72が操作キャラクタ70側からゲーム背景画像63に到達したときは(S55:YES)、CPU11は、S38の処理同様に、ゲーム背景画像63の透過度を上げる処理を実行する(S56)。S56の処理が終われば、本処理は終了される。
【0089】
一方で、テニスボール72が操作キャラクタ70側からゲーム背景画像63に到達していないとき(S55:NO)、換言すれば、テニスボール72が対戦キャラクタ73側からゲーム背景画像63に到達したときは、CPU11は、S39の処理同様に、ゲーム背景画像63の透明度を下げる処理を実行する(S57)。S57の処理が終われば、本処理は終了される。
【0090】
(アイテム・得点取得処理)
次に、
図6のフローチャートを参照して、上記テニスゲーム処理内で実行されるアイテム・得点取得処理(S19)について説明する。なお、アイテム・得点取得処理(S19)において、CPU11は効果処理部として機能する。
【0091】
まず、CPU11は、操作キャラクタ70又は対戦キャラクタ73が打ち返したテニスボール72が、ゲーム背景画像63に配置された面オブジェクトに当たったか否かを判断する(S70)。テニスボール72が、面オブジェクトに当たっていないと判断されれば(S70:NO)、CPU11は、本処理を終了させる。
【0092】
一方、テニスボール72が、面オブジェクトに当たったと判断されれば(S70:YES)、CPU11は、テニスボール72が当たった面オブジェクトが、特典オブジェクト68か否かを判断する(S71)。そして、特典オブジェクト68であれば(S71:YES)、CPU11は、当てた特典オブジェクト68に対応する効果を付与する(S72)。例えば、当てた特典オブジェクト68が、キノコ68Aである場合、
図10に示すように、テニスボール72が面オブジェクトに当ったと判定される影響範囲71A(コリジョン判定領域)が、広がってパワーアップした影響範囲71Bのようになる。これによれば、プレイヤとしては、1つの面オブジェクトにテニスボール72を当てるだけで、当てた面オブジェクトの周辺にある面オブジェクトも当てたこととなり、様々な特典の機会が増えることになる。
【0093】
一方、テニスボール72が当たった面オブジェクトが、特典オブジェクト68ではないときは(S71:NO)、CPU11は、テニスボール72が当たった面オブジェクトが、マップ切替オブジェクト69か否かを判断する(S73)。そして、マップ切替オブジェクト69であれば(S73:YES)、CPU11は、当てたマップ切替オブジェクト69(豆の木69A、土管69B)に対応するマップに切り替える、すなわち上述したマップの切り替えを行う(S74)。本実施形態では、マップに、
図11の中段に示すような地上・山・草むら・雲などを盛り込んだゲーム背景画像63に様々な面オブジェクトを配置した地上マップ63Aや、
図11の上段に示すような空の情景をイメージしたゲーム背景画像63に様々な面オブジェクトを配置した上空マップ63Bや、
図11の下段に示すような地下の情景をイメージした黒いゲーム背景画像63に様々な面オブジェクトを配置した地下マップ63Cなどを例示している。
【0094】
例えば、
図11の地上マップにおいて、テニスボール72が豆の木69Aに当たれば、マップは、地上マップから上空マップに切り替わる。また、
図11の地上マップにおいて、テニスボール72が土管69Bに当たれば、マップは、地上マップから地下マップに切り替わる。また、S74の処理終了後、本処理は終了される。
【0095】
一方、テニスボール72が当たった面オブジェクトが、マップ切替オブジェクト69ではないときは(S73:NO)、CPU11は、テニスボール72が当たった面オブジェクトが、得点オブジェクトか否かを判断する(S75)。そして、得点オブジェクトであれば(S75:YES)、CPU11は、当てた得点オブジェクトに対応する得点を付与する(S76)。例えば、当てた得点オブジェクトがコイン65である場合、メインメモリ12にあるコインカウンタに獲得コイン数として加算され、ディスプレイ装置18に獲得コイン数90として表示される(
図7参照)。
【0096】
一方、テニスボール72が当たった面オブジェクトが、得点オブジェクトではないときは(S75:NO)、CPU11は、本処理を終了させる。
【0097】
上記の構成によれば、プレイヤの操作に応じてテニスボール72を打つ動作を含むテニスゲームを行う仮想空間60内のテニスコート61の中央に、面オブジェクトを配置したゲーム背景画像63を設定し、ゲーム背景画像63に配置した面オブジェクトを動かすことが可能となる。そして、プレイヤの操作に応じて打ったテニスボール72がゲーム背景画像63に到達した際の位置に配置された面オブジェクトに応じて、例えば上記特典オブジェクト68やマップ切替オブジェクト69や得点オブジェクトに対応した効果をプレイヤに与えることができる。これによれば、当該テニスゲームのプレイヤは、仮想空間60内でテニスゲームをしながら、同時に、ゲーム背景画像63内に配置された動く面オブジェクトが付与する所定の効果を狙った別のゲーム要素を楽しむことができる。
【0098】
また、上記構成によれば、仮想空間60内のテニスコート61内で対戦を行う際に、プレイヤと対戦相手との間に、動く面オブジェクトが配置され、かつテニスボール72が通過可能なゲーム背景画像63を配置することができる。これによれば、プレイヤとその対戦相手は、当該テニスゲームで対戦しながら、同時に、動く面オブジェクトが配置されたゲーム背景画像63を通して互いに球の打ち合いが可能な対戦ゲームを楽しむことができる。
【0099】
また、上記構成によれば、テニスボール72が対戦キャラクタ73側のテニスコート61にある場合、テニスボール72が操作キャラクタ70側のテニスコート61にある場合に比べて、ゲーム背景画像63の透明度を上げることができる。これによれば、テニスゲームのプレイヤは、テニスボール72が対戦キャラクタ73側のテニスコート61にある場合に、透明度が上がったゲーム背景画像63を通して対戦キャラクタ73の動きやテニスボール72の位置を把握することができるので、次の操作をスムーズに行うことができる。
【0100】
また、上記構成によれば、テニスゲームとして楽しむことができる。具体的には、球はテニスボール72になり、プレイヤの操作に応じてテニスボール72を打つ道具はラケット71になり、コートはテニスコート61になり、ゲーム背景画像63はネット付近に配置される。
【0101】
また、上記構成によれば、テニスボール72がゲーム背景画像63に到達した位置に配置された面オブジェクトが、特典オブジェクト68(キノコ68A、キノコ68B)、マップ切替オブジェクト69(豆の木69A、土管69B)、得点オブジェクト(コイン65など)などのアイテムオブジェクトに対応していた場合、プレイヤは、アイテムオブジェクトに対応した効果を取得したり、得点を得たりすることができる。これにより、例えば、プレイヤが取得したアイテムオブジェクトや得点の獲得数によって、プレイヤに様々な特典を与えて、様々なゲーム展開を提供することができる。
【0102】
また、上記構成によれば、テニスボール72がゲーム背景画像63に到達した位置に配置された面オブジェクトが、マップ切替オブジェクト69(豆の木69A、土管69B)であったとき、別のマップに切り替えることができる。これにより、プレイヤは様々なマップにおいて、テニスゲームを楽しむことができる。
【0103】
また、上記構成によれば、ゲーム背景画像63内に配置された面オブジェクトを、時間の経過とともにスクロールすることができる。これにより、プレイヤは、スクロールによって次々に供給される面オブジェクトを狙ってテニスボール72を打つことができる。即ち、プレイヤに対して、常に新しい面オブジェクトを提供することができる。
【0104】
(変形例:壁当テニスゲーム)
次に、本実施形態の変形例を説明する。本実施形態では、操作キャラクタ70が対戦キャラクタ73と対戦を行っていた。これに対して、変形例では、面オブジェクトが配置されたゲーム背景画像63を壁に見立て、操作キャラクタ70が単独で壁当テニスゲームを行う。この壁当テニスゲーム処理を、
図12〜
図14を参照して説明する。なお、上述したテニスゲーム処理における説明と重複する部分については説明を省略又は簡略にする。
【0105】
(壁当テニスゲーム処理)
壁当テニスゲーム処理は、
図12に示すように、上述したテニスゲーム処理と同様の手順を踏むが、S10〜S12の代わりに、ゲーム装置10のプレイヤが、壁当テニスゲームモードを選択することにより始まる。具体的には、壁当テニスゲーム処理が開始されると、壁当テニスゲームプログラムによって以下のステップをCPU11に実行させる。まず、ゲーム装置10のプレイヤが、操作部20の入力操作により、壁当テニスゲームモードを選択したか否かが判断される(S80)。そして、壁当テニスゲームモードが選択されなければ(S80:NO)、本処理は終了される。
【0106】
一方、壁当テニスゲームモードが選択されたときは(S80:YES)、CPU11は、
図14に示すように、仮想空間160内に、壁当テニスコート161を配置する(S81)。
【0107】
次に、CPU11は、壁当テニスコート161に壁オブジェクト59を配置するとともに、この壁オブジェクト59の面にゲーム背景画像63(面に相当)を設置する(S82)。
【0108】
次に、CPU11は、ゲーム背景画像163内に、様々な種類の面オブジェクト(ブロック64、コイン65、アイテムボックス66、モンスター67など)を配置する(S83)。
【0109】
次に、CPU11は、壁当テニスコート161に、プレイヤが操作する操作キャラクタ70、テニスボール72、ラケット71などを配置する(S84)。
【0110】
S84の処理後、S85〜S89処理ループが実行される。このS85〜S89処理ループが実行されることによって、プレイヤの操作に応じて操作キャラクタ70が移動したり、テニスボール72を打ったりしてテニスゲームが進行する。
【0111】
上記S85〜S89処理ループでは、まず、CPU11は、上述したスクロール処理を実行する(S85)。次に、CPU11は、
図13のフローチャートに示す、壁当テニスゲームモードにおけるキャラクタ・ボール制御処理を実行する(S86)。具体的には、まず、CPU11は、操作部20からの操作入力を検出する(S100)。次に、上述したS31の処理同様に、CPU11は、S100の操作入力に基づいて、操作キャラクタ70の動作制御を行う(S101)。また、CPU11は、上述したS35の処理同様に、テニスボール72の位置を制御する(S102)。
【0112】
次に、CPU11は、操作キャラクタ70が打ち返したテニスボール72が、壁当テニスコート161に配置されたゲーム背景画像163に到達したか否かを判断する(S103)。
【0113】
テニスボール72がゲーム背景画像163に到達していないときは(S103:NO)、CPU11は本処理を終了させる。一方、テニスボール72がゲーム背景画像163に到達したときは(S103:YES)、CPU11は、ボール跳ね返し処理を実行する(S104)。このボール跳ね返し処理では、ゲーム背景画像163をテニスボール72が跳ね返る面とし、テニスボール72がゲーム背景画像163に到達したときのテニスボール72の移動方向・速度に基づいて、テニスボール72を跳ね返す動作処理が実行される(
図14参照)。S104の処理が終われば、本処理は終了される。なお、CPU11によるS104の処理は、跳ね返し処理部に相当する。
【0114】
壁当テニスゲームモードにおけるキャラクタ・ボール制御処理後、前述したS19の処理と同様にアイテム・得点取得処理を実行する(S87)。
【0115】
次に、S85〜S87の処理結果に従ってゲーム画像が生成され、ディスプレイ装置18に表示される(S88)。
【0116】
次に、ゲームが終了したか否かを判断する(S89)。ゲームが終了していないときは(S89:NO)、S85の処理に戻って、再びS85〜S89処理ループが実行される。
【0117】
一方、ゲームが終了したときは(S89:YES)、CPU11は、本壁当テニスゲーム処理を終了させる。
【0118】
上記構成によれば、仮想空間160内でのテニスゲームを行う際に、テニスボール72が、面オブジェクトが配置されたゲーム背景画像163に到達したとき、当該テニスボール72を跳ね返すことができる。これによれば、プレイヤの操作に応じて打ったテニスボール72が面に到達したとき、跳ね返ってくるので、プレイヤは、繰り返しテニスボール72を打ち返すことで壁当テニスゲームを楽しむことができる。
【0119】
(その他の実施形態)
本実施形態では、球技ゲームとしてテニスゲームを例に挙げて説明したが、球技ゲームとしては、スカッシュ、バレーボール、ビーチバレー、テーブルテニスなどであってもよい。また、本実施形態では、ゲーム装置10を携帯型のものとしているが、テレビモニターに接続して使用する据置型のゲーム装置であってもよい。
【0120】
本実施形態では、壁オブジェクト59の面において、面オブジェクトがスクロールしているが、面オブジェクトを動かす態様であれば、スクロールに限定されない。例えば、スクロール以外の方法で面オブジェクトの位置を変更してもよい。また、位置の変更をともなわず、面オブジェクトを同じ位置で姿勢を変更(動作)させてもよい。
【0121】
本実施形態では、面オブジェクトを壁オブジェクト59に配置しているが(2次元仮想空間を3次元仮想空間内に設定している)、この構成に限定されず、3次元仮想空間における所定の領域に、別の3次元仮想空間を設定する構成であってもよい。
【0122】
また、上記実施形態は、仮想空間60(第1の仮想空間)内でテニスゲーム(ゲーム)を行うゲームシステムと言い換えてもよく、このゲームシステムでは、プレイヤの操作に応じてテニスボール72(操作対象物)を仮想空間60内でコントロールし(対象物処理部)、仮想空間60内におけるテニスコート61中央(所定の位置)に壁オブジェクト59(スクリーン領域)を設定し、(スクリーン設定部)、仮想空間60とは異なるゲーム背景画像63(第2の仮想空間)を設定し(第2仮想空間設定部)、ゲーム背景画像63の一部領域を、移動可能にしつつ壁オブジェクト59に表示し(第2仮想空間描画部)、仮想空間60内で移動するテニスボール72が壁オブジェクト59に到達した際のテニスボール72の位置に対応するゲーム背景画像63の位置に関連して、テニスゲームにおける所定の効果を与える(効果処理部)と再定義してもよい。
【0123】
以上の詳細な説明では、本発明をより容易に理解できるように、特徴的部分を中心に説明したが、本発明は、以上の詳細な説明に記載する実施形態に限定されず、その他の実施形態にも適用することができ、その適用範囲は可能な限り広く解釈されるべきである。また、本明細書において用いた用語及び語法は、本発明を的確に説明するために用いたものであり、本発明の解釈を制限するために用いたものではない。また、当業者であれば、本明細書に記載された発明の概念から、本発明の概念に含まれる他の構成、装置、システム、方法、プログラム等を推考することは容易であると思われる。従って、請求の範囲の記載は、本発明の技術的思想を逸脱しない範囲で均等な構成を含むものであるとみなされるべきである。また、本発明の目的及び本発明の効果を充分に理解するために、すでに開示されている文献等を充分に参酌することが望まれる。