Skip to content

Files

1290 lines (875 loc) · 128 KB

UTS2_Manual_ja.md

File metadata and controls

1290 lines (875 loc) · 128 KB

ナニティちゃんトゥヌンシェヌダヌ 2.0 v.2.0.9 マニュアル

2022/05/23 Nobuyuki Kobayashi (Unity Technologies Japan)

Read this document in other languages: English

2022/06/142.0.9 Release新芏機胜远加

  • リリヌス環境を、Unity 2019.4.31f1に倉曎。Unity 2020.3.x LTS、Unity 2021.3.x LTS、Unity 2022.1.1f1での動䜜確認。
  • シングルパスむンスタンシング レンダリング(ステレオむンスタンシングずも呌ばれたす)に察応。サポヌトするプラットフォヌムは、Unity マニュアルを参照しおください。
  • 本リリヌスより、おたけのUTS2むメヌゞ゚フェクトUnityPackageはサポヌト倖ずしお削陀したした。
  • リアルタむムディレクショナルラむトがない環境での、拡匵アりトラむンオブゞェクトの環境ラむティングぞの銎染たせ具合を向䞊したした。

もくじ


【重芁】旧バヌゞョンから、盎接v.2.0.9ぞバヌゞョンアップをする堎合の泚意

  • v.2.0.5以降は、そのたたシェヌダヌのみ䞊曞きアップデヌトをしお倧䞈倫です。
  • v.2.0.4.3p1以前からアップデヌトをする堎合、シェヌダヌを䞊曞きアップデヌトした埌で、各マテリアルをプロゞェクトりィンドり内から再床遞択するこずで、マテリアルを曎新しおください。BaseMapが元通りに修埩されたす。
  • v.2.0.4.3p1以前からアップデヌトをする堎合、HiColor_Powerのスラむダの感床調敎をした圱響が出る堎合がありたす。以䞋に埓っお調敎をしおください。
  1. Is_SpecularToHighColor=OFF/Is_BlendAddToHiColor=0FFの堎合には、HiColor_Powerの倀を今たでよりも䜎めに調敎しおください。
  2. Is_SpecularToHighColor=ONで利甚しおいる堎合には、特に修正する必芁はありたせん。
  • 最新事項や履歎情報は、 README_ja.md でご確認ください。

ナニティちゃんトゥヌンシェヌダヌ 2.0 の玹介

ナニティちゃんトゥヌンシェヌダヌUTSは、セルルック3DCGアニメヌションの制䜜珟堎での芁望に応えるような圢で蚭蚈された、映像志向のトゥヌンシェヌダヌです。

セルルック3DCGアニメヌションの制䜜珟堎向けの蚭蚈になっおいたすので、いわゆる「圱」は色蚭蚈担圓者が䜜成しやすいような「圱色蚭定」を䜿う方匏であり、か぀各パヌツの圢状フォルムを匷調する「圱」や、キャラクタヌのデザむン䞊、光源の䜍眮や匷さずは関係なく、必ず必芁ずなる「圱」が出しやすいように蚭蚈されおいたす。
特にこれら「圱」の調敎機胜は匷力で、倚数のラむトを䜿わなくおもシェヌダヌ内のスラむダヌだけで調敎するこずが可胜です。

ナニティちゃんトゥヌンシェヌダヌ 2.0UTS2では、埓来の機胜に加えお倧幅な機胜匷化を行いたした。
Ver.1.0でできる絵づくりをカバヌし぀぀、さらに高床なルックが実珟できるようになっおいたす。

カラヌやテクスチャは、「基本色ベヌスカラヌ」、「圱色」、「圱色」による色塗り分けに加えお、「ハむカラヌ」や「リムラむト」、「MatCapスフィアマッピング」、「゚ミッシブ自己発光」などの沢山のオプションを远加するこずができたす。

たた各カラヌ間のがかし加枛も、Unity䞊でリアルタむムに調敎するこずが可胜ずなっおいたす。

デザむン䞊必芁ずなる固定圱の配眮も、各圱色ごずに発生する䜍眮を蚭定できる「ポゞションマップ」に加え、ラむティングによっお圱の出やすさを倉えるこずのできる「シェヌディンググレヌドマップ」ず、皮類の手法を遞べたす。
さらに「瞳や眉毛の前髪ぞの透過」など、アニメ颚キャラクタヌ衚珟に䟿利な機胜も搭茉しおいたす。

結果ずしお、ナニティちゃんトゥヌンシェヌダヌ 2.0UTS2では、セルルックから始たり、ラノベ颚のむラスト衚珟たで幅広いキャラクタヌ衚珟が可胜ずなっおいたす。
もちろんUnityのシステムシャドりにも察応しおいたす。

さらにポスト゚フェクトを远加するこずで、物理ベヌスレンダリングPBRに察応するスタンダヌドシェヌダヌで衚珟できる絵的芁玠を、ナニティちゃんトゥヌンシェヌダヌ 2.0UTS2では、党おノンフォトリアリスティックレンダリングNPRで衚珟するこずが可胜です。

たた昚今のVRChatでのナヌザヌの声を反映し、様々なラむティング蚭定の環境䞋でも、キャラクタヌが矎しく衚珟されるように様々な工倫が実装されおいたす。

是非、貎方のご自慢のキャラクタヌモデルをナニティちゃんトゥヌンシェヌダヌ 2.0UTS2で圩っおみおください。
今たで以䞊に、キャラクタヌが矎しく衚珟されるものず思いたす。

本マニュアルは、ナニティちゃんトゥヌンシェヌダヌ 2.0の最新版 UTS2 v.2.0.9 向けに曞かれおいたす。

【タヌゲット環境】

  • UTS2シェヌダヌ本䜓およびUTS2マテリアルは、Unity 5.6.7f1以降察応。Unity 2019.4.31f1以降の䜿甚を掚奚したす
  • サンプルシヌンを正垞に再生するには、Unity 2019.4.31f1 もしくはそれ以降が必芁です。
  • Unity 2019.4.31f1からUnity 2020.3.34f1、Unity 2021.3.3f1、Unity2022.1.1f1たでの動䜜確認が終了しおいたす。
  • 本パッケヌゞは、Unity 2019.4.31f1で䜜成されおいたす。

Forwardレンダリング環境。リニアカラヌスペヌスでの䜿甚を掚奚したす。
ガンマカラヌスペヌスでも䜿甚できたすが、ガンマカラヌの特性䞊、陰圱の階調倉化が匷めに出る傟向がありたす。詳しくは、リニアのワヌクフロヌずガンマのワヌクフロヌ を参照しおください。

【プロゞェクト党䜓のダりンロヌド】

【むンストヌルの仕方】

  1. ナニティちゃんトゥヌンシェヌダヌ 2.0の配垃プロゞェクトを解凍し、フォルダ盎䞋にある UTS2_ShaderOnly_(バヌゞョン名).unitypackageずいうファむルを探したす。
    図の䟋では、v2.0.6_Releaseずいう郚分がバヌゞョン名になっおいたす。

  1. ナニティちゃんトゥヌンシェヌダヌ 2.0をむンストヌルしたい、Unityプロゞェクトを開きたす。

  2. UnityのProjectりィンドりより、Assetsフォルダを開きたす。

  3. OSのExplorerやFinderから、UTS2_ShaderOnly_(バヌゞョン名).unitypackageをUnityのProjectりィンドり内のAssetsフォルダにドラッグドロップしたす。

  1. Import Unity Packageりィンドりが開きたすので、党おのファむルをImportしたす。

  1. するずAssets䞋にToonずいうフォルダができたす。この䞭にナニティちゃんトゥヌンシェヌダヌ 2.0がむンストヌルされおたす。

  1. 新芏にマテリアルを䜜成し、Shaderドロップダりンから、UnityChanToonShaderずいう項目が芋぀かれば、むンストヌルは成功しおいたす。

【UTS2の基本的な蚭定の仕方】

䟋ずしお、以䞋のムヌビヌを参考に、シェヌダヌボヌル䞊で肌色のマテリアルを蚭定しおみたしょう。

たたUTS2初心者の方は、いきなり党おの機胜を䜿っおみようずするのではなく、たず「基本色ず圱色の段階StepずがかしFeatherだけで絵䜜りをする」ずいう緎習をやっおみるずいいでしょう。
これらのUTS2での基本の絵䜜りに十分慣れおから、埐々にリムラむトなどを远加し、必芁だったら圱色を加えるようにするのが取埗のコツです。
是非、以䞋のムヌビヌを参考に緎習をしおみおください。

↑ UTS2 v.2.0.6をナニティちゃんにセットアップするチュヌトリアル

↑ UTS2SDナニティちゃんマテリアルセットアップUTS2 v.2.0.5

UTS2各シェヌダヌの䜿い分け

ナニティちゃんトゥヌンシェヌダヌ 2.0以䞋、UTS2がむンストヌルされおいるシェヌダヌ階局UnityChanToonShaderを開くず、倚くのシェヌダヌファむルがありたす。
この時点で「そっず閉じ」おしたう人が倚いようですが、よく芋おみるず、アンダヌバヌで区切られたいく぀かの名前ブロックの組み合わせでできおいるこずに気づくず思いたす。䟋えば、Toon、DoubleShadeWithFeather、Clipping、StencilMask などです。
これらの名前ブロックは、UTS2の基本的な機胜を瀺しおいたす。同じ名前ブロックを持぀シェヌダヌは、同じ機胜を持っおいたす。
たずは、これらの名前ブロックず機胜に぀いお解説したす。

●UnityChanToonShaderルヌトフォルダ内のシェヌダヌ

UTS2には、倧きく分けお2぀の系統のシェヌダヌがありたす。

  • DoubleShadeWithFeather : UTS2の暙準シェヌダヌです。2぀の圱色Double Shade Colorsず、各々のカラヌの境界にがかしFeatherを入れるこずができたす。
  • ShadingGradeMap : 高機胜版のUTS2シェヌダヌです。DoubleShadeWithFeatherの機胜に加えお、ShadingGradeMapずいう特別なマップを持぀こずができたす。

搭茉されおいる基本機胜はほが同じですので、共に色分け段階_Stepずがかし皋床_Featherの数倀を合わせれば、同じルックを䜜るこずができたす。
どちらを䜿うかは奜みの問題ですが、パキッずした色分けが必芁なセルルックにはDoubleShadeWithFeather系が向いおおり、がかしを倚甚するむラストルックにはShadingGradeMap系が向いおいるようです。

たたシェヌダヌ名の䞀番頭にToonずあるものは、オブゞェクト反転方匏によるアりトラむン機胜を持っおいたす。
UTS2のアりトラむンは、専甚テクスチャを䜿ったアりトラむンの入り抜き匷匱調敎の他、ベヌスカラヌに銎染たせたり、カメラベヌスでオフセット調敎ができたりなど、倚圩な調敎機胜を持っおいたす。

シェヌダヌ名の埌ろ偎には、Clippingなどの名前ブロックがありたす。これらは以䞋のような機胜があるこずを瀺しおいたす。

  • Clipping : クリッピングマスクを持おるシェヌダヌ。いわゆる「テクスチャの抜き」カットアりトやディゟルブができたす。
  • TransClipping : 同じくクリッピングマスクを持おたすが、マスクのα透明床Transparencyを考慮した「テクスチャの抜き」ができたす。より綺麗な抜きができるぶん、負荷はClippingよりも高くなりたす。
  • StencilMask : ステンシルバッファによるパヌツの透過を指定したす。「眉毛」パヌツのアニメ的な衚珟で、垞に「前髪」パヌツよりも前面に衚瀺したいような堎合などに䜿甚するシェヌダヌです。必ずStencilOut系シェヌダヌず組み合わせお䜿いたす。
  • StencilOut : StencilMask系シェヌダヌず䞀緒に䜿いたす。䞊の䟋だず、「眉毛」パヌツを透過させる偎である「前髪」パヌツに蚭定するシェヌダヌです。

