入稿ルール(Cosmotravel Elevator)

  • 各会場には多数のブースが配置されます。たくさんの華やかなブースが並んでいる状態を作り、見た目にも賑やかで楽しい空間を作りたいと考えています。
  • 一方で規模の大きいワールド故に発生しうるいくつかの問題を回避するためにブース作成にルールを設けます。
    • 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"オブジェクトの階層下に配置すること。
    • 動かず表示が切り替わる事も無いメッシュを含むオブジェクト
  • "Static"オブジェクトの階層下にある全てのオブジェクトは下記の制限に従ってStatic設定を行うこと。
Static設定 制限内容
Contribute GI 任意。有効にする場合はレイヤーをEnvironmentにすること
Occluder Static 無効にする
Occludee Static 有効にする
Batching Static 有効にする。ただし有効にすることで描画が崩れる場合は無効にしても良い
Navigation Static 無効にする
Off Mesh Link Generation 無効にする
Reflection Probe Static 任意

"Dynamic"オブジェクト

  • 下記に該当する内容のオブジェクトは"Dynamic"オブジェクトの階層下に配置すること。
    • アニメーションするオブジェクト(移動や回転だけでなく、表示/非表示等全ての変化を含む)
    • Pickup出来るオブジェクト
    • ParticleSystemを含むオブジェクト
    • AudioSourceを含むオブジェクト
    • Rigidbodyを含むオブジェクト
    • UdonBehaviourを含むオブジェクト
    • UdonBehaviourによって移動やActiveの切り替え等操作が行われるオブジェクト
    • その他動いたり操作の対象となるオブジェクト
  • "Dynamic"オブジェクトの階層下にある全てのオブジェクトは下記の制限に従ってStatic設定を行うこと。
Static設定 制限内容
Contribute GI 無効にする
Occluder Static 無効にする
Occludee Static 無効にする
Batching Static 無効にする
Navigation Static 無効にする
Off Mesh Link Generation 無効にする
Reflection Probe Static 無効にする

D.ブース規定

  • ブースを配置できるスペースは幅10m×奥行き10m×高さ10m
  • 原点を基準としてXZ方向に ±5m、Y方向に10m
  • Z軸+方向(Unityの青い矢印の方向)が正面
    SpacePoppinJump
  • テクスチャ枚数制限 無し
    • ただしアトラス化(統合)を強く推奨。
    • 小さいサイズ(1k~2k)複数枚よりも大きいサイズ(4k)1枚の方が望ましい。
  • AssetBundleのビルドサイズ20.00MB以内
    • VRC_Worldを置いた状態でブースのみをビルドした時のファイルサイズ
  • 描画負荷の軽減の為、SetPassCallsとBatchesは以下の値に収めてください。
    • 実行時のSetPassCallsの基準値120
    • 実行時のBatchesの目安基準値180
  • Lightmapの合計面積が512x512x2(524,288)pixels以内
  • ContributeGIにチェックが入っているオブジェクト(ScalesInLightmapの値が0のものは除く)の中で、ライトマップがオーバーラップ状態になっているものは入稿できません。
  • 配置の際に、Y軸回転されることがあります。
  • 配置の際に、座標が原点でない場所に配置されます。

E.シェーダー規定

  • 以下に挙げるシェーダーは運営からVketToolsとともに配布されます。
    • まんまるしぇーだー MnMrShader3_1_2
    • ユニティちゃんトゥーンシェーダー 2.0.9
    • Unlit_WF_ShaderSuite_20220923
    • MToon v3.8
    • UniUnlit in UniVRM-0.99.4_8d33
    • SunaoShader 1.6.2
    • ArxCharacterShaders(AXCS) Build21
    • Silent's Cel Shading Shader v1.10
    • Mochie's Unity Shaders v1.31
    • lilToon 1.3.6
    • Filamented Standard 1.1
  • 上記シェーダーは入稿フォルダに含める必要はありません。
  • 上記シェーダーでもバージョン違いやスクリプトを改変したものを使う場合は必ず複製したものを使い、入稿フォルダに含める事。
  • 上記シェーダー以外のシェーダーを入稿する場合は以下の制限に従ってください。
    • グローバルキーワード(shader_feature, multi_compile)は使用できません。
      ローカルキーワード(shader_feature_local, multi_compile_local)を使用してください。
    • VRカメラ表示時の問題を回避するため、_CameraDepthTextureを使用するシェーダーは使用できません。
    • Editorフォルダ内のスクリプトは入稿フォルダに含めないでください。
    • PoiyomiToonShaderを使用する場合、シェーダーのLockを行い、それによって生成されたシェーダーファイルのみを入稿してください。
    • Unityのビルトインシェーダーと同名のシェーダーは使用できません。
  • StandardシェーダでEmissionを使用する場合、Global IlluminationはBakedを設定すること。
  • ステンシルを使用する場合、ステンシルバッファの値は200以下にしてください。

