(57)【特許請求の範囲】
【請求項１】
複数のキャラクタが存在する仮想３次元空間を、前記複数のキャラクタの位置に基づいて仮想カメラの視点の位置を移動し、該仮想カメラの視点から仮想スクリーン上に透視変換するビデオゲーム装置であって、
前記複数のキャラクタのうちの少なくとも１つを前記仮想３次元空間において移動させるキャラクタ移動手段と、
前記複数のキャラクタの前記仮想３次元空間における中心位置を算出する中心位置算出手段と、
前記中心位置算出手段が算出した中心位置を基準として、前記仮想３次元空間に複数の仮ポイントを設定する仮ポイント設定手段と、
前記複数の仮ポイントのそれぞれと前記中心位置とを結ぶ複数の直線上にそれぞれ前記仮想カメラの視点を設定して所定の視角で透視変換を行った場合に、前記複数のキャラクタの全てを前記仮想スクリーン上に投影することができる位置をそれぞれ仮視点位置として設定する仮視点位置設定手段と、
前記複数の直線上のそれぞれに設定された仮視点位置と前記中心位置算出手段が算出した中心位置との間の距離を算出する距離算出手段と、
前記距離算出手段が算出した距離に基づいて、前記複数の直線上にそれぞれ設定された仮視点位置を評価する視点位置評価手段と、
前記視点位置評価手段の評価結果に従って、前記仮視点位置のうちで前記仮想カメラの視点を移動させるべき位置を選択する視点位置選択手段と、
前記視点位置選択手段が選択した位置に、前記仮想カメラの視点の位置を移動させる視点位置移動手段と、
前記視点位置移動手段により位置が移動された前記仮想カメラの視点から前記仮想３次元空間を仮想スクリーン上に透視変換する透視変換手段と
を備えることを特徴とする３次元ビデオゲーム装置。
【請求項２】
現在の仮想カメラの視点の位置と前記中心位置算出手段が算出した中心位置とを結ぶ直線と、前記複数の直線がそれぞれなす角度を算出する角度算出手段をさらに備え、
前記視点位置評価手段は、さらに前記角度算出手段が算出した角度に基づいて、前記複数の直線上にそれぞれ設定される仮視点位置を評価する
ことを特徴とする請求項１に記載の３次元ビデオゲーム装置。
【請求項３】
前記仮視点位置のそれぞれから透視変換を行った場合に前記複数のキャラクタがそれぞれ該仮視点位置に対応した仮想スクリーンに投影される部分で他のキャラクタが投影される部分と重なり合う重なり面積を順次加算し、全てのキャラクタについての重なり面積を加算した結果を、それぞれの仮視点位置における前記複数のキャラクタの重なり度合いとして算出する重なり度算出手段をさらに備え、
前記視点位置評価手段は、さらに前記重なり度算出手段が算出した重なり度合いに基づいて、前記複数の直線上にそれぞれ設定される仮視点位置を評価する
ことを特徴とする請求項１または２に記載の３次元ビデオゲーム装置。
【請求項４】
前記複数のキャラクタの高さの差が所定値以上であるかどうかを判定するキャラクタ判定手段とをさらに備え、
前記視点位置評価手段は、さらに前記キャラクタ判定手段の判定結果に応じて前記複数の直線上にそれぞれ設定される仮視点位置を評価する
ことを特徴とする請求項１乃至３のいずれか１項に記載の３次元ビデオゲーム装置。
【請求項５】
一定の時間間隔の経過を計時する計時手段と、
前記計時手段が前記一定の時間間隔の経過を計時する度に、前記中心位置算出手段、前記仮ポイント設定手段、前記仮視点位置選択手段、前記距離算出手段及び前記視点位置評価手段による請求項１、２、３または４に記載の処理を行わせる処理制御手段とをさらに備える
ことを特徴とする請求項１、２、３または４に記載の次元ビデオゲーム装置。
【請求項６】
前記複数のキャラクタは、プレイヤの指示により前記仮想３次元空間を移動する複数のプレイヤキャラクタを含み、
前記複数のプレイヤキャラクタのうちで前記キャラクタ移動手段による移動を行わせるための指示の入力が不能な状態から可能な状態となるプレイヤキャラクタを順次切り替えるプレイヤキャラクタ切替手段と、
前記プレイヤキャラクタ切替手段により指示の入力が可能となるプレイヤキャラクタが切り替えられる度に、前記中心位置算出手段、前記仮ポイント設定手段、前記仮視点位置選択手段、前記距離算出手段及び前記視点位置評価手段による請求項１、２、３または４に記載の処理を行わせる処理制御手段とをさらに備える
ことを特徴とする請求項１、２、３または４に記載の３次元ビデオゲーム装置。
【請求項７】
前記視点位置選択手段は、前記視点位置評価手段の評価結果に従って、前記仮想カメラの視点を移動させるべき位置として複数の位置を選択し、
前記視点位置移動手段は、前記視点位置選択手段が選択した複数の位置に順次前記仮想カメラの視点の位置を切り替えて移動させる
ことを特徴とする請求項１乃至６のいずれか１項に記載の３次元ビデオゲーム装置。
【請求項８】
前記視点位置移動手段は、所定の時間が経過する度に、前記仮想カメラの視点の位置の切り替えを制御する手段を含む
ことを特徴とする請求項７に記載の３次元ビデオゲーム装置。
【請求項９】
前記視点位置移動手段は、前記視点位置評価手段の評価結果に従って、前記仮想カメラの視点の位置の切り替えを制御する手段を含む
ことを特徴とする請求項７または８に記載の３次元ビデオゲーム装置。
【請求項１０】
プレイヤの操作により前記仮想カメラの視点の位置の切り替えを指示する視点切替指示手段をさらに備え、
前記指定位置移動手段は、前記視点切替指示手段から切り替えが指示される度に、前記仮想カメラの視点の位置の切り替えを制御する手段を含む
ことを特徴とする請求項７乃至９のいずれか１項に記載の３次元ビデオゲーム装置。
【請求項１１】
前記仮想３次元空間には、前記仮想カメラの視点の位置を移動できる範囲限界が定められており、
前記視点位置選択手段が選択した仮想カメラの視点の位置が、前記範囲限界内にあるかどうかを判定する範囲限界判定手段をさらに備え、
前記視点位置移動手段は、前記範囲限界判定手段が前記範囲限界内にないと判定したときに、前記視点位置選択手段が選択した仮想カメラの視点の位置を前記範囲限界内に含まれるまで前記中心位置に向けてさらに移動し、
前記仮想カメラの視点を前記中心位置に向けて移動した場合に、前記複数のキャラクタが全て前記仮想スクリーン上に投影されるように前記仮想カメラの視角を変化させる視角変化手段をさらに備える
ことを特徴とする請求項１乃至１０のいずれか１項に記載の３次元ビデオゲーム装置。
【請求項１２】
プレイヤの操作により前記仮想カメラの視点の位置を移動することを指示する視点移動指示手段をさらに備え、
前記視点位置移動手段は、前記視点位置移動指示手段からの移動の指示に応じて、前記仮想カメラの視点の位置を移動する
ことを特徴とする請求項１乃至１１のいずれか１項に記載の３次元ビデオゲーム装置。
【請求項１３】
前記視点位置移動手段は、前記視点位置移動指示手段からの移動の指示があったときには、前記視点位置選択手段が選択した位置であるか否かに関わらず、該移動の指示に応じて該視点の位置を移動可能な範囲にある任意の位置に前記仮想カメラの視点の位置を移動する
ことを特徴とする請求項１２に記載の３次元ビデオゲーム装置。
【請求項１４】
前記中心位置算出手段は、前記仮想３次元空間に存在する複数のキャラクタの位置にそれぞれ重みを付けて、該複数のキャラクタの中心位置を算出する
ことを特徴とする請求項１乃至１３のいずれか１項に記載の３次元ビデオゲーム装置。
【請求項１５】
ゲームの進行状況に応じて、前記仮想３次元空間に存在する複数のキャラクタのうちから、前記仮想カメラの視点の位置の決定対象として用いられるキャラクタを選択するキャラクタ選択手段をさらに備える
ことを特徴とする請求項１乃至１４のいずれか１項に記載の３次元ビデオゲーム装置。
【請求項１６】
コンピュータ装置において実行され、複数のキャラクタが存在する仮想３次元空間を、前記複数のキャラクタの位置に基づいて仮想カメラの視点の位置を移動し、該仮想カメラの視点から仮想スクリーン上に透視変換するビデオゲームを実行するためのプログラムであって、
前記複数のキャラクタのうちの少なくとも１つを前記仮想３次元空間において移動させるキャラクタ移動手段と、
前記複数のキャラクタの前記仮想３次元空間における中心位置を算出する中心位置算出手段と、
前記中心位置算出手段が算出した中心位置を基準として、前記仮想３次元空間に複数の仮ポイントを設定する仮ポイント設定手段と、
前記複数の仮ポイントのそれぞれと前記中心位置とを結ぶ複数の直線上にそれぞれ前記仮想カメラの視点を設定して所定の視角で透視変換を行った場合に、前記複数のキャラクタの全てを前記仮想スクリーン上に投影することができる位置をそれぞれ仮視点位置として設定する仮視点位置設定手段と、
前記複数の直線上のそれぞれに設定された仮視点位置と前記中心位置算出手段が算出した中心位置との間の距離を算出する距離算出手段と、
前記距離算出手段が算出した距離に基づいて、前記複数の直線上にそれぞれ設定された仮視点位置を評価する視点位置評価手段と、
前記視点位置評価手段の評価結果に従って、前記仮視点位置のうちで前記仮想カメラの視点を移動させるべき位置を選択する視点位置選択手段と、
前記視点位置選択手段が選択した位置に、前記仮想カメラの視点の位置を移動させる視点位置移動手段と、
前記視点位置移動手段により位置が移動された前記仮想カメラの視点から前記仮想３次元空間を仮想スクリーン上に透視変換する透視変換手段
として前記コンピュータ装置を機能させることを特徴とするプログラム。
【請求項１７】
コンピュータ装置において実行され、複数のキャラクタが存在する仮想３次元空間を、前記複数のキャラクタの位置に基づいて仮想カメラの視点の位置を移動し、該仮想カメラの視点から仮想スクリーン上に透視変換するビデオゲームを実行するためのプログラムを記録した記録媒体であって、
前記プログラムは、
前記複数のキャラクタのうちの少なくとも１つを前記仮想３次元空間において移動させるキャラクタ移動手段と、
前記複数のキャラクタの前記仮想３次元空間における中心位置を算出する中心位置算出手段と、
前記中心位置算出手段が算出した中心位置を基準として、前記仮想３次元空間に複数の仮ポイントを設定する仮ポイント設定手段と、
前記複数の仮ポイントのそれぞれと前記中心位置とを結ぶ複数の直線上にそれぞれ前記仮想カメラの視点を設定して所定の視角で透視変換を行った場合に、前記複数のキャラクタの全てを前記仮想スクリーン上に投影することができる位置をそれぞれ仮視点位置として設定する仮視点位置設定手段と、
前記複数の直線上のそれぞれに設定された仮視点位置と前記中心位置算出手段が算出した中心位置との間の距離を算出する距離算出手段と、
前記距離算出手段が算出した距離に基づいて、前記複数の直線上にそれぞれ設定された仮視点位置を評価する視点位置評価手段と、
前記視点位置評価手段の評価結果に従って、前記仮視点位置のうちで前記仮想カメラの視点を移動させるべき位置を選択する視点位置選択手段と、
前記視点位置選択手段が選択した位置に、前記仮想カメラの視点の位置を移動させる視点位置移動手段と、
前記視点位置移動手段により位置が移動された前記仮想カメラの視点から前記仮想３次元空間を仮想スクリーン上に透視変換する透視変換手段
として前記コンピュータ装置を機能させることを特徴とするコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、３次元ビデオゲームにおいて、仮想３次元空間内に複数のキャラクタが存在するときに仮想カメラの視点の位置を決定するための技術に関する。
【０００２】
【従来の技術】
ＲＰＧ（Role Playing Game）においては、通常、ゲームを進行する過程でプレイヤキャラクタと敵キャラクタとのバトルが行われる。３次元ビデオゲームとした場合には、このバトルの様子は、バトルフィールド（バトル用のマップ）に設置された仮想カメラにより透視変換されて、表示画面上に表示される。ここでプレイヤが体感することのできるゲームの様子は、この表示画面上の映像だけとなっている。
【０００３】
従来のＲＰＧでは、予め定められた位置にある仮想カメラによりバトルが行われている仮想３次元空間を透視変換して表示画面に表示される画像を生成していた。仮想カメラの位置が移動されるものもあったが、予め定められた位置で順次切り替えを行っているに過ぎなかった。このため、表示画面上には、同じ位置から撮影された映像が繰り返して表示されるだけで、画面の変化が単調なものとなってしまっていた。
【０００４】
ところで、特にＲＰＧのバトルへの適用を考えたものではないが、３次元ビデオゲームにおける仮想カメラの視点の位置を移動する技術も提案されている。例えば、プレイヤがカメラアングルを割り付けたマークに対応した操作ボタンを押下することで、仮想カメラの視点の位置を切り替えるものがある（例えば、特許文献１参照）。また、競技者の視点と外部観戦者の視点とで仮想カメラの位置を切り替えるものがある（例えば、特許文献２参照）。
【０００５】
【特許文献１】
特開２００１−１６２０４０号公報
【特許文献２】
特開平１０−１１３４６７号公報
【０００６】
【発明が解決しようとする課題】
しかしながら、特許文献１の技術では、仮想カメラの視点の位置は、予め定められた位置にしか移動せず、画面の変化が単調であるという課題を何ら解決できるものではない。一方、特許文献２の技術では、仮想カメラの視点の位置も自由に移動できるものであるが、仮想カメラの視点の位置は、１つのオブジェクト（ここでは競技者（車））だけに追随して移動させればよいものである。
【０００７】
これに対して、ＲＰＧにおけるバトルは、プレイヤキャラクタと敵キャラクタとで少なくとも２体のキャラクタが存在しなければ成立しない。一般的には、それ以上に多くのキャラクタが存在するものとなっている。仮に特許文献２を適用して１つのキャラクタの動きに追随させて仮想カメラの視点の位置も移動させると、全体としてキャラクタの位置が偏ってしまったり、或いは一部のキャラクタが表示画面に映し出されないことも生じてくる。
【０００８】
仮想カメラの視点の位置を１または複数の位置で固定させた場合には、キャラクタの移動範囲全体が映し出されるように仮想カメラの視点の位置を設定すれば、一部のキャラクタが表示画面に映し出されなくなるという問題はなくなる。しかしながら、キャラクタが移動した位置によっては、個々のキャラクタが表示される大きさが小さくなってしまったり、キャラクタの位置が偏ってしまったりという問題が生じることがあった。
【０００９】
本発明は、複数のキャラクタが存在するゲームにおいて、キャラクタの位置の移動に伴って仮想カメラの視点の位置を適切な位置に移動することができる３次元ビデオゲーム装置等を提供することを目的とする。
【００１０】
【課題を解決するための手段】
上記目的を達成するため、本発明の第１の観点にかかる３次元ビデオゲーム装置は、複数のキャラクタが存在する仮想３次元空間を、前記複数のキャラクタの位置に基づいて仮想カメラの視点の位置を移動し、該仮想カメラの視点から仮想スクリーン上に透視変換するビデオゲーム装置であって、前記複数のキャラクタのうちの少なくとも１つを前記仮想３次元空間において移動させるキャラクタ移動手段と、前記複数のキャラクタの前記仮想３次元空間における中心位置を算出する中心位置算出手段と、前記中心位置算出手段が算出した中心位置を基準として、前記仮想３次元空間に複数の仮ポイントを設定する仮ポイント設定手段と、前記複数の仮ポイントのそれぞれと前記中心位置とを結ぶ複数の直線上にそれぞれ前記仮想カメラの視点を設定して所定の視角で透視変換を行った場合に、前記複数のキャラクタの全てを前記仮想スクリーン上に投影することができる位置をそれぞれ仮視点位置として設定する仮視点位置設定手段と、前記複数の直線上のそれぞれに設定された仮視点位置と前記中心位置算出手段が算出した中心位置との間の距離を算出する距離算出手段と、前記距離算出手段が算出した距離に基づいて、前記複数の直線上にそれぞれ設定された仮視点位置を評価する視点位置評価手段と、前記視点位置評価手段の評価結果に従って、前記仮視点位置のうちで前記仮想カメラの視点を移動させるべき位置を選択する視点位置選択手段と、前記視点位置選択手段が選択した位置に、前記仮想カメラの視点の位置を移動させる視点位置移動手段と、前記視点位置移動手段により位置が移動された前記仮想カメラの視点から前記仮想３次元空間を仮想スクリーン上に透視変換する透視変換手段とを備えることを特徴とする。
【００１１】
上記３次元ビデオゲーム装置では、キャラクタ移動手段によりキャラクタの位置が変化することとなるが、キャラクタの位置に応じて仮想カメラの視点の位置が選択されることとなる。仮想カメラの視点の位置は、全てのキャラクタを仮想スクリーン上に投影できる位置として設定された仮視点位置の中から選ばれる。このため、視点の位置を常に適切な位置に保って、仮想カメラによる透視変換が行えるようになると共に、透視変換により生成される画面上において全てのキャラクタが表示されるようになる。
【００１２】
視点位置評価手段は、距離算出手段が算出した仮視点位置と中心位置との間の距離に基づいて、仮視点位置の評価を行うものとなっており、この評価結果に基づいて、仮想カメラの視点の位置が選択される。このため、透視変換により生成される画面上におけるキャラクタの大きさを適切なものとすることができるようになる。
【００１３】
上記３次元ビデオゲーム装置は、現在の仮想カメラの視点の位置と前記中心位置算出手段が算出した中心位置とを結ぶ直線と、前記複数の直線がそれぞれなす角度（角度に応じて特定される数値（正弦値、余弦値、正接値など）も含む）を算出する角度算出手段をさらに備えていてもよい。この場合において、前記視点位置評価手段は、さらに前記角度算出手段が算出した角度に基づいて、前記複数の直線上にそれぞれ設定される仮視点位置を評価することができる。
【００１４】
上記３次元ビデオゲーム装置は、前記仮視点位置のそれぞれから透視変換を行った場合に前記複数のキャラクタがそれぞれ該仮視点位置に対応した仮想スクリーンに投影される部分で他のキャラクタが投影される部分と重なり合う重なり面積を順次加算し、全てのキャラクタについての重なり面積を加算した結果を、それぞれの仮視点位置における前記複数のキャラクタの重なり度合いとして算出する重なり度算出手段をさらに備えていてもよい。この場合において、前記視点位置評価手段は、さらに前記重なり度算出手段が算出した重なり度合いに基づいて、前記複数の直線上にそれぞれ設定される仮視点位置を評価することができる。
【００１５】
上記３次元ビデオゲーム装置は、前記複数のキャラクタの高さの差が所定値以上であるかどうかを判定するキャラクタ判定手段とをさらに備えていてもよい。この場合において、前記視点位置評価手段は、さらに前記キャラクタ判定手段の判定結果に応じて前記複数の直線上にそれぞれ設定される仮視点位置を評価することができる。
【００１６】
上記のように視点位置評価手段が、各仮視点位置と中心位置とを結ぶ直線が現在の仮想カメラの視点の位置と中心位置とを結ぶ直線とがなす角度に基づいて仮視点位置を評価することによって、視点の移動量を小さくして透視変換により生成される画面の変化に違和感が生じないようにすることができる。視点位置評価手段が、キャラクタの重なり度合いに基づいて仮視点位置を評価することによって、画面上にキャラクタを見易く表示させることができる。視点位置評価手段が、キャラクタの高さの差に応じて仮視点位置を評価することによって、画面上におけるキャラクタの大きさをプレイヤが認識し易くすることができる。
【００１７】
上記３次元ビデオゲーム装置において、前記視点位置選択手段は、前記視点位置評価手段の評価結果に従って、前記仮想カメラの視点を移動させるべき位置として複数の位置を選択することができる。この場合、前記視点位置移動手段は、前記視点位置選択手段が選択した複数の位置に順次前記仮想カメラの視点の位置を切り替えて移動させることができる。
【００１８】
ここで、前記視点位置移動手段は、所定の時間が経過する度に、前記仮想カメラの視点の位置の切り替えを制御する手段を含むものであってもよい。
【００１９】
また、前記視点位置移動手段は、前記視点位置評価手段の評価結果に従って、前記仮想カメラの視点の位置の切り替えを制御する手段を含むものであってもよい。
【００２０】
このような構成とした場合において、上記ビデオゲーム装置は、プレイヤの操作により前記仮想カメラの視点の位置の切り替えを指示する視点切替指示手段をさらに備えていてもよい。この場合、前記指定位置移動手段は、前記視点切替指示手段から切り替えが指示される度に、前記仮想カメラの視点の位置の切り替えを制御する手段を含むものとすることができる。
【００２１】
仮想カメラの視点を移動すべき位置として複数の仮視点位置が選択され、それぞれに切り替えて仮想カメラの視点の位置が移動されることで、透視変換により生成される画面の変化を大きくすることができる。特にプレイヤの操作により視点の位置を切り替えられるようにすることで、プレイヤは、自分の好みに合わせた画面でゲームを進行し易くすることができる。
【００２２】
上記３次元ビデオゲーム装置において、前記仮想３次元空間には、前記仮想カメラの視点の位置を移動できる範囲限界が定められていてもよい。この場合、上記３次元ビデオゲーム装置は、前記視点位置選択手段が選択した仮想カメラの視点の位置が、前記範囲限界内にあるかどうかを判定する範囲限界判定手段をさらに備えるものとすることができる。この場合において、前記視点位置移動手段は、前記範囲限界判定手段が前記範囲限界内にないと判定したときに、前記仮想カメラの視点の位置が前記範囲限界内に含まれるように前記中心位置に向けて移動することができる。そして、上記３次元ビデオゲーム装置は、前記仮想カメラの視点を前記中心位置に向けて移動した場合に、前記複数のキャラクタが全て前記仮想スクリーン上に投影されるように前記仮想カメラの視角を変化させる視角変化手段をさらに備えるものとすることができる。
【００２３】
この場合には、範囲限界の外であっても仮視点位置として設定して、視点位置評価手段による評価を行うことができる。範囲限界の外にある仮視点位置の評価結果によりこれが仮想カメラの視点を移動すべき位置として選択されても、仮想カメラの視点位置の移動と視角の変化とによって、実質的に範囲限界の外の仮視点位置に仮想カメラの視点を置いたのとあまり変わらない画面を生成することができる。
【００２４】
上記３次元ビデオゲーム装置は、プレイヤの操作により前記仮想カメラの視点の位置を移動することを指示する視点移動指示手段をさらに備えていてもよい。この場合において、前記視点位置移動手段は、前記視点位置移動指示手段からの移動の指示に応じて、前記仮想カメラの視点の位置を移動することができる。
【００２５】
ここでさらに、前記視点位置移動手段は、前記視点位置移動指示手段からの移動の指示があったときには、前記視点位置選択手段が選択した位置であるか否かに関わらず、該移動の指示に応じて該視点の位置を移動可能な範囲にある任意の位置に前記仮想カメラの視点の位置を移動するものとすることもできる。
【００２６】
このように仮視点位置の評価結果に限られず、仮想カメラの視点の位置を任意の位置に移動できるものとすることで、プレイヤは、自分の好みに合わせた画面を表示させてゲームを進行させることができるようになる。
【００２７】
上記３次元ビデオゲーム装置は、一定の時間間隔の経過を計時する計時手段と、前記計時手段が前記一定の時間間隔の経過を計時する度に、前記中心位置算出手段、前記仮ポイント設定手段、前記仮視点位置選択手段、前記距離算出手段及び前記視点位置評価手段による処理を行わせる処理制御手段とをさらに備えていてもよい。
【００２８】
なお、上記３次元ビデオゲーム装置が前記角度算出手段、重なり度算出手段および／またはキャラクタ判定手段を備える場合には、これらの手段による処理も、前記計時手段が前記一定の時間間隔の経過を計時する度に行われるものとすることができる。
【００２９】
このように一定の時間間隔の経過を計時する度に中心位置の算出から仮視点位置の評価までを行って、仮想カメラの視点の位置を決定するものとすることで、ゲームの進行に伴ってキャラクタの位置が大きく変化することとなっても、仮想カメラの視点の位置を適切な位置に更新していくことができる。
【００３０】
上記３次元ビデオゲーム装置は、前記複数のキャラクタが、プレイヤの指示により前記仮想３次元空間を移動する複数のプレイヤキャラクタを含む場合には、前記複数のプレイヤキャラクタのうちで前記キャラクタ移動手段による移動を行わせるための指示の入力が不能な状態から可能な状態となるプレイヤキャラクタを順次切り替えるプレイヤキャラクタ切替手段と、前記プレイヤキャラクタ切替手段により指示の入力が可能となるプレイヤキャラクタが切り替えられる度に、前記中心位置算出手段、前記仮ポイント設定手段、前記仮視点位置選択手段、前記距離算出手段及び前記視点位置評価手段による処理を行わせる処理制御手段とをさらに備えていてもよい。
【００３１】
なお、上記３次元ビデオゲーム装置が前記角度算出手段、重なり度算出手段および／またはキャラクタ判定手段を備える場合には、これらの手段による処理も、前記プレイヤキャラクタ切替手段により指示の入力が可能となるプレイヤキャラクタが切り替えらる度に行われるものとすることができる。
【００３２】
このように指示の入力が可能となるプレイヤキャラクタが切り替えられる度に中心位置の算出から仮視点位置の評価までを行って、仮想カメラの視点の位置を決定するものとすることで、プレイヤは、プレイヤキャラクタに対する指示を入力しやすくなる。
【００３３】
上記３次元ビデオゲーム装置において、前記中心位置算出手段は、前記仮想３次元空間に存在する複数のキャラクタの位置にそれぞれ重みを付けて、該複数のキャラクタの中心位置を算出するものとすることができる。
【００３４】
上記３次元ビデオゲーム装置は、ゲームの進行状況に応じて、前記仮想３次元空間に存在する複数のキャラクタのうちから、前記仮想カメラの視点の位置の決定対象として用いられるキャラクタを選択するキャラクタ選択手段をさらに備えるものとしてもよい。
【００３５】
なお、上記３次元ビデオゲーム装置がプレイヤキャラクタ切替手段を備える場合には、前記キャラクタ選択手段は、少なくとも指示の入力が可能となったプレイヤキャラクタを前記仮想カメラの視点の位置の決定対象として用いられるキャラクタとして選択することができる。
【００３６】
上記のように中心位置を算出する際に各キャラクタの位置に重み付けを行ったり、仮想カメラの視点の位置の決定対象として用いられるキャラクタを選択できるようにすることで、各キャラクタのゲームの進行における重要度に応じて、仮想カメラの視点の位置としてより適切な位置を選択できるようになる。
【００３８】
上記目的を達成するため、本発明の第２の観点にかかるプログラムは、コンピュータ装置において実行され、複数のキャラクタが存在する仮想３次元空間を、前記複数のキャラクタの位置に基づいて仮想カメラの視点の位置を移動し、該仮想カメラの視点から仮想スクリーン上に透視変換するビデオゲームを実行するためのプログラムであって、前記複数のキャラクタのうちの少なくとも１つを前記仮想３次元空間において移動させるキャラクタ移動手段と、前記複数のキャラクタの前記仮想３次元空間における中心位置を算出する中心位置算出手段と、前記中心位置算出手段が算出した中心位置を基準として、前記仮想３次元空間に複数の仮ポイントを設定する仮ポイント設定手段と、前記複数の仮ポイントのそれぞれと前記中心位置とを結ぶ複数の直線上にそれぞれ前記仮想カメラの視点を設定して所定の視角で透視変換を行った場合に、前記複数のキャラクタの全てを前記仮想スクリーン上に投影することができる位置をそれぞれ仮視点位置として設定する仮視点位置設定手段と、前記複数の直線上のそれぞれに設定された仮視点位置と前記中心位置算出手段が算出した中心位置との間の距離を算出する距離算出手段と、前記距離算出手段が算出した距離に基づいて、前記複数の直線上にそれぞれ設定された仮視点位置を評価する視点位置評価手段と、前記視点位置評価手段の評価結果に従って、前記仮視点位置のうちで前記仮想カメラの視点を移動させるべき位置を選択する視点位置選択手段と、前記視点位置選択手段が選択した位置に、前記仮想カメラの視点の位置を移動させる視点位置移動手段と、前記視点位置移動手段により位置が移動された前記仮想カメラの視点から前記仮想３次元空間を仮想スクリーン上に透視変換する透視変換手段として前記コンピュータ装置を機能させることを特徴とするプログラム。
【００３９】
上記目的を達成するため、本発明の第３の観点にかかるコンピュータ読み取り可能な記録媒体は、コンピュータ装置において実行され、複数のキャラクタが存在する仮想３次元空間を、前記複数のキャラクタの位置に基づいて仮想カメラの視点の位置を移動し、該仮想カメラの視点から仮想スクリーン上に透視変換するビデオゲームを実行するためのプログラムを記録した記録媒体であって、前記プログラムは、前記複数のキャラクタのうちの少なくとも１つを前記仮想３次元空間において移動させるキャラクタ移動手段と、前記複数のキャラクタの前記仮想３次元空間における中心位置を算出する中心位置算出手段と、前記中心位置算出手段が算出した中心位置を基準として、前記仮想３次元空間に複数の仮ポイントを設定する仮ポイント設定手段と、前記複数の仮ポイントのそれぞれと前記中心位置とを結ぶ複数の直線上にそれぞれ前記仮想カメラの視点を設定して所定の視角で透視変換を行った場合に、前記複数のキャラクタの全てを前記仮想スクリーン上に投影することができる位置をそれぞれ仮視点位置として設定する仮視点位置設定手段と、前記複数の直線上のそれぞれに設定された仮視点位置と前記中心位置算出手段が算出した中心位置との間の距離を算出する距離算出手段と、前記距離算出手段が算出した距離に基づいて、前記複数の直線上にそれぞれ設定された仮視点位置を評価する視点位置評価手段と、前記視点位置評価手段の評価結果に従って、前記仮視点位置のうちで前記仮想カメラの視点を移動させるべき位置を選択する視点位置選択手段と、前記視点位置選択手段が選択した位置に、前記仮想カメラの視点の位置を移動させる視点位置移動手段と、前記視点位置移動手段により位置が移動された前記仮想カメラの視点から前記仮想３次元空間を仮想スクリーン上に透視変換する透視変換手段として前記コンピュータ装置を機能させることを特徴とするコンピュータ読み取り可能な記録媒体。
【００４０】
【発明の実施の形態】
以下、添付図面を参照して、本発明の実施の形態について説明する。
【００４１】
図１は、この実施の形態にかかる３次元ビデオゲームを実行するためのビデオゲーム装置１００の構成を示すブロック図である。図示するように、ビデオゲーム装置１００は、ビデオゲーム本体１０１を中心として構築される。このビデオゲーム本体１０１は、その内部バス１１９に接続された制御部１０３、ＲＡＭ（Random Access Memory）１０５、ハードディスク・ドライブ（ＨＤＤ）１０７、サウンド処理部１０９、グラフィック処理部１１１、ＤＶＤ／ＣＤ−ＲＯＭドライブ１１３、通信インターフェイス１１５、及びインターフェイス部１１７を含む。
【００４２】
このビデオゲーム本体１０１のサウンド処理部１０９は、スピーカーであるサウンド出力装置１２５に、グラフィック処理部１１１は、表示画面１２２を有する表示装置１２１に接続されている。ＤＶＤ／ＣＤ−ＲＯＭドライブ１１３には、記録媒体（ＤＶＤ−ＲＯＭまたはＣＤ−ＲＯＭ）１３１を装着し得る。通信インターフェイス１１５は、ネットワーク１５１に接続される。インターフェイス部１１７には、入力部（コントローラ）１６１とメモリカード１６２とが接続されている。
【００４３】
制御部１０３は、ＣＰＵ（Central Processing Unit）やＲＯＭ（Read Only Memory）などを含み、ＨＤＤ１０７や記録媒体１３１上に格納されたプログラムを実行し、ビデオゲーム装置１００の制御を行う。制御部１０３は、内部タイマを備えている。ＲＡＭ１０５は、制御部１０３のワークエリアである。ＨＤＤ１０７は、プログラムやデータを保存するための記憶領域である。サウンド処理部１０９は、制御部１０３により実行されているプログラムがサウンド出力を行うよう指示している場合に、その指示を解釈して、サウンド出力装置１２５にサウンド信号を出力する。
【００４４】
グラフィック処理部１１１は、制御部１０３から出力される描画命令に従って、フレームメモリ１１２に画像を展開し、表示装置１２１の表示画面１２２上に画像を表示するビデオ信号を出力する。出力されるビデオ信号に含まれる画像の１フレーム時間は、例えば３０分の１秒とする。ＤＶＤ／ＣＤ−ＲＯＭドライブ１１３は、記録媒体１３１に対しプログラム及びデータの読み書きを行う。通信インターフェイス１１５は、ネットワーク１５１に接続され、他のコンピュータとの通信を行う。
【００４５】
インターフェイス部１１７は、入力部１６１からの入力データをＲＡＭ１０５に出力し、制御部１０３がそれを解釈して演算処理を実施する。入力部１６１は、方向キー及び複数の操作ボタンを備え、方向キーの操作により後述するキャラクタを移動させ、操作ボタンの操作により所定の処理を行わせるものである。方向キーは、カーソルの移動やメッセージなどのためにも用いられ、操作ボタンは、所定の指示を入力するために用いられる。インターフェイス部１１７は、また、制御部１０３からの指示に基づいて、ＲＡＭ１０５に記憶されているゲームの進行状況を示すデータをメモリーカード１６２に保存させ、メモリーカード１６２に保存されている中断時のゲームのデータを読み出して、ＲＡＭ１０５に転送する。
【００４６】
ビデオゲーム装置１００でゲームを行うためのプログラム及びデータは、最初例えば記録媒体１３１に記憶されている。このプログラム及びデータは、実行時にＤＶＤ／ＣＤ−ＲＯＭドライブ１１３により読み出されて、ＲＡＭ１０５にロードされる。制御部１０３は、ＲＡＭ１０５にロードされたプログラム及びデータを処理し、描画命令をグラフィック処理部１１１に出力し、サウンド出力の指示をサウンド処理部１０９に出力する。制御部１０３が処理を行っている間の中間的なデータは、ＲＡＭ１０５に記憶される。
【００４７】
次に、上記のビデオゲーム装置１００で実行される、この実施の形態にかかる３次元ビデオゲームについて説明する。この３次元ビデオゲームは、ＲＰＧ（Role Playing Game）であり、プレイヤは、入力部１６１を操作することでプレイヤキャラクタをマップ上で移動させながら、ゲームを進行させていく。プレイヤキャラクタがマップ上の所定のポイントに移動すると、敵キャラクタとのバトルに移行する。プレイヤキャラクタがバトルに勝利すると、通常のゲームの進行状態に戻る。
【００４８】
図２は、プレイヤキャラクタと敵キャラクタとのバトルが行われている場合における表示画面１２２の例を示す図である。プレイヤキャラクタと敵キャラクタとのバトルは、通常とは異なるバトル用のマップ上で行われる。バトル用のマップには、予め定められた大きさ（少なくともキャラクタが移動できる範囲よりも大きい）が設定されており、この大きさの範囲が後述する仮想カメラの視点の位置を移動できる限界となる。
【００４９】
図２の例では、３体のプレイヤキャラクタ２０１〜２０３が３体の敵キャラクタ２０４〜２０６とバトルを行っている場合を示している。このバトルの間において、プレイヤキャラクタ及び敵キャラクタ（以下、両者をまとめて単にキャラクタという）２０１〜２０６は、バトル用のマップ上の任意の位置に移動して動作し、動作後に元の場所に戻らなくてもよい。
【００５０】
バトル時の表示画面１２２においては、キャラクタ２０１〜２０６が存在するバトル用のマップが後述する透視変換の処理によって表示される。バトル時の表示画面１２２においては、また、キャラクタ２０１〜２０６が存在するバトル用のマップの画像の前面側に、プレイヤキャラクタ２０１〜２０３に指示する行動を選択する行動選択部２１１と、プレイヤキャラクタ２０１〜２０３の現在のステータスを示すステータス表示部２１２とが表示される。
【００５１】
図２に示したバトル用のマップ上における各位置（キャラクタ２０１〜２０６の位置を含む）は、後述するワールド座標系の座標（Ｘ，Ｙ，Ｚ）で示されるものとなる。キャラクタ２０１〜２０６は、ポリゴンによって構成され、ローカル座標系によって示される。また、透視変換を行う場合には、後述する視点座標系の座標（Ｘ’，Ｙ’，Ｚ’）が用いられる。
【００５２】
図３は、バトル時において登場するキャラクタ２０１〜２０６を示す図である。キャラクタ２０１〜２０６には、９つの参照点３００〜３０８が設定されており、後述する仮想カメラの視点の位置を決定する際には、これらの参照点３００〜３０８だけを用いて処理がなされる。また、キャラクタ２０１〜２０６特徴点（各ポリゴンの頂点）は、例えば重心の参照点３００を原点とするローカル座標系の座標（ｘ，ｙ，ｚ）で表され、方向は、ローカル座標系の各軸がワールド座標系の各軸に対してなす角で表される。透視変換を行う際において、キャラクタ２０１〜２０６の特徴点の座標は、ワールド座標系の座標に変換される。
【００５３】
プレイヤキャラクタ２０１〜２０３と敵キャラクタ２０４〜２０６とがバトルを行っている様子は、仮想カメラによりバトル用のマップが形成された仮想３次元空間を透視変換することで表示画面１２２上に映し出され、プレイヤに認識されるものとなる。図４は、透視変換の様子を模式的に示す図である。仮想３次元空間内に仮想カメラ４０１が置かれ、仮想スクリーン４０２上に投影された画像が表示画面１２２に表示される画像となる。この仮想カメラ４０１の位置が視点４０３、仮想カメラ４０１の向きが視軸４０４、視点４０３と仮想スクリーン４０２の対角頂点を結んだ２本の直線がなすが視角４０５となる。
【００５４】
このようにスクリーン４０２上に画像を投影するために用いられる座標系が視点座標系（Ｘ’，Ｙ’，Ｚ’）であり、視軸４０４の方向が視点座標系のＺ’軸となる。ワールド座標系の座標（ローカル座標系の座標から変換された座標を含む）は、視点座標系の座標に変換されて、次に示す隠面消去の処理を含む透視変換の処理が行われる。透視変換により仮想スクリーン４０２上に投影した画像を生成する場合には、前面に他の物体があって隠されてしまう面を消去する隠面消去を行う必要がある。隠面消去の方法としては、例えばＺバッファ法を用いることができるが、特に本発明に関わるものではないので、詳細な説明は省略する。
【００５５】
この透視変換を行う前提として、仮想カメラ４０１の視点４０３の位置、視軸４０４の方向、及び視角４０５の大きさが決まっている必要がある（仮想スクリーン４０２の位置は、これらが決まると必然的に決まる）。視軸４０４の方向は、後述するようにキャラクタ２０１〜２０６の中心位置として求められる注視点５００を必ず向くように設定される。視角４０５の大きさは、後述するように調整される場合を除いて、基本的には同じ大きさに設定される。
【００５６】
これに対して、視点４０３の位置は、バトルの進行状況に応じて決定されて移動させられる。視点４０３の位置を決定する場合、まず注視点５００を基準として複数の仮ポイントを設定し、各仮ポイントと注視点５００とを結ぶ直線上に仮視点位置を設定する。各仮視点位置について、後述する距離評価、角度評価、重なり評価及び高さ評価を行った結果で得られたポイントに基づいて、視点４０３の位置を実際に移動する位置が決められることとなる。
【００５７】
以下、この実施の形態にかかる３次元ビデオゲームにおける処理について説明する。この実施の形態にかかる３次元ビデオゲームは、上記したように通常のマップ上でのプレイヤキャラクタの移動からバトル処理に移行し、再び通常のマップにおける処理に戻ることを繰り返して行くことにより進行する。もっとも、通常のマップ上をプレイヤキャラクタが移動している場合は、本発明と関係がないので、以下ではバトル処理についてのみを説明していく。プレイヤキャラクタと敵キャラクタとのバトル処理に移行すると、バトル時に特有の仮想カメラ４０１の制御処理と、透視変換処理（バトル時に特有のものではない）とが並行して行われる。
【００５８】
図５は、プレイヤキャラクタと敵キャラクタとのバトル処理を示すフローチャートである。バトル処理においては、制御部１０３は、バトル用のマップ上に３体のプレイヤキャラクタ２０１〜２０３を配置する（ステップＳ１０１）。次に、制御部１０３は、バトルの発生した場所に応じて敵キャラクタの種類と数とを選び、選んだ敵キャラクタをバトル用のマップ上に配置する（ステップＳ１０２）。マップ上に配置したプレイヤキャラクタ２０１〜２０３及び敵キャラクタは、それぞれに定められる一定時間毎に行動可能となる。ここで、プレイヤキャラクタ２０１〜２０３は、先に行動可能となったものが動作を行うまでは行動可能とならないようにしてもよい。
【００５９】
プレイヤキャラクタ２０１〜２０３及び敵キャラクタが配置されると、制御部１０３は、いずれかの敵キャラクタが行動可能となったかどうかを判定する（ステップＳ１０３）。行動可能となった敵キャラクタがある場合には、制御部１０３は、当該キャラクタにさせるべき行動を選択し、選択した行動に応じた動作を行わせる。この動作の結果により必要な場合には、プレイヤキャラクタ２０１〜２０３及び他の敵キャラクタにも所定の動作を行わせる（ステップＳ１０４）。キャラクタの動作には、マップ上における位置の移動も含み、動作前後においてキャラクタの位置が異なるものとなってもよい（後述するステップＳ１０７におい同じ）。そして、ステップＳ１０８の処理に進む。
【００６０】
行動可能となった敵キャラクタがない場合には、制御部１０３は、プレイヤキャラクタ２０１〜２０３のいずれかが行動可能となったかどうかを判定する（ステップＳ１０５）。プレイヤキャラクタ２０１〜２０３に行動可能となったものがなければ、ステップＳ１０３の処理に戻る。行動可能となったものがあれば、制御部１０３は、行動選択部２１１の表示に基づく入力部１６１の操作により、当該行動可能となったプレイヤキャラクタ２０１〜２０３に行動が指示されたかどうかを判定する（ステップＳ１０６）。行動が指示されていなければ、ステップＳ１０３の処理に戻る。
【００６１】
行動が指示された場合には、制御部１０３は、指示された行動に応じた動作を当該プレイヤキャラクタ２０１〜２０３に行わせる。ここでも動作の結果により必要な場合には、敵キャラクタ及びプレイヤキャラクタ２０１〜２０３のうちの他のものにも所定の動作を行わせる（ステップＳ１０７）。そして、ステップＳ１０８の処理に進む。なお、ステップＳ１０４またはＳ１０７において所定のパラメータ（例えばＨＰ）が０となったキャラクタは戦闘不能となり、特に敵キャラクタの場合には、バトル用のマップ上から除外させる。
【００６２】
ステップＳ１０８では、制御部１０３は、全ての敵キャラクタが戦闘不能となり、バトルの結果としてプレイヤキャラクタ２０１〜２０３が敵キャラクタを全滅させたかどうかを判定する。プレイヤキャラクタ２０１〜２０３が敵キャラクタを全滅させていない場合には、制御部１０３は、プレイヤキャラクタ２０１〜２０３の全てが戦闘不能となり、バトルの結果としてプレイヤキャラクタ２０１〜２０３が敵キャラクタに全滅させられたかどうかを判定する（ステップＳ１０９）。プレイヤキャラクタ２０１〜２０３が敵キャラクタに全滅させられていない場合には、ステップＳ１０３の処理に戻る。
【００６３】
ステップＳ１０８においてプレイヤキャラクタ２０１〜２０３が敵キャラクタを全滅させていた場合には、制御部１０３は、所定のバトル勝利処理を行う（ステップＳ１１０）。そして、バトル処理を終了し、通常のマップにおける処理に戻ることとなる。一方、ステップＳ１０９においてプレイヤキャラクタ２０１〜２０３が敵キャラクタに全滅させられていた場合には、ゲームオーバーとなって処理を終了する。
【００６４】
図６は、バトル時における仮想カメラ４０１の制御処理を示すフローチャートである。通常のマップ上をプレイヤキャラクタが移動している場合などバトル時以外においては、このフローチャートとは異なる仮想カメラ４０１の制御処理が行われるものとなる。
【００６５】
バトル時における仮想カメラ４０１の制御処理において、制御部１０３は、バトルに登場している全てのキャラクタ（プレイヤキャラクタ及び敵キャラクタを含む）の中心位置を注視点５００として求める（ステップＳ２０１）。この注視点の座標（Ｘｐ，Ｙｐ，Ｚｐ）は、次の数式１に従って求められる。なお、（Ｘｋ，Ｙｋ，Ｚｋ）は、バトルに登場しているキャラクタのうちのｋ番目のキャラクタの足下の参照点３０１のワールド座標系における座標を示し、バトルに登場するキャラクタがｎ体であるものとする。
【００６６】
【数１】
0003696216.tif 000002
【００６７】
次に、制御部１０３は、ステップＳ１０１で求めた注視点５００を中心として仮想３次元空間内に仮想的な半球を設け、この半球上で、例えば注視点５００を中心とした極座標上で所定の間隔となるように複数の仮ポイントを設定する（ステップＳ２０２）。制御部１０３は、注視点５００と各仮ポイントとを結ぶ各直線上で、仮想カメラ４０１の視角を所定の大きさに設定した場合に、仮想カメラ４０１の視点４０３から仮想３次元空間を透視変換した場合に、仮想スクリーン４０２に全てのキャラクタを投影することができ、注視点５００との間の距離が最短となる位置を求め、これを仮視点位置として決定する。また、注視点５００と仮視点位置との間の距離も求める（ステップＳ２０３）。
【００６８】
ここで、ステップＳ２０１の注視点５００の決定からステップＳ２０３の仮視点位置の決定までを、図７を参照して分かり易く説明する。図７（ａ）に示すように、バトル用のマップ上に６体のキャラクタが存在したとすると、それぞれの位置の中心位置が注視点５００として求められる。次に、図７（ｂ）に示すように、注視点５００を中心とした仮想的な半球５０１が描かれる。半球５０１には、複数の仮ポイント５０２が設定されているが、注視点５００から各仮ポイント５０２までの方向は、予め定められたものとなっている。
【００６９】
次に、図７（ｃ）に示すように、注視点５００と仮ポイント５０２とを結ぶ直線が描かれ、この直線上に仮想カメラ４０１の視点４０３の位置を置いた場合に、全てのキャラクタを仮想スクリーン４０２に投影できる位置であって、注視点５００から最も近い位置が仮視点位置として求められる。ここで、各キャラクタを仮想スクリーン４０２に投影できるかどうかは、キャラクタの全ての特徴点で判断するのではなく、足下の参照点３０１と頭上の参照点３０２との２箇所だけによっている。
【００７０】
上記のようにして仮視点位置が決定されると、制御部１０３は、各仮視点位置について、注視点５００までの距離を評価し、評価結果に応じたポイントを与える距離評価処理を行う（ステップＳ２０４）。この距離評価処理について、図８のフローチャートを参照して詳細に説明する。
【００７１】
距離評価処理では、制御部１０３は、各仮視点位置について注視点５００までの距離が短いものから昇順でソートする（ステップＳ３０１）。次に、制御部１０３は、仮視点位置から注視点５００までの距離が最も長いものと最も短いものとの差を求め、これで距離評価の最高点として与えるポイントα（αは定数）を除算した変化率を算出する（ステップＳ３０２）。
【００７２】
制御部１０３は、注視点５００までの距離が最も短い仮視点位置にポイントとして最高点のαを加算する（ステップＳ３０３）。その後、制御部１０３は、処理対象とする仮視点位置を注視点５００までの距離が２番目に短いものから２番目に長いものまで順次変更していきながら、ループ処理を行う（ステップＳ３０４−Ｓ３０４’）。
【００７３】
このループ処理においては、制御部１０３は、処理対象となっている仮視点位置と注視点５００との間の距離と、仮視点位置の中で注視点５００まで最も短い距離との差を求める。制御部１０３は、この差にステップＳ３０２で求めた変化率を乗じたポイントを処理対象の仮視点位置のポイントとして加算する（ステップＳ３０５）。処理対象となった全ての仮視点位置についてループ処理が終了すると、距離評価処理を終了する。なお、注視点５００までの距離が最も長い仮視点位置は、ループ処理において処理対象とされていないため、距離評価処理において加算されるポイントが０ということになる。
【００７４】
距離評価処理が終了すると、制御部１０３は、図６のフローチャートに戻り、各仮視点位置について、注視点５００と結ぶ直線が現在の仮想カメラ４０１の視点４０３の位置と注視点５００とを結ぶ直線となす角度を評価し、評価結果に応じたポイントを与える角度評価処理を行う（ステップＳ２０５）。この角度評価処理について、図９のフローチャートを参照して詳細に説明する。
【００７５】
角度評価処理では、制御部１０３は、処理対象とする仮視点位置を順次変更していきながら、ループ処理を行う（ステップＳ４０１−Ｓ４０１’）。このループ処理においては、制御部１０３は、注視点５００の位置を中心として、現在の仮想カメラ４０１の視点４０３の位置と処理対象とする仮視点位置とがなす角度θ１を求める（ステップＳ４０２）。制御部１０３は、βcosθ１（βは定数）を求め、これを処理対象の仮視点位置のポイントとして加算する（ステップＳ４０３）。全ての仮視点位置を処理対象としてループ処理が終了すると、角度評価処理を終了する。
【００７６】
角度評価処理が終了すると、制御部１０３は、図６のフローチャートに戻り、各仮視点位置について、透視変換を行った場合に仮想スクリーン４０２上でキャラクタがどの程度重なって表示されるかを評価し、評価結果に応じたポイントを与える重なり評価処理を行う（ステップＳ２０６）。この重なり評価処理について、図１０のフローチャートを参照して詳細に説明する。
【００７７】
重なり評価処理では、制御部１０３は、まず処理対象とする仮視点位置を順次変更していきながら、ループ１処理を行う（ステップＳ５０１−Ｓ５０１’）。ループ１処理においては、制御部１０３は、処理対象の仮視点位置から透視変換を行った場合に最も奥に存在するキャラクタから手前に存在するキャラクタに処理対象を変更していきながら、ループ２処理を行う（ステップＳ５０２−Ｓ５０２’）。ここで、キャラクタが奥にあるかどうかの判断は、各キャラクタの重心の参照点３００だけを視点座標系の座標に変換し、Ｚ’の値の大小のみによって判断することとなる。
【００７８】
ループ２処理では、制御部１０３は、仮視点位置から透視変換を行ったものとした場合に、処理対象のキャラクタの重心以外の参照点３０１〜３０８を仮想スクリーンに投影して多角形を描画する（ステップＳ５０３）。制御部１０３は、描画した多角形が、奥側のキャラクタについて先に描画した多角形に重なる部分の面積（２つ以上の多角形と重なる場合は、それぞれの面積）を求め、当該仮視点位置の重なり面積として加算する（ステップＳ５０４）。全てのキャラクタを処理対象としてループ２処理が終了すると、ループ１処理で処理対象とする仮視点位置が次の仮視点位置となり、全ての仮視点位置を処理対象としてループ１処理が終了すると、重なり面積の評価が行われる。
【００７９】
制御部１０３は、各仮視点位置について求めた重なり面積が小さいものから昇順でソートする（ステップＳ５０５）。次に、制御部１０３は、重なり面積が最も大きいものと最も小さいものとの差を求め、これで重なり評価の最高点として与えるポイントγ（γは定数）を除算した変化率を算出する（ステップＳ５０６）。制御部１０３は、重なり面積が最も小さい仮視点位置にポイントとして最高点のγを加算する（ステップＳ５０７）。その後、制御部１０３は、処理対象とする仮視点位置を重なり面積が２番目に小さいものから２番目に大きいものまで順次変更していきながら、ループ３処理を行う（ステップＳ５０８−Ｓ５０８’）。
【００８０】
このループ３処理においては、制御部１０３は、処理対象となっている仮視点位置についての重なり面積と、仮視点位置の中で最も小さな重なり面積との差を求める。制御部１０３は、この差にステップＳ３０２で求めた変化率を乗じたポイントを処理対象の仮視点位置のポイントとして加算する（ステップＳ５０９）。処理対象となった全ての仮視点位置についてループ３処理が終了すると、重なり評価処理を終了する。なお、重なり面積が最も大きい仮視点位置は、ループ処理において処理対象とされていないため、重なり評価処理において加算されるポイントが０ということになる。
【００８１】
重なり評価処理が終了すると、制御部１０３は、図６のフローチャートに戻り、各仮視点位置について、キャラクタの高さの差に応じて各仮視点位置の高さを評価し、評価結果に応じたポイントを与える高さ評価処理を行う（ステップＳ２０７）。この高さ評価処理について、図１１のフローチャートを参照して詳細に説明する。
【００８２】
高さ評価処理では、制御部１０３は、バトルに登場しているキャラクタの高さの差（最高と最低との差）が所定値以上あるかどうかを判定する（ステップＳ６０１）。高さの差が所定値以上あれば、制御部１０３は、処理対象とする仮視点位置を順次変更していきながら、ループ１処理を行う（ステップＳ６０２−Ｓ６０２’）。高さの差が所定値以上なければ、制御部１０３は、処理対象とする仮視点位置を順次変更していきながら、ループ２処理を行う（ステップＳ６０５−Ｓ６０５’）。
【００８３】
ループ１処理においては、制御部１０３は、処理対象とする仮視点位置と注視点５００とを結ぶ直線が水平面（ワールド座標系のＹ座標が０の面）となす角度θ２を求める（ステップＳ６０３）。制御部１０３は、δcosθ２（δは定数）を求め、これを処理対象の仮視点位置のポイントとして加算する（ステップＳ６０４）。全ての仮視点位置を処理対象としてループ１処理が終了すると、高さ評価処理を終了する。
【００８４】
ループ２処理においては、制御部１０３は、処理対象とする仮視点位置と注視点５００とを結ぶ直線が水平面（ワールド座標系のＹ座標が０の面）となす角度θ２を求める（ステップＳ６０６）。制御部１０３は、δsinθ２（δは定数）を求め、これを処理対象の仮視点位置のポイントとして加算する（ステップＳ６０７）。全ての仮視点位置を処理対象としてループ２処理が終了すると、高さ評価処理を終了する。
【００８５】
高さ評価処理も終了すると、各仮視点位置についてのトータルポイントが求められている。制御部１０３は、トータルポイントが上位４位までとなった仮視点位置を抽出する（ステップＳ２０８）。制御部１０３は、抽出した４つの仮視点位置を仮想カメラ４０１の視点４０３の位置として、１位→２位→３位→４位→１位→…の順番で、順番に選択する。ここで視点４０３の位置として最初に選択されるのは、トータルポイントが１位となった仮視点位置である（ステップＳ２０９）。
【００８６】
仮想カメラ４０１の視点４０３の位置が選択されると、制御部１０３は、バトル用のマップに用意された大きさの範囲内であって、選択された視点４０３の位置が注視点５００及び各キャラクタとの間に障害物が存在しない有効範囲にあるかどうかを判定する（ステップＳ２１０）。選択された視点４０３の位置が有効範囲にあれば、そのままステップＳ２１３の処理に進む。
【００８７】
選択された視点４０３の位置が有効範囲になければ、制御部１０３は、視点４０３の位置を有効範囲に入るまで注視点５００に向けて移動する（ステップＳ２１１）。制御部１０３は、移動後の視点４０３の位置で透視変換を行った場合に、全てのキャラクタが仮想スクリーン４０２上に投影されるように、仮想カメラ４０１の視角４０５を調整する（ステップＳ２１２）。そして、ステップＳ２１３の処理に進む。
【００８８】
ステップＳ２１３では、制御部１０３は、図５のバトル処理が終了したかどうかを判定する。バトル処理が終了していなければ、制御部１０３は、仮想カメラ４０１の視点４０３の位置を決定し直す時間として予め定められた一定時間を経過したかどうかを判定する（ステップＳ２１４）。この一定時間を経過していなければ、制御部１０３は、視点４０３の位置を切り替える時間として予め定められた所定時間を経過したかどうかを判定する（ステップＳ２１５）。この所定時間も経過していなければ、ステップＳ２１３の処理に戻る。
【００８９】
ステップＳ２１５で所定時間を経過していた場合には、ステップＳ２０９の処理に戻り、制御部１０３は、次の仮視点位置を仮想カメラ４０１の視点４０３の位置として選択し直す。ステップＳ２１４で一定時間を経過していた場合には、ステップＳ２０１の処理に戻り、制御部１０３は、注視点５００の位置の決定から処理をやり直す。また、ステップＳ２１３でバトル処理が終了していた場合には、このフローチャートの処理を終了する。この場合には、このフローチャートとは異なる仮想カメラ４０１の制御処理に移行されるものとなる。
【００９０】
また、上記したバトル処理及び仮想カメラ４０１の制御処理と並行して、１フレーム期間毎に発生するタイマ割り込みにより、透視変換処理が行われる。図１２は、この透視変換処理を示すフローチャートである。この透視変換処理は、ゲームの進行状態がバトル中であるかどうかに関わらず同じ処理が行われる。なお、透視変換処理に要する処理量によっては、透視変換処理は２フレーム期間毎に行うものとし、２フレームの期間だけ同じ画像を表示画面１２２に表示させるものとしてもよい。
【００９１】
図１２（ａ）に示すように、制御部１０３は、まず、各キャラクタの特徴点のローカル座標系での座標を、全てワールド座標系での座標に変換する（ステップＳ７０１）。次に、制御部１０３は、視点４０３のワールド座標系での座標と、視軸４０４の向きとに従って、透視変換される範囲に含まれるキャラクタ及びマップを構成する各面を構成する点の座標を、視点座標系の座標に変換する（ステップＳ７０２）。
【００９２】
制御部１０３は、視点座標系に変換した各面を構成する点の座標をグラフィック処理部１１１に送り、グラフィック処理部１１１に描画命令を出力する（ステップＳ７０３）。この描画命令の出力により、透視変換のために制御部１０３が行う処理は終了となる。仮想スクリーン４０２に投影される画像を描画し、ビデオ信号として表示装置１２２に出力するための処理は、グラフィック処理部１１１によって行われる。
【００９３】
図１２（ｂ）に示すように、グラフィック処理部１１１は、描画命令と共に受け取った視点座標系の座標に基づいて、後面側から前面側に処理対象となるポリゴンを変更していきながらループ処理を行う（ステップＳ７５１−Ｓ７５１’）。ループ処理においては、グラフィック処理部１１１は、前側にある点（Ｚ’座標の小さな点）のデータ（Ｚ’の値）が残るようにＺバッファの内容を更新する（ステップＳ７５２）。Ｚバッファの内容を更新した場合には、グラフィック処理部１１１は、当該点についての画像データをフレームメモリ１１２に展開する。グラフィック処理部１１１は、展開される画像データに対してシェーディングやテクスチャマッピングなどの処理も行っている（ステップＳ７５３）。
【００９４】
全てのポリゴンについての処理が終了すると、ループ処理を抜け、グラフィック処理部１１１は、フレームメモリ１１２に展開された画像データを順次読み出し、同期信号を付加してビデオ信号を生成し、表示装置１２１に出力する（ステップＳ７５４）。これでグラフィック処理部１１１による処理も終了となる。表示装置１２１は、グラフィック処理部１１１から出力されたビデオ信号に対応した画像を表示画面１２２の表示画面に表示する。１フレーム時間毎に表示画面１２２が切り替えられていくことで、プレイヤは、プレイヤキャラクタ２０１〜２０３と敵キャラクタとのバトルが行われている画像を見ることができるようになる。
【００９５】
以下、この実施の形態にかかる３次元ビデオゲームにおいて、バトル時におけるキャラクタの位置及び種類に応じて、仮想カメラ４０１の視点４０３の位置を移動することによって生じる表示画面１２２の変化について、具体的な例に基づいて説明する。図１３（ａ）〜（ｃ）は、キャラクタの位置及び種類に応じた表示画面１２２の例を示す図である。
【００９６】
図１３（ａ）及び（ｂ）は、同じ回のバトルにおける表示画面１２２を示すものであるが、バトルの進行に伴ってプレイヤキャラクタ２０１〜２０３及び敵キャラクタ２０４〜２０６の位置が変化している。これに伴って、仮想カメラ４０１の視点４０３の位置も変更されるので、図に示すような表示画面１２２の変化が現れる。
【００９７】
また、図１３（ａ）及び（ｂ）では、敵キャラクタ２０４〜２０６の高さは、プレイヤキャラクタ２０１〜２０３の高さとあまり変わらず、高い位置にある仮視点位置に高いポイントが与えられるので、比較的高い位置に仮想カメラ４０１の視点４０３の位置を設定した画像が表示されていることが分かる。これに対して、別の回のバトルを示した図１３（ｃ）では、敵キャラクタ２０７、２０８の高さがプレイヤキャラクタ２０１〜２０３の高さと大きく異なり、低い位置にある仮視点位置に高いポイントが与えられるので、比較的低い位置に仮想カメラ４０１の視点４０３の位置を設定した画像が表示されていることが分かる。
【００９８】
以上説明したように、この実施の形態にかかる３次元ビデオゲームでは、バトルの進行と共にキャラクタの位置が変化していくが、このキャラクタの位置の変化に応じて仮想カメラ４０１の視点４０３の位置が求められる。このため、常に適した位置にある仮想カメラ４０１により透視変換を行った画像が、表示画面１２２に表示されるようになる。
【００９９】
仮想カメラ４０１の視点４０３は、全てのキャラクタを仮想スクリーン４０２に投影できる位置として決定された仮視点位置の中から選ばれるので、表示画面１２２に全てのキャラクタを配置することができるようになる。しかも、仮想カメラ４０１の視軸４０４は、常に仮視点位置を決定する基準となる注視点５００を向くようになっている。このため、表示画面１２２上において、バトルに登場している全てのキャラクタをバランスよく配置することができるようになる。
【０１００】
仮想カメラ４０１の視点４０３の位置を選択するための各仮視点位置の評価は、距離評価処理、角度評価処理、重なり評価処理及び高さ評価処理の４つで行われている。距離評価処理では、注視点５００までの距離が短い仮視点位置ほど高いポイントが加算されることとなるので、表示画面１２２に表示されるキャラクタのサイズを大きくすることができる。角度評価処理では、現在の仮想カメラ４０１の視点４０３の位置から注視点５００を中心とした角度が小さい仮視点位置ほど高いポイントが加算されることとなるので、視点４０３の移動量を小さくすることができ、表示画面１２２の変化に違和感が生じないようにすることができる。
【０１０１】
重なり評価処理では、キャラクタの重なり面積が小さい仮視点位置ほど高いポイントが与えられるので、表示画面１２２上においてプレイヤが個々のキャラクタを見易くすることができる。重なり評価処理でキャラクタの重なり面積を求めるための処理は、簡易な方法の適用で処理量を抑えることができるようになっている。もっとも、ここで求める重なり面積は、単に仮想カメラ４０１の視点４０３の位置を決定するだけのために用いられるので、簡易な方法で正確な値が求められなくても、実用上の問題が生じることがない。
【０１０２】
高さ評価処理では、バトルに登場しているキャラクタの高さの差に応じて、角度的に高い位置にある仮視点位置ほど高いポイントが加算されたり、角度的に低い位置にある仮視点位置ほど低いポイントが加算されたりする。このため、表示画面１２２上において、プレイヤがキャラクタの大きさを認識しやすくする画像を表示させるようにすることができる。
【０１０３】
バトル用のマップには、仮想カメラ４０１の視点４０３の位置を移動できる有効範囲が設定されており、これを越えると正確に透視変換を行うことができなくなる。もっとも、このような場合には、仮想カメラ４０１の視点４０３の位置を注視点５００の方向に移動すると共に、全てのキャラクタを仮想スクリーン４０３に投影できるように視角４０５も調整しているので、有効範囲外の位置でも仮視点位置として設定して、評価を行うことができる。有効範囲外の仮視点位置のトータルポイントが高くなっても、実質的に有効範囲外の仮視点位置に仮想カメラ４０１の視点４０３を置いたのと変わらない画面を生成することができる。
【０１０４】
距離評価処理、角度評価処理、重なり評価処理及び高さ評価処理により仮視点位置のトータルポイントが算出されるが、仮想カメラ４０１の視点４０３を移動すべき位置としては、トータルポイントが上位４位までの仮視点位置が選択される。仮想カメラ４０１の視点４０３の位置は、選択された４つの仮視点位置で所定時間毎に切り替えて移動される。このため、表示画面１２２に表示される画像を変化に富んだものとすることができる。
【０１０５】
この実施の形態にかかる３次元ビデオゲームでは、バトルにおいてキャラクタの位置が次々に変化していく。バトルの時間が長くなれば、キャラクタの位置がバトルの開始時とは大きく異なる場合が生じてくる。もっとも、バトルの時間が長くなってキャラクタの位置が大きく変化することになっても、仮想カメラ４０１の視点４０３の位置は一定時間毎に新たに決定されることとなるので、仮想カメラ４０１の視点４０３の位置を適切な位置とすることができる。
【０１０６】
本発明は、上記の実施の形態に限られず、種々の変形、応用が可能である。以下、本発明に適用可能な上記の実施の形態の変形態様について説明する。
【０１０７】
上記の実施の形態では、角度評価処理において、各仮視点位置のポイントを求める際に、各仮視点位置と注視点５００と結ぶ直線が現在の仮想カメラ４０１の視点４０３の位置と注視点５００とを結ぶ直線となす角度θ１が求められていた。また、高さ評価処理において、各仮視点位置と注視点５００とを結ぶ直線が水平面となす角度θ２が求められていた。
【０１０８】
しかしながら、各仮視点位置を評価したポイントを求めるまでに使用する演算式によっては、角度そのものの値を示すθ１、θ２が求められることがなくてもよい。これらの正弦値、余弦値または正接値などの角度に応じて一義的に特定される数値が演算途中で求められ、最終的なポイントが求められる場合には、正弦値、余弦値または正接値などの角度に応じて一義的に特定される数値を求めることが、実質的に角度を求めていることと変わりがないからである。
【０１０９】
上記の実施の形態では、仮想カメラ４０１の視点４０３の位置としてトータルポイントが４位までとなった仮視点位置が選択されていたが、これらは所定時間毎に自動的に切り替えられるものとなっていた。これに対して、トータルポイントが高い仮視点位置ほど視点４０３の位置が置かれている時間が長くなるように、仮想カメラ４０１の視点４０３の位置を切り替えてもよい。
【０１１０】
また、プレイヤが入力部１６１から所定の操作入力を行う度に、制御部１０３は、トータルポイントが４位までとなった仮視点位置に順次切り替えて、順次仮想カメラ４０１の視点４０３の位置を移動していくものとしてもよい。これにより、プレイヤは、ゲームの進行状態を示す画像として自分の好みに応じた画像を表示装置１２１に表示させることができるので、ゲームを進行し易くすることができる。
【０１１１】
さらに、プレイヤが入力部１６１から所定の操作入力を行うことによって、制御部１０３は、トータルポイントに関わらず仮想カメラ４０１の視点４０３の位置を移動させることができるようにしてもよい。この場合において、仮想カメラ４０１の視点４０３は、注視点５００を基準として選ばれる仮視点位置（トータルポイントの大小を問わない）だけに移動できるものとしてもよい。仮想カメラ４０１の視点４０３は、仮視点位置に関わらず、有効範囲内の全ての位置に移動できるものとしてもよい。このように仮想カメラ４０１の視点４０３の位置を自由に移動できるようにすることで、プレイヤは、自分の好みに合わせた表示画面１２２に従ってゲームを進行させることができる。
【０１１２】
上記の実施の形態では、バトル処理において一定時間が経過する度に注視点５００を基準として選ばれる各仮視点位置についてのトータルポイントが求められ、仮想カメラ４０１の視点４０３の位置が決定されるものとしていた。これに対して、プレイヤキャラクタ２０１〜２０３のうちで新たに行動可能となったものが生じる都度、バトル処理において一定時間が経過する度に注視点５００を基準として選ばれる各仮視点位置についてのトータルポイントが求められ、仮想カメラ４０１の視点４０３の位置が決定されるものとしてもよい。この場合、プレイヤは、現在の状況に最も適した位置にある視点４０３から透視変換を行った表示画面１２２を見て、行動可能となったプレイヤキャラクタ２０１〜２０３に行動を指示することができるようになる。
【０１１３】
上記の実施の形態では、注視点５００は、バトルに登場している全てのキャラクタ（プレイヤキャラクタ及び敵キャラクタを含む）の位置の単純な中心位置に設定されるものとしていた。これに対して、キャラクタの大きさはバトルにおける重要度にバラツキがある場合には、そのバラツキに応じて各キャラクタの位置に重み付けを行い、注視点５００の位置を求めるものとしてもよい。また、バトルにおいて一定時間戦闘不能になっているキャラクタなど、表示画面１２２上に映し出されなくてもゲームの進行に特に影響がないキャラクタもあり得る。そこで、このようなキャラクタは、注視点５００を求めるための対象から除外してもよい。
【０１１４】
さらに、このようなキャラクタは、注視点５００と仮ポイントとを結ぶ直線上で仮視点位置を選ぶ場合においても、仮想スクリーン４０２に映し出されなければならない対象としてのキャラクタから除外してもよい。これにより、仮想カメラ４０１の視点４０３の位置として、バトルの状況に応じてより適切な位置を選ぶことができるようになる。
【０１１５】
上記の実施の形態では、注視点５００を基準として選ばれた各仮視点位置について、距離評価処理、角度評価処理、重なり評価処理及び高さ評価処理のそれぞれでポイントが加算され、トータルポイントが求められるものとしていた。しかしながら、各仮視点位置のトータルポイントの算出のために少なくとも距離評価処理を適用するのであれば、角度評価処理、重なり評価処理及び高さ評価処理を適用するかどうかは任意に選ぶことができる。また、これら以外の方法で各仮視点位置を評価したポイントをさらに加算して、各仮視点位置のトータルポイントを求めるものとしてもよい。
【０１１６】
上記の実施の形態では、通常のゲームの進行の過程から移行したプレイヤキャラクタと敵キャラクタとのバトルにおいて、その映像を映し出すために本発明を適用した場合について説明した。しかしながら、本発明は、仮想３次元空間内において複数のキャラクタが存在し、そのうち少なくとも１つが移動することとなる３次元ビデオゲーム全般に適用することができる。なお、キャラクタとは、上記したような人間や動物、ロボットなどの形象をしたものに限られず、ゲームの進行に関わり、仮想３次元空間内で移動可能としたオブジェクト全般（例えば、自動車や飛行機等）を含むことができる。
【０１１７】
上記の実施の形態では、３次元ビデオゲームを実行するためのプラットフォームとして専用機であるビデオゲーム装置１００を適用していた。これに対して、ビデオゲーム本体１０１と同様の構成要素を備えるのであれば、汎用のパーソナルコンピュータなどを適用してもよい。また、表示装置１２１及びサウンド出力装置１２５をビデオゲーム本体１０１と同一の筐体内に納めた構成を有する携帯ゲーム機を適用するものとしてもよい。
【０１１８】
携帯ゲーム機の場合は、記録媒体１３１として、ＤＶＤ−ＲＯＭやＣＤ−ＲＯＭの代わりに半導体メモリカードを適用することができる。携帯ゲーム機には、このメモリカードを挿入するためのカードスロットをＤＶＤ／ＣＤ−ＲＯＭドライブ１１３の代わりに設けることができる。汎用のパーソナルコンピュータの場合には、本発明に係るプログラム及びデータを記録媒体１３１に格納して提供するのではなく、ＨＤＤ１０７に予め格納して提供してもよい。本発明にかかるプログラム及びデータを格納して提供するための記録媒体は、ハードウェアの物理的形態及び流通形態に応じて任意のものを適用することができる。
【０１１９】
上記の実施の形態では、ビデオゲーム装置１００のプログラム及びデータは、記録媒体１３１に格納されて配布されるものとしていた。これに対して、これらのプログラム及びデータをネットワーク１５１上に存在するサーバ装置が有する固定ディスク装置に格納しておき、ビデオゲーム本体１０１にネットワーク１５１を介して配信するものとしてもよい。ビデオゲーム装置１００において、通信インターフェイス１１５がサーバ装置から受信したプログラム及びデータは、ＨＤＤ１０７に保存し、実行時にＲＡＭ１０５にロードすることができる。
【０１２０】
【発明の効果】
以上説明したように、本発明によれば、少なくとも１のキャラクタの移動に伴って仮想カメラの視点の位置を適切な位置に移動し、仮想３次元空間を透視変換することができる。
【図面の簡単な説明】
【図１】本発明の実施の形態に適用されるビデオゲーム装置の構成を示すブロック図である。
【図２】本発明の実施の形態にかかるビデオゲームにおいて、バトル時における表示画面の例を示す図である。
【図３】バトル時において登場するキャラクタに設定される参照点を示す図である。
【図４】仮想３次元空間を透視変換して表示するための処理を模式的に示す図である。
【図５】プレイヤキャラクタと敵キャラクタとのバトル処理を示すフローチャートである。
【図６】バトル時における仮想カメラの制御処理を示すフローチャートである。
【図７】図６のフローチャートにおいて、注視点の決定から仮視点位置の決定までを説明する図である。
【図８】図６の距離評価処理を詳細に示すフローチャートである。
【図９】図６の角度評価処理を詳細に示すフローチャートである。
【図１０】図６の重なり評価処理を詳細に示すフローチャートである。
【図１１】図６の高さ評価処理を詳細に示すフローチャートである。
【図１２】仮想３次元空間を透視変換して表示画面を生成するための処理を示すフローチャートである。
【図１３】バトル時におけるキャラクタの位置及び種類に応じて仮想カメラの視点の位置を移動することによる表示画面の変化を説明する図である。
【符号の説明】
１００  ビデオゲーム装置
１０１  ビデオゲーム本体
１０３  制御部
１０５  ＲＡＭ
１０７  ＨＤＤ
１０９  サウンド処理部
１１１  グラフィック処理部
１１３  ＤＶＤ／ＣＤ−ＲＯＭドライブ
１１５  通信インターフェイス
１１７  インターフェイス部
１１９  内部バス
１２１  表示装置
１２２  表示画面
１２５  サウンド出力装置
１３１  記録媒体
１５１  ネットワーク
１６１  入力部
１６２  メモリーカード
２０１〜２０８  キャラクタ
３００〜３０８  参照点
４０１  仮想カメラ
４０２  仮想スクリーン
４０３  視点
４０４  視軸
４０５  視角
５００  注視点
【図１】
0003696216.tif 000003
【図２】
0003696216.tif 000004
【図３】
0003696216.tif 000005
【図４】
0003696216.tif 000006
【図５】
0003696216.tif 000007
【図６】
0003696216.tif 000008
【図７】
0003696216.tif 000009
【図８】
0003696216.tif 000010
【図９】
0003696216.tif 000011
【図１０】
0003696216.tif 000012
【図１１】
0003696216.tif 000013
【図１２】
0003696216.tif 000014
【図１３】
0003696216.tif 000015