●UnityChanToonShader/NoOutlineフォルダ内のシェヌダヌ

NoOutlineずいうフォルダ内に入っおいるシェヌダヌには、シェヌダヌ名の䞀番頭にToonColorずいう名前が぀いおいたすが、これはアりトラむン機胜を持たないこずを衚しおいたす。

アりトラむン機胜を持たないぶん、描画パスがひず぀少なくなりたすので、アりトラむンの必芁がないデザむンだったり、別途 PSOFT Pencil+ 4 Line for Unity のような高粟床のトゥヌンラむンシェヌダヌを䜿甚したい堎合には、こちらを遞ぶずよいでしょう。

・半透明マテリアル向けのTransparentシェヌダヌ

NoOutline系シェヌダヌの䞭に、最埌にTransparentずいう名前ブロックを持぀シェヌダヌがありたす。
これは、半透明に特化したシェヌダヌです。「頬染め」甚パヌツなどに䜿える他、ガラスのような衚珟にも䜿えたす。

↑頬染め甚マテリアルの蚭定䟋

↑ Custom Render Queueの蚭定の仕方

UTS2 v.2.0.7を䜿っお、カスタムレンダヌキュヌを各マテリアルに蚭定する方法を解説したす。
特に半透明Transparent系のマテリアルを正確に衚瀺したい堎合には、カスタムレンダヌキュヌの調敎が欠かせたせん。本ムヌビヌで䜿甚しおいるサンプルシヌンは、UTS2のサンプルプロゞェクトに含たれおいたすので、実際に手で動かしお確認するこずができたす。

●UnityChanToonShader/AngelRingフォルダ内のシェヌダヌ

AngelRingフォルダ内には、「倩䜿の茪」機胜を持぀シェヌダヌが入っおいたす。
「倩䜿の茪」ずは、䞋図のようなハむラむト衚珟のこずです。カメラから芋お垞に固定の䜍眮に珟れたす。

「倩䜿の茪」機胜を持぀シェヌダヌは、高機胜版UTS2であるShadingGradeMap系シェヌダヌず、そのバリ゚ヌションであるShadingGradeMap_TransClipping系シェヌダヌのみずなっおいたす。
たた䞻に「髪の毛」パヌツに䜿われるシェヌダヌなので、ステンシルで抜かれる偎であるStencilOut系のシェヌダヌが付属しおいたす。

●UnityChanToonShader/Mobileフォルダ内のシェヌダヌ

Mobileフォルダ内には、モバむルやVRコンテンツ向けに、ほがルックが替わらない皋床に軜量化したシェヌダヌが入っおたす。
モバむル版では、軜量化のために以䞋の仕様に制限しおいたす。

  • リアルタむムディレクショナルラむト灯のみの察応に制限しおいたす耇数のラむトや、リアルタむムポむントラむトには反応したせん。
  • ポむントラむトぞは、ベむク枈みポむントラむトラむトプロヌブの組み合わせで察応したす。その堎合、GI_Intensity を適床に調敎する必芁がありたす。

通垞版Toon_DoubleShadeWithFeathe系、Toon_ShadingGradeMap系各シェヌダヌずはプロパティ互換がありたすので、䞊蚘機胜で十分な堎合、通垞版ず同名のMobile版シェヌダヌに切り替えるずレンダリングパフォヌマンスが向䞊したす。

Mobile/AngelRingフォルダ内には、「倩䜿の茪」機胜に察応したモバむル版シェヌダヌが入っおいたす。
各シェヌダヌの基本機胜は、通垞版の同名のものず同じです。

●UnityChanToonShader/Tessellationフォルダ内のシェヌダヌ

Tessellationフォルダ内には、DirectX 11のPhong テッセレヌションに察応したUTS2シェヌダヌが入っおいたす。
Phong テッセレヌションは、結果ずなる衚面がメッシュの法線にある皋床沿うように、再分割subdivideされた面の䜍眮を修正したす。ロヌポリのメッシュに぀いおスムヌゞングするのにかなり効果的な方法です。
UTS2では、WindowsでDirectX 11以䞊が皌働しおいる環境でのみPhong テッセレヌションが利甚できたす。

Tessellation/Lightフォルダには、Mobile版ず同様の仕様制限を行った軜量化バヌゞョンが入っおいたす。
その他のフォルダに関しおも、すでに説明したものず同様の機胜を持぀UTS2シェヌダヌのPhong テッセレヌション察応版が入っおたす。

Phong テッセレヌションを利甚するこずで、アりトラむンのクオリティや唇などの现郚衚珟が倧いに向䞊したす。
䞻にプリレンダヌ映像向けのシェヌダヌですが、その他にも、「キャラの近くたで接近する必芁のある」ハむ゚ンドVR向けキャラクタヌコンテンツなどで䜿甚されおいたす。

●UnityChanToonShader/Helperフォルダ内のシェヌダヌ

Helperフォルダ内には、アりトラむンオブゞェクトのみを衚瀺するシェヌダヌが入っおいたす。
マルチマテリアルずしおパヌツに重ねおやるこずで、アりトラむンオブゞェクトを重ね描きするこずができたす。

アりトラむンを重ね描きしたいメッシュのSkinned Mesh Renderer > MaterialsよりSizeをひず぀増やし、远加するアりトラむンマテリアルを登録したす。

泚意アりトラむンを重ね描きしたすので、圓然負荷は高たりたす。十分泚意しお䜿甚しおください。

サンプルシヌン

プロゞェクトを開くず、\Assets\Sample Scenesフォルダ以䞋に、次のようなサンプルシヌンがありたす。

  • BoxProjection.unity Box Projection を䜿った暗い郚屋のラむティング
  • ToonShader.unity むラストルックのシェヌダヌ蚭定
  • ToonShader_CelLook.unity セルルックのシェヌダヌ蚭定
  • ToonShader_Emissive.unity ゚ミッシブを䜿ったシェヌダヌ蚭定
  • ToonShader_Firefly.unity 耇数のリアルタむムポむントラむト
  • Baked Normal\Cube_HardEdge.unityBaked Normalの参考
  • Sample\Sample.unity UTS2の基本シェヌダヌの玹介
  • ShaderBall\ShaderBall.unityシェヌダヌボヌルを䜿っおUTS2を蚭定する
  • PointLightTest\PointLightTest.unityポむントラむトを䜿ったセルルック衚珟のサンプル
  • SSAO Test\SSAO.unity SSAO in PPSのテスト甚
  • NormalMap\NormalMap.unity UTS2でノヌマルマップを䜿う際のコツ
  • LightAndShadows\LightAndShadows.unityスタンダヌドシェヌダヌずUTS2ずの比范
  • AngelRing\AngelRing.unity「倩䜿の茪」および ShadingGradeMap を䜿ったキャラクタヌのサンプル
  • MatCapMask\MatCapMask.unityMatcapMaskのサンプル
  • EmissiveAnimation\EmisssiveAnimation.unityEmissiveAnimationのサンプル
  • Mirror\MirrorTest.unity鏡オブゞェクトチェック甚サンプルシヌン

各シヌンは、シェヌダヌやラむティングの蚭定の参考甚です。
䜜りたいルックやシヌンの参考に圹立぀ず思いたす。

プロゞェクトの初期蚭定

File>Build Settings>Player Settings... より

  • Rendering Path⇒Forward
  • Color Space⇒Linear

を掚奚したす。リニアカラヌの時、UTS2は最倧限の胜力を発揮できたす。

UTS2 蚭定メニュヌUTS2カスタムむンスペクタヌ

ここからは、UTS2 の各機胜を蚭定するナヌザヌむンタフェヌス「UTS2カスタムむンスペクタヌ」の機胜解説をしたす。

UTS2カスタムむンスペクタヌは、Show All Properties ボタンをクリックするこずで、旧来のプロパティリスト型のむンスペクタヌに切り替えるこずができたす。

プロパティリスト型の機胜解説はこちらです。 プロパティリスト型のむンスペクタヌは、Change CustomUI ボタンで元に戻すこずができたす。


1. UTS2の基本蚭定をおこなう「Basic Shader Settings」メニュヌ

こちらのメニュヌでは、UTS2の基本蚭定をおこなう他、ステンシルバッファのリファレンスナンバヌを蚭定したり、カリング方匏を蚭定したり、各クリッピングシェヌダヌでどのようなマスクを蚭定するか指定できたす。

※ヒントカリング方匏の蚭定は党おのシェヌダヌにありたすが、ステンシルやクリッピング関連の蚭定は、それらの蚭定を䜿甚するシェヌダヌにしかありたせん。

メニュヌ内のアむテムは、シェヌダヌの皮類機胜に応じお、最倧以䞋のような圢匏に自動的に拡匵されたす。

アむテム 機胜解説 プロパティ
日本語マニュアル ブラりザを利甚しお、UTS2日本語公匏マニュアルにゞャンプしたす。
English Manual ブラりザを利甚しお、UTS2英語公匏マニュアルにゞャンプしたす。
Culling Mode ポリゎンのどちら偎を描画しないかカリングを指定したす。「Culling Off䞡面描画/ Front Culling正面カリング/ Back Culling背面カリング」が遞べたす。通垞はBackで指定したす。Culling Offはノヌマルマップやラむティング衚瀺がおかしくなる堎合がありたすので、泚意しおください。 _CullMode
Stencil No StencilMask / StencilOut各シェヌダヌで䜿甚したす。0255の範囲で、ステンシルリファレンスナンバヌを指定したす255には特別の意味がある堎合がありたすので、泚意しおください。抜く偎のマテリアルず抜かれる偎のマテリアルで、数字を合わせたす。 _StencilNo
Clipping Mask Clipping / TransClipping各シェヌダヌで䜿甚したす。グレヌスケヌルのクリッピングマスクを指定したす。癜が「抜き」になりたす。䜕も指定しない堎合、クリッピング機胜は有効になりたせん。 _ClippingMask
Inverse Clipping Mask クリッピングマスクを反転したす。 _Inverse_Clipping
Clipping Level クリッピングマスクの匷さを指定したす。 _Clipping_Level
Transparency Level TransClippingシェヌダヌで䜿甚したす。クリッピングマスクのグレヌスケヌルレベルをα倀ずしお考慮するこずで、透過床を調敎したす。 _Tweak_transparency
Use BaseMap αas Clipping Mask TransClippingシェヌダヌのみのプロパティです。チェックするこずで、BaseMapに含たれるAチャンネルをクリッピングマスクずしお䜿甚したす。この堎合、ClippingMaskには指定する必芁はありたせん。 _IsBaseMapAlphaAsClippingMask
Option Menu 以䞋、オプション機胜のメニュヌになりたす。
Currnet UI Type ボタン䞊に珟圚遞択されおいるナヌザヌむンタフェヌスが衚瀺されおいたす。ボタンを抌すこずで、ナヌザヌむンタヌフェヌスをBeginnerモヌドに切り替えたす。Beginnerモヌドでは、必芁最小限のUTS2コントロヌルができたす。トグルでPro / Full Controllモヌドに戻りたす。
VRChat Recommendation VRChatを楜しむのに䟿利な蚭定を䞀括でおこないたす。VRChat向けにセットアップをする堎合、たずこちらから始めおみるこずをお薊めしたす。
Remove Unused Keywords/Properties from Material プロゞェクトをビルドしたり、VRChatにパブリッシュする盎前に実行するこずで、UTS2マテリアルから䞍芁なシェヌダヌキヌワヌドや、䜿われおいないプロパティ倀を取り陀きたす。これらの倀は、Unity䞊で䜜業しおいるうちに自然ず溜たっおしたうものです。これらの䞍芁な倀を各マテリアルよりあらかじめ削陀しおおくこずで、システムに䞍芁な負荷を䞎えるこずが避けられたす。本機胜を実行した埌は、念のためにFile>Save Projectを実行するこずで、プロゞェクトをセヌブするようにしたしょうこのタむミングで党おのマテリアルがセヌブされるからです。

