以下の内容はhttps://renard.hateblo.jp/entry/2025/07/29/043255より取得しました。


『WING IT!!!』MV解説

『WING IT!!!』MV解説

これは何

  • 2025/04/02にTHE LUV BUGSよりリリースされた楽曲『WING IT!!!』のMVを制作した

youtu.be

  • この記事では、Renardが担当する部分について解説する (主にUnity部分)

担当

  • キャラクターモデリング:O.G.I.
  • モデリング、一部映像(遊園地の爆破)、破壊アニメーション:kinankomoti
  • それ以外:Renard

  • 私とkinankomotiはいろいろ話し合いながら制作した

  • キャラクターモデルに関しては、O.G.I.さんが同レーベルの他のMVで使用したモデルを使わせて頂いた

youtu.be

MV全体の構成

  • 大きく分けて「遊園地」「宇宙」「コンクリート」の3つのパートで構成されている

遊園地

宇宙

コンクリート

  • 全体を通して、歌詞は3D空間に出現するようになっている

構想

  • 作業は全てfigjam上で行った
  • 歌詞を読み合って解釈をし、方向性を統一
  • 役割のざっくりとした分担 (というよりは技術スタックによる制限に近いが)
  • リファレンスを集めながら、やってみたい表現を羅列
    • foil balloonのような、膨らむsoftbodyの風船
    • Iridescentの質感(構造色)
    • 歌詞を質量のある3Dとして見せるリリックモーション (ex: サカナクション/アルクアラウンド
    • 動画コーデックによるグリッチ
    • など
  • 曲を大きな3つのセクションに分け、それぞれに対しシーンを定める
  • さらに分割した小セクションで細かい演出を割り当て
  • モデルを仮置きし、絵コンテ的なものを添える(絵が描けないので)

  • ある程度固まって取り掛かかった後は、TODOの洗い出し -> TODOの消化のイテレーション

  • TODOは依存関係が深いものから優先付け (例えば、文字のモデルが無いと歌詞が配置できないので優先度は高い、など)

Unityのタイムライン構成

  • Unity Recorder
  • サウンド
    • 歌詞データ制御
    • 1拍、1小節のclipを大量に生やしてスナップするやつ
  • カメラ制御
    • 切り替えはCinemachine、パラーメータをAnimationで制御
  • キャラクター制御
    • 位置をParentConstraint、表情や動きはAnimation
  • ライト制御
    • 色やon/off (Activation Track)
  • オブジェクト制御
    • Animationでメリーゴーランドやゴーカートなどを動かしたり、on/offを切り替えたり

歌詞のシステム

  • MusicXMLが貰えたので、C#でパーサーを作り、UnityのTimelineのTrackとして実装した
  • 歌詞と時間の情報をjsonで書き出し、kinankomotiはhoudiniを使って文字のsoftbodyシミュレーションをvellumで回し、ペラペラ文字を膨らませる
  • fbxで文字を書き出す際に、tangentに膨らんだあとの座標を書き込み、歌詞の出現時の時間をuvに書き込む

  • Unity側ではTimelineの時間をシェーダーに渡し、文字の膨らむアニメーションは全てシェーダー
    • 一気に膨らんで、空に飛んでいくような動きを実装
  • 後は配置だけすれば勝手に歌詞が出現していく仕組み
  • 文字の色については、干渉薄膜をベースとしてシェーダーを書いた
  • https://github.com/kinakomoti-321/TFI_LUTCreator

カメラ制御

歌詞駆動制御

  • 歌詞を映す画角の際は、歌詞の位置に合わせて自動で決まるようにした
  • Cinemachine Target Groupをベースに、現在発音中の歌詞と直近の幾つかを自動的にGroupにする(重み付けは時間に対するカーブ)
    • Groupにすると、Transformが回転と位置の重心になり、Cinemachine Followで勝手に歌詞を正面に捉えて追従できる
    • またCinemachine Group Framingによって、歌詞をどの程度絵に含めるか制御
    • 幾つかのフレーズでGroupを区切って、カメラの遷移を自然に (「安直な」「ストーリーで」「横転」みたいな、歌詞の区切りは重みづけを残さず切る的な)

Cinemachineの活用

  • 歌詞が無い時はSplineDollyやOrbitalFollow、キャラクターに対してFollow(Lock To Target)など
    • パラメータはAnimationで制御
  • Dampingや、Recomposer、Camera Offset、Rotation Composerで調整
    • Tilt、Pan、Dutch、DollyZoomなどもできる
  • 手振れ感(?)はBasic Multi Channel Perlinで実現できる

キャラクターアニメーション

レンダリング

  • RayTracingの設定(Volume)を2つ、レンダリング用のmaxのやつと、editor上で確認する用のraymarchingとか使った安いやつを用意
  • Unityには一応PathTracingもあるが、使い物にならなかったので使わなかった
    • UnityRecorderはパストレ用のAccumulationの設定があるが、色々うまくいかない
  • DOFはCinemachine Auto Focusで、ピントが合う感じができる

  • MotionBlur、Tonemapping、Bloomなど軽くポスプロを入れ、あとはAEに任せる
  • 録画はUnityRecorderで、ProRes 4444 XQにすると一番画質が良い (より良くする場合、1フレ1フレ撮ってロスレスで書き出し、後で合成するのがよろしいと思う)

グリッチ

  • 色々なコーデックでdatabendingを行い、良いやつを組み合わせて合成
  • Datamoshはffglitchやそのforkなどで行った
    • AEのDatamoshプラグイン(有料)はffglitchのラッパーなので嫌で買わなかったが、後になって思うと、買った方が簡単だよね 嫌なんだけどね
  • NTSC風データ損失エフェクトはNTSC-rsを使用

コンポジット(AE)

  • コンポジットって何?
  • Deep Glow、Magic Bulletとか色々かけた
  • 色については何も分かんないので勘で

  • このパチンコみたいなロゴはがっつりエフェクトで作った 元のレンダリングはHoudini(kinankomoti)
  • Unity Timelineの使い方が悪いのか、カメラ切り替えのタイミングで1フレームおかしくなることがあり(キャラだけ残るとか)、それをごまかすため色々やった
    • モーションブラーで誤魔化す (BCC Temporal Blur + BCC Directional Blur)
    • Twixtorで1フレだけ伸ばす
    • AIで1フレだけ伸ばす

おわりに&感想

  • 製作期間は2カ月半ほど
  • MVの制作経験が無かったので不安だったが、できた
  • Unityでアニメーションカーブをつけるとき、Curve Masterに助けられた これが無いと無理
  • Unityのレンダリングには限界があるので、Blenderを使えるようになりたいでづ
  • 締切2週間前からAEを学び出しました。プラグインが軒並み高いのに、SapphireとかMagic Bulletとか、みんな使いすぎです ああああ
  • 参考にしたいからMVをいっぱい見たんだけど、心が折れそうになりました この世界 表現者多すぎ



以上の内容はhttps://renard.hateblo.jp/entry/2025/07/29/043255より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14