JP2010033252A - プログラム、情報記憶媒体および画像生成システム - Google Patents

プログラム、情報記憶媒体および画像生成システム Download PDF

Info

Publication number
JP2010033252A
JP2010033252A JP2008193669A JP2008193669A JP2010033252A JP 2010033252 A JP2010033252 A JP 2010033252A JP 2008193669 A JP2008193669 A JP 2008193669A JP 2008193669 A JP2008193669 A JP 2008193669A JP 2010033252 A JP2010033252 A JP 2010033252A
Authority
JP
Japan
Prior art keywords
transparency
primitive
unit
viewpoint
image
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.)
Pending
Application number
JP2008193669A
Other languages
English (en)
Inventor
Masamoto Kubo
雅資 久保
Kazuki Takahashi
一樹 高橋
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.)
Bandai Namco Entertainment Inc
Original Assignee
Namco Bandai Games Inc
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 Namco Bandai Games Inc filed Critical Namco Bandai Games Inc
Priority to JP2008193669A priority Critical patent/JP2010033252A/ja
Publication of JP2010033252A publication Critical patent/JP2010033252A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Image Generation (AREA)

Abstract

【課題】視点との位置関係によって透明度が変化するような物体をリアルに表現することが可能なプログラム、情報記憶媒体および画像生成システムを提供する。
【解決手段】
オブジェクト空間を所与の視点から見た画像を生成するための画像生成システムであって、オブジェクト空間にオブジェクトを配置するオブジェクト空間設定部110と、視点の向きと、オブジェクトを構成するプリミティブの向きとに基づいて、当該プリミティブの描画ピクセルの透明度を調整する透明度調整部122と、描画ピクセルの透明度に基づく色のブレンド処理を行うブレンド処理部124とを含み、透明度調整部122が、視点の向きと正対する基準方向からのずれに応じて描画ピクセルの透明度が低くなるように、プリミティブの描画ピクセルの透明度を調整する。
【選択図】図1

Description