F.Component規定

使用可能Component

1. VRCSDK

  • UdonBehaviour
    • 1ブースあたり20個以内
      • 運営配布のPrefabに含まれるものも数に含む。
    • 詳細な規定は Udon規定 を参照。
  • VRC Object Sync
    • 1ブースあたり10個以内
      • 運営配布のPrefabに含まれるものも数に含む。
    • Allow Collision Ownership Transferを無効にすること。
  • VRC Pickup
    • 1ブースあたり10個以内
      • 運営配布のPrefabに含まれるものも数に含む。
  • VRC Station
    • 1ブースあたり4個以内
  • VRC Ui Shape
  • VRCSpatialAudioSource
    • スペース外に音源の影響が出ないようFarを調節すること。
    • ※ただし、スペースの各方向の大きさ×0.2m(横2m,縦2m,手前奥2m)までのはみ出しは許容する
  • VRC Unity Video Player
    • 運営配布のPrefabでのみ使用可能。
    • 1ブースあたり1個以内
  • VRC Avatar Pedestal
    • 運営配布のPrefabでのみ使用可能。

2. 物理演算

  • Box Collider / SphereCollider / CapsuleCollider / Mesh Collider
    • Mesh Colliderは非推奨。出来るだけ他のColliderで似た形を作ること。
    • スペースからのはみ出し禁止。
  • Rigidbody
  • Fixed Joint
  • Spring Joint
  • Hinge Joint
  • Configurable Joint
  • 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ブースあたり2個以内
    • 初期状態でコンポーネントをDisabledにすること。
    • TargetTextureに必ずRenderTextureを指定すること。
    • RenderTextureは最大1024x1024サイズを2枚まで使用可能。
  • Flare Layer
  • Skybox
  • Projector
    • 1ブースあたり1個以内
    • Projectorを含むオブジェクトは初期状態で非Activeにすること。
  • 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~12 0~12
Width - 0~10
Height - 0~10
Radius - 0~5
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ブースあたり20個以内
    • 初期状態でコンポーネントをDisabledにすること。
    • Volumeは過度に大きくならないよう運営配布の音源を参考に調節すること。
    • 運営配布のprefabsで使用されているもの以外ではSpatial Bandを1.0に設定すること。
    • スペース外に影響が出ないようMax Distanceを調節すること。
    • ※ただし、スペースの各方向の大きさ×0.2m(横2m,縦2m,手前奥2m)までのはみ出しは許容する
    • 音源の仕様
      • 基準ラウドネス値:-14LUFS(Ceilingは-3.0dB)
      • 書き出し設定:.ogg -128kbpsがおすすめ
  • Audio Reverb Zone
    • スペース外に影響が出ないようMaxDistanceを調節すること。
  • Cyan Trigger

運営配布のPrefabsでのみ使用可能なComponent

Prefab 使用可能Component
Vket_AvatarPedestal VRC Avatar Pedestal
Vket_VideoPlayer VRC Unity Video Player

その他運営が用意するComponent

使用禁止Component

上記使用可能Component以外の全てのComponent

制御対象Component

ブースの原点からXZ方向に±10m、Y方向に12m(幅20m×奥行20m×高さ12m)をそのブースのUdon更新範囲とし、この範囲を基準に下記Componentは運営より制御されます。

  • VRC Pickup
    • 運営が配布するprefab以外で使用した場合、プレイヤーがUdon更新範囲から出た時点で位置が初期地点にリセットされます。
  • Camera
    • ローカルプレイヤーがUdon更新範囲から出た時点でDisabledにされます。
  • AudioSource
    • ローカルプレイヤーがUdon更新範囲から出た時点でDisabledにされます。
  • Projector
    • ローカルプレイヤーがUdon更新範囲から出た時点でProjectorがアタッチされたオブジェクトが非Activeにされます。
  • VRCUnityVideoPlayer
    • ローカルプレイヤーがUdon更新範囲から出た時点でStop()関数が呼ばれます。
  • Rigidbody
    • 物理演算を行うオブジェクト(isKinematicがDisabled)はプレイヤーが一人もUdon更新範囲内にいない間は物理演算が無効になります。

ペデスタルアバター規定

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が使用されます。
      • Directional Mode は Directional です。
    • Layer設定
      • Defaultレイヤを、ContributeGIをチェックしないオブジェクト(アバターモデル等)のために使用。
      • Pickupレイヤを、ContributeGIをチェックしないオブジェクト(持ち上げる小物モデル等)のために使用。
      • Environmentレイヤを、ContributeGIをチェックしたワールド構造物やブース展示物のために使用。
      • UserLayer22をPost Processing用レイヤとして使用。
    • Post Prosessing設定
      • Post Processing Stack V2のBloomを使用します。
      • 使用Version 2.3.0
    • Navigation設定
      • NavMeshはベイクされません