テクスチャおよびイメージの使用

Visual Studio のイメージ エディターを使用すると、テクスチャとイメージを作成したり、変更したりできます。 イメージ エディターは、DirectX アプリケーションの開発で使用されるものをはじめ、さまざまな形式のテクスチャとイメージをサポートしています。

注意

イメージ エディターでは、アイコンやカーソルなどのローカラー イメージはサポートされていません。 これらのイメージを作成または変更するには、 Image Editor for Iconsを使用します。

テクスチャとイメージ

基本的なレベルのテクスチャとイメージは、グラフィックス アプリケーションで視覚的なディテールをもたらすために使用されるデータのテーブルにすぎません。 テクスチャとイメージによってもたらされるディテールの種類は、そのテクスチャやイメージの用途によって異なりますが、一般的な例としては、色のサンプル、アルファ (透明度) 値、表面法線、高さの値などが挙げられます。 テクスチャとイメージの主な違いは、テクスチャがオブジェクトまたはシーン全体を表現するために図形表現 (通常は 3-D モデル) と共に使用されるのに対し、イメージはオブジェクトまたはシーンを単独で表現する点です。

一般的な種類のテクスチャには以下のものが含まれます。

テクスチャ マップ
テクスチャ マップには、1 次元、2 次元、または 3 次元の行列にまとめられた色の値が含まれます。 これらのマップは、影響を受けるオブジェクトに色のディテールを与えるために使用されます。 色は通常、RGB (赤、緑、青) のカラー チャネルを使用してエンコードされます。また、透明度を表す 4 番目のチャネルとしてアルファが使用されることもあります。 場合によっては、別の配色で色がエンコードされたり、4 番目のチャネルにアルファ以外のデータ (高さなど) が含まれることもあります。

法線マップ
法線マップには表面法線が含まれます。 これらのマップは、影響を受けるオブジェクトに光源のディテールを与えるために使用されます。 法線は通常、赤、緑、青の色要素を使用してベクターの x、y、および z 次元を格納することによってエンコードされます。 ただし、極座標に基づくエンコードなど、他のエンコードも可能です。

高さマップ
高さマップには、高さフィールドのデータが含まれます。 これらのマップを使用すると、(シェーダー コードを使用して目的のエフェクトを計算することにより) 影響を受けるオブジェクトに形状のディテールを与えたり、地形の生成などに使用するデータ ポイントを指定したりすることができます。 高さの値は通常、テクスチャのいずれかのチャネルを使用してエンコードされます。

キューブ マップ
キューブ マップにはさまざまな種類のデータ (色や法線など) を含めることができますが、キューブの各面の 6 つのテクスチャとして分類されます。 このため、キューブ マップはテクスチャ座標を指定してサンプリングされるのではなく、キューブの中心を原点とするベクターを指定することによりサンプリングされます。サンプルは、このベクターとキューブが交差する場所から取得されます。 キューブ マップは、反射を計算するための環境の近似を指定したり ( 環境マッピングと呼ばれます)、基本的な 2 次元テクスチャよりもゆがみの少ない球形オブジェクトにテクスチャを指定したりするために使用されます。

テクスチャのエンコードと圧縮は、テクスチャが保持するデータの型、またはテクスチャの次元性や "形状" にかかわらず、さまざまな方法で行うことができます。 ただし、エンコードや圧縮の方法とデータの種類の組み合わせによって、結果の良し悪しは変わってきます。

イメージ エディターを使用すると、他のイメージ編集ツールと同様の方法でテクスチャとイメージを作成および変更できます。 イメージ エディターには、3-D グラフィックスで使用する MIP マッピングなどの機能も用意されています。また、DirectX でサポートされている、ハードウェア アクセラレータによる高圧縮テクスチャ形式にも対応しています。

タイトル 説明
イメージ エディター イメージ エディターを使用してテクスチャとイメージを操作する方法について説明します。
イメージ エディターの例 イメージ エディターを使用した一般的なイメージ処理タスクの実行方法について説明するトピックへのリンクがあります。