Token导航 LogoToken导航TokenDH.com
待分类执行命令github未标认证来源可访问许可证需确认审计通过

unity-vrc-world-sdk-3Unity VRC world SDK 3 命令行

Agent Skill

unity-vrc-world-sdk-3 用于处理 GitHub 仓库、Issue、Pull Request 和代码协作信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要围绕仓库状态、代码变更或协作事项进行整理时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

2,869

周安装

122

GitHub Stars

103

下载量

1,005
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:unity-vrc-world-sdk-3(Unity VRC world SDK 3 命令行)
来源仓库:https://github.com/niaka3dayo/agent-skills-vrc-udon
仓库路径:skills/unity-vrc-world-sdk-3
安装命令:
npx skills add https://github.com/niaka3dayo/agent-skills-vrc-udon --skill unity-vrc-world-sdk-3
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/niaka3dayo/agent-skills-vrc-udon --skill unity-vrc-world-sdk-3

简介

unity-vrc-world-sdk-3 用于处理 GitHub 仓库、Issue、Pull Request 和代码协作信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要围绕仓库状态、代码变更或协作事项进行整理时使用。

  • 适用于 Unity VRC World SDK 3 的项目管理、代码协作和版本控制等场景。
  • 通过 GitHub 仓库安装,使用 npx skills add 命令添加指定技能。
  • 安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。
  • 适用宿主包括 Codex、Claude、Cursor、Gemini CLI,接入前应确认版本、权限和运行环境要求。

SKILL.md

VRChat World SDK 3 Guide

Table of Contents

SectionContentReference
Scene SetupVRC_SceneDescriptor, SpawnThis file
ComponentsPickup, Station, Mirrorreferences/components.md
Layers & CollisionLayers, Collision Matrixreferences/layers.md
PerformanceOptimization guidereferences/performance.md
LightingLighting settingsreferences/lighting.md
Audio & VideoAudio, Video playersreferences/audio-video.md
World UploadUpload workflowreferences/upload.md
TroubleshootingProblem solvingreferences/troubleshooting.md
CheatsheetQuick referenceCHEATSHEET.md

Common Mistakes (NEVER List)

These cause silent world failures, performance disasters, or Quest incompatibility:

#NEVER do thisWhy it hurtsUse instead
1Enable Mirror by default (active on world join)Renders the entire scene twice — immediate FPS halving, catastrophic on QuestDefault Mirror OFF; add UdonSharp toggle or player-triggered activation
2Use realtime directional lights with real-time shadowsQuest has no hardware shadow acceleration; each shadow caster costs 10-30 FPSBaked lightmaps + light probes; set lights to Baked or Mixed mode
3Set Respawn Height at or above the world floorPlayer respawns → falls → respawns again → infinite loop; players cannot recoverSet to an unreachable depth (e.g., floor at Y=0 → Respawn at Y=-100)
4Skip "Setup Layers for VRChat" on a new projectLayer collision matrix is wrong by default — players walk through walls, Pickups clip floorsRun VRChat SDK > Builder > "Setup Layers for VRChat" before placing any colliders
5Enable Post-Processing without Quest build profilePost-Processing is silently disabled at runtime on Quest but VRAM is still allocatedUse separate Android build profile or guard assets with #if UNITY_ANDROID
6Place more than 2 active video players simultaneouslyEach player adds significant decoding overhead; running >2 simultaneously is a common cause of frame drops and audio issues in practiceDisable extra players at scene start; activate only the currently playing one
7Use Unity Constraints or Cloth on QuestBoth are disabled silently at runtime on Quest — animations freeze, cloth hangs in placeUse Animator-driven transforms (no constraints) or remove cloth from Quest meshes
8Upload without completing a lightmap bakeRealtime GI calculates at runtime — 3-5× draw call overhead, unacceptable on QuestAlways bake lights before upload; Progressive GPU lightmapper is fastest
9Place player walkable surfaces on Default layer (0)Collision matrix is wrong by default — avatar physics collision is unreliable; players may clip through geometryUse Environment (layer 11) for all walkable geometry, walls, and floors
10Use very high lightmap resolution for large areas without profilingTexture memory can spike significantly at high resolutions; a common cause of OOM crashes on mobile headsetsStart at 10-20 texels/unit as a practical guideline; profile VRAM and adjust — official guidance says "keep lightmap resolution low" for Quest
11Add VRC_UIShape to a Screen Space or Overlay CanvasVRC_UIShape requires World Space Canvas; other modes throw a runtime Unity error in VRChat — the UI renders visually but is not interactive, with no visible error to the world builderSet Canvas > Render Mode to World Space before adding VRC_UIShape

