2019年10月

参考資料

服飾アニメーションのインタラクティブオーサリングのための組み込みの服飾スペース学習

クロスアニメーションのインタラクティブオーサリングに関する研究のようです。メッシュを入力すると間を補完してくれる的な物のようです。
http://geometry.cs.ucl.ac.uk/projects/2019/garment_authoring/

ここでは半自動の衣服アニメーションオーサリングワークフローについて説明します。

(a) ボディアニメーションシーケンスが与えられると、アーティストはキーフレーム(黄色)を選択します。
(b)そのフレームに対する衣服の形状を入力し、システムはこの設計の固有のプロパティを学習し、この設計を他のフレーム(緑色)に自動的に伝播します。
(c)アーティストはガーメントのアニメーションをさらに調整することができます。新しいキーフレームを挿入し(黄色)、ガーメントのシェイプを編集します。次にキーフレームを妥当なトランジション(オレンジ色のボックス)にリンクすることによって、アニメーションシーケンスが自動的に更新されます。
(d) このワークフローでは、アーティストがコンポジション中にボディアニメーション(赤いボックス)を変更することもできます。これは、このシステムが基礎となるボディモーションからインタラクティブなレートで衣服のシェイプを推測するためです。

 

要約

体の動きに関するキャラクタアニメーションのための動的な衣服の形状をオーサリングすることは,CG産業における基本ステップの一つである。確立されたワークフローは時間と労力がかかる(つまり、コントローラを使用した高密度フレームの手動編集)か、キーフレーム・レベルの制御がない(物理ベースのシミュレーション)かのいずれかです。
驚くことではありませんが、縫製は多くの生産パイプラインのボトルネックとなっています。代わりに筆者らは衣服アニメーションの半自動オーサリングのための深層学習ベースのアプローチを提示した。そこではユーザはキーフレームの選択において所望の衣服形状を提供したが,筆者らのシステムはその動作に依存しない固有のパラメータ(例えば、重力、布材料など)に対する潜在的表現を推論した。
新しいキャラクタの動きが与えられると、潜在的な表現によって、適切な衣服のアニメーションをインタラクティブな速度で自動的に生成できます。キャラクタの動きを考慮しなくても、学習された固有の衣服スペースによって新しいモーションシーケンスのキーフレーム間のスムーズなトランジションが可能になります。技術的には動作駆動オートエンコーダネットワークを用いて固有の衣服空間を学習する。ここでエンコーダは衣服の形状を体の動きの条件下で固有の空間にマッピングするが,デコーダはキャラクターの体の動きと固有のパラメータの変化に従って衣服の形状を生成するための微分可能なシミュレータとして動作する。
著者らは一般的な衣服タイプに関して,著者らのアプローチを定性的および定量的に評価した。実験は著者らのシステムがインタラクティブなユーザインタフェースを介して現在の衣服オーサリング作業手順を著しく改善できることを実証した。標準のCGパイプラインと比較して,本システムは必要なキーフレームの比率を20%から1−2%に著しく低減した。

モーション不変エンコーディング

筆者らは下にあるキャラクタの動きを因数分解しながら,潜在空間における同じ固有パラメータを持つ衣服形状を同じ位置に写像する運動不変符号化を訓練し,提供されたキャラクタの動きを使用して潜在空間における位置を様々な衣服形状に復号した。潜像空間において、同じ色のドットは同じ固有パラメータによって生成されたインスタンスを表す。

フリーシェイプ生成

本稿で提案した運動不変符号化ネットワークの視覚図を示す。学習した動き記述子を係数として用い,各ネットワーク層内の複数のサブネットワークを線形にブレンドし,動きに従ってネットワーク挙動を動的に変化させた。

Tips

modoで複数のスペキュラを重ねる表現

modoで複数のスペキュラをレイヤーのように重ねる表現について書いてみます。

■ サンプルファイル

 

現在のようにPBRマテリアルが主流になる前の時代、金属を表現する場合はスペキュラを重ねることで表現してました。modoではShaderの「ブレンドモード」を使用して複数マテリアルのスペキュラを加算することができます。

 

現在はマテリアルに「クリアコート」があるためスペキュラを重ねた質感が手軽に作れるようになってますが、スペキュラを3つ以上重ねたい場合には今回紹介した方法が便利かもしれません。あとクリアコートはレンダリングが少し遅い気がします。

 

スペキュラを加算したレンダリング。

クリアコートを使用したレンダリング。

 

参考

http://forums.luxology.com/discuss/post/42125

Multi-Coat

 

おまけ

スペキュラを重ねた金属表現はLightWave界隈では「Gaffer」が有名でした。3dsMaxにもMulti Layer Shaderがあり、かつては金属表現に欠かせない定番の設定でした。

Gaffer

セレクティブライト、多重スペキュラ、フレネル、反射の色、ブルームなどライティングに関連する様々な質感を制御することができるプラグインでした。
https://web.archive.org/web/20010108121200/http://www.worley.com/gaffer/gaffer_spec_control.html

 

MegaLight

スペキュラにトーンカーブのようにバイアスをかけることで金属っぽいスペキュラを表現したプラグイン。
http://www.dstorm.co.jp/dsproducts/FreePlugins/PreviousPlugins/MegaLight.html

 

Multi Layer Shader

参考資料

