Transcription
expression で 音に合わせて 自動で 口を 各泊 させます ラブジョイ
皆さんこんにちは今日はキャラクターの口を自動でパクパクさせる方法を考えてみたのでメモしていきたいと思います。今回の目標はオーディオデータを参照して、キャラクターの口を自動でパクパクさせることです。ナレーションのタイミングが変わっても対応できるところがポイントです。
では初めに完成形のコンポジションを見ていきたいとおもいます。オーディオファイル、キャラクターのベース、口パク用のコンポジション、平面、塗るという構成になっています。この平面に audio spectrum を適用し、audio spectrum がこの塗りの位置まで増えているかどうかで口パク用のコンポジションの不透明度を expression で制御します。火を打たずに制御しているので、このようにオーディオファイルを動かしても口パクが付いてきます。
言葉だけだとわかりづらいと思うので簡単に図解してみます。これが audio spectrum で、こっちは null です。今回はここの座標まで audio spectrum が振れているかいないかで口パク用のコンポジションの不透明度を制御します。座標の位置まで到達している場合は不透明度100%、到達していない場合は不透明度0%になるようになっています。
では実際に行ってみます。expression 適用の部分までとりあえず組んでいきたいとおもいます。その他の不要なレイヤーは後で表示にします。
[音楽]
千葉供養のレイヤーをプリコンポーズします。
今回はプレーンにしてオンポジションを取り出します。
goo トゥデイ
作成した口パク用コンポジションにタイムリマップを適用し、expression でループさせます。紛らわしいので口のベースレイヤーは表示にしておきます。ちなみにこのタイムリマップの2つ目のキーで口が消えるまたは下がって表示されると思います。解決法としては2つ目のキーの位置、フレーム前にキーを打ちます。それから最後のキーを削除します。これでも治らない場合はキャッシュを消去してみてください。これは2Dエフェクツの都合なのか何なのかわかりませんが応用ものだと思うことにします。わかる方是非教えてください。
me
audio spectrum 用の平面と塗るを作成していきます。
voodoo
なるべく分かりやすいようにサンプルポイントと名前を変更しておきます。
ん
オーディオファイルをポジションに持っていきます。平面に audio spectrum を適用します。
me
適用したらオーディオレイヤーを設定
gooええええええ
トゥデイ
audio spectrum の形状、いい感じに調整します。オーディオレイヤーのウェーブフォームを表示させ、波形が一番大きい所で程よい高さに設定するのが良いかと思います。
nigoo トゥデイ
4
me
nime
ana
ん
ん
voodoo
先ほど図解で説明したように塗るをこのあたりに配置します。
[音楽]
meme
それでは下準備が終わったので口パクコンポジションの不透明度にエクスプレッションを入力していきます。
入力が終わりましたのでこの expression の解説をしていき ます。まず一条目、このポイントでどこの座標を取得するかを設定します。今回はこの塗るの座標を取得したいので、このように設定します。
me
次に2行目のサンプルでどのレイヤーの値を取得するかを設定します。今回は audio spectrum が適用されているレイヤーの値を取得したいので、このように設定します。次のサンプルイメージは色とアルファの情報を取得してくれます。ポイントは取得する値は一行目で設定している null になっています。
あああああああ
ラデュースは null の座標からどのくらいの範囲でサンプルするかを指定です。今回は5ピクセルにしています。ポストエフェクトはエフェクト適用前か後の値を返すかの指定です。今回はオーディオスペクトラム適用後の値が欲しいので true にします。
[音楽]
タイムに関しては適用する座標の指定です。今回はそのままにしておきます。アルファ=サンプル値は2行目のサンプルで取得した値のある fudge を使えますという文です。サンプルイメージで取得できる値としてはレッド、グリーン、ブルー、アルファなので、アルファにあたる値を入力しています。
続いて if 構文を使って条件を決めます。アルファの値が0より大きければ不透明度100%、そうでなければ0%にしてくださいという文です。
これで再生してみると、expression で 音に合わせて 自動で、このように audio spectrum が null の位置にあるときは口がパクパクするようになります。
最後に口のベースレイヤーを表示させます。口パクしているときは口のベースのレイヤーを表示にしたいので不透明度にエクスプレッションを入力します。
[音楽]
me
これは口パクコンポジションの不透明度0% の時には不透明度100%、不透明度100%の時には不透明度を0%にするという expression です。
expression で 音に合わせて 自動で
言い忘れてましたが、もちろん audio spectrum のレイヤーを表示にしても動作しますのでぜひ試してみてください。
me
こちらで以上になります。もっといい方法あるよ、自分がこうやってるよなどコメント欄で教えていただけると嬉しいです。ションに関しては web や書籍を参考 にしています。まだ慣れていないのでおかしい部分もあるかもしれません。コメント欄でご指摘いただけると幸いです。ではご視聴ありがとうございました。
[音楽]