JP4425589B2 - 画像生成プログラム、画像生成方法及び画像生成装置 - Google Patents

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

Info

Publication number
JP4425589B2
JP4425589B2 JP2003311790A JP2003311790A JP4425589B2 JP 4425589 B2 JP4425589 B2 JP 4425589B2 JP 2003311790 A JP2003311790 A JP 2003311790A JP 2003311790 A JP2003311790 A JP 2003311790A JP 4425589 B2 JP4425589 B2 JP 4425589B2
Authority
JP
Japan
Prior art keywords
texture
image
character
virtual camera
virtual space
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 - Lifetime
Application number
JP2003311790A
Other languages
English (en)
Other versions
JP2005078601A (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.)
Nintendo Co Ltd
Original Assignee
Nintendo 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 Nintendo Co Ltd filed Critical Nintendo Co Ltd
Priority to JP2003311790A priority Critical patent/JP4425589B2/ja
Priority to US10/921,978 priority patent/US7173618B2/en
Publication of JP2005078601A publication Critical patent/JP2005078601A/ja
Application granted granted Critical
Publication of JP4425589B2 publication Critical patent/JP4425589B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • G06T15/20Perspective computation
    • G06T15/205Image-based rendering

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Geometry (AREA)
  • Computer Graphics (AREA)
  • General Physics & Mathematics (AREA)
  • Image Generation (AREA)
  • Processing Or Creating Images (AREA)

Description