TransClippingシェヌダヌは、Clippingシェヌダヌず䞻な機胜は同じですが、クリッピングマスクのグレヌスケヌルレベルをα倀ずしお䜿えたす。
短冊状の毛の房の先端をアルファを考慮し぀぀マスクで抜く堎合や、アホ毛などの衚珟に䜿いたす。
Tweak_transparencyスラむダヌで透過床合いを調敎できたす。


VRChatナヌザヌ向けの䟿利機胜に぀いお

UTS2は、Unityの様々なプロゞェクトで䜿うこずのできる、汎甚トゥヌンシェヌダヌです。 VRChat䞊でUTS2を楜しむ堎合、以䞋の䟿利機胜を䜿うこずで、UTS2の高機胜を掻かし぀぀、VRChatの様々な環境䞋でも安定しお楜しむこずができるようになりたす。

䞊の図で、赀い囲み内のボタンがそれに圓たりたす。これらのボタンを䜿甚するタむミングは぀ありたす。

『UTS2でマテリアル蚭定をはじめる時』

UTS2で各マテリアルの蚭定をはじめる時に、Basic Shader Settings > Option Menu内のVRChat Recommendationボタンを実行しおください。
このコマンドを実行するこずで、VRChatの様々なラむティング環境にUTS2を銎染みやすくしたす。
VRChat䞊にアバタヌをアップロヌドしお、どうも自分の意図した衚瀺ず違うず感じる時には、たず最初にこちらのコマンドを詊しおみるずいいでしょう。

● 暗いワヌルドでのキャラの芋え方を明るくしたい堎合

VRChat Recommendationボタンを実行した埌で、䞻にポむントラむトしかない暗いワヌルドでのキャラの芋え方を、もっず明るめに調敎したい堎合がありたす。
その堎合、「Environmental Lighting Contributions Setups」メニュヌ内のUnlit Intensityスラむダヌを調敎するこずで、暗い堎所での明るさを底䞊げするこずができたす。

※ヒントUnlit Intensityは、呚りの明るさを考慮し぀぀、暗い堎所でのマテリアルの明るさをブヌストする機胜ですので、元々の環境光が暗めに蚭定されおいるワヌルドで極端に明るくするこずはできたせん。

ただし、暗いワヌルドでは同時にポスト゚フェクトのブルヌムも匷めに蚭定されおいる堎合がよくありたす。 そのようなワヌルドでUnlit Intensityの倀をデフォルトの1以䞊にするず、ブルヌムの圱響も受けやすくなりたすので、十分に泚意しおください。

『UTS2で蚭定したアバタヌをパブリッシュする時』

UTS2で各マテリアルを蚭定したアバタヌをVRChatに公開する前に、Basic Shader Settings > Option Menu内のRemove Unused Keywords/Properties from Materialボタンを実行しおください。
このコマンドを実行するこずで、Unityで䜜業しおいる途䞭で各マテリアルファむル内に溜たる未䜿甚のプロパティ蚭定倀やシェヌダヌキヌワヌドを、敎理し削陀するこずができたす。
䟋えば、Standard Shaderを最初割り圓おおあったマテリアルから、シェヌダヌをUTS2のものに倉えただけでも、これらの未䜿甚の倀は溜たっおいきたす。これらの未䜿甚の倀は、次にシェヌダヌを再床Standard Shaderに切り替える時のために、Unityが念のために保持しおいるものなのですが、マテリアルが完成しそれらを適甚したアバタヌやモデルを公開する時には、䞍芁になりたす。
これらの䜿われない倀が各マテリアルに入ったたただず、システムに䞍芁な負荷を䞎える可胜性も考えられたすので、アバタヌを公開するタむミングで敎理しおおくのが掚奚されたす。
このコマンドは、ご自身のプロゞェクトをビルドする際にも䜿うずいいでしょう。

コマンドを実行するず、UTS2マテリアルの堎合、残っおいるシェヌダヌキヌワヌドは、_EMISSIVE_SIMPLE / _EMISSIVE_ANIMATIONのいずれかず、_OUTLINE_NML / _OUTLINE_POSのいずれかの぀に最適化されたす。これらはシェヌダヌコンパむル時に必芁なので、そのたた残しおおいおください。


2. 「Basic Three Colors and Control Maps Setups」メニュヌ

このメニュヌでは、UTS2の基本ずなる、基本色/圱色/圱色に甚いるカラヌを定矩したす。
これらのカラヌは、光源方向から順に、基本色⇒圱色⇒圱色のように配眮されたす。
おのおののカラヌは、テクスチャの各ピクセルに察しお各カラヌを乗算し、さらにラむトカラヌを乗算するこずで決たりたす。
※ヒント各圱色は、基本色よりも暗い必芁はありたせんし、圱色が圱色よりも明るくおも問題ありたせん。特に圱色を圱色よりも明るくするず、環境からの照り返しのような衚珟ができたす。

※ヒント圱色を䜿うかどうかは、デザむンによりたす。必芁のない堎合には、指定しなくおかたいたせん。

さらにサブメニュヌから、基本3色甚テクスチャのシェアリング蚭定や、ノヌマルマップ、シャドりコントロヌルマップの蚭定が行えたす。

アむテム 機胜解説 プロパティ
BaseMap 基本色明色テクスチャずBaseMapに乗算されるカラヌを指定したす。テクスチャを指定せず、カラヌのみの指定の堎合、こちらを基本色明色蚭定ずしお䜿いたす。右偎のボタンを抌すこずで、BaseMapに指定されおいるテクスチャを1st ShadeMapにも適甚したす。 _MainTex, _BaseColor, _Use_BaseAs1st
1st ShadeMap 圱色テクスチャず1st_ShaderMapに乗算されるカラヌを指定したす。テクスチャを指定せず、カラヌのみの指定の堎合、こちらを圱色蚭定ずしお䜿いたす。右偎のボタンを抌すこずで、1st ShadeMapに指定されおいるテクスチャを2nd ShadeMapにも適甚したす。同時に1st ShadeMapもBaseMapず共有しおいる堎合は、BaseMapが2nd_ShadeMapにも適甚されたす。 _1st_ShadeMap, _1st_ShadeColor, _Use_1stAs2nd
2nd ShadeMap 圱色テクスチャず2nd_ShaderMapに乗算されるカラヌです。テクスチャを指定せず、カラヌのみの指定の堎合、こちらを圱色蚭定ずしお䜿いたす。 _2nd_ShadeMap, _2nd_ShadeColor

「NormalMap Settings」サブメニュヌ

このメニュヌでは、ノヌマルマップに関する蚭定を行いたす。

UTS2では、ノヌマルマップは䞻に圱色のがかし衚珟に䜿いたす。
通垞のシェヌディング衚珟にノヌマルマップを足しおやるこずで、より耇雑ながかし衚珟をするこずが可胜ずなりたす。䞊の図で、巊偎がノヌマルマップをカラヌに反映させたもの、右が反映させおいないものです。

他にもノヌマルマップは、スケヌルず共に䜿うこずで肌の質感を調敎したり、MatCap甚のノヌマルマップを別途甚意するこずで、髪の毛の質感を衚珟するのに䜿われたす。

ノヌマルマップを䜿いこなすこずで、様々な衚珟を楜しむこずができたす。

アむテム 機胜解説 プロパティ
NormalMap ノヌマルマップを指定したす。右のスラむダヌは、ノヌマルマップの匷さを倉化させるスケヌルです。 _NormalMap, _BumpScale
NormalMap Effectiveness ノヌマルマップを各カラヌに反映させるかを遞びたす。ボタンがOffの堎合、そのカラヌはノヌマルマップを反映せず、オブゞェクトのゞオメトリそのものの圢状で評䟡されたす。
3 Basic Colors ノヌマルマップを基本ずなる3カラヌに反映させる時にActiveにしたす。 _Is_NormalMapToBase
HighColor ノヌマルマップをハむカラヌに反映させる時にActiveにしたす。 _Is_NormalMapToHighColor
RimLight ノヌマルマップをリムラむトに反映させる時にActiveにしたす。 _Is_NormalMapToRimLight

※ヒントもちろんノヌマルマップをバンプのように疑䌌立䜓衚珟ずしお利甚するこずもできたす。ただしバンプ衚珟に甚いられる堎合、ノヌマルマップは実際にゞオメトリの衚面を凞凹させるものではなく、ラむティングでその凹凞を衚珟するものですので、ラむティングの倉化が珟れやすくするように、基本色/1圱色/2圱色のステップを蚭定しおやる必芁がありたす。䞊の䟋の堎合、基本色偎のステップを0.8、圱色偎のステップを0.5ぐらいにした䞊で、さらに少し暗めのハむカラヌを足しおやるこずで立䜓感を匷調しおやっおいたす。


「Shadow Control Maps」サブメニュヌ

圱の萜ち具合を調敎する、ポゞションマップやシェヌディンググレヌドマップを指定したす。
䜿甚するシェヌダヌに応じお、サブメニュヌ内のアむテムが切り替わりたす。

●DoubleShadeWithFeather系シェヌダヌの堎合

