Adobe Dimension CC から書き出したPSDをいじる (前編

こちらは前回に引き続き、[Adobe Dimension CC Advent Calendar 2017](https://adventar.org/calendars/2194) の 14日目(後付け)の記事です。 （後編の記事は[こちら](https://qiita.com/harayoki/items/54010496688f6f0f9921)。）

2Dデザイナ向け3Dレンダリングソフトである Adobe Dimension CC での出力は、もちろんレンダリング１発で済ませても良いのですが、むしろ PSD で出力して外部ツールで編集するやり方が主に想定されているワークフローかと思われます。フォトショでレタッチなら任せろというユーザー層が多そうですし。
現時点でのPSD出力については個人的にはまだ物足りない部分があるのですが、共にAdobe製品ということで、連携は強くなるでしょうし、現状でも必要最低限の部分は揃っていると思います。

![ebiload1.jpg](https://qiita-image-store.s3.amazonaws.com/0/8302/7934d684-c842-d126-d185-60f4476bef16.jpeg)
というわけでこのレンダリング結果のPSDファイルで （いろいろ使い方を模索しつつの我流ではありますが)、レタッチを進めてみようと思います。レンダリングの設定は、地面影あり、地面リフレクションなし、環境光あり、日光なし、16bit、画質:中となっています。（32bit、画質:高の方が綺麗なわけですが、作業効率などを考えてこうなっております。） 影は環境光が柔らかいので見辛いですが、よく見るとあります。

記事としては、長くなりそうなので、前後編に分けます。

## 書き出されたままのPSDファイル
<img width="299" alt=" 2017-12-16 15.00.12.png" src="https://qiita-image-store.s3.amazonaws.com/0/8302/357c47a2-61b6-cd54-0293-fa7af16d2cbf.png">
このように丁寧にレイヤー分けされて出力されます。ここからトーンカーブやスタンプ、変形ツールなどを駆使したフォトショップぽいレタッチをガンガンと進めていっても全く構わないのですが、今回は書き出されている特殊レイヤーを活用した編集をしてみます。
下の方の `背景画像` と `レンダリングされた画像` はレンダリング結果そのままなので、すぐにわかると思いますが、`追加レイヤー`内の３つは何に使うものでしょう。

<img src='https://qiita-image-store.s3.amazonaws.com/0/8302/9aca2e8d-51a8-cc5e-b643-7fb5c0850423.jpeg' width='768' height='576' />
別のレンダリング結果で説明します。シーンにはPBRテクスチャが設定されたぬいぐるみのモデル１体(マテリアルは１種類)を読み込んで配置し、Dimension のライブラリにある円柱を追加で配置しています。円柱は上面を選択して側面と別のマテリアルを設定しました。共に入れ子のオブジェクト（サブメッシュ）は存在しません。左下の`オブジェクト選択もマスク`レイヤーの画像では、オブジェクトが画面上でどの部分を占めているのか色分けされた状態が描かれています。(入れ子のオブジェクトがある場合はそれぞれ色分けされます。） 右下の`マテリアル選択マスク`では、同じように各マテリアルが画面上でどの部分を占めているのか色分けされた状態が描かれています。このレイヤーから似た色調を抜き出して選択範囲[^maskcolor]とすれば、この後のレタッチに便利なマスクとして使えると言うわけです。

![マテリアル選択マスク.jpg](https://qiita-image-store.s3.amazonaws.com/0/8302/b6e6eb3d-c703-4ee0-310f-41fda777b3fb.jpeg)
元のレンダリング結果の`マテリアル選択マスク`はマテリアルが１種類しかなかったのでこのような単色となっています。

<img width="338" alt=" 2017-12-16 15.07.11.png" src="https://qiita-image-store.s3.amazonaws.com/0/8302/8d839ccf-32e0-8356-2f7e-ed7a380091b7.png">
今回はたまたまレッドチャンネルがほぼ255の値だったので、これをそのまま選択範囲に変換しました。
またレンダリング結果より若干サイズが小さかったので一回り大きく調整して[^masksize]マスクとして使っています。
地面にレンダリングした影を分離する[^splitshadw]用途やそのほか色々に使いました。

![.jpg](https://qiita-image-store.s3.amazonaws.com/0/8302/bec06abe-17dd-76cc-d371-82f7c4abebaa.jpeg)
この`奥行き情報`レイヤーは3D空間的に手前のものが黒く、遠くのものが白く表された画像で、レタッチには一番便利なものだと思っているのですが、どう使うかは後半の記事で解説します。

## 選択マスクを元にレタッチ
![オブジェクト選択マスク.png](https://qiita-image-store.s3.amazonaws.com/0/8302/725c6f69-981d-1277-91bf-72a715702233.png)
さて、`オブジェクト選択マスク`なんですが (このモデルはかなり細かくオブジェクトが分かれておりました) どうもかなりジャギジャギ[^maskshape]しております。ジャギーは残念ですが、これを利用して、レンダリング結果に加筆してみます。（似たような見た目になる部分でも元からマテリアルを分けておくと、ジャギーの少ない `マテリアル選択マスク`を同じ用途に使えるので便利かもしれません。というか、このようなモデルなら普通マテリアル別れてますよね。。サブスタンスペインターでPBRペイントしたため部位ごとに質感が異なるものの、全体で１マテリアルになってます。）

<img width="292" alt=" 2017-12-16 15.30.49.png" src="https://qiita-image-store.s3.amazonaws.com/0/8302/69aa8369-aa8a-9b5c-095f-4a5f5baf66de.png">
色域指定で選択範囲を作って、

<img width="165" alt=" 2017-12-16 15.34.12のコピー2.png" src="https://qiita-image-store.s3.amazonaws.com/0/8302/c116e715-e1db-b6d9-63a2-a44d6e936705.png">
その範囲にトーンカーブを適用して、靴下（ももひき？）を履かせてあげました。素足では寒そうなので。このように各部位ごとにレタッチを進めていきます。

<img width="109" alt=" 2017-12-16 15.46.56.png" src="https://qiita-image-store.s3.amazonaws.com/0/8302/f291ce13-6fa9-4070-f9ac-22b761853414.png">
今回、目の部分をレタッチする為に同じ方法で選択範囲を作ったところ、ジャギり過ぎていてちょっと使えなかったので、

<img width="125" alt=" 2017-12-16 15.48.37.png" src="https://qiita-image-store.s3.amazonaws.com/0/8302/da17d306-586b-37f6-93d3-d5c405d89f27.png">
普通にパスで選択範囲を作りました。作業的に一番楽な方法を取れば良いかと思います。フォトショップは山のように選択範囲を作る方法があるわけですし。

<img width="111" alt=" 2017-12-18 3.47.14.png" src="https://qiita-image-store.s3.amazonaws.com/0/8302/6a22e660-ed7a-6f93-cbe1-2fafe01729bf.png">
上記パスを選択範囲として目を光らせました。塗りつぶしをスクリーンで重ねて、それにガウスぼかしをかけたレイヤーを重ねてブルームとしています。

![ebiload1_zenpen.jpg](https://qiita-image-store.s3.amazonaws.com/0/8302/14b7bb43-b771-d708-f1d1-4f1c0ec0b914.jpeg)
ここまでの作業で（と言うほど作業してないが）上記のようになります。
なお、影については３種類ほど日光の方向を変えたレンダリングを (クオリティ低でサクッと) 行い、影部分のみマスクで切り取ってこちらに移植[^light_render]してきています。光源が多数ある感じが出せたかと思います。

後編に続く！

[^maskcolor]: とはいえいちいち選択範囲を作るのが面倒です。最初から個別マスクレイヤーに分けたり、アルファチャンネルとして書き出したりするオプションを検討してもらえませんかね、Adobeさん。
[^masksize]: ここがもうちょっとピッチリあってると作業がすごく楽なんですがね、Adobeさん。
[^splitshadw]: 影やリフレクションはそもそも別レイヤーになっていてもいいかもですよ？ Adobeさん。
[^maskshape]: ここがスムーズになってると作業がものすごく楽なんですがね、Adobeさん。
[^light_render]: ディレクショナルライトは複数使えてもいいと思うんですが、どうなんでしょうね？ Adobeさん。