本発明は、画像生成プログラム画像生成方法及び画像生成装置に関し、より特定的には、三次元画像処理機能を備えたビデオゲーム装置における画像処理に関する。
最近の技術の進歩によって、ジオメトリ演算回路やレンダリング回路などの三次元画像処理回路を搭載した高性能なビデオゲーム装置が登場している。このようなビデオゲーム装置では、ジオメトリ演算によって、三次元の仮想空間(ワールド座標系)に配置される複数の三次元のオブジェクトを仮想カメラに基づく二次元のスクリーン座標系に変換し、当該二次元の座標に変換されたオブジェクトの各ポリゴンにテクスチャを貼り付けることによって、仮想カメラから見たシーンに対応する画像を生成している。
従来、特に地形上を歩くキャラクタなどを表示する場合には、特許文献1及び特許文献2に記載されているように、地形オブジェクト上にキャラクタオブジェクトを配置し、その様子を仮想カメラに基づいて表示することによって三次元のゲーム画像を表示させていた。
また、平面状のポリゴンを使ってゲーム画面を表示するものとして、特許文献3に記載の先行技術が知られている。爆発パターンなどを立体的なオブジェクトにしてしまうとゲーム制作が煩雑になるが、この先行技術によれば、常に視点方向を向く平面状のポリゴンに爆発パターンを貼り付けることによって、爆発パターンを簡易な処理によって三次元表示することが可能となる。
特許第3068205号公報(第4図、第6図) 特開2000−93654号公報(第4図、第11図) 特開平10−179932号公報(第4図)
しかしながら、特許文献1及び2のような3Dゲームプログラムを生成するためには、複数のポリゴンによって立体的な構造のオブジェクトを作成したり、そのオブジェクトに貼り付けるためのリアルな画像を作成したりする必要があったので、ゲームプログラムの制作に非常に時間がかかるという問題がある。
近年、このような問題の結果、販売本数が期待できないゲームタイトルに対しても同様の開発時間をかけてゲームプログラムを開発する必要が生じ、最終的に開発コストを回収できないという新たな問題が生じている。
そこで、三次元画像処理回路などを搭載していない機能の低いゲーム装置や旧式のゲーム装置用に開発された旧式のゲームタイトルを移植する動きがある。しかしながら、このようなゲーム装置のゲームプログラムには、キャラクタや地形などの二次元の画像データが含まれているだけで、ポリゴンによって構成される三次元のオブジェクトやそのオブジェクトに貼り付けるリアルなテクスチャなどが含まれていない。よって、このようなゲーム装置のゲームプログラムは、三次元画像処理回路を搭載するゲーム装置には簡単に移植できないという問題がある。
このような問題を解決するために、特許文献3を参考にして、立体でない平面状のポリゴンにキャラクタの画像を貼り付けることによって、旧式のゲームタイトルのプログラムの移植やゲームプログラムの開発時間を短縮することが考えられる。
ところで、特許文献1ないし3からも明らかなように、従来の三次元のゲームプログラムでは、地形上に表示される人物や爆発などのキャラクタオブジェクトは地形オブジェクト上に配置し、鳥や空中での爆発などは地形オブジェクトから離した位置に配置することが技術常識である。
しかしながら、上述したように、例えば旧式のゲームプログラムに含まれる二次元の画像を利用した移植などの場合には、以下の問題が生じ得る。
例えば、近年の三次元ゲームでは、図16に示すような仮想カメラ1601とキャラクタオブジェクト1602とその他オブジェクト1603と地形オブジェクト1604とを含む仮想空間において、自身の半身より長い剣を持ったキャラクタオブジェクト1602が剣を前方に振り下ろした場合、図17に示すように剣は斜め下に振り下ろされるため、長い剣が地面にめり込んで表示されることはない。
次に、特許文献3のように、図16の3Dオブジェクトを平面ポリゴンで代用する場合を考える。この際、図18(a)および図18(b)に示すように各オブジェクト毎に仮想カメラから見たテクスチャが貼り付けられる平面ポリゴン1801、1802を用意し、これを図18(c)のように合成表示する。図18(c)のように配置された平面ポリゴン1801、1802を仮想カメラに対して垂直な方向から見ると、図19のようになる。同様に、キャラクタが長い剣を振り下ろした動作を表現する場合は、図20(a)に示すように当該動作をしたキャラクタのテクスチャを平面ポリゴン2001(平面ポリゴン1801と同一ポリゴンであってもよい)に貼り付けて合成表示することになる。しかしながら、このとき、キャラクタが図18(c)と同じ地点に立つように平面ポリゴン2001を配置しようとすると、図20(c)のように平面ポリゴン2001が地形にめり込んでしまうことになる。その結果、キャラクタが斜め下に振り下ろしたはずの剣が、地面にめり込んで表示されてしまうという不具合が生じる。
二次元の仮想空間では剣先がキャラクタの足先よりも下にくるような画像を利用したとしても特に問題は発生しないが、上記のように、三次元の仮想空間において地形オブジェクトに対して立てて配置したポリゴンに対して剣先がキャラクタの足先よりも下にくるような画像をテクスチャとして貼り付けた場合には、剣の一部が表示されないという問題が生じる。この問題は、キャラクタが剣よりも長い、例えば投げ縄を投げたときの画像をテクスチャとしてポリゴンに貼り付ける場合に、より深刻となる。
それゆえに、本発明の目的は、三次元の仮想空間において地面に配置されたキャラクタの一部が地面にめり込んでいるように表示されてしまうのを防止することのできる画像生成プログラム画像生成方法及び画像生成装置を提供することである。
上記目的を達成するために、本発明は下記のような構成を採用した。なお、括弧内の参照符号は、本発明の理解を助けるために図面との対応関係を示したものであって、本発明の範囲を何ら限定するものではない。
本発明の一実施例に係る画像生成プログラムは、オブジェクトが配置された三次元の仮想空間の様子を、仮想空間における仮想カメラ(1601)に基づく投影平面に投影変換し、描画領域(210)に描画することによって、仮想カメラから見た画像を生成する処理をコンピュータに実行させるための画像生成プログラムである。
この画像生成プログラムは、コンピュータを、オブジェクト読み出し手段(ステップS705を実行するCPU202;以下、単にステップ番号のみ示す)、第1配置手段(S706)、第2配置手段(S706)、テクスチャ読出し手段(S707)および描画手段(S708、S710)として機能させるためのものである。より具体的には、オブジェクト読出し手段は、少なくとも一枚のポリゴンによって平面状に構成される第1オブジェクト(1501、1801)と、少なくとも一枚のポリゴンによって構成される第2オブジェクト(1802)とをメモリ(214)から読み出すものである。第1配置手段は、仮想空間におけるある水平面に対して、読み出した第1オブジェクトを立てた状態(すなわち、水平面と第1オブジェクトとが平行ではない状態であって、垂直に限定されるものではない。)で配置するものである(図3、図12)。第2配置手段は、第1オブジェクトが配置された水平面に対する仮想カメラの方向とは逆方向(図3や図12の矢印が示す方向)、かつ水平面とは間隔を空けてほぼ平行に読み出された第2オブジェクトを配置するものである。テクスチャ読出し手段は、仮想空間における地面を表示するための地面テクスチャと、地面に接した位置に表示されるべきキャラクタ(人物に限らず爆発パターンなども含み得る。)を表示するためのキャラクタテクスチャとをメモリ(214)から読み出すものである。描画手段は、投影平面に投影変換された第1オブジェクトに読み出されたキャラクタテクスチャを貼り付け、第2オブジェクトに読み出された地面テクスチャを貼り付けることによって、仮想カメラから見える画像を描画領域に描画するものである。
なお、第1配置手段および第2配置手段は、第1オブジェクトおよび第2オブジェクトを本来の位置関係から仮想カメラの向く方向に沿って所定距離だけ離した状態で配置するものであって、第1オブジェクトおよび第2オブジェクトのいずれか一方を本来の位置からずらして配置してもよいし(図3、図11)、第1オブジェクトおよび第2オブジェクトの両方を本来の位置からずらして配置してもよい。また、ずらして配置するのは、仮想空間に配置するときでもよいし、仮想空間の描画のためにカメラ座標系に座標変換するときでもよい。さらには、ずらす処理が変換行列に組み込まれていてもよい。
本発明の他の実施例に係る画像生成プログラムは、第1配置手段は、第1オブジェクトの平面が水平面に対してほぼ垂直かつ仮想カメラ側に向くように第1オブジェクトを配置することを特徴とする。
本発明のさらに他の実施例に係る画像生成プログラムは、第1配置手段は、第1オブジェクトの平面が仮想カメラに対して向くように第1オブジェクトを配置することを特徴とする。
本発明のさらに他の実施例に係る画像生成プログラムは、第1オブジェクトはキャラクタテクスチャの表示態様によってその大きさが変化するものであり、第2配置手段は、水平面に対する第1オブジェクトの垂直な辺が変化する長さ分の距離を少なくとも空けて水平面に対して第2オブジェクトを配置することを特徴とする。
本発明のさらに他の実施例に係る画像生成プログラムは、第1オブジェクトは、仮想空間において人物を模したゲームキャラクタ又は仮想空間に発生させる特殊効果を表示するための特殊効果キャラクタであることを特徴とする。
本発明のさらに他の実施例に係る画像生成プログラムは、コンピュータを、仮想カメラの向きが水平面に対して鋭角となるように当該仮想カメラを仮想空間に配置する手段としてさらに機能させることを特徴とする。
本発明の一実施例に係る画像生成方法は、三次元の仮想空間に配置された仮想カメラから当該仮想空間を見た画像を生成するための画像生成方法である。この画像生成方法は、仮想空間に少なくとも地形に対応する地形オブジェクト(1802)と当該地形上に立つキャラクタに対応するキャラクタオブジェクト(1501、1801)とを配置するステップ(S706)と、仮想空間に配置された地形オブジェクトおよびキャラクタオブジェクトを本来の位置関係から仮想カメラの向く方向に沿って所定距離だけ離した状態で描画するステップ(S708、S710、図3、図11〜図13)とを備える。
本発明の他の実施例に係る画像生成方法は、キャラクタオブジェクトが平面状であり、配置ステップでは、地形オブジェクトによって規定される仮想空間内の地面に対してキャラクタオブジェクトを略垂直に配置し、描画ステップでは、キャラクタを表すテクスチャをキャラクタオブジェクトに貼り付けることを特徴とする。
本発明のさらに他の実施例に係る画像生成方法は、配置ステップでは、地形オブジェクトおよびキャラクタオブジェクトを本来の位置関係から仮想カメラの向く方向に沿って所定距離だけ離した状態で配置することを特徴とする(図3、図11)。
本発明のさらに他の実施例に係る画像生成方法は、描画ステップでは、地形オブジェクトおよびキャラクタオブジェクトの位置を仮想カメラの位置を基準点としたカメラ座標系で表すときに、地形オブジェクトまたはキャラクタオブジェクトのZ座標値を所定値だけずらすことを特徴とする(図12、図13)。
本発明によれば、三次元の仮想空間において地面に配置されたキャラクタの一部が地面にめり込んでいるように表示されてしまうのを防止することができる。
図1は、ゲームシステムの構成を示す外観図であり、図2はそのブロック図である。図1および図2に示すように、ゲームシステムは、TVモニタ10、ゲーム機本体20、DVD−ROM30、外部メモリカード40、コントローラ50およびスピーカ60を備える。DVD−ROM30および外部メモリカード40は、ゲーム機本体20に着脱自在に装着される。コントローラ50は、通信ケーブルを介して、ゲーム機本体20に設けられた複数(図1では4つ)のコントローラポート用コネクタのいずれかに接続される。TVモニタ10およびスピーカ60は、AVケーブル等によってゲーム機本体20と接続される。なお、ゲーム機本体20とコントローラ50との通信は無線通信であってもよい。以下、図2を参照しながら、ゲームシステムの各部についてより詳細に説明する。
DVD−ROM30は、ゲームプログラムやゲームデータ等を固定的に記憶している。プレイヤがゲームをプレイするとき、DVD−ROM30はゲーム機本体20に装着される。なお、ゲームプログラム等を記憶する手段として、DVD−ROM30の代わりに例えばCD−ROM、MO、メモリカード、ROMカートリッジ等の外部記憶媒体を用いてもよい。
外部メモリカード40は、例えばフラッシュメモリ等の書き換え可能な記憶媒体によって構成され、例えばゲームのセーブデータ等のデータを記録する。
ゲーム機本体20は、DVD−ROM30に記録されているプログラムを読み出し、読み出したプログラムに応じた処理を行う。
コントローラ50は、プレイヤがゲーム操作に関する入力を行うための入力装置であり、複数の操作スイッチを有する。コントローラ50は、プレイヤによる操作スイッチの押圧等に応じて操作データをゲーム機本体20に出力する。
TVモニタ10は、ゲーム機本体20から出力された画像データを画面に表示する。スピーカ60は、典型的にはTVモニタ10に内蔵されており、ゲーム機本体20から出力されたゲーム中の音声を出力する。
次に、ゲーム機本体20の構成について説明する。図2において、ゲーム機本体20には、CPU202およびそれに接続されるメモリコントローラ220が設けられる。さらにゲーム機本体20において、メモリコントローラ220は、GPU(グラフィックスプロセッシングユニット)204と、メインメモリ214と、DSP216と、各種インターフェース(I/F)222、224、226、228、232とに接続される。メモリコントローラ220は、これら各構成要素間のデータ転送を制御する。
ゲーム開始の際、まず、ディスクドライブ230は、ゲーム機本体20に装着されたDVD−ROM30を駆動する。DVD−ROM30に記憶されているゲームプログラムは、ディスクI/F232およびメモリコントローラ220を介して、メインメモリ214に読み込まれる。このメインメモリ214上のプログラムをCPU202が実行することによってゲームが開始される。ゲーム開始後、プレイヤは、操作スイッチを用いてコントローラ50に対してゲーム操作等の入力を行う。プレイヤによる入力に従い、コントローラ50は、操作データをゲーム機本体20に出力する。コントローラ50から出力される操作データは、コントローラI/F222およびメモリコントローラ220を介してCPU202に供給される。CPU202は、入力された操作データに応じてゲーム処理を行う。ゲーム処理における画像データ生成等に際して、GPU204やDSP216が用いられる。また、サブメモリ218は、DSP216が処理を行う際に用いられる。
GPU204は、ジオメトリユニット206およびレンダリングユニット208を含み、画像処理専用のメモリに接続されている。この画像処理専用メモリは、例えばカラーバッファ210やZバッファ212として利用される。ジオメトリユニット206は、三次元の仮想空間であるゲーム空間に置かれた物体や図形に関する立体モデル(例えばポリゴンで構成されるオブジェクト)の座標についての演算処理を行うものであり、例えば立体モデルの回転・拡大縮小・変形や、ワールド座標系の座標からカメラ座標系やスクリーン座標系の座標への変換を行うものである。レンダリングユニット208は、所定のテクスチャに基づいて、スクリーン座標に投影された立体モデルについて各ピクセルごとのカラーデータ(RGBデータ)をカラーバッファ210に書き込むことによって、ゲーム画像を生成するためのものである。また、カラーバッファ210は、レンダリングユニット208によって生成されたゲーム画像データ(RGBデータ)を保持するために確保されたメモリ領域である。Zバッファ212は、3次元の視点座標から2次元のスクリーン座標に変換する際に失われる視点からの奥行情報を保持するために確保されたメモリ領域である。GPU204は、これらバッファを用いてTVモニタ10に表示すべき画像データを生成し、メモリコントローラ220およびビデオI/F224を介して、この画像データをTVモニタ10に適宜出力する。なお、ゲームプログラム実行時にCPU202において生成される音声データは、メモリコントローラ220からオーディオI/F228を介してスピーカ60に出力される。なお本実施形態では、画像処理専用のメモリを別途設けたハードウェア構成としたが、これに限らず例えばメインメモリ214の一部を画像処理用のメモリとして利用する方式(UMA:Unified Memory Architecture)を使うようにしてもよい。
メインメモリ214には、DVD−ROM30から読み出された各種プログラムやデータが格納される。これらのデータの中には、仮想ゲーム空間に配置される3次元モデルを構成するポリゴンに関するデータや、ポリゴンに色を貼り付けるためのテクスチャ等が含まれる。
次に、本実施形態のゲームシステムの動作について説明する。
詳細な説明を行う前にまず、本実施形態の原理について簡単に説明する。本実施形態では、図16に示した3Dオブジェクト1602〜1603をそれぞれ平面状のオブジェクトで代用する。そして、図3に示すように、仮想空間における地面に立つキャラクタオブジェクト1801、1902が、地形オブジェクト1802に対して立てた状態(すなわち、地形オブジェクト1802とキャラクタオブジェクト1801とが平行ではない状態)で配置される。なお、キャラクタオブジェクト1801、1902を立てて配置する理由の一つは、地形オブジェクト1802に対して寝かして配置した場合に問題となるキャラクタオブジェクト1801、1902同士の重なりを防止するためである。仮想空間には仮想カメラ1601も配置される。この仮想カメラ1601は、地形オブジェクト1802を斜め上方からとらえる位置(すなわち、仮想カメラ1601の向きを示すベクトルと地形オブジェクト1802の角度が鋭角となる位置)に配置される。また、各オブジェクト1801、1802、1902が仮想カメラ1601側に向くように配置される。さらに、本発明に特徴的な処理として、地形オブジェクト1802とキャラクタオブジェクト1801とを、本来の位置よりも離して配置する。より具体的には、地形オブジェクト1802を、仮想カメラ1601が向いている方向に沿って、仮想カメラ1601から離れる方向に(すなわち図3の矢印の方向に)所定の距離だけずらして配置する。ここで、地形オブジェクト1802は仮想カメラ1601が向いている方向に沿って本来の位置からずらされるため、仮想カメラ1601から見てもずれていることは知覚されず、図4に示すようにキャラクタオブジェクト1801が本来の位置(図18(c)と同じ位置)にいるように見える。
一方、図5に示すように、剣を振り下ろしたキャラクタを示すキャラクタオブジェクト2001を表示する場合にも同様に、地形オブジェクト1802を、仮想カメラ1601が向いている方向に沿って、仮想カメラ1601から離れる方向に所定の距離だけずらして配置する。この場合も、仮想カメラ1601から見ても地形オブジェクトがずらされていることは知覚されず、図6に示すようにキャラクタオブジェクト2001が本来の位置(図20(c)と同じ位置)にいるように見える。しかも、図5に示すように、キャラクタオブジェクト2001と地形オブジェクト1802が交わらないため、キャラクタオブジェクト2001は地形オブジェクト1802にめり込まず、図6に示すように剣先までも正確に表示される。
以下、本実施形態のゲーム機本体20の動作について説明する。
図7に、三次元仮想空間を仮想カメラから見た様子を示す画像を生成するときの処理の流れを示す。なお、以下の処理はゲーム機本体20のCPU202がDVD−ROM30から読み出したプログラムに従って実行するものとして説明するが、それらの処理の一部をGPU204や画像処理専用ハードウェアを用いて処理しても構わない。
図7のステップS701で、CPU202は、予め設定されている規定値Aを、地形オブジェクト1802のY軸方向の移動量(ΔY)として設定する(図8参照)。規定値Aとしては、少なくともキャラクタが地形にめり込まない十分な大きさを設定しておく。
ステップS702では、距離A(規定値A)と、仮想カメラ1601の向きを示すベクトルと地形オブジェクト1802の角度θとに基づいて、図8に示す距離Bを計算する。具体的な計算式は図7に示すとおりである。
ステップS703では、前ステップで計算した距離Bを、地形オブジェクト1802のZ軸方向の移動量(ΔZ)として設定する(図8参照)。
ステップS704では、地形オブジェクト1802の移動後の座標を計算する。
ステップS705では、メインメモリ214からキャラクタオブジェクト1801、1902と、地形オブジェクト1802を読み出す。
ステップS706では、前ステップで読み出したキャラクタオブジェクト1801、1902を仮想空間の所定の位置に配置する。また、同じく前ステップで読み出した地形オブジェクト1802をステップS701、S703でそれぞれ設定した移動量を反映した位置(つまり、地形オブジェクト1802を、仮想カメラ1601の向きに沿って仮想カメラ1601の反対方向に本来の位置からY軸方向にΔY、Z軸方向にΔZ移動させた位置)に配置する(図8参照)。
ステップS707では、メインメモリ214から各オブジェクトのテクスチャを読み出し、ステップS708で、読み出したテクスチャを各オブジェクトに貼り付けて描画を開始する。そして、ステップS709で、全オブジェクトの描画が終了したかどうかを判定し、全オブジェクトの描画が終了していた場合にはステップS710に進む。一方、まだ描画の終了していないオブジェクトが存在していた場合にはステップS707に戻り、テクスチャ処理を行う。
ステップS710では、変換行列を用いて、仮想空間を仮想カメラ1601でとらえたシーンを投影平面に平行投影(正射影)して描画し、描画結果をカラーバッファ210に格納する。
以上のような処理により、例えばキャラクタオブジェクト2001を表示する場合にも、キャラクタオブジェクト2001が本来の位置にいるように見え、しかも、キャラクタオブジェクト2001が地形オブジェクト1802にめり込まないように見える画像を生成することができる。
なお、図7では、距離Aを予め設定されている規定値であるとしたが、距離Aを状況に応じて動的に決定しても構わない。例えば、図9に示すように、ステップS901でZ軸と仮想カメラ1601の角度θを計算後、ステップS902で、図10に示すように、地形オブジェクト1802上に立つ複数のキャラクタに対応するキャラクタオブジェクト1001〜1003のうちの最も全長が長いキャラクタオブジェクト(ここではキャラクタオブジェクト1003)の全長Tを距離Aとして設定してもよい。これにより、常に、いずれのキャラクタオブジェクトも地形オブジェクト1802にめり込まないことが保証される。図9におけるステップS701以降の処理は図7と同様であるため説明を省略する。さらに、距離Aとしてその他の値を設定しても構わない。例えば、平面ポリゴンにおいてキャラクタの足元に対して下方に伸びた分の長さを計算してもよい。
なお、本実施形態では、地形オブジェクトを仮想カメラから離れる方向にずらす例について説明したが、キャラクタオブジェクトを仮想カメラに近づく方向にずらすことによっても同様の効果が得られることは言うまでもない。このとき、仮想カメラ方向にずらす距離をキャラクタオブジェクト毎に異ならせても構わない。また、地形オブジェクトとキャラクタオブジェクトの両方を、仮想カメラの向きに沿って相対的に所定の距離だけ離れるようにずらしてもよい。
また、本実施形態では、仮想空間を仮想カメラでとらえたシーンを投影平面に平行投影して描画するとしたが、透視投影により描画する場合にも本発明を適用することができる。この場合、図11に示すように、仮想カメラ1601と各オブジェクトとを結ぶ直線に沿って各オブジェクトをずらせばよい。ただし、透視投影による場合は、オブジェクトを仮想カメラ1601の向きに沿ってずらしたときに画像に表示されるこのオブジェクトの大きさが幾らか変化してしまう。そこで、透視投影の場合には、ずらした方向と距離に応じて各オブジェクトをスケーリングすれば、より違和感の無い画像を生成できるため好ましい。
また、本実施形態では、キャラクタオブジェクトと地形オブジェクトとを仮想空間において本来の位置関係からずらして配置するとしたが、仮想空間にずらして配置する替わりに、仮想空間に配置されたオブジェクトを描画する処理の中で、キャラクタオブジェクトと地形オブジェクトとを本来の位置関係からずらしてもよい。例えば、ワールド座標系で表されている各オブジェクトの座標を、変換行列を用いて仮想カメラ1601を基準としたカメラ座標系に座標変換した後に、キャラクタオブジェクトと地形オブジェクトとを本来の位置関係からずらしてもよい。この場合、図12および図13に示すように、キャラクタオブジェクト2001または地形オブジェクト1802をカメラ座標系のZ軸方向に沿ってずらす(つまり、Z座標値に所定値を加算または減算する)だけでよいため、処理がより単純になる。なお、このように各オブジェクトをずらす処理は、仮想空間を投影平面に投影する際に用いられるいずれかの変換行列に組み込まれても構わない。なお、変換処理後に求められる陰面処理用のZ値に、ずれ分を考慮したオフセット値を与えるようにしてもよい。
また、本実施形態において、キャラクタオブジェクトは必ずしも1枚のポリゴンで構成されていなくてもよい。例えば、図14(a)〜図14(c)に示す3枚のポリゴン1401〜1403を用いて、図15(a)および図15(b)に示すようにキャラクタオブジェクト1501を構成してもよい。
また、本実施形態において、仮想空間には複数の平面状のオブジェクトが配置されるとしたが、本発明はこれに限らず、平面状オブジェクトに加えて3Dオブジェクトが配置されていても構わない。また、地形オブジェクトが3Dオブジェクト(例えば直方体)であっても構わない。また同様に、キャラクタオブジェクトが3Dオブジェクト(例えば直方体)であって、この3Dオブジェクトにキャラクタの画像に対応するテクスチャを貼り付けることによってキャラクタを表現するものであってもよい。
また、本実施形態では、キャラクタオブジェクトを地形オブジェクトに対して垂直になるように配置したが、本発明はこれに限らず、例えば、キャラクタオブジェクトが仮想カメラに対して正面を向くように(すなわち、仮想カメラの向きを示すベクトルとキャラクタオブジェクトの平面とが垂直となるように)キャラクタオブジェクトを配置してもよい。
本発明の一実施形態に係るゲームシステムの外観図 ゲーム機本体20の内部構成を示すブロック図 本発明の原理を示す図 本発明の原理を示す別の図 本発明の一実施形態において仮想空間に配置されたオブジェクトを仮想カメラから見た図 本発明の一実施形態において仮想空間に配置されたオブジェクトを仮想カメラから見た別の図 ゲーム機本体20の動作を示すフローチャート 図7のフローチャートの処理について説明するための図 ゲーム機本体20の動作を示す別のフローチャート 図9のフローチャートの処理について説明するための図 本発明の一実施形態の変形例を示す図 本発明の一実施形態の変形例を示す別の図 本発明の一実施形態の変形例を示すさらに別の図 キャラクタオブジェクトを構成するポリゴンの例を示す図 キャラクタオブジェクトの構成例を示す図 従来のゲーム装置におけるオブジェクトの配置例を示す図 従来のゲーム装置におけるオブジェクトの配置例を示す別の図 3Dオブジェクトを平面ポリゴンで代用した場合のオブジェクトの配置例を示す図 図18のように配置したオブジェクトを別の角度から見た図 3Dオブジェクトを平面ポリゴンで代用した場合のオブジェクトの配置例を示す別の図 図20のように配置したオブジェクトを別の角度から見た図
符号の説明
10 TVモニタ
20 ゲーム機本体
30 DVD−ROM
40 外部メモリカード
50 コントローラ
60 スピーカ
202 CPU
204 GPU
206 ジオメトリユニット
208 レンダリングユニット
210 カラーバッファ
212 Zバッファ
214 メインメモリ
216 DSP
218 サブメモリ
220 メモリコントローラ
222 コントローラI/F
224 ビデオI/F
226 外部メモリI/F
228 オーディオI/F
230 ディスクドライブ
232 ディスクI/F
1001 キャラクタオブジェクト
1002 キャラクタオブジェクト
1003 キャラクタオブジェクト
1401 ポリゴン
1402 ポリゴン
1403 ポリゴン
1501 キャラクタオブジェクト
1601 仮想カメラ
1602 キャラクタオブジェクト
1603 キャラクタオブジェクト
1604 地形オブジェクト
1801 キャラクタオブジェクト
1802 地形オブジェクト
1901 キャラクタオブジェクト
2001 キャラクタオブジェクト