本発明は、プログラム、情報記憶媒体および画像生成システムに関する。
従来から、オブジェクト空間に配置された物体と視点との位置関係に応じて、当該物体に透過処理を行う画像生成装置が知られている。この画像生成装置によれば、視点とオブジェクトの間に配置された物体に透過処理を行うことによって、オブジェクトの視認性を高めることができる。
特開平9−50541号公報
しかし、上記画像生成装置の目的はオブジェクトの視認性を高めることであり、リアリティのある半透明物体を表現することは考慮されていなかった。本発明の目的は、視点との位置関係によって透明度が変化するような物体をリアルに表現することが可能なプログラム、情報記憶媒体および画像生成システムを提供することである。
(1)本発明は、オブジェクト空間を所与の視点から見た画像を生成するための画像生成システムであって、前記オブジェクト空間にオブジェクトを配置するオブジェクト空間設定部と、前記視点の向きと、前記オブジェクトを構成するプリミティブの向きとに基づいて、当該プリミティブの描画ピクセルの透明度を調整する透明度調整部と、前記描画ピクセルの透明度に基づく色のブレンド処理を行うブレンド処理部とを含み、前記透明度調整部が、前記視点の向きと正対する基準方向からのずれに応じて描画ピクセルの透明度が低くなるように、前記プリミティブの描画ピクセルの透明度を調整することを特徴とする画像生成システムに関係する。また、本発明は、上記各部としてコンピュータを機能させるプログラムに関係する。また、本発明は、コンピュータ読み取り可能な情報記憶媒体であって、上記各部としてコンピュータを機能させるプログラムを記憶(記録)した情報記憶媒体に関係する。
本発明によれば、視点の向きと正対する基準方向からのずれに応じて透明度が低くなるような物体を、複雑な処理をすることなく簡易に表現することができる。
(2)また、本発明にかかる画像生成システム、プログラム、および情報記憶媒体では、 前記透明度がグラデーション変化するテクスチャが前記オブジェクトに対応づけられており、前記透明度調整部が、前記視点の向きを示す視線ベクトルと前記プリミティブの向きに応じた法線ベクトルとの内積に基づいて、前記プリミティブの向きが前記基準方向からずれるほど前記透明度が低くなるようにテクスチャ座標を求めることによって、前記プリミティブの描画ピクセルの透明度を調整するようにしてもよい。
このようにすれば、視点の向きを示す視線ベクトルとプリミティブの向きに応じた法線ベクトルとの内積と透明度の関係が予め対応付けられたテクスチャを用いて、描画ピクセルの透明度を調整することができる。そして、テクスチャのデザインを変更することにより、内積に応じた透明度の変化を任意に変更することができる。
以下、本実施形態について説明する。なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また本実施形態で説明される構成の全てが、本発明の必須構成要件であるとは限らない。
1.構成
図1に本実施形態の画像生成システム(ゲームシステム)の機能ブロック図の例を示す。なお本実施形態の画像生成システムは図1の構成要素(各部)の一部を省略した構成としてもよい。
操作部160は、プレーヤがプレーヤオブジェクト(移動体オブジェクトの一例、プレーヤが操作するプレーヤ車両など)の操作データを入力するためのものであり、その機能は、レバー、ボタン、ステアリング、マイク、タッチパネル型ディスプレイ、或いは筺体などにより実現できる。
記憶部170は、処理部100や通信部196などのワーク領域となるもので、その機能はRAM(メインメモリ172)、VRAM(ビデオメモリ174)などにより実現できる。
情報記憶媒体180(コンピュータにより読み取り可能な媒体)は、プログラムやデータなどを格納するものであり、その機能は、光ディスク(CD、DVD)、光磁気ディスク(MO)、磁気ディスク、ハードディスク、磁気テープ、或いはメモリ(ROM)などにより実現できる。処理部100は、情報記憶媒体180に格納されるプログラム(データ)に基づいて本実施形態の種々の処理を行う。即ち情報記憶媒体180には、本実施形態の各部としてコンピュータを機能させるためのプログラム(各部の処理をコンピュータに実行させるためのプログラム)が記憶される。
表示部190は、本実施形態により生成された画像を出力するものであり、その機能は、CRT、LCD、タッチパネル型ディスプレイ、或いはHMD(ヘッドマウントディスプレイ)などにより実現できる。音出力部192は、本実施形態により生成された音を出力するものであり、その機能は、スピーカ、或いはヘッドフォンなどにより実現できる。
携帯型情報記憶装置194は、プレーヤの個人データやゲームのセーブデータなどが記憶されるものであり、この携帯型情報記憶装置194としては、メモリカードや携帯型ゲーム装置などがある。通信部196は外部(例えばホスト装置や他の画像生成システム)との間で通信を行うための各種制御を行うものであり、その機能は、各種プロセッサ又は通信用ASICなどのハードウェアや、プログラムなどにより実現できる。
なお本実施形態の各部としてコンピュータを機能させるためのプログラム(データ)は、ホスト装置(サーバー)が有する情報記憶媒体からネットワーク及び通信部196を介して情報記憶媒体180(あるいは記憶部170のメインメモリ172)に配信してもよい。このようなホスト装置(サーバー)の情報記憶媒体の使用も本発明の範囲内に含めることができる。
処理部100(プロセッサ)は、操作部160からの操作データやプログラムなどに基づいて、ゲーム処理、画像生成処理、或いは音生成処理などの処理を行う。ここでゲーム処理としては、ゲーム開始条件が満たされた場合にゲームを開始する処理、ゲームを進行させる処理、キャラクタやマップなどのオブジェクトを配置する処理、オブジェクトを表示する処理、ゲーム結果を演算する処理、或いはゲーム終了条件が満たされた場合にゲームを終了する処理などがある。この処理部100は記憶部170内のメインメモリ172をワーク領域として各種処理を行う。処理部100の機能は各種プロセッサ(CPU(メインプロセッサ)、GPU(描画プロセッサ)、DSP等)、ASIC(ゲートアレイ等)などのハードウェアや、プログラムにより実現できる。
処理部100は、オブジェクト空間設定部110、移動・動作処理部112、仮想カメラ制御部114、描画部120、音生成部130を含む。なおこれらの一部を省略する構成としてもよい。
オブジェクト空間設定部110は、オブジェクトデータ記憶部172Aに記憶されているオブジェクトデータに基づいて、車、キャラクタ、建物、球場、樹木、柱、壁、コース(道路)、マップ(地形)などの表示物を表す各種オブジェクト(ポリゴン、自由曲面又はサブディビジョンサーフェスなどのプリミティブで構成されるオブジェクト)をオブジェクト空間に配置設定する処理を行う。即ちワールド座標系でのオブジェクトの位置や回転角度(向き、方向と同義)を決定し、決定された位置(X、Y、Z)に決定された回転角度(X、Y、Z軸回りでの回転角度)でオブジェクトを配置する。
移動・動作処理部112は、オブジェクト(車、キャラクタ、又は飛行機等)の移動・動作演算(移動・動作シミュレーション)を行う。すなわち操作部160によりプレーヤが入力した操作データや、プログラム(移動・動作アルゴリズム)や、各種データ(モーションデータ)などに基づいて、オブジェクトをオブジェクト空間内で移動させたり、オブジェクトを動作(モーション、アニメーション)させる処理を行う。具体的には、オブジェクトの移動情報(位置、回転角度、速度、或いは加速度)や動作情報(オブジェクトを構成する各パーツの位置、或いは回転角度)を、1フレーム(1/60秒)毎に順次求めるシミュレーション処理を行う。なおフレームは、オブジェクトの移動・動作処理(シミュレーション処理)や画像生成処理を行う時間の単位である。
仮想カメラ制御部114は、オブジェクト空間内の所与(任意)の視点から見える画像を生成するための仮想カメラ(視点)の制御処理を行う。具体的には、仮想カメラの位置(X、Y、Z)又は回転角度(X、Y、Z軸回りでの回転角度)を制御する処理(視点位置、視線方向あるいは画角を制御する処理)を行う。
例えば仮想カメラによりオブジェクト(例えば車、キャラクタ、ボール)を後方から撮影する場合には、オブジェクトの位置又は回転の変化に仮想カメラが追従するように、仮想カメラの位置又は回転角度(仮想カメラの向き)を制御する。この場合には、移動・動作処理部112で得られたオブジェクトの位置、回転角度又は速度などの情報(所定の制御情報の一例)に基づいて、仮想カメラを制御できる。或いは、仮想カメラを、予め決められた回転角度で回転させたり、予め決められた移動経路で移動させたりする制御を行ってもよい。この場合には、仮想カメラの位置(移動経路)又は回転角度を特定するための仮想カメラデータ(所定の制御情報の一例)に基づいて仮想カメラを制御する。なお、仮想カメラ(視点)が複数存在する場合には、それぞれの仮想カメラについて上記の制御処理が行われる。
描画部120は、処理部100で行われる種々の処理(ゲーム処理)の結果に基づいて描画処理を行い、これにより画像を生成し、表示部190に出力する。いわゆる3次元ゲーム画像を生成する場合には、まずオブジェクト(モデル)の各頂点の頂点データ(頂点の位置座標、テクスチャ座標、色データ、法線ベクトル或いはα値等)を含むオブジェクトデータ(モデルデータ)がオブジェクトデータ記憶部172Aから入力され、入力されたオブジェクトデータに含まれる頂点データに基づいて、頂点処理(頂点シェーダによるシェーディング)が行われる。なお頂点処理を行うに際して、必要に応じてポリゴンを再分割するための頂点生成処理(テッセレーション、曲面分割、ポリゴン分割)を行うようにしてもよい。頂点処理では、頂点処理プログラム(頂点シェーダプログラム、第1のシェーダプログラム)に従って、頂点の移動処理や、座標変換(ワールド座標変換、カメラ座標変換)、クリッピング処理、あるいは透視変換等のジオメトリ処理が行われ、その処理結果に基づいて、オブジェクトを構成する頂点群について与えられた頂点データを変更(更新、調整)する。そして、頂点処理後の頂点データに基づいてラスタライズ(走査変換)が行われ、ポリゴン(プリミティブ)の面とピクセルとが対応づけられる。この時、頂点データに含まれるテクスチャ座標、色データ、法線ベクトル或いはα値等は補間されて、ピクセル毎にこれらのデータが設定される。そしてラスタライズに続いて、画像を構成するピクセル(表示画面を構成するフラグメント)を描画するピクセル処理(ピクセルシェーダによるシェーディング、フラグメント処理)が行われる。ピクセル処理では、ピクセル処理プログラム(ピクセルシェーダプログラム、第2のシェーダプログラム)に従って、テクスチャの読出し(テクスチャマッピング)、色データの設定/変更、半透明合成、アンチエイリアス等の各種処理を行って、画像を構成するピクセルの最終的な描画色を決定し、透視変換されたオブジェクトの描画色をレンダリングターゲット(ピクセル単位で画像情報を記憶できるバッファ。メインメモリ172の画像バッファ172B、ビデオメモリ174の画像バッファ174D)に出力(描画)する。すなわち、ピクセル処理では、画像情報(色、法線、輝度、α値等)をピクセル単位で設定あるいは変更するパーピクセル処理を行う。これにより、オブジェクト空間内において仮想カメラ(所与の視点)から見える画像が生成される。なお、仮想カメラ(視点)が複数存在する場合には、それぞれの仮想カメラから見える画像を分割画像として1画面に表示できるように画像を生成することができる。
なお頂点処理やピクセル処理は、シェーディング言語によって記述されたシェーダプログラムによって、ポリゴン(プリミティブ)の描画処理をプログラム可能にするハードウェア、いわゆるプログラマブルシェーダ(頂点シェーダやピクセルシェーダ)により実現される。プログラマブルシェーダでは、頂点単位の処理やピクセル単位の処理がプログラム可能になることで描画処理内容の自由度が高く、従来のハードウェアによる固定的な描画処理に比べて表現力を大幅に向上させることができる。
そして描画部120は、オブジェクトを描画する際に、ジオメトリ処理、テクスチャマッピング、隠面消去処理等を行う。
ジオメトリ処理では、オブジェクトに対して、座標変換、クリッピング処理、透視投影変換、或いは光源計算等の処理が行われる。そして、ジオメトリ処理後(透視投影変換後)のオブジェクトデータ(オブジェクトの頂点の位置座標、テクスチャ座標、色データ(輝度データ)、法線ベクトル、或いはα値等)は、メインメモリ172のオブジェクトデータ記憶部172Aに保存される。
テクスチャマッピングは、画像バッファ172Bまたは174Dに記憶されるテクスチャ(テクセル値)をオブジェクトにマッピングするための処理である。具体的には、オブジェクトの頂点に設定(付与)されるテクスチャ座標等を用いて画像バッファ172Bまたは174Dからテクスチャ(色(RGB)、α値などの表面プロパティ)を読み出す。そして、2次元の画像であるテクスチャをオブジェクトにマッピングする。この場合に、ピクセルとテクセルとを対応づける処理や、テクセルの補間としてバイリニア補間、トライリニア補間などを行う。
隠面消去処理としては、描画ピクセルのZ値(奥行き情報)が格納されるZバッファ174B(奥行きバッファ)を用いたZバッファ法(奥行き比較法、Zテスト)による隠面消去処理を行うことができる。すなわちオブジェクトのプリミティブに対応する描画ピクセルを描画する際に、Zバッファ174Bに格納されるZ値を参照する。そして参照されたZバッファのZ値と、プリミティブの描画ピクセルでのZ値とを比較し、描画ピクセルでのZ値が、仮想カメラから見て手前側となるZ値(例えば小さなZ値)である場合には、その描画ピクセルの描画処理を行うとともにZバッファ174BのZ値を新たなZ値に更新する。
また、描画部120は、透明度調整部122、ブレンド処理部124を含む。
透明度調整部122は、視点の向きとオブジェクトを構成するプリミティブの向きとに基づいて当該プリミティブの描画ピクセルの透明度を調整する。例えば、視点の向きを表す視線ベクトルとプリミティブに設定された法線ベクトルの内積に基づいて、法線ベクトルの向きが視線ベクトルの向きと正対する基準方向からずれるほど透明度が低くなるように(背景が透けないように)透明度を調整する。
ブレンド処理部124は、透明度調整部122によって調整された透明度に基づいて、描画ピクセルの色のブレンド処理を行う。ブレンド処理としては、例えばαブレンディングがある。
αブレンディングとしては、α値(A値)に基づく半透明合成処理(通常αブレンディング、加算αブレンディング又は減算αブレンディング等)を行う。例えば通常αブレンディングの場合には下式(1)〜(3)の処理を行う。
=(1−α)×R+α×R (1)
=(1−α)×G+α×G (2)
=(1−α)×B+α×B (3)
また、加算αブレンディングの場合には下式(4)〜(6)の処理を行う。なお単純加算の場合はα=1として下式(4)〜(6)の処理を行う。
=R+α×R (4)
=G+α×G (5)
=B+α×B (6)
また、減算αブレンディングの場合には下式(7)〜(9)の処理を行う。なお単純減算の場合はα=1として下式(7)〜(9)の処理を行う。
=R−α×R (7)
=G−α×G (8)
=B−α×B (9)
ここで、R、G、Bは、画像バッファ172Bあるいは画像バッファ174Dに既に描画されている画像(原画像)のRGB成分であり、R、G、Bは、画像バッファ172Bあるいは画像バッファ174Dに描画すべき画像のRGB成分である。また、R、G、Bは、αブレンディングにより得られる画像のRGB成分である。なお、α値は、各ピクセル(テクセル、ドット)に関連づけて記憶できる情報であり、例えば色情報以外のプラスアルファの情報である。α値は、マスク情報、半透明度(透明度、不透明度と等価)、バンプ情報などとして使用できる。
音生成部130は、処理部100で行われる種々の処理の結果に基づいて音処理を行い、BGM、効果音、又は音声などのゲーム音を生成し、音出力部192に出力する。
なお、本実施形態の画像生成システムは、1人のプレーヤのみがプレイできるシングルプレーヤモード専用のシステムにしてもよいし、複数のプレーヤがプレイできるマルチプレーヤモードも備えるシステムにしてもよい。また複数のプレーヤがプレイする場合に、これらの複数のプレーヤに提供するゲーム画像やゲーム音を、1つの端末を用いて生成してもよいし、ネットワーク(伝送ライン、通信回線)などで接続された複数の端末(ゲーム機、携帯電話)を用いて分散処理により生成してもよい。
2.本実施形態の手法
以下に、図面を用いて本実施形態の手法を説明する。
図2は、本実施形態でオブジェクト空間に配置されるオブジェクトを表す図である。図2に示すように、本実施形態では、円柱状のオブジェクト200と、ポリゴン202a〜202eから構成されるオブジェクトがオブジェクト空間に配置される。202a〜202eにはそれぞれ法線ベクトルNa〜Neが設定されている。また、ポリゴン同士の接点となる頂点には、接触するポリゴンにそれぞれ設定された法線ベクトルを補間した法線ベクトルNad、Nab、Nbc、Nceが設定される。オブジェクト空間にはまた、仮想カメラVが配置される。仮想カメラVには、仮想カメラの向きを表す視線ベクトルNvが設定される。法線ベクトルNbと視線ベクトルNvは正対している。
図3は、図2に示すオブジェクト空間を仮想カメラVから見た画像を表す図である。仮想カメラVの位置を基準として透視変換すると、図3に示すように、ポリゴン202bは正面から見た向きで配置され、ポリゴン202aとポリゴン202cは斜めから見た向きで配置される。
本実施形態では、描画ピクセルの法線ベクトルの向きが視線ベクトルの向きと正対する基準方向からずれるほど透明度が低くなるように、描画ピクセルの透明度が調整される。具体的には、まずポリゴンの頂点に設定された法線ベクトルが補間され、描画ピクセル毎の法線ベクトルが求められる。そして視線ベクトルと描画ピクセルの法線ベクトルとの内積に基づいて描画ピクセルのα値が求められ、当該α値に基づいて描画ピクセルの色と背景色がαブレンディング描画される。なお、本実施形態では、通常αブレンディングを使用し、α値が大きくなるほど透明度が低くなる(描画ピクセルの色の割合が背景色と比較して高くなる)例を説明する。
視線ベクトルと法線ベクトルの内積からα値を求めるために、本実施形態では図4に示すようなαテクスチャが用いられる。αテクスチャは、各テクセルにα値が設定されたテクスチャである。図4(A)に示すテクスチャでは、テクスチャ座標U=0のテクセルにはα=1が、U=1のテクセルにはα=0が設定されており、その間はグラデーション状に変化するようにα値が設定されている。本実施形態では、視線ベクトルと法線ベクトルの内積に基づいて図4(A)に示すαテクスチャを参照するためのテクスチャ座標のU座標が求められる。なお、テクスチャ座標のV座標は固定値、あるいは任意の値とすることができる。
例えば図3の描画ピクセルpb1のα値を求める場合について説明する。描画ピクセルpb1の法線ベクトルは、法線ベクトルNabとNbcが補間されて求められる。描画ピクセルpb1は、ポリゴン202bのほぼ中央にあるので、その法線ベクトルは視線ベクトルNvとほぼ正対する。従って、視線ベクトルNvと描画ピクセルpb1の法線ベクトルの内積は、−1に近い値となる。ここで、本実施形態では、内積のべき乗をテクスチャ座標のU座標として、図4(A)のαテクスチャを参照する。図4(A)のαテクスチャでは、U=1に近いテクセルにはα=0に近い値が設定されている。従って、描画ピクセルpb1は、α=0に近い値でαブレンディングされ、ポリゴン202bの後ろにあるオブジェクト200がはっきりと透けて見える画像(描画ピクセルpb1の透明度が高い画像)が描画される。一方、図3の描画ピクセルpc1のα値を求める場合について説明する。描画ピクセルpc1の法線ベクトルは、法線ベクトルNbcとNceが補間されて求められる。視線ベクトルと描画ピクセルpc1の法線ベクトルのなす角が120°だとすると、内積は−0.5となる。上記と同様に内積のべき乗をテクスチャ座標のU座標として図4(A)のαテクスチャを参照すると、U=0.25のテクセルにはα=0.75が設定されている。従って、描画ピクセルpc1はα=0.75で背景色とαブレンディングされ、描画ピクセルpc1の色とオブジェクト200の色が3:1の割合で合成される。このようにして、法線ベクトルの向きが視線ベクトルの向きと正対する基準方向からずれている描画ピクセルpc1の透明度は、描画ピクセルpb1の透明度よりも低くなる。
3.処理の流れ
図5は本実施形態の処理の流れを示すフローチャートである。
画像生成システムは所定周期毎(例えば1/60秒毎)にフレーム更新の判定を行う(ステップS102)。そして、フレーム更新タイミングだと判定すると(ステップS102Y)、オブジェクト空間に配置されたオブジェクトをスクリーンに投影する透視投影変換を行う(ステップS104)。そして、スクリーンに投影されたオブジェクトにラスタライズを行い、オブジェクトの頂点に設定された法線ベクトルを補間して描画ピクセル毎の法線ベクトルを求める(ステップS106)。
次に、画像生成システムは、視線ベクトルとピクセルの法線ベクトルの内積を求める(ステップS108)。そして、内積に基づいて画像バッファ172Bまたは174Dに記憶されたαテクスチャのテクセルを参照するためのテクスチャ座標を求める(ステップS110)。そして、参照したテクセルに設定されているα値に基づいて、描画ピクセルの色と背景色を半透明合成描画して描画バッファに描き込む(ステップS112)。
4.シルク生地の表現
本実施形態の手法を用いることによって、例えばシルク生地のような見る角度によって透明度の変化する素材の衣服をキャラクタが身にまとった様子をリアルに表現することができる。すなわち、シルクオブジェクトの画像のうち、仮想カメラと正対する位置では衣服の透明度が高く後ろ側のキャラクタの体や背景がはっきりと透けて見え、輪郭部分に近づくに従って衣服の透明度が低くなりキャラクタの体や背景が見えにくくなるような画像を生成することができる。
シルク生地の場合、素材の特性(材質や厚さ等)の違いによって透明度が変わってくるが、本実施形態では、そのような素材の特性に基づく透明度を簡易に表現することができる。
素材の特性を表現するための第1の方法として、素材の特性に応じて異なるαテクスチャを用いるということが考えられる。例えばシルク生地の場合、通常最も透明度が高い部分であっても完全に透明にはならず、また最も透明度が低い部分であっても完全に不透明にはならない。図4(B)に示すαテクスチャを用いれば、このようなシルク生地の特性を表現することができる。図4(B)に示すαテクスチャは図4(A)に示すαテクスチャよりもα値の範囲が狭く設定されている。すなわち、U=0のテクセルにα=0.75が、U=1のテクセルにα=0.25が設定されている。従って、視線ベクトルと法線ベクトルの内積のべき乗をU値として図4(B)に示すαテクスチャを参照すると、視線ベクトルと法線ベクトルが正対する(内積のべき乗=1である)描画ピクセルのα値は0.25となり、シルク生地の透明度が最も高い部分でも、25%はシルク生地の色が描画されることとなる。また、視線ベクトルと法線ベクトルが垂直になる(内積のべき乗=0である)描画ピクセルのα値は0.75となり、シルク生地の透明度が最も低い部分でも25%は背景画像が描画されることとなる。
素材の特性を表現するための第2の方法として、所定の係数によって内積とテクスチャ座標のU値の関係を変化させることが考えられる。内積のべき乗をX、係数をkとすると、例えば式(10)によって、U値を求めることができる。
U=k×X (10)
ここで、所定の係数kは例えば、シルク素材の厚さを表す係数とすることができる。シルク素材が厚いほど、透明度は低くなると考えられる。従って、厚いシルク生地を表現したい場合は、kの値を小さくすればよい。反対に、薄いシルク生地を表現したい場合は、kの値を大きくすればよい。このように、本実施形態では、簡易な方法によりシルク生地の厚さを調整することができる。
素材の特性を表現するための第3の方法として、本実施形態の手法と法線マップの併用が考えられる。法線マップとは、テクスチャのテクセルに設定された値を、色データとしてではなく法線データとして用いる手法である。法線マップを使用することによって、物体表面のしわ等の細かい凹凸を表現することができる。法線マップは、描画ピクセル毎に物体表面の凹凸に応じた法線ベクトルを設定する。本実施形態の手法と法線マップを組み合わせることによって、法線マップで設定された法線ベクトルに基づいて描画ピクセルの透明度が求められることになり、物体表面の凹凸に応じた細かい透明度設定が可能となる。
5.変形例
5−1.内積からα値を求める手法
上記実施形態では、内積からα値を求めるためにαテクスチャを使用したが、これ以外の方法によってα値を求めることもできる。例えば、内積のべき乗、或いは絶対値そのものをα値としてもよい。また、所定の関数によって内積をα値に変換してもよい。
5−2.αテクスチャ
αテクスチャに設定されるα値の値は任意のものとすることができる。例えば、U値が増加するに従ってα値が指数関数的に減少するように設定されたαテクスチャを用いてもよい。このようにすれば、描画ピクセルの法線ベクトルの向きが視線ベクトルの向きと正対する基準方向からずれるに従って描画ピクセルの透明度が指数関数的に低くなるような画像を生成することができる。また、U値が増加するに従ってα値が対数関数的に減少するように設定されたαテクスチャを用いてもよい。このようにすれば、描画ピクセルの法線ベクトルの向きが視線ベクトルの向きと正対する基準方向からずれるに従って描画ピクセルの透明度が対数関数的に低くなるような画像を生成することができる。
また、本実施形態では、U=0のテクセルにα=1、U=1のテクセルにα=0が設定されたαテクスチャを用いたが、αの範囲を0〜1よりも狭い範囲(例えば0.1〜0.9)としてもよい。このようにすれば、視線ベクトルと描画ピクセルの法線ベクトルが正対する場合でも、描画ピクセルが完全透明にはならず、また、視線ベクトルと描画ピクセルの法線ベクトルが垂直になる場合でも描画ピクセルが完全不透明にはならなくなり、よりリアルに物体の材質を表現することができる。
本実施形態の画像生成システムの機能ブロック図。 本実施形態のオブジェクト概略図。 本実施形態のスクリーン画像概略図。 本実施形態で使用されるαテクスチャ。 本実施形態の処理の流れを示すフローチャート。
符号の説明
100 処理部、
110 オブジェクト空間設定部、112 移動・動作処理部、
114 仮想カメラ制御部、
120 描画部、122 透明度調整部、124 ブレンド処理部
130 音生成部、
160 操作部、170 記憶部、
172 メインメモリ、
172A オブジェクトデータ記憶部、172B 画像バッファ、
174 ビデオメモリ、
174B Zバッファ、174D 画像バッファ、
180 情報記憶媒体、190 表示部、192 音出力部、
194 携帯型情報記憶装置、196 通信部