Unityアニメの新しい威力

「あした世界が終わるとしても」のUnity使用例を見ることができます。MaxとUnityのPencilのレンダリング比較画など。やはりDCCとUnityでデータのやりとりするところが手間取りそうですね。

Tips

modoのウェイトマップをアニメーション

Transfer Vertex Mapを使ってウェイトマップをアニメーションさせてみた。ちょっとしたテストです。

■サンプルファイル

 

Texture Falloffを使用したアニメーション。

 

基本的には法線の転送のウェイトマップ版です。現状はフォールオフを使っても0か1の値しか転送出来ないため、滑らかなウェイトにすることができないのが残念です。Merge MeshesしたメッシュにTransfer Vertex Mapが使えないのも残念。。。Merge Meshesつかればキャラクターのウェイト設定を使い回す仕組みが作れそうです。

C4Dのようにウェイトの範囲を時間経過で広げたり、時間差でウェイトを消したりできるようになって欲しいですね。

 

追記

modo 14.0でプロシージャルウェイトマップが追加されました。選択モディファイヤのGrow / Shrinkを使ってウェイトマップを成長させることが出来るようになりました。

Tips

modoのコンストレイント ウェイト

modoのコンストレイントにあるウェイトチャンネルについて書いてみたいと思います。コンストレイントのウェイトを使用すると2点間でアイテムを等間隔に配置するようなリグを作ることができます。

modoのコンストレイントは複数のアイテムを指定することができます。ことのきコンストレイントの「ウェイト」を使用すると、コンストレイントの重みを調節することができます。ウェイトはプロパティに表示されないので、チャンネルビューポートを使用して設定します。

 

ウェイトを設定すると2点間でアイテムを等間隔に配置するようなリグを作ることができます。

Position Constraint、Rotation Constraintのウェイトを調整すると、こんな感じの制御ができるようになります。

 

コンストレイントは2つ以上の複数のアイテムに使用することもできます。

 

ウェイトの使い道は様々で「カメラブレンドリグ」のようなものが作れるので便利です。

参考資料

EasyToon for Maya

コミックおよびアニメスタイルの制作のための強力なツールキットおよびレンダリングソリューションだそうです。パース変形やモーションブラーが面白いですね。使ってるレンダラーは3Delightのようですね。

CG 日記

デスクトップキャプチャソフト「OBS Studio」

ビデオ録画とライブ配信用のオープンソースのソフトウェア「OBS Studio」の紹介です。
https://obsproject.com/ja

クイックスタート
https://obsproject.com/wiki/OBS-Studio-Quickstart

 

たまにWindowsのデスクトップをムービーキャプチャしたいときがあって、これまではNvidiaの「ShadowPlay」を使用してました。CPU負荷が少なく画質もそこそこの品質、無料ということもあり便利に使ってましたが バージョン重ねるごとに使い勝手が悪くなっています。私は4Kモニタを使用していているのですが、キャプチャ用に解像度下げて録画しようとしたとき、ついに画面に表示している解像度で録画できなくなってしまいました。

あれこれ調べてたどり着いたのが「OBS Studio」です。YouTubeやTwitchのようなライブ配信向けのソフトですがPCのデスクトップキャプチャにも使用できます。

なぜこのソフトにしたかというと、Nvidia NVENCのH.264/MPEG-4 AVCへの変換に対応しているというのがあります。NVENCはShadowPlayで使用されているコーデックで、GPUを使用してエンコードするためCPU負荷が低いです。またOBS Studioは開発をTwitch、Nvidia、Logitech が支援してたり、Nvidiaがカンファレンスで取り上げてるので安心感があります。

 

使い方

デスクトップをムービーキャプチャする手順です。UIはQtで作られてるので、グラフィックソフトのような感覚で自由にレイアウトできます。

1.ソース追加

ソースの+アイコンでキャプチャ対象を追加します。デスクトップをキャプチャしたいときは「画面キャプチャ」、ゲームをキャプチャしたい場合は「ゲームキャプチャ」をクリックして、キャプチャ対象のゲームやウィンドウを指定します。

OBS Studioはライブ配信用のソフトなので、複数の画面(ソース)を切りかえることができる仕組みになっています。

2.録画開始

コントロールの「録画開始」をクリックするとキャプチャが開始します。同じボタン「録画終了」を押すとキャプチャが終了します。

設定

デフォルトではライブ配信向けの設定になっているため、出力サイズが小さく画質も低めに設定されてます。ファイルメニューまたはコントロールの「設定」を開いて、「録画品質」「録画フォーマット」「エンコーダ」「出力(スケーリング)解像度」を任意に設定します。

参考資料

THE PEAK

マーザ・アニメーションプラネットによるUnityを使用した映像作品。THE GIFTの主人公サラの新たなエピソード。

メイキング。手描きの2D素材に自動的に厚みをつけてエフェクト作ってるの面白いですね。

参考資料

「七つの大罪」をゲームで高品質グラフィックを具現化するための技法と開発最適化

「七つの大罪」をゲーム化するにあたり、工夫した点が解説されてます。

シェーディングにMatcapを使用してライトに関係なくシェーディング、顔の頂点法線を編集、眉毛の描画順を髪の前面に変更。カメラの角度でテクスチャ切り替えるImposter Shaderが面白いですね。