JP4180065B2 - 画像生成方法、画像生成装置、および画像生成プログラム - Google Patents

画像生成方法、画像生成装置、および画像生成プログラム Download PDF

Info

Publication number
JP4180065B2
JP4180065B2 JP2005140722A JP2005140722A JP4180065B2 JP 4180065 B2 JP4180065 B2 JP 4180065B2 JP 2005140722 A JP2005140722 A JP 2005140722A JP 2005140722 A JP2005140722 A JP 2005140722A JP 4180065 B2 JP4180065 B2 JP 4180065B2
Authority
JP
Japan
Prior art keywords
dimensional character
dimensional
virtual camera
space
character
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.)
Active
Application number
JP2005140722A
Other languages
English (en)
Other versions
JP2006318241A (ja
Inventor
健太郎 安井
洋介 塩川
隆児 池田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Square Enix Co Ltd
Original Assignee
Square Enix Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Square Enix Co Ltd filed Critical Square Enix Co Ltd
Priority to JP2005140722A priority Critical patent/JP4180065B2/ja
Priority to US11/432,512 priority patent/US7588497B2/en
Priority to EP06009852.2A priority patent/EP1722334B1/en
Publication of JP2006318241A publication Critical patent/JP2006318241A/ja
Application granted granted Critical
Publication of JP4180065B2 publication Critical patent/JP4180065B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/203D [Three Dimensional] animation

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Processing Or Creating Images (AREA)

Description

本発明は、3次元ポリゴンデータで描画された3次元キャラクタと2次元スプライトデータで描画された2次元キャラクタとを含む複数のキャラクタを仮想3次元空間に描画したキャラクタ画像を生成するための技術に関する。
パーソナルコンピュータやゲーム機などにおいて、仮想3次元空間に3次元物体を含むキャラクタを描画する際には、一般に、3次元物体が3次元ポリゴンデータにより描画される。3次元ポリゴンデータは、仮想カメラの視界内にある3次元物体ごとに、仮想カメラの視点位置やその視点位置からの距離に応じたポリゴン計算が行われることでそれぞれ生成される。
このため、仮想3次元空間に描画する3次元物体の数が多くなるに従ってポリゴン計算の計算量が増していくことになり、仮想3次元空間に描画される3次元物体の数が多いとパーソナルコンピュータやゲーム機などのハードウェアの演算能力を超えてしまう恐れがある。演算能力を超えてしまうと、表示速度の低下や画面のちらつきなどの弊害が発生することとなってしまう。
こうした問題を防ぐため、従来から、仮想カメラの視点位置から一定の距離以上離れている3次元物体の描画を省略し、描画する3次元物体の数を減らすようにしているものはある。しかし、距離は離れてはいるが実空間では見える物体が、仮想3次元空間として表示される画面においては省略されてしまうこととなるため、臨場感に欠けるものとなっていた。
なお、仮想3次元空間における表示物体を省略せずにハードウェアの処理負担を軽減させるために、多くの物体を表示する際に、全ての物体を3次元ポリゴンデータで描画せず、仮想カメラの視点位置から一定の距離以上離れている一部の物体を2次元スプライトデータで描画するようにしているものがある(例えば、特許文献1参照)。
特開2003−141560号公報
しかしながら、上述した特許文献1の技術では、表示する物体が仮想カメラの視点位置から一定の距離内であるか否かを判定し、一定距離内であれば3次元ポリゴンデータで描画し、一定距離外であれば2次元スプライトデータで描画するようにしているため、仮想カメラの視点位置から一定距離の前後を移動する物体については、2次元物体と3次元物体とを入れ替える必要が生じてしまう。このため、2次元スプライトデータと3次元ポリゴンデータとを入れ替える処理が必要となり、さらに、2次元スプライトデータで描画していた物体が3次元ポリゴンデータに入れ替えられた場合には仮想3次元空間における3次元物体が増えることとなるため、これによってハードウェアの制御負担が増大する可能性があり、ハードウェアの演算能力を超えてしまう恐れがあるという問題があった。
本発明は、上述した問題を解消し、仮想3次元空間に複数の物体を含む画像を描画する際に、臨場感を欠くことなくハードウェアの処理負荷を低減させることができるようにすることを目的とする。
本発明の画像処理方法は、3次元ポリゴンデータで描画された3次元キャラクタ(例えば3次元ノン・プレイヤ・キャラクタ)と2次元スプライトデータで描画された2次元キャラクタ(例えば2次元ノン・プレイヤ・キャラクタ)とを含む複数のキャラクタを仮想3次元空間に描画したキャラクタ画像を生成する画像生成方法であって、仮想カメラの視界内かつ前記仮想カメラの視点位置から所定距離(例えば50[m])内に前記3次元キャラクタを描画するとともに、前記仮想カメラの視界内かつ前記仮想カメラの視点位置から所定距離外に前記2次元キャラクタを描画し(例えば、ステップS102で決定された初期画面を描画するためのステップS108の処理)、前記仮想カメラの視点位置が移動したときであっても、前記仮想カメラの視界内に描画されている前記3次元キャラクタの位置を移動するときは、前記仮想カメラの視点位置から前記所定距離内を維持した位置(例えば、2D3D境界面より仮想カメラの視点位置側の空間内の位置、あるいはさらに3D禁止空間外の位置)に移動するように前記3次元キャラクタを描画し(例えば、ステップS303またはステップS304で決定された位置に3次元ノン・プレイヤ・キャラクタを描画するためのステップS108の処理)、前記仮想カメラの視点位置が移動したときであっても、前記仮想カメラの視界内に描画されている前記2次元キャラクタの位置を移動するときは、前記仮想カメラの視点位置から前記所定距離外を維持した位置(例えば、2D3D境界面より仮想カメラの視点位置と反対側の空間内の位置、あるいはさらに2D禁止空間外の位置)に移動するように前記2次元キャラクタを描画する(例えば、ステップS203またはステップS204で決定された位置に2次元ノン・プレイヤ・キャラクタを描画するためのステップS108の処理)ことを特徴とする。
上記のように構成したことで、3次元キャラクタが描画される位置を仮想カメラの視点位置から所定距離内に維持させることができるとともに、2次元キャラクタが描画される位置を仮想カメラの視点位置から所定距離外に維持させることができる。よって、仮想カメラの視点位置から所定距離に形成される境界面を3次元キャラクタや2次元キャラクタが通過してしまうことを防止することができ、仮想3次元空間に複数のキャラクタを含む画像を描画する際に、臨場感を欠くことなくハードウェアの処理負荷を低減させることができる。
仮想3次元空間には、仮想カメラの視点位置から所定距離外の一部に、2次元キャラクタを表示することが禁止された2次元キャラクタ表示禁止空間(例えば2D禁止空間)があらかじめ設けられ、2次元キャラクタの位置を移動させるときに、当該移動によって前記2次元キャラクタ表示禁止空間に前記2次元キャラクタが進入することとなるか否か判定し(例えばステップS202)、前記移動によって前記2次元キャラクタが前記2次元キャラクタ表示禁止空間に進入することとなると判定したときには、あらかじめ定められた2次元キャラクタ移動条件(例えば2D位置選択条件)に従って、前記2次元キャラクタを移動する位置を、前記2次元キャラクタ表示禁止空間外の位置に変更する(例えばステップS203)ことが望ましい。このように構成したことで、2次元キャラクタが描画される位置を2次元キャラクタ表示禁止空間外に維持させることができる。
2次元キャラクタ表示禁止空間は、例えば、仮想カメラの視点位置から所定距離に形成される境界面に隣接した空間であって、2次元キャラクタが前記仮想カメラの視界境界に近い位置に表示されるときは前記境界面に近い位置まで表示が許容され、2次元キャラクタが前記仮想カメラの視界境界から離れた位置に表示されるときは前記境界面に近い位置は表示が禁止されるようにあらかじめ定められ、2次元キャラクタ移動条件は、例えば、仮想3次元空間の中心軸から遠ざかり前記仮想カメラの視界境界に近づく方向にある位置であって、前記2次元キャラクタ表示禁止空間外となっている位置であるときに成立すると定められる。このように構成すれば、仮想カメラの視点位置が2次元キャラクタに近づく方向に移動していった場合に、2次元キャラクタが描画される位置を仮想カメラの視点位置から所定距離外に維持させたまま、2次元キャラクタを仮想カメラの視界境界方向に移動させていき、仮想カメラの視点位置から所定距離内に進入させることなく円滑に2次元キャラクタを仮想カメラの視界外に移動させることができる。
2次元キャラクタの位置を移動させるときに、当該移動によって仮想カメラの所定距離内に前記2次元キャラクタが進入することとなるか否か判定し、前記移動によって前記2次元キャラクタが前記仮想カメラの所定距離内に進入することとなると判定したときには、前記2次元キャラクタを移動する位置を、前記仮想カメラの所定距離外に変更するように構成されていてもよい。このように構成すれば、仮想カメラの視点位置が2次元キャラクタに近づく方向に移動していった場合であっても、2次元キャラクタが描画される位置を仮想カメラの視点位置から所定距離外に維持させておくことができる。
仮想3次元空間には、仮想カメラの視点位置から所定距離内の一部に、3次元キャラクタを表示することが禁止された3次元キャラクタ表示禁止空間(例えば3D禁止空間)があらかじめ設けられ、3次元キャラクタの位置を移動させるときに、当該移動によって前記3次元キャラクタ表示禁止空間に前記3次元キャラクタが進入することとなるか否か判定し(例えばステップS302)、前記移動によって前記3次元キャラクタが前記3次元キャラクタ表示禁止空間に進入することとなると判定したときには、あらかじめ定められた3次元キャラクタ移動条件(例えば3D位置選択条件)に従って、前記3次元キャラクタを移動する位置を、前記3次元キャラクタ表示禁止空間外の位置に変更する(例えばステップS303)ことが望ましい。このように構成したことで、3次元キャラクタが描画される位置を3次元キャラクタ表示禁止空間外に維持させることができる。
3次元キャラクタ表示禁止空間は、例えば、仮想カメラの視点位置から所定距離に形成される境界面に隣接した空間であって、3次元キャラクタが前記仮想カメラの視界境界に近い位置に表示されるときは前記境界面に近い位置まで表示が許容され、2次元キャラクタが前記仮想カメラの視界境界から離れた位置に表示されるときは前記境界面に近い位置は表示が禁止されるようにあらかじめ定められ、3次元キャラクタ移動条件は、例えば、仮想3次元空間の中心軸から遠ざかり前記仮想カメラの視界境界に近づく方向にある位置であって、前記3次元キャラクタ表示禁止空間外となっている位置であるときに成立すると定められる。このように構成すれば、仮想カメラの視点位置が3次元キャラクタから離れる方向に移動していった場合に、3次元キャラクタが描画される位置を仮想カメラの視点位置から所定距離内に維持させたまま、3次元キャラクタを仮想カメラの視界境界方向に移動させていき、仮想カメラの視点位置から所定距離外に進入させることなく円滑に3次元キャラクタを仮想カメラの視界外に移動させることができる。
3次元キャラクタの位置を移動させるときに、当該移動によって仮想カメラの所定距離外に前記3次元キャラクタが進入することとなるか否か判定し、前記移動によって前記3次元キャラクタが前記仮想カメラの所定距離外に進入することとなると判定したときには、前記3次元キャラクタを移動する位置を、前記仮想カメラの所定距離内に変更するように構成されていてもよい。このように構成すれば、仮想カメラの視点位置が3次元キャラクタから離れる方向に移動していった場合であっても、3次元キャラクタが描画される位置を仮想カメラの視点位置から所定距離内に維持させておくことができる。
仮想3次元空間に描画される3次元キャラクタの総数が所定数(例えば3D上限数)以下となることを条件に、新たな3次元キャラクタを描画する(例えばステップS306〜S308)ことが望ましい。このように構成すれば、3次元キャラクタの総数が所定数を超えないようにすることができ、ハードウェアの処理負荷が処理能力を超えてしまうことを防止することができる。
また、本発明の画像生成装置は、3次元ポリゴンデータで描画された3次元キャラクタと2次元スプライトデータで描画された2次元キャラクタとを含む複数のキャラクタを仮想3次元空間に描画したキャラクタ画像を生成する画像生成装置(例えば、ビデオゲーム装置100、ビデオゲーム装置本体10)であって、仮想カメラの視界内かつ前記仮想カメラの視点位置から所定距離内に前記3次元キャラクタを描画するとともに、前記仮想カメラの視界内かつ前記仮想カメラの視点位置から所定距離外に前記2次元キャラクタを描画するキャラクタ描画手段(例えば、制御部11、グラフィック処理部15におけるステップS102で決定された初期画面を描画するためのステップS108の処理を実行する部分)と、前記仮想カメラの視点位置が移動したときであっても、前記仮想カメラの視界内に描画されている前記3次元キャラクタの位置を移動するときは、前記仮想カメラの視点位置から前記所定距離内を維持した位置に移動するように前記3次元キャラクタを描画する3次元キャラクタ移動描画手段(例えば、制御部11、グラフィック処理部15におけるステップS303またはステップS304で決定された位置に3次元ノン・プレイヤ・キャラクタを描画するためのステップS108の処理を実行する部分)と、前記仮想カメラの視点位置が移動したときであっても、前記仮想カメラの視界内に描画されている前記2次元キャラクタの位置を移動するときは、前記仮想カメラの視点位置から前記所定距離外を維持した位置に移動するように前記2次元キャラクタを描画する2次元キャラクタ移動描画手段(例えば、制御部11、グラフィック処理部15におけるステップS203またはステップS204で決定された位置に2次元ノン・プレイヤ・キャラクタを描画するためのステップS108の処理を実行する部分)とを備えたことを特徴とする。
上記のように構成したことで、3次元キャラクタが描画される位置を仮想カメラの視点位置から所定距離内に維持させることができるとともに、2次元キャラクタが描画される位置を仮想カメラの視点位置から所定距離外に維持させることができる。よって、仮想カメラの視点位置から所定距離に形成される境界面を3次元キャラクタや2次元キャラクタが通過してしまうことを防止することができ、仮想3次元空間に複数のキャラクタを含む画像を描画する際に、臨場感を欠くことなくハードウェアの処理負荷を低減させることができる。
さらに、本発明の画像生成プログラムは、3次元ポリゴンデータで描画された3次元キャラクタと2次元スプライトデータで描画された2次元キャラクタとを含む複数のキャラクタを仮想3次元空間に描画したキャラクタ画像を生成させるための画像生成プログラム(例えば記憶媒体70に格納されている処理プログラム)であって、コンピュータ(例えば、ビデオゲーム装置100、ビデオゲーム装置本体10)に、仮想カメラの視界内かつ前記仮想カメラの視点位置から所定距離内に前記3次元キャラクタを描画するとともに、前記仮想カメラの視界内かつ前記仮想カメラの視点位置から所定距離外に前記2次元キャラクタを描画するステップ(例えば、ステップS102で決定された初期画面を描画するためのステップS108の処理)と、前記仮想カメラの視点位置が移動したときであっても、前記仮想カメラの視界内に描画されている前記3次元キャラクタの位置を移動するときは、前記仮想カメラの視点位置から前記所定距離内を維持した位置に移動するように前記3次元キャラクタを描画するステップ(例えば、ステップS303またはステップS304で決定された位置に3次元ノン・プレイヤ・キャラクタを描画するためのステップS108の処理)と、前記仮想カメラの視点位置が移動したときであっても、前記仮想カメラの視界内に描画されている前記2次元キャラクタの位置を移動するときは、前記仮想カメラの視点位置から前記所定距離外を維持した位置に移動するように前記2次元キャラクタを描画するステップ(例えば、ステップS203またはステップS204で決定された位置に2次元ノン・プレイヤ・キャラクタを描画するためのステップS108の処理)とを実行させるためのものである。
上記のように構成したことで、コンピュータに、3次元キャラクタが描画される位置を仮想カメラの視点位置から所定距離内に維持させるように制御させることができるとともに、2次元キャラクタが描画される位置を仮想カメラの視点位置から所定距離外に維持させるように制御させることができる。よって、仮想カメラの視点位置から所定距離に形成される境界面を3次元キャラクタや2次元キャラクタが通過してしまうことを防止させることができ、仮想3次元空間に複数のキャラクタを含む画像を描画させる際に、臨場感を欠くことなくハードウェアの処理負荷を低減させることができる。
本発明によれば、3次元キャラクタが描画される位置を仮想カメラの視点位置から所定距離内に維持させることができるとともに、2次元キャラクタが描画される位置を仮想カメラの視点位置から所定距離外に維持させることができる。よって、仮想カメラの視点位置から所定距離に形成される境界面を3次元キャラクタや2次元キャラクタが通過してしまうことを防止することができ、仮想3次元空間に複数のキャラクタを含む画像を描画する際に、臨場感を欠くことなくハードウェアの処理負荷を低減させることができる。
以下、本発明の一実施の形態について図面を参照して説明する。
図1は、本発明の一実施の形態におけるビデオゲーム装置100の構成の例を示すブロック図である。
図1に示すように、本例のビデオゲーム装置100は、ビデオゲーム装置本体10と、表示装置50と、サウンド出力装置60とを含む。ビデオゲーム装置本体10は、例えば市販のビデオゲーム機によって構成される。また、表示装置50は、例えばテレビジョン装置や液晶表示装置などによって構成され、画像表示部51を有している。
ビデオゲーム装置本体10は、制御部11と、RAM12と、ハードディスクドライブ(HDD)13と、サウンド処理部14と、グラフィック処理部15と、DVD/CD−ROMドライブ16と、通信インターフェイス17と、インターフェイス部18と、フレームメモリ19と、メモリーカードスロット20と、入力部(コントローラ)21とを含む。
制御部11、RAM12、ハードディスクドライブ(HDD)13、サウンド処理部14、グラフィック処理部15、DVD/CD−ROMドライブ16、通信インターフェイス17、及びインターフェイス部18は、それぞれ内部バス22に接続されている。
制御部11は、CPUやROMなどを含み、HDD13や記憶媒体70に格納された制御プログラムに従ってビデオゲーム装置100全体の制御を行う。制御部11は、タイマ割り込みを発生させるため等に用いられる内部タイマを備えている。RAM12は、制御部11のワークエリアとして用いられる。HDD13は、制御プログラムや各種のデータを保存するための記憶領域である。
サウンド処理部14は、例えばスピーカによって構成されるサウンド出力装置60に接続される。サウンド処理部14は、制御プログラムに従って処理を実行している制御部11からのサウンド出力指示に従って、サウンド出力装置60に対してサウンド信号を出力する。なお、サウンド出力装置60は、表示装置50あるいはビデオゲーム装置本体10に内蔵されていてもよい。
グラフィック処理部15は、画面表示がなされる画像表示部51を有する表示装置50に接続される。グラフィック処理部15は、制御部11からの描画命令に従って、フレームメモリ19に画像を展開するとともに、画像表示部51に画像を表示させるためのビデオ信号を表示装置50に対して出力する。ビデオ信号によって表示される画像の切替時間は、例えば、1フレームあたり1/30秒とされる。
DVD/CD−ROMドライブ16には、DVD−ROMやCD−ROMなどのゲーム用の制御プログラムが格納された記憶媒体70が装着される。DVD/CD−ROMドライブ16は、装着された記憶媒体70から、制御プログラムなどの各種データを読み出す処理を行う。
通信インターフェイス17は、インターネットなどの通信ネットワーク80に無線あるいは有線によって接続される。ビデオゲーム装置本体10は、通信インターフェイス17における通信機能を用いて、通信ネットワーク80を介して例えば他のコンピュータとの通信を行う。
インターフェイス部18には、入力部21と、メモリカードスロット20とが接続される。インターフェイス部18は、プレイヤによる入力部21の操作にもとづく入力部21からの指示データをRAM12に格納する。すると、RAM12に格納された指示データに従って、制御部11が各種の演算処理を実行する。
入力部21は、例えばゲーム機用のコントローラによって構成され、例えば方向指示キーなどの複数の操作ボタンを備える。本例では、プレイヤは、方向指示キーを操作することによって、後述するプレイヤキャラクタを仮想的に移動させ、その他の各種の操作ボタンを操作することによって、場面に応じた所定の処理を制御部11に実行させる。なお、方向指示キーは、カーソルの移動などのためにも用いられる。
また、インターフェイス部18は、制御部11からの指示に従って、RAM12に記憶されているゲームの進行状況を示すデータをメモリカードスロット20に装着されているメモリーカード90に格納する処理や、メモリーカード90に保存されている中断時のゲームのデータを読み出してRAM12に転送する処理などを行う。
ビデオゲーム装置100でゲームを行うための制御プログラムなどの各種のデータは、例えば記憶媒体70に記憶されている。記憶媒体70に記憶されている制御プログラムなどの各種のデータは、記憶媒体70が装着されているDVD/CD−ROMドライブ16によって読み出され、RAM12にロードされる。制御部11は、RAM12にロードされた制御プログラムに従って、グラフィック処理部15に対して描画命令を出力する処理や、サウンド処理部14に対してサウンド出力の指示を出力する処理などの各種の処理を実行する。なお、制御部11が処理を実行している間は、ワークメモリとして用いられるRAM12に、ゲームの進行状況によって中間的に発生するデータ(例えば、ゲームの得点、プレイヤキャラクタの状態を示すデータなど)が保存される。
この実施の形態に係る3次元ビデオゲームは、仮想3次元空間に設けられたフィールド上を、後述するプレイヤキャラクタ(プレイヤによる入力部21の操作に従って動作するキャラクタ)などの複数のキャラクタが移動していくことによりゲームが進行する部分を含むゲームであるものとする。なお、フィールドが形成された仮想3次元空間は、ワールド座標系によって示されるものとする。フィールドは、複数の面で構成され、各構成面の頂点の座標を特徴点として表したものである。
図2は、この実施の形態に係る3次元ビデオゲームにおいて画像表示部51に表示されるキャラクタ画像の例を示す説明図である。図2に示すキャラクタ画像には、プレイヤキャラクタPと、複数のノン・プレイヤ・キャラクタ(NPC:プレイヤの操作によって動作するものでなく、ゲーム機側の制御(具体的には制御部11の制御)に従って動作するキャラクタ)とが表示されている。図2では、簡単のため、プレイヤキャラクタPを立方体で示し、NPCを正四面体で示すものとする。プレイヤキャラクタPや各NPCは、実際には、例えば人間や動物を模したキャラクタ、あるいは乗り物などの物体を形成したキャラクタとされる。
プレイヤキャラクタPを形成する各部位は、複数のポリゴンによって構成され、その特徴点(ポリゴンの頂点)は、ローカル座標系によって示される。すなわち、プレイヤキャラクタPは、3次元ポリゴンデータで描画される3次元キャラクタである。
プレイヤキャラクタPは、図2に示すように、本例では表示画面における中央位置の下部に表示される。なお、プレイヤキャラクタPは、表示画面の中央位置の下部周辺における所定範囲内を移動可能であるとしてもよい。本例では、プレイヤキャラクタPは、表示画面における中央位置の下部の所定位置から画面上は移動しないものとする。本例では、プレイヤキャラクタPが移動している様子は、背景が動くことによって表現されるものとする。プレイヤキャラクタPを構成するポリゴンの各頂点の位置は、ローカル座標系によって各特徴点の位置関係を特定し、ワールド座標系の座標に変換することによって定められる。
図2に示す複数のNPCのうち、M1〜M5の5個のNPCは、プレイヤキャラクタPと同様にして3次元ポリゴンデータで描画される3次元キャラクタである。一方、M1〜M5以外のNPCは、2次元スプライトデータで描画される2次元キャラクタである。すなわち、図2に示すキャラクタ画像に表示されている複数のNPCは、一部(ノン・プレイヤ・キャラクタM1〜M5)が3次元キャラクタとされ、他の一部(ノン・プレイヤ・キャラクタM1〜M5以外のNPC)が2次元キャラクタとされている。
各NPCは、それぞれ、制御プログラムに従って、ゲームの進行に応じて移動していくものとする。すなわち、プレイヤキャラクタPが移動しなくても、制御プログラムに従って各NPCがキャラクタ画像上を移動していくものとする。
また、各NPCは、制御プログラムに従って、画像表示部51における画像表示範囲外から新たに出現してきたり、キャラクタ画像上から消失したり、画像表示範囲外に移動していったりするものとする。また、各NPCは、同一形状とされていてもよく、一部または全部が異なる形状とされていてもよい。
本例では、仮想カメラの視点位置は、プレイヤキャラクタPから所定の間隔(レンジ)をおいて追従するように制御される。すなわち、仮想カメラの視点位置は、「三人称視点」と呼ばれる視点位置に設定され、プレイヤキャラクタPに追従して更新される。具体的には、プレイヤキャラクタPから所定間隔(例えば、実空間上の10[m])をおいたプレイヤキャラクタPの背後に仮想カメラの視点位置が設定され、その視点位置は、プレイヤキャラクタPが仮想3次元空間の奥側や手前側に移動していくと、プレイヤキャラクタPとの間隔が所定間隔に維持されるようにプレイヤキャラクタPに追従して仮想3次元空間の奥側や手前側に更新されていくように制御される。上記の所定間隔を維持するために、例えば、プレイヤキャラクタPを中心とした同一半径の球体表面上を仮想カメラが移動していくように視点位置制御が行われる。なお、上記の視点位置制御は一例であり、例えば、「三人称視点」でプレイヤキャラクタPを追従可能な範囲(視点位置の移動可能な範囲)があらかじめそれぞれ定められている複数の仮想カメラを用いることとし、プレイヤキャラクタPが移動した位置に応じて画像表示部51への画像表示のために使用する仮想カメラを切り替えていくようにしてもよい。また、「三人称視点」に限らず、「一人称視点」により視点位置制御を行うようにしてもよい。
プレイヤキャラクタPや複数のNPCが仮想3次元空間内のフィールド上を移動していく様子の画像は、仮想カメラにより仮想3次元空間を透視変換することで画像表示部51上に表示され、プレイヤに認識される。仮想3次元空間内に置かれた仮想カメラから仮想スクリーン上に投影される画像が、画像表示部51に表示される画像となる。仮想スクリーン上に画像を投影するために、視点座標系が用いられる。このため、制御部11によって、ワールド座標系の座標が、視点座標系の座標に変換されることとなる。
透視変換により仮想スクリーン上に投影した画像を生成する場合には、前面に他の物体があって隠されてしまう面を消去する陰面消去を行う必要がある。陰面消去の方法としては、ここでは、Zバッファ法を用いるものとする。すなわち、制御部11は、ワールド座標系の座標を視点座標系の座標へ変換すると、各特徴点の座標をグラフィック処理部15に通知するとともに、描画命令を出力する。この描画命令にもとづいて、グラフィック処理部15は、各特徴点について、前側にある点のデータが残るように、Zバッファの内容を更新し、更新する度に当該特徴点についての画像データをフレームメモリ19に展開する。
次に、本例のビデオゲーム装置100の動作について説明する。
ここでは、説明を簡単にするため、仮想3次元空間において動作するオブジェクトとして、プレイヤキャラクタPと複数のNPCのみが存在するものとし、本発明に特に関わる処理以外は、説明を省略している場合があるものとする。
図3は、本例のビデオゲーム装置100におけるメイン処理の例を示すフローチャートである。メイン処理は、1フレーム分の画像を生成するための処理であり、1/30秒ごとのタイマ割り込みに応じて実行される。なお、「1/30秒ごと」は一例であり、メイン処理は、例えば、1フィールド期間(1/60秒)ごとのタイマ割り込みに応じて実行されるものとしても、処理量によっては2フレーム期間(1/15秒)ごとのタイマ割り込みに応じて実行されるものとしてもよい。
メイン処理において、制御部11は、ゲーム開始前であればプレイヤによる入力部21の操作によりゲームの開始指示があったか否かを判定し、ゲームの実行中であれば場面変更を行うタイミングとなったか否かを判定する(ステップS101)。場面変更を行うタイミングは、例えば、これまで画像表示部51に表示していた場面(例えば、仮想3次元空間によって表されている場面、ムービー画像による動画演出によって表されていた場面)を終了し、新たな場面に切り替えるために、画像表示部51に新たな場面を示す仮想3次元空間を表示するタイミングを意味する。
ゲームの開始指示があったと判定したとき、あるいは場面変更を行うタイミングとなったと判定したときは(ステップS101のY)、制御部11は、制御プログラムに従って、初期画面(ゲーム開始時の初期画面、場面変更時の初期画面)を決定する(ステップS102)。なお、ゲームに用いられる画面やキャラクタなどの各種のデータは、記憶媒体70に格納されている。ステップS102では、プレイヤキャラクタの表示位置、2次元キャラクタとして表示するNPC(以下「2次元NPC」あるいは「2次元ノン・プレイヤ・キャラクタ」という。)の種類や数、3次元キャラクタとして表示するNPC(以下「3次元NPC」あるいは「3次元ノン・プレイヤ・キャラクタ」という。)の種類や数、各NPCの表示位置などが、制御プログラムに従って決定される。なお、3次元NPCの数は、あらかじめ定められている3D上限数(例えば、10個、15個、20個など)以下となるように決定される。この例では、例えば、図2に示したような画面が初期画面として決定される。
次いで、制御部11は、仮想カメラの視点の位置、視軸の方向、および視角の大きさを、制御プログラムに従って決定し、透視変換を行うための仮想カメラの初期設定を行う(ステップS103)。そして、ステップS108に移行する。
ゲームの実行中であり場面変更を行うタイミングでないと判定したときは(ステップS101のN)、制御部11は、プレイヤによりプレイヤキャラクタを動作させるための指示データが入力部21から入力されているか否かを判定する(ステップS104)。
プレイヤキャラクタを動作させるための指示が入力されていれば、制御部11は、入力部21からの指示データの内容に応じて、仮想カメラの視点の位置、視軸の方向、視角の大きさのうち、必要なデータを更新し、仮想カメラの設定内容の変更を行う(ステップS105)。
次いで、制御部11は、各2次元NPCについての各種設定を行うための後述する2Dキャラ設定処理を実行するとともに(ステップS106)、各3次元NPCについての各種設定を行うための後述する3Dキャラ設定処理を実行する(ステップS107)。
そして、制御部11は、仮想カメラの設定内容に応じて、仮想カメラから表示すべきプレイヤキャラクタやNPCを含む仮想3次元空間を仮想スクリーン上に透視変換して、画像表示部51に表示させる2次元画像を生成するための表示処理を行う(ステップS108)。表示処理を終了すると、今回のメイン処理を終了する。その後、次のフレーム期間の開始タイミングにおいてタイマ割り込みが発生すると、次回のメイン処理が実行されることとなる。そして、メイン処理が繰り返し実行されることで、キャラクタ画像がフレーム期間毎に切り替えられて、画像表示部51にて動画が表示されることになる。
ここで、ステップS108の表示処理について簡単に説明する。ステップS108では、制御部11は、先ず、プレイヤキャラクタや3次元NPCを含む仮想3次元空間を構成するポリゴンの頂点の座標のうち、少なくとも仮想スクリーン上に透視変換される範囲に含まれるポリゴンの頂点の座標を、ワールド座標系の座標から視点座標系の座標に変換する。また、制御部11は、2Dキャラ設定処理の処理結果に応じて、仮想3次元空間内に2次元NPCを表示するために必要な2D表示指示情報(例えば、2次元NPCの種類、視点座標系における表示位置、スプライト画像の拡大縮小率、スプライト画像の回転角度を含む情報)を生成する。次いで、制御部11は、プレイヤキャラクタや3次元NPCについての視点座標系におけるポリゴンの頂点の座標と、2次元NPCについての2D表示指示情報とをグラフィック処理部15に送信し、グラフィック処理部15に対して描画命令を出力する。
描画命令が入力すると、グラフィック処理部15は、視点座標系の座標にもとづいて、各面を構成する各点について、前側にある点のデータが残るようにZバッファの内容を更新する。Zバッファの内容を更新すると、グラフィック処理部15は、前側にある残った点についての画像データをフレームメモリ19に展開する。また、グラフィック処理部15は、展開される画像データに対して、シェーディングやテクスチャマッピングなどの処理も行う。
そして、グラフィック処理部15は、フレームメモリ19に展開された画像データを順次読み出し、同期信号を付加してビデオ信号を生成し、表示装置50に出力する。表示装置50は、グラフィック処理部15から出力されたビデオ信号に対応した画像を画像表示部51に表示する。1フレーム時間ごとに画像表示部51の画像が切り替えられていくことで、プレイヤは、プレイヤキャラクタやNPCがフィールド上を移動する様子を含む画像を見ることができる。
図4は、2Dキャラ設定処理(ステップS106)の例を示すフローチャートである。
2Dキャラ設定処理において、制御部11は、仮想カメラの視点位置の変化(ステップS105にて設定変更された場合には、変更前と変更後の視点位置の差)と、制御プログラムにもとづいて決定される移動方向及び移動量に従って、仮想3次元空間内に表示されている2次元NPCの移動位置を仮決定する(ステップS201)。次いで、制御部11は、仮決定した移動位置が後述する2D禁止空間内であるか否か判定する(ステップS202)。
仮決定した移動位置が2D禁止空間内であれば(ステップS202のY)、制御部11は、あらかじめ定められた2D位置選択条件に従って、後述する2D許容空間内の位置を選択し、選択した位置を移動位置として決定する(ステップS203)。
「2D位置選択条件」は、少なくとも、2D許容空間内の位置であって、前回の表示位置からの移動距離が所定距離(見た目上、2次元NPCの動作が不自然とならない程度の距離があらかじめ定められる)以内である位置となるように定められる。具体的には、例えば、ステップS201で仮決定した位置から最も近い2D許容空間内の位置であること、あるいは、仮想3次元空間内に仮想的に設けられた中心軸(仮想3次元空間の手前側から奥側に向かう軸であって、キャラクタ画像の中心を通る軸)から離れる方向(画像の中心部から視界境界面に向かう方向)にシフトしていったときに最初に到達した2D許容空間内の位置であることなどとされる。なお、上記の「中心軸」に替えて、仮想3次元空間の手前側から奥側に向かう軸であって、キャラクタ画像の中央付近の所定の点を通る軸としてもよい。
仮決定した移動位置が2D禁止空間内でなければ(ステップS202のN)、制御部11は、ステップS201にて仮決定していた位置を移動位置として決定する(ステップS204)。
そして、制御部11は、全ての2次元NPCについて移動位置を決定したか否か確認し(ステップS205)、未だ移動位置を決定していない2次元NPCが残っている場合には(ステップS205のN)、残りの2次元NPCの移動位置を決定するために、ステップS201に戻る。
全ての2次元NPCについて移動位置を決定すると、制御部11は、制御プログラムに従って、新たに2次元NPCを表示する場合には、そのNPCの表示位置(出現位置)を決定し(ステップS206)、2Dキャラ設定処理を終了する。
図5は、2次元キャラクタの表示が禁止された2D禁止空間等の例を示す説明図である。図5(A)は、仮想3次元空間を上方から見た図である。図5(B)は、仮想3次元空間を左側の側面から見た図である。
図5(A)には、仮想カメラにおける左側の視界の境界を示す左側視界境界面と、仮想カメラにおける右側の視界の境界を示す右側視界境界面と、2D3D境界面と、2D禁止空間境界面とが示されている。また、図5(B)には、仮想カメラにおける上側の視界の境界を示す上側視界境界面と、仮想カメラにおける下側の視界の境界を示す下側視界境界面と、2D3D境界面と、2D禁止空間境界面とが示されている。
2D3D境界面は、仮想カメラの視点位置から所定距離(例えば、実空間における40[m]に相当する距離、50[m]に相当する距離、60[m]に相当する距離など)に形成される面であって、3次元キャラクタが表示される空間と2次元キャラクタが表示される空間との絶対的な境界(キャラクタの移動が厳格に禁止された境界)を示す境界面である。2D3D境界面から見て仮想カメラの視点位置方向(プレイヤキャラクタPの表示位置方向)側に位置する3次元キャラクタ表示空間は、3次元キャラクタが表示され得る空間であり、2次元キャラクタが表示されることがない空間である。一方、2D3D境界面から見て仮想カメラの視点位置方向(プレイヤキャラクタPの表示位置方向)と反対側に位置する2次元キャラクタ表示空間は、2次元キャラクタが表示され得る空間であり、3次元キャラクタが表示されることはない空間である。
2D禁止空間境界面は、2次元キャラクタ表示空間内にあり、本例において2次元キャラクタの表示が禁止される領域と許容される領域との境界を示す境界面である。2D禁止空間境界面の外枠部分は、2D3D境界面の外枠部分とほぼ一致している。2D禁止空間境界面と2D3D境界面との間に位置する空間は、本例において2次元キャラクタの表示が禁止される2D禁止空間である。また、2D禁止空間境界面から見て2D禁止空間と反対側に位置する空間は、本例において2次元キャラクタの表示が許容される2D許容空間である。
本例では、図5(A)に示すように、2次元ノン・プレイヤ・キャラクタmは、例えば、プレイヤキャラクタPが近づいてきたことにより2D禁止空間境界面まで到達し、さらにプレイヤキャラクタPが近づいてきた場合には、右側視界境界面方向または左側視界境界面方向に移動していく。そして、その後さらにプレイヤキャラクタPが近づいてきた場合には、右側視界境界面または左側視界境界面から視界外に移動していくことになる。
また、本例では、図5(B)に示すように、2次元ノン・プレイヤ・キャラクタmは、例えば、プレイヤキャラクタPが近づいてきたことにより2D禁止空間境界面まで到達し、さらにプレイヤキャラクタPが近づいてきた場合には、上側視界境界面方向または下側視界境界面方向に移動していく。そして、その後さらにプレイヤキャラクタPが近づいてきた場合には、上側視界境界面または下側視界境界面から視界外に移動していくことになる。
なお、例えば仮想3次元空間が宇宙空間、海中、空中などでありプレイヤキャラクタPが宙に浮いているかのように表示される場合には、上記のように2次元ノン・プレイヤ・キャラクタmを下側視界境界面方向に移動していき、下側視界境界面から視界外に移動していくようにしてもよい。しかし、プレイヤキャラクタPが地に着いていたり、宙に浮いていたとしても地面に近い位置に表示されていて、下側の視界外に移動させることができない場合もある。このような場合には、2次元ノン・プレイヤ・キャラクタmは、プレイヤキャラクタPが近づいてきて2D禁止空間境界面まで到達したとしても、下側には移動させずに、左側、右側、または上側の何れかに移動させていくようにすればよい。
なお、2D禁止空間は、2次元キャラクタの中心部の進入が禁止されている空間とされていてもよいし、2次元キャラクタの一部であっても進入が禁止されている空間とされていてもよい。
また、図5に示す例では、簡単のため、2次元ノン・プレイヤ・キャラクタmが上下左右の何れかに移動していく例について説明したが、右上や左上などの斜め方向に移動していくこともある。
図6は、3Dキャラ設定処理(ステップS107)の例を示すフローチャートである。
3Dキャラ設定処理において、制御部11は、仮想カメラの視点位置の変化(ステップS105にて設定変更された場合には、変更前と変更後の視点位置の差)と、制御プログラムにもとづいて決定される移動方向及び移動量に従って、仮想3次元空間内に表示されている3次元NPCの移動位置を仮決定する(ステップS301)。次いで、制御部11は、仮決定した移動位置が後述する3D禁止空間内であるか否か判定する(ステップS302)。
仮決定した移動位置が3D禁止空間内であれば(ステップS302のY)、制御部11は、あらかじめ定められた3D位置選択条件に従って、後述する3D許容空間内の位置を選択し、選択した位置を移動位置として決定する(ステップS303)。
「3D位置選択条件」は、少なくとも、3D許容空間内の位置であって、前回の表示位置からの移動距離が所定距離(見た目上、3次元NPCの動作が不自然とならない程度の距離があらかじめ定められる)以内である位置となるように定められる。具体的には、例えば、ステップS301で仮決定した位置から最も近い3D許容空間内の位置であること、あるいは、仮想3次元空間内に仮想的に設けられた中心軸(仮想3次元空間の手前側から奥側に向かう軸であって、キャラクタ画像の中心を通る軸)から離れる方向(画像の中心部から視界境界面に向かう方向)にシフトしていったときに最初に到達した3D許容空間内の位置であることなどとされる。なお、上記の「中心軸」に替えて、仮想3次元空間の手前側から奥側に向かう軸であって、キャラクタ画像の中央付近の所定の点を通る軸としてもよい。
仮決定した移動位置が3D禁止空間内でなければ(ステップS302のN)、制御部11は、ステップS301にて仮決定していた位置を移動位置として決定する(ステップS304)。
そして、制御部11は、全ての3次元NPCについて移動位置を決定したか否か確認し(ステップS305)、未だ移動位置を決定していない3次元NPCが残っている場合には(ステップS305のN)、残りの3次元NPCの移動位置を決定するために、ステップS301に戻る。
全ての3次元NPCについて移動位置を決定すると、制御部11は、制御プログラムに従って、新たに3次元NPCを表示するか否かを仮決定する(ステップS306)。3次元NPCを新たに表示しようとする場合には(ステップS306のY)、制御部11は、3次元NPCを新たに表示したと仮定したときに、画像表示部51に表示される3次元NPCの総数が3D上限数以下となっているか否か確認する(ステップS307)。
3D上限数以下であれば、制御部11は、ステップS306で仮決定した3次元NPCを新たに表示することとし、その3次元NPCの表示位置(出現位置)を決定する(ステップS308)。
3D上限数以下でなければ、制御部11は、ステップS306で仮決定した3次元NPCを新たに表示しないことととし、そのまま3Dキャラ設定処理を終了する。なお、3D上限数以下となる範囲であれば、ステップS306で新たに表示すると仮決定した3次元NPCの一部を表示することに決定するようにしてもよい。
図7は、3次元キャラクタの表示が禁止された3D禁止空間等の例を示す説明図である。図7(A)は、仮想3次元空間を上方から見た図である。図7(B)は、仮想3次元空間を左側の側面から見た図である。
図7(A)には、仮想カメラにおける左側の視界の境界を示す左側視界境界面と、仮想カメラにおける右側の視界の境界を示す右側視界境界面と、2D3D境界面と、3D禁止空間境界面とが示されている。また、図7(B)には、仮想カメラにおける上側の視界の境界を示す上側視界境界面と、仮想カメラにおける下側の視界の境界を示す下側視界境界面と、2D3D境界面と、3D禁止空間境界面とが示されている。
3D禁止空間境界面は、3次元キャラクタ表示空間内にあり、本例において3次元キャラクタの表示が禁止される領域と許容される領域との境界を示す境界面である。3D禁止空間境界面の外枠部分は、2D3D境界面の外枠部分とほぼ一致している。3D禁止空間境界面と2D3D境界面との間に位置する空間は、本例において3次元キャラクタの表示が禁止される3D禁止空間である。また、3D禁止空間境界面から見て3D禁止空間と反対側に位置する空間は、本例において3次元キャラクタの表示が許容される3D許容空間である。
本例では、図7(A)に示すように、3次元ノン・プレイヤ・キャラクタMは、例えば、プレイヤキャラクタPが離れていったことにより3D禁止空間境界面まで到達し、さらにプレイヤキャラクタPが離れていった場合には、右側視界境界面方向または左側視界境界面方向に移動していく。そして、その後さらにプレイヤキャラクタPが離れていった場合には、右側視界境界面または左側視界境界面から視界外に移動していくことになる。
また、本例では、図7(B)に示すように、3次元ノン・プレイヤ・キャラクタMは、例えば、プレイヤキャラクタPが離れていったことにより3D禁止空間境界面まで到達し、さらにプレイヤキャラクタPが離れていった場合には、上側視界境界面方向または下側視界境界面方向に移動していく。そして、その後さらにプレイヤキャラクタPが離れていった場合には、上側視界境界面または下側視界境界面から視界外に移動していくことになる。
なお、例えば仮想3次元空間が宇宙空間、海中、空中などでありプレイヤキャラクタPが宙に浮いているかのように表示される場合には、上記のようにノン・プレイヤ・キャラクタMを下側視界境界面方向に移動していき、下側視界境界面から視界外に移動していくようにしてもよい。しかし、プレイヤキャラクタPが地に着いていたり、宙に浮いていたとしても地面に近い位置に表示されていて、下側の視界外に移動させることができない場合もある。このような場合には、3次元ノン・プレイヤ・キャラクタMは、プレイヤキャラクタPが離れていき3D禁止空間境界面まで到達したとしても、下側には移動させずに、左側、右側、または上側の何れかに移動させていくようにすればよい。
なお、3D禁止空間は、3次元NPCの中心部の進入が禁止される空間とされていてもよいし、3次元キャラクタの一部であっても進入が禁止される空間とされていてもよい。
また、図7に示す例では、3次元ノン・プレイヤ・キャラクタMが上下左右の何れかに移動していく例について説明したが、右上や左上などの斜め方向に移動していくこともある。
次に、本例のビデオゲーム装置100にてメイン処理が繰り返し実行されることによる画像表示制御により画像表示部51に表示される2次元NPCの様子について具体的に説明する。
ここでは、簡単のため、図8に示すように3つの2次元ノン・プレイヤ・キャラクタm1,m2,m3が表示されているときに、画像表示部51に表示されている仮想3次元空間の後方側(2次元ノン・プレイヤ・キャラクタm1,m2,m3に近づく方向)に、プレイヤキャラクタPが移動していった場合を例に説明する。
なお、図8に示す各2次元ノン・プレイヤ・キャラクタm1,m2,m3は、2D禁止空間境界面近傍に位置しているものとする。また、ここでは、「2D位置選択条件」は、「仮想3次元空間の中心軸から離れる方向(視界境界面に向かう方向)にシフトしていったときに最初に到達した2D許容空間内の位置であること」とされているものとする。
図8に示す画像が表示されているときに、プレイヤによる入力部21の操作によってプレイヤキャラクタPが仮想3次元空間の後方側に移動していくと、各2次元ノン・プレイヤ・キャラクタm1,m2,m3は、例えば図9に示すように、プレイヤキャラクタPに近づいてくる方向であって、かつ、上述したステップS202,S203の処理によって仮想3次元空間における中心軸から遠ざかる方向に移動していくことになる。
図9に示す状態となったあと、プレイヤによる入力部21の操作によってプレイヤキャラクタPが仮想3次元空間の後方側にさらに移動していくと、各2次元ノン・プレイヤ・キャラクタm1,m2,m3は、例えば図10に示すように、プレイヤキャラクタPにさらに近づいてくる方向であって、かつ、上述したステップS202,S203の処理によって仮想3次元空間における中心軸からさらに遠ざかる方向に移動していく。
そして、その後もプレイヤによる入力部21の操作によってプレイヤキャラクタPが仮想3次元空間の後方側にさらに移動していくと、各2次元ノン・プレイヤ・キャラクタm1,m2,m3は、2D禁止空間に入ることなく仮想カメラの視界外に移動していき、画像表示部51の表示画像において画像の端部から外に出て行き表示されなくなる。
上記のように、本例のビデオゲーム装置100では、プレイヤによる入力部21の操作によってプレイヤキャラクタPを2次元ノン・プレイヤ・キャラクタm1,m2,m3が位置している方向(仮想3次元空間の後方側)に移動させていくと、2次元ノン・プレイヤ・キャラクタm1,m2,m3は、プレイヤキャラクタPに近づきながら視界境界面のある方向に移動していき、最終的には2D禁止空間に入ることなく仮想カメラの視界から外れて行くことになる。
次に、本例のビデオゲーム装置100にてメイン処理が繰り返し実行されることによって行われる画像表示制御により画像表示部51に表示される3次元NPCの様子について具体的に説明する。
ここでは、簡単のため、図11に示すように3つの3次元ノン・プレイヤ・キャラクタM1,M2,M3が表示されているときに、画像表示部51に表示されている仮想3次元空間の手前側(3次元ノン・プレイヤ・キャラクタM1,M2,M3から離れて行く方向)に、プレイヤキャラクタPが移動していった場合を例に説明する。
なお、図11に示す各3次元ノン・プレイヤ・キャラクタM1,M2,M3は、3D禁止空間境界面近傍に位置しているものとする。また、ここでは、「3D位置選択条件」は、「仮想3次元空間の中心軸から離れる方向(視界境界面に向かう方向)にシフトしていったときに最初に到達した3D許容空間内の位置であること」とされているものとする。
図11に示す画像が表示されているときに、プレイヤによる入力部21の操作によってプレイヤキャラクタPが仮想3次元空間の手前側に移動していくと、各3次元ノン・プレイヤ・キャラクタM1,M2,M3は、例えば図12に示すように、プレイヤキャラクタPから遠ざかっていく方向であって、かつ、上述したステップS302,S303の処理にもとづいて仮想3次元空間における中心軸から遠ざかる方向に移動していくことになる。
図12に示す状態となったあと、プレイヤによる入力部21の操作によってプレイヤキャラクタPが仮想3次元空間の手前側にさらに移動していくと、各3次元ノン・プレイヤ・キャラクタM1,M2,M3は、例えば図13に示すように、プレイヤキャラクタPにさらに遠ざかっていく方向であって、かつ、上述したステップS302,S303の処理にもとづいて仮想3次元空間における中心軸からさらに遠ざかる方向に移動していく。
そして、その後もプレイヤによる入力部21の操作によってプレイヤキャラクタPが仮想3次元空間の手前側にさらに移動していくと、各3次元ノン・プレイヤ・キャラクタM1,M2,M3は、3D禁止空間に入ることなく仮想カメラの視界外に移動していき、画像表示部51の表示画像において画像の端部から外に出て行き表示されなくなる。
上記のように、本例のビデオゲーム装置100では、プレイヤによる入力部21の操作によってプレイヤキャラクタPを3次元ノン・プレイヤ・キャラクタM1,M2,M3の位置から離れる方向(仮想3次元空間の手前側)に移動させていくと、3次元ノン・プレイヤ・キャラクタM1,M2,M3は、プレイヤキャラクタPから遠ざかりながら視界境界面のある方向に移動していき、最終的には3D禁止空間に入ることなく仮想カメラの視界から外れて行くことになる。
以上に説明したように、上述した一実施の形態では、仮想カメラの視点位置の移動状態に関わらず、3次元キャラクタで一旦描画したキャラクタを、仮想カメラの視点位置から所定距離(2D3D境界面までの距離)内の位置を維持させて描画し、2次元キャラクタで一旦描画したキャラクタを所定距離(2D3D境界面までの距離)外の位置を維持させて描画するようにしているので、2次元キャラクタや3次元キャラクタが2D3D境界面を通過することを防止することができ、仮想3次元空間に複数の物体を含む画像を描画する際に、臨場感を欠くことなくハードウェアの処理負荷を低減させることができる。
すなわち、2次元キャラクタや3次元キャラクタが2D3D境界面を通過することを防止することができるので、一旦描画したキャラクタが2次元キャラクタとされたり3次元キャラクタとされたりすることを回避することができ、既に描画されているキャラクタを2次元キャラクタで表示するか3次元キャラクタで表示するかの判断や、2次元キャラクタと3次元キャラクタとを相互に入れ替える処理などを行う必要がなく、キャラクタの表示制御を簡単にすることができ、ハードウェアの処理負荷を低減させることができる。
また、2次元キャラクタや3次元キャラクタが2D3D境界面を通過することを防止することができるので、2次元キャラクタとして一旦描画したキャラクタが、2次元キャラクタのまま大きいサイズで表示されてしまうことを回避することができ、臨場感を欠くことなく画像表示を行うことができる。
また、上述した一実施の形態では、3D上限数を超える3次元NPCを表示させないようにしているので、ハードウェアの処理負荷が増大しないように設定することができる。
なお、上述した一実施の形態では、プレイヤキャラクタが仮想3次元空間の手前側に移動されていくと、3次元NPCがプレイヤキャラクタから遠ざかりながら視界境界面のある方向に移動していき、最終的には3D禁止空間に入ることなく仮想カメラの視界から外れて行くような画像が表示されるように制御することとしていたが、プレイヤキャラクタが仮想3次元空間の手前側に移動されていくと、3次元NPCが、プレイヤキャラクタから少なくとも所定距離(仮想カメラの視点位置から2D3D境界面までの距離)内の距離を維持するように、プレイヤキャラクタの進行方向についてくるような画像が表示されるように制御することとしてもよい。この場合、上述した3D禁止空間を設ける必要はない。具体的には、例えば図14に示すように、2D3D境界面近傍に3次元ノン・プレイヤ・キャラクタMが位置しているときに、プレイヤキャラクタPが仮想3次元空間の手前側に距離xだけ移動されていったとすると、プレイヤキャラクタPの移動により2D3D境界面が手前側に距離xだけ移動されていくこととなるが、その2D3D境界面の移動によって3次元ノン・プレイヤ・キャラクタMが2D3D境界面の奥側に進入することがないように、3次元ノン・プレイヤ・キャラクタMが、プレイヤキャラクタPとの間隔を維持しながら、プレイヤキャラクタPと同様に仮想3次元空間の手前側に距離xだけ移動されることになる。上記のように構成しても、仮想3次元空間に3次元キャラクタを含む画像を描画する際に、臨場感を欠くことなくハードウェアの処理負荷を低減させることができる。
また、上述した一実施の形態では、プレイヤキャラクタが仮想3次元空間の後方側に移動されていくと、2次元NPCがプレイヤキャラクタに近づきながら視界境界面のある方向に移動していき、最終的には2D禁止空間に入ることなく仮想カメラの視界から外れて行くような画像が表示されるように制御することとしていたが、プレイヤキャラクタが仮想3次元空間の後方側に移動されていくと、2次元NPCが、プレイヤキャラクタから少なくとも所定距離(仮想カメラの視点位置から2D3D境界面までの距離)外の距離を維持するように、プレイヤキャラクタの進行方向に移動していきプレイヤキャラクタから逃げていくような画像が表示されるように制御することとしてもよい。この場合、上述した2D禁止空間を設ける必要はない。具体的には、例えば図15に示すように、2D3D境界面近傍に2次元ノン・プレイヤ・キャラクタmが位置しているときに、プレイヤキャラクタPが仮想3次元空間の奥側(後方側)に距離yだけ移動されていったとすると、プレイヤキャラクタPの移動により2D3D境界面が奥側に距離yだけ移動されていくこととなるが、その2D3D境界面の移動によって2次元ノン・プレイヤ・キャラクタmが2D3D境界面の手前側に進入することがないように、2次元ノン・プレイヤ・キャラクタmが、プレイヤキャラクタPとの間隔を維持しながら、プレイヤキャラクタPと同様に仮想3次元空間の奥側に距離yだけ移動されることになる。上記のように構成しても、仮想3次元空間に2次元キャラクタを含む画像を描画する際に、臨場感を欠くことなくハードウェアの処理負荷を低減させることができる。
また、上述した実施の形態では、ビデオゲーム装置本体10と表示装置50とが別体として構成されていたが、ビデオゲーム装置本体10に表示装置50を備える構成としてもよい。
また、上述した実施の形態ではビデオゲーム装置100を例に説明したが、画像生成機能を備えた機器であれば、パーソナルコンピュータ、携帯電話端末、携帯用ゲーム機などの各種の機器に本発明を適用することができる。なお、携帯用ゲーム機などに適用する場合には、上述した記憶媒体70として、CD−ROMやDVD−ROMの替わりに半導体メモリカードなどの小型の記憶媒体を用いるようにすればよい。
また、上述した実施の形態では、ビデオゲーム装置本体10に上述した各種の処理を実行させるためのゲーム用データ(ゲームに用いられる制御プログラムなどの各種のデータ)が記憶媒体70に格納されているものとしていたが、ゲーム用データは、WWWサーバなどのサーバ装置によって配信されるものであってもよい。この場合、ビデオゲーム装置本体10は、サーバ装置によって配信されるゲーム用データを通信ネットワーク80を介して取得してHDD13に格納し、ゲーム用データをHDD13からRAM12にロードして使用するようにすればよい。なお、上記の例ではゲーム用データとしていたが、少なくとも上述した実施の形態における画像生成処理をコンピュータに実行させるための制御プログラムを含むデータであればよい。
本発明によれば、3次元ポリゴンデータで描画された3次元キャラクタと2次元スプライトデータで描画された2次元キャラクタとを含む複数のキャラクタを仮想3次元空間に描画したキャラクタ画像を生成するビデオゲーム装置、パーソナルコンピュータ、携帯電話端末、携帯用ゲーム機などに適用するのに有用である。
本発明の一実施の形態におけるビデオゲーム装置の構成例を示すブロック図である。 画像表示部に表示されるキャラクタ画像の例を示す説明図である。 メイン処理の例を示すフローチャートである。 2Dキャラ設定処理の例を示すフローチャートである。 2次元キャラクタの表示が禁止された2D禁止空間等の例を示す説明図である。 3Dキャラ設定処理の例を示すフローチャートである。 3次元キャラクタの表示が禁止された3D禁止空間等の例を示す説明図である。 プレイヤキャラクタが仮想3次元空間の後方側に移動していったときの2次元NPCの移動態様の例を示す説明図である。 プレイヤキャラクタが仮想3次元空間の後方側に移動していったときの2次元NPCの移動態様の例を示す説明図である。 プレイヤキャラクタが仮想3次元空間の後方側に移動していったときの2次元NPCの移動態様の例を示す説明図である。 プレイヤキャラクタが仮想3次元空間の手前側に移動していったときの3次元NPCの移動態様の例を示す説明図である。 プレイヤキャラクタが仮想3次元空間の手前側に移動していったときの3次元NPCの移動態様の例を示す説明図である。 プレイヤキャラクタが仮想3次元空間の手前側に移動していったときの3次元NPCの移動態様の例を示す説明図である。 プレイヤキャラクタが仮想3次元空間の手前側に移動していったときの3次元NPCの移動態様の他の例を示す説明図である。 プレイヤキャラクタが仮想3次元空間の後方側に移動していったときの2次元NPCの移動態様の他の例を示す説明図である。
符号の説明
10 ビデオゲーム装置本体
11 制御部
12 RAM
13 HDD
14 サウンド処理部
15 グラフィック処理部
16 DVD/CD−ROM
17 通信インターフェイス
18 インターフェイス部
19 フレームメモリ
20 メモリーカードスロット
21 入力部
22 内部バス
50 表示装置
51 画像表示部
60 サウンド出力装置
70 記憶媒体
80 通信ネットワーク
90 メモリーカード
100 ビデオゲーム装置

Claims (24)

  1. 3次元ポリゴンデータで描画された3次元キャラクタと2次元スプライトデータで描画された2次元キャラクタとを含む複数のキャラクタを仮想3次元空間に描画したキャラクタ画像を生成する画像生成方法であって、
    仮想カメラの視界内かつ前記仮想カメラの視点位置から所定距離内に前記3次元キャラクタを描画するとともに、前記仮想カメラの視界内かつ前記仮想カメラの視点位置から所定距離外に前記2次元キャラクタを描画し、
    前記仮想カメラの視点位置が移動したときであっても、前記仮想カメラの視界内に描画されている前記3次元キャラクタの位置を移動するときは、前記仮想カメラの視点位置から前記所定距離内を維持した位置に移動するように前記3次元キャラクタを描画し、
    前記仮想カメラの視点位置が移動したときであっても、前記仮想カメラの視界内に描画されている前記2次元キャラクタの位置を移動するときは、前記仮想カメラの視点位置から前記所定距離外を維持した位置に移動するように前記2次元キャラクタを描画する
    ことを特徴とする画像生成方法。
  2. 仮想3次元空間には、仮想カメラの視点位置から所定距離外の一部に、2次元キャラクタを表示することが禁止された2次元キャラクタ表示禁止空間があらかじめ設けられ、
    2次元キャラクタの位置を移動させるときに、当該移動によって前記2次元キャラクタ表示禁止空間に前記2次元キャラクタが進入することとなるか否か判定し、
    前記移動によって前記2次元キャラクタが前記2次元キャラクタ表示禁止空間に進入することとなると判定したときには、あらかじめ定められた2次元キャラクタ移動条件に従って、前記2次元キャラクタを移動する位置を、前記2次元キャラクタ表示禁止空間外の位置に変更する
    請求項1記載の画像生成方法。
  3. 2次元キャラクタ表示禁止空間は、仮想カメラの視点位置から所定距離に形成される境界面に隣接した空間であって、2次元キャラクタが前記仮想カメラの視界境界に近い位置に表示されるときは前記境界面に近い位置まで表示が許容され、2次元キャラクタが前記仮想カメラの視界境界から離れた位置に表示されるときは前記境界面に近い位置は表示が禁止されるようにあらかじめ定められており、
    2次元キャラクタ移動条件は、仮想3次元空間の中心軸から遠ざかり前記仮想カメラの視界境界に近づく方向にある位置であって、前記2次元キャラクタ表示禁止空間外となっている位置であるときに成立する
    請求項2記載の画像生成方法。
  4. 2次元キャラクタの位置を移動させるときに、当該移動によって仮想カメラの所定距離内に前記2次元キャラクタが進入することとなるか否か判定し、
    前記移動によって前記2次元キャラクタが前記仮想カメラの所定距離内に進入することとなると判定したときには、前記2次元キャラクタを移動する位置を、前記仮想カメラの所定距離外に変更する
    請求項1記載の画像生成方法。
  5. 仮想3次元空間には、仮想カメラの視点位置から所定距離内の一部に、3次元キャラクタを表示することが禁止された3次元キャラクタ表示禁止空間があらかじめ設けられ、
    3次元キャラクタの位置を移動させるときに、当該移動によって前記3次元キャラクタ表示禁止空間に前記3次元キャラクタが進入することとなるか否か判定し、
    前記移動によって前記3次元キャラクタが前記3次元キャラクタ表示禁止空間に進入することとなると判定したときには、あらかじめ定められた3次元キャラクタ移動条件に従って、前記3次元キャラクタを移動する位置を、前記3次元キャラクタ表示禁止空間外の位置に変更する
    請求項1から請求項4のうちいずれかに記載の画像生成方法。
  6. 3次元キャラクタ表示禁止空間は、仮想カメラの視点位置から所定距離に形成される境界面に隣接した空間であって、3次元キャラクタが前記仮想カメラの視界境界に近い位置に表示されるときは前記境界面に近い位置まで表示が許容され、2次元キャラクタが前記仮想カメラの視界境界から離れた位置に表示されるときは前記境界面に近い位置は表示が禁止されるようにあらかじめ定められており、
    3次元キャラクタ移動条件は、仮想3次元空間の中心軸から遠ざかり前記仮想カメラの視界境界に近づく方向にある位置であって、前記3次元キャラクタ表示禁止空間外となっている位置であるときに成立する
    請求項5記載の画像生成方法。
  7. 3次元キャラクタの位置を移動させるときに、当該移動によって仮想カメラの所定距離外に前記3次元キャラクタが進入することとなるか否か判定し、
    前記移動によって前記3次元キャラクタが前記仮想カメラの所定距離外に進入することとなると判定したときには、前記3次元キャラクタを移動する位置を、前記仮想カメラの所定距離内に変更する
    請求項1から請求項4のうちいずれかに記載の画像生成方法。
  8. 仮想3次元空間に描画される3次元キャラクタの総数が所定数以下となることを条件に、新たな3次元キャラクタを描画する
    請求項1から請求項7のうちいずれかに記載の画像生成方法。
  9. 3次元ポリゴンデータで描画された3次元キャラクタと2次元スプライトデータで描画された2次元キャラクタとを含む複数のキャラクタを仮想3次元空間に描画したキャラクタ画像を生成する画像生成装置であって、
    仮想カメラの視界内かつ前記仮想カメラの視点位置から所定距離内に前記3次元キャラクタを描画するとともに、前記仮想カメラの視界内かつ前記仮想カメラの視点位置から所定距離外に前記2次元キャラクタを描画するキャラクタ描画手段と、
    前記仮想カメラの視点位置が移動したときであっても、前記仮想カメラの視界内に描画されている前記3次元キャラクタの位置を移動するときは、前記仮想カメラの視点位置から前記所定距離内を維持した位置に移動するように前記3次元キャラクタを描画する3次元キャラクタ移動描画手段と、
    前記仮想カメラの視点位置が移動したときであっても、前記仮想カメラの視界内に描画されている前記2次元キャラクタの位置を移動するときは、前記仮想カメラの視点位置から前記所定距離外を維持した位置に移動するように前記2次元キャラクタを描画する2次元キャラクタ移動描画手段とを備えた
    ことを特徴とする画像生成装置。
  10. 仮想3次元空間には、仮想カメラの視点位置から所定距離外の一部に、2次元キャラクタを表示することが禁止された2次元キャラクタ表示禁止空間があらかじめ設けられ、
    2次元キャラクタ移動描画手段は、
    2次元キャラクタの位置を移動させるときに、当該移動によって前記2次元キャラクタ表示禁止空間に前記2次元キャラクタが進入することとなるか否か判定する2次元キャラクタ移動禁止判定手段と、
    前記2次元キャラクタ移動禁止判定手段により前記2次元キャラクタが前記2次元キャラクタ表示禁止空間に進入することとなると判定したときに、あらかじめ定められた2次元キャラクタ移動条件に従って、前記2次元キャラクタを移動する位置を、前記2次元キャラクタ表示禁止空間外の位置に変更する2次元キャラクタ移動位置変更手段とを有する
    請求項9記載の画像生成装置。
  11. 2次元キャラクタ表示禁止空間は、仮想カメラの視点位置から所定距離に形成される境界面に隣接した空間であって、2次元キャラクタが前記仮想カメラの視界境界に近い位置に表示されるときは前記境界面に近い位置まで表示が許容され、2次元キャラクタが前記仮想カメラの視界境界から離れた位置に表示されるときは前記境界面に近い位置は表示が禁止されるようにあらかじめ定められており、
    2次元キャラクタ移動条件は、仮想3次元空間の中心軸から遠ざかり前記仮想カメラの視界境界に近づく方向にある位置であって、前記2次元キャラクタ表示禁止空間外となっている位置であるときに成立する
    請求項10記載の画像生成装置。
  12. 2次元キャラクタ移動描画手段は、
    2次元キャラクタの位置を移動させるときに、当該移動によって仮想カメラの所定距離内に前記2次元キャラクタが進入することとなるか否か判定する2次元キャラクタ移動禁止判定手段と、
    前記2次元キャラクタ移動禁止判定手段により前記2次元キャラクタが前記仮想カメラの所定距離内に進入することとなると判定したときに、前記2次元キャラクタを移動する位置を、前記仮想カメラの所定距離外に変更する2次元キャラクタ移動位置変更手段とを有する
    請求項9記載の画像生成装置。
  13. 仮想3次元空間には、仮想カメラの視点位置から所定距離内の一部に、3次元キャラクタを表示することが禁止された3次元キャラクタ表示禁止空間があらかじめ設けられ、
    3次元キャラクタ移動描画手段は、
    3次元キャラクタの位置を移動させるときに、当該移動によって前記3次元キャラクタ表示禁止空間に前記3次元キャラクタが進入することとなるか否か判定する3次元キャラクタ移動禁止判定手段と、
    前記3次元キャラクタ移動禁止判定手段により前記3次元キャラクタが前記3次元キャラクタ表示禁止空間に進入することとなると判定したときに、あらかじめ定められた3次元キャラクタ移動条件に従って、前記3次元キャラクタを移動する位置を、前記3次元キャラクタ表示禁止空間外の位置に変更する3次元キャラクタ移動位置変更手段とを有する
    請求項9から請求項12のうちいずれかに記載の画像生成装置。
  14. 3次元キャラクタ表示禁止空間は、仮想カメラの視点位置から所定距離に形成される境界面に隣接した空間であって、3次元キャラクタが前記仮想カメラの視界境界に近い位置に表示されるときは前記境界面に近い位置まで表示が許容され、2次元キャラクタが前記仮想カメラの視界境界から離れた位置に表示されるときは前記境界面に近い位置は表示が禁止されるようにあらかじめ定められており、
    3次元キャラクタ移動条件は、仮想3次元空間の中心軸から遠ざかり前記仮想カメラの視界境界に近づく方向にある位置であって、前記3次元キャラクタ表示禁止空間外となっている位置であるときに成立する
    請求項13記載の画像生成装置。
  15. 3次元キャラクタ移動描画手段は、
    3次元キャラクタの位置を移動させるときに、当該移動によって仮想カメラの所定距離外に前記3次元キャラクタが進入することとなるか否か判定する3次元キャラクタ移動禁止判定手段と、
    前記3次元キャラクタ移動禁止判定手段により前記3次元キャラクタが前記仮想カメラの所定距離外に進入することとなると判定したときに、前記3次元キャラクタを移動する位置を、前記仮想カメラの所定距離内に変更する3次元キャラクタ移動位置変更手段とを有する
    請求項9から請求項12のうちいずれかに記載の画像生成装置。
  16. キャラクタ描画手段は、仮想3次元空間に描画される3次元キャラクタの総数が所定数以下となることを条件に、新たな3次元キャラクタを描画する
    請求項9から請求項15のうちいずれかに記載の画像生成装置。
  17. 3次元ポリゴンデータで描画された3次元キャラクタと2次元スプライトデータで描画された2次元キャラクタとを含む複数のキャラクタを仮想3次元空間に描画したキャラクタ画像を生成させるための画像生成プログラムであって、
    コンピュータに、
    仮想カメラの視界内かつ前記仮想カメラの視点位置から所定距離内に前記3次元キャラクタを描画するとともに、前記仮想カメラの視界内かつ前記仮想カメラの視点位置から所定距離外に前記2次元キャラクタを描画するステップと、
    前記仮想カメラの視点位置が移動したときであっても、前記仮想カメラの視界内に描画されている前記3次元キャラクタの位置を移動するときは、前記仮想カメラの視点位置から前記所定距離内を維持した位置に移動するように前記3次元キャラクタを描画するステップと、
    前記仮想カメラの視点位置が移動したときであっても、前記仮想カメラの視界内に描画されている前記2次元キャラクタの位置を移動するときは、前記仮想カメラの視点位置から前記所定距離外を維持した位置に移動するように前記2次元キャラクタを描画するステップとを
    実行させるための画像生成プログラム。
  18. 仮想3次元空間には、仮想カメラの視点位置から所定距離外の一部に、2次元キャラクタを表示することが禁止された2次元キャラクタ表示禁止空間があらかじめ設けられ、
    コンピュータに、
    さらに、2次元キャラクタの位置を移動させるときに、当該移動によって前記2次元キャラクタ表示禁止空間に前記2次元キャラクタが進入することとなるか否か判定するステップと、
    前記移動によって前記2次元キャラクタが前記2次元キャラクタ表示禁止空間に進入することとなると判定したときには、あらかじめ定められた2次元キャラクタ移動条件に従って、前記2次元キャラクタを移動する位置を、前記2次元キャラクタ表示禁止空間外の位置に変更するステップとを
    実行させるための請求項17記載の画像生成プログラム。
  19. 2次元キャラクタ表示禁止空間は、仮想カメラの視点位置から所定距離に形成される境界面に隣接した空間であって、2次元キャラクタが前記仮想カメラの視界境界に近い位置に表示されるときは前記境界面に近い位置まで表示が許容され、2次元キャラクタが前記仮想カメラの視界境界から離れた位置に表示されるときは前記境界面に近い位置は表示が禁止されるようにあらかじめ定められており、
    2次元キャラクタ移動条件は、仮想3次元空間の中心軸から遠ざかり前記仮想カメラの視界境界に近づく方向にある位置であって、前記2次元キャラクタ表示禁止空間外となっている位置であるときに成立する
    請求項18記載の画像生成プログラム。
  20. コンピュータに、
    さらに、2次元キャラクタの位置を移動させるときに、当該移動によって仮想カメラの所定距離内に前記2次元キャラクタが進入することとなるか否か判定するステップと、
    前記移動によって前記2次元キャラクタが前記仮想カメラの所定距離内に進入することとなると判定したときには、前記2次元キャラクタを移動する位置を、前記仮想カメラの所定距離外に変更するステップとを
    実行させるための請求項17記載の画像生成プログラム。
  21. 仮想3次元空間には、仮想カメラの視点位置から所定距離内の一部に、3次元キャラクタを表示することが禁止された3次元キャラクタ表示禁止空間があらかじめ設けられ、
    コンピュータに、
    さらに、3次元キャラクタの位置を移動させるときに、当該移動によって前記3次元キャラクタ表示禁止空間に前記3次元キャラクタが進入することとなるか否か判定するステップと、
    前記移動によって前記3次元キャラクタが前記3次元キャラクタ表示禁止空間に進入することとなると判定したときには、あらかじめ定められた3次元キャラクタ移動条件に従って、前記3次元キャラクタを移動する位置を、前記3次元キャラクタ表示禁止空間外の位置に変更するステップとを
    実行させるための請求項17から請求項20のうちいずれかに記載の画像生成プログラム。
  22. 3次元キャラクタ表示禁止空間は、仮想カメラの視点位置から所定距離に形成される境界面に隣接した空間であって、3次元キャラクタが前記仮想カメラの視界境界に近い位置に表示されるときは前記境界面に近い位置まで表示が許容され、2次元キャラクタが前記仮想カメラの視界境界から離れた位置に表示されるときは前記境界面に近い位置は表示が禁止されるようにあらかじめ定められており、
    3次元キャラクタ移動条件は、仮想3次元空間の中心軸から遠ざかり前記仮想カメラの視界境界に近づく方向にある位置であって、前記3次元キャラクタ表示禁止空間外となっている位置であるときに成立する
    請求項21記載の画像生成プログラム。
  23. コンピュータに、
    さらに、3次元キャラクタの位置を移動させるときに、当該移動によって仮想カメラの所定距離外に前記3次元キャラクタが進入することとなるか否か判定するステップと、
    前記移動によって前記3次元キャラクタが前記仮想カメラの所定距離外に進入することとなると判定したときには、前記3次元キャラクタを移動する位置を、前記仮想カメラの所定距離内に変更するステップとを
    実行させるための請求項17から請求項20のうちいずれかに記載の画像生成プログラム。
  24. コンピュータに、
    さらに、仮想3次元空間に描画される3次元キャラクタの総数が所定数以下となることを条件に、新たな3次元キャラクタを描画するステップを
    実行させるための請求項17から請求項23のうちいずれかに記載の画像生成プログラム。
JP2005140722A 2005-05-13 2005-05-13 画像生成方法、画像生成装置、および画像生成プログラム Active JP4180065B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2005140722A JP4180065B2 (ja) 2005-05-13 2005-05-13 画像生成方法、画像生成装置、および画像生成プログラム
US11/432,512 US7588497B2 (en) 2005-05-13 2006-05-12 Method, an apparatus and a computer program product for generating an image
EP06009852.2A EP1722334B1 (en) 2005-05-13 2006-05-12 A method, an apparatus and a computer program product for generating an image

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005140722A JP4180065B2 (ja) 2005-05-13 2005-05-13 画像生成方法、画像生成装置、および画像生成プログラム

Publications (2)

Publication Number Publication Date
JP2006318241A JP2006318241A (ja) 2006-11-24
JP4180065B2 true JP4180065B2 (ja) 2008-11-12

Family

ID=36956308

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005140722A Active JP4180065B2 (ja) 2005-05-13 2005-05-13 画像生成方法、画像生成装置、および画像生成プログラム

Country Status (3)

Country Link
US (1) US7588497B2 (ja)
EP (1) EP1722334B1 (ja)
JP (1) JP4180065B2 (ja)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4177381B2 (ja) 2006-03-01 2008-11-05 株式会社スクウェア・エニックス 画像生成方法、画像生成装置、および画像生成プログラム
US20080163052A1 (en) * 2007-01-02 2008-07-03 International Business Machines Corporation Method and system for multi-modal fusion of physical and virtual information channels
US20080158223A1 (en) * 2007-01-02 2008-07-03 International Business Machines Corporation Method and system for dynamic adaptability of content and channels
US20080159328A1 (en) * 2007-01-02 2008-07-03 International Business Machines Corporation Method and system for in-context assembly of interactive actionable insights and modalities in physical spaces
JP4489800B2 (ja) * 2007-08-30 2010-06-23 株式会社スクウェア・エニックス 画像生成装置及び方法、並びにプログラム及び記録媒体
JP4459993B2 (ja) * 2007-10-03 2010-04-28 株式会社スクウェア・エニックス 画像生成装置、画像生成プログラム及び画像生成プログラム記録媒体
US20120044141A1 (en) * 2008-05-23 2012-02-23 Hiromu Ueshima Input system, input method, computer program, and recording medium
JP5525250B2 (ja) * 2009-12-08 2014-06-18 任天堂株式会社 ゲームプログラム、ゲーム装置、ゲームの表示方法及びゲームシステム
JP5816435B2 (ja) * 2011-01-06 2015-11-18 任天堂株式会社 表示制御プログラム、表示制御装置、表示制御システム、表示制御方法
JP5802307B1 (ja) * 2014-05-22 2015-10-28 株式会社コロプラ ゲーム・プログラム
JP5989708B2 (ja) * 2014-05-22 2016-09-07 株式会社コロプラ ゲーム・プログラム
US9332285B1 (en) * 2014-05-28 2016-05-03 Lucasfilm Entertainment Company Ltd. Switching modes of a media content item
JP6567325B2 (ja) * 2015-05-22 2019-08-28 株式会社コロプラ ゲーム・プログラム
JP6608171B2 (ja) * 2015-05-22 2019-11-20 株式会社コロプラ ゲーム・プログラム
JP5911628B2 (ja) * 2015-05-25 2016-04-27 株式会社コロプラ ゲーム・プログラム
US11317028B2 (en) * 2017-01-06 2022-04-26 Appsure Inc. Capture and display device
EP3654294A4 (en) * 2017-07-14 2020-06-03 Sony Corporation IMAGE PROCESSING DEVICE, IMAGE PROCESSING METHOD FOR IMAGE PROCESSING DEVICE, AND PROGRAM
DE102018203590A1 (de) * 2018-03-09 2019-09-12 Conti Temic Microelectronic Gmbh Surroundview-System mit angepasster Projektionsfläche
USD959477S1 (en) 2019-12-20 2022-08-02 Sap Se Display system or portion thereof with a virtual three-dimensional animated graphical user interface
USD959476S1 (en) 2019-12-20 2022-08-02 Sap Se Display system or portion thereof with a virtual three-dimensional animated graphical user interface
US11205296B2 (en) * 2019-12-20 2021-12-21 Sap Se 3D data exploration using interactive cuboids
USD959447S1 (en) 2019-12-20 2022-08-02 Sap Se Display system or portion thereof with a virtual three-dimensional animated graphical user interface

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5287446A (en) * 1990-10-15 1994-02-15 Sierra On-Line, Inc. System and methods for intelligent movement on computer displays
JPH11203504A (ja) 1998-01-20 1999-07-30 Taito Corp ビデオゲーム装置に於ける画像処理方法
JP3760341B2 (ja) 2001-10-31 2006-03-29 株式会社光栄 プログラム、記録媒体、画像生成装置及び画像生成方法

Also Published As

Publication number Publication date
EP1722334A2 (en) 2006-11-15
EP1722334A3 (en) 2011-05-18
EP1722334B1 (en) 2018-08-29
US7588497B2 (en) 2009-09-15
JP2006318241A (ja) 2006-11-24
US20060258449A1 (en) 2006-11-16

Similar Documents

Publication Publication Date Title
JP4180065B2 (ja) 画像生成方法、画像生成装置、および画像生成プログラム
JP4177381B2 (ja) 画像生成方法、画像生成装置、および画像生成プログラム
US8259112B2 (en) Image generating apparatus, method of generating image, program, and recording medium
JP3795856B2 (ja) ビデオゲーム装置、ビデオゲームの進行制御方法、プログラム及び記録媒体
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
US6319129B1 (en) Method and a video game system of generating a field map
US8012018B2 (en) Game apparatus and storage medium storing game program
JP2004267247A (ja) 3次元ビデオゲーム装置、3次元ビデオゲームにおける仮想カメラの制御方法、並びにプログラム及び記録媒体
JP2007244536A (ja) ビデオゲーム処理装置、ビデオゲーム処理方法、およびビデオゲーム処理プログラム
JP3926307B2 (ja) 3次元画像描画装置及び方法、プログラム、並びに記録媒体
JP3889394B2 (ja) 画像描画装置及び方法、プログラム並びに記録媒体
JP4184182B2 (ja) ゲームシステムおよびゲームプログラム
JP2006268511A (ja) プログラム、情報記憶媒体、及び画像生成システム
JP2000113226A (ja) ビデオゲーム装置、ビデオゲームにおけるモデル表示方法及びビデオゲームにおけるモデル表示プログラムが記録された可読記録媒体
JP3523228B2 (ja) ビデオゲーム装置、ビデオゲームにおけるキャラクタの表示方法、プログラム及び記録媒体
JP4159940B2 (ja) ゲームシステムおよびゲームプログラム
JP2005149315A (ja) 画像描画装置及び方法、プログラム並びに記録媒体
JP2000268193A (ja) 画像作成装置、画像作成方法、画像作成プログラムが記録された可読記録媒体およびビデオゲーム装置
JP2005245525A (ja) 画像表示プログラムおよび情報処理装置
JP4467590B2 (ja) 描画装置、描画方法、および描画プログラム
JP2006268818A (ja) プログラム、情報記憶媒体、及び画像生成システム
EP1249791A2 (en) 3-D game image processing method and device for drawing border lines
JP2009187147A (ja) プログラム及びコンピュータ
JP4937938B2 (ja) ゲームプログラム及びゲームシステム
JP2006277489A (ja) プログラム、情報記憶媒体及び画像生成システム

Legal Events

Date Code Title Description
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: 20080819

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080826

R150 Certificate of patent or registration of utility model

Ref document number: 4180065

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110905

Year of fee payment: 3

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20081022

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110905

Year of fee payment: 3

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110905

Year of fee payment: 3

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R370 Written measure of declining of transfer procedure

Free format text: JAPANESE INTERMEDIATE CODE: R370

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110905

Year of fee payment: 3

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110905

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

A072 Dismissal of procedure [no reply to invitation to correct request for examination]

Free format text: JAPANESE INTERMEDIATE CODE: A072

Effective date: 20090217

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110905

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120905

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130905

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130905

Year of fee payment: 5

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130905

Year of fee payment: 5

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250