■アルファチャンネルつきDDSファイル作成 Prev  Top  Next
関連ページ:なし


今回はDDSファイルを作成する方法を解説します。プログラミング関連ページで既に説明済みですが、CGページを新しく作成したのでこちらに移動しました。 ですので、新ネタではないです。あしからず。

まずDDSファイルってなに?ってところから解説します。DDSはDirectDraw Surfaceの略です。次に特徴を挙げてみます。

1.テクスチャー、キューブ環境マップ、ボリュームテクスチャーを作成可能
2.R5G6B5、A8R8G8B8、X8B8G8R8といったさまざまなフォーマットが使用可能
3.DirectX SDKに添付されるツール「DirectX Texture Tool」で作成可能
4.Direct3Dプログラミング内で使用する場合、D3DXCreateTextureFromFileXXXX関数で簡単にロード可能
5.ミップマップレベルのある場合とない場合の両方をサポート
6.DXTn圧縮に対応

ってなところです。Direct3D内で使用するテクスチャーはDDSファイルで作成しとけば問題ないのではないでしょうか。汎用性の高さもあり使い勝手はいいと思います。 DXTn圧縮って知らないので後で調べようかな。


では次に、アルファチャンネルつきDDSファイルの作成方法です。

1.まずはRGB成分とアルファチャンネルをビットマップファイルでそれぞれ作成します。RGB成分については特に説明することはないですが、 アルファチャンネルはモノクロで作成します。なお最終的に1つのDDSファイルにまとめるので、2枚の画像の解像度は同じにしてください。
RGB成分
アルファチャンネル

2.次に作成した2枚のビットマップファイルを1つのファイルにまとめます。この作業は、DirectX SDK の中にある「DirectX Texture Tool」というツールを使用します。 ツールがあるパスは"DirectX SDKがインストールされたルートパス/Utilities/Bin/x86/DxTex.exe"です。DirectX SDKのバージョンによってパスが変更される場合があるかもしれないので 見つからないときは、自分で探してください(ツールがないってことはないよな)。

3.起動しました。「File」メニューをクリックし、「New Texture」をクリックします。

4.「New Texture」画面が表示されます。「Texture Type」はデフォルトの「Standard Texture」を選択します。
次に「Width」と「Height」を1で作成したビットマップファイルのサイズと同じにします。 「Width」は横のサイズ、「Height」は縦のサイズです。
ミップマップを使用する場合は「MipMap Levels」を変更します。
「Surface/Volume Format」でフォーマットを設定します。今回はアルファチャンネルつきのDDSファイルを作成するのでA成分を含むフォーマットを指定してください。 最後に「OK」をクリックします。

5.新規でテクスチャーが作成されました。

6.次にRGB成分を取り込みます。「File」メニューをクリックし、「Open Onto This Surface」をクリックします。 ダイアログが表示されるのでRGB成分のビットマップファイルのパスを指定します。
RGB成分を取り込んだイメージ

7.次にアルファチャンネルを取り込みます。「File」メニューをクリックし、「Open Onto Alpha Channel Of This Surface」をクリックします。 ダイアログが表示されるのでアルファチャンネルのビットマップファイルのパスを指定します。
アルファチャンネルを取り込んだイメージ

8.あとは合成したイメージをDDSファイルに保存します。「File」メニューをクリックし、「Safe As」をクリックします。 ダイアログが表示されるのでファイル名を設定し保存してください。


Prev  Top  Next inserted by FC2 system