3DCGbook

映像プロダクションに所属しています。主に毎日のアウトプットを配信していこうと思います。

Photoshop効率化アレコレ

今日は近くでPhotoshopの話が聞こえてきていいなぁ…
と思いつつ1人もくもく作業してました(笑)

私がPhotoshopで効率化するには何を使うか...というのを今までの経験も含めてまとめてみます。
バージョンはPhotoshop CS6です。

よく使ったのは…
・ウィンドウ > アクション
・ファイル > 自動処理 > バッチ...
・ファイル > 自動処理 > コンタクトシートII...
・ファイル > 自動処理 > 参照...

こんな感じですかね。
じゃあ順番に使い方を…といってもよく使われていそうなのは飛ばします。

ウィンドウ > アクション

Photoshopを使って効率化といえばこの機能かと思います。
手続きを記録することができて、後からその手続きを編集することもできます。
また作ったアクションは保存して人と共有することもできます。

Mayaでいうと、
コマンドは常にScriptEditorに表示されているので、そのコマンドをコピーしてShelfへ登録。
そんな感じ。

ファイル > 自動処理 > バッチ...

一括で作ったアクションを複数のデータに適用することができます。
例えば、フォルダ内に存在する全てのデータの解像度512pxに下げる!とかにはもってこいですね。

ファイル > 自動処理 > コンタクトシートII...

最近のゲームではこんなことしないかもしれませんが…。
連番ファイルを1枚のテクスチャにしてエフェクトを作るというのはちょっと昔のゲームではやりました。
恐らく今でも現役の技術だとは思いますが…。

例えば、16枚の連番画像を以下のように並べてくれます。
f:id:blendcomp:20150311000619p:plain

ファイル > 自動処理 > 参照...

作ったJavascriptファイルを読み込む時はここから。

最終的にはJavascriptに頼らないと辛い時が多々あります。
特にゲームの場合は何百ものテクスチャになってくるので
基本的にはエクスポート等の処理は人の手で行うことはあり得ません。というかなくなってほしい。
ユーザインタフェースを作る時とかもはや恐ろしい数になってくるので…。

例1:
左上の座標位置を取得する場合があります。
これはUIを作る場合にスクリーンスペースのどの位置に画像を配置するか…
といったものをプログラマに伝える為です。

座標位置はゲームの場合非常に大事になります。
人の手で何百ものデータの左上の座標位置の取得なんてやってられませんし(^^;

例2:
編集用psdからtga、psdにバージョン付きでエクスポートしたいとします。
編集用はマスターデータとし名前を、base_work.psd とします。
後は、tga、psdのフォルダを同一階層に作成するとします。
スクリプトを実行する度に、
base_work_001.tga
base_work_001.psd
とバージョン付きで出力されます。

以上のようなものはスクリプトじゃないと難しいかと。

Adobe製品にはExtend Script Tool Kitというものが付属していますので、
目で何が実行されたか確認しつつスクリプトが書けるので面白いですよ。
f:id:blendcomp:20150311002355p:plain

久々にJavascriptしたのですが割と忘れてますなぁ…。2年くらい触ってなかったしなぁ…。
というのは置いておいて、興味がある人は是非試してみてください。

それでは。