Claims (12)

  1. オブジェクトが配置された三次元の仮想空間の様子を、前記仮想空間における仮想カメラに基づく投影平面に投影変換し、描画領域に描画することによって、前記仮想カメラから見た画像を生成する処理をコンピュータに実行させるための画像生成プログラムであって、前記コンピュータを、
    少なくとも一枚のポリゴンによって平面状に構成される第1オブジェクトと、少なくとも一枚のポリゴンによって構成される第2オブジェクトとをメモリから読み出すオブジェクト読出し手段、
    前記仮想空間におけるある水平面に対して、前記読み出した第1オブジェクトを立てた状態で配置する第1配置手段、
    前記第1オブジェクトが配置された水平面に対する前記仮想カメラの方向とは逆方向、かつ前記水平面とは間隔を空けてほぼ平行に前記読み出された第2オブジェクトを配置する第2配置手段、
    前記仮想空間における地面を表示するための地面テクスチャと、前記地面に接した位置に表示されるべきキャラクタを表示するためのキャラクタテクスチャとをメモリから読み出すテクスチャ読出し手段、および、
    前記投影平面に投影変換された前記第1オブジェクトに前記読み出されたキャラクタテクスチャを貼り付け、前記第2オブジェクトに前記読み出された地面テクスチャを貼り付けることによって、前記仮想カメラから見える画像を前記描画領域に描画する描画手段、として機能させるための画像生成プログラム。
  2. 前記第1配置手段は、前記第1オブジェクトの平面が前記水平面に対してほぼ垂直かつ前記仮想カメラ側に向くように前記第1オブジェクトを配置することを特徴とする、請求項1に記載の画像生成プログラム。
  3. 前記第1配置手段は、前記第1オブジェクトの平面が前記仮想カメラに対して向くように前記第1オブジェクトを配置することを特徴とする、請求項1に記載の画像生成プログラム。
  4. 前記第1オブジェクトは前記キャラクタテクスチャの表示態様によってその大きさが変化するものであり、
    前記第2配置手段は、前記水平面に対する前記第1オブジェクトの垂直な辺が変化する長さ分の距離を少なくとも空けて前記水平面に対して前記第2オブジェクトを配置することを特徴とする、請求項1〜3のいずれかに記載の画像生成プログラム。
  5. 前記第1オブジェクトは、前記仮想空間において人物を模したゲームキャラクタ又は前記仮想空間に発生させる特殊効果を表示するための特殊効果キャラクタである、請求項1〜4のいずれかに記載の画像生成プログラム。
  6. 前記コンピュータを、前記仮想カメラの向きが前記水平面に対して鋭角となるように当該仮想カメラを仮想空間に配置する手段としてさらに機能させることを特徴とする、請求項1〜5のいずれかに記載の画像生成プログラム。
  7. オブジェクトが配置された三次元の仮想空間の様子を、前記仮想空間における仮想カメラに基づく投影平面に投影変換し、描画領域に描画することによって、前記仮想カメラから見た画像を生成する処理をコンピュータに実行させるための画像生成プログラムであって、前記コンピュータを、
    少なくとも一枚のポリゴンによって平面状に構成される第1オブジェクトと、少なくとも一枚のポリゴンによって構成される第2オブジェクトとをメモリから読み出すオブジェクト読出し手段、
    前記仮想空間に前記読み出した第2オブジェクトを配置するとともに、当該第2オブジェクトに対して前記読み出した第1オブジェクトを立てた状態で配置する配置手段、
    前記仮想空間における地面を表示するための地面テクスチャと、前記地面に接した位置に表示されるべきキャラクタを表示するためのキャラクタテクスチャとをメモリから読み出すテクスチャ読出し手段、および、
    前記投影平面に投影変換された前記第1オブジェクトに前記読み出されたキャラクタテクスチャを貼り付け、前記第2オブジェクトに前記読み出された地面テクスチャを貼り付けることによって、前記仮想カメラから見える画像を前記描画領域に描画する描画手段、として機能させ、
    前記描画手段は、前記描画処理の過程において、前記第1オブジェクトと前記第2オブジェクトが離れる方向に、前記第1オブジェクトまたは前記第2オブジェクトを、前記配置手段によって配置された位置から前記仮想カメラの向きに沿ってずらして描画することを特徴とする、画像生成プログラム。
  8. 前記描画手段は、前記配置手段によって配置された前記第1オブジェクトおよび前記第2オブジェクトの位置を示す座標値を前記仮想カメラを基準としたカメラ座標系の座標値へと変換する手段と、カメラ座標系における前記第1オブジェクトまたは前記第2オブジェクトのZ座標値を所定値だけずらす手段と、を含むことを特徴とする、請求項7に記載の画像生成プログラム。
  9. オブジェクトが配置された三次元の仮想空間の様子を、前記仮想空間における仮想カメラに基づく投影平面に投影変換し、描画領域に描画することによって、前記仮想カメラから見た画像をコンピュータにより生成する画像生成方法であって、
    少なくとも一枚のポリゴンによって平面状に構成される第1オブジェクトと、少なくとも一枚のポリゴンによって構成される第2オブジェクトとをメモリから読み出すオブジェクト読出しステップ、
    前記仮想空間におけるある水平面に対して、前記読み出した第1オブジェクトを立てた状態で配置する第1配置ステップ、
    前記第1オブジェクトが配置された水平面に対する前記仮想カメラの方向とは逆方向、かつ前記水平面とは間隔を空けてほぼ平行に前記読み出された第2オブジェクトを配置する第2配置ステップ、
    前記仮想空間における地面を表示するための地面テクスチャと、前記地面に接した位置に表示されるべきキャラクタを表示するためのキャラクタテクスチャとをメモリから読み出すテクスチャ読出しステップ、および、
    前記投影平面に投影変換された前記第1オブジェクトに前記読み出されたキャラクタテクスチャを貼り付け、前記第2オブジェクトに前記読み出された地面テクスチャを貼り付けることによって、前記仮想カメラから見える画像を前記描画領域に描画する描画ステップを備える、画像生成方法。
  10. オブジェクトが配置された三次元の仮想空間の様子を、前記仮想空間における仮想カメラに基づく投影平面に投影変換し、描画領域に描画することによって、前記仮想カメラから見た画像をコンピュータにより生成する画像生成方法であって、
    少なくとも一枚のポリゴンによって平面状に構成される第1オブジェクトと、少なくとも一枚のポリゴンによって構成される第2オブジェクトとをメモリから読み出すオブジェクト読出しステップ、
    前記仮想空間に前記読み出した第2オブジェクトを配置するとともに、当該第2オブジェクトに対して前記読み出した第1オブジェクトを立てた状態で配置する配置ステップ、
    前記仮想空間における地面を表示するための地面テクスチャと、前記地面に接した位置に表示されるべきキャラクタを表示するためのキャラクタテクスチャとをメモリから読み出すテクスチャ読出しステップ、および、
    前記投影平面に投影変換された前記第1オブジェクトに前記読み出されたキャラクタテクスチャを貼り付け、前記第2オブジェクトに前記読み出された地面テクスチャを貼り付けることによって、前記仮想カメラから見える画像を前記描画領域に描画する描画ステップを備え、
    前記描画ステップにおいて、前記第1オブジェクトと前記第2オブジェクトが離れる方向に、前記第1オブジェクトまたは前記第2オブジェクトを、前記配置ステップで配置された位置から前記仮想カメラの向きに沿ってずらして描画することを特徴とする、画像生成方法。
  11. オブジェクトが配置された三次元の仮想空間の様子を、前記仮想空間における仮想カメラに基づく投影平面に投影変換し、描画領域に描画することによって、前記仮想カメラから見た画像を生成する画像生成装置であって、
    少なくとも一枚のポリゴンによって平面状に構成される第1オブジェクトと、少なくとも一枚のポリゴンによって構成される第2オブジェクトとをメモリから読み出すオブジェクト読出し手段、
    前記仮想空間におけるある水平面に対して、前記読み出した第1オブジェクトを立てた状態で配置する第1配置手段、
    前記第1オブジェクトが配置された水平面に対する前記仮想カメラの方向とは逆方向、かつ前記水平面とは間隔を空けてほぼ平行に前記読み出された第2オブジェクトを配置する第2配置手段、
    前記仮想空間における地面を表示するための地面テクスチャと、前記地面に接した位置に表示されるべきキャラクタを表示するためのキャラクタテクスチャとをメモリから読み出すテクスチャ読出し手段、および、
    前記投影平面に投影変換された前記第1オブジェクトに前記読み出されたキャラクタテクスチャを貼り付け、前記第2オブジェクトに前記読み出された地面テクスチャを貼り付けることによって、前記仮想カメラから見える画像を前記描画領域に描画する描画手段を備える、画像生成装置。
  12. オブジェクトが配置された三次元の仮想空間の様子を、前記仮想空間における仮想カメラに基づく投影平面に投影変換し、描画領域に描画することによって、前記仮想カメラから見た画像を生成する画像生成装置であって、
    少なくとも一枚のポリゴンによって平面状に構成される第1オブジェクトと、少なくとも一枚のポリゴンによって構成される第2オブジェクトとをメモリから読み出すオブジェクト読出し手段、
    前記仮想空間に前記読み出した第2オブジェクトを配置するとともに、当該第2オブジェクトに対して前記読み出した第1オブジェクトを立てた状態で配置する配置手段、
    前記仮想空間における地面を表示するための地面テクスチャと、前記地面に接した位置に表示されるべきキャラクタを表示するためのキャラクタテクスチャとをメモリから読み出すテクスチャ読出し手段、および、
    前記投影平面に投影変換された前記第1オブジェクトに前記読み出されたキャラクタテクスチャを貼り付け、前記第2オブジェクトに前記読み出された地面テクスチャを貼り付けることによって、前記仮想カメラから見える画像を前記描画領域に描画する描画手段を備え、
    前記描画手段は、前記描画処理の過程において、前記第1オブジェクトと前記第2オブジェクトが離れる方向に、前記第1オブジェクトまたは前記第2オブジェクトを、前記配置手段によって配置された位置から前記仮想カメラの向きに沿ってずらして描画することを特徴とする、画像生成装置。
