MENU

プロシージャル頂点マップを活用したアニメーション 3

前回までに頂点マップの作成まで行いました.

今回は仕上げとしてその頂点マップを使ってマテリアルアニメーションに利用していきます.

目次

パート3の動画

合成シェーダを使う

マテリアルマネージャを開き(Shift + F2),標準マテリアルを1つ作成し,名前を「テキスト」に変更します.

まず,カラーチャンネルのカラーテクスチャに対して「合成」シェーダを適用します.合成シェーダはテクスチャのブレンドに使用するシェーダです.

合成シェーダをカラーテクスチャに割り当てる

合成シェーダを開き,
「マスクを使う」…「オン」
にしておきます.

そして,
「合成チャンネル」…「グラデーション」
「背景チャンネル」…「カラー」
シェーダを設定していきます.背景チャンネルのカラーは好きなカラーを設定してください.

グラデーションを設定する

グラデーションの設定を開き,グラデーションを作成します.作例では「プリセットを読み込み」しています.さらにグラデーション部を右クリックして「ノットを2倍」を2回適用しました.また,
「タイプ」…「2D – 対角」
にしておきます.

グラデーションの設定

ついでに一味たすために角度に対してキーフレームを記録することにします.
タイムライン「0」フレーム目で「0°」
タイムライン「120」フレーム目で「360°」

でキーを記録します.対角グラデーションが回転するアニメーションができました.

グラデーションの角度をアニメートさせる

合成シェーダのマスクチャンネルを設定する

合成チャンネルの設定に戻り,「マスクチャンネル」に「特殊効果」→「頂点マップ」シェーダを適用します.頂点マップシェーダの設定を開き,「頂点マップ」の欄に作成した頂点マップタグをドラッグ&ドロップします.

マスクチャンネルに頂点マップを割り当てる
頂点マップ欄に頂点マップタグをドラッグ&ドロップする

これを設定後の合成シェーダは次のようになります.頂点マップは見た目状は0~1の値を記録したものですが,これをシェーダとして使用した場合,黒から白のグラデーションとなります.つまりマスクとしてて利用できます.この例では頂点マップが1に近くなるにつれ,グラデーションが見えてくるようになります.

合成シェーダの完成

このマテリアルを一体化へ適用すると次のようにアニメーションしていることが確認できます.実際のレンダリングでは実のところはまだポリゴンの分割数が足りないためシェーダの境界線がガタついているので,もっと綺麗にしたい場合はSDSをバイリニアなどでかけた状態で頂点マップを生成するとよいです.しかしエディタ動作が重くなるのでチュートリアルでは一体化までにとどめておきます.

できたアニメーション

スムージングデフォーマで形状を少しなめらかにする

作例ではテキストの形状が少し硬いなと感じたので,スムージングデフォーマを少し強めにかけて丸みを強めています.

スムージングデフォーマで角をとる

ライティング

それでは簡単にライティングの設定までして軽く仕上げていくとしましょう.

ライティングは空オブジェクトを追加します.

空をシーンに追加する

アセットブラウザ(Shift + F8)を開き,Templates & PresetsのフォルダからHDRIを探して,好きな空用マテリアルをシーンに追加して空に適用します.

アセットブラウザから空用マテリアルを探す
空に割り当てる

空オブジェクトを照明として機能させるためにはレンダリング設定でグローバルイルミネーションを追加する必要がありますので,「レンダリング設定」(Ctrl + B)を開き,「特殊効果」から「グローバルイルミネーション」を追加します.

グローバルイルミネーションを使用する

グローバルイルミネーションの設定はすべてデフォルトのままで構いません.空自体はレンダリング時にカメラから見える必要はないので,空オブジェクトを選択し,「タグ」メニューから「レンダータグ」→「コンポジット」タグを適用し,「カメラから見える」を「オフ」にしておきます.

コンポジットタグで空はカメラか見えないようにする

レンダリングすると少し照明としての効果が弱い場合(使用するHDRIの素材によります)は,空用マテリアルの発光チャンネルを開き,テクスチャの「混合モード」を「乗算」にし,「明るさ」の値を100%以上にあげていくことで照明強度を強めることができます.

必要であれば空の明るさを調整する

簡単なライティングですが,ひとまずこれでレンダリングさせたものがこちらになります.

仮レンダリング

マテリアルをもう一工夫

もう少しマテリアルを工夫してリッチに仕上げても良いでしょうか.周囲の環境(ここでは空オブジェクトのHDRI)を少し反射させたい場合は,マテリアルの反射チャンネルにBeckmannレイヤーを追加して,レイヤーフレネルを「誘電体」と「PET」にします.

反射を設定してみる
少し反射が入るとハイライトで引き締まります

反射レイヤーのレイヤーマスクに頂点マップをつかってみる

先ほど記したように,頂点マップはマスク用に使用できます.例えば反射レイヤーのマスクにも利用できます.二つめのBeckmannレイヤーを作成し,こちらは金属のままにします.「レイヤーマスク」のテクスチャに「特殊効果」→「頂点マップ」を適用します.同じように頂点マップをドラッグ&ドロップします.頂点マップによるレイヤーマスクにより,フィールドの部分が金属になりましたが,これを反転させます.反転方法は色々ありますが,ここでは「カラー変換」シェーダを追加し,グラデーションバーを反転させることで実現可能です.

反射のレイヤーマスクに頂点マップを反転させて使用
色々な箇所で使える頂点マップ

頂点カラーはデフォーマのフィールド用にも使えますし,他にもダイナミクスなどにも応用可能で色々と面白い表現が可能になります.使用頻度自体も多いですので引き出しの1つとして覚えておくと何かの時に役に立つはずです.

完成ファイルはこちらからダウンロードできます.

今回はCinema 4D 2023はテキストに対してプロシージャルで頂点マップを作成しました.つまりテキストのフォントやサイズ,押し出し量は後からいくらでも変更できるわけで,再利用しやすく,これがプロシージャルのメリットの1つでしょう.
というわけで最終的なレンダリング設定でいくつかレンダリングからコンポジットで行った作例は次のようになります.

文字,フォントは変更できる

Motion Elementsで素材を探す

MotionElements - ロイヤリティフリー 動画素材マーケット、音楽、アフターエフェクト テンプレート

この記事が気に入ったら
フォローしてね!

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

Cinema 4Dを使用したCG制作を行うフリーランサー.
MAXON認定 Cinema 4D マスタートレーナー

自身の経験を元に後進のために当サイトを開設し運営中.
制作業務のほか,Cinema 4Dの個別トレーニング,企業向けトレーニング,メンターサポートなども行っています.

目次