Reference Loading Guide

Load only what the task requires.

TaskMANDATORY READOptionalDo NOT Load
Setting up a new scene from scratchcomponents.md, layers.mdupload.mdaudio-video.md, troubleshooting.md
Making objects grabbable (VRC_Pickup)components.mdlayers.mdaudio-video.md, lighting.md
Setting up seating (VRC_Station)components.mdlayers.mdaudio-video.md, performance.md
Optimizing FPS for Questperformance.md, lighting.mdtroubleshooting.mdaudio-video.md, upload.md
Adding audio or video playeraudio-video.md, components.mdtroubleshooting.mdlighting.md, performance.md
Baking lights / lightmap setuplighting.md, performance.mdaudio-video.md, layers.md
World upload and publishupload.mdtroubleshooting.mdaudio-video.md, lighting.md
Debugging collision or layer issueslayers.md, troubleshooting.mdcomponents.mdaudio-video.md, lighting.md
Mirror setup and configurationcomponents.mdperformance.mdaudio-video.md, upload.md

Before Starting a New World — Design Decisions

These decisions shape every downstream choice. Make them first, before placing any component.

DecisionOptionsImplication
Quest required?Yes / NoYes → Quest First philosophy applies from day 0, not as a retrofit
Expected player count?1–8 / 9–40 / 40+Affects spawn count, mirror policy, max video players
Primary interaction?Grab (Pickup) / Sit (Station) / Watch (Video) / ExploreDetermines which SDK components are mandatory
Lighting approach?Baked / Mixed / RealtimeRealtime is only viable on PC-only worlds; all lights must be baked before upload
Networked objects?None / Physics (Pickup+ObjectSync) / State (UdonSynced)Determines sync architecture before Udon scripting begins
The most expensive mistake: Designing for PC and adding Quest "later." By that point, lighting resolution, material complexity, and mesh density are locked. The Quest port then requires rebuilding the entire lighting and material pipeline.

Design Philosophy: Quest First

Build for Quest and get PC for free. Build for PC and Quest becomes a separate project.

Quest (Meta Quest 2/3/Pro) defines the performance budget:

  • CPU/GPU: ~2× slower than PC VR; tile-based GPU with no hardware shadow maps
  • VRAM: ~4 GB shared with OS (vs 6–12 GB on PC); no HDR framebuffer
  • Thermal throttling: Sustained 100% GPU load causes clock reduction within minutes

If a world runs at 72 FPS on Quest with a single test client, it will typically run at 90+ FPS on PC — though results vary by shader complexity, CPU-bound workloads, and hardware differences. The converse rarely holds. Verify against the official VRChat optimization documentation before publishing.

NEVER optimize exclusively for PC with "Quest support added later" — by that point, lighting, materials, and mesh density are all locked to PC quality, and the Quest port requires rebuilding everything.

SDK Versions

Supported versions: SDK 3.7.1 - 3.10.3

SDKNew FeaturesStatus
3.7.1StringBuilder, Regex, System.Random
3.7.4Persistence API (PlayerData/PlayerObject)
3.7.6Multi-platform Build & Publish (simultaneous PC + Android builds)
3.8.0PhysBone dependency sorting, Force Kinematic On Remote, Drone API
3.8.1[NetworkCallable] events with parameters, Others/Self targets
3.9.0Camera Dolly API, Auto Hold simplification, VRCCameraSettings
3.10.0Dynamics for Worlds (PhysBones, Contacts, VRC Constraints)
3.10.1Bug fixes and stability improvements
3.10.2EventTiming extensions, PhysBones fixes, shader time globals
3.10.3VRCPlayerApi.isVRCPlus, VRCRaycast (avatar), Mirror render-order fix✅ Latest stable
Important: SDK versions below 3.9.0 are deprecated as of December 2, 2025. New world uploads are no longer possible with these versions.

Scene Setup

VRC_SceneDescriptor (Required)

Exactly one is required in every VRChat world.