Claims (4)

  1. オブジェクト空間を所与の視点から見た画像を生成するためのプログラムであって、
    前記オブジェクト空間にオブジェクトを配置するオブジェクト空間設定部と、
    前記視点の向きと、前記オブジェクトを構成するプリミティブの向きとに基づいて、当該プリミティブの描画ピクセルの透明度を調整する透明度調整部と、
    前記描画ピクセルの透明度に基づく色のブレンド処理を行うブレンド処理部としてコンピュータを機能させ、
    前記透明度調整部が、
    前記視点の向きと正対する基準方向からのずれに応じて描画ピクセルの透明度が低くなるように、前記プリミティブの描画ピクセルの透明度を調整することを特徴とするプログラム。
  2. 請求項1において、
    前記透明度がグラデーション変化するテクスチャが前記オブジェクトに対応づけられており、
    前記透明度調整部が、
    前記視点の向きを示す視線ベクトルと前記プリミティブの向きに応じた法線ベクトルとの内積に基づいて、前記プリミティブの向きが前記基準方向からずれるほど前記透明度が低くなるようにテクスチャ座標を求めることによって、前記プリミティブの描画ピクセルの透明度を調整することを特徴とするプログラム。
  3. コンピュータにより読み取り可能な情報記憶媒体であって、請求項1または請求項2のいずれかに記載のプログラムを記憶していることを特徴とする情報記憶媒体。
  4. オブジェクト空間を所与の視点から見た画像を生成するための画像生成システムであって、
    前記オブジェクト空間にオブジェクトを配置するオブジェクト空間設定部と、
    前記視点の向きと、前記オブジェクトを構成するプリミティブの向きとに基づいて、当該プリミティブの描画ピクセルの透明度を調整する透明度調整部と、
    前記描画ピクセルの透明度に基づく色のブレンド処理を行うブレンド処理部とを含み、
    前記透明度調整部が、
    前記視点の向きと正対する基準方向からのずれに応じて描画ピクセルの透明度が低くなるように、前記プリミティブの描画ピクセルの透明度を調整することを特徴とする画像生成システム。
