方法: 前乗算されたアルファを持つテクスチャをエクスポートする

イメージ コンテンツ パイプラインを使用すると、前乗算されたアルファを含むテクスチャをソース イメージから生成できます。 これらのテクスチャは、前乗算されたアルファを含まないテクスチャよりも簡単に使用でき、堅牢です。

このドキュメントでは、以下のアクティビティについて説明します。

  • イメージ コンテンツ パイプラインによって処理されるようにソース イメージを構成する。

  • 前乗算されたアルファを生成するようにイメージ コンテンツ パイプラインを構成する。

前乗算されたアルファ

前乗算されたアルファには、前乗算されていない従来のアルファよりも優れた点がいくつかあります。これは、前乗算されたアルファの方が、テクセルの色の効果 (シーンに追加される色) を透明度 (下にある色が透けて見える量) から分離することにより、現実世界における光と物質の相互作用を有効に表現できるためです。 前乗算されたアルファを使用する利点には、次のようなものがあります。

  • 前乗算されたアルファとのブレンドは、結合演算です。テクスチャのブレンド順序に関係なく、複数の半透明テクスチャをブレンドした結果が同じになります。

  • 前乗算されたアルファとのブレンドは本質的に結合であるため、半透明オブジェクトのマルチパス レンダリングが単純になります。

  • 前乗算されたアルファを使用することで、純粋な加算ブレンド (アルファをゼロに設定) と線形補間ブレンドの両方を同時に行うことができます。 たとえば、パーティクル システムでは、加算ブレンドされた炎のパーティクルを、線形補間を使用してブレンドされた半透明な煙のパーティクルにすることができます。 前乗算されたアルファを使用しない場合、煙のパーティクルとは別に炎のパーティクルを描画し、描画の呼び出し間でレンダリング状態を変更する必要があります。

  • 前乗算されたアルファを使用したテクスチャは、前乗算されたアルファを使用しないテクスチャよりも高い品質で圧縮できます。前乗算されたアルファを使用しないテクスチャをブレンドすると生じる可能性のある境界の変色 (ハロー効果) が起こることもありません。

前乗算されたアルファを使用したテクスチャを作成するには

  1. 基本的なテクスチャを作成します。 既存のイメージ ファイルを読み込むか、「方法: 基本テクスチャを作成する」の手順に従ってイメージ ファイルを作成します。

  2. イメージ コンテンツ パイプラインによって処理されるようにテクスチャ ファイルを構成します。 ソリューション エクスプローラーでテクスチャ ファイルのショートカット メニューを開き、[プロパティ] をクリックします。 [構成プロパティ][全般] ページで、[項目の種類][Image Content Pipeline] (イメージ コンテンツ パイプライン) に設定します。 [コンテンツ][はい] に、[ビルドから除外][いいえ] に設定されていることを確認し、[適用] ボタンをクリックします。 [イメージ コンテンツ パイプライン] の構成プロパティ ページが表示されます。

  3. 前乗算されたアルファを生成するようにイメージ コンテンツ パイプラインを構成します。 [構成プロパティ] で、[イメージ コンテンツ パイプライン][全般] の順にクリックし、[Convert to pre-multiplied alpha format] (前乗算されたアルファ形式に変換) プロパティを [はい (/generatepremultipliedalpha)] に設定します。

  4. [OK] を選択します。

    プロジェクトをビルドすると、イメージ コンテンツ パイプラインによってソース イメージが作業形式から、指定した出力形式に変換されます。同時に、前乗算されたアルファが生成されます。結果はプロジェクトの出力ディレクトリにコピーされます。