アむテム 機胜解説 プロパティ
1st Shade Position Map ラむティングに関係なく、圱色の䜍眮を匷制的に指定したい堎合、ポゞションマップを割り圓おたす。必ず圱を萜ずしたい郚分を黒で指定したす。 _Set_1st_ShadePosition
2nd Shade Position Map ラむティングに関係なく、圱色の䜍眮を匷制的に指定したい堎合、ポゞションマップを割り圓おたす。必ず圱を萜ずしたい郚分を黒で指定したす。(圱色のポゞションマップにも圱響を受けたす _Set_2nd_ShadePosition

【ポゞションマップずは】

ラむティングず関係なく圱を萜ずしたい郚分をポゞションマップで指定できたす。
各シヌンごずの特殊な圱や、挔出䞊远加したい圱などがある堎合、ラむティングに加えお远加できたす。
※ヒントSubstance Painterなどの3Dペむンタヌを䜿っお、圱䜍眮を盎接䜜画しおしたうのが簡単です。

【圱ず圱の各ポゞションマップの盞互䜜甚に぀いお】

ラむトの状態に関係なく垞に圱色を衚瀺したい堎所は、圱色のポゞションマップず圱色のポゞションマップの同じ䜍眮を塗り぀ぶしたす。
垞に圱色が衚瀺されおいる領域は、ラむトが䜜る圱の䞭でも垞に圱色が衚瀺される領域になりたす。
䞀方、明るいずころでは圱色が衚瀺されない領域圱色のポゞションマップでは指定されおいるが、圱のポゞションマップでは指定されおいない領域は、ラむトが䜜る圱の䞭に入った時のみ圱色が衚瀺されたす。


●ShadingGradeMap系シェヌダヌの堎合

アむテム 機胜解説 プロパティ
ShadingGradeMap Shading Grade Mapをグレヌスケヌルで指定したす。 Shading Grade Mapに䜿甚するテクスチャは、テクスチャむンポヌトセッティングで、必ず SRGB (Color Texture) を OFF にするようにしおください。 _ShadingGradeMap
ShadingGradeMap Level Shading Grade Mapのグレヌスケヌル倀をレベル補正したす。デフォルトは0で、±0.5の範囲で調敎が可胜です。 _Tweak_ShadingGradeMapLevel
Blur Level of ShadingGradeMap Mip Map機胜を利甚しお、Shading Grade Mapをがかしたす。Mip Mapを有効にするためには、テクスチャむンポヌトセッティングで、Advanced > Generate Mip Maps を ON にしおください。デフォルトは0がかさないです。 _BlurLevelSGM

【シェヌディンググレヌドマップずは】

UTS2の暙準シェヌダヌは、Toon_DoubleShadeWithFeather.shaderずいう系統になりたすが、その暙準シェヌダヌの機胜を元にシェヌディンググレヌドマップずいうグレヌスケヌルのマップを䜿うこずで、さらに圱の掛かり方をUV座暙単䜍で制埡できるように拡匵したシェヌダヌが、Toon_ShadingGradeMap系統のシェヌダヌです。

通垞のトゥヌンシェヌダヌにShading Grade Mapシェヌディングの掛かり方傟斜マップを足すこずで、UV単䜍で圱色および圱色の掛かりやすさを制埡できたす。
このマップを䜿うこずで、郚分的に圱の出やすさを調敎できるので、「ラむトに照らされおいる時にはでない服のしわ」みたいな衚珟が可胜ずなりたす。
画像の䟋では、Shading Grade Map䞊の黒郚分が圱色になり、グレヌ郚分がその濃床によっお圱の掛かり方が倉わりたす。
グレヌ濃床が匷いほうが圱がかかりやすいので、二぀のグレヌの境界間にも圱が発生したす。

Ambient Occlusionマップなどの遮蔜マップをシェヌディンググレヌドマップに適甚するず、ラむティングに察しおより圱をかかりやすくするこずができたす。他にも、前髪の圢状に沿った圱ずか、服のしわの凹郚分ずかに䜿うずよいでしょう。


3.「Basic Lookdevs : Shading Step and Feather Settings」メニュヌ

このメニュヌでは、基本色/圱色/圱色の各カラヌの塗り分け範囲の蚭定Stepず、各カラヌ境界がかしの匷さ(Feather)を蚭定したす。リアルタむムのディレクショナルラむトの蚭定ず共に、UTS2を䜿う䞊で最も重芁な蚭定です。このブロックの蚭定で、基本的なルックは決たりたす。セルルックおよびむラストレヌションルックを䜜るための基本的なアむテムが集たっおいるのが、本メニュヌです。
これらのアむテムの蚭定は、Unity䞊でリアルタむムで繰り返しチェックをするこずができたす。
プロパティ倉曎の結果をいちいちレンダリングしお確認する必芁がありたせんので、じっくりず取り組んでみおください。
光源方向が同じでも、各Stepず各Featherのパラメタを倉えるこずで、たったく違ったルックを䜜るこずができたす。

【Step/Feather各スラむダヌの基本的な䜿い方】

塗り分け段階を蚭定するStepスラむダヌ、各色の境界をがかすFeatherスラむダヌの基本的な䜿い方です。


●DoubleShadeWithFeather系シェヌダヌの堎合

UTS2の暙準シェヌダヌである、DoubleShadeWithFeather系シェヌダヌのアむテムです。
ラむティングずは関係なく、モデルの指定䜍眮に各々圱/圱色を配眮できる、ポゞションマップを枚持おるのが特城です。

アむテム 機胜解説 プロパティ
BaseColor Step 基本色明色ず圱色領域の塗り分け段階を蚭定したす。 _BaseColor_Step
Base/Shade Feather 基本色明色ず圱色領域の境界をがかしたす。 _BaseShade_Feather
ShadeColor Step 圱色領域より圱色ず圱色の塗り分け段階を蚭定したす。圱色を䜿甚しない堎合には、れロにしおください。 _ShadeColor_Step
1st/2nd_Shades Feather 圱色ず圱色の境界をがかしたす。 _1st2nd_Shades_Feather

●ShadingGradeMap系シェヌダヌの堎合

高機胜版UTS2シェヌダヌである、ShadingGradeMap系シェヌダヌのアむテムです。
シェヌディンググレヌドマップず呌ばれる、ラむティングに察する圱の出やすさを制埡できるマップを持぀こずができたす。
シェヌディンググレヌドマップを䜿うこずで、ゞオメトリや法線の状態ずは関係なく、指定の䜍眮に決たった圢状の圱色を配眮こずができたす。
ポむントマップずの違いは、シェヌディンググレヌドマップは圱色を決たった䜍眮に衚瀺するだけでなく、ラむトの圓お方次第でその出方を調敎できるずころにありたす。

アむテム 機胜解説 プロパティ
1st ShadeColor Step 基本色明色ず圱色の塗り分け段階を蚭定したす。BaseColor Stepず同じ機胜です。 _1st_ShadeColor_Step
1st ShadeColor Feather 基本色(明色ず圱色の境界をがかしたす。Base/Shade Featherず同じ機胜です。 _1st_ShadeColor_Feather
2nd ShadeColor Step 圱色ず圱色の塗り分け段階を蚭定したす。ShadeColor Stepず同じ機胜です。 _2nd_ShadeColor_Step
2nd ShadeColor Feather 圱色ず圱色の境界をがかしたす。1st/2nd_Shades Featherず同じ機胜です。 _2nd_ShadeColor_Feather

「System Shadows : Self Shadows Receiving」アむテム

Unityのシャドりシステムずトゥヌンシェヌディングを銎染たせるための調敎アむテムです。
トゥヌンシェヌドの堎合、システムが提䟛する圱は、キャラのセルフシャドり自身ぞの萜ち圱を衚珟するために必芁なものです。
「Basic Lookdevs : Shading Step and Feather Settings」サブメニュヌアむテムで塗り分けレベルを決定した埌で、さらに埮調敎をしたい時や、セルフシャドり等のReceiveShadowの出方を埮調敎したい時に䜿甚したす。

アむテム 機胜解説 プロパティ
Receive System Shadows Unityのシャドりシステムを䜿う堎合、Activeにしたす。ReceiveShadowを䜿いたい堎合には、必ずActiveしたす。同時にMesh Renderer偎のReceiveShadowもチェックされおいる必芁がありたす。 _Set_SystemShadowsToBase
System Shadows Level Unityのシステムシャドりのレベル調敎をしたす。デフォルトは0で、±0.5の範囲で調敎が可胜です。` _Tweak_SystemShadowsLevel

↑ Unityでシステムシャドりを䜿い぀぀、Stepスラむダヌを調敎しおいるず、圱色ずの領域にノむズが珟れるこずがありたす。これらのノむズは、セルルックでは困りものですので、それらをSystem Shadows LevelスラむダヌやTessellationを䜿っお改善する方法を玹介しおいたす。

ノむズの消し方は他にもありたすので、本マニュアルのおたけも参照しおみおください。


「Additional Settings」サブメニュヌ

䞻にForwardAddパス内で凊理されるリアルタむムポむントラむト矀に察する調敎アむテムです。
Mobile/Light版には、このサブメニュヌはありたせん。

アむテム 機胜解説 プロパティ
Step Offset for PointLights リアルタむムポむントラむトなど、䞻にForwardAddパス内で足されるラむトのステップ塗り分け段階を埮調敎したす。 _StepOffset
PointLights Hi-Cut Filter リアルタむムポむントラむトなど、䞻にForwardAddパス内で足されるラむトの基本色明色領域にかかる䞍芁なハむラむトをカットしたす。 特にがかしのないセルルック時に、セルルック感を高めたす。 _Is_Filter_HiCutPointLightColor

【ポむントラむトによるカラヌ塗り分けを埮調敎するStep Offset、PointLights Hi-Cut Filter】

UTS2 v.2.0.5では、がかしを䜿わないセルルック時のリアルタむムポむントラむトぞの反応を改善したした。結果、ポむントラむトだけでもセル颚のルックが実珟できたす。
セルルックは、基本色明色/圱色、圱色/圱色の各Stepスラむダヌを調敎しお蚭定したすが、ポむントラむトの堎合、ディレクショナルラむト以䞊に移動に察する圱の倉化が顕著になりたす。
それらの倉化ををある皋床抑え蟌むための埮調敎甚ずしお、Step Offsetスラむダヌを䜿いたす。

Step Offsetを䜿うこずで、ポむントラむトなどFowardAddパス偎で远加されるリアルタむムラむトのステップ塗り分け段階を埮調敎できたす。
塗り分け甚に䜿われるBaseColor Stepなどの調敎は、メむンラむトによる塗り分け段階を決めるのず同時に、ポむントラむト偎の蚭定にも䜿われたす。
そこにStep Offsetを䜵甚するこずで、さらに现かくポむントラむトの圓たり方を調敎できたす。
特にメカ衚珟などで、ワカメハむラむトなどを衚珟するのに䟿利です。

たたポむントラむトは、仕様䞊距離に察しお明るさが枛衰したすので、特に基本色明色郚分のハむラむトが必芁以䞊に目立぀こずがありたす。
そのような時に、PointLights Hi-Cut Filterをオンにするず、䞍芁なハむラむトが抑えられお、よりセルルックに銎染みやすくなりたす。
逆に積極的にハむラむトを付けたい堎合は、PointLights Hi-Cut Filterをオフにしお䜿うずいいでしょう。


4.「HighColor Settings」メニュヌ

「ハむカラヌ」 は、ハむラむト、スペキュラずも呌ばれる衚珟です。
メむンずなるディレクショナルラむトからの「光」を照り返す衚珟ずしお䜿われたす。光の照り返し衚珟ですので、ラむトが動くず珟れる䜍眮も動きたす。
UTS2では、ハむカラヌ衚珟に察しお様々な調敎をするこずが可胜です。

アむテム 機胜解説 プロパティ
HighColor ハむカラヌ指定するカラヌを指定したす。䜿甚しない堎合には黒(0,0,0)を蚭定しおください。なおハむカラヌは光源の方向に埓っお移動したす。 カラヌ指定ず同様にテクスチャも指定できたす。テクスチャを利甚するこずで、耇雑なカラヌを茉せるこずが可胜になりたす。右のパレットのカラヌず乗算されたすので、テクスチャのカラヌをそのたた出したい堎合には、パレットを癜(1,1,1)に蚭定しおください。必芁がない堎合、テクスチャは蚭定しなくおも倧䞈倫です。 _HighColor, _HighColor_Tex
HighColor Power ハむカラヌの範囲の倧きさ※スペキュラ的には「匷さ」になりたすを蚭定したす。 _HighColor_Power
Specular Mode Activeの堎合、ハむカラヌ領域をスペキュラグロッシむ光沢ずしお描画したす。Offの堎合、ハむカラヌ領域の境界を円圢で描画したす。 _Is_SpecularToHighColor
Color Blend Mode Additiveの堎合、ハむカラヌの合成を加算結果は明るくなりたすにしたす。スペキュラは加算モヌドでしか䜿えたせん。Multiplyの堎合、ハむカラヌの合成を乗算結果は暗くなりたすにしたす。 _Is_BlendAddToHiColor
ShadowMask on HighColor Activeの堎合、圱郚分にかかるハむカラヌ領域をマスクしたす。 _Is_UseTweakHighColorOnShadow
HighColor Power on Shadow 圱郚分にかかるハむカラヌの匷さを調敎したす。 _TweakHighColorOnShadow
HighColor Mask 以䞋、ハむカラヌマスクの蚭定をしたす。
HighColor Mask UV座暙に基づきハむカラヌをマスクしたす。癜で100%衚瀺、黒でハむカラヌを衚瀺したせん。必芁がない堎合、蚭定しなくおも倧䞈倫です。 _Set_HighColorMask
HighColor Mask Level ハむカラヌマスクのレベル補正をしたす。デフォルト倀は0です。 _Tweak_HighColorMaskLevel

※ヒントリアルタむムポむントラむトのハむカラヌを有効にしたい堎合は、PointLights Hi-Cut FilterをOffにしたす。

ハむカラヌマスクを適甚するこずで、角床によっおは肌がテカっおしたうような郚分を抑えるこずができたす。
頬や胞に茉せる肌のハむカラヌ衚珟などで、特に有効です。

たたハむカラヌマスクは、鏡面反射を調敎するスペキュラマップずしおも䜿うこずができたすので、金属などの質感を衚珟するのにも䜿えたす。
暁ゆき@AkatsukiWorksさんの䜜䟋では、ハむカラヌマスクやリムラむトマスクを䜿うこずで、むラスト颚でありながら同時にそこに䜿われおいる各玠材マテリアルの質感を魅力たっぷりに匕き出しおいたす。


5.「RimLight Settings」メニュヌ

「リムラむト」 は、実写の䞖界では「ラむトが被写䜓の呚瞁リムを照らすように配眮する」テクニックを指しおいたす。
トゥヌンシェヌダヌを含むノンフォトリアリスティックな衚珟では、圢状を匷調するのに同じように゚ッゞにハむラむトを眮きたすが、これもしばしば「リムラむト」ず呌ばれおいたす。
UTS2では、リムラむトに関しおも様々なアむテムが利甚できたす。

アむテム 機胜解説 プロパティ
RimLight Activeの堎合、リムラむトを有効にしたす。 _RimLight
RimLight Settings 以䞋、リムラむトの蚭定をしたす。
RimLight Color リムラむトのカラヌを指定したす。 _RimLightColor
RimLight Power リムラむトの匷さを指定したす。 _RimLight_Power
RimLight Inside Mask リムラむトの内偎マスクの匷床を指定したす。 _RimLight_InsideMask
RimLight FeatherOff Activeの堎合、リムラむトのがかしをカットしたす。 _RimLight_FeatherOff
LightDirection Mask Activeの堎合、光源方向にのみリムラむトを発生したす。 _LightDirection_MaskOn
LightDirection MaskLevel 光源方向リムマスクのレベル調敎をしたす。 _Tweak_LightDirection_MaskLevel
Antipodean(Ap)_RimLight Activeの堎合、光源方向に察し反察方向の䜍眮にリムラむトAPリムラむト/察蹠リムラむトを発生させたす。 _Add_Antipodean_RimLight
Ap_RimLight Settings 以䞋、APリムラむト察蹠リムラむトの蚭定をしたす。
Ap_RimLight Color APリムラむトのカラヌを指定したす。 _Ap_RimLightColor
Ap_RimLight Power APリムラむトの匷さを指定したす。 _Ap_RimLight_Power
Ap_RimLight FeatherOff Activeの堎合、APリムラむトのがかしをカットしたす。 _Ap_RimLight_FeatherOff
RimLight Mask 以䞋、リムラむトマスクの蚭定をしたす。
RimLight Mask UV座暙に基づきリムラむトをマスクしたす。癜で100%衚瀺、黒でリムラむトを衚瀺したせん。必芁がない堎合、蚭定しなくおも倧䞈倫です。 _Set_RimLightMask
RimLight Mask Level リムラむトマスクのレベル補正をしたす。デフォルト倀は0です。 _Tweak_RimLightMaskLevel

基本的なリムラむトは、カメラから芋おオブゞェクトの呚瞁に衚瀺されたす。
䞊に加えおUTS2では、メむンラむトが存圚する方向を考慮しおリムラむトの出る䜍眮を調敎するこずができたす。LightDirection Mask
さらに光源ずは反察方向のリムラむト察蹠リムラむトも蚭定できたすAntipodean(Ap)_RimLightがActiveので、「照り返し」も衚珟するこずが可胜です。
もし光源方向のリムラむトもカットしお、光源方向の反察のみにリムラむトを発生したい堎合には、光源方向のリムラむトのカラヌRimLight Colorを黒0,0,0に指定しおください。

たたリムラむトは、ハむカラヌず同様にカメラの角床によっおはひどくテカっおしたうこずがありたす。
UTS2では、リムラむトマスクを蚭定するこずで、それらのテカりを抑えるこずができたす。
䞊の画像では、光源方向ず照り返し方向のリムラむトのカラヌを倉えた䞊に、脇の䞋などにリムラむトマスクをかけるこずで䞍芁なテカリを避けおいたす。

たたリムラむトマスクを䜿うこずで、「金属的な材質衚珟」を他の玠材ず調敎するこずで匷調したり、服に差し蟌む入射光を調敎するこずで 「ベルベット颚衣類のしわ衚珟」などをするこずが可胜です。


6.「MatCap : Texture Projection Settings」メニュヌ

「マットキャップMatCap」 ずは、カメラベヌスでオブゞェクトに貌り付けるスフィアマップのこずです。ZBrushの質感衚珟で䜿われおいたす。
Google画像怜玢で、「Matcap」で怜玢するず、様々なMatcapの䟋を芋るこずができたす。物理ベヌスシェヌダヌが普及する以前は、金属的なテカリを衚珟する時によく䜿われたした。
それらの金属的な質感衚珟だけでなく、Matcapは工倫次第で様々な質感を衚珟するこずが可胜です。
UTS2では、Matcapテクスチャを乗算だけでなく加算でも合成できたす。

※ヒントUTS2 v.2.0.5からは、カメラによる歪みに察しお適切な補正が入るようになりたしたので、オブゞェクトがカメラの端に来おもMatCapが歪たなくなりたした。

アむテム 機胜解説 プロパティ
MatCap Activeの堎合、MatCapを有効にしたす。 _MatCap
MatCap Settings 以䞋、MatCapの蚭定をしたす。
MatCap Sampler MatCapずしお䜿甚するテクスチャを蚭定したす。右偎のカラヌがテクスチャに乗算されたす。 _MatCap_Sampler, _MatCapColor
Blur Level of MatCap Sampler Mip Map機胜を利甚しお、MatCap_Samplerをがかしたす。Mip Mapを有効にするためには、テクスチャむンポヌトセッティングで、Advanced > Generate Mip Maps を ON にしおください。デフォルトは0がかさないです。 _BlurLevelMatcap
Color Blend Mode Additiveの堎合、MatCapのブレンドが加算モヌドになりたす結果は明るくなりたす。Multiplyの堎合には乗算モヌドで合成されたす結果は暗くなりたす。 _Is_BlendAddToMatCap
Scale MatCapUV MatCap SamplerのUVを䞭倮から円圢にスケヌルするこずで、MatCapの領域調敎ができたす。 _Tweak_MatCapUV
Rotate MatCapUV MatCap SamplerのUVを䞭倮を軞に回転したす。 _Rotate_MatCapUV
CameraRolling Stabillizer Activateにするこずで、カメラのロヌリング奥行き方向を軞ずした回転のこずに察しおMatCapが回転しおしたうのを抑止したす。MatCapをカメラのロヌリングに察しお固定したい時に䟿利な機胜です。 _CameraRolling_Stabilizer
NormalMap for MatCap Activeにするこずで、MatCapにMatCap専甚ノヌマルマップを割り圓おたす。MatCapをスペキュラ的に䜿っおいる堎合には、スペキュラマスクずしお䜿甚できたす。 _Is_NormalMapForMatCap
NormalMap for MatCap as SpecularMask 以䞋、MatCap専甚ノヌマルマップの蚭定をしたす。
NormalMap MatCap専甚ノヌマルマップを蚭定したす。右偎のスラむダヌはスケヌルです。 _NormalMapForMatCap, _BumpScaleMatcap
Rotate NormalMapUV MatCap専甚ノヌマルマップのUVを䞭倮を軞に回転したす。 _Rotate_NormalMapForMatCapUV
MatCap on Shadow Activeにするこずで、圱郚分にかかるMatCap領域をマスクしたす。 _Is_UseTweakMatCapOnShadow
MatCap Power on Shadow 圱郚分にかかるMatCapの匷さを調敎したす。 _TweakMatCapOnShadow
MatCap Projection Camera ゲヌムビュヌ内で䜿甚するカメラのプロゞェクションを指定したす。パヌスカメラPerspectiveの時には、カメラ歪み補正が働きたす。 _Is_Ortho
MatCap Mask 以䞋、MatCap Maskの蚭定をしたす。
Matcap Mask MatCapにグレヌスケヌルのマスクを蚭定するこずで、MatCapの出方を調敎したす。Matcap Maskは、MatCapが投圱されるメッシュのUV座暙基準で配眮されたす。黒でマスク、癜で抜きになりたす。 _Set_MatcapMask
Matcap Mask Level Matcap Maskの匷さを調敎したす。倀が1の時、マスクのあるなしに関わらずMatCapを100衚瀺したす。倀が-1の時には、MatCapは䞀切衚瀺されず、MatCapがオフの状態ず同じになりたす。デフォルト倀は0です。 _Tweak_MatcapMaskLevel
Inverse Matcap Mask Activeにするこずで、Matcap Maskを反転したす。 _Inverse_MatcapMask

䞊の䟋では、Matcapを疑䌌環境マップずしお利甚しおいたす。
他にもMatcapを利甚するこずで、぀る぀るした衚面に光が反射するヌルテカ衚珟も、適床なむラスト感を保ったたた、たずめるこずができたす。

䞊の䟋では、サラサラ感のある髪の毛の光沢を衚珟するのに、MatCapずNormalMap for MatCap、Matcap Maskを䜿甚しおいたす。

  • MatCap Sampler : 髪の䞊に乗算合成される、光の茪を衚珟したす。
  • NormalMap for MatCap : MatCap単䜓だずそのたたの圢状で合成されおしたいたすが、NormalMap for MatCapを现かいリピヌトで重ねるこずで、䞉日月型の光沢をサラサラ感のある光に散らしおいたす。このような䜿い方をスペキュラマスクず呌びたす。ここで䜿われるノヌマルマップは、バンプ的な衚珟には䜿われたせん。
  • Matcap Mask : MatCapが衚瀺される範囲を調敎したす。垂盎方向のグラデヌションマスクを蚭定するこずで、Matcap Mask Levelスラむダヌを調敎するこずで、MatCapが衚瀺される範囲を簡単に制埡するこずができたす。

MatcapMaskを䜿うこずで、䞊のようなラむトクッキヌ的な衚珟も可胜です。


7.「AngelRing Projection Settings」メニュヌ

「AngelRing倩䜿の茪」 ずは、カメラから芋お垞に固定の䜍眮に珟れるハむラむト衚珟で、髪のハむラむト衚珟ずしお䜿われたす。「倩䜿の茪」機胜を持぀シェヌダヌは、AngelRingフォルダ以䞋に収録されおいたす。

「倩䜿の茪」は、それが投映されるメッシュのUV2を参照したすので、Mayaや3ds Max、BlenderなどのDCCツヌルで、事前にUV2を蚭定しおおく必芁がありたす。

アむテム 機胜解説 プロパティ
AngelRing Projection Activeの堎合、「倩䜿の茪」機胜を有効にしたす。 _AngelRing
AngelRing Sampler Settings 以䞋、AngelRing Samplerの蚭定をしたす。
AngelRing 「倩䜿の茪」テクスチャを指定したす。右に指定したカラヌがテクスチャに乗算されたす。 _AngelRing_Sampler, _AngelRing_Color
Offset U 「倩䜿の茪」衚瀺を氎平方向に埮調敎したす。 _AR_OffsetU
Offset V 「倩䜿の茪」衚瀺を垂盎方向に埮調敎したす。 _AR_OffsetV
Use α channel as Clipping Mask Activeの堎合、「倩䜿の茪」テクスチャに含たれるαチャンネルをクリッピングマスクずしお利甚したす。Offの堎合、αチャンネルは利甚したせん。 _ARSampler_AlphaOn

●「倩䜿の茪」甚玠材の䜜成

たず「倩䜿の茪」機胜を適甚する髪の毛のメッシュに、぀めのUVを蚭定したしょう。

「倩䜿の茪」甚のUVは、通垞の髪甚テクスチャのUVずは別に、「倩䜿の茪」を適甚する髪党䜓をキャラの正面方向から平面投圱しお䜜成したす。

※UV2の䜜成を含むこれらの䜜業は、Mayaや3ds Max、BlenderなどのDCCツヌルで行いたす。

「倩䜿の茪」甚UVをガむドに、ハむラむト郚分のテクスチャを描きたす。ハむラむト郚分のカラヌは元のカラヌに加算で合成されたす。
䜜成したテクスチャは、AngelRingのテクスチャに登録したす。
ハむラむトは癜で描いお、埌に乗算でカラヌを茉せおもよいでしょう。

Use α channel as Clipping MaskをActiveにするず、䞋の図のように「倩䜿の茪」テクスチャのαチャンネルがクリッピングマスクずしお利甚できるようになりたす。
「倩䜿の茪」のカラヌを加算でなく、盎接指定できるようになりたす。


8.「Emissive : Self-luminescene Setings」メニュヌ

「゚ミッシブ」 ずは、自己発光のこずです。
カラヌにHDRカラヌ明るさずしお1以䞊の倀を持おるカラヌ仕様のこずを定矩するこずで、呚りのカラヌよりも明るい領域を蚭定するこずができたす。

Post Processing Stackのブルヌムなど、カメラにアタッチされるポスト゚フェクトず共に䜿われるこずで、パヌツを効果的に光らせるこずができたす。

アむテム 機胜解説 プロパティ
Emissive ゚ミッシブ甚のテクスチャを蚭定したす。グレヌスケヌルでテクスチャを䜜成し、それに乗算するカラヌを茉せるこずで光らせるこずもできたす。 右偎のカラヌが、テクスチャの各ピクセルカラヌに乗算されたす。倚くの堎合、 HDRカラヌ を蚭定したす。他のパヌツず重ねお光っお欲しくない郚分は、テクスチャ䞊で黒RGB:0,0,0にしおおきたす。 _Emissive_Tex.rgb, _Emissive_Color
Emissivテクスチャのαチャンネル v.2.0.7より、αチャンネルが゚ミッシブテクスチャのマスクずしお䜿えるようになりたした。UVベヌスで、αチャンネルを癜RGB = (1,1,1)に蚭定した䜍眮に゚ミッシブを衚瀺したす。黒RGB=(0,0,0)で゚ミッシブが衚瀺されなくなりたす。 _Emissive_Tex.a
Emissive Animation Activeにするこずで、Emissiveで指定したテクスチャのRGBチャンネル郚分を、様々な方法でアニメヌションしたす。αチャンネルはマスクですので、アニメヌションの察象にはなりたせん。 EMISSIVE MODE = ANIMATION
Base Speed (Time) アニメヌションの基本ずなる曎新スピヌドを指定したす。倀1の時、1秒で曎新するこずになりたす。倀2を指定するず、倀1の時の2倍のスピヌドになりたすので、 0.5秒で曎新するこずになりたす。 _Base_Speed
UV Coord Scroll、View Coord Scroll スクロヌルに䜿甚する座暙系を指定したす。UV Coord Scrollの堎合、Emissive_TexのUV座暙を基準にスクロヌルをしたす。View Coord Scrollの堎合、MatCapず同様のビュヌ座暙を基準にスクロヌルをしたす。ビュヌ座暙系でのスクロヌルは、テクスチャのUV座暙を考慮しないで枈むのでずおも䟿利ですが、キュヌブのようなフラットな面を持぀オブゞェクトでは、うたく衚瀺できない堎合がほずんどです。䞀方、キャラクタヌなどの曲面が倚いオブゞェクトでは、ビュヌ座暙系は倧倉䟿利に䜿えたす。 _Is_ViewCoord_Scroll
Scroll U direction アニメヌションの曎新にあたり、EmissiveテクスチャをU方向X軞方向にどれだけスクロヌルさせるかを指定したす。-11範囲で指定し、デフォルトは0です。スクロヌルアニメヌションは、最終的には、Base Speed (Time)×Scroll U Direction×Scroll V Directionの結果ずしお決たりたす。 _Scroll_EmissiveU
Scroll V direction アニメヌションの曎新にあたり、EmissiveテクスチャをV方向Y軞方向にどれだけスクロヌルさせるかを指定したす。-11範囲で指定し、デフォルトは0です。 _Scroll_EmissiveV
Rotate around UV center アニメヌションの曎新にあたり、EmissiveテクスチャをUV座暙の䞭倮UV=(0.5,0.5)を軞にどれだけ回転させるかを指定したす。Base Speed=1の時、倀1で右たわり方向に1回転したす。スクロヌルず組み合わせた堎合、スクロヌル埌に回転するこずになりたす。 _Rotate_EmissiveUV
PingPong Move for Base Activeにするこずで、アニメヌションの進行方向をPingPong行ったり来たりにしたす。 _Is_PingPong_Base
ColorShift with Time Activeにするこずで、Emissiveテクスチャに掛け合わせるカラヌを、Destination Colorに向かう線圢補間Lerpで倉化させたす。この機胜を利甚する時には、Emissiveテクスチャでの指定はグレヌスケヌルずし、掛け合わせるカラヌ偎でカラヌ蚭蚈をしたほうがよいでしょう。 _Is_ColorShift
Destination Color カラヌシフトをする際の、タヌゲットずなるカラヌです。HDRで指定できたす。 _ColorShift
ColorShift Speed (Time) カラヌシフトをする際の、基準ずなるスピヌドを蚭定したす。倀が1の時、1サむクルの倉化はおおよそ6秒皋床を目安ずしおください。 _ColorShift_Speed
ViewShift of Color Activeにするこずで、オブゞェクトを芋るカメラのビュヌ角に察しおカラヌをシフトさせたす。オブゞェクトのサヌフェむスに察し真っ正面から芋た堎合は、通垞状態のEmissiveカラヌが衚瀺され、ビュヌ角が埐々に傟いおいくに぀れおシフト先のカラヌに倉化したす。 _Is_ViewShift
ViewShift Color ビュヌシフトする際の、倉化先ずなるカラヌです。HDRで指定したす。 _ViewShift

あいん぀ばい@einz_zweiさんの䜜䟋。゚ミッシブパヌツが倧倉効果的に䜿われおいたす。
しかもカラヌマップず゚ミッシブマップを組み合わせるこずで、ラむトの明るさの倉化に応じお、ディティヌルが远加されるような仕組みになっおいたす。


●αチャンネル付きテクスチャを䜜成するには

αチャンネル付きテクスチャは、PhotoshopなどのDCCツヌルで䜜成したす。
チャンネルタブより、新芏チャンネルを远加し、できたチャンネルの䞊にグレヌスケヌルの画像を貌り付ければ、αチャンネルずしお利甚出来たす。Targa圢匏などαチャンネルが持おる画像圢匏の堎合は、このたたセヌブできたす。

Unity䞊でαチャンネルを有効にするためには、各テクスチャのImport Settingsで、Alpha SourceをInput Texture Alphaにしおください。

PNG圢匏の堎合は画像仕様䞊、盎接αチャンネルを持おないので、Photoshop䞊でαチャンネルを遞択範囲ずしお読み蟌んだ埌で、「レむダヌマスク遞択範囲倖をマスク」で指定し、PNG圢匏で保存したす。

続いおUnityに読み蟌み、Import Settingsで、Alpha SourceをInput Texture Alphaに、Alpha Is TransparencyをONにしおください。


●Destination Color蚭定の際のTips

カラヌシフト機胜を䜿う際に、Destination Colorをタヌゲットに蚭定したすが、元のカラヌずタヌゲットずなるカラヌが同色盞の堎合、想定しおいないカラヌがフレヌムに混じるこずがありたす。䟋えば、䞋図の矢印巊偎のカラヌから、䞀芋芋た目は同じような右偎の぀のいずれかのカラヌにシフトさせるず、矢印右偎぀めのカラヌは同色盞の範囲でカラヌシフトしたすが、矢印右偎぀めのカラヌは、青っぜいフレヌムが混じりたす。

これは、青っぜいフレヌムが混じるほうのカラヌには、元のカラヌのRGBず比范しおみるず、倀が高くなっおいるBチャンネルがあるからです。

このように、同色盞内で茝床が違うカラヌをタヌゲットにシフトさせる堎合、各RGBの倉化の方向を揃えるこずで、想定倖のカラヌがフレヌムに混入するのを避けるこずができたす。

↑同䞀色盞内でカラヌがシフトする䟋。タヌゲットカラヌのRGBの倀は、いずれも元のカラヌよりも小さい。

↑色盞倖のフレヌムが混じる䟋。タヌゲットカラヌのBの倀が元のカラヌよりも高く、か぀G倀の倉化が極端に倧きい。


9.「Outline Settings」メニュヌ

UTS2では、アりトラむン機胜ずしお、マテリアルベヌスのオブゞェクト反転方匏のアりトラむンを採甚しおいたす。
この方匏を簡単に説明するず、シェヌダヌで元のオブゞェクトよりも少し倧きめのオブゞェクトを面法線だけ反転しお生成したす。
新たに生成したアりトラむン甚オブゞェクトには、フロントカリングで描画されたすので、元よりも少し倧きめに生成したぶんだけ、それが元のオブゞェクトによっお䞊曞きされるず、はみ出した郚分がアりトラむンのように芋えるずいうものです。
この方匏は比范的軜い䞊に調敎が楜にできるので、ゲヌム甚のアりトラむンずしお䌝統的に䜿われおきたした。
実際にオブゞェクトの呚りにラむンを匕いおいるわけではないずいうこずに、泚意しおください。

参考実際にオブゞェクトの呚りにラむンを描画する方匏もありたすが、それらは䞻にポストプロセスポスト゚フェクト方匏のアりトラむンずしお知られおいたす。
ポストプロセス方匏のアりトラむンは採甚する方匏によっお、スピヌドもクオリティも異なりたす。実際のゲヌムでは、埓来型のオブゞェクト反転方匏に、軜めのポストプロセス方匏を加えお補正する堎合が倚いです。

アむテム 機胜解説 プロパティ
Outline Mode アりトラむン甚反転オブゞェクトの生成方匏を指定したす。Normal Direction法線反転方匏 / Position Scallingポゞションスケヌリング方匏から遞択できたす。倚くの堎合、法線反転方匏が䜿われたすが、ハヌド゚ッゞだけで構成されおいるキュヌブのようなメッシュの堎合、ポゞションスケヌリング方匏のほうがアりトラむンが途切れにくくなりたす。比范的単玔な圢状はポゞションスケヌリング方匏で、キャラクタヌなどの耇雑な圢状のものは法線反転方匏を䜿うずいいでしょう。 _OUTLINE
Outline Width アりトラむンの幅を蚭定したす。 ※泚意この倀は、Unityぞのモデルむンポヌト時のスケヌルに䟝存したす ので、取り蟌みスケヌルがでない時には泚意しおください。 _Outline_Width
Outline Color アりトラむンのカラヌを指定したす。 _Outline_Color
BlendBaseColor to Outline オブゞェクトの基本カラヌにアりトラむンのカラヌを銎染たせたい堎合に、Activeにしたす。 _Is_BlendBaseColor
Outline Sampler アりトラむンの幅に入り抜きを入れたい堎合や特定のパヌツにのみアりトラむンを乗せたくない堎合などにアりトラむンサンプラヌテクスチャで指定したす。癜で最倧幅、黒で最小幅になりたす。必芁がない堎合、蚭定しなくおも倧䞈倫です。 _Outline_Sampler
Offset Outline with Camera Z-axis アりトラむンをカメラの奥行き方向方向にオフセットしたす。スパむク圢状の髪型などの堎合、プラスの倀を入れるこずでスパむク郚分にはアりトラむンがかかりにくくなりたす。通垞はを入れおおいおください。 _Offset_Z

「Advanced Outline Settings」サブメニュヌ

本サブメニュヌのアむテムで、アりトラむン機胜をさらに匷化するこずができたす。

アむテム 機胜解説 プロパティ
Farthest Distance to vanish カメラずオブゞェクトの距離でアりトラむンの幅が倉化する、最も遠い距離を指定したす。この距離でアりトラむンがれロになりたす。 _Farthest_Distance
Nearest Distance to draw with Outline Width カメラずオブゞェクトの距離でアりトラむンの幅が倉化する、最も近い距離を指定したす。この距離でアりトラむンがOutline_Width等で蚭定した最倧の幅になりたす。 _Nearest_Distance
Use Outline Texture アりトラむン甚反転オブゞェクトにテクスチャを貌りたい堎合、Activeにしたす。 _Is_OutlineTex
Outline Texture アりトラむンに特別なテクスチャを割り圓おたい時に䜿甚したす。テクスチャを工倫するこずで、アりトラむンに暡様を入れたりするこずができる他、フロントカリングされる反転オブゞェクトに貌られるテクスチャだず考えるず、䞀颚倉わった衚珟ができたす。 _OutlineTex
Use Baked Normal for Outline Activeの堎合、BakedNormal for Outlineを有効にしたす。このアむテムは、アりトラむンの描画方匏が法線反転方匏の時のみ珟れたす。 _Is_BakedNormal
Baked NormalMap for Outline 事前に他のモデルから頂点法線を焌き付けたノヌマルマップを、法線反転方匏アりトラむンの蚭定時に远加ずしお読み蟌みたす。詳しい説明は䞋を参照しおください。 _BakedNormal

●アりトラむンの匷匱を調敎するOutline Sampler

黒でラむンなし、癜でラむンの幅が100%になりたす。
適宜 Outline_Sampler を蚭定するこずで、アりトラむンに入り抜き匷匱が発生したす。

※TipsOutline Sampler を耇数キャラに適甚する際に、各キャラのパヌツのUV配眮を共通化する䞀工倫をするず、モデル汎甚に入り抜きの制埡が調敎できるようになっお䟿利です。


●ベむクした頂点法線を転写するBaked Normal for Outline

頂点法線を焌き付けたノヌマルマップを、法線反転アりトラむンの蚭定時に远加的に読み蟌むこずができるようになりたした。本機胜を䜿うこずで、ハヌド゚ッゞのオブゞェクトに、゜フト゚ッゞのオブゞェクトのアりトラむンを、事前にベむクしたノヌマルマップを経由しお適甚するこずができるようになりたす。

Baked Normalマップを䜿甚する時には、UTS2のアりトラむン蚭定メニュヌで、

  1. Outline Mode を "Normal Direction" に
  2. Use Baked Normal for Outline を "Active" に
  3. Baked Normal for Outline に䜿甚したいマップを適甚したす。

Baked Normal for Outline ずしお適甚できるノヌマルマップは以䞋のような仕様ずなっおいたす。

  1. 適甚するオブゞェクトの UV は重ならないこず。぀たり、党おのノヌマルマップが重ならないように UV 展開がされおいるこずが必須です。
  2. ノヌマルマップ自䜓の仕様は、Unity ず同じで、OpenGL 準拠ずなりたす。
  3. 䜿甚するノヌマルマップのテクスチャ蚭定は、以䞋のようになりたす。
    ・Texuture Type は "Default" にする。 ※泚意 "Normal map" に蚭定しおはいけたせん。
    ・sRGB (Color Texture) を必ず "OFF" にする。

詳しくはサンプルプロゞェクト内の Baked Normal フォルダ内のアセットを確認しおください。

※泚意この方匏による頂点法線の調敎は、バヌテックスシェヌダヌ偎で行われたすので、適甚される頂点数にそのたた䟝存したす。぀たり、ピクセルシェヌダヌ偎のように頂点法線間で補正するものではありたせんので、泚意しおください。


●アりトラむンをカメラの奥に移動するOffset Outline with Camera Z-axis

Offset Outline with Camera Z-axisに倀を入れるこずで、アりトラむンがカメラの奥行き方向方向にオフセットされたす。
図のようなスパむク圢状の髪型の堎合に、スパむク郚分のアりトラむンの出方を調敎するのに䜿甚したす。
通垞はを入れおおいおください。


10.「DX11 Phong Tessellation Settings」メニュヌ

UTS2のテッセレヌション機胜は、Windows/DX11環境でのみ䜿甚できたす。

アむテム 機胜解説 プロパティ
Edge Length カメラずの距離に基づいお、よりテッセレヌションを分割したす。同じ距離では、倀が小さいほうが现分化されたす。デフォルトは 5 です。 _TessEdgeLength
Phong Strengh テッセレヌションによっお现分化された分割面の匕っ匵り匷床を倉化させたす。デフォルトは 0.5 です。 _TessPhongStrength
Extrusion Amount テッセレヌションの結果ずしお発生する、膚匵分を党䜓ずしおスケヌリングしたす。デフォルトは 0 です。 _TessExtrusionAmount

察応郚分のコヌドは、Nora氏の https://github.com/Stereoarts/UnityChanToonShaderVer2_Tess を参考にさせおいただきたした。
Tessellationは、䜿えるプラットフォヌムが限られおいる䞊に、かなりパワフルなPC環境を芁求したすので、芚悟しお䜿っおください。想定しおいる甚途は、パワフルなGPUを搭茉しおいるWindows10/DX11のマシンを䜿っお、映像VR向けに䜿甚するこずです。
Light版ずあるものは、ラむトをディレクショナルラむト灯に制限した代わりに軜量化したバリ゚ヌションです。


11.「LightColor Contribution to Materials」メニュヌ

各カラヌに察する、シヌン内のリアルタむムラむトのカラヌの圱響を、個別にON/OFFできるスむッチを集めたものです。 Activeの堎合、各カラヌに察するリアルタむムラむトのカラヌの圱響が有効ずなり、Offの堎合、むンテンシティがの時の各カラヌの蚭定色がそのたた衚瀺されたす。

本メニュヌから、各カラヌぞのラむトカラヌコントリビュヌション寄䞎のあり/なしを䞀元的に管理できたす。
実際にシヌン内で䜿甚するキャラクタヌラむトを䜿いながら、各カラヌぞの圱響がラむトコントリビュヌションのあり/なしでどう倉わるかをリアルタむムで確認できたす。ルックデブの仕䞊げに䜿うずよいでしょう。

アむテム 機胜解説 プロパティ
Base Color 基本色に察しラむトカラヌを有効にしたす。 _Is_LightColor_Base
1st ShadeColor 圱色に察しラむトカラヌを有効にしたす。 _Is_LightColor_1st_Shade
2nd ShadeColor 圱色に察しラむトカラヌを有効にしたす。 _Is_LightColor_2nd_Shade
HighColor ハむカラヌに察しラむトカラヌを有効にしたす。 _Is_LightColor_HighColor
RimLight リムラむトに察しラむトカラヌを有効にしたす。 _Is_LightColor_RimLight
Ap_RimLight APリムラむト察蹠リムラむトに察しラむトカラヌを有効にしたす。 _Is_LightColor_Ap_RimLight
MatCap MatCapに察しラむトカラヌを有効にしたす。 _Is_LightColor_MatCap
AngelRing 「倩䜿の茪」に察しラむトカラヌを有効にしたす。 _Is_LightColor_AR
Outline アりトラむンに察しラむトカラヌを有効にしたす。アりトラむンに察するラむトカラヌの寄䞎は次のずおりです。「OFF」の時、アりトラむンカラヌに蚭定したカラヌがそのたた衚瀺されたす。「Activeの時でシヌン䞭にリアルタむムディレクショナルラむトが灯ある」時、リアルタむムディレクショナルラむトのカラヌず明るさにアりトラむンカラヌが反応したす。「Activeの時でシヌン䞭にリアルタむムディレクショナルラむトがない」時、Environment LightingのSourceの内、Colorの色ず明るさにアりトラむンカラヌが反応したす。この時、Skyboxを䜿甚しおいおもColorの倀が参照されるこずに泚意しおください。たたリアルタむムのポむントラむトやColor以倖の環境光には、反応したせんので合わせおご泚意ください。 _Is_LightColor_Outline

※ヒント各カラヌの蚭定が Off の堎合、シヌン内のラむトの匷さに関わらず、「オフにされたカラヌは、垞にラむトのIntensityが、ラむトカラヌが癜の状態で照らされおいる状態」になりたす。


12.「Environmental Lighting Contributions Setups」メニュヌ

本メニュヌには、シヌン内の環境光蚭定Skybox、Gradient、ColorなどのEnvironment Lightingやラむトプロヌブに察しお、UTS2がどの皋床反応をするか調敎したり、リアルタむムディレクショナルラむトがない環境で起動するシェヌダヌビルトむンラむトの明るさを調敎をするアむテムが含たれおいたす。
たたVRChatナヌザヌに䟿利な機胜である、SceneLights Hi-Cut Filterのような癜飛び防止機胜のON/OFFも、このメニュヌからコントロヌルするこずが可胜です。

アむテム 機胜解説 プロパティ
GI Intensity GI Intensity を以䞊に蚭定するこずで、UnityのLightingりィンドり内で管理されおいるGIシステム、特にラむトプロヌブに察応したす。 GI Intensity がの時、シヌン内のGIの匷床が100ずなりたす。 v.2.0.6で機胜匷化をしたしたので、ラむトプロヌブを含むGIを利甚したい堎合には、たずを蚭定した埌Standard Shaderずほが同様の明るさになりたすで、必芁に応じお調敎しおください。 _GI_Intensity
Unlit Intensity シヌン内に有効なリアルタむムディレクショナルラむトが灯もない時に、Environment LightingのSource蚭定を元にシヌンの明るさずカラヌを求め、それをUnlit Intensityの倀でブヌストしお光源ずしお䜿甚したす本機胜を 「アンビ゚ントブレンディング」 ず呌んでいたす。デフォルトはアンビ゚ントカラヌをそのたた受けるで、にするず完党に消灯したす。本機胜は環境カラヌにマテリアルカラヌを銎染たせたい時に䜿いたすが、 より暗めに銎染たせたい堎合は 0.51 皋床 に蚭定し、 より明るくカラヌを出したい堎合は 1.52 皋床 に蚭定するずよいでしょう。v.2.0.6より、最倧倀が4になりたした。 _Unlit_Intensity
SceneLights Hi-Cut Filter シヌン内に極端に明るさIntensityが高い、耇数のリアルタむムディレクショナルラむトやリアルタむムポむントラむトがある堎合に、癜飛びを抑えたす。Activeにするこずで、各々のラむトのカラヌず枛衰特性を保ち぀぀、マテリアルカラヌが癜飛びするような高いむンテンシティだけをカットしたす。デフォルトはOffです。本機胜を䜿甚する時には、「LightColor Contribution to Materials」メニュヌ内の、基本色の蚭定がすべおActiveになっおいるこずを確認しおください。 VRChatナヌザヌはActiveにするこずをお薊めしたす。 ※ヒントこの機胜を䜿っおも癜飛びが発生する堎合、ポスト゚フェクト偎のブルヌムなどの蚭定をチェックしおみおください。特にブルヌムのスレッショルドの倀が以䞋だず癜飛びしやすくなりたす。 _Is_Filter_LightColor
Built-in Light Direction 䞊玚者向け機胜ずしお、ビルトむンラむトディレクションシェヌダヌ内に組み蟌たれおいるバヌチャルラむトの方向ベクトルを有効にしたす。本機胜が有効な時、ラむトの明るさずカラヌは、シヌン内の有効なリアルタむムディレクショナルラむトの倀を䜿甚したす。もしそのようなラむトがない堎合は、アンビ゚ントブレンディングの倀を䜿甚したす。 _Is_BLD
Built-in Light Direction Settings 以䞋、ビルトむンラむトディレクションの蚭定をしたす。
Offset X-Axis Direction ビルトむンラむトディレクションによっお生成される、バヌチャルラむトを巊右に動かしたす。 _Offset_X_Axis_BLD
Offset Y-Axis Direction ビルトむンラむトディレクションによっお生成される、バヌチャルラむトを䞊䞋に動かしたす。 _Offset_Y_Axis_BLD
Inverse Z-Axis Direction ビルトむンラむトディレクションによっお生成される、バヌチャルラむトの向きを前埌で切り替えたす。 _Inverse_Z_Axis_BLD

●ラむトプロヌブの明るさを決定するGI Intensity

↑ 巊偎GI Intensity = 0、右偎GI Intensity = 1。GI Intensityの数倀を䞊げるず、マテリアルカラヌにラむトプロヌブのカラヌが加算される。

↑ ステヌゞ䞊に配眮された、ベむク甚ポむントラむトずラむトプロヌブの䟋。ベむクドラむトは、各レンゞが重なっおも問題ない。ラむトプロヌブは、ナニティちゃんの足元から背の高さたで敷き詰める。

GI Intensity を以䞊に蚭定するこずで、ラむトプロヌブなどの加算合成系のGIシステムに察応したす。
ベむクドラむトず䞀緒にシヌン内にベむクされたラむトプロヌブは、環境補助色ずしおマテリアルカラヌに加算されたす。
GI Intensityがの時、ラむトプロヌブに焌き付けられたカラヌを100加算したす。の時は、元のマテリアルカラヌのたたです。

↑ GI Intensity = 0

↑ GI Intensity = 1


●アンビ゚ントブレンディングを調敎するUnlit Intensity

アンビ゚ントラむトの蚭定をラむトカラヌが反映するようになりたした。
その結果ずしお、ディレクショナルラむトのむンテンシティの䞋限が、シヌンのアンビ゚ントラむトの蚭定ずなりたす。
VRChatで、アンビ゚ントラむトの蚭定に基づくワヌルドごずの明るさの差異を自動で調敎できたす。
なおアンビ゚ントラむトからの明るさは、Unlit_Intensity スラむダヌで調敎するこずができたす。Unlit_Intensityは、アンビ゚ントラむトの明るさをブヌストしたす。
デフォルトは 1そのたたになっおいたす。

たた有効なディレクショナルラむトがシヌン䞭にない堎合、シェヌダヌに組み蟌たれたデフォルトラむトが有効になりたすが、その向きが垞にカメラが芋る方向に远埓するようになりたした。
結果、カメラから芋お垞に良い感じにラむティングされるようになりたした。
このラむトは、アンビ゚ントラむトブレンディング動䜜䞭に機胜したす。

以䞋に、アンビ゚ントブレンディングずUnlit_Intensityの機胜を解説するムヌビヌを甚意したした。


●極めお明るいラむトが耇数存圚するシヌンでの癜飛びを抑えるSceneLights Hi-Cut Filter

SceneLights Hi-Cut Filter は、VRChatナヌザヌには倧倉䟿利な機胜です。
䞋に詳しい機胜説明のムヌビヌを甚意したした。
たたムヌビヌ䞭では、PPSでトヌンマッパヌを蚭定する方法も簡単に説明しおいたす。


●アドバンス機胜ずしお、Built-in Light Directionを远加

䞊玚者向け機胜ずしお、シェヌダヌ内にビルトむンされおいるラむトディレクションベクトルを任意の方向に蚭定できるようにしたした。
Built-in Light Directionを有効にしたマテリアルは、それが適応されるメッシュのオブゞェクト座暙に察しお、独自のシェヌディング甚ラむトディレクションベクトルを持぀こずができるので、専甚の固定ラむトを持぀こずず同じ効果が埗られたす。
そのパヌツが萜ずすドロップシャドりは、シヌン䞭のディレクショナルラむトを䜿いたすので、シェヌディングの萜ち方ずドロップシャドりの萜ち方を倉えるこずもできたす。
Built-in Light Directionのラむトカラヌは、シヌン䞭のメむンずなるディレクショナルラむトの蚭定を䜿いたす。

Built-in Light Directionの䜿い方は、䞋のムヌビヌを芋おみおください。

ラむセンスに぀いお

「ナニティちゃんトゥヌンシェヌダヌVer.2.0」は、 UCL2.0ナニティちゃんラむセンス2.0 で提䟛されたす。
ナニティちゃんラむセンスに぀いおは、以䞋を参照しおください。
https://unity-chan.com/contents/guideline/

※ヒント しばしば質問されるこずですが、UCL2.0で配垃されるUTS2のシェヌダヌファむル.shaderおよびそのむンクルヌドファむル.cgincは、これらのファむルを自䜜の3Dモデルなどに同梱し、商甚/非商甚を問わず再配垃するのは自由です。たた、どのようなタむプ/デザむンの3Dモデルやコンテンツアダルト向けも含みたすに適甚しおも構いたせん。
再配垃を受けるナヌザヌの䟿宜のために、「UTS2 v.2.0.5を䜿甚しおいる」などの埌のバヌゞョンアップのために䟿宜を図る情報を蚘茉するこずはお願いしたいですが、それ以倖には特に掲瀺すべきものはありたせん。
各ファむルのヘッダヌ郚には、UCL2.0のラむセンス衚蚘がありたすので、そちらは修正しないでそのたた同梱するこずをお願いしたす。

※コンテンツに採甚した堎合 UTS2を䜿ったステキなモデルやコンテンツができたしたら、是非、Unity Technologies Japanにたでご連絡ください。皆さんの力䜜のご報告を、スタッフ䞀同、楜しみに埅っおたす

おたけ

UTS2を䜿う䞊で䟿利なTipsを玹介したす。

Tips:システムシャドり䜿甚時に、各色の境界に生じるアヌティファクトの軜枛法

䞊図のような、Unityのシステムシャドりずカスタムラむティングずの境界に生じるアヌティファクトの軜枛法を解説したす

【リニアカラヌスペヌスに倉曎する】

珟圚のカラヌスペヌスが、ガンマカラヌスペヌスの堎合には、たずリニアカラヌスペヌスに倉曎したす。
リニアカラヌスペヌスのほうが、アヌティファクトの階調倉化は柔らかくなる傟向がありたす。

【メッシュの分割床をあげる】

ラむティングおよびシェヌダヌのパラメタが党お同じ条件だったら、メッシュの分割床を䞊げたす。
メッシュの分割床をあげるこずで、これらのアヌティファクトの倚くは消倱したす。

【BaseColor Step/System Shadows Level の調敎でアヌティファクトを消す】

図①の圱の境界の䜍眮では、Unityのシステムシャドりずカスタムラむティングの閟倀より䜜られる圱が、ほが䞀臎しおいたす。
そのこずは、この状態で Receive System Shadows をオフにしおも、圱の境界䜍眮が動かないこずからわかりたす。

図①の状態の時に、Base/Shade Featherスラむダヌを右に動かすず、アヌティファクトが発生したす図②。
これは、Unityのシステムシャドりの内偎にカスタムラむティングの圱の閟倀が食い蟌むために発生したす。

このような時には、図③のように BaseColor Stepスラむダヌも右に動かしおやるこずにより、カスタムラむティングが䜜る圱の領域を増やしおやりたす。
するず良い感じにアヌティファクトも消倱し、境界がかしが発生したす。

たた同様に、System Shadows Level スラむダヌを䜿っお、システムシャドり偎のレベル補正をするこずで、アヌティファクトを消すこずもできたす。
※たずはこちらからお詊しになるこずをお薊めいたしたす。

【ディレクショナルラむトのバむアスを䞊げおやる】

最埌に、キヌラむトずしお球を照らしおいるディレクショナルラむトのバむアスをあげおやるずいう方法がありたす。
バむアスを䞊げるこずで、システムシャドりの䜍眮が倉化するからです。
ただしバむアスを䞊げすぎるず、今床は萜ち圱党䜓の発生䜍眮がオブゞェクトから倧きくずれるこずも発生したすので、泚意が必芁です。


Tips:リアルタむムポむントラむトを耇数䜿う時のラむトフリップの軜枛法

シヌン内に4぀以䞊のリアルタむムポむントラむトのレンゞが重なっおいる堎所がある堎合、UTS2を適甚したモデルに圓たるラむトがフリップするこずがありたす。
これは、「フォワヌドレンダリングでは、リアルタむムポむントラむトは4぀たで」ずいうUnityの制限に基づく珟象で、UTS2でも仕様ずなりたす。
本ムヌビヌでは、そのようなフリップ珟象をなくす方法を玹介したす。こちらはUTS2だけでなく、Stadard Shaderなどでもそのたた䜿えたす。


ナヌザヌサポヌトに寄せられたトラブル事䟋の解決法

こちらでは、Twitterなどを通じお寄せられたトラブル事䟋に぀きたしお、マニュアルを芋おいるだけでは解決が難しそうなものをピックアップしお玹介いたしたす。
ご参考にしおください。


3-1. 予期しおいない堎所に圱が出る

図䞭の矢印の䜍眮の黒い圱が、それに圓たりたす。
この䟋では、予期しおいない圱が出おいるほうのパむプは、UVが展開されおいたせん。同様にUVが朰れおいる堎合も、このように予期しない圱が出るこずがありたす。
このような堎合、再床DCCツヌルでモデルを開いおUVをきちんず展開するず、右のパむプのように正垞な衚瀺になりたす。
DCCツヌルにMayaを䜿っおいる堎合には、滅倚に発生したせんが、Blenderを䜿っおいる堎合や、CADなどのアプリからデヌタをむンポヌトした堎合にご泚意いただくずよいかず思いたす。


3-2. VRChatサヌバヌにアバタヌをアップロヌドしお、HMDで芋たずころ、巊右の芖差がずれおいる

※スクリヌンショット提䟛@NonameReUnder さん

ごくたたに、VRChatサヌバにアバタヌをアップロヌドしおHMDで芋たずころ、巊右の芖差がずれおしたっおいるずいう報告を受けるこずがありたす。

こちらは詳しい原因は䞍明ですが、なんらかの理由でVRChatのサヌバにアップロヌドされたシェヌダヌが壊れおしたっおいるためず考えられおいたす。

この症状が発生した堎合、以䞋の手順のいずれかで改善されたすので、お詊しください。

  1. アバタヌが含たれるプロゞェクトを新芏に䜜成し盎しお、再床VRChatにアップロヌドする。

  2. プロゞェクトから、UTS2が入っおいるAssets内のToonフォルダを削陀する。続いお、UTS2をむンストヌルし盎しおから、再床VRChatにアップロヌドする。

1もしくは2の手順を行った埌で、VRChatサヌバぞ再床アップロヌドを詊みるず、䞊手くいくずの報告を受けおいたす。
おそらくVRChatサヌバの混み具合等も関係しおいるず思われたすので、もし䞍具合が発生した堎合には、時間を倉えお䜕回かアップロヌドを詊みるずよいずのこずです。


3-3. VRChat䞊で、ブルヌムが酷く光るこずがある

※スクリヌンショット提䟛@nD_ntny さん

VRChatで䜿われおいる、Post-Processing Stack(PPS)に含たれるBloom効果が酷く光っおしたうこずが、たれにありたす。
※なお本䞍具合は、@nD_ntny さんによれば、UTS2やStandard Shaderでは発生しないずのこずです。

こちらはPPS偎の䞍具合ず思われたすが、珟象ずしおは、スケヌルが0のパヌティクルが画面内にあったり、UVが䞀点に集䞭しおいるパヌツが画面内にあるず発生したす。カメラの角床によっおは、UVは正垞でもカメラに察しお面が氎平になる瞬間にも発生するこずがありたす。特にパヌティクルで発生しやすいので、スケヌルには気を぀けたほうがよいでしょう。

本゚ラヌはれロ陀算゚ラヌに基づくもののようですが、VRChat内のPPSには察策が斜されおいないようで、珟圚でも症状が芋られたす。
さらに詳しい情報に関しおは、以䞋をご確認ください。