JP2003311790A 2003-09-03 2003-09-03 画像生成プログラム、画像生成方法及び画像生成装置 Expired - Lifetime JP4425589B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2003311790A JP4425589B2 (ja) 2003-09-03 2003-09-03 画像生成プログラム、画像生成方法及び画像生成装置
US10/921,978 US7173618B2 (en) 2003-09-03 2004-08-20 Image creation program and method of creating image

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003311790A JP4425589B2 (ja) 2003-09-03 2003-09-03 画像生成プログラム、画像生成方法及び画像生成装置

Publications (2)

Publication Number Publication Date
JP2005078601A JP2005078601A (ja) 2005-03-24
JP4425589B2 true JP4425589B2 (ja) 2010-03-03

Family

ID=34214269

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003311790A Expired - Lifetime JP4425589B2 (ja) 2003-09-03 2003-09-03 画像生成プログラム、画像生成方法及び画像生成装置

Country Status (2)

Country Link
US (1) US7173618B2 (ja)
JP (1) JP4425589B2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4849829B2 (ja) 2005-05-15 2012-01-11 株式会社ソニー・コンピュータエンタテインメント センタ装置
US8786596B2 (en) * 2008-07-23 2014-07-22 Disney Enterprises, Inc. View point representation for 3-D scenes
JP5357685B2 (ja) * 2009-09-28 2013-12-04 株式会社ソニー・コンピュータエンタテインメント 3次元オブジェクト処理装置、3次元オブジェクト処理方法、プログラム、及び情報記憶媒体
JP5632657B2 (ja) * 2010-06-09 2014-11-26 任天堂株式会社 画像処理プログラム、画像処理装置、画像処理システム及び画像処理方法
CN104299264B (zh) * 2014-09-30 2017-11-24 南京航空航天大学 一种基于边缘图的三维人脸重建方法及系统

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6405975B1 (en) * 1995-12-19 2002-06-18 The Boeing Company Airplane ground maneuvering camera system
JPH10179932A (ja) 1996-12-26 1998-07-07 Konami Co Ltd 爆発パターンの表示装置,その表示方法,及びコンピュータプログラムを記録した機械読取り可能な記録媒体
US6195104B1 (en) * 1997-12-23 2001-02-27 Philips Electronics North America Corp. System and method for permitting three-dimensional navigation through a virtual reality environment using camera-based gesture inputs
JP2000093654A (ja) 1998-09-25 2000-04-04 Square Co Ltd ゲーム装置、ゲーム方法および情報記録媒体
JP2000172878A (ja) * 1998-12-09 2000-06-23 Sony Corp 情報処理装置および情報処理方法、並びに提供媒体
US6614427B1 (en) * 1999-02-01 2003-09-02 Steve Aubrey Process for making stereoscopic images which are congruent with viewer space
US6346938B1 (en) * 1999-04-27 2002-02-12 Harris Corporation Computer-resident mechanism for manipulating, navigating through and mensurating displayed image of three-dimensional geometric model
DE10102938B4 (de) * 2001-01-23 2007-10-11 Eurocopter Deutschland Gmbh Nicklage-Symbolik
US6795069B2 (en) * 2002-05-29 2004-09-21 Mitsubishi Electric Research Laboratories, Inc. Free-form modeling of objects with variational implicit surfaces

