JP3583994B2 - Entertainment device, storage medium, and object display method - Google Patents
Entertainment device, storage medium, and object display method Download PDFInfo
- Publication number
- JP3583994B2 JP3583994B2 JP2001012277A JP2001012277A JP3583994B2 JP 3583994 B2 JP3583994 B2 JP 3583994B2 JP 2001012277 A JP2001012277 A JP 2001012277A JP 2001012277 A JP2001012277 A JP 2001012277A JP 3583994 B2 JP3583994 B2 JP 3583994B2
- Authority
- JP
- Japan
- Prior art keywords
- camera
- virtual camera
- virtual
- calculated
- target object
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Processing Or Creating Images (AREA)
Description
【0001】
【発明の属する技術分野】
本発明は、操作装置を介して受け付けた利用者の操作内容にしたがい仮想的な3次元世界中を移動するオブジェクトを、仮想的なカメラで撮影することで得られる動画像を作成し、表示装置の表示画面上に表示する技術に関する。
【0002】
【従来の技術】
近年、3次元グラフィックアニメーションを利用して、フライトシミュレーションやドライブシミュレーションなどを行うことが可能な、テレビゲーム機などのエンタテインメント装置が普及している。
【0003】
この種のエンタテインメント装置では、操作者は、当該装置に接続された操作装置を使用して、飛行機、自動車などを表すオブジェクトを操作し、仮想的な3次元世界中を移動させることができる。当該エンタテインメント装置は、この3次元世界中を移動するオブジェクトを仮想的なカメラで撮影することで得られる動画像を生成し、当該装置に接続された表示装置の表示画面に表示する。
【0004】
ところで、従来のフライトシミュレーションやドライブシミュレーションなどを行うことが可能なエンタテイメント装置では、仮想的なカメラをオブジェクトとの相対的な位置関係で一義的(固定的)に定まる位置に設定している。
【0005】
図15は、従来のこの種のエンタテイメント装置におけるオブジェクト(飛行機を表すオブジェクト)901と仮想的なカメラ902との位置関係を説明するための図である。ここで、図15(a)は、3次元世界中に配置されたオブジェクト901と仮想的なカメラ902を、真上(Z軸の無限遠方)から見下ろした様子を示しており、図15(b)は、3次元世界中に配置されたオブジェクト901と仮想的なカメラ902を、真横(X軸の無限遠方)から見た様子を示している。なお、これらの図では3次元世界中に配置された地図構成要素の図示を省略している。
【0006】
図示するように、従来のフライトシミュレーションやドライブシミュレーションなどを行うことが可能なエンタテイメント装置では、たとえば、オブジェクト901を通過する、当該オブジェクト901の移動方向に沿った線903において、オブジェクト901から所定距離Lだけ後方の位置より所定距離Hだけ上方の位置(カメラ設置点A)や、オブジェクト901の位置(カメラ設置点B)に、仮想的なカメラ902を設置し、当該カメラ902が、当該オブジェクト901より前方の線903上の任意の点を向くように、当該カメラの視線方向を設定している。
【0007】
図16は、図15に示すようにして配置された仮想的なカメラ902からオブジェクト901を撮影した場合に得られる映像を示した図である。ここで、図16(a)は、図15において仮想的なカメラ902をカメラ設置点Aに設定した場合に、当該カメラ902により得られる映像の一例を示しており、図16(b)は、図15において仮想的なカメラ902をカメラ設置点Bに設定した場合に、当該カメラ902により得られる映像の一例を示している。
【0008】
【発明が解決しようとする課題】
さて、上述したように、従来のフライトシミュレーションやドライブシミュレーションなどを行うことが可能なエンタテイメント装置では、仮想的なカメラをオブジェクトとの相対的な位置関係で一義的(固定的)に定まる位置に設定しているため、以下のような問題が生ずる。
【0009】
すなわち、オブジェクトの飛行/走行状態(直進か旋回かなど)に関わらず、当該オブジェクトの表示画面上の表示位置や姿勢が常に同じとなり、当該状態は、当該オブジェクト周辺に表示される地形の移動として現れることになる。このため、操作装置を介して受け付けた操作者の操作内容を、表示画面上のオブジェクトの表示位置や姿勢に反映させることができず、オブジェクトを操作する楽しみを十分に享受することができない。
【0010】
そこで、本発明は、仮想的な3次元世界中を移動するオブジェクトを仮想的なカメラで撮影することで得られる動画像を、表示装置の表示画面上に表示するエンタテインメント装置において、表示装置の表示画面に表示された動画像から、3次元世界中におけるオブジェクトの振る舞いをより把握できるようにすることを課題とする。
【0011】
また、フライトシミュレーションやドライブシミュレーションなどの、操作者が操作装置を用いて仮想的な3次元世界中を移動するオブジェクトを操作することのできるエンタテイメント装置において、オブジェクトを操作する楽しみを十分に享受できるようにすることを課題とする。具体的には、操作者が行ったオブジェクトへの操作内容が表示画面上のオブジェクトに反映されるようにする。
【0012】
【課題を解決するための手段】
前記課題達成のために、本発明では、仮想的な3次元世界中を移動するオブジェクト(たとえば飛行機や自動車を表すオブジェクト)を仮想的なカメラで撮影することで得られる動画像を作成し、表示装置の表示画面上に表示するエンタテインメント装置において、前記オブジェクトの前記3次元世界中における位置および移動方向を逐次計算し、当該オブジェクトの位置および移動方向が算出される毎に、前記3次元世界中における前記仮想的なカメラの設置位置を、少なくとも1つ前に算出した当該仮想的なカメラの設置位置を考慮して決定する。
【0013】
たとえば、新たに算出したオブジェクトの位置を通り、新たに算出したオブジェクトの移動方向に平行な線上の、当該オブジェクトの位置から距離Kだけ後方の位置より所定値Hだけ上方の位置に、カメラ追跡点を設定し、少なくとも1つ前に算出した仮想的なカメラの設置位置から当該カメラ追跡点へ近づく位置(たとえば、カメラ追跡点および少なくとも1つ前に算出した仮想的なカメラの設置位置間の距離Lを、所定値Mで割ることで得られる距離L/Mだけ、前記少なくとも1つ前に算出した仮想的なカメラの設置位置から前記カメラ追跡点に近づく位置)に、当該仮想的なカメラの設置位置を設定する。
【0014】
このようにすれば、仮想的なカメラの配置位置に、過去の仮想的なカメラの配置位置が考慮されるため、仮想的なカメラは、オブジェクトの動きに対し、少し遅れてオブジェクトの後ろを追従するように振舞う。このため、オブジェクトの仮想的な3次元世界中における振る舞いを、表示画面を通して把握することが容易となる。したがって、操作者が、本発明のエンタテインメント装置に接続された操作装置を用いて前記オブジェクトを操作した場合、操作者は、自身が操作したオブジェクトの仮想的な3次元世界中における振る舞いを、表示画面を通して把握することが容易となる。また、臨場感が増し、娯楽性が向上する。
【0015】
なお、上記の例において、距離Kは、オブジェクトの移動速度が大きくなるほど短くなるように設定してもよい。このようにすれば、より臨場感が増し、娯楽性が向上する。ただし、この場合、オブジェクトの移動速度が大きくなるほどカメラ追跡点が当該オブジェクトに近づくけれども、カメラ設置点は、オブジェクトの移動速度が大きくなるほど、当該オブジェクトから遠ざかるように、つまり、オブジェクトの移動方向に対してより後方へ移動するように、距離Kを設定することが好ましい。
【0016】
現実の世界において、自動車を運転したり飛行機を操縦する場合、移動速度を上げれば、通常、より広い範囲で遠方まで、周囲に注意を払う必要が生ずる。上記のようにすることで、これと同様、操作者が、操作装置を用いて前記オブジェクトの移動速度を上げた場合、移動速度の増加分に応じて、前記仮想的なカメラに収められる(つまり表示装置の表示画面に表示される)オブジェクト周囲の映像が広くなる。したがって、オブジェクトの移動速度を上げたときの操作性を改善できる。
【0017】
また、本発明において、新たに算出したオブジェクトの位置を通り、新たに算出したオブジェクトの移動方向に平行な線上の、当該オブジェクトの位置から距離Jだけ前方の位置に、カメラ参照点を設定し、仮想的なカメラが、当該カメラ参照点を向くように視線方向を設定してもよい。そして、距離Jを、3次元世界中におけるオブジェクトの移動速度が大きくなるほど長くなるように設定してもよい。
【0018】
このようにすれば、操作装置を用いてオブジェクトの移動速度を上げた場合、移動速度の増加分に応じて、前記仮想的なカメラに収められる(つまり表示装置の表示画面に表示される)オブジェクト周囲の映像がより遠方にまで広がる。したがって、オブジェクトの移動速度を上げたときの操作性を改善できる。
【0019】
さらにまた、本発明において、オブジェクトの移動方向を軸とした回動に応じて、仮想的なカメラを視線方向を軸として回動させるようにしてもよい。このようにすれば、より臨場感が増し、娯楽性が向上する。
【0020】
【発明の実施の形態】
以下、本発明の一実施形態について説明する。
【0021】
まず、本発明の一実施形態に係るエンタテインメント装置のハードウエア構成について説明する。
【0022】
図1に本発明の一実施形態に係るエンタテインメント装置の外観を示す。
【0023】
このエンタテインメント装置は、たとえば、CD−ROMやDVD−ROMの光ディスク等に記憶されているゲームプログラムを読み出して、操作者(プレイヤ)からの指示に応じて実行するものである。なお、ゲームの実行とは、主として、プレイヤからの指示に応じて、このエンタテインメント装置に接続された表示装置(テレビなど)の表示画面上に表示されている操作対象オブジェクト(たとえば、飛行機や自動車などを表すオブジェクト)を動かし、これに伴い動画像の表示や音声を制御して、ゲームを進行することをいう。
【0024】
図示するように、エンタテインメント装置1の本体2は、その中央部にテレビゲーム等のアプリケーションプログラムやマルチメディアデータを供給するための記録媒体であるCD−ROMやDVD−ROM等の光ティスクが装着されるディスク装着部3と、ゲームをリセットするためのリセットスイッチ4と、電源スイッチ5と、光ディスクの装着を操作するためのディスク操作スイッチ6と、たとえば2つのスロット部7A、7Bと、を備えている。
【0025】
スロット部7A、7Bには、2つの操作装置20を接続することができ、2人のプレイヤが対戦ゲームや競争ゲームなどを行うことができる。また、このスロット部7A、7Bには、ゲームデータをセーブ(記憶)したり、読み出すことができるメモリカード装置26や、本体2と切り離してゲームを実行できる携帯用電子機器100を装着することができる。
【0026】
操作装置20は、第1、第2の操作部21、22と、Lボタン23Lと、Rボタン23Rと、スタートボタン24と、選択ボタン25を有し、さらに、アナログ操作が可能なアナログ操作部31、32と、これら操作部31、32の操作モードを選択するモード選択スイッチ33と、選択された操作モードを表示するための表示部34を有している。
【0027】
アナログ操作部31、32は、図2に示すように、所定の支点aを通る所定の軸bに対し、支点aを中心にして傾倒可能に且つ傾倒した状態で回転可能に構成された操作軸31a、32aを有する。操作装置20は、操作軸31a、32aの軸bに対する傾きとその傾き方向を検知し、これらから定まるX−Y座標上の座標値に応じた信号を出力する。この座標値は、図3に示すように、Y(垂直)方向の値は操作軸31a、32aの上下方向の傾きに応じて「0」〜「255」の256段階の値で表現され、X(水平)方向の値は、操作軸31a、32aの左右方向の傾きに応じて「0」〜「255」の256段階の値で表現される。
【0028】
次に、図4に、エンタテインメント装置1の構成を示す。
【0029】
図示するように、このエンタテインメント装置1は、中央処理装置(CPU:CentRal Processing Unit)51およびその周辺装置等からなる制御系50と、フレームバッファ63に描画を行なう画像処理装置(GPU:Graphic Processing Unit)62等からなるグラフィックシステム60と、楽音・効果音等のオーディオ信号を生成する音声処理装置(SPU:Soud Processing Unit)71等からなるサウンドシステム70と、アプリケーションプログラムやマルチメディアデータが記録されている光ディスクの制御を行なう光ディスク制御部80と、プレイヤからの指示が入カされる操作装置20からの信号およびゲームの設定等を記憶するメモリカード26や携帯用電子機器100からのデータの入出力を制御する通信制御部90と、上記の各部が接続されているバスBUS等を備えている。
【0030】
制御系50は、CPU51と、割り込み制御やダイレクトメモリアクセス(DMA:Direct Memory Access)転送の制御等を行なう周辺装置制御部52と、ランダムアクセスメモリ(RAM:Random Access Memory)からなるメインメモリ(主記憶装置)53と、メインメモリ53やグラフィックシステム60やサウンドシステム70等の管理を行なう、いわゆるオペレーティングシステム等のプログラムが格納されたリードオンリーメモリ(ROM:Read Only Memory)54と、を備えている。
【0031】
CPU51は、ROM54に記録されているオペレーティングシステムを実行することにより、このエンタテインメント装置1の全体を制御するもので、たとえばRISC−CPUからなる。
【0032】
そして、このエンタテインメント装置1は、電源が投入されると、制御系50のCPU51がROM54に記憶されているオペレーティングシステムを実行する。これにより、CPU51が、グラフィックシステム60やサウンドシステム70等の制御を行なうようになっている。
【0033】
また、オペレーティングシステムが実行されると、CPU51は、動作確認等のエンタテインメント装置1全体の初期化を行った後、光ディスク制御部80を制御して、光ディスクに記録されているゲーム等のアプリケーションプログラムを実行する。このゲーム等のプログラムの実行により、CPU51は、プレイヤからの入力に応じてグラフィックシスデム60やサウンドシステム70等を制御して、画像の表示や効果音・楽音の発生を制御する。
【0034】
また、グラフィックシステム60は、座標変換等の処理を行なうジオメトリトランスファエンジン(GTE:Geometry Transfer Engine)61と、CPU51からの描画指示に従って描画を行なうGPU62と、このGPU62により描画された画像を記憶するフレームバッファ63と、離散コサイン変換等の直交変換により圧緒されて符号化された画像データを復号する画像デコーダ64とを備えている。
【0035】
GTE61は、たとえば複数の演算を並列に実行する並列演算機構を備え、座標変換などの行列あるいはベクトル等の演算を行なう。具体的には、このGTE61は、たとえば、光ディスクに記録されているゲーム等のアプリケーションプログラムがいわゆる3Dグラフィックを利用する場合に、三角形状のポリゴンの集合で仮想的な3次元オブジェクトを構成する。そして、この3次元オブジェクトを仮想的なカメラで撮影することにより得られる画像を生成するための諸計算、すなわち、レンダリングを行う場合における透視変換(3次元オブジェクトを構成する各ポリゴンの頂点を仮想的なカメラスクリーン上に投影した場合における座標値の計算)などを行う。
【0036】
次に、GPU62は、CPU51からの命令に従って、必要に応じてGTE61を利用しながら、フレームバッファ63に対して3次元オブジェクトのレンダリングを行って、画像を作成する。そして、作成した画像を表すビデオ信号を出力する。なお、レンダリングに用いる隠線、隠面消去の手法としては、Zバッファ法、スキャンライン法、レイトレーシング法などを使用する。陰影付けを行うシェーディングの手法としては、フラットシェーディング、グーローシェーディング、レイトレーシング法などを使用する。また、3次元オブジェクトの表面の表面材質や模様を表現する手法としてはテクスチャマッピングなどを使用する。
【0037】
次に、フレームバッファ63は、いわゆるデュアルポートRAMからなり、GPU62のレンダリングあるいはメインメモリからの転送と、表示のための読み出しとを同時に行なうことができるようになっている。また、このフレームバッファ63には、レンダリング、表示のための読み出しが行われる画像領域の他に、前記テクスチャマッピングなどに用いられるテクスチャが記憶されるテクスチヤ領域が設けられている。
【0038】
次に、画像デコーダ64は、CPU51からの制御により、メインメモリ53に記憶されている静止画あるいは動画の画像データを復号して、メインメモリ53に記憶する。また、この再生された画像データは、GPU62を介してフレームバッファ63に記憶することにより、上述のGPU62によってレンダリングされる画像の背景として使用することができるようになっている。
【0039】
次に、サウントシステム70は、CPU51からの指示に基づいて、楽音・効果音等のオーディオ信号を出力するSPU71と、このSPU71により波形データ等が記録されるサウンドバッファ72を備えている。
【0040】
SPU71は、適応予測符号化(ADPCM:Adaptive Differential PCM)された音声データを再生するADPCM復号機能と、サウンドバッファ72に記憶されている波形データを再生することにより、効果音等のオーディオ信号を再生し出力する再生機能と、サウンドバッファ72に記憶されている波形データを変調させて再生する変調機能等を備えている。このような機能を備えることによって、このサウンドシステム70は、CPU51からの指示によりサウンドバッファ72に記憶された波形データに基づき楽音・効果音等のオーディオ信号を発生する、いわゆるサンプリング音源として使用することができるように構成されている。
【0041】
次に、光ディスク制御部80は、光ディスクに記録されたプログラムやデータ等を再生する光ディスク装置81と、例えばエラー訂正符号(ECC:Error Correction Code)が付加されて記録されているプログラムやデータ等を復号するデコーダ82と、光ディスク装置81からのデータを一時的に記憶することにより、光ディスクからのデータの読み出しを高速化するバッファ83を備えている。デコーダ82には、サブCPU84が接続されている。
【0042】
なお、光ティスク装置81で読み出される、光ディスクに記録されている音声データとしては、上述のADPCMデータの他にオーディオ信号をアナログ/デジタル変換したいわゆるPCMデータがある。ADPCMデータは、デコーダ82で復号された後、上述のSPU71に供拾され、SPU71でデジタル/アナログ変換等の処理が施された後、このエンタテインメント装置1に接続されたオーディオ機器などの音響装置から楽音・効果音等として出力される。また、PCMデータは、SPU71でデジタル/アナログ変換等の処理が施された後、同様に、音響装置から楽音・効果音等として出力される。
【0043】
次に、通信制御部90は、バスBUSを介してCPU51との通信の制御を行なう通信制御機91を備えている。通信制御機91には、プレイヤからの指示を入カする操作装置20が接続される操作装置接続部12と、ゲームの設定データ等を記憶する補助記憶装置としてメモリカード26や携帯用電子機器100が接続されるメモリカード挿入部8A、8Bが設けられている。
【0044】
操作装置接続部12に接続された操作装置20は、プレイヤからの指示を入力するために、通信制御機91からの指示に従って、前記各ボタンや操作部の状態を、同期式通信により、通信制御機91に送信する。そして、通信制御機91は、操作装置20の前記各ボタンや操作部の状態をCPU51に送信する。
【0045】
これにより、プレイヤからの指示がCPU51に入カされ、CPU51は、実行しているゲームプログラム等に基づいて、プレイヤからの指示に従った処理を行なう。具体的には、制御系70の他の各部およびグラフィックシステム60と連携して、操作対象オブジェクトを含む画像を生成し、表示装置の表示画面に表示させる。そして、操作装置20に入力されたプレイヤからの指示にしたがい、操作対象オブジェクトの表示位置や姿勢などを変えた画像(必要に応じてその背景も変える)を順次生成し、表示装置の表示画面に表示させることで、あたかも、操作装置20に入力されたプレイヤの操作内容に応じて、操作対象オブジェクトが操作されるように、動画像を生成する。また、必要に応じて、サウントシステム70と連携し、音声装置より出力する音声や音楽を制御する。
【0046】
ここで、メインメモリ53、GPU62、画像デコーダ64およびデコーダ82等の間では、プログラムの読み出し、画像の表示あるいは描画等を行なう際に、画像データを高速に転送する必要がある。そこで、このエンタテインメント装置1では、上述のようにCPU51を介ざずに周辺装置制御部52からの制御によりメインメモリ53、GPU62、画像デコーダ64およびデコーダ82等の間で直接データの転送を行なう、いわゆるDMA転送を行なうことができるようになっている。これにより、データ転送によるCPU51の負荷を低減させることができ、高速なデータの転送を行なうことができる。
【0047】
また、CPU51は、実行しているゲームの設定データ等を記憶する必要があるときに、その記憶するデータを通信制御機91に送信し、通信制御機91は、CPU51からのデータをメモリカード挿入部8Aまたは8Bのスロットに装着されたメモリカード26や携帯用電子機器100に書き込む。
【0048】
ここで、通信制御機91には、電気的な破壊を防止するための保護回路が内蔵されている。メモリカード26や携帯用電子機器100は、バスBUSから分離されており、装置本体の電源を入れた状態で、着脱することができる。従って、メモリカード26や携帯用電子機器100の記憶容量が足りなくなった場合等に、装置本体の電源を遮断することなく、新たなメモリカードなどを挿着できる。このため、バツクアップする必要があるゲームデータが失われてしまうことなく、新たなメモリカードを装着して、必要なデータを新たなメモリカードに書き込むことができる。
【0049】
なお、パラレルI/Oインタフェース(PIO)96、および、シリアルI/Oインタフェース(SIO)97は、メモリカード26や携帯用電子機器100と、エンタテインメント装置1とを接続するためのインタフェースである。
【0050】
以上、エンタテインメント装置1のハードウエア構成について説明した。
【0051】
次に、上記構成のエンタテインメント装置1において、CPU51が、ディスク装着部3に装着された光ディスクから読み出されたアプリケーションプログラムを実行することで、実現されるフライトシミュレーションゲームについて説明する。
【0052】
なお、ここで、フライトシミュレーションゲームとは、プレイヤが、エンタテインメント装置1に接続された操作装置20を使用して、飛行機を表す操作対象オブジェクトを操作し、仮想的な3次元世界中を移動させることで、飛行機の操縦を仮想的に体験することができるゲームである。エンタテインメント装置1は、この3次元世界中を移動する操作対象オブジェクトを仮想的なカメラで撮影することで得られるCGアニメーション画像を生成し、当該エンタテインメント装置1に接続された表示装置の表示画面に表示する。
【0053】
まず、光ディスクのデータ構成について説明する。
【0054】
図5は、ディスク装着部3に装着される光ディスク85のデータ構成を説明するための図である。
【0055】
図示するように、光ディスク85には、フライトシミュレーションゲームを実現するためのアプリケーションプログラム(PG)501と、オブジェクトデータ(DA)502や地図データベース(DB)503を含む各種データが記録されている。
【0056】
オブジェクトDA502には、フライトシミュレーションゲームにおいて、プレイヤが操作装置20を用いて操作する操作対象オブジェクト(飛行機を表すオブジェクト)の、3次元形状やテクスチャなどを特定するために必要な各種情報が格納されている。地図DB503には、フライトシミュレーションゲームにおいて、操作対象オブジェクトが移動する仮想的な3次元世界中の地形を特定する様々な地図構成要素の情報が格納されている。
【0057】
次に、エンタテインメント装置1上に構築される、フライトシミュレーションゲームを実現するためのソフトウエア構成について説明する。
【0058】
図6は、エンタテインメント装置1上に構築されるフライトシミュレーションゲームを実現するためのソフトウエア構成を示した図である。なお、この図に示す各構成要素は、光ディスク制御部80によりディスク装着部3に装着された光ディスク85から読み出され、メインメモリ53上にロードされたアプリケーションPG501を、CPU51が実行することにより、プロセスとして具現化される。
【0059】
図6において、操作内容受付部801は、操作装置20に入力されたプレイヤの指示にしたがい、仮想的な3次元世界中を移動する操作対象オブジェクトの移動速度や移動方向を決定する。この処理は定期的に行われる。
【0060】
ここで、操作対象オブジェクトの移動速度は、たとえば、操作装置20の第1、2の操作部21、22、Lボタン23LおよびRボタン23Rのうちのいずれかに、スロットルと同じ機能を持たせることで決定する。
【0061】
すなわち、スロットルと同じ機能を持たせたボタンの検知信号が操作装置20から出力されているときは、スロットルオンと判断し、当該ボタンの検知信号が出力されたいないときはスロットルオフと判断する。そして、スロットルオンと判断された場合は、前回決定した操作対象オブジェクトの移動速度に、予め定められたスロットルオンに応じた加速度と前回移動速度を決定してからのスロットルオンの継続時間より求まる速度を加算することで、操作対象オブジェクトの移動速度を決定する。一方、スロットルオフと判断された場合は、前回決定した操作対象オブジェクトの移動速度に、予め定められたスロットルオフに応じた減速度と前回移動速度を決定してからのスロットルオフの継続時間より求まる速度を減算することで、操作対象オブジェクトの移動速度を決定する。
【0062】
また、操作対象オブジェクトの移動方向は、たとえば操作装置20の操作軸31a、32aに、操縦かんと同じ機能を持たせることで決定する。
【0063】
すなわち、操作軸31a、32aに加えられた操作により、操作装置20から出力されたX−Y座標上の座標値に応じた信号のX座標成分の値に応じて、操作対象オブジェクトが表す飛行機の左右の傾きを決定し、Y座標成分の値に応じて、当該飛行機の機首の上下を決定する。
【0064】
具体的には、図3において、X座標成分の値が128〜255の場合は、その値が大きいほど飛行機が右に大きく傾き、X座標成分の値が0〜126の場合は、その値が小さいほど飛行機が左に大きく傾くものとする。そして、X座標成分の値が127の場合は飛行機の左右への傾きなしとする。また、Y座標成分の値が128〜255の場合は、その値が大きいほど飛行機の機首を大きく上げ、Y座標成分の値が0〜126の場合は、値が小さいほど飛行機の機首を大きく下げるものとする。そして、Y座標成分の値が127の場合は飛行機の機首の上下はなしとする。
【0065】
そして、操作内容受付部801は、操作装置20から出力されたX−Y座標上の座標値に応じた信号により特定される、操作対象オブジェクトが表す飛行機の左右の傾きおよび機首の上下より、前回決定した操作対象オブジェクトの移動方向に対する相対的な移動方向の変化分を求め、これを前回決定した操作対象オブジェクトの移動方向に加算する。これにより、当該操作対象オブジェクトの移動方向を決定する。
【0066】
ところで、現実の世界において、操縦かんを用いて、飛行機を完全な旋回飛行状態に移行させる行為は、非常に高度な操縦が要求される。このため、操作装置20の操作軸31a、32aに、操縦かんと同じ機能をそのまま持たせるのでは、不慣れなプレイヤにとって、操作対象オブジェクトの操作が難し過ぎて、十分にフライトシミュレーションゲームを楽しめなくなるかもしれない。
【0067】
そこで、本実施形態では、操作対象受付部801に、操作軸31a、32aに加えられた操作により、操作装置20から出力された信号が示すX−Y座標上の座標値が、所定の範囲にある場合、操作内容受付部801は、操作対象オブジェクトに所定の動作(現実の世界において、操縦が困難と思われる動作)を行わせるものと判断させている。そして、操作対象オブジェクトの移動方向が、当該動作を行うために要求される方向となるように決定している。図3に示す例では、操作内容受付部801は、X−Y座標上の座標値がX座標値≧240、Y座標値≦15の場合は、操作対象オブジェクトに右回りの急旋回飛行を行わせるものと判断し、X座標値≦15、Y座標値≦15の場合は、操作対象オブジェクトに左回りの急旋回飛行を行わせるものと判断している。そして、操作対象オブジェクトの移動方向を、当該飛行を行うのに要求される方向に決定している。
【0068】
たとえば、右上回りの急旋回飛行を行うものと判断した場合は、操作対象オブジェクトが表す飛行機を右に45度傾かせ、当該飛行機の機首を45度挙げたものとし、前回決定した操作対象オブジェクトの移動方向から当該操作対象オブジェクトの移動方向を決定する。左回りの急旋回飛行を行うものと判断した場合は、前記飛行機を左に45度傾かせ、前記飛行機の機首を45度挙げたものとし、前回決定した操作対象オブジェクトの移動方向から当該操作対象オブジェクトの移動方向を決定する。
【0069】
次に、図6において、オブジェクト位置算出部802は、仮想的な3次元世界中における操作対象オブジェクトの位置と姿勢を算出する処理を、定期的に行う。
【0070】
具体的には、前回算出した操作対象オブジェクトの位置および姿勢と、操作内容受付部801で決定された操作対象オブジェクトの最新の移動速度から、現時点での操作対象オブジェクトの位置を算出する。また、操作内容受付部801で決定された操作対象オブジェクトの最新の移動方向にしたがって、現時点での操作対象オブジェクトの姿勢を算出する。
【0071】
3次元地図作成部803は、オブジェクト位置算出部802で算出された操作対象オブジェクトの位置周辺に配置される地図構成要素を、光ディスク85に格納された地図DB503から直接読み出し、あるいは、光ディスク85から読み出され、一旦メインメモリ53などに格納された地図DB503から読み出し、3次元世界中に配置する。これにより、操作対象オブジェクトの位置周辺に展開される地形を生成する。
【0072】
なお、3次元地図作成部803における地形生成処理は、必ずしも、オブジェクト位置算出部802で操作対象オブジェクトの位置が算出される毎に行う必要はない。たとえば、オブジェクト位置算出部802で操作対象オブジェクトの位置が複数回算出される毎に行うようにしてもよい。この場合、オブジェクト位置算出部802における複数回の操作対象オブジェクト位置算出処理で当該操作対象オブジェクトが移動可能な範囲(これは、予め設定されている操作対象オブジェクトの最大移動速度などから推定可能である)を考慮し、当該範囲周辺に配置される地図構成要素を地図DB503から読み出して、3次元世界中に配置すればよい。
【0073】
オブジェクト配置部804は、3次元地図作成部803により地形が展開された3次元世界中において、光ディスク85に格納されたオブジェクトDA502によりその3次元形状など特定される操作対象オブジェクトを、オブジェクト位置算出部802で算出した最新の操作対象オブジェクトの位置に配置する。この際、操作対象オブジェクトの姿勢が、オブジェクト位置算出部802で算出した最新の操作対象オブジェクトの姿勢となるように、操作対象オブジェクトを配置する。
【0074】
なお、3次元地図作成部803やオブジェクト配置部804は、図4において、たとえば、CPU51がGTE61を利用することで実現される。
【0075】
カメラ配置部805は、3次元地図作成部803およびオブジェクト配置部804により地形および操作対象オブジェクトが配置された3次元世界から2次元画像を生成するために用いられる、仮想的なカメラの配置位置(つまり視点)と向き(つまり視線方向と視線方向を軸としたカメラの傾き)を設定する処理を行う。この処理は、オブジェクト位置算出部802で操作対象オブジェクトの位置や姿勢が算出される毎に行う。以下に、カメラ配置部805における、仮想的なカメラの配置位置と向きの具体的な設定処理の一例について説明する。
【0076】
図7〜図9は、本実施形態における操作対象オブジェクト601と仮想的なカメラ608との位置関係を説明するための図である。
【0077】
ここで、図7は、3次元世界中に配置されたオブジェクト601と仮想的なカメラ609を、真上(Z軸の無限遠方)から見下ろした様子を示しており、図8は、3次元世界中に配置されたオブジェクト601と仮想的なカメラ609を、真横(X軸の無限遠方)から見た様子を示している。また、図9は、3次元世界中に配置されたオブジェクト601と仮想的なカメラ609を、真横(Y軸の無限遠方)から見た様子を示している。なお、これらの図では、3次元世界中に配置された地図構成要素の図示を省略している。
【0078】
(1)仮想的なカメラの配置位置(カメラ設置点)
図7〜図9に示すように、カメラ配置部805は、仮想的なカメラ609の配置位置であるカメラ設置点606を、下記の条件▲1▼−▲3▼を満たす位置に設定する。
【0079】
▲1▼:オブジェクト位置算出部802で新たに算出された操作対象オブジェクト601の位置602を通過する、操作内容受付部801で新たに算出された操作対象オブジェクト601の移動方向に沿った線603上の、位置602より距離Kだけ後方の位置より、所定値Hだけ上方の位置に、カメラ追跡点604を設定する。
【0080】
▲2▼:カメラ追跡点604および前回算出したカメラ設置点606’間の距離Lを、所定値Mで割ることで得られる距離L/Mだけ、前回算出したカメラ設置点606’からカメラ追跡点604に近づく位置に、カメラ設置点606を設定する。したがって、カメラ設置点606と前回算出したカメラ設置点606’とカメラ追跡点604は、以下の関係を満たす。
【0081】
▲3▼:上記▲1▼において、距離Kは、操作内容受付部801で新たに算出された操作対象オブジェクト601の移動速度が大きくなるほど短くなるように(すなわち、カメラ追跡点604が操作対象オブジェクト601に近づくように)設定する。たとえば、操作対象オブジェクト601の移動速度がAのときのKをkとし、以下の式を満たすように設定する。
【0082】
K=k−a(B−A)
ここで、Bは操作内容受付部801で新たに算出された操作対象オブジェクトの移動速度、aは所定の係数である。係数aは、上記▲2▼に示した所定値Mとの関係において、以下の条件を満たすように設定する。
【0083】
すなわち、カメラ追跡点604は、操作対象オブジェクト601の移動速度が大きくなるほど操作対象オブジェクト601に近づくけれども、カメラ設置点606は、操作対象オブジェクト601の移動速度が大きくなるほど、操作対象オブジェクト601から遠ざかるように、つまり、操作対象オブジェクト601の移動方向に対してより後方へ移動するように、係数aと所定値Mを設定する。
【0084】
なお、初期状態(ゲーム開始時)において、カメラ設置点606は、操作対象オブジェクト601との相対的な位置関係で固定的に定まる所定位置に設定するようにすればよい。
【0085】
(2)カメラの向き(カメラ視線方向)
図7〜図9に示すように、カメラ配置部805は、カメラ設置点606に設置された仮想的なカメラ609が、カメラ参照点607を向くように、カメラ視線方向610を設定する。カメラ配置部805は、カメラ参照点607を、下記の条件▲1▼−▲2▼を満たす位置に設定する。
【0086】
▲1▼:オブジェクト位置算出部802で新たに算出された操作対象オブジェクトの位置602を通過する、操作内容受付部801で新たに算出された操作対象オブジェクトの移動方向に沿った線603上の、位置602より距離Jだけ前方の位置に、カメラ参照点607を設定する。
【0087】
▲2▼:上記▲1▼において、距離Jは、操作内容受付部801で新たに算出された操作対象オブジェクト601の移動速度が大きくなるほど長くなるように(すなわち、カメラ参照点607が操作対象オブジェクト601から遠ざかるように)設定する。たとえば、操作対象オブジェクト601の移動速度がAのときのJをjとし、以下の式を満たすように設定する。
【0088】
J=j+b(B−A)
ここで、Bは操作内容受付部801で新たに算出された操作対象オブジェクトの移動速度、bは所定の係数である。
【0089】
(3)カメラの向き(カメラ視線方向を軸としたカメラの傾き)
図9に示すように、操作対象オブジェクト601が線603を軸として左右に傾いている場合(すなわち、操作内容受付部801で操作対象オブジェクト601が表す飛行機を左右に傾かせる操作内容を受け付けた場合)には、その傾きに応じて、仮想的なカメラ608を、カメラ視線方向610を軸として回動させる。そして、操作対象オブジェクト601が線603を軸として回転した場合は、仮想的なカメラ608を、カメラ視線方向610を軸として回転させる。
【0090】
図10、11は、本実施形態において、操作対象オブジェクト601の動きに対し、仮想的なカメラ608がどのように振舞うかを説明するための図である。
【0091】
ここで、図10は、操作対象オブジェクト601が速度一定で直進状態から右回り旋回状態へ移行した場合における、操作対象オブジェクト601と仮想的なカメラ608の関係を示しており、図11は、操作対象オブジェクト601が直進状態において移動速度を徐々に増加させた場合における、操作対象オブジェクト601と仮想的なカメラ608の関係を示している。なお、両図とも、操作対象オブジェクト601と仮想的なカメラ608を、真上(Z軸の無限遠方)から見下ろした様子を示しており、これらの図では、3次元世界中に配置された地図構成要素の図示を省略している。
【0092】
図12は、図10に示すようにして配置された仮想的なカメラ609で撮影した場合に得られる映像の一例を示した図である。ここで、図12(a)は、図10において、操作対象オブジェクト601が(a)の位置にあるときに仮想的なカメラ609で撮影される映像を、図12(b)は、操作対象オブジェクト601が(b)の位置にあるときに仮想的なカメラ609で撮影される映像を、そして、図12(c)は、操作対象オブジェクト601が(c)の位置にあるときに仮想的なカメラ609で撮影される映像を、それぞれ示している。また、図12(d)は、図10において、操作対象オブジェクト601が(d)の位置にあるときに仮想的なカメラ609で撮影される映像を、図12(e)は操作対象オブジェクト601が(e)の位置にあるときに仮想的なカメラ609で撮影される映像を、それぞれ示している。
【0093】
図13は、図11に示すようにして配置された仮想的なカメラ609で撮影した場合に得られる映像の一例を示した図である。ここで、図13(a)は、図11において、操作対象オブジェクト601が(a)の位置にあるときに仮想的なカメラ609で撮影される映像を、図13(b)は、操作対象オブジェクト601が(b)の位置にあるときに仮想的なカメラ609で撮影される映像を、そして、図13(c)は、操作対象オブジェクト601が(c)の位置にあるときに仮想的なカメラ609で撮影される映像を、それぞれ示している。
【0094】
図10および図12から明らかなように、上記の(1)−(3)に満たす条件を満足するように仮想的なカメラ609の配置位置と向きを設定することにより、カメラ設置点606には、前回算出されたカメラ設置点606’が考慮されるため、仮想的なカメラ609は、操作対象オブジェクト601の動きに対し、少し遅れて操作対象オブジェクト601の後ろを追従するように振舞う。また、操作対象オブジェクト601が、移動方向を軸として回動した(左右に傾いた)場合、仮想的なカメラ609も、それに応じて、カメラ視線方向610を軸として回動する。
【0095】
また、図11および図13から明らかなように、上記の(1)−(3)に満たす条件を満足するように仮想的なカメラ609の配置位置と向きを設定することにより、仮想的なカメラ609は、操作対象オブジェクト601の移動速度が大きくなるほど、操作対象オブジェクト601から遠ざかる方向に移動することになる。また、カメラ視線方向610は、操作対象オブジェクト601の移動速度が大きくなるほど、操作対象オブジェクト601の前方に向けられる。
【0096】
図6に戻って説明を続ける。
【0097】
画像生成部806は、3次元地図作成部803およびオブジェクト配置部804により地形および操作対象オブジェクトが配置された3次元世界を、カメラ配置部805にて配置位置および視線方向が設定された仮想的なカメラで撮影することで得られる2次元画像を生成する。具体的には、仮想的なカメラの配置位置を視点とし、当該カメラの向きを視線方向として、かつ、操作対象オブジェクト601の移動方向を軸とした左右に傾きに応じて、仮想的なカメラ609を、カメラ視線方向610を軸として回動させて、仮想的なカメラスクリーン上に、3次元世界中にある操作対象オブジェクトや地図構成物を投影する処理(レンダリング)を行うことで2次元画像を生成する。
【0098】
表示制御部807は、画像生成部806で生成された2次元画像をビデオ信号に変換し、本エンタテインメント装置1に接続された表示装置に出力する。
【0099】
なお、画像生成部806や表示制御部807は、図4において、たとえば、CPU51がGTE61およびGPU62を利用することで実現される。
次に、エンタテインメント装置1上に構築される、フライトシミュレーションゲームを実現するためのソフトウエア構成の動作について説明する。
【0100】
図14は、エンタテインメント装置1上に構築される、フライトシミュレーションゲームを実現するためのソフトウエア構成の動作を説明するためのフロー図である。
【0101】
まず、操作内容受付部801は、操作対象オブジェクト601の移動速度を算出する(ステップS1001)。具体的には、操作装置20の、スロットルの役割を持たせたボタンの検知信号を検知することで、前回移動速度を算出してからのスロットルのオン・オフ時間を測定する。そして、前回算出した移動速度に、測定したスロットルオンの時間と予め定められた加速度より求まる速度を加算し、および/または、測定したスロットルオフの時間と予め定められた減速度より求まる速度を減算し、操作対象オブジェクト601の移動速度を算出する。
【0102】
次に、操作内容受付部801は、操作対象オブジェクト601の移動方向を算出する(ステップS1002〜S1004)。
【0103】
具体的には、操作装置20の、操縦かんの役割を持たせた操作軸31a、32aに加えられた操作により、操作装置20から出力される信号が示すX−Y座標上の座標値が、所定範囲内にあるか否かを調べる(ステップS1002)。たとえば、図3に示す例では、X−Y座標上の座標値がX座標値≧240、Y座標値≦15の範囲、あるいは、X座標値≦15、Y座標値≦15の範囲にあるか否かを調べる。
【0104】
所定範囲内にある場合は、操作対象オブジェクト601に所定の動作を行わせるものとし、操作対象オブジェクト601の移動方向が、当該動作を行うために要求される方向となるように決定する(ステップS1003)。たとえば、図3に示す例では、X−Y座標上の座標値がX座標値≧240、Y座標値≦15の場合は、操作対象オブジェクトに右回りの急旋回飛行を行わせるものと判断し、前回算出した操作対象オブジェクト601の移動方向から、操作対象オブジェクト601が表す飛行機を右に45度傾かせ、当該飛行機の機首を45度挙げたものとし、当該操作対象オブジェクト601の移動方向を算出する。X座標値≦15、Y座標値≦15の場合は、操作対象オブジェクト601に左回りの急旋回飛行を行わせるものと判断し、前回算出した操作対象オブジェクト601の移動方向から、前記飛行機を左に45度傾かせ、前記飛行機の機首を45度挙げたものとし、当該操作対象オブジェクト601の移動方向を決定する。
【0105】
一方、所定範囲内にない場合は、操作軸31a、32aに加えられた操作により、操作装置20から出力される信号が示すX−Y座標上の座標値に応じて、操作対象オブジェクト601が表す飛行機の左右の傾き、および、当該飛行機の機首の上下を決定する。そして、前記飛行機を、前回算出した操作対象オブジェクト601の移動方向から、前記決定した角度だけ上下左右させたものとし、当該操作対象オブジェクト601の移動方向を決定する(ステップS1004)。
【0106】
次に、オブジェクト位置算出部802は、仮想的な3次元世界中における操作対象オブジェクト601の位置と姿勢を算出する(ステップS1005)。
【0107】
具体的には、前回算出した操作対象オブジェクトの位置および姿勢と、操作内容受付部801で算出された操作対象オブジェクト601の最新の移動速度から、現時点での操作対象オブジェクト601の位置を算出する。また、操作内容受付部801で決定された操作対象オブジェクト601の最新の移動方向にしたがって、現時点での操作対象オブジェクト601の姿勢を算出する。
【0108】
次に、3次元地図作成部803は、地図更新の必要があるか否かを調べる(ステップS1006)。たとえば、ステップS1005における操作対象オブジェクト601の位置の算出処理がN回行われる毎に地図を更新する場合は、カウンタを設け、カウント値がNに達したか否かを調べる。Nに達した場合は、更新の必要ありと判断し、カウント値をリセットして、ステップS1007に進む。一方、カウント値がNに達していない場合は、カウント値を1つインクリメントして、ステップS1008に進む。
【0109】
ステップS1007では、3次元地図地図作成部803は、ステップS1005において、オブジェクト位置算出部802により算出された操作対象オブジェクトの位置周辺に配置される地図構成要素を地図DB503から読み出し、3次元世界中に配置する。これにより、操作対象オブジェクトの位置周辺に展開される地形を展開する。
【0110】
ステップS1008では、オブジェクト配置部804は、ステップS1007において、3次元地図地図作成部803により地形が展開された3次元世界中において、オブジェクトDA502によりその3次元形状など特定される操作対象オブジェクト601を、ステップS1005において、オブジェクト位置算出部802により算出した操作対象オブジェクトの位置に配置する。この際、操作対象オブジェクトの姿勢が、ステップS1005において、オブジェクト位置算出部802により算出した操作対象オブジェクトの姿勢となるように、操作対象オブジェクトを配置する。
【0111】
次に、カメラ配置部805は、先に図7〜図13を用いて説明した要領にしたがい、ステップS1007、S1008において、3次元地図地図作成部803およびオブジェクト配置部804により、地形および操作対象オブジェクト601が配置された3次元世界から、2次元画像を生成するために用いられる、仮想的なカメラ609の配置位置と向きを設定する処理を行う(ステップS1009)。
【0112】
上記のようにして、3次元世界中に操作対象オブジェクト601および操作対象オブジェクト601周辺の地形が配置され、この3次元世界中に配置された操作対象オブジェクト601および操作対象オブジェクト601周辺の地形を撮影する仮想的なカメラ609の配置位置と向きが設定されると、画像生成部806は、この仮想的なカメラ609の配置位置を視点とし、当該カメラ609の向きを視線方向として、かつ、操作対象オブジェクト601の移動方向を軸とした左右に傾きに応じて、仮想的なカメラ609を、カメラ視線方向610を軸として回動させて、この3次元世界中に配置された操作対象オブジェクト601および操作対象オブジェクト601を、仮想的なカメラスクリーン上に投影するレンダリング処理を行う。これにより、2次元画像を生成する(ステップS1010)。
【0113】
それから、表示制御部807は、ステップS1010において、画像生成部806により生成された2次元画像をビデオ信号に変換し、本エンタテインメント装置1に接続された表示装置に出力する(ステップS1011)。
【0114】
上述した図14に示すフローを繰り返し行うことにより、本エンタテインメント装置1は、操作装置20を介して受け付けたプレイヤの操作内容にしたがい仮想的な3次元世界中を移動する操作対象オブジェクト601を、仮想的なカメラ609で撮影することで得られる動画像を、本エンタテインメント装置1に接続された表示装置の表示画面上に表示する。
【0115】
以上、本発明の実施形態について説明した。
【0116】
本実施形態によれば、仮想的なカメラ609の配置位置であるカメラ設置点606に、前回算出されたカメラ設置点606’が考慮されるため、仮想的なカメラ609は、操作対象オブジェクト601の動きに対し、少し遅れて操作対象オブジェクト601の後ろを追従するように振舞う。また、操作対象オブジェクト601が移動方向を軸として回動した場合には、仮想的なカメラ609も、それに応じて、カメラ視線方向を軸として回動する。
【0117】
このため、プレイヤは、操作装置20を用いて操作する操作対象オブジェクト601の仮想的な3次元世界中における振る舞いを、表示画面を通して把握することが容易となる。したがって、フライトシミュレーションゲームの臨場感が増し、娯楽性が向上する。
【0118】
また、本実施形態によれば、仮想的なカメラ609は、操作対象オブジェクト601の移動速度が大きくなるほど、操作対象オブジェクト601から遠ざかる方向に移動することになる。
【0119】
このため、プレイヤが、操作装置20を用いて操作対象オブジェクト601の移動速度を上げた場合、移動速度の増加分に応じて、仮想的なカメラ609に収められる(つまり表示装置の表示画面に表示される)オブジェクト周囲の映像が広くなる。したがって、操作対象オブジェクト601の移動速度を上げたときに、極端に操作が難くなることを防ぐことができる。
【0120】
なお、操作対象オブジェクト601の移動速度は、当該オブジェクト601の当該オブジェクト周囲に配置された地形に対する相対速度として、表示装置の表示画面に表示される動画像に反映されるため、操作対象オブジェクト601の移動速度の増加分に応じて、仮想的なカメラ609に収められるオブジェクト周囲の映像が広くなっても、動画像から得られるスピード感は失われない。
【0121】
さらに、本実施形態では、仮想的なカメラ609のカメラ視線方向610は、操作対象オブジェクト601の移動速度が大きくなるほど、操作対象オブジェクト601の前方に向けられる。
【0122】
このため、プレイヤが、操作装置20を用いて操作対象オブジェクト601の移動速度を上げた場合、移動速度の増加分に応じて、仮想的なカメラ609に収められるオブジェクト周囲の映像がより遠方にまで広がる。したがって、操作対象オブジェクト601の移動速度を上げたときに、極端に操作が難くなることをさらに効率よく防ぐことができる。
【0123】
くわえて、本実施形態では、操作対象オブジェクト609が表す飛行機の左右の傾きや機首の上下を、操作装置20の操作軸31a、32aに加えられた操作により、操作装置20から出力されたX−Y座標上の座標値に応じて決定している。そして、前記X−Y座標値が所定の範囲にある場合、操作対象オブジェクト601、所定の動作(たとえば、急旋回などの、現実の世界において操縦が困難と思われる動作)を行わせるものと判断させ、操作対象オブジェクト601の移動方向が、当該動作を行うために要求される方向となるように決定している。
【0124】
このようにすることで、操作装置20の操作軸31a、32aに、操縦かんと同じ機能をそのまま持たせる場合に比べ、操作対象オブジェクト601の操作を簡単にすることができる。したがって、不慣れなプレイヤにとっても、十分にフライトシミュレーションゲームを楽しむことができる。
【0125】
なお、本発明は、上記の実施形態に限定されるものではなく、その要旨の範囲内で様々な変形が可能である。
【0126】
上記の実施形態では、仮想的なカメラ609の配置位置であるカメラ設置点606に、前回算出されたカメラ設置点606’が考慮されるように設定している。しかしながら、本発明はこれに限定されない。カメラ設置点606は、少なくとも1つ前に算出されたカメラ設置点を考慮して設定するものであればよい。
【0127】
たとえば、1つ前に算出されたカメラ設置点606’およびカメラ追跡点604間の距離Lを所定値Mで割ることで得られる距離L/Mだけ、前記カメラ設置点606’およびカメラ追跡点604間の中間点からカメラ追跡点604へ近づく位置に、カメラ設置点606を設定するようにしてもよい。
【0128】
あるいは、1つ前に算出されたカメラ設置点606’と2つ前に算出されたカメラ設置点606”との中間点およびカメラ追跡点604間の距離Lを所定値Mで割ることで得られる距離L/Mだけ、前記中間点からカメラ追跡点604へ近づく位置に、カメラ設置点606を設定するようにしてもよい。
【0129】
また、上記の実施形態では、本エンタテインメント装置1を用いてフライトシミュレーションゲームを行う場合を例にとり説明したが、本発明はこれに限定されない。たとえば、本エンタテインメント装置1を用いて、ドライブシミュレーションゲームなどの、操作装置20を介して受け付けたプレイヤの操作内容にしたがい仮想的な3次元世界中の操作対象オブジェクトの移動させることが可能な、様々なテレビゲームを行う場合に適用可能である。
【0130】
なお、本エンタテインメント装置1を用いてドライブシミュレーションゲームを行う場合、操作軸31a、32aに加えられた操作により操作装置20から出力された信号が示すX−Y座標上の座標値が所定の範囲にある場合、操作内容受付部801は、操作対象オブジェクトに急回転などの、現実の世界において、操縦が困難と思われる動作を行わせるものと判断させ、操作対象オブジェクトの移動方向が、当該動作を行うために要求される方向となるように決定すればよい。
【0131】
また、本発明における、仮想的なカメラ609の配置位置や向きの設定方法は、テレビゲームのみならず、仮想的な3次元世界中を移動する表示オブジェクトを仮想的なカメラで撮影することで動画像を生成する装置に広く適用可能である。
【0132】
また、エンタテインメント装置1の外観およびハードウエア構成は、図1、図2および図4に示したものに限定されない。エンタテインメント装置1は、たとえば、CPUと、メモリと、ハードディスク装置などの外部記憶装置と、CD−ROMやDVD−ROMなどの可搬性を有する記憶媒体からデータを読み取る読取装置と、キーボードやマウスなどの入力装置と、ディスプレイなどの表示装置と、インターネットなどのネットワークを介して通信を行うためのデータ通信装置と、上述した各装置間のデータ送受を司るインターフェースといった、一般的な電子計算機の構成を有するものであってもよい。
【0133】
また、エンタテインメント装置1上に、図6に示すソフトウエア構成を構築するためのプログラムや、3次元世界中に配置する地図構成要素および操作対象オブジェクトの3次元形状などを特定するための各種データは、読取装置を介して、可搬性を有する記憶媒体から読み出され、メモリや外部記憶装置に記憶されるようにしてもよいし、あるいは、データ通信装置を介して、ネットワークからダウンロードされ、メモリや外部記憶装置に記憶されるようにしてもよい。
【0134】
【発明の効果】
以上のように、本発明によれば、仮想的な3次元世界中を移動するオブジェクトを仮想的なカメラで撮影することで得られる動画像を、表示装置の表示画面上に表示するエンタテインメント装置において、表示装置の表示画面に表示された動画像から、3次元世界中におけるオブジェクトの振る舞いをより把握できるようにすることができる。
【0135】
特に、フライトシミュレーションやドライブシミュレーションなどの、操作者が操作装置を用いて仮想的な3次元世界中を移動するオブジェクトを操作することのできるエンタテイメント装置において、操作者は、自身が操作したオブジェクトの仮想的な3次元世界中における振る舞いを、表示画面を通して把握することが容易となる。これにより、臨場感が増し、娯楽性が向上する。
【図面の簡単な説明】
【図1】本発明の一実施形態が適用されたエンタテインメント装置1および操作装置20の外観例を示した図である。
【図2】図1に示す操作装置20を示した図である。
【図3】図2に示す操作装置20の操作軸31a、32aを用いて入力できる値を説明するための図である。
【図4】図1に示すエンタテインメント装置1のハードウエア構成例を示す図である。
【図5】エンタテインメント装置1のディスク装着部3に装着される光ディスク85のデータ構成を説明するための図である。
【図6】図4に示すエンタテインメント装置1上に構築される、フライトシミュレーションゲームを実現するためのソフトウエア構成を示した図である。
【図7】図6に示すカメラ配置部805によって3次元世界中に配置される仮想的なカメラ608と操作対象オブジェクト601との位置関係を説明するための図である。
【図8】図6に示すカメラ配置部805によって3次元世界中に配置される仮想的なカメラ608と操作対象オブジェクト601との位置関係を説明するための図である。
【図9】図6に示すカメラ配置部805によって3次元世界中に配置される仮想的なカメラ608と操作対象オブジェクト601との位置関係を説明するための図である。
【図10】操作対象オブジェクト601の動きに対し、図6に示すカメラ配置部805によって3次元世界中に配置される仮想的なカメラ608がどのように振舞うかを説明するための図である。
【図11】操作対象オブジェクト601の動きに対し、図6に示すカメラ配置部805によって3次元世界中に配置される仮想的なカメラ608がどのように振舞うかを説明するための図である。
【図12】図10に示すようにして配置された仮想的なカメラ609で撮影した場合に得られる映像の一例を示した図である。
【図13】図11に示すようにして配置された仮想的なカメラ609で撮影した場合に得られる映像の一例を示した図である。
【図14】図6に示した、エンタテインメント装置1上に構築されるフライトシミュレーションゲームを実現するためのソフトウエア構成の動作を説明するためのフロー図である。
【図15】従来のフライトシミュレーションゲームを行うエンタテイメント装置におけるオブジェクト(飛行機を表すオブジェクト)901と仮想的なカメラ902との位置関係を説明するための図である。
【図16】図15に示すようにして配置された仮想的なカメラ902からオブジェクト901を撮影した場合に得られる映像を示した図である。
【符号の説明】
1…エンタテインメント装置
2…本体
3…ディスク装着部
4…リセットスイッチ
5…電源スイッチ
6…ディスク操作スイッチ
7A,7B…スロット部
8A,8B…メモリカード挿入部
12…操作装置接続部
20…操作装置
21,22…操作部
23L…Lボタン
23R…Rボタン
24…スタートボタン
25…選択ボタン
26…メモリカード
31,32…アナログ操作部
31a,32a…操作軸
33…モード選択スイッチ
34…表示部
50…制御系
51…中央処理装置(CPU:Central Prosessing Unit)
52…周辺装置制御部
53…メインメモリ
54…ROM
60…グラフィックシステム
61…ジオメトリトランスファエンジン(GTE:Geometry Transfer Engine)
62…画像処理装置(GPU:Graphic Processing Unit)
63…フレームバッファ
64…画像デコーダ
70…サウンドシステム
71…音声処理装置(SPU:Sound Processing Unit)
72…サウンドバッファ
73…スピーカ
80…光ディスク制御部
81…光ディスク装置
82…デコーダ
83…バッファ
84…サブCPU
90…通信制御部
91…通信制御機
100…携帯用電子機器
501…アプリケーションプログラム
502…オブジェクトデータ
503…地図データベース
601…操作対象オブジェクト
609…仮想的なカメラ
801…操作内容受付部
802…オブジェクト位置算出部
803…3次元地図作成部
804…オブジェクト配置部
805…カメラ配置部
806…画像生成部
807…表示制御部[0001]
BACKGROUND OF THE INVENTION
The present invention creates a moving image obtained by photographing a virtual three-dimensional object moving with a virtual camera in accordance with a user's operation content received via an operating device, and a display device It is related with the technique displayed on the display screen.
[0002]
[Prior art]
In recent years, entertainment devices such as video game machines that can perform flight simulation, drive simulation, and the like using three-dimensional graphic animation have become widespread.
[0003]
In this type of entertainment apparatus, an operator can operate an object representing an airplane, a car, or the like using an operation apparatus connected to the apparatus, and move the virtual three-dimensional world. The entertainment device generates a moving image obtained by photographing an object moving around the three-dimensional world with a virtual camera, and displays the moving image on a display screen of a display device connected to the device.
[0004]
By the way, in the entertainment apparatus which can perform the conventional flight simulation, drive simulation, etc., the virtual camera is set to a position that is uniquely (fixed) determined by the relative positional relationship with the object.
[0005]
FIG. 15 is a diagram for explaining the positional relationship between an object (an object representing an airplane) 901 and a
[0006]
As shown in the figure, in an entertainment device capable of performing a conventional flight simulation or drive simulation, for example, a predetermined distance L from the
[0007]
FIG. 16 is a diagram showing an image obtained when the
[0008]
[Problems to be solved by the invention]
As described above, in an entertainment device capable of performing conventional flight simulation, drive simulation, etc., the virtual camera is set to a position that is uniquely (fixed) determined by the relative positional relationship with the object. Therefore, the following problems arise.
[0009]
That is, regardless of the flight / running state of the object (straight or turning), the display position and posture of the object are always the same, and this state is the movement of the terrain displayed around the object. Will appear. For this reason, the operation content of the operator received via the operating device cannot be reflected on the display position and orientation of the object on the display screen, and the enjoyment of operating the object cannot be fully enjoyed.
[0010]
Therefore, the present invention provides an entertainment apparatus for displaying a moving image obtained by photographing an object moving in a virtual three-dimensional world with a virtual camera on a display screen of the display apparatus. It is an object of the present invention to make it possible to better understand the behavior of an object in the three-dimensional world from a moving image displayed on a screen.
[0011]
Further, in an entertainment device such as a flight simulation and a drive simulation in which an operator can operate an object moving around a virtual three-dimensional world using the operation device, the enjoyment of operating the object can be sufficiently enjoyed. The challenge is to make it. Specifically, the contents of the operation performed on the object performed by the operator are reflected on the object on the display screen.
[0012]
[Means for Solving the Problems]
In order to achieve the above object, the present invention creates and displays a moving image obtained by shooting a virtual three-dimensional object (for example, an object representing an airplane or a car) moving around the world with a virtual camera. In the entertainment device for displaying on the display screen of the device, the position and movement direction of the object in the three-dimensional world are sequentially calculated, and every time the position and movement direction of the object are calculated, the object in the three-dimensional world is calculated. The installation position of the virtual camera is determined in consideration of the installation position of the virtual camera calculated at least one before.
[0013]
For example, the camera tracking point passes through a newly calculated object position and is on a line parallel to the newly calculated object movement direction, at a position that is a predetermined value H above the position behind the object position by a distance K from the position K. , And a position approaching the camera tracking point from the virtual camera installation position calculated at least one previous time (for example, the distance between the camera tracking point and the virtual camera installation position calculated at least one previous time) L is a distance L / M obtained by dividing by a predetermined value M, and the virtual camera is positioned at a position closer to the camera tracking point from the virtual camera installation position calculated at least one time ago. Set the installation position.
[0014]
In this way, the past virtual camera placement position is taken into consideration for the virtual camera placement position, so the virtual camera follows the back of the object with a slight delay relative to the movement of the object. Behave like. For this reason, it becomes easy to grasp the behavior of the object in the virtual three-dimensional world through the display screen. Therefore, when the operator operates the object using the operation device connected to the entertainment device of the present invention, the operator displays the behavior of the object operated by himself / herself in the virtual three-dimensional world on the display screen. It becomes easy to grasp through. In addition, a sense of reality is increased and entertainment is improved.
[0015]
In the above example, the distance K may be set so as to decrease as the moving speed of the object increases. In this way, a sense of reality is further increased and entertainment is improved. However, in this case, although the camera tracking point approaches the object as the moving speed of the object increases, the camera installation point moves away from the object as the moving speed of the object increases, that is, relative to the moving direction of the object. It is preferable to set the distance K so as to move further backward.
[0016]
In the real world, when driving a car or maneuvering an airplane, increasing the moving speed usually requires attention to the surroundings over a wider range and far away. By doing so, similarly to this, when the operator increases the moving speed of the object using the operating device, the object is stored in the virtual camera according to the increase in the moving speed (that is, The image around the object (displayed on the display screen of the display device) becomes wider. Therefore, the operability when the moving speed of the object is increased can be improved.
[0017]
Further, in the present invention, a camera reference point is set at a position that is a distance J ahead of the position of the object on a line that passes through the position of the newly calculated object and is parallel to the movement direction of the newly calculated object. The line-of-sight direction may be set so that the virtual camera faces the camera reference point. The distance J may be set so as to increase as the moving speed of the object in the three-dimensional world increases.
[0018]
In this way, when the moving speed of the object is increased using the operating device, the object that is stored in the virtual camera (that is, displayed on the display screen of the display device) according to the increase in the moving speed. The surrounding image spreads farther away. Therefore, the operability when the moving speed of the object is increased can be improved.
[0019]
Furthermore, in the present invention, the virtual camera may be rotated about the line-of-sight direction as an axis according to the rotation about the moving direction of the object. In this way, a sense of reality is further increased and entertainment is improved.
[0020]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, an embodiment of the present invention will be described.
[0021]
First, a hardware configuration of an entertainment apparatus according to an embodiment of the present invention will be described.
[0022]
FIG. 1 shows an appearance of an entertainment apparatus according to an embodiment of the present invention.
[0023]
This entertainment device reads out a game program stored on, for example, a CD-ROM or DVD-ROM optical disc and executes it in accordance with an instruction from an operator (player). The execution of the game mainly refers to an operation target object (for example, an airplane or a car) displayed on a display screen of a display device (such as a television) connected to the entertainment device in accordance with an instruction from the player. Moving the object) and controlling the display of the moving image and the sound in accordance with the movement of the object.
[0024]
As shown in the drawing, the
[0025]
Two operating
[0026]
The
[0027]
As shown in FIG. 2, the
[0028]
Next, FIG. 4 shows the configuration of the
[0029]
As shown in the figure, the
[0030]
The
[0031]
The
[0032]
In the
[0033]
When the operating system is executed, the
[0034]
The
[0035]
The
[0036]
Next, the
[0037]
Next, the
[0038]
Next, the
[0039]
Next, the
[0040]
The
[0041]
Next, the optical
[0042]
The audio data recorded on the optical disc read by the
[0043]
Next, the
[0044]
The
[0045]
Thereby, an instruction from the player is input to the
[0046]
Here, between the main memory 53, the
[0047]
Further, when it is necessary to store the setting data of the game being executed, the
[0048]
Here, the
[0049]
The parallel I / O interface (PIO) 96 and the serial I / O interface (SIO) 97 are interfaces for connecting the
[0050]
The hardware configuration of the
[0051]
Next, the flight simulation game realized by the
[0052]
Here, the flight simulation game is a game in which a player operates an operation target object representing an airplane using the
[0053]
First, the data structure of the optical disc will be described.
[0054]
FIG. 5 is a diagram for explaining the data configuration of the optical disk 85 mounted on the
[0055]
As shown in the figure, the optical disc 85 stores an application program (PG) 501 for realizing a flight simulation game, and various data including object data (DA) 502 and a map database (DB) 503.
[0056]
The object DA502 stores various information necessary for specifying the three-dimensional shape, texture, and the like of an operation target object (an object representing an airplane) operated by the player using the
[0057]
Next, a software configuration for realizing a flight simulation game constructed on the
[0058]
FIG. 6 is a diagram showing a software configuration for realizing a flight simulation game constructed on the
[0059]
In FIG. 6, the operation
[0060]
Here, as for the movement speed of the operation target object, for example, any one of the first and
[0061]
That is, when the detection signal of the button having the same function as the throttle is output from the
[0062]
Further, the moving direction of the operation target object is determined by, for example, giving the
[0063]
That is, the operation of the airplane represented by the operation target object according to the value of the X coordinate component of the signal corresponding to the coordinate value on the XY coordinate output from the
[0064]
Specifically, in FIG. 3, when the value of the X coordinate component is 128 to 255, the larger the value is, the larger the airplane is tilted to the right, and when the value of the X coordinate component is 0 to 126, the value is It is assumed that the smaller the airplane is, the more the airplane tilts to the left. When the value of the X coordinate component is 127, it is assumed that there is no inclination of the airplane left and right. When the value of the Y coordinate component is 128 to 255, the aircraft nose is increased as the value is larger. When the value of the Y coordinate component is 0 to 126, the aircraft nose is increased as the value is smaller. It shall be greatly lowered. When the value of the Y coordinate component is 127, it is assumed that the nose of the airplane nose is up and down.
[0065]
Then, the operation
[0066]
By the way, in the real world, a very advanced maneuver is required for the action of shifting the airplane to a complete turning flight state using a maneuver. For this reason, if the
[0067]
Therefore, in the present embodiment, the coordinate value on the XY coordinate indicated by the signal output from the
[0068]
For example, when it is determined that a sharp turn flight in the upper right corner is to be performed, the airplane represented by the operation target object is tilted 45 degrees to the right, the nose of the airplane is raised 45 degrees, and the previously determined operation target object The moving direction of the operation target object is determined from the moving direction. If it is determined that the aircraft will make a counterclockwise sharp turn flight, the airplane is tilted 45 degrees to the left and the nose of the airplane is raised 45 degrees, and the operation is performed from the previously determined movement direction of the operation target object. Determine the direction of movement of the target object.
[0069]
Next, in FIG. 6, the object
[0070]
Specifically, the current position of the operation target object is calculated from the previously calculated position and orientation of the operation target object and the latest movement speed of the operation target object determined by the operation
[0071]
The three-dimensional
[0072]
Note that the terrain generation processing in the three-dimensional
[0073]
The
[0074]
Note that the three-dimensional
[0075]
The
[0076]
7 to 9 are diagrams for explaining the positional relationship between the
[0077]
Here, FIG. 7 shows a state in which the
[0078]
(1) Virtual camera placement position (camera installation point)
As shown in FIGS. 7 to 9, the
[0079]
(1): On a
[0080]
{Circle over (2)}: The camera tracking point from the previously calculated
[0081]
{Circle around (3)} In the above {circle around (1)}, the distance K is shortened as the moving speed of the
[0082]
K = ka (BA)
Here, B is the moving speed of the operation target object newly calculated by the operation
[0083]
That is, the
[0084]
In the initial state (when the game is started), the
[0085]
(2) Camera direction (camera gaze direction)
As illustrated in FIGS. 7 to 9, the
[0086]
(1): A
[0087]
{Circle around (2)} In the above {circle around (1)}, the distance J becomes longer as the movement speed of the
[0088]
J = j + b (BA)
Here, B is the movement speed of the operation target object newly calculated by the operation
[0089]
(3) Camera orientation (camera tilt with respect to camera viewing direction)
As shown in FIG. 9, when the
[0090]
10 and 11 are diagrams for explaining how the
[0091]
Here, FIG. 10 shows the relationship between the
[0092]
FIG. 12 is a diagram showing an example of an image obtained when the image is taken by the
[0093]
FIG. 13 is a diagram illustrating an example of an image obtained when the image is captured by the
[0094]
As is clear from FIG. 10 and FIG. 12, by setting the placement position and orientation of the
[0095]
As is clear from FIGS. 11 and 13, by setting the position and orientation of the
[0096]
Returning to FIG. 6, the description will be continued.
[0097]
The
[0098]
The
[0099]
In addition, the
Next, the operation of the software configuration for realizing the flight simulation game constructed on the
[0100]
FIG. 14 is a flowchart for explaining the operation of the software configuration for realizing the flight simulation game constructed on the
[0101]
First, the operation
[0102]
Next, the operation
[0103]
Specifically, the coordinate value on the XY coordinate indicated by the signal output from the operating
[0104]
If it is within the predetermined range, the
[0105]
On the other hand, when it is not within the predetermined range, the
[0106]
Next, the object
[0107]
Specifically, the current position of the
[0108]
Next, the 3D
[0109]
In step S1007, the 3D map
[0110]
In step S1008, the
[0111]
Next, in accordance with the procedure described above with reference to FIGS. 7 to 13, the
[0112]
As described above, the
[0113]
Then, in step S1010, the
[0114]
By repeatedly performing the above-described flow shown in FIG. 14, the
[0115]
The embodiment of the present invention has been described above.
[0116]
According to the present embodiment, since the
[0117]
For this reason, the player can easily understand the behavior of the
[0118]
Further, according to the present embodiment, the
[0119]
For this reason, when the player increases the moving speed of the
[0120]
Note that the movement speed of the
[0121]
Furthermore, in this embodiment, the camera line-of-
[0122]
For this reason, when the player increases the movement speed of the
[0123]
In addition, in the present embodiment, the left / right inclination of the airplane represented by the
[0124]
By doing in this way, operation of the
[0125]
In addition, this invention is not limited to said embodiment, A various deformation | transformation is possible within the range of the summary.
[0126]
In the above embodiment, the
[0127]
For example, the
[0128]
Alternatively, it is obtained by dividing the distance L between the intermediate point between the
[0129]
Moreover, although said embodiment demonstrated and demonstrated the case where the flight simulation game was performed using this
[0130]
When a drive simulation game is performed using the
[0131]
In addition, according to the present invention, the setting method of the arrangement position and orientation of the
[0132]
Further, the appearance and hardware configuration of the
[0133]
In addition, on the
[0134]
【The invention's effect】
As described above, according to the present invention, in an entertainment device that displays a moving image obtained by photographing an object moving in a virtual three-dimensional world with a virtual camera on a display screen of a display device. The behavior of the object in the three-dimensional world can be more grasped from the moving image displayed on the display screen of the display device.
[0135]
In particular, in an entertainment device such as a flight simulation or a drive simulation in which an operator can operate an object moving around a virtual three-dimensional world using the operation device, the operator can use the virtual object that he / she operated. This makes it easy to grasp the behavior of a typical 3D world through the display screen. Thereby, a sense of reality increases and entertainment is improved.
[Brief description of the drawings]
FIG. 1 is a diagram showing an external appearance example of an
FIG. 2 is a diagram showing the operating
3 is a diagram for explaining values that can be input using
4 is a diagram showing a hardware configuration example of the
FIG. 5 is a diagram for explaining a data configuration of an optical disc 85 mounted on the
6 is a diagram showing a software configuration for realizing a flight simulation game constructed on the
7 is a diagram for explaining a positional relationship between a
8 is a diagram for explaining a positional relationship between a
9 is a diagram for explaining the positional relationship between a
10 is a diagram for explaining how a
11 is a diagram for explaining how a
12 is a diagram showing an example of an image obtained when the
13 is a diagram showing an example of an image obtained when the image is taken by a
14 is a flowchart for explaining the operation of the software configuration for realizing the flight simulation game constructed on the
FIG. 15 is a diagram for explaining the positional relationship between an object (an object representing an airplane) 901 and a
16 is a diagram showing an image obtained when an
[Explanation of symbols]
DESCRIPTION OF
52 ... Peripheral device controller 53 ...
60 ...
62. Image processing device (GPU: Graphic Processing Unit)
63 ...
72 ... Sound buffer 73 ...
DESCRIPTION OF
Claims (14)
前記3次元世界中における前記オブジェクトの位置および移動方向を逐次算出するオブジェクト位置算出手段と、
前記オブジェクト位置算出手段で前記オブジェクトの位置および移動方向が算出される毎に、前記3次元世界中における前記仮想的なカメラの設置位置を、少なくとも1つ前に算出した当該仮想的なカメラの設置位置を考慮して決定するカメラ設定手段と、を有し、
前記カメラ設定手段は、
前記オブジェクト位置算出手段で新たに算出された前記オブジェクトの位置を通り、新たに算出された前記オブジェクトの移動方向に平行な線上の、当該オブジェクトの位置から距離Kだけ後方の位置より所定値Hだけ上方の位置に、カメラ追跡点を設定する手段を有し、
少なくとも1つ前に算出した前記仮想的なカメラの設置位置から前記カメラ追跡点へ近づく位置に、当該仮想的なカメラの設置位置を設定すること
を特徴とするエンタテインメント装置。A moving image obtained by photographing a virtual three-dimensional object with a virtual camera according to the operation contents of the operator received via the operation device is displayed on the display screen of the display device. An entertainment device,
Object position calculating means for sequentially calculating the position and moving direction of the object in the three-dimensional world;
Each time the position and moving direction of the object are calculated by the object position calculation means, the installation position of the virtual camera calculated at least one time before the installation position of the virtual camera in the three-dimensional world. Camera setting means for determining in consideration of the position ,
The camera setting means includes
A predetermined value H from the position behind the position of the object by a distance K on a line parallel to the newly calculated movement direction of the object, passing through the position of the object newly calculated by the object position calculation means. Means for setting a camera tracking point at an upper position;
An entertainment apparatus , wherein the virtual camera installation position is set at a position approaching the camera tracking point from the virtual camera installation position calculated at least one time ago .
前記カメラ設定手段は、
前記カメラ追跡点および少なくとも1つ前に算出した前記仮想的なカメラの設置位置間の距離Lを、所定値Mで割ることで得られる距離L/Mだけ、少なくとも1つ前に算出した前記仮想的なカメラの設置位置から前記カメラ追跡点に近づく位置に、当該仮想的なカメラの設置位置を設定すること
を特徴とするエンタテインメント装置。The entertainment device according to claim 1 ,
The camera setting means includes
The virtual calculated at least one previous distance L / M obtained by dividing the distance L between the camera tracking point and the virtual camera installation position calculated at least one previous by a predetermined value M An entertainment apparatus, wherein the virtual camera installation position is set to a position approaching the camera tracking point from a typical camera installation position.
前記カメラ設定手段は、
前記距離Kを、前記3次元世界中における前記オブジェクトの移動速度が大きくなるほど短くなるように設定すること
を特徴とするエンタテインメント装置。An entertainment device according to claim 2 ,
The camera setting means includes
The entertainment apparatus according to claim 1, wherein the distance K is set so as to decrease as the moving speed of the object in the three-dimensional world increases.
前記カメラ設定手段は、
前記オブジェクト位置算出手段で新たに算出された前記オブジェクトの位置を通り、新たに算出された前記オブジェクトの移動方向に平行な線上の、当該オブジェクトの位置から距離Jだけ前方の位置に、カメラ参照点を設定する手段をさらに有し、
前記仮想的なカメラが、前記カメラ参照点を向くように、当該仮想的なカメラの視線方向を設定すること
を特徴とするエンタテインメント装置。The entertainment device according to any one of claims 1 to 3 ,
The camera setting means includes
A camera reference point that passes through the position of the object newly calculated by the object position calculation means and is on the line parallel to the newly calculated movement direction of the object by a distance J from the position of the object. Further has means for setting
An entertainment apparatus, characterized in that the visual line direction of the virtual camera is set so that the virtual camera faces the camera reference point.
前記カメラ設定手段は、
前記距離Jを、前記3次元世界中における前記オブジェクトの移動速度が大きくなるほど長くなるように設定すること
を特徴とするエンタテインメント装置。The entertainment device according to claim 4 ,
The camera setting means includes
The entertainment apparatus, wherein the distance J is set so as to increase as the moving speed of the object in the three-dimensional world increases.
前記カメラ設定手段は、
前記オブジェクトの移動方向を軸とした回動に応じて、前記仮想的なカメラを、当該カメラの視線方向を軸として回動させること
を特徴とするエンタテインメント装置。An entertainment device according to any one of claims 1 to 5 ,
The camera setting means includes
An entertainment apparatus, wherein the virtual camera is rotated about the sight line direction of the camera according to the rotation about the moving direction of the object.
前記プログラムは、前記電子計算機に読み取られて実行されることで、
当該電子計算機に接続された操作装置を介して受け付けた操作者の操作内容にしたがい仮想的な3次元世界中を移動するオブジェクトを、仮想的なカメラで撮影することで得られる動画像を、当該電子計算機に接続された表示装置の表示画面上に表示する手段を、当該電子計算機上に構築するものであり、
前記表示する手段は、
前記3次元世界中における前記オブジェクトの位置および移動方向を逐次算出するオブジェクト位置算出手段と、
前記オブジェクト位置算出手段で前記オブジェクトの位置および移動方向が算出される毎に、前記3次元世界中における前記仮想的なカメラの設置位置を、少なくとも1つ前に算出した当該仮想的なカメラの設置位置を考慮して決定するカメラ設定手段と、を有し、
前記カメラ設定手段は、
前記オブジェクト位置算出手段で新たに算出された前記オブジェクトの位置を通り、新たに算出された前記オブジェクトの移動方向に平行な線上の、当該オブジェクトの位置から距離Kだけ後方の位置より所定値Hだけ上方の位置に、カメラ追跡点を設定する手段を有し、
少なくとも1つ前に算出した前記仮想的なカメラの設置位置から前記カメラ追跡点へ近づく位置に、当該仮想的なカメラの設置位置を設定すること
を特徴とする記憶媒体。A storage medium storing a program to be read and executed by an electronic computer,
The program is read and executed by the electronic computer,
A moving image obtained by photographing an object moving in a virtual three-dimensional world with a virtual camera in accordance with an operation content of an operator received through an operation device connected to the electronic computer, Means for displaying on the display screen of the display device connected to the electronic computer is constructed on the electronic computer,
The means for displaying is
Object position calculating means for sequentially calculating the position and moving direction of the object in the three-dimensional world;
Each time the position and moving direction of the object are calculated by the object position calculation means, the installation position of the virtual camera calculated at least one time before the installation position of the virtual camera in the three-dimensional world. Camera setting means for determining in consideration of the position ,
The camera setting means includes
A predetermined value H from the position behind the position of the object by a distance K on a line parallel to the newly calculated movement direction of the object, passing through the position of the object newly calculated by the object position calculation means. Means for setting a camera tracking point at an upper position;
A storage medium , wherein the virtual camera installation position is set at a position approaching the camera tracking point from the virtual camera installation position calculated at least one time ago .
前記カメラ設定手段は、
前記カメラ追跡点および少なくとも1つ前に算出した前記仮想的なカメラの設置位置間の距離Lを、所定値Mで割ることで得られる距離L/Mだけ、少なくとも1つ前に算出した前記仮想的なカメラの設置位置から前記カメラ追跡点に近づく位置に、当該仮想的なカメラの設置位置を設定すること
を特徴とする記憶媒体。The storage medium according to claim 7 ,
The camera setting means includes
The virtual calculated at least one previous distance L / M obtained by dividing the distance L between the camera tracking point and the virtual camera installation position calculated at least one previous by a predetermined value M A storage medium characterized in that the virtual camera installation position is set to a position approaching the camera tracking point from a typical camera installation position.
前記カメラ設定手段は、
前記距離Kを、前記3次元世界中における前記オブジェクトの移動速度が大きくなるほど短くなるように設定すること
を特徴とする記憶媒体。The storage medium according to claim 8 ,
The camera setting means includes
The storage medium, wherein the distance K is set so as to decrease as the moving speed of the object in the three-dimensional world increases.
前記カメラ設定手段は、
前記オブジェクト位置算出手段で新たに算出された前記オブジェクトの位置を通り、新たに算出された前記オブジェクトの移動方向に平行な線上の、当該オブジェクトの位置から距離Jだけ前方の位置に、カメラ参照点を設定する手段をさらに有し、
前記仮想的なカメラが、前記カメラ参照点を向くように、当該仮想的なカメラの視線方向を設定すること
を特徴とする記憶媒体。A storage medium according to any one of claims 7 to 9 ,
The camera setting means includes
A camera reference point that passes through the position of the object newly calculated by the object position calculation means and is on the line parallel to the newly calculated movement direction of the object by a distance J from the position of the object. Further has means for setting
A storage medium characterized by setting a viewing direction of the virtual camera so that the virtual camera faces the camera reference point.
前記カメラ設定手段は、
前記距離Jを、前記3次元世界中における前記オブジェクトの移動速度が大きくなるほど長くなるように設定すること
を特徴とする記憶媒体。The storage medium according to claim 10 ,
The camera setting means includes
The storage medium, wherein the distance J is set so as to increase as the moving speed of the object in the three-dimensional world increases.
前記カメラ設定手段は、
前記オブジェクトの移動方向を軸とした回動に応じて、前記仮想的なカメラを、当該カメラの視線方向を軸として回動させること
を特徴とする記憶媒体。A storage medium according to any one of claims 7 to 11 ,
The camera setting means includes
A storage medium, wherein the virtual camera is rotated about the sight line direction of the camera according to the rotation about the moving direction of the object.
前記オブジェクトの前記3次元世界中における位置および移動方向を逐次算出するステップと、
前記オブジェクトの位置および移動方向が算出される毎に、前記3次元世界中における前記仮想的なカメラの設置位置を、少なくとも1つ前に算出した当該仮想的なカメラの設置位置を考慮して決定するステップと、を有し、
前記決定するステップは、
前記逐次算出するステップで新たに算出された前記オブジェクトの位置を通り、新たに算出された前記オブジェクトの移動方向に平行な線上の、当該オブジェクトの位置から距離Kだけ後方の位置より所定値Hだけ上方の位置に、カメラ追跡点を設定し、
少なくとも1つ前に算出した前記仮想的なカメラの設置位置から前記カメラ追跡点へ近づく位置に、当該仮想的なカメラの設置位置を決定すること
を特徴とするオブジェクト表示方法。An object display method for displaying, on a display screen of a display device, a moving image obtained by photographing an object moving around a virtual three-dimensional world with a virtual camera,
Sequentially calculating the position and moving direction of the object in the three-dimensional world;
Each time the position and moving direction of the object are calculated, the installation position of the virtual camera in the three-dimensional world is determined in consideration of the installation position of the virtual camera calculated at least one time ago. And a step of
The determining step includes:
A predetermined value H from a position behind the position of the object by a distance K on a line parallel to the newly calculated movement direction of the object through the position of the object newly calculated in the sequential calculation step. Set the camera tracking point in the upper position,
An object display method , wherein the virtual camera installation position is determined at a position approaching the camera tracking point from the virtual camera installation position calculated at least one previous time .
前記プログラムは、記憶装置に格納され、前記電子計算機に読み取られて実行されることで、
当該電子計算機に接続された操作装置を介して受け付けた操作者の操作内容にしたがい仮想的な3次元世界中を移動するオブジェクトを、仮想的なカメラで撮影することで得られる動画像を、当該電子計算機に接続された表示装置の表示画面上に表示する手段を、当該電子計算機上に構築するものであり、
前記表示する手段は、
前記3次元世界中における前記オブジェクトの位置および移動方向を逐次算出するオブジェクト位置算出手段と、
前記オブジェクト位置算出手段で前記オブジェクトの位置および移動方向が算出される毎に、前記3次元世界中における前記仮想的なカメラの設置位置を、少なくとも1つ前に算出した当該仮想的なカメラの設置位置を考慮して決定するカメラ設定手段と、を有し、
前記カメラ設定手段は、
前記オブジェクト位置算出手段で新たに算出された前記オブジェクトの位置を通り、新たに算出された前記オブジェクトの移動方向に平行な線上の、当該オブジェクトの位置から距離Kだけ後方の位置より所定値Hだけ上方の位置に、カメラ追跡点を設定する手段を有し、
少なくとも1つ前に算出した前記仮想的なカメラの設置位置から前記カメラ追跡点へ近づく位置に、当該仮想的なカメラの設置位置を設定すること
を特徴とするプログラム。A program that is read and executed by an electronic computer,
The program is stored in a storage device and read and executed by the electronic computer.
A moving image obtained by photographing an object moving in a virtual three-dimensional world with a virtual camera in accordance with an operation content of an operator received through an operation device connected to the electronic computer, Means for displaying on the display screen of the display device connected to the electronic computer is constructed on the electronic computer,
The means for displaying is
Object position calculating means for sequentially calculating the position and moving direction of the object in the three-dimensional world;
Each time the position and moving direction of the object are calculated by the object position calculation means, the installation position of the virtual camera calculated at least one time before the installation position of the virtual camera in the three-dimensional world. Camera setting means for determining in consideration of the position ,
The camera setting means includes
A predetermined value H from the position behind the position of the object by a distance K on a line parallel to the newly calculated movement direction of the object, passing through the position of the object newly calculated by the object position calculation means. Means for setting a camera tracking point at an upper position;
A program characterized in that the installation position of the virtual camera is set at a position approaching the camera tracking point from the installation position of the virtual camera calculated at least one time ago .
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001012277A JP3583994B2 (en) | 2000-01-21 | 2001-01-19 | Entertainment device, storage medium, and object display method |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000-12810 | 2000-01-21 | ||
JP2000012810 | 2000-01-21 | ||
JP2001012277A JP3583994B2 (en) | 2000-01-21 | 2001-01-19 | Entertainment device, storage medium, and object display method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2001273524A JP2001273524A (en) | 2001-10-05 |
JP3583994B2 true JP3583994B2 (en) | 2004-11-04 |
Family
ID=26583920
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001012277A Expired - Fee Related JP3583994B2 (en) | 2000-01-21 | 2001-01-19 | Entertainment device, storage medium, and object display method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3583994B2 (en) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4885537B2 (en) * | 2005-12-27 | 2012-02-29 | 富士通株式会社 | Simulation apparatus, method, and program |
JP4799269B2 (en) * | 2006-05-19 | 2011-10-26 | 株式会社ソニー・コンピュータエンタテインメント | Image processing apparatus and program |
JP6085411B2 (en) | 2011-06-02 | 2017-02-22 | 任天堂株式会社 | Image processing apparatus, image processing method, and control program for image processing apparatus |
-
2001
- 2001-01-19 JP JP2001012277A patent/JP3583994B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2001273524A (en) | 2001-10-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6781598B1 (en) | Entertainment apparatus, image generation method, and storage medium | |
US6670957B2 (en) | Entertainment apparatus, storage medium and object display method | |
US6413163B1 (en) | Video game machine, method for switching viewpoint on game screen of video game, and computer-readable recording medium containing game-screen-viewpoint switching program | |
US7922584B2 (en) | Image generation method and information storage medium with program for video game in which operation of the controller beyond a predetermined angle causes a character to attack | |
JP4704622B2 (en) | Image generation system, program, and information storage medium | |
US6762746B2 (en) | Entertainment apparatus, storage medium and operation method of manipulating object | |
US7094153B2 (en) | Virtual space control method | |
JP2006230853A (en) | Game device, game control method, and program | |
EP1213044B1 (en) | Video game system, character action control method, and readable storage medium storing character action control program | |
JP3249955B2 (en) | Image generation system and information storage medium | |
US6989832B2 (en) | Entertainment apparatus, storage medium and object display method | |
JP3583995B2 (en) | Entertainment device, storage medium, and object display method | |
EP1095679B1 (en) | Entertainment unit, recording medium and method for setting its parameters | |
JP3747050B1 (en) | Program, information storage medium, and image generation system | |
EP1036581B1 (en) | Image creating method and apparatus, recording medium for recording image creating program, and video game machine | |
JP3602835B2 (en) | VIDEO GAME DEVICE, ITS CONTROL METHOD, AND GAME PROGRAM | |
JP3583994B2 (en) | Entertainment device, storage medium, and object display method | |
JP3786670B1 (en) | Program, information storage medium, and image generation system | |
JP4212015B2 (en) | Image generating apparatus and information storage medium | |
JP5054908B2 (en) | Program, information storage medium, and image generation system | |
JP2001269485A (en) | Entertainment device, storage medium, and displayed object operating method | |
JP2005322057A (en) | Program, information storage medium and image generation system | |
JP2002369964A (en) | Entertainment device, storage medium and parameter setting method | |
JP2008071049A (en) | Program, information storage medium, and image generation system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040427 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040604 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20040720 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20040730 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20070806 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080806 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080806 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090806 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090806 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100806 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110806 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110806 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120806 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120806 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130806 Year of fee payment: 9 |
|
LAPS | Cancellation because of no payment of annual fees |