■Unity開発メモ用のWiki◎現在扱っていること・Unity全般・MMDからUnityへの変換してインポート・MMDの仕様把握・BlenderでMMDモデルのカスタム

目次

ユニティちゃんトゥーンシェーダー2.0(UTS)

削除

UTSの簡易設定

  • ヒエラルキー「Directional Light」→インスペクター「Light」→色を真っ白に変更する
    • デフォルトは肌色になっている。白にすることで自然な発色にする

基本3色およびコントローラマップを設定(Basic Shader Settings)

項目パラメータ
BaseMap1影色マップとシェア(With 1st ShadeMap)にチェック
1stShaderMap(1影)#CBCBCB
2ndShaderMap(2影)設定しない

基本ルック設計:塗り分け段階およびぼかし強度を設定

(「Basic Lookdevs : Shading Step and Feather Settings」)
項目パラメータコメント
基本色と1影色の塗り分け(BaseColor Step)0.5基本色(明色)と影色領域の塗り分け段階
基本色と1影色間のぼかし(Base/Shade Feather)0.3基本色と影色領域の境界ぼかし

ハイカラーを設定(ハイライト、HighColor Settings)

項目パラメータ
ハイカラーマップ(HighColor)テクスチャは指定なし、色は真っ白
ハイカラーの強さ(HighColor Power)0.06
スペキュラモード(Specular Mode)「アクティブ」
カラーブレンド方式(Color Blend Mode)「加算でブレンド」

リムライト設定

項目パラメータコメント
UTSの「リムライト設定」リムライトをアクティブ回り込む光、
物の輪郭が強調される効果を付けるライト
リムライトの色(RmiLightColor)#CBCBCB肌色の暗めの色(1影)を入れる
リムライトの強さ(RimLight_Power)0.1

アウトラインの設定(Outline Settings)

項目パラメータコメント
アウトラインの方式(outline mode)「法線の方向」にする「Normal Direction(法線反転方式)」と
「Position Scalling(ポジションスケーリング方式)」
の2種類がある
「アウトラインの幅(Outline Width)」0.5〜4ぐらい?
「アウトラインの色(Outline Color)」#555555
アウトラインを基本色になじませる
(Blend Basecolor to Outline)
「アクティブ」にチェック

大まかなシェーダーの分類

シェーダーの分類大枠の参考サイト

◎2つのシェーダー系統
DoubleShadeWithFeather
 →UTS2の標準シェーダー
  2つの影色(Double Shade Colors)と、各々のカラーの境界にぼかし(Feather)を入れることができます。
・ShadingGradeMap
 →高機能版のUTS2シェーダー
  DoubleShadeWithFeatherの機能に加えて、ShadingGradeMapという特別なマップを持つことができます。

シェーダーの接頭語、接尾語の意味

  • Toon***:オブジェクト反転方式によるアウトライン機能
  • ***Clipping:クリッピングマスクを持てるシェーダー。いわゆる「テクスチャの抜き」(カットアウトやディゾルブ)ができます
  • ***TransClipping:同じくクリッピングマスクを持てますが、マスクのα透明度(Transparency)を考慮した「テクスチャの抜き」ができます。より綺麗な抜きができるぶん、負荷はClippingよりも高くなります。
  • ***StencilMask:ステンシルバッファによるパーツの透過を指定します。「眉毛」パーツのアニメ的な表現で、常に「前髪」パーツよりも前面に表示したいような場合などに使用するシェーダーです。必ずStencilOut系シェーダーと組み合わせて使います。
  • ***StencilOut:StencilMask系シェーダーと一緒に使います。上の例だと、「眉毛」パーツを透過させる側である「前髪」パーツに設定するシェーダーです。

Helper系シェーダー

  • Helperフォルダ内には、アウトラインオブジェクトのみを表示するシェーダーが入っています。