[VRCWorld Prefab]
├── VRC_SceneDescriptor (Required)
├── VRC_PipelineManager (Auto-added)
├── VRCWorldSettings (Optional - movement speed settings)
└── AvatarScalingSettings (Optional - avatar scale limits)

All Properties

PropertyTypeDescriptionDefault
SpawnsTransform[]Array of spawn pointsDescriptor position
Spawn OrderenumSequential/Random/Demo (Demo: all players to Spawns[0])Sequential
Respawn HeightfloatRespawn height (Y axis)-100
Object Behaviour At RespawnenumRespawn/DestroyRespawn
Reference CameraCameraPlayer camera settings referenceNone
Forbid User PortalsboolDisable user portalsfalse
Voice Falloff RangefloatVoice attenuation range-
Interact PassthroughLayerMaskInteract passthrough layersNothing
Maximum CapacityintMax player count (hard limit)-
Recommended CapacityintRecommended player count (UI)-

Reference Camera Usage

// Usage:
// 1. Adjust Near/Far clipping (recommended for VR: 0.01 ~ 1000)
// 2. Apply Post Processing effects
// 3. Set background color

// ⚠️ MUST disable the Camera component after configuring — an active Reference Camera
//    renders a second viewport. VRChat reads only the camera settings, not its output.
// Assign the configured (disabled) Camera to VRC_SceneDescriptor > Reference Camera.

Spawn Points Setup

// Spawn points are empty GameObjects assigned to VRC_SceneDescriptor > Spawns array.
// Players enter facing the Z+ direction of the spawn Transform.

// VRChat-specific requirements:
// - At least 2-3 spawn points (for simultaneous joins — single spawn causes overlap)
// - Place slightly above the floor (~0.1m) to avoid floor collision on spawn
// - Keep clear of obstacles (VR player guardian area is larger than their avatar)
// - Account for VR guardian boundaries — desktop player sizes differ from VR

Required Setup Checklist

□ Exactly one VRCWorld Prefab exists in the scene
□ At least one Transform set in Spawns
□ Respawn Height set to an appropriate value (well below the floor)
□ Reference Camera configured for clipping distances (for VR)
□ Layer/Collision Matrix correctly configured
□ "Setup Layers for VRChat" has been executed

Components

MANDATORY READ references/components.md (~800 lines) before configuring any VRC component below. Load in full — dependency requirements and Udon event hooks are distributed throughout. Do NOT Load: references/audio-video.md, references/lighting.md.

ComponentRequired ElementsPurposeSDK
VRC_SceneDescriptor-World settings (required)-
VRC_PickupCollider + RigidbodyGrabbable objects-
VRC_StationColliderSittable locations-
VRC_ObjectSyncRigidbodyAuto-sync Transform/physics-
VRC_MirrorReflection-Mirror (⚠️ high cost)-
VRC_PortalMarker-Portal to other worlds-
VRC_SpatialAudioSourceAudioSource3D audio-
VRC_UIShapeCanvas (World Space)Unity UI interaction-
VRC_AvatarPedestal-Avatar display/switch-
VRC_CameraDolly-Camera dolly3.9+

VRC_ObjectSync vs UdonSynced

ScenarioVRC_ObjectSyncUdonSynced variables
Throwable objects / physics✅ Recommended
State only / complex logic✅ Recommended
SDK 3.8.0+: Force Kinematic On Remote — Makes Rigidbody kinematic on non-owner clients, preventing unexpected physics behavior.

Layers & Collision

VRChat Reserved Layers

Layer #NamePurpose
0DefaultGeneral objects
9PlayerRemote players
10PlayerLocalLocal player
11EnvironmentEnvironment (walls, floors)
13PickupGrabbable objects
14PickupNoEnvironmentPickups that don't collide with environment
17WalkthroughWalk-through objects
18MirrorReflectionMirror reflection only
22-31User LayersAvailable for custom use

Layer Setup Steps

1. VRChat SDK > Show Control Panel
2. Builder tab
3. Click "Setup Layers for VRChat"
4. Collision Matrix is automatically configured

MANDATORY READ references/layers.md when setting up collision or debugging physics. The default Unity collision matrix differs from the VRChat-correct one — always verify. Do NOT Load: references/audio-video.md, references/upload.md.


Performance

Target FPS