Also Published As

Publication number Publication date
US20050046625A1 (en) 2005-03-03
JP2005078601A (ja) 2005-03-24
US7173618B2 (en) 2007-02-06

Similar Documents

Publication Publication Date Title
US7104891B2 (en) Game machine and game program for displaying a first object casting a shadow formed by light from a light source on a second object on a virtual game space
JP3668019B2 (ja) 記録媒体、画像処理装置および画像処理方法
US8593456B2 (en) Image generating apparatus, method of generating image, program, and recording medium
EP1642625A2 (en) Video game device and image processing program
KR19990014706A (ko) 화상처리장치, 이 처리장치를 이용한 게임기와 화상처리방법및 매체
JP2009237680A (ja) プログラム、情報記憶媒体および画像生成システム
JP2002099927A (ja) 3次元画像処理方法、装置、3次元画像処理プログラムを記録した可読記録媒体及びビデオゲーム装置
JP3723301B2 (ja) 画像作成装置,画像表示装置およびゲーム装置
JPH10198822A (ja) 画像合成装置
JP3352982B2 (ja) レンダリング方法及び装置、ゲーム装置、並びに立体モデルをレンダリングするプログラムを格納するコンピュータ読み取り可能な記録媒体
JP2006346507A (ja) ゲーム装置および画像処理プログラム
JP4425589B2 (ja) 画像生成プログラム、画像生成方法及び画像生成装置
JP2020107251A (ja) 画像生成システム及びプログラム
JP3990258B2 (ja) 画像生成システム、プログラム及び情報記憶媒体
JP3005581B1 (ja) 画像作成装置、画像作成方法、画像作成プログラムが記録された可読記録媒体およびビデオゲ―ム装置
KR19990077421A (ko) 화상작성장치,화상작성방법및화상작성프로그램이기록된판독가능한기록매체
JP4447000B2 (ja) 画像生成システム、プログラム及び情報記憶媒体
JP4714763B2 (ja) 画像処理プログラム、画像処理装置、および画像制御方法
JP4469709B2 (ja) 画像処理プログラムおよび画像処理装置
JP4443716B2 (ja) ゲーム装置、および、情報記憶媒体
JP2000279642A (ja) ゲーム装置、ゲーム方法、コンピュータ読取可能な記録媒体
JP2000030080A (ja) Vrシステム
JP4637161B2 (ja) 画像処理装置、画像処理方法、及び、プログラム
EP1249791B1 (en) 3-D game image processing method and device for drawing border lines
JP3420193B2 (ja) 画像形成方法、それを実現するためのコンピュータ読み取り可能な記憶媒体、及びゲームシステム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060802

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090821

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090902

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091020

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: 20091112

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: 20091209

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4425589

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20121218

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20121218

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20121218

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20121218

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20131218

Year of fee payment: 4

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

EXPY Cancellation because of completion of term