BLOG

RECENT ENTRY

ARCHIVES

AnimalineとAnimaToonShaderのご紹介

2月なのにすでに花粉が…出てきましたね;
花粉症の方にとっては今年もツラい季節となってきました。。
花粉症対策にオススメのものがあればぜひ教えてください!

さて、今回は社内で開発しているツールの一部をご紹介します✐
まず、アニマが創業当初に使用していたメインソフトはLightwaveです。
その後、3dsmaxとMotionbuilderを中心とした制作を続けていましたが、
アニマでも業界全体でも大規模案件のご依頼が多くなってきており、
パイプラインの整備や協力会社様の確保が課題となっていました。

そこでアニマでは、2018年から本格的にMAYAを使った制作体制を導入し、
パイプラインの開発を進めてきました。
アニマで初めてMAYAを本格的に使用した作品がmixi様のアニメ「モンスターストライク」です。

今回はアニメ「モンスターストライク」でも使用した内製のシェーダー【AnimaToonShader】と
ライン用ツール【Animaline】をご紹介いたします!

まずはシェーダーについて。
レンダラーはArnoldを使っており、シェーダー自体はベースから書き起こしました。
これまで使用していたToonShaderでは反射や屈折、オクリージョン、間接光の設定は
Shaderで設定することが難しく、素材を別でレンダリングする必要があったため、
コンポジットに莫大なコストがかかっていました。
それらの要素をシェダーに機能搭載したことにより、NukeやAftterEffectを使用した
コンポジットまでのフローを最適化することが可能となりました。
これまで3dsMaxで行っていた3Dアニメ制作のノウハウを詰め込み、以下の機能を搭載しています。

AnimaToonShaderを使ってオリジナルキャラのアニゴンをアニメ調にしてみます。
左側はArnoldの標準搭載マテリアル(aiStandardSurface)です。

■ ベース色と影色だけの設定 (左はArnoldの標準マテリアル)だとこんな感じ

■ アンビエントオクリュージョン、間接光、目にスペキュラー設定を追加

次に【AnimaLine】をご紹介いたします。
アニマでは以前から3dsmaxではPencil+を使用していましたが
一方で独自のラインツールの開発も進めており、Mayaと3dsMax版をリリースしました。
‟なぜPencil+があるのにMaya、3dsMax版を作ったのか?”という疑問が出ると思いますが、
『ライン表現をもっと突き詰めたい、便利にしたい』という制作現場からの要望に応えるために
開発を進めています。手法としてはエッジにジオメトリを生成する手法をとっています。

≪メリット≫
・ビューポートでラインが表示できる
・ジオメトリなので自由度が高い
・レンダラーを問わない

≪デメリット≫
・ポリゴンを二重化するため、元のオブジェクトのポリゴンが増えてくると重くなってくる

– ライン設定について
・OutLine / オブジェクトの輪郭にラインを引きます。

・Vertex Mode / Outlineの計算方法を変更します。
 OFFではフェイスのエッジに沿ってラインを、ONでは頂点間をつなぐようにラインを生成します。

・Smoothing Group:ハードエッジやクリースにラインを引きます。

・Silhouette / シルエットのみのラインを生成します。

・material ID:マテリアルのフェイスアサインの境界にラインを引きます。
・Object Boundary:板ポリゴンのような他の面と隣接していない輪郭にラインを生成します。
・Intersection:面が交差している個所にラインを引きます。
         自己交差と指定したノードとの交差を判定することができます。

・Translucent Mode:半透明、または透明なオブジェクトの後ろにラインを計算します。

■ 深度補正

深度(カメラからのLineの距離)に応じたラインの太さを補正を行います。

■ Correct Distance (距離補正)
対象とカメラの距離でラインの太さを補正する機能

Correct FoV (FoV補正)
カメラのFoV値でラインの太さを補正する機能

■ 最後にアニゴンにAnimaLineを追加

今後はmax版では実装しているInetelのEmbreeをmaya版でも実装して
さらなる高速化を図りつつ、Nuke側でラインの調整ができるようにする予定です。

それでは、また更新します:)

PAGE
TOP