PlatformFPS TargetMeasurement Point
PC VR45+ FPSSpawn point, 1 player
PC Desktop60+ FPSSpawn point, 1 player
Quest72 FPSSpawn point, 1 player

Critical Limits

ItemRecommendedReason
Mirrors1, default OFFRenders the entire scene 2x
Video playersMax 2Decoding overhead
Realtime lights0-1Dynamic shadows are expensive
LightmapsRequiredPerformance foundation

Quest/Android Restrictions

ComponentPCQuest
Dynamic Bones❌ Disabled
Cloth❌ Disabled
Post-Processing❌ Disabled
Unity Constraints❌ Disabled
Realtime lights⚠️ Avoid

Performance Optimization Workflow

If FPS is below target, follow this workflow — measure before guessing:

1. Measure
   ├── Unity Profiler: standard profiling in Play mode (primary; Deep Profile only for function-level deep dives — avoid on Quest, misleading results)
   ├── VRChat overlay: type "/perf" in-game
   └── Stats window: Draw Calls, Triangles, VRAM

2. Identify bottleneck category
   ├── CPU-bound (high Draw Calls): → Batching / LOD / Culling / Static flags
   ├── GPU-bound (shader cost): → Mirror / Realtime lights / Post-Processing
   ├── Memory (VRAM spikes): → Reduce texture resolution / video players
   └── Physics: → Disable Rigidbodies / Cloth / Constraints on Quest

3. Fix largest impact first, re-measure after each change
   (estimates below are typical ranges; actual gains vary by world complexity)
   Mirror ON by default    → Disable by default               (often -40-50% render cost)
   Realtime shadows        → Bake all lights                  (often -30-50% GPU cost)
   High lightmap resolution → Reduce and re-profile           (often -30-70% VRAM)
   Unbatched static objects → Mark as Static + enable batching (often -30-60% draw calls)
   Many active particles   → Pool; disable off-screen          (often -10-20% CPU)

Never stack multiple changes before re-measuring — you'll lose the ability to identify which change helped.

MANDATORY READ references/performance.md and references/lighting.md for Quest optimization. Run the profiling workflow above first to identify the bottleneck category before consulting references. Do NOT Load: references/audio-video.md, references/upload.md.


Lighting

Baked Lighting (Required)

✅ Recommended settings:
├── Lightmapper: Progressive GPU
├── Lightmap Resolution: 10-20 texels/unit
├── Light Mode: Baked or Mixed
└── Light Probes: Place along player paths

❌ Avoid:
├── Realtime lights (dynamic shadows)
├── High-resolution lightmaps (memory consumption)
└── Excessive Reflection Probes

MANDATORY READ references/lighting.md when configuring lightmaps or light probe placement. Do NOT Load: references/audio-video.md, references/upload.md, references/layers.md.


Audio & Video

VRC_SpatialAudioSource

PropertyDescriptionDefault
GainVolume (dB)0 (World: +10)
NearAttenuation start0m
FarAttenuation end40m
Volumetric RadiusSource spread0m
Enable Spatialization3D positioningtrue

Video Player Selection

FeatureAVProUnity Video
Live streaming
Editor preview
YouTube/Twitch
Quest support

MANDATORY READ references/audio-video.md for VRC_SpatialAudioSource or video player configuration. Do NOT Load: references/lighting.md, references/performance.md.


World Upload

Upload Steps

1. Check Validation
   └── VRChat SDK > Build Panel > Validations

2. Build & Test (local testing)
   └── "Build & Test New Build"
   └── Supports multi-client testing

3. Upload
   └── "Build and Upload"
   └── Set Content Warnings
   └── Set Capacity

4. Publish settings
   └── Configure public/private on the VRChat website

Pre-Upload Checklist

□ VRC_SceneDescriptor × 1
□ Spawns configured
□ Respawn Height appropriate
□ Layer/Collision Matrix verified
□ Light baking complete
□ Mirror default OFF
□ 45+ FPS in VR
□ No Validation errors
□ Content Warnings set
□ Capacity set

MANDATORY READ references/upload.md before running Build & Upload. Verify all pre-upload checklist items first. Do NOT Load: references/audio-video.md, references/lighting.md.


Troubleshooting

Diagnostic Router

Identify the symptom category, then follow the diagnostic path:

Physics / Collision

  • Player walks through walls or floor