JP2008193669A 2008-07-28 2008-07-28 プログラム、情報記憶媒体および画像生成システム Pending JP2010033252A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008193669A JP2010033252A (ja) 2008-07-28 2008-07-28 プログラム、情報記憶媒体および画像生成システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008193669A JP2010033252A (ja) 2008-07-28 2008-07-28 プログラム、情報記憶媒体および画像生成システム

Publications (1)

Publication Number Publication Date
JP2010033252A true JP2010033252A (ja) 2010-02-12

Family

ID=41737665

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008193669A Pending JP2010033252A (ja) 2008-07-28 2008-07-28 プログラム、情報記憶媒体および画像生成システム

Country Status (1)

Country Link
JP (1) JP2010033252A (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0950541A (ja) * 1995-08-10 1997-02-18 Sega Enterp Ltd 仮想画像生成装置及びその方法
JP2005032140A (ja) * 2003-07-10 2005-02-03 Namco Ltd 画像生成システム、プログラム及び情報記憶媒体
JP2007310682A (ja) * 2006-05-18 2007-11-29 Sega Corp 透過オブジェクト描画方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0950541A (ja) * 1995-08-10 1997-02-18 Sega Enterp Ltd 仮想画像生成装置及びその方法
JP2005032140A (ja) * 2003-07-10 2005-02-03 Namco Ltd 画像生成システム、プログラム及び情報記憶媒体
JP2007310682A (ja) * 2006-05-18 2007-11-29 Sega Corp 透過オブジェクト描画方法

Similar Documents

Publication Publication Date Title
JP2009237680A (ja) プログラム、情報記憶媒体および画像生成システム
JP4804122B2 (ja) プログラム、テクスチャデータ構造、情報記憶媒体及び画像生成システム
JP4717622B2 (ja) プログラム、情報記録媒体および画像生成システム
JP2007026112A (ja) プログラム、情報記憶媒体及び画像生成システム
JP4305903B2 (ja) 画像生成システム、プログラム及び情報記憶媒体
JP4868586B2 (ja) 画像生成システム、プログラム及び情報記憶媒体
JP2011053737A (ja) プログラム、情報記憶媒体及び画像生成装置
JP4749198B2 (ja) プログラム、情報記憶媒体及び画像生成システム
JP4754384B2 (ja) プログラム、情報記録媒体および画像生成システム
JP4743770B2 (ja) 画像生成システム、プログラム、及び情報記憶媒体
JP2006252426A (ja) プログラム、情報記憶媒体及び画像生成システム
JP2006323512A (ja) 画像生成システム、プログラム及び情報記憶媒体
JP2009169471A (ja) プログラム、情報記憶媒体、及び画像生成システム
JP4913399B2 (ja) プログラム、情報記憶媒体及び画像生成システム
JP4528008B2 (ja) プログラム、情報記憶媒体、及び画像生成システム
JP2010033253A (ja) プログラム、情報記憶媒体および画像生成システム
JP2011215724A (ja) プログラム、情報記憶媒体及び画像生成システム
JP2010134671A (ja) 画像生成システム、プログラム及び情報記憶媒体
JP2010033288A (ja) 画像生成システム、プログラム及び情報記憶媒体
JP2011209864A (ja) プログラム、情報記憶媒体及び画像生成システム
JP2010033252A (ja) プログラム、情報記憶媒体および画像生成システム
JP2010231364A (ja) 画像生成システム、プログラム及び情報記憶媒体
JP2010033297A (ja) プログラム、情報記憶媒体、及び画像生成システム
JP2006277488A (ja) プログラム、情報記憶媒体及び画像生成システム
JP2010033294A (ja) プログラム、情報記憶媒体、及び画像生成システム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110623

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120709

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120808

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20121205