高度な検索
Developer Connection
Member Login ログイン | ご入会 ADC連絡先



*QD3D 51 - テクスチャとビットマップ (BitMap) の解説

(96 年 8 月 21 日)

Q: テクスチャとビットマップの違いを説明してください。

A: 一般の会話では、これら 2 つの用語を混同して使っている場合がありますが、厳密にいうと両者の間には違いがあります。

ビットマップ (BitMap)
グラフィックス用語のビットマップ (BitMap) とは、基本的には 1 ビットのピクセルから構成される配列のことです。

テクスチャ
テクスチャとは、あらかじめ定義されているイメージをモデル表面にマッピングするための情報を含んだデータ構造体のことです。通常、テクスチャはイメージ・ソースとして PixMap を使います。

PixMap
PixMap とは、基本的には任意の色数のピクセルから構成される配列のことです。

BitMap および PixMap 構造体には、ピクセルだけでなく、rowBytes や境界四角形など、その他の情報も含まれています。さらに、PixMap には、ピクセルの色数などの追加情報も含まれています。詳細については、quickdraw.h ヘッダ・ファイル (または、PC 用の対応ファイル) の内容やグラフィックス・プログラミング関連の書籍を参照してください。

テクスチャは、必ずしも PixMap のマッピングを行うわけではありません。動的なデータをモデル内のオブジェクトにマッピングすることもあります (たとえば、TextureEyes サンプルでは、ソースとして QuickTime ムービーを使っています)。テクスチャとは、まさにこうしたデータが格納されている場所ということができます。テクスチャに含まれる情報はシェイダによって使用され、テクスチャ、他のマテリアルのプロパティ、照明、位置、および方向に関する情報が結合されます。シェイダは、レンダリング・プロセスの一部と呼ばれます。

次の引用では、レンダリングを構成する 7 つのステップの最後がシェイディングと呼ばれています。

「レンダリングとは、3 次元オブジェクトを表すデータベースのデータをビューの表面に 2 次元のシェイドとして投影するまでのプロセス全体を指す一般的な用語です。レンダリングは、いくつかの独立したプロセスから構成されています。
  1. その後のシェイディング・プロセスで必要となるすべての情報を含んだポリゴン・モデルを構築します。
  2. ポリゴンのメッシュ・モデルに線形変換を適用します。
  3. バックフェーシング・ポリゴンを抜き出します。
  4. ビューのボリュームに合わせてポリゴンのクリッピングを行います。
  5. 変換またはラスタライズするポリゴンをスキャンします。
  6. 隠面消去アルゴリズムを適用します。
  7. 補間またはインクリメンタル・シェイディング・スキーマを使って、個別のピクセルのシェイディングを行います。

Alan Watt 著『3D Computer Graphics』127 ページ (Addison-Wesley 刊)


[ Technical Q&A's : Graphics & Media : QuickDraw 3D : QD3D 51 ]