従来のゲームでは、1つのプレイを切り換えるときや、プレイが切り替わることによりキャラクタが変わるときなどに、対象キャラクタを拡大する場合がある。
たとえば、先発の投手キャラクタやリリーフの投手キャラクタがマウンドに上がったとき等に、投手キャラクタ(対象キャラクタ)を拡大することにより、投手キャラクタの登場や交代を演出していた。具体的には、3次元ゲーム空間に配置された、立体的なスタジアム用のモデルや立体的な選手キャラクタ用のモデルを、対象キャラクタの方向に移動する仮想カメラにより撮影することにより、投手キャラクタの登場や交代の演出が実現されていた。
しかしながら、従来の対象キャラクタの拡大は、例えば現実世界の撮影データを基礎とする画像をゲーム空間上に再現した上で、そのまま大きくするだけであり、例えばプロモーションビデオやCM画像、さらにゲームの本編前後に流されるデモ画像等に要求されるような、視聴者の注目を強く引くような演出を行う拡大手法は確立されていなかった。
また、立体的なモデルを用いて投手キャラクタの登場や交代を演出すると、リアリティのある迫力ある映像をモニタに表示することはできるものの、立体的なモデルを格納するためのメモリ容量や、立体的なモデルを3次元ゲーム空間に配置し、これらモデルを仮想カメラにより撮影する処理を実行するためのメモリ容量等が必要になり、演出のためだけに、比較的大きなメモリを消費してしまうという問題点があった。
本発明は、このような問題に鑑みてなされたものであり、本発明の目的は、プレイヤの注目を強く引くような対象に対するズーム演出を、低いメモリ消費量で行うことができるようにすることにある。
請求項1に係る画像処理プログラムは、画像を画像表示部に表示するためのデータを処理するためのものである。この画像処理プログラムでは、以下の機能が実現される。
(1)テクスチャ用の画像データを、記憶部に格納するテクスチャ格納機能。
(2)複数のポリゴンから構成される面状のモデルを、記憶部に格納するモデル格納機能。
(3)画像データをテクスチャとして面状のモデルに投影する処理を、制御部に実行させることにより、面状のオブジェクトを生成するオブジェクト生成機能。
(4)面状のオブジェクトの配置位置を規定するための座標データを、制御部に認識させることにより、面状のオブジェクトを仮想空間に配置するオブジェクト配置機能。
(5)仮想カメラの配置位置を規定するための座標データを、制御部に認識させることにより、仮想カメラを仮想空間に配置するカメラ配置機能。
(6)面状のオブジェクトの形状を面外に段階的に変形する処理を、制御部に実行させる形状変更機能。
(7)面状のオブジェクトの形状の変化に応じて仮想カメラの画角を段階的に変更する処理を、制御部に実行させる画角変更機能。
(8)面状のオブジェクトの形状が段階的に変化する状態を、画角が段階的に変化する仮想カメラにより撮影する処理を、制御部に実行させることにより、ズーム画像を画像表示部に表示する画像表示機能。
この画像処理プログラムでは、テクスチャ格納機能において、テクスチャ用の画像データが、記憶部に格納される。モデル格納機能においては、複数のポリゴンから構成される面状のモデルが、記憶部に格納される。オブジェクト生成機能においては、画像データをテクスチャとして面状のモデルに投影する処理が、制御部により実行される。これにより、面状のオブジェクトが生成される。オブジェクト配置機能においては、面状のオブジェクトの配置位置を規定するための座標データが、制御部に認識される。これにより、面状のオブジェクトが仮想空間に配置される。カメラ配置機能においては、仮想カメラの配置位置を規定するための座標データが、制御部に認識される。これにより、仮想カメラが仮想空間に配置される。形状変更機能においては、面状のオブジェクトの形状を面外に段階的に変形する処理が、制御部により実行される。画角変更機能においては、面状のオブジェクトの形状の変化に応じて仮想カメラの画角を段階的に変更する処理が、制御部により実行される。画像表示機能においては、面状のオブジェクトの形状が段階的に変化する状態を、画角が段階的に変化する仮想カメラにより撮影する処理が、制御部により実行される。これにより、ズーム画像が画像表示部に表示される。
ここでは、たとえば、この画像処理プログラムが野球ゲームに適用され、球場の内部たとえば捕手側から見たスタジアムの内部空間がズームされる場合を例として説明する。
まず、捕手側から見た画像を示す画像データ(テクスチャ用の画像データ)が、記憶部に格納される。そして、複数のポリゴンから構成される面状のモデルが、記憶部に格納される。そして、記憶部に格納された画像データをテクスチャとして面状のモデルに投影する処理が、制御部により実行される。これにより、捕手側から見たスタジアムの内部空間の画像をテクスチャとして面状のモデルに投影したオブジェクト、すなわち面状のオブジェクトが生成される。
次に、面状のオブジェクトの配置位置を規定するための座標データが、制御部に認識されると、面状のオブジェクトが仮想空間に配置される。そして、仮想カメラの配置位置を規定するための座標データが、制御部に認識されると、仮想カメラが仮想空間に配置される。
続いて、面状のオブジェクトの形状を面外に段階的に変形する処理が、制御部により実行される。また、面状のオブジェクトの形状の変化に応じて仮想カメラの画角を段階的に変更する処理が、制御部により実行される。そして、面状のオブジェクトの形状が段階的に変化する状態を、画角が段階的に変化する仮想カメラにより撮影する処理が、制御部により実行される。これにより、捕手側から見たスタジアムの内部空間が加速度的にズームされる画像が、画像表示部に表示される。
このように、請求項1に係る発明では、捕手側から見た画像データ(テクスチャ用の画像データ)と、複数のポリゴンから構成される面状のモデルとを、記憶部に格納しておくだけで、ズーム画像を画像表示部に表示することができる。つまり、基本的なデータとしては一枚の静止画データのみを使用しているので、本発明では、従来のように立体モデル用の画像データ(立体モデル用のテクスチャデータ、テクスチャ用の画像データ)と、立体的なモデルとを記憶部に格納する場合と比較して、メモリ消費量を低減することができる。
また、本発明では、面状のオブジェクトが面外に段階的に変形するときに、オブジェクトの面外変形に連動して仮想カメラの画角も段階的に変更される。このときに、変形中の面状のオブジェクトを、画角が変化する仮想カメラにより撮影することにより、立体的なオブジェクトを用いなくても、立体的な視覚効果を有するズーム画像を、画像表示部に表示することができる。
さらに、このように撮影することにより、立体的なオブジェクトを用いなくても、立体的なオブジェクトを用いた場合より迫力のあるズーム画像を、画像表示部に表示することができる。
より具体的には、プレイヤ側から見たイメージとしては、画面略中央部に向かってカメラが単純に接近(ズーム)するのではなく、加速度的に急接近していくかのような表示となる。即ち、画像の略中央部に比して、画像周辺部の外方に向かうほどより拡大変形が大きく、且つ、時間経過に伴う当該画像周辺部の拡大変形によって、画像周辺部の最外部が内部の動きに比べて急速にモニタ画面の画面枠を越えて順次消えていくので、あたかも画像中央部に向かって視点が加速的に急接近し、焦点が絞られるかのような演出効果が得られるのである。なお、請求項1の構成によって得られる視覚的効果は1枚の静止画を凹凸に変形する時間の間に限定されるものであって、当然ながら長時間にわたる動画のようなイメージが得られるものではない。出願人が作成した表示の場合、概ね1秒程度である。しかし、このような短時間であっても、演出が単なる従来のズームとは異なり、画像周辺部が急速にモニタ画面枠を越えて外に吹き飛ばされ、中央部に焦点が絞られるかのような表示となるので、例えば、交替する選手キャラクタの顔に急速にズームインするイメージや、ファインプレーを行った選手キャラクタに急速にズームインするイメージを作る場合に有効であり、特にプロモーションビデオやCM、さらに、ゲームの本編前後に流すデモムービーの作成等に利用して有用である。これらの画像では、現実の動きを忠実に再現する表示よりも、メリハリの利いた、プレイヤの注目を引く演出が望まれるからである。なお、ズームインだけでなく、例えば画面の向こうのボールがこちらに向かって飛んでくるかのようなズームアウトも同様に容易に演出できる。
このように、本発明では、アニメーション等の仮想画像に基づくものではなく現実世界のデータを仮想空間上に再現するものでありながら、立体的な視覚効果および迫力を有するズーム画像を、低いメモリ消費量で画像表示部に表示することができる。
このように、本発明では、低いメモリ消費量で、立体的な視覚効果および迫力を有するズーム画像を、画像表示部に表示することができる。
請求項2に係る画像処理プログラムでは、請求項1に記載の画像処理プログラムにおいて、形状変更機能が、第1形状変更機能を含んでいる。この第1形状変更機能では、面状のオブジェクトの形状を、仮想カメラから離反する方向に凸状に歪んだ形状に段階的に変形する処理が、制御部により実行される。また、画角変更機能は、画角縮小機能を含んでいる。画角縮小機能は、面状のオブジェクトの形状の変化に応じて仮想カメラの画角が小さくなるように仮想カメラの画角を段階的に変更する処理が、制御部により実行される。ここでは、画像表示機能において、面状のオブジェクトの形状が段階的に変化する状態を、画角が段階的に変化する仮想カメラにより撮影する処理が、制御部により実行される。これにより、ズームイン画像が画像表示部に表示される。
ここでは、たとえば、この画像処理プログラムが野球ゲームに適用され、球場の内部たとえば捕手側から見たスタジアムの内部空間がズームされる場合を例として説明する。
この場合、面状のオブジェクトの形状が、仮想カメラから離反する方向に凸状に歪んだ形状に段階的に変形される。また、面状のオブジェクトの形状の変化に応じて仮想カメラの画角が小さくなるように、仮想カメラの画角が段階的に変更される。これにより、面状のオブジェクトの形状が段階的に変化する状態を、画角が段階的に変化する仮想カメラにより撮影すると、捕手側から見たスタジアムの内部空間がズームインされる画像が、画像表示部に表示される。
このように、請求項2に係る発明では、仮想カメラから離反する方向に凸状に変形する面状のオブジェクトを、画角が変化する仮想カメラにより撮影することにより、立体的なオブジェクトを用いなくても、立体的な視覚効果を有するズームイン画像を、画像表示部に表示することができる。さらに、このように撮影することにより、立体的なオブジェクトを用いなくても、立体的なオブジェクトを用いた場合より迫力のあるズームイン画像を、画像表示部に表示することができる。
特に、本発明では、面状のオブジェクトが、仮想カメラから離反する方向に凸状に変形するにつれて、仮想カメラの画角が小さくなるようにすることにより、空間が迫ってくる感覚を表現したズームイン画像を、画像表示部に表示することができる。
請求項3に係る画像処理プログラムでは、請求項2に記載の画像処理プログラムにおいて、平面形状、および仮想カメラに近接する方向に凸状に歪んだ形状のいずれか一方の形状から、仮想カメラから離反する方向に凸状に歪んだ形状へと、面状のオブジェクトの形状を段階的に変形する処理が、制御部により実行される。この機能は、第1形状変更機能において実現される。
ここでは、たとえば、この画像処理プログラムが野球ゲームに適用され、球場の内部たとえば捕手側から見たスタジアムの内部空間がズームされる場合を例として説明する。
この場合、平面形状、および仮想カメラに近接する方向に凸状に歪んだ形状のいずれか一方の形状から、仮想カメラから離反する方向に凸状に歪んだ形状へと、面状のオブジェクトの形状が、段階的に変形される。
このように、請求項3に係る発明では、平面形状、および仮想カメラに近接する方向に凸状に歪んだ形状のいずれか一方の形状から、仮想カメラから離反する方向に凸状に歪んだ形状へと、面状のオブジェクトの形状を段階的に変形することにより、立体的な視覚効果を有するズームイン画像を、効果的に画像表示部に表示することができる。
請求項4に係る画像処理プログラムでは、請求項1から3のいずれかに記載の画像処理プログラムにおいて、形状変更機能が、第2形状変更機能を含んでいる。第2形状変更機能では、面状のオブジェクトの形状を、仮想カメラに近接する方向に凸状に歪んだ形状に段階的に変形する処理が、制御部により実行される。また、画角変更機能は、画角拡大機能を含んでいる。画角拡大機能では、面状のオブジェクトの形状の変化に応じて仮想カメラの画角が大きくなるように仮想カメラの画角を段階的に変更する処理が、制御部により実行される。ここでは、画像表示機能において、面状のオブジェクトの形状が段階的に変化する状態を、画角が段階的に変化する仮想カメラにより撮影する処理が、制御部により実行される。これにより、ズームアウト画像が画像表示部に表示される。
ここでは、たとえば、この画像処理プログラムが野球ゲームに適用され、球場の内部たとえば捕手側から見たスタジアムの内部空間がズームされる場合を例として説明する。
この場合、面状のオブジェクトの形状が、仮想カメラに近接する方向に凸状に歪んだ形状に段階的に変形される。また、面状のオブジェクトの形状の変化に応じて仮想カメラの画角が大きくなるように、仮想カメラの画角が段階的に変更される。これにより、面状のオブジェクトの形状が段階的に変化する状態を、画角が段階的に変化する仮想カメラにより撮影すると、捕手側から見たスタジアムの内部空間がズームアウトされる画像が、画像表示部に表示される。
このように、請求項4に係る発明では、仮想カメラに近接する方向に凸状に変形する面状のオブジェクトを、画角が変化する仮想カメラにより撮影することにより、立体的なオブジェクトを用いなくても、立体的な視覚効果を有するズームアウト画像を、画像表示部に表示することができる。さらに、このように撮影することにより、立体的なオブジェクトを用いなくても、立体的なオブジェクトを用いた場合より迫力のあるズームアウト画像を、画像表示部に表示することができる。
特に、本発明では、面状のオブジェクトが、仮想カメラに近接する方向に凸状に変形するにつれて、仮想カメラの画角が小さくなるようにすることにより、対象が迫ってくる感覚を表現したズームアウト画像を、画像表示部に表示することができる。
請求項5に係る画像処理プログラムでは、請求項4に記載の画像処理プログラムにおいて、平面形状、および仮想カメラから離反する方向に凸状に歪んだ形状のいずれか一方の形状から、仮想カメラに近接する方向に凸状に歪んだ形状へと、面状のオブジェクトの形状を段階的に変形する処理が、制御部により実行される。この機能は、第2形状変更機能において実現される。
ここでは、たとえば、この画像処理プログラムが野球ゲームに適用され、球場の内部たとえば捕手側から見たスタジアムの内部空間がズームされる場合を例として説明する。
この場合、平面形状、および仮想カメラから離反する方向に凸状に歪んだ形状のいずれか一方の形状から、仮想カメラに近接する方向に凸状に歪んだ形状へと、面状のオブジェクトの形状が、段階的に変形される。
このように、請求項5に係る発明では、平面形状、および仮想カメラから離反する方向に凸状に歪んだ形状のいずれか一方の形状から、仮想カメラに近接する方向に凸状に歪んだ形状へと、面状のオブジェクトの形状を段階的に変形することにより、立体的な視覚効果を有するズームアウト画像を、効果的に画像表示部に表示することができる。
請求項6に係る画像処理プログラムでは、請求項1から5のいずれかに記載の画像処理プログラムにおいて、面状のオブジェクトの重心位置を基準として、面状のオブジェクトの形状を面外に段階的に変形する処理が、制御部により実行される。この機能は、形状変更機能において実現される。
ここでは、たとえば、この画像処理プログラムが野球ゲームに適用され、球場の内部たとえば捕手側から見たスタジアムの内部空間がズームされる場合を例として説明する。
この場合、面状のオブジェクトの重心位置を基準として、面状のオブジェクトの形状が、面外に段階的に変形される。これにより、ズームの主対象が面状のオブジェクトの中央部に配置されている場合、対象を覆う空間が迫ってくる感覚を表現したズーム画像、および対象が迫ってくる感覚を表現したズーム画像の少なくともいずれか一方の画像を、画像表示部に表示することができる。
請求項7に係る画像処理プログラムでは、請求項1から6のいずれかに記載の画像処理プログラムにおいて、面状のオブジェクトの重心位置を基準として、面状のオブジェクトに垂直な方向の所定の位置を示す座標データが、制御部に認識される。これにより、仮想カメラが仮想空間に配置される。この機能は、カメラ配置機能において実現される。
ここでは、たとえば、この画像処理プログラムが野球ゲームに適用され、球場の内部たとえば捕手側から見たスタジアムの内部空間がズームされる場合を例として説明する。
この場合、面状のオブジェクトの重心位置を基準として、面状のオブジェクトに垂直な方向の所定の位置に、仮想カメラが配置される。これにより、ズームの主対象が面状のオブジェクトの中央部に配置されている場合、対象を覆う空間が迫ってくる感覚を表現したズーム画像や、対象が迫ってくる感覚を表現したズーム画像を、より効果的に画像表示部に表示することができる。
請求項8に係る画像処理プログラムでは、請求項1から7のいずれかに記載の画像処理プログラムにおいて、広角の画像データが、テクスチャ用の画像データとして、記憶部に格納される。この機能は、テクスチャ格納機能において実現される。
ここでは、たとえば、この画像処理プログラムが野球ゲームに適用され、球場の内部たとえば捕手側から見たスタジアムの内部空間がズームされる場合を例として説明する。
この場合、広角の画像データが、テクスチャ用の画像データとして、記憶部に格納される。たとえば、広角レンズや魚眼レンズで撮影された画像データが、テクスチャ用の画像データとして、記憶部に格納される。これにより、視野の広い画像データを、初期のテクスチャ用の画像データとして用いることができるので、変形中の面状のオブジェクトを、画角が変化する仮想カメラにより撮影することにより、立体的な視覚効果を有するズーム画像を、より効果的に画像表示部に表示することができる。また、これにより、立体的なオブジェクトを用いた場合より、より迫力のあるズーム画像を、画像表示部に表示することができる。
請求項9に係る画像処理装置は、画像を画像表示部に表示するためのデータを処理可能な画像処理装置である。
この画像処理装置は、
テクスチャ用の画像データを、記憶部に格納するテクスチャ格納手段と、
複数のポリゴンから構成される面状のモデルを、記憶部に格納するモデル格納手段と、
画像データをテクスチャとして面状のモデルに投影する処理を、制御部に実行させることにより、面状のオブジェクトを生成するオブジェクト生成手段と、
面状のオブジェクトの配置位置を規定するための座標データを、制御部に認識させることにより、面状のオブジェクトを仮想空間に配置するオブジェクト配置手段と、
仮想カメラの配置位置を規定するための座標データを、制御部に認識させることにより、仮想カメラを仮想空間に配置するカメラ配置手段と、
面状のオブジェクトの形状を面外に段階的に変形する処理を、制御部に実行させる形状変更手段と、
面状のオブジェクトの形状の変化に応じて仮想カメラの画角を段階的に変更する処理を、制御部に実行させる画角変更手段と、
面状のオブジェクトの形状が段階的に変化する状態を、画角が段階的に変化する仮想カメラにより撮影する処理を、制御部に実行させることにより、ズーム画像を画像表示部に表示する画像表示手段と、
を備えている。
請求項10に係る画像制御方法は、画像を画像表示部に表示するためのデータをコンピュータにより制御する画像制御方法である。
この画像制御方法は、
テクスチャ用の画像データを、記憶部に格納するテクスチャ格納ステップと、
複数のポリゴンから構成される面状のモデルを、記憶部に格納するモデル格納ステップと、
画像データをテクスチャとして面状のモデルに投影する処理を、制御部に実行させることにより、面状のオブジェクトを生成するオブジェクト生成ステップと、
面状のオブジェクトの配置位置を規定するための座標データを、制御部に認識させることにより、面状のオブジェクトを仮想空間に配置するオブジェクト配置ステップと、
仮想カメラの配置位置を規定するための座標データを、制御部に認識させることにより、仮想カメラを仮想空間に配置するカメラ配置ステップと、
面状のオブジェクトの形状を面外に段階的に変形する処理を、制御部に実行させる形状変更ステップと、
面状のオブジェクトの形状の変化に応じて仮想カメラの画角を段階的に変更する処理を、制御部に実行させる画角変更ステップと、
面状のオブジェクトの形状が段階的に変化する状態を、画角が段階的に変化する仮想カメラにより撮影する処理を、制御部に実行させることにより、ズーム画像を画像表示部に表示する画像表示ステップと、
を備えている。
本発明では、テクスチャ用の画像データと、複数のポリゴンから構成される面状のモデルとを、記憶部に格納しておくだけで、ズーム画像を画像表示部に表示することができる。このため、本発明では、立体モデル用の画像データと、立体的なモデルとを記憶部に格納する場合と比較して、メモリ消費量を低減することができる。
また、本発明では、面状のオブジェクトが面外に段階的に変形するときに、オブジェクトの面外変形に連動して仮想カメラの画角も段階的に変更される。このときに、変形中の面状のオブジェクトを、画角が変化する仮想カメラにより撮影することにより、立体的なオブジェクトを用いなくても、立体的な視覚効果を有するズーム画像を、画像表示部に表示することができる。さらに、このように撮影することにより、立体的なオブジェクトを用いなくても、立体的なオブジェクトを用いた場合より迫力のあるズーム画像を、画像表示部に表示することができる。
このように、本発明では、低いメモリ消費量で、立体的な視覚効果および迫力を有するズーム画像を、画像表示部に表示することができる。
〔ゲーム装置の構成と動作〕
図1は、本発明の一実施形態によるゲーム装置の基本構成を示している。ここでは、ビデオゲーム装置の一例として、家庭用ビデオゲーム装置をとりあげて説明を行うこととする。家庭用ビデオゲーム装置は、家庭用ゲーム機本体および家庭用テレビジョンを備える。家庭用ゲーム機本体には、記録媒体10が装填可能となっており、記録媒体10からゲームデータが適宜読み出されてゲームが実行される。このようにして実行されるゲーム内容が家庭用テレビジョンに表示される。
家庭用ビデオゲーム装置のゲームシステムは、制御部1と、記憶部2と、画像表示部3と、音声出力部4と、操作入力部5とからなっており、それぞれがバス6を介して接続される。このバス6は、アドレスバス、データバス、およびコントロールバスなどを含んでいる。ここで、制御部1、記憶部2、音声出力部4および操作入力部5は、家庭用ビデオゲーム装置の家庭用ゲーム機本体に含まれており、画像表示部3は家庭用テレビジョンに含まれている。
制御部1は、主に、ゲームプログラムに基づいてゲーム全体の進行を制御するために設けられている。制御部1は、たとえば、CPU(Central Processing Unit)7と、信号処理プロセッサ8と、画像処理プロセッサ9とから構成されている。CPU7と信号処理プロセッサ8と画像処理プロセッサ9とは、それぞれがバス6を介して互いに接続されている。CPU7は、ゲームプログラムからの命令を解釈し、各種のデータ処理や制御を行う。たとえば、CPU7は、信号処理プロセッサ8に対して、画像データを画像処理プロセッサに供給するように命令する。信号処理プロセッサ8は、主に、3次元空間上における計算と、3次元空間上から擬似3次元空間上への位置変換計算と、光源計算処理と、画像および音声データの生成加工処理とを行っている。画像処理プロセッサ9は、主に、信号処理プロセッサ8の計算結果および処理結果に基づいて、描画すべき画像データをRAM12に書き込む処理を行っている。
記憶部2は、主に、プログラムデータや、プログラムデータで使用される各種データなどを格納しておくために設けられている。記憶部2は、たとえば、記録媒体10と、インターフェース回路11と、RAM(Random Access Memory)12とから構成されている。記録媒体10には、インターフェース回路11が接続されている。そして、インターフェース回路11とRAM12とはバス6を介して接続されている。記録媒体10は、オペレーションシステムのプログラムデータや、画像データ、音声データ並びに各種プログラムデータからなるゲームデータなどを記録するためのものである。この記録媒体10は、たとえば、ROM(Read Only Memory)カセット、光ディスク、およびフレキシブルディスクなどであり、オペレーティングシステムのプログラムデータやゲームデータなどが記憶される。なお、記録媒体10にはカード型メモリも含まれており、このカード型メモリは、主に、ゲームを中断するときに中断時点での各種ゲームパラメータを保存するために用いられる。RAM12は、記録媒体10から読み出された各種データを一時的に格納したり、制御部1からの処理結果を一時的に記録したりするために用いられる。このRAM12には、各種データとともに、各種データの記憶位置を示すアドレスデータが格納されており、任意のアドレスを指定して読み書きすることが可能になっている。
画像表示部3は、主に、画像処理プロセッサ9によってRAM12に書き込まれた画像データや、記録媒体10から読み出される画像データなどを画像として出力するために設けられている。この画像表示部3は、たとえば、テレビジョンモニタ20と、インターフェース回路21と、D/Aコンバータ(Digital-To-Analogコンバータ)22とから構成されている。テレビジョンモニタ20にはD/Aコンバータ22が接続されており、D/Aコンバータ22にはインターフェース回路21が接続されている。そして、インターフェース回路21にバス6が接続されている。ここでは、画像データが、インターフェース回路21を介してD/Aコンバータ22に供給され、ここでアナログ画像信号に変換される。そして、アナログ画像信号がテレビジョンモニタ20に画像として出力される。
ここで、画像データには、たとえば、ポリゴンデータやテクスチャデータなどがある。ポリゴンデータはポリゴンを構成する頂点の座標データのことである。テクスチャデータは、ポリゴンにテクスチャを設定するためのものであり、テクスチャ指示データとテクスチャカラーデータとからなっている。テクスチャ指示データはポリゴンとテクスチャとを対応づけるためのデータであり、テクスチャカラーデータはテクスチャの色を指定するためのデータである。ここで、ポリゴンデータとテクスチャデータとには、各データの記憶位置を示すポリゴンアドレスデータとテクスチャアドレスデータとが対応づけられている。このような画像データでは、信号処理プロセッサ8により、ポリゴンアドレスデータの示す3次元空間上のポリゴンデータ(3次元ポリゴンデータ)が、画面自体(視点)の移動量データおよび回転量データに基づいて座標変換および透視投影変換されて、2次元空間上のポリゴンデータ(2次元ポリゴンデータ)に置換される。そして、複数の2次元ポリゴンデータでポリゴン外形を構成して、ポリゴンの内部領域にテクスチャアドレスデータが示すテクスチャデータを書き込む。このようにして、各ポリゴンにテクスチャが貼り付けられた物体つまり各種キャラクタを表現することができる。
音声出力部4は、主に、記録媒体10から読み出される音声データを音声として出力するために設けられている。音声出力部4は、たとえば、スピーカー13と、増幅回路14と、D/Aコンバータ15と、インターフェース回路16とから構成されている。スピーカー13には増幅回路14が接続されており、増幅回路14にはD/Aコンバータ15が接続されており、D/Aコンバータ15にはインターフェース回路16が接続されている。そして、インターフェース回路16にバス6が接続されている。ここでは、音声データが、インターフェース回路16を介してD/Aコンバータ15に供給され、ここでアナログ音声信号に変換される。このアナログ音声信号が増幅回路14によって増幅され、スピーカー13から音声として出力される。音声データには、たとえば、ADPCM(Adaptive Differential Pulse Code Modulation)データやPCM(Pulse Code Modulation)データなどがある。ADPCMデータの場合、上述と同様の処理方法で音声をスピーカー13から出力することができる。PCMデータの場合、RAM12においてPCMデータをADPCMデータに変換しておくことで、上述と同様の処理方法で音声をスピーカー13から出力することができる。
操作入力部5は、主に、コントローラ17と、操作情報インターフェース回路18と、インターフェース回路19とから構成されている。コントローラ17には、操作情報インターフェース回路18が接続されており、操作情報インターフェース回路18にはインターフェース回路19が接続されている。そして、インターフェース回路19にバス6が接続されている。
コントローラ17は、プレイヤが種々の操作命令を入力するために使用する操作装置であり、プレイヤの操作に応じた操作信号をCPU7に送出する。コントローラ17には、第1ボタン17a、第2ボタン17b、第3ボタン17c、第4ボタン17d、上方向キー17U、下方向キー17D、左方向キー17L、右方向キー17R、L1ボタン17L1、L2ボタン17L2、R1ボタン17R1、R2ボタン17R2、スタートボタン17e、セレクトボタン17f、左スティック17SL及び右スティック17SRが設けられている。
上方向キー17U、下方向キー17D、左方向キー17L及び右方向キー17Rは、例えば、キャラクタやカーソルをテレビジョンモニタ20の画面上で上下左右に移動させるコマンドをCPU7に与えるために使用される。
スタートボタン17eは、記録媒体10からゲームプログラムをロードするようにCPU7に指示するときなどに使用される。
セレクトボタン17fは、記録媒体10からロードされたゲームプログラムに対して、各種選択をCPU7に指示するときなどに使用される。
左スティック17SL及び右スティック17SRは、いわゆるジョイスティックとほぼ同一構成のスティック型コントローラである。このスティック型コントローラは、直立したスティックを有している。このスティックは、支点を中心として直立位置から前後左右を含む360°方向に亘って、傾倒可能な構成になっている。左スティック17SL及び右スティック17SRは、スティックの傾倒方向及び傾倒角度に応じて、直立位置を原点とするx座標及びy座標の値を、操作信号として操作情報インターフェース回路18とインターフェース回路19とを介してCPU7に送出する。
第1ボタン17a、第2ボタン17b、第3ボタン17c、第4ボタン17d、L1ボタン17L1、L2ボタン17L2、R1ボタン17R1及びR2ボタン17R2には、記録媒体10からロードされるゲームプログラムに応じて種々の機能が割り振られている。
なお、左スティック17SL及び右スティック17SRを除くコントローラ17の各ボタン及び各キーは、外部からの押圧力によって中立位置から押圧されるとオンになり、押圧力が解除されると中立位置に復帰してオフになるオンオフスイッチになっている。
以上のような構成からなる家庭用ビデオゲーム装置の概略動作を、以下に説明する。電源スイッチ(図示省略)がオンにされゲームシステム1に電源が投入されると、CPU7が、記録媒体10に記憶されているオペレーティングシステムに基づいて、記録媒体10から画像データ、音声データ、およびプログラムデータを読み出す。読み出された画像データ、音声データ、およびプログラムデータの一部若しくは全部は、RAM12に格納される。そして、CPU7が、RAM12に格納されたプログラムデータに基づいて、RAM12に格納された画像データや音声データにコマンドを発行する。
画像データの場合、CPU7からのコマンドに基づいて、まず、信号処理プロセッサ8が、3次元空間上におけるキャラクタの位置計算および光源計算などを行う。次に、画像処理プロセッサ9が、信号処理プロセッサ8の計算結果に基づいて、描画すべき画像データのRAM12への書き込み処理などを行う。そして、RAM12に書き込まれた画像データが、インターフェース回路13を介してD/Aコンバータ17に供給される。ここで、画像データがD/Aコンバータ17でアナログ映像信号に変換される。そして、画像データはテレビジョンモニタ20に供給され画像として表示される。
音声データの場合、まず、信号処理プロセッサ8が、CPU7からのコマンドに基づいて音声データの生成および加工処理を行う。ここでは、音声データに対して、たとえば、ピッチの変換、ノイズの付加、エンベロープの設定、レベルの設定及びリバーブの付加などの処理が施される。次に、音声データは、信号処理プロセッサ8から出力されて、インターフェース回路16を介してD/Aコンバータ15に供給される。ここで、音声データがアナログ音声信号に変換される。そして、音声データは増幅回路14を介してスピーカー13から音声として出力される。
〔ゲーム装置における各種処理の説明〕
本ゲーム装置において実行されるゲームは、たとえば野球ゲームである。本ゲーム装置において実行される野球ゲームでは、各種の画像を様々な形態でテレビジョンモニタ20に表示可能になっている。たとえば、この野球ゲームでは、球場の内部たとえば捕手側から見たスタジアムの内部空間を、様々な形態でテレビジョンモニタ20に表示可能になっている。図2は、本発明で主要な役割を果たす機能を説明するための機能ブロック図である。
テクスチャ格納手段50は、テクスチャ用の画像データを、RAM12に格納する機能を備えている。この手段では、テクスチャ用の画像データが、RAM12に格納される。詳細には、この手段では、広角の画像データが、テクスチャ用の画像データとして、RAM12に格納される。
たとえば、この手段では、捕手側から見たスタジアムの内部空間を、広角レンズで撮影した画像に対応する画像データが、捕手側から見たスタジアムの内部空間のテクスチャ用の画像データとして、RAM12に格納される。このテクスチャ用の画像データは、野球ゲームプログラムが、記録媒体10からRAM12にロードされるときに、野球ゲームプログラムとともに記録媒体10からRAM12にロードされ格納される。
モデル格納手段51は、複数のポリゴンから構成される面状のモデルを、RAM12に格納する機能を備えている。この手段では、複数のポリゴンから構成される面状のモデルが、RAM12に格納される。
たとえば、この手段では、複数の矩形状のポリゴンからなる面状のモデルが、RAM12に格納される。たとえば、複数の矩形状のポリゴンからなる面状のモデルは、野球ゲームプログラムが、記録媒体10からRAM12にロードされるときに、野球ゲームプログラムとともに記録媒体10からRAM12にロードされ格納される。
なお、ここでは、複数の矩形状のポリゴンからなる面状のモデルが、記録媒体10に予め格納されている場合の例が示されているが、面状のモデルを、ゲーム装置において形成するようにしても良い。この場合、ゲーム装置において、複数の矩形状のポリゴンを面状に並べる命令をCPU7に発行させることにより、複数の矩形状のポリゴンからなる面状のモデルが形成される。そして、この面状のモデルが、RAM12に格納される。
オブジェクト生成手段52は、画像データをテクスチャとして面状のモデルに投影する処理を、CPU7に実行させることにより、面状のオブジェクトを生成する機能を備えている。この手段では、画像データをテクスチャとして面状のモデルに投影する処理を、CPU7に実行させることにより、面状のオブジェクトが生成される。
たとえば、この手段では、広角で捕手側から見たスタジアムの内部空間を示す画像データが、複数の矩形状のポリゴンからなる面状のモデルのテクスチャとして用いられる。すなわち、広角で捕手側から見たスタジアムの内部空間を示す画像データ(テクスチャ用の画像データ)を、複数の矩形状のポリゴンからなる面状のモデルに投影することにより(テクスチャマッピングを実行することにより)、面状のオブジェクトが生成される。ここでは、面状のオブジェクトが、広角で捕手側から見たスタジアムの内部空間の画像がマッピングされた面状のモデルに対応している。
オブジェクト配置手段53は、面状のオブジェクトの配置位置を規定するための座標データを、CPU7に認識させることにより、面状のオブジェクトを仮想空間に配置する機能を備えている。この手段では、面状のオブジェクトの配置位置を規定するための座標データを、CPU7に認識させることにより、面状のオブジェクトが仮想空間に配置される。
たとえば、この手段では、面状のオブジェクトの配置位置は、ゲームプログラムにおいて予め規定されている。この面状のオブジェクトの配置位置を規定するための座標データは、野球ゲームプログラムが、記録媒体10からRAM12にロードされるときに、野球ゲームプログラムとともに記録媒体10からRAM12にロードされ格納される。
カメラ配置手段54は、仮想カメラの配置位置を規定するための座標データを、CPU7に認識させることにより、仮想カメラを仮想空間に配置する機能を備えている。
この手段では、仮想カメラの配置位置を規定するための座標データを、CPU7に認識させることにより、仮想カメラが仮想空間に配置される。詳細には、この手段では、面状のオブジェクトの重心位置を基準として、面状のオブジェクトに垂直な方向の所定の位置を示す座標データを、CPU7に認識させることにより、仮想カメラが仮想空間に配置される。
たとえば、この手段では、仮想カメラの配置位置は、ゲームプログラムにおいて予め規定されている。ここでは、仮想カメラの配置位置は、面状のオブジェクトの重心位置において面状のオブジェクトに対して垂直に通過する直線上の所定の位置に設定されている。この所定の位置を示す座標データは、野球ゲームプログラムが、記録媒体10からRAM12にロードされるときに、野球ゲームプログラムとともに記録媒体10からRAM12にロードされ格納される。
形状変更手段55は、面状のオブジェクトの形状を面外に段階的に変形する処理を、CPU7に実行させる機能を備えている。また、形状変更手段55は、第1形状変更手段55aおよび第2形状変更手段55bを有している。
第1形状変更手段55aでは、面状のオブジェクトの形状を、仮想カメラから離反する方向に凸状に歪んだ形状に段階的に変形する処理が、CPU7により実行される。詳細には、この第1形状変更手段55aでは、面状のオブジェクトの重心位置を基準として、平面形状、および仮想カメラに近接する方向に凸状に歪んだ形状のいずれか一方の形状から、仮想カメラから離反する方向に凸状に歪んだ形状へと、面状のオブジェクトの形状を段階的に変形する処理が、CPU7により実行される。
第2形状変更手段55bでは、面状のオブジェクトの形状を、仮想カメラに近接する方向に凸状に歪んだ形状に段階的に変形する処理が、CPU7により実行される。詳細には、この第2形状変更手段55bでは、面状のオブジェクトの重心位置を基準として、平面形状、および仮想カメラから離反する方向に凸状に歪んだ形状のいずれか一方の形状から、仮想カメラに近接する方向に凸状に歪んだ形状へと、面状のオブジェクトの形状を段階的に変形する処理が、CPU7により実行される。
この手段では、面状のオブジェクトの形状を面外に段階的に変形する処理が、CPU7により実行される。
たとえば、面状のオブジェクトの重心位置において面状のオブジェクトに対して垂直に通過する直線を基準線として、平面形状、および仮想カメラ側に凸状に歪んだ形状のいずれか一方の形状から、仮想カメラから離反する方向に凸状に歪んだ形状へと、面状のオブジェクトの形状を時間に応じて段階的に変形する処理が、CPU7により実行される。
また、面状のオブジェクトの重心位置において面状のオブジェクトに対して垂直に通過する直線を基準線として、平面形状、および仮想カメラから離反する方向に凸状に歪んだ形状のいずれか一方の形状から、仮想カメラ側に凸状に歪んだ形状へと、面状のオブジェクトの形状を時間に応じて段階的に変形する処理が、CPU7により実行される。
画角変更手段56は、面状のオブジェクトの形状の変化に応じて仮想カメラの画角を段階的に変更する処理を、CPU7に実行させる機能を備えている。詳細には、画角変更手段56は、画角縮小手段56aおよび画角拡大手段56bを備えている。
画角縮小手段56aでは、面状のオブジェクトの形状の変化に応じて仮想カメラの画角が小さくなるように仮想カメラの画角を段階的に変更する処理が、CPU7により実行される。
画角拡大手段56bでは、面状のオブジェクトの形状の変化に応じて仮想カメラの画角が大きくなるように仮想カメラの画角を段階的に変更する処理が、CPU7により実行される。
たとえば、この手段では、面状のオブジェクトが仮想カメラから離れる方向に面外に段階的に変形するにつれて、仮想カメラの画角も段階的に小さくなるように、仮想カメラの画角を変更する処理が、CPU7により実行される。また、面状のオブジェクトが仮想カメラに近づく方向に面外に段階的に変形するにつれて、仮想カメラの画角も段階的に大きくなるように、仮想カメラの画角を変更する処理が、CPU7により実行される。
具体的には、面状のオブジェクトが、初期形状から、仮想カメラから離れる方向に面外に段階的に変形するにつれて、仮想カメラの画角が、所定の最大画角から所定の最小画角へと段階的に小さくなるように、仮想カメラの画角を時間に応じて変更する処理が、CPU7により実行される。また、面状のオブジェクトが、初期形状から、仮想カメラに近づく方向に面外に段階的に変形するにつれて、仮想カメラの画角が、所定の最小画角から所定の最大画角へと段階的に小さくなるように、仮想カメラの画角を時間に応じて変更する処理が、CPU7により実行される。
画像表示手段57は、面状のオブジェクトの形状が段階的に変化する状態を、画角が段階的に変化する仮想カメラにより撮影する処理を、CPU7に実行させることにより、ズーム画像をテレビジョンモニタ20に表示する機能を備えている。
この手段では、面状のオブジェクトの形状が段階的に変化する状態を、画角が段階的に変化する仮想カメラにより撮影する処理を、CPU7に実行させることにより、ズーム画像が、テレビジョンモニタ20に表示される。
詳細には、この手段では、面状のオブジェクトの形状が段階的に変化する状態を、画角が段階的に変化する仮想カメラにより撮影する処理を、CPU7に実行させることにより、ズームイン画像およびズームアウト画像のいずれか一方が、テレビジョンモニタ20に表示される。
たとえば、この手段では、面状のオブジェクトの形状が変形を開始したときに、仮想カメラに対する撮影開始命令が、CPU7から発行される。すると、仮想カメラの画角を段階的に変更する命令が、CPU7から発行される。すると、面状のオブジェクトの形状が段階的に変形する状態が、仮想カメラの画角が段階的に変化する仮想カメラにより撮影する処理が、CPU7により実行される。すると、ズームイン画像又はズームアウト画像が、テレビジョンモニタ20に表示される。
〔野球ゲームにおけるズーム画像表示システムの説明〕
次に、野球ゲームにおけるズーム画像表示システムの具体的な内容について説明する。また、図9および図10に示すフローについても同時に説明する。なお、図9は野球ゲームの全体概要を説明するためのフローであり、図10は上記システムを説明するためのフローである。
以下では、まず野球ゲームの全体概要を説明し、次に上記システムの内容を説明する。
まず、ゲーム装置の電源が投入されゲーム装置が起動されると、野球ゲームプログラムが、記録媒体10からRAM12にロードされ格納される。このときには、野球ゲームを実行する上で必要となる各種の基本ゲームデータも、同時に、記録媒体10からRAM12にロードされ格納される(S1)。
たとえば、基本ゲームデータには、3次元ゲーム空間用の各種の画像に関するデータが含まれている。そして、この3次元ゲーム空間用の各種の画像に関するデータ、たとえば、スタジアム用の画像データ、選手キャラクタ用の画像データ、および各種のオブジェクトの画像データ等が、CPU7に認識される。また、基本ゲームデータには、3次元ゲーム空間用の各種の画像に関するデータを3次元ゲーム空間に配置するための位置座標データが含まれている。また、基本ゲームデータには、上記システムで用いられるデータも、含まれている。
続いて、RAM12に格納された野球ゲームプログラムが、基本ゲームデータに基づいて、CPU7により実行される(S2)。すると、野球ゲームの起動画面がテレビジョンモニタ20に表示される。すると、野球ゲームを実行するための各種の設定画面がテレビジョンモニタ20に表示される。ここでは、たとえば、野球ゲームのプレイモードを選択するためのモード選択画面が、テレビジョンモニタ20に表示される(図示しない)。このモード選択画面において、プレイヤがコントローラ17を操作することにより、プレイモードが決定される(S3)。プレイモードには、たとえば、12球団の中から好きなチームを選択して1試合の対戦を楽しむ対戦モード、12球団の中から好きなチームを選択してペナントレースを戦うペナントモード、プレイヤが監督の立場でチームの選手キャラクタを育成する育成モード、およりプレイヤがある1人の選手キャラクタの立場になって野球ゲームを体感する成長体感モード等が、用意されている。
続いて、モード選択画面で選択されたプレイモードにおいて、各種のイベントが、CPU7により実行される(S4)。ここで実行される各種のイベントには、たとえば、AIプログラム(Artificial Intelligence Program)に基づいてCPU7により自動制御されるイベントや、コントローラ17からの入力信号に基づいてプレイヤにより手動制御されるイベントのようなイベントがある。また、選手キャラクタの制御には、AIプログラムに基づいて選手キャラクタに命令を自動的に指示する自動制御や、コントローラ17からの入力信号に基づいて選手キャラクタに命令を直接的に指示する手動制御等がある。このように、本野球ゲームでは、コントローラ17からの指示やAIプログラムからの指示に応じて、イベントが制御されたり、選手キャラクタに命令が指示されたりするようになっている。
続いて、選択されたプレイモードが終了したか否かが、CPU7により判断される(S5)。具体的には、プレイモードが終了したことを示す命令が発行されたか否かが、CPU7により判断される。そして、プレイモードが終了したことを示す命令が発行されたとCPU7により判断された場合(S5でYes)、ゲーム継続用のデータをRAM12に格納する処理が、CPU7により実行される。そして、ゲーム継続用のデータがRAM12に格納されると、この野球ゲームを終了するか否かを選択する選択画面が、テレビジョンモニタ20に表示される(S6)。そして、この選択画面において、プレイヤがコントローラ17を操作することにより、野球ゲームの終了を示す項目が選択されると(S6でYes)、野球ゲームを終了するための処理がCPU7により実行される(S7)。一方で、この選択画面において、プレイヤがコントローラ17を操作することにより、野球ゲームの継続を示す項目が選択されると(S6でNo)、ステップ3(S3)のモード選択画面が、テレビジョンモニタ20に再表示される。
なお、プレイモードが終了するための命令が発行されたとCPU7に判断されない限り(S5でNo)、モード選択画面で選択されたプレイモードにおいて、各種のイベントがCPU7により実行される(S4)。
次に、ズーム画像表示システムの詳細を説明する。
本実施形態では、試合イベントが実行されるときに、ズーム画像表示システムが機能する場合の例が示される。たとえば、試合イベントが実行されるときに、プレイヤがプレイを所望する球場を選択すると、選択された球場内部の映像が、テレビジョンモニタ20にズーム表示される。
以下では、捕手側から見たスタジアムの内部空間のズーム表示が、ズーム画像表示システムによって実現される場合の例が示される。
ズーム画像表示システムでは、野球ゲームプログラムが、たとえば、記録媒体10からRAM12にロードされたときに、捕手側から見たスタジアムの内部空間を、広角レンズで撮影した画像に対応する画像データGTが、捕手側から見たスタジアムの内部空間用のテクスチャとして、RAM12に格納される(S101)。ここでは、捕手側から見たスタジアムの内部空間を広角レンズで撮影した画像は、図3に示すようになっている。また、この広角レンズで撮影した画像に対応する画像データGTは、予め用意されたデータであり、記録媒体10に事前に格納されている。
また、このときには、複数のポリゴンから構成される面状のモデルが、RAM12に格納される(S102)。たとえば、図4(a)および図4(c)に示すような、複数の矩形状のポリゴンからなる面状のモデルMP1,MP2が、RAM12に格納される。なお、参考のために、複数のポリゴンから構成される面状のモデルが、平面形状になった場合の図を図4(b)および図4(d)に示した。また、図4(a)〜図4(c)は、複数のポリゴンから構成される面状のモデルを側面から見た側面図である。また、図4(d)は、平面形状のモデルMP0を正面から見たときの正面図である。
ここでは、仮想カメラC側に凸状に歪んだ形状(第1形状)の面状のモデルMP1と、仮想カメラCから離反する方向に凸状に歪んだ形状(第2形状)の面状のモデルMP2とが、RAM12に格納される。これら第1形状の面状のモデルMP1および第2形状の面状のモデルMP2それぞれは、複数の矩形状のポリゴンから構成されている。また、第1形状の面状のモデルMP1および第2形状の面状のモデルMP2それぞれは、重心位置gmにおいて最も凸になっている。すなわち、第1形状の面状のモデルMP1および第2形状の面状のモデルMP2それぞれは、重心位置gmにおいて最大曲率を有している。
なお、本実施形態では、第2形状のモデルMP2(ポリゴンの頂点の座標データを含む)は、後述するように、面状のオブジェクトOBJを変形させるときに必要となる計算において用いられる。
ここで、複数のポリゴンから構成される面状のモデルMP1,MP2は、予め用意されたデータであり、記録媒体10に事前に格納されている。なお、ここでは、各ポリゴンの形状が矩形状である場合の例が示されているが、各ポリゴンの形状は、どのような形状であっても良い。たとえば、複数の三角形状のポリゴンを用いて、面状のモデルを形成するようにしても良い。
なお、ここでは、複数のポリゴンから構成される面状のモデルMP1,MP2が、記録媒体10に事前に格納されている場合の例を示すが、面状のモデルを、ゲーム装置において生成するようにしても良い。
たとえば、第1形状に対応する面および第2形状に対応する面それぞれを、Bスプライン曲線を2方向に組み合わせることにより生成した場合、Bスプライン曲線を2方向に組み合わせたときの各交点が、第1形状および第2形状それぞれを形成するポリゴンの頂点の座標データになる。これら複数のポリゴンの頂点の座標データに基づいて、複数のポリゴンから構成される面状のモデルを生成することができる。また、面状のモデルMP0が平面形状である場合を基準として面対称の関係になるような、Bスプライン曲線を用いることにより、図4(a)および図4(c)に示したような、第1形状を有するモデルMP1および第2形状を有するモデルMP2を生成することができる。なお、モデルの生成に用いる曲線の方程式は、Bスプライン関数だけでなく、多次方程式を用いても良い。
さらに、面状モデルMP1(後述する面状のオブジェクトOBJ)の配置位置を規定するための座標データ、および仮想カメラCの配置位置を規定するための座標データが、RAM12に格納される(S103,S104)。ここでは、これらの座標データは、予め用意されたデータであり、記録媒体10に事前に格納されている。
これらステップ101(S101)からステップ104(S104)までの処理は、上述したステップ1(S1)において実行される。
続いて、試合イベントが開始され、対戦するチーム名のような情報がテレビジョンモニタ20に表示された後に、広角で捕手側から見たスタジアムの内部空間の画像データGTをテクスチャとして面状のモデルMP1に投影する処理が、CPU7により実行される(S105)。すなわち、広角で捕手側から見たスタジアムの内部空間のテクスチャGTを、複数の矩形状のポリゴンからなる面状のモデルMP1にマッピングすることにより、図5に示すように、広角で捕手側から見たスタジアムの内部空間が2次元的に表現されたオブジェクトOBJ(面状のオブジェクト)が、生成される。
なお、ここでは、面状のオブジェクトOBJが、試合イベントが開始された後に生成される場合の例を示すが、試合イベントが開始される前に、面状のオブジェクトOBJを事前に生成しておいても良い。
続いて、面状のオブジェクトOBJの配置位置を規定するための座標データを、CPU7に認識させることにより、図6(a)に示すように、面状のオブジェクトOBJが3次元ゲーム空間の所定の位置に配置される(S106)。そして、仮想カメラCの配置位置を規定するための座標データを、CPU7に認識させることにより、仮想カメラCが3次元ゲーム空間に配置される(S107)。具体的には、面状のオブェクトの重心位置gmを基準として、平面状態の面状のオブジェクトOBJに垂直な方向の所定の位置(基準線LK上の所定の位置)を示す座標データを、CPU7に認識させることにより、仮想カメラCが3次元ゲーム空間に配置される。
そして、面状のオブジェクトOBJおよび仮想カメラCが3次元ゲーム空間に配置されると、面状のオブジェクトOBJの変形を開始するための変形開始命令が、CPU7から発行される(S108)。すると、面状のオブジェクトOBJの形状を面外に段階的に変形する処理が、CPU7に実行される。たとえば、図6(a)〜図6(e)に示すように、面状のオブジェクトOBJの重心位置において面状のオブジェクトOBJに対して垂直な方向に伸びる直線を基準線LKとして、仮想カメラC側に凸状に歪んだ形状(第1形状)から、仮想カメラCから離反する方向に凸状に歪んだ形状(第2形状)へと、面状のオブジェクトOBJの形状を時間に応じて段階的に変形する処理が、CPU7により実行される。
ここで、面状のオブジェクトOBJが仮想カメラCから離れる方向に面外に変形を開始したときには、仮想カメラCの画角Gの変更を開始するための画角変更開始命令が、CPU7から発行される(S109)。すると、仮想カメラCの画角Gが第1画角Gmx(最大画角)から第2画角Gmn(最小画角)へと段階的に小さくなるように、仮想カメラCの画角Gを変更する処理が、CPU7により実行される。
たとえば、面状のオブジェクトOBJが、初期形状(第1形状)から、仮想カメラCから離れる方向に面外に段階的に変形するにつれて、仮想カメラCの画角Gが、所定の最大画角Gmxから所定の最小画角Gmnへと段階的に小さくなるように、仮想カメラCの画角Gを時間に応じて変更する処理が、CPU7により実行される。
ここでの処理を詳細に説明すると、まず、ズームの開始からズームの終了までの時間を示すズーム時間データTZが、CPU7に認識される。ズーム時間データの値は、ゲームプログラムにおいて予め規定されている。
また、仮想カメラCの最大画角Gmx(第1画角)および最小画角Gmn(第2画角)が、CPU7に認識される。最大画角Gmx(第1画角)および最小画角Gmn(第2画角)は、ゲームプログラムにおいて予め規定されている。なお、最大画角Gmxは、水平成分と垂直成分とから構成されている。ここでは、Gmx(Gmx_x,Gmx_z)と記載される。同様に、最小画角Gmnも、水平成分と垂直成分とから構成されている。ここでは、Gmn(Gmn_x,Gmn_z)と記載される。
なお、図6では、仮想カメラCの最大画角Gmx(第1画角)および最小画角Gmn(第2画角)の垂直成分のみが示されている。
次に、ズーム時間データTZを、1フレームの時間データTo(=1/60(sec))で除算する処理(TZ/To)が、CPU7により実行される。この処理結果(TZ/To)が、面状のオブジェクトOBJを変形するときの段階数Dsになる。
そして、たとえば、図7に示すように、3次元ゲーム空間において、第1形状のモデルMP1(モデル)のポリゴンの頂点(ある頂点)と、この頂点に対応する、第2形状のオブジェクトOBJ(モデル)のポリゴンの頂点とを結ぶ距離(Lp(n):nはポリゴンの頂点番号)を、段階数Dsで除算する処理(Lp(n)/Ds)が、CPU7により実行される。この処理は、全ポリゴンの頂点に対して実行される。この処理結果(Lp(n)/Ds)が、面状のオブジェクトOBJを変形するときの単位距離Ksになる。なお、図7では、「1」から「n1」までの頂点番号nのみが示されており、他の頂点番号nは省略されている。
また、最大画角Gmxと最小画角Gmnとの差の絶対値(|Gmx−Gmn|)を、段階数Dsで除算する処理(|Gmx−Gmn|/Ds)が、CPU7により実行される。この処理結果(|Gmx−Gmn|/Ds=(|Gmx_x−Gmn_x|/Ds,|Gmx_z−Gmn_z|/Ds))が、仮想カメラCの画角Gを変更するときの単位画角Gsとなる。
続いて、単位距離Ks(=Lp(n)/Ds)を、各ポリゴンの頂点の座標データに加算する処理が、1フレームごとに、CPU7により実行される。
ここでは、たとえば、図6(a)に示したように、平面形状のオブジェクトOBJの重心位置を原点として、3次元ゲーム空間の水平方向をX方向、3次元ゲーム空間の垂直上方向をZ方向、X方向およびZ方向に直交する仮想カメラCから離れる方向をY方向としている。
そして、第1形状のモデルを構成する各ポリゴンの頂点を、第2形状のモデルを構成する各ポリゴンの頂点(仮想点)に向けて、1フレームごとに単位距離Ks(=Lp(n)/Ds)を移動する処理が、CPU7により実行される。すると、面状のオブジェクトOBJが、1フレームごとに面外に段階的に変形する。
なお、第1形状のモデルを構成する各ポリゴンの頂点と、第2形状のモデルを構成する各ポリゴンの頂点とがなす角度を算出し、この角度に対応する三角関数に単位距離Ksを乗じることにより、1フレームごとに移動する各方向の成分が、CPU7により算出される。そして、この各方向の成分を、1フレームごとに、第1形状のモデルを構成する各ポリゴンの頂点の座標に加算することにより、面状のオブジェクトOBJを、1フレームごとに面外に段階的に変形することができる。
同時に、単位画角Gsを、仮想カメラCの最大画角Gmxから減算する処理が、1フレームごとに、CPU7により実行される。すなわち、単位画角Gsの各成分を、仮想カメラCの最大画角Gmxの各成分から減算する処理が、1フレームごとに、CPU7により実行される。
このようにして、面状のオブジェクトOBJが、第1形状から第2形状へと面外に1フレームごとに変形するにつれて、仮想カメラCの画角Gも、所定の最大画角Gmxから所定の最小画角Gmnへと1フレームごとに小さくなるように、面状のオブジェクトOBJの形状の変化と、仮想カメラCの画角Gの変化とを連動させることができる。
そして、面状のオブジェクトOBJの重心位置において面状のオブジェクトOBJに対して垂直な方向に伸びる直線を基準線LKとして、仮想カメラCから離反する方向に凸状に歪んだ形状(第2形状)から、仮想カメラC側に凸状に歪んだ形状(第1形状)へと、面状のオブジェクトOBJの形状を時間に応じて段階的に変形する処理が、CPU7により実行される。
ここで、面状のオブジェクトOBJが仮想カメラCに近づく方向に面外に段階的に変形するときには、仮想カメラCの画角Gが第2画角Gmn(最小画角)から第1画角Gmx(最大画角)へと段階的に大きくなるように、仮想カメラCの画角Gを変更する処理が、CPU7により実行される。
具体的には、面状のオブジェクトOBJが、初期形状(第2形状)から、仮想カメラCに近づく方向に面外に段階的に変形するにつれて、仮想カメラCの画角Gが、所定の最小画角Gmnから所定の最大画角Gmxへと段階的に小さくなるように、仮想カメラCの画角を時間に応じて変更する処理が、CPU7により実行される。
なお、ここでの処理については、上述した処理とは方向が反対であるだけで、上述した処理と同じように実行できるので、詳細な説明は省略する。
続いて、面状のオブジェクトOBJの変形を開始するための変形開始命令が、CPU7から発行されると、面状のオブジェクトOBJの形状が段階的に変化する状態を、画角が段階的に変化する仮想カメラCにより撮影する処理が、CPU7により実行される(S110)。すると、ズーム画像が、テレビジョンモニタ20に表示される(S111)。
たとえば、上記のように面状のオブジェクトOBJの形状が変化する状態を、画角が段階的に変化する仮想カメラCにより撮影する処理が、CPU7に実行させる。すると、図8Aから図8Eに示すように、ズームイン画像およびズームアウト画像が、テレビジョンモニタ20に表示される。
ここで、図8Aから図8Eまでの画像が連続的に再生されると、ズームイン画像が、テレビジョンモニタ20に表示される。また、ここで、図8Eから図8Aまでの画像が連続的に再生されると、ズームアウト画像が、テレビジョンモニタ20に表示される。なお、図8Aから図8Eまでの各図は、上記の図6(a)から図6(e)までの各図に対応している。
具体的には、面状のオブジェクトOBJの変形を開始するための変形開始命令が、CPU7から発行され、面状のオブジェクトOBJが第1形状から第2形状へと変形を開始すると、仮想カメラCに対する撮影開始命令が、CPU7から発行される。すると、仮想カメラCの画角を段階的に小さくする変更する命令が、CPU7から発行される。すると、面状のオブジェクトOBJの形状が段階的に変形する状態を、仮想カメラCの画角を段階的に小さくしながら撮影する処理が、CPU7により実行される。すると、ズームイン画像が、テレビジョンモニタ20に表示される。
同様に、面状のオブジェクトOBJの変形を開始するための変形開始命令が、CPU7から発行され、面状のオブジェクトOBJが第2形状から第1形状へと変形を開始(回復)すると、仮想カメラCに対する撮影開始命令が、CPU7から発行される。すると、仮想カメラCの画角を段階的に大きくする変更する命令が、CPU7から発行される。すると、面状のオブジェクトOBJの形状が段階的に変形する状態を、仮想カメラCの画角を段階的に大きくしながら撮影する処理が、CPU7により実行される。すると、ズームアウト画像が、テレビジョンモニタ20に表示される。ここで、テレビジョンモニタ20の画面枠を越えて拡大する画像は当然ながら、順次視覚から外れることになる。
上記の図8Aから図8Cの画像によれば(途中の画像は省略している)、プレイヤ側から見たイメージとしては、画面略中央部に向かって仮想カメラCからみた視点が単純に接近(ズーム)するのではなく、加速度的に急接近していくかのような表示となる。すなわち、画像の略中央部に比して、画像周辺部の外方に向かうほどより拡大変形が大きく、且つ、時間経過に伴う当該画像周辺部の拡大変形によって、画像周辺部の最外部が、内部の動きに比べて急速にテレビジョンモニタ20の画面枠を越えて順次消えていく。このため、あたかも画像中央部に向かって仮想カメラCの視点が加速的に急接近し、焦点が絞られるかのような演出効果を得ることができる。なお、上記の視覚的効果は1枚の静止画を変形する時間の間に限定されるものであって、当然ながら長時間にわたる動画のようなイメージが得られるものではない。
出願人が作成したものを表示する場合、この表示に要する時間は、概ね1秒程度である。しかし、このような短時間であっても、演出が単なる従来のズームとは異なり、画像周辺部が急速にモニタ画面枠を越えて外に吹き飛ばされ、中央部に焦点が絞られるかのような表示となる。このため、たとえば、交替する選手キャラクタの顔に急速にズームインするイメージや、ファインプレーを行った選手キャラクタに急速にズームインするイメージを作る場合に、本発明は特に有効である。また、プロモーションビデオやCM、さらに、ゲームの本編前後に流すデモムービーの作成時等に利用することも、有用な利用法の一つである。この理由は、これらの画像では、現実の動きを忠実に再現する表示よりも、メリハリの利いた、プレイヤの注目を引く演出が望まれるからである。
なお、図8Cから図8Eに示すズームアウトの場合は、上記と逆の動きになるが、画面略中央部が仮想カメラCに向かって加速度的に急接近するかのような映像効果が得られる。本実施形態では、画面略中央部がピッチャーマウンドとなっているが、例えばボールが仮想カメラCに向かって加速度的に急接近するかのような演出に適用することも可能である。
なお、ここでは、ズームインおよびズームアウトが同時に行われる場合の例を示したが、ズームインおよびズームアウトのいずれか一方だけが行われるようにしても良い。たとえば、ズームアウトのみが実行される場合は、ステップ105(S105)において、捕手側から見たスタジアムの内部空間の画像データGTをテクスチャとして面状のモデルMP2に投影する処理を、実行する必要がある。
また、ここでは、初期形状が、仮想カメラC側に凸状に歪んだ形状(第1形状)、又は仮想カメラCから離反する方向に凸状に歪んだ形状(第2形状)である場合の例を示したが、初期形状は、平面形状であっても良い。なお、初期形状は、平面形状より、上記の第1形状又は第2形状のような曲面形状の方が、より立体的な視覚効果があり、より迫力のあるズーム画像を、テレビジョンモニタ20に表示することができる。
上記のように、本実施形態では、面状のオブジェクトOBJを面外に段階的に変形させ、このオブジェクトOBJの面外変形に連動して、仮想カメラCの画角Gも段階的に変更させられる。このときに、変形中の面状のオブジェクトOBJを、画角Gが変化する仮想カメラCにより撮影することにより、立体的なオブジェクトを用いなくても、立体的な視覚効果を有するズーム画像を、テレビジョンモニタ20に表示することができる。さらに、このように撮影することにより、立体的なオブジェクトを用いなくても、立体的なオブジェクトを用いた場合より迫力のあるズーム画像を、テレビジョンモニタ20に表示することができる。
〔他の実施形態〕
(a)前記実施形態では、ゲームプログラムを適用しうるコンピュータの一例としての家庭用ビデオゲーム装置を用いた場合の例を示したが、ゲーム装置は、前記実施形態に限定されず、モニタが別体に構成されたゲーム装置、モニタが一体に構成されたゲーム装置、ゲームプログラムを実行することによってゲーム装置として機能するパーソナルコンピュータやワークステーションなどにも同様に適用することができる。
(b)本発明には、前述したようなゲームを実行するプログラムおよびこのプログラムを記録したコンピュータ読み取り可能な記録媒体も含まれる。この記録媒体としては、カートリッジ以外に、たとえば、コンピュータ読み取り可能なフレキシブルディスク、半導体メモリ、CD−ROM、DVD、MO、ROMカセット、その他のものが挙げられる。