マルチマテリアルとしてパーツに重ねてやることで、アウトラインオブジェクトを重ね描きすることができます。
  • アウトラインを重ね描きしたいメッシュのSkinned Mesh Renderer > MaterialsよりSizeをひとつ増やし、追加するアウトラインマテリアルを登録します。
注意:アウトラインを重ね描きしますので、当然負荷は高まります。十分注意して使用してください。

NoOutline系シェーダー(モデルの輪郭の縁)

  • NoOutlineというフォルダ内に入っているシェーダーには、シェーダー名の一番頭にToonColorという名前がついていますが、これはアウトライン機能を持たない
  • Transparentという名前ブロックを持つシェーダーがあります。
これは、半透明に特化したシェーダーです。「頬染め」用パーツなどに使える他、ガラスのような表現にも使えます。

天使の輪の設定

  • AngelRingフォルダ内には、「天使の輪」機能を持つシェーダーが入っています。
「天使の輪」とは、髪のハイライト表現のことです。カメラから見て常に固定の位置に現れます。
  • 「天使の輪」機能を持つシェーダーは、高機能版UTS2であるShadingGradeMap系シェーダーと、そのバリエーションであるShadingGradeMap_TransClipping系シェーダーのみとなっています。
また主に「髪の毛」パーツに使われるシェーダーなので、ステンシルで抜かれる側であるStencilOut系のシェーダーが付属しています。

頬染め









MMDのデフォルトのToonマップ参考


◎Toonマップメモ
  • Toonマップの参考サイト
  • 光が当たっていない面を暗くする為の画像
  • MMDの場合、Toonマップが設定されていない場合セルフシャドウは機能しない
  • セルフシャドウとToonマップの表現は共存できない

MMDからUnityのマテリアルへ

  • 材質(MMD)≒マテリアル(Unity)
  • Tex(MMD)≒アルベド(Unity)≒基本色マップ(UTS2)
  • スフィア(MMD)≒MatCap(UTS)
    • MatCAPを使わない場合どうするか?

肌のテカリや金属の表現

  • ハイカラー(UTS)、ハイライト、スペキュラ
  • MatCapでヌルテカの肌を表現したものを、MatCapを使わずにUTSで表現するにはどうするか?
    • UTSの「ハイカラーを設定」

MMD(エッジ、輪郭)←→Unity(UTS、アウトライン)




アウトラインを出したくない箇所の処理(UTS)

  • アウトラインの強弱を調整する
  • Outline Sampler(アウトラインサンプラー)を使う
  • 黒でラインなし、白でラインの幅が100%になる



セルフ影マップ(MMD)、シャドウマッピング、Shadow Control Maps(シャドウコントローラマップ、UTS)

  • セルフ影マップ:自身の影を他材質に落とす
  • セルフ影:他材質の影を自分自身に落とす
  • UTSのShadow Control Maps(シャドウコントローラマップ)
    • ライティングに関係なく、1影色の位置を強制的に指定したい場合、ポジションマップを割り当てます。必ず影を落としたい部分を黒で指定します。
    • ポジションマップとの違いは?
  • セルフシャドウの使い分けはどうするのか?
  • 影の境界のぼかし具合
  • 影の強さ

アウトライン関係・色トレス

  • NPR(ノンフォトリアル)≒トゥーンレンダリング
  • Blenderでアウトラインを出す→背面法(ソリッドモディファイアを利用したライン付け)

◎色トレス
  • 元々はセルが時代のアニメーション用語。線画と塗りをなじませる様に、線画の色を隣接した色の近似色にする技法。
  • UTSで色トレスをするにはどうすればいいか?
    • オブジェクト反転方式アウトライン?
    • 「Outline Settings」→「BlendBaseColor to Outline」?

コメントをかく


「http://」を含む投稿は禁止されています。

利用規約をご確認のうえご記入下さい

Menu

【メニュー編集】

スカイリム関連

スカイリム関連


Menu

【メニュー編集】

スクリプト関連

フリーエリア

管理人/副管理人のみ編集できます