VOICEROID実況のアレ
PSDToolKit用の立ち絵を作成するメモです。
レイヤーの管理法や階層構造、使いやすいデータへの変換など。
レイヤーの管理法や階層構造、使いやすいデータへの変換など。
PSDToolKit
https://oov.github.io/aviutl_psdtoolkit/index.html
https://www.nicovideo.jp/mylist/5188467
https://www.nicovideo.jp/mylist/5188467
PSDTool と PSDToolKit で立ち絵を動かすまで
PSD画像の立ち絵、VOICEROIDの音声、字幕テキスト、を使ってAviUtlでVOICEROID実況動画を作成する事が出来るスクリプト。
レイヤー合成モード、クリッピングレイヤー、レイヤーマスクに対応している。
レイヤー名、レイヤーグループの先頭に以下の文字を付与すると、独自機能が利用できます。
! … 必ず表示。ただしグループの中身は非表示に出来る。
* … 同階層の「*」付きのうち、どれか一つを必ず表示。ただしグループの中身は非表示に出来る。
反転差分 … レイヤー名のお尻に「:flipx」「:flipy」「:flipxy」を付け加えると、立ち絵反転差分として扱われる。右手左手、文字が反転したら困る時など反転時の差分レイヤーを用意して、これを設定する。
PSDToolKit用PSDの仕様
! … 必ず表示。ただしグループの中身は非表示に出来る。
* … 同階層の「*」付きのうち、どれか一つを必ず表示。ただしグループの中身は非表示に出来る。
反転差分 … レイヤー名のお尻に「:flipx」「:flipy」「:flipxy」を付け加えると、立ち絵反転差分として扱われる。右手左手、文字が反転したら困る時など反転時の差分レイヤーを用意して、これを設定する。
Photoshop
Adobeのアレです。
無くても大丈夫ですが、あれば、下記便利スクリプトを利用できます。
無くても大丈夫ですが、あれば、下記便利スクリプトを利用できます。
(CS5、CS6、CC2015で試用)
便利なPhotoshop用のスクリプト
Photoshop用スクリプト ダウンロード | Live2D Cubismhttp://www.live2d.com/download/ps-script/
Live2D_Preprocess.jsx
レイヤーグループを結合するスクリプト。「*」付きグループは結合しません。
このスクリプトは先頭に「*」~と説明されていますが、実際はレイヤーグループ名のどこかに「*」があるか、で判定しているので、お尻に「*」が付加されていても同様の動作をします。
※上位に「*」なしグループがある場合は、下位の「*」付きは結合されてしまう。
このスクリプトは先頭に「*」~と説明されていますが、実際はレイヤーグループ名のどこかに「*」があるか、で判定しているので、お尻に「*」が付加されていても同様の動作をします。
※上位に「*」なしグループがある場合は、下位の「*」付きは結合されてしまう。
Live2D_Cleaning_v1.1.jsx
ゴミピクセルをお掃除してくれます。Live2D_Preprocess.jsxを改変する
※自己責任でお願いします。「*」付きフォルダを結合しない、という仕様がPSDToolKitの仕様と競合するので、「*」以外の文字で判定するようにスクリプトを修正します。
メモ帳などで開き、41行目の 「¥*」 を 「¥@」 に書き換えます。
これで、レイヤーグループ名に「@」が含まれていると結合しない、という動作に変更できました。
※CS5でこのスクリプト実行の際は、どこかのレイヤーを選択していないと内部エラー1200、activeDocument.activeLayer.merge();になり実行できなかったりします。注意。
レイヤーグループ名の付け方、例
!レイヤーグループ名@ …… 結合しない!レイヤーグループ名 …… 結合する
*レイヤーグループ名@ …… 結合しない
*レイヤーグループ名 …… 結合する
レイヤーグループ名@ …… 結合しない
レイヤーグループ名 …… 結合する
差分入りのフォルダに「@」
その中身の差分に「*」
という感じで指定すると思います。
PSDToolKitは作業中ままのレイヤーごちゃごちゃのPSDファイルでも問題なく利用できますが、ごちゃごちゃだと階層構造が見づらく扱いにくい、
特に、PSD立ち絵素材を配布するなら、不要なレイヤーグループは結合ですっきり整理しておきたいですね。
※メモリ不足はAviUtl1.10で改善しました。
CLIP STUDIO PAINT
PSDフォーマットが扱える、高機能、低価格なお絵描きソフト。
僕は絵を描くのにこれを利用しているので、注意点などーー。CLIP STUDIO PAINTではPSDの仕様から若干外れたデータも作れてしまうらしく、その場合はPhotoshopやPSDToolKitで表示が変になる。
無効なクリッピングマスク属性付きのレイヤーはNG
PSDToolKitでは表示されない。下にクリッピング基準レイヤーの無い、グレー表示になった無効なクリッピングは取り消しておく。
クリッピング属性付きレイヤーグループはNG
Photoshopはレイヤーグループにクリッピングが設定できない(CS5、CC2015)。しかし、CLIP STUDIO PAINTとPSDToolKitでは利用可能。
このタイプのレイヤーグループにLive2D_preprocessを使うと、不具合で結合結果が白ベタになってしまう。
フォルダ(グループ)にはクリッピングでなく、代わりにマスクを使用すること。
- フォルダのクリッピングを解除。
- クリッピングの下地レイヤーをCtrl+クリックで選択範囲を作成。
- フォルダにマスクを設定。
または、クリッピング付きフォルダだけ手作業で結合すればOK。
Photoshopに無いレイヤー合成方法はNG
Photoshopには無い「加算発光」などの使用を避ける。「通常」、「乗算」、「スクリーン」、この3つくらいで賄うと安心。下描きレイヤーに設定して不要なレイヤーを除外
完全に作業用で、PSDToolKitでは利用しないことが確定しているレイヤー、レイヤーフォルダは「下描き」属性に設定しておくと、PSD化時に出力から除外できる。レイヤー管理
「レイヤー検索パレット」と「レイヤーパレット」を並べて表示します。レイヤー検索パレットはサムネイルを非表示にし、検索フィルタでフォルダのみ表示に設定します。管理はレイヤーフォルダ単位で行います。中身のレイヤーに名前を付ける必要はないです。
階層が上位の、「目」などのフォルダに赤、青など「パレットカラー」を付けます。切り替えパーツなどの下位のフォルダは、無色、または階層に応じたパレットカラーにします。
すると、「レイヤー検索パレット」が文書作成ソフトの「見出し」のようになり、管理がしやすくなります。
レイヤー管理のサンプル。実際のフォルダ内のレイヤーは、「線画」、「塗り」、「影」など複数になると思います。
Live2D_preprocessでレイヤーグループが結合された状態。
CLIP STUDIO PAINTとPhotoshopではPSDにレイヤーパレットカラーの互換性が無く、やり取りは出来ないようです。
PSDToolKitでのレイヤー階層表示。
パーツの分け方
- まゆげ
- 目
- 瞳
- 口
- 漫符
- ポーズ差分
- 左右反転差分
髪を揺らす、なども想定するなら、AviUtl上で差し替えられるように、そのレイヤーを非表示に出来るようにしておく。
揺らすパーツは個別にPNGなどで書き出す。その際は偶数ピクセルサイズでクロップしておく(元画像も偶数で揃える)。偶数で揃っていないと、AviUtlに読み込んだ時に0.5ピクセルずれるので画像がボケたり、位置合わせにひと手間増えてしまう。
瞳を視線毎で複数用意し、白目でクリッピングすることが出来る。
開き目、半目、でそれぞれ同じ瞳を複製、表示の切り替え設定が必要ですが、視線毎に目を用意するよりは簡単。
「!」付きの強制表示は利用しないほうが、任意で非表示に出来るため、PSDの取り扱いに融通が利きそう。
ファイル形式
レイヤー効果、ベクターレイヤーなど独自機能の利用できるClip形式で作業する。
PSD化
ファイル>>複製を保存>>.psd(Photoshopドキュメント)
PNG化(揺らすパーツ単位の書き出し)
ファイル>>画像を統合して書き出し>>.png(PNG)
書き出し後はAviUtlでメモリを節約するため、画像の余白を減らし揺れ効果を正常動作させるために、偶数ピクセルサイズでクロップする。
揺れモノ参考
Aviutlで立ち絵の表情、髪揺れ、呼吸のやり方
https://www.nicovideo.jp/watch/sm33227812[Aviutl]画像プルンプルン(旧おっぱい揺らし)スクリプト_改良版
https://www.nicovideo.jp/watch/sm23776969その他メモ
Photoshop、非表示レイヤーの一括削除
レイヤー>>削除>>非表示レイヤー
【Photoshop】レイヤーのリネームツール - ツクロウヤ
http://artawa.hatenablog.com/entry/2016/10/20/014917
選択レイヤー、レイヤーフォルダの名前の置換、文字追加スクリプト。
「!」、「*」、を先頭に追加できます。
https://qiita.com/r-ngtm/items/e5a198175e0187cc2760「!」、「*」、を先頭に追加できます。
【Photoshopスクリプト】レイヤーをRegexで一括リネームするスクリプトを作ってみた
正規表現で置換。
リネームスクリプト挙動の注意点(微妙に動作不良)
All Layers … 最上位の階層しか処理されない=グループに入っているとスルー。Select Layers … グループ内も可、ただし選択のうち一番上が処理されない。
不可視レイヤーが可視化されてしまう … 処理前にレイヤーカンプを保存しておけばレイヤー表示状態の復元可。
ぐりぐり動かしたいならLive2Dで…
「Live2D Drawer」AviUtlでLive2Dを使う02 - ガレージ暮らしのトライタム
https://traitam.hatenablog.com/entry/2017/06/17/「Live2D_Drawer」AviUtlでLive2Dを使う02
moc2.1書き出しして~、としか注意が無いので、パラメータ名は3.x→2.1に変換されるのかな?(未調査)
呼吸 ………… 2.1、3.x、両パラメータに対応している。問題なし。
口パク ……… @Live2d.objをテキストエディタで編集してパラメータ名を書き換えれば対応可能。ただし、リップシンクでなく、開閉だけなので口の形は「Live2Dパラメータ操作」オブジェクトを挟んで、手作業で調整する必要がある?
2.x系パラメータ
https://www.cg-method.com/entry/facerig-live2d-set-parameters/
3.x系パラメータ
https://docs.live2d.com/cubism-editor-manual/standard-parametor-list/?locale=ja
メモ、要調査
Cubism Editor Ver2.x系のパラメータ名でモデルを作成する必要がある?moc2.1書き出しして~、としか注意が無いので、パラメータ名は3.x→2.1に変換されるのかな?(未調査)
moc3で試したメモ
まばたき …… 「設定」でパラメータ名を書き換えれば動く。呼吸 ………… 2.1、3.x、両パラメータに対応している。問題なし。
口パク ……… @Live2d.objをテキストエディタで編集してパラメータ名を書き換えれば対応可能。ただし、リップシンクでなく、開閉だけなので口の形は「Live2Dパラメータ操作」オブジェクトを挟んで、手作業で調整する必要がある?
2.x系パラメータ
https://www.cg-method.com/entry/facerig-live2d-set-parameters/
3.x系パラメータ
https://docs.live2d.com/cubism-editor-manual/standard-parametor-list/?locale=ja
0 件のコメント:
コメントを投稿