1. Did you run "Setup Layers for VRChat"? (SDK > Builder tab) - No → Run it. The default collision matrix blocks player↔environment collision. - Yes → Is the geometry on the Environment layer (11)? - No → Move all walkable surfaces, walls, and floors to layer 11. - Yes → Open Physics > Layer Collision Matrix: Environment × Player row must be ON.

  • Pickup passes through floors / walls → Pickup must be on Pickup layer (13), not Default (0). In the collision matrix, Pickup × Environment must be ON.

Grab / Interaction

  • Can't grab Pickup at all

1. Collider present? No → Add a Collider component. 2. Rigidbody present? No → Add a Rigidbody component. 3. VRC_Pickup component present? No → Add it.

  • Pickup grabbed but immediately released → Check DisallowTheft on VRC_Pickup. If the current holder already owns it, a second grab may be blocked.

Sync / Network

  • Pickup position doesn't update for other players → Add VRC_ObjectSync (requires Rigidbody). Without it, only the local client moves the object.
  • Pickup returns to original position on drop → Ownership is not being transferred. Verify VRC_Pickup or UdonSharp script calls Networking.SetOwner before moving.

Seated / Station

  • Can't sit in Station (no interaction prompt)VRC_Station requires a Collider on the same or a child GameObject to register the interaction ray.
  • Player clips into Station geometry after sitting → Adjust the Station Collision Transform field in the VRC_Station Inspector.

Mirror

  • Mirror doesn't reflect players or world → Open VRC_MirrorReflection > Layers. Must include: Player (9), PlayerLocal (10), MirrorReflection (18), Environment (11).
  • Mirror causes severe FPS drop → Remove unnecessary layers from the Layers mask, and ensure Mirror is OFF by default (see NEVER #1).

Build / Upload

  • SDK build error in VRChat Control Panel → Builder tab lists all ⚠️ and ✖️ blockers with descriptions. Resolve each before building.
  • "Missing script" on a UdonSharp component → The .cs file must have a matching .asset file. See the "missing.asset / script-asset pairing" rule in the unity-vrc-udon-sharp skill.

Editor / Runtime Discrepancy

  • World works in Unity Editor Play mode but fails or behaves differently in VRChat → Unity Play mode does not replicate all SDK behaviors. Use "Build & Test New Build" (SDK > Builder tab) — this launches the actual VRChat client locally. Editor Play is useful only for quick UdonSharp iteration.
  • Interactive UI element is visible but cannot be clicked in VRChat → VRC_UIShape on a Screen Space or Overlay Canvas (see NEVER #11). Set Canvas > Render Mode to World Space.

MANDATORY READ references/troubleshooting.md only if the Diagnostic Router above did not resolve the issue. Do NOT Load for non-troubleshooting tasks.


Related Skills

TaskSkill to Use
C# code creationunity-vrc-udon-sharp
Network sync (Udon)unity-vrc-udon-sharp
Event implementationunity-vrc-udon-sharp
Scene setupThis skill
Component placementThis skill
Performance optimizationThis skill

Templates (assets/templates/)

Starter templates for common SDK component patterns. Each template compiles without modification; adjust Inspector fields and extend the event stubs for your world.

TemplatePurpose
VRC_Pickup_Rigidbody.csVRC_Pickup with Rigidbody — OnPickup/OnDrop/OnPickupUseDown/OnPickupUseUp events, ownership transfer, audio feedback
VRC_Station_Basic.csVRC_Station controller — OnStationEntered/OnStationExited events, PlayerMobility, force-eject API

References

FileContentApprox. Lines
references/components.mdAll component details800+
references/layers.mdLayers & collision400+
references/performance.mdPerformance optimization500+
references/lighting.mdLighting settings400+
references/audio-video.mdAudio & video400+
references/upload.mdUpload procedure300+
references/troubleshooting.mdTroubleshooting guide500+
CHEATSHEET.mdQuick reference200+

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

34.28%
按下载量换算345

Claude

31.34%
按下载量换算315

Cursor

20.25%
按下载量换算204

Gemini CLI

8.55%
按下载量换算86

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

执行命令

安装流程涉及命令执行,可能通过 npx skills add https://github.com/niaka3dayo/agent-skills-vrc-udon --skill unity-vrc-world-sdk-3 联网下载 Skill 或依赖。用户安装前应确认命令来源、仓库内容和执行环境。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills