Oculus Rift・HTC vive対応ゲーム『VRchat』のwikiです。ここでは基本説明と自作アバターの追加方法などを載せていきます。



マテリアル

オブジェクトの質感を表現するもので、任意のオブジェクトに割り当てて使う。マテリアルとシェーダ
シェーダーを設定することで見え方を変える。

シェーダーとは

陰影処理のことでオブジェクトの見え方を設定するもの。
着色、テクスチャの付与、反射、透過など見え方にかかわる属性を設定することができる。
シェーダーによって得意不得意があるため、目的に合わせたシェーダーを設定を行う。

Standerd Shader

新しく作成したマテリアルには標準でスタンダードシェーダーが設定されている。
シェーダーの構造をスタンダードシェーダーを例に説明する。
Rendering Mode
プルダウンでシェーディングのタイプを選択する。
・Opaque:不透明な素材
・Cutout:テクスチャのアルファで一部透過をさせることができる
・Fade:半透明、反射も透過するため物理的には正しくない
・Transparent:半透明、反射をするため現実近い
Main Maps
・Albedo:反射する色、基本的にはメインの色になる、テクスチャを設定することもできる
・Metallic:金属光沢、0〜1の範囲で設定きる、マスクテクスチャを設定することで部分的に反射させることができる
・Smoothness:表面のつや、0〜1の範囲で設定きる
・NormalMap:法線マップ、設定することで細かな凹凸を表現することができる
・HeightMap:視差マッピング、キズのような凹みを表現することができる
・Occlusion::遮蔽マップ(AO)、奥まったところや、傷などを暗くすることができる
・Detail Mask:セカンダリマップの適用量をマスクで指定する、標準では全適用

・Emission:チェックすることで発光を適用させる
・Color:発光の色を指定し強さを0〜1で設定できる
・Global Illumination:GIやライトマップベイクに影響する手法を選択する

・Tiling:テクスチャのスケールを指定する
・Offset:テクスチャのオフセットを指定する
Secondary Maps
・Detail Albedo:詳細な色を指定する
・Normal Map:詳細な法線を指定する
・Tiling:テクスチャのスケールを指定する
・Offset:テクスチャのオフセットを指定する
・UV Set:セカンダリマップで使用するUVチャネルを指定する



よく使われるシェーダー

シェーダは基本的に外部からスクリプトを参照することがなければ、どのようなものでもVRChat上に持っていくことが可能なので、自分で描いたシェーダや、ShaderForgeなどで作ったShaderも使うことができる。

Cubeds-Unity-Shaders
A compilation of custom shaders for Unity3D
VRCの開発チームの一人である cubedparadox氏 が作成。VRchatの親和性が高いシェーダーです。
トゥーン調のシェーディングがされるシェーダ。周囲の環境光(AmbientSorceやAmbientColor、DirectionalLight等)から影響を受けるシェーダ。
離れていると見えないようなエフェクトなども同梱されている。ノーマルマップにも対応。

ユニティちゃんトゥーンシェーダー2.0
ユニティちゃんトゥーンシェーダー2.0
Unity公式より提供されているトゥーンシェーダー
トゥーンシェーダーに必要とされてる表現は殆ど揃ってる。
それ故にUnityを触った事もないような初心者が扱う場合はハードルが高いかもしれません。
VRChatユーザーの増加に伴いVer2.07から日本語インターフェースが追加されある程度とっつきやすくなりました。
2019/10/7には書籍が発売されより使いやすくなりました。
実践!ユニティちゃん トゥーンシェーダー2.0 スーパー使いこなし術

Arktoon-Shaders
Arktoon-Shaders releases
作者:synqark @ Twitter
ワールドの環境を尊重しつつも、キャラクターに必要な表現が追求されてる。

MnMrShaders
みに配布用 - MnMrShader
作者:みに @ Twitter
「まんまるシェーダー」と呼ばれている。

Unityアセットストアからシェーダーの追加

  1. 画面中央AssetStoreタブで任意のシェーダーをインポートする。(ToonyColorsFreeオススメ)
  2. fbx生成の過程でMaterialsフォルダが生成されているので、格納されているファイルを全選択し、画面右InsoectorタブのShaderプルダウンから先程インポートしたシェーダーを適用する。
  3. シェーダーの詳細設定方法については各自ググること。

どなたでも編集できます