VRChat 非公式日本語ドキュメント

Androidコンテンツの制限

このページでは、VRChatのAndroid版における様々な制限について説明します。これらの制限は、パフォーマンスの維持、ユーザーの安全性確保、および悪意のある行為を抑制することを目的としています。

制限されているコンポーネントの詳細については、Androidコンテンツの最適化ページをご覧ください。

アバター固有の制限

現在のVRChatでは厳密な制限は実装されていませんが、将来的には、トライアングル数、マテリアル数、メッシュ数、その他の品質に基づいて、アバターに対する厳密な制限を実装する可能性があります。 Androidコンテンツの最適化に記載されている推奨事項を念頭に置いてください。

現在、推奨事項を超えるアバターを使用したアバターやワールドをアップロードした場合、そのワールドやアバターは公開アクセスから削除される可能性があります。

シェーダー

Android版およびQuest版のVRChatでは、アバターに対して最新のSDKで提供されているシェーダーのみを使用できます。以下に、各シェーダーの短い説明と入力項目をリストアップします。このリストは変更される可能性があり、新しいシェーダーが利用可能になった際はパッチノートでお知らせします。

以下に記載されているシェーダーはすべて、シェーダー選択ダイアログの VRChat/Mobile 以下にあります。

パフォーマンス上の理由から、マテリアルでは必ず「Enable GPU Instancing」を有効にしてください。

シェーダー名シェーダーの説明
Toon StandardVRChatのモバイルプラットフォーム向けとして利用可能な、最も強力でカスタマイズ性の高いトゥーンスタイルシェーダーです。Standard Liteが適さない場合のほとんどのケースで推奨されます。以下の機能をサポートしています。
  • UV0またはUV1を使用した詳細マップ(Detail maps)と発光マップ(Emission maps)。
  • カスタムシャドウランプ、設定可能な簡易スペキュラライティング、リムライティング、Matcap。
  • アルベド、エミッション、詳細マップに対してマスク可能な色相シフト。
  • タイリング可能でマスク可能な詳細ノーマルを含むノーマルマップ。
  • 複数のマップを異なるパック形式に統合するための、カラーチャンネル設定が可能なマスクテクスチャ。
注意: 「Outline」バージョンはPCのみでサポートされており、モバイルデバイスでは自動的にアウトラインなしのバリエーションにフォールバックされます。このシェーダーはPC用アバターにも使用できますが、現時点ではリアルタイムシャドウには対応していません。
Standard LiteVRAM消費を抑えたUnity Standardの「Lite」バージョンです。
  • UnityのStandard Metallic設定のチャンネルマッピング(AlphaとParallaxを除く)をサポートしています。
  • ディフューズテクスチャは、メッシュの頂点カラーによって色付けされます。
  • 異なるチャンネルを同じテクスチャにパックすることで最適化できます:
    • Texture 1: Albedo (RGB) および Detail Mask (A)
    • Texture 2: Metallic (R)、Occlusion (G)、Smoothness (A)
  • リアルタイムライティングをサポートしていないため、PC環境での使用は推奨されません。
Bumped Diffuseノーマルマップ付きのDiffuseです。Diffuseテクスチャは頂点カラーによって色付けされます。
Bumped Mapped Specularアルファチャンネルにスペキュラマップ(光沢)を備えたDiffuseです。Diffuseテクスチャは頂点カラーによって色付けされます。ノーマルマップもサポートされています。
Diffuse単純なDiffuseです。Diffuseテクスチャは頂点カラーによって色付けされます。
Matcap LitMatcap入力を備えたDiffuseです。光沢のある金属面をシミュレートするために使用できます。Diffuseテクスチャは頂点カラーによって色付けされます。
Toon Litトゥーン調のシェーディングと影を提供します。フラットな色のカートゥーン調のキャラクターに使用してください。Diffuseテクスチャは頂点カラーによって色付けされます。
Particles/Additiveパーティクルに使用してください。加算(Additive)モードを使用してブレンドします。
Particles/Multiplyパーティクルに使用してください。乗算(Multiply)モードを使用してブレンドします。
Lightmapped(ワールド専用)ライトマップに対応した基本的なディフューズシェーダーです。このシェーダーはワールドでの使用のみを想定しています。アバターには使用できません。リアルタイムライティングには対応していません。
Skybox(ワールド専用)ワールドでの使用を想定した、最適化されたスカイボックスシェーダーです。
Supersampled UI(ワールド専用)テクスチャサンプリング段階でスーパーサンプリングを行うアンリットシェーダーです。ミップマッピングと併用することで、ワールド内のUIテキストを粒状感やノイズなしに鮮明に表示できます。

コンポーネント

以下のコンポーネントはAndroidおよびQuestでサポートされておらず、動作しません。このリストは変更される可能性があります。変更があった場合は、パッチノートや更新されたドキュメントでお知らせします。

シェーダー名シェーダーの説明
Dynamic BonesAndroidおよびQuestでは完全に無効化されています。PhysBonesを使用してください!!
ClothAndroidおよびQuestでは完全に無効化されています。
CamerasAndroidおよびQuestのアバターでは完全に無効化されています。ワールドでは使用可能です。使いすぎには注意してください。
LightsAndroidおよびQuestのアバターでは完全に無効化されています。
Video Playersいくつかの制限付きで動作します。詳細はVideo Playersを参照してください。
Post-ProcessingAndroidおよびQuestでは、ポストプロセッシングシステムは完全に無効化されます。GPUの性能上、これらのエフェクトを十分に処理できないためです。
Audio SourcesAndroidおよびQuestのアバターでは、Audio Sourceは完全に無効化されます。Audio Sourceは多大なCPUリソースを消費するため、ボイスチャットが優先されます。
Physics ObjectsAndroidおよびQuestのアバターでは、Rigidbody、コライダー、ジョイントは完全に無効化されます。
ワールド内では使用可能ですが、過度な使用には注意してください。
Particle SystemsAndroidおよびQuestのアバターにおけるパーティクルは大幅に制限されており、PC版のAvatar Particle System Limitsに準拠した設定となります。
ConstraintsUnityのConstraintsは、複雑なパフォーマンスの問題により、AndroidおよびQuestのアバターでは完全に無効化されます。代わりにVRChat Constraintsを使用してください。

ワールド内では使用可能です。特にQuestやモバイル端末のようなリソースが限られた環境では、想定以上にパフォーマンスに影響を与えるため、使いすぎには注意してください。
FinalIKAndroidおよびQuestのアバターでは、カスタムFinalIKコンポーネントは完全に無効化されます。
FinalIKコンポーネントはリソース使用量の制限がないためです。現時点では、これらのプラットフォームで有効にする予定はありません。

最終更新: