【Photoshop】アルファチャンネルを自由に編集してTARGA形式でテクスチャを書き出す

f:id:halya_11:20180417165916p:plain

シェーダでテクスチャを扱うとき、アルファチャンネルを透明度としてではなく、何かの値として扱いたいケースがあると思います。

Photoshopでチャンネル毎に編集を行う際、RGBは問題無かったのですが、アルファチャンネルだけ特殊なやり方が必要だったためメモしておきます。

ゴールと問題点

今回作りたい画像はこういったのものです。

f:id:halya_11:20180417164720p:plain

このようなアルファチャンネルを持つテクスチャをつくるために、Photoshopでキャンバスを透明にした上で適当に色を塗ってから、消しゴムで消してみます。

f:id:halya_11:20180417165535p:plain

この方法だと、アルファチャンネルは目的通り編集できるもののRGB値にまで影響してしまい、目的の画像が作れません。

そこで、下記のような方法を用いてアルファチャンネルを編集します。

ドキュメントを新規作成して適当に塗る

ドキュメントを新規で作成します。 背景色は何でもいいです。

これを適当な色で塗っておきます。

f:id:halya_11:20180417165013p:plain

チャンネルを追加

チャンネルタブの下部メニューからチャンネルを新規追加します。
名前は何でもいいですが、2個以上作ると正常に書き出されないため、必ず1つだけ作ります。

f:id:halya_11:20180417165026p:plain

アルファチャンネルだけを選択した状態にして適当に塗ります。

f:id:halya_11:20180417165038p:plain

これで後は書き出すだけです。

TARGAで保存

アルファチャンネルを個別で編集したデータを保存するためには、TARGA形式のテクスチャにする必要があります。

ファイル > 別名で保存を選択し保存ウィンドウを開き、ファイルの種類にTargaを選択します。 アルファチャンネルのチェックボックスにチェックを入れて保存ボタンを押します。

f:id:halya_11:20180417165056p:plain

Targaオプションが出てくるので32bitsを選択します。

f:id:halya_11:20180417165102p:plain

これでTARGA形式のテクスチャが保存できました。

Unityで確認する

Unityにインポートするとテクスチャのプレビュー画面からRGBとアルファ値が確認できます。

f:id:halya_11:20180417165916p:plain

正常に目的のテクスチャが作れていることが確認できました。