入稿ルール(全般)
- 各会場には多数のブースが配置されます。たくさんの華やかなブースが並んでいる状態を作り、見た目にも賑やかで楽しい空間を作りたいと考えています。
- 一方で規模の大きいワールド故に発生しうるいくつかの問題を回避するためにブース作成にルールを設けます。
- PCへの負荷が高くなることで来場者にとって快適なプレイ環境を維持出来なくなることの回避
- 形式が統一されていないことで運営側でのチェック・管理が困難になることの回避
- 特定の操作によりインスタンスが破壊されてVRChatが落ちる/別のワールドに飛ばされるなどの致命的な不具合が起きることの回避
- 提出前に必ず入稿ルールに即しているかチェックをしていただきます。チェックには運営から配布する入稿ツール(以下、VketTools)を用いてください。
- 入稿ルールに沿わないブースが入稿された場合、再提出を依頼、もしくは配置しない等の処置を行わせて頂きます。予めご了承下さい。
- 入稿ルールに即していても負荷が高い等問題があると運営で判断したブースには再提出をお願いする場合があります。
- 複雑なギミックや動的に変化するブースを入稿する場合、再現の保証ができない可能性があります。
- 著しく情報量が少ないブースの場合、入稿期間終了後に運営より出展者に確認を行い、確認が取れない場合のみブースを撤去させてもらう場合があります。
A.ブース作成環境規定
- Unity 2019.4.31f1で作成すること。
- VRCSDKはVRCSDK3-WORLDを使うこと。
- VRCSDK及びUdonは提出時点の最新バージョンを使用すること。
- VketToolsを使用して提出すること。
- 入稿するアセットは全て、VketToolsによってAssetsフォルダ直下に作成される、出展者IDの番号名のフォルダ(例: 184)以下に入れること。
- 上記フォルダ内の、出展者IDの番号名のScene上にてブースを作成すること。
B.ファイル&フォルダ規定
- ファイル&フォルダ名は半角英数、-(ハイフン)、_(アンダーバー)、 (半角スペース)、.(ドット)、()(かっこ)のみ使用可能です。
- Projectに含まれるものは全て上記のみのファイル名にすること。
- 全てのファイルパスはUnity内の「Assets/」以下が184文字以内に収まるようにすること。
- メッシュは「.FBX」等Unity標準で読み込める形式のファイルにすること。
- 「.blend」ファイルは標準では読み込めません。
- メッシュのTexturesとMaterialsは必ずExtractすること。
- 入稿フォルダ以下のファイル総容量100.00MB以内
C.Scene内階層形式規定
- ブースの一部に含まれるオブジェクトは、全て下記規定に従って配置・設定すること。
- 出展者IDの番号名の空のオブジェクトを全ての親とする。
- 上記の親オブジェクトの子であるStatic, Dynamicという名前のオブジェクトの階層下に、下記に従いオブジェクトを配置すること。
Static
含める対象オブジェクト
動かないメッシュを含むオブジェクト
Static設定(子オブジェクト含む)
Dynamic
含める対象オブジェクト
動いたり操作の対象となるオブジェクト
Static設定(子オブジェクト含む)
- Dynamicの例
- アニメーションするオブジェクト(移動や回転だけでなく、表示/非表示等全ての変化を含む)
- Pickupオブジェクト
- ParticleSystem
- AudioSource
- Rigidbody
- UdonBehaviourを含むオブジェクト
- UdonBehaviourによって移動やActiveの切り替え等操作が行われるオブジェクト
※1:Batching Staticは再生して見た目が崩れる場合外してよい。
D.ブース規定
- ブースを配置できるスペースは幅4m×奥行き4m×高さ5m
- 原点を基準としてXZ方向に ±2m、Y方向に5m
- Z軸+方向(Unityの青い矢印の方向)が正面
- テクスチャ枚数制限 無し
- ただしアトラス化(統合)を強く推奨。
- 小さいサイズ(1k~2k)複数枚よりも大きいサイズ(4k)1枚の方が望ましい。
- AssetBundleのビルドサイズ10.00MB以内
- VRC_Worldを置いた状態でブースのみをビルドした時のファイルサイズ
- 描画負荷の軽減の為、SetPassCallsとBatchesは以下の値に収めてください。
- 実行時のSetPassCallsの基準値20
- 実行時のBatchesの目安基準値30
- Lightmap制限 512×512pixelsが1枚以内
- ContributeGIにチェックが入っているオブジェクト(ScalesInLightmapの値が0のものは除く)の中で、ライトマップがオーバーラップ状態になっているものは入稿できません。
- 配置の際に、Y軸回転されることがあります。
- 配置の際に、座標が原点でない場所に配置されます。
E.シェーダー規定
- 以下に挙げるシェーダーは運営からVketToolsとともに配布されます。
- まんまるしぇーだー MnMrShader3_1_2
- ユニティちゃんトゥーンシェーダー 2.0.8
- Unlit_WF_ShaderSuite_20210905
- MToon v3.7
- UniUnlit in UniGLTF_VRMShaders-0.81.0_5126
- SunaoShader 1.4.4
- PoiyomiToonShader 7.2.41
- ArxCharacterShaders(AXCS) Build17
- Xiexes-Unity-Shaders v3.0.2p1
- Silent's Cel Shading Shader v1.10
- Mochie's Unity Shaders v1.17
- 上記シェーダーは入稿フォルダに含める必要はありません。
- 上記シェーダーでもバージョン違いやスクリプトを改変したものを使う場合は必ず複製したものを使い、入稿フォルダに含める事。
- シェーダーを自作する時は、Unity標準以外の自作シェーダーキーワードは使用できません。
- _CameraDepthTextureは使用できません。
- StandardシェーダでEmissionを使用する場合、Global IlluminationはBakedを設定すること。
F.Component規定
使用可能Component
1. VRCSDK
- UdonBehaviour
- 1ブースあたり10個以内
- 運営配布のPrefabに含まれるものも数に含む。
- 詳細な規定は Udon規定 を参照。
- 1ブースあたり10個以内
- VRC Object Sync
- 1ブースあたり5個以内
- 運営配布のPrefabに含まれるものも数に含む。
- Allow Collision Ownership Transferを無効にすること。
- 1ブースあたり5個以内
- VRC Pickup
- 1ブースあたり10個以内
- 運営配布のPrefabに含まれるものも数に含む。
- 1ブースあたり10個以内
- VRC Station
- 1ブースあたり4個以内
- VRC Ui Shape
- VRCSpatialAudioSource
- スペース外に音源の影響が出ないようFarを調節すること。※ただし、周囲2m程度の範囲は許容する。
- VRC Unity Video Player
- 運営配布のPrefabでのみ使用可能。
- 1ブースあたり1個以内
2. 物理演算
- Box Collider / SphereCollider / CapsuleCollider / Mesh Collider
- Mesh Colliderは非推奨。出来るだけ他のColliderで似た形を作ること。
- スペースからのはみ出し禁止。
- Rigidbody
- Is Kinematicを有効にすること。
- Cloth
- 1ブースあたり1個以内
- Character Controller
- Dynamic Bone
- Distant Disableを有効にすること。
- Dynamic Bone Collider
3. Rendering / Effect
- Mesh Filter
- Mesh Renderer
- Boundsのスペースからのはみ出し禁止。
- ContributeGI をチェックしたオブジェクトは、Layer割り当てをEnvironmentとしてください。
- EnvironmentのLayer以外ではContributeGIを使用できません。
- Material0のMesh Rendererは禁止。
- Lightmap Parametersの変更は禁止。
- Skinned Mesh Renderer
- Boundsのスペースからのはみ出し禁止。
- Update When Offscreenを無効にすること。
- Materials 0のSkinned Mesh Rendererは禁止。
- Sprite Renderer
- Sprite Mask
- Sorting Group
- Particle System / Trail Renderer / Line Renderer
- 再生時にスペースからのはみ出し禁止。
- Light
- 使用可能な設定値に制限があります。下表の値としてください。
- ブースからのライトのはみ出しを極力抑えること。はみ出す場合は2メートル未満とすること(各ブース前後上下左右の約2メートルは、他ブースとの緩衝領域として空間が確保されます。その内側に抑えてください)。
- 規定範囲内であっても、ワールド全体のベイク作業に支障がある、あるいは他ブースへ強く影響してしまう設置方法の場合、変更や撤去をお願いすることがあります。あらかじめご了承ください。
- Light Probe Group / Light Probe Proxy Volume
- スペースからのはみ出し禁止。
- Reflection Probe
- TypeをBakedまたはCustomに設定すること。
- Resolutionは128まで。
- Camera
- 1ブースあたり1個以内
- 初期状態でコンポーネントをDisabledにすること。
- TargetTextureに必ずRenderTextureを指定すること。
- RenderTextureのサイズは1024x1024まで。
- Flare Layer
- Skybox
- Halo
- Projector
- 1ブースあたり1個以内
- Projectorを含むオブジェクトは初期状態で非Activeにすること。
- LOD Group
- Post Process Volume
- Is Globalを無効にすること。
- 下記Effectは使用不可。
- Ambient Occlusion
- Screen Space Reflection
- Depth of Field
- Motion Blur
- Lens Distortion
Lightの設定値制限
Directional Lightは使用不可。
Type | Point または Spot | Area |
---|---|---|
Mode | Baked | (baked only) |
Range | 0~7 | 0~30 |
Intensity | 0~10 | 0~10 |
Indirect Multiplier | 0~15 | 0~15 |
Shadow Type | Soft Shadows または Hard Shadows | - |
Cast Shadows | - | ON |
個数制限 | 制限はありません | 1スペースあたり3個まで |
4. コンストレイント
- Aim Constraint
- Look At Constraint
- Parent Constraint
- Position Constraint
- Rotation Constraint
- Scale Constraint
5. UI
Canvas / Layout 関連
- Canvas
- Render ModeをWorldに設定すること。
- Canvas Scaler
- Graphic Raycaster
- Canvas Group
- Grid Layout Group
- Horizontal Layout Group
- VerticalLayout Group
- LayoutElement
- Content Size Fitter
描画関連
- Canvas Renderer
- Text Mesh Pro / Text Mesh Pro UGUI
- FontAssetを入稿フォルダに同梱すること(標準で入ってるものは同梱不要)。
- Text
- Outline
- Shadow
- Image
- Raw Image
- Mask
- Rect Mask 2D
- Aspect Retio Fitter
- PositionAsUV1
Input関連
- Button
- Toggle
- Toggle Group
- Slider
- Scrollbar
- Scroll Rect
- Dropdown / TMP_Dropdown
- Input Field / TMP_Input Field
- Event Trigger
- Selectable
6. その他
- Animator
- 1ブースあたり50個以内
- Apply Root Motionを無効にすること。
- Culling Modeは原則Cull Update TransformsまたはCull Completelyに設定し、どうしても必要な場合以外は Always Animateは避けること。
- AudioSource
- 1ブースあたり10個以内
- 初期状態でコンポーネントをDisabledにすること。
- Volumeは過度に大きくならないよう運営配布の音源を参考に調節すること。
- 運営配布のprefabsで使用されているもの以外ではSpatial Blendを1.0に設定すること。
- スペース外に影響が出ないようMax Distanceを調節すること。※ただし、周囲2m程度の範囲は許容する。
- 音源の仕様
- 基準ラウドネス値:-14LUFS(Ceilingは-3.0dB)
- 書き出し設定:.ogg -128kbpsがおすすめ
- Audio Reverb Zone
- スペース外に影響が出ないようMaxDistanceを調節すること。
運営配布のPrefabsでのみ使用可能なComponent
Prefab | 使用可能Component |
---|---|
Vket_AvatarPedestal | VRC Avatar Pedestal |
Vket_VideoPlayer | VRC Unity Video Player |
その他運営が用意するComponent
使用禁止Component
上記使用可能Component以外の全てのComponent
制御対象Component
ブースの原点からX方向に±3m、Z方向に±4m、Y方向に6m(幅6m×奥行8m×高さ6m)をそのブースのUdon更新範囲とし、この範囲を基準に下記Componentは運営より制御されます。 - VRC Pickup - 運営が配布するprefab以外で使用した場合、プレイヤーがUdon更新範囲から出た時点で位置が初期地点にリセットされます。 - Camera - ローカルプレイヤーがUdon更新範囲から出た時点でDisabledにされます。 - AudioSource - ローカルプレイヤーがUdon更新範囲から出た時点でDisabledにされます。 - Projector - ローカルプレイヤーがUdon更新範囲から出た時点でProjectorがアタッチされたオブジェクトが非Activeにされます。 - VRCUnityVideoPlayer - ローカルプレイヤーがUdon更新範囲から出た時点でStop()関数が呼ばれます。
ペデスタルアバター規定
VRChatの規定によりVRC_Avatar Pedestalに設定するアバターは以下を守ってください。
- Skinned Mesh Renderer 8以下
- Material 16以下
- Dynamic Boneが影響するTransform数 32以下
- Dynamic Bone Collider 2以下
- ポリゴン数 70000以下
ワールド仕様
- ワールド設置物
- VRC Mirror
- ワールド仕様
- Light設定
- Default, Player, PlayerLocal, Pickup, MirrorReflection, レイヤを照らす Realtime, NoShadow の DirectionalLight
- DirectionalLightの角度はワールドにより異なります。
- Environmentレイヤを照らすワールド構造物向けのShadow付き Baked ライト
- 各ブースの外周8ヶ所に LightProbe が設置されます。
- ワールド用のReflection Probeが設置されます。
- ライトマッパーはProgressiveCPUが使用されます。
- Default, Player, PlayerLocal, Pickup, MirrorReflection, レイヤを照らす Realtime, NoShadow の DirectionalLight
- Layer設定
- Defaultレイヤを、ContributeGIをチェックしないオブジェクト(アバターモデル等)のために使用。
- Pickupレイヤを、ContributeGIをチェックしないオブジェクト(持ち上げる小物モデル等)のために使用。
- Environmentレイヤを、ContributeGIをチェックしたワールド構造物やブース展示物のために使用。
- UserLayer22をPost Processing用レイヤとして使用。
- Post Prosessing設定
- Post Processing Stack V2のBloomを使用します。
- 使用Version 2.3.0
- Navigation設定
- NavMeshはベイクされません
- Light設定