<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
    <id>https://creators.vrchat.com/releases</id>
    <title>VRChat Creation Blog</title>
    <updated>2026-04-16T00:00:00.000Z</updated>
    <generator>https://github.com/jpmonette/feed</generator>
    <link rel="alternate" href="https://creators.vrchat.com/releases"/>
    <subtitle>VRChat Creation Blog</subtitle>
    <icon>https://creators.vrchat.com/img/favicon.ico</icon>
    <entry>
        <title type="html"><![CDATA[Release 3.10.3]]></title>
        <id>https://creators.vrchat.com/releases/release-3-10-3</id>
        <link href="https://creators.vrchat.com/releases/release-3-10-3"/>
        <updated>2026-04-16T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Summary]]></summary>
        <content type="html"><![CDATA[<h2 class="anchor anchorWithStickyNavbar_LWe7" id="summary">Summary<a href="https://creators.vrchat.com/releases/release-3-10-3#summary" class="hash-link" aria-label="Direct link to Summary" title="Direct link to Summary">​</a></h2>
<p>SDK Version <code>3.10.3</code> brings Toon Standard improvements, the <a href="https://creators.vrchat.com/avatars/avatar-components/raycast">VRCRaycast</a> component, and exposes VRC+ subscription status to Udon!</p>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="features">Features<a href="https://creators.vrchat.com/releases/release-3-10-3#features" class="hash-link" aria-label="Direct link to Features" title="Direct link to Features">​</a></h2>
<ul>
<li>Added the <a href="https://creators.vrchat.com/avatars/avatar-components/raycast">VRCRaycast</a> component.<!-- -->
<ul>
<li>It allow avatars to fire rays through the scene that hit against colliders in the world or on players. A transform is positioned at the point the raycast hits.</li>
<li>This provides similar functionality to <a href="https://creators.vrchat.com/avatars/whitelisted-avatar-components/whitelisted-avatar-components/#root-motion-finalik">FinalIK</a>, but is much more optimized and easier to use.</li>
</ul>
</li>
<li>The <a href="https://creators.vrchat.com/platforms/android/quest-content-limitations/#shaders">Toon Standard</a> shader now supports a "Color Mask" property.<!-- -->
<ul>
<li>This allows you to apply different Tint values based on an RGB(A) mask texture.</li>
<li>Every channel can additionally be configured with Emission.</li>
<li>The additional Tint can be applied in Multiply and Additive modes.</li>
<li>Color masks without an alpha channel will automatically disable the 4th Tint option to avoid confusion.</li>
</ul>
</li>
<li>Added an <a href="https://creators.vrchat.com/worlds/udon/players/#get-isvrcplus">isVRCPlus</a> property to <code>VRCPlayerApi</code> to allow Udon to query if a user has an active VRC+ subscription.</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="fixes--changes">Fixes &amp; Changes<a href="https://creators.vrchat.com/releases/release-3-10-3#fixes--changes" class="hash-link" aria-label="Direct link to Fixes &amp; Changes" title="Direct link to Fixes &amp; Changes">​</a></h2>
<ul>
<li>Fix String and Image URL loading features not working in ClientSim since <code>3.10.2</code>.</li>
<li>Mirrors now render in <code>Camera.onPreCull</code> instead of <code>OnWillRenderObject</code> to match the 2026.1.3 client.</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="fixes--changes-from-3103-beta1-to-3103-beta2">Fixes &amp; Changes from <code>3.10.3-beta.1</code> to <code>3.10.3-beta.2</code><a href="https://creators.vrchat.com/releases/release-3-10-3#fixes--changes-from-3103-beta1-to-3103-beta2" class="hash-link" aria-label="Direct link to fixes--changes-from-3103-beta1-to-3103-beta2" title="Direct link to fixes--changes-from-3103-beta1-to-3103-beta2">​</a></h2>
<ul>
<li>Improvements to <a href="https://creators.vrchat.com/avatars/avatar-components/raycast">VRCRaycast</a>:<!-- -->
<ul>
<li>Changed the editor gizmo to be orange instead of blue.</li>
<li>Added avatar animator parameters set by VRCRaycast:<!-- -->
<ul>
<li><code>{Name}_Hit</code> is a boolean parameter set to <code>true</code> while the ray is hitting a collider and false while it isn't.</li>
<li><code>{Name}_Ratio</code> is a float ranging from zero to one that gives the ratio of the full distance covered by the raycast. For example, if the hit is 50% of the way along the ray's maximum distance, this value will be set to <code>0.5</code>.</li>
<li><code>{Name}_Distance</code> is a float giving the actual distance traveled by the ray in world units before it hit something.</li>
</ul>
</li>
<li>Fixed the result transform facing the wrong way when the ray misses when configured to snap on miss.</li>
<li>Renamed <code>Positioning On Miss</code> to <code>Behavior On Miss</code> to better reflect that this option also affects rotation while <code>Apply Rotation</code> is turned on.</li>
<li>VRCRaycast now behaves correctly in SDK projects where domain reloading is disabled.</li>
<li>Added an option to allow raycast distance to change with the Z scale of the transform the component is attached to.<!-- -->
<ul>
<li>It's still limited to a maximum distance of 1000 units.</li>
</ul>
</li>
<li>Added <code>public</code> C# properties to the raycast component for user-made SDK tooling.</li>
</ul>
</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="fixes--changes-from-3103-beta2-to-live">Fixes &amp; Changes from <code>3.10.3-beta.2</code> to live<a href="https://creators.vrchat.com/releases/release-3-10-3#fixes--changes-from-3103-beta2-to-live" class="hash-link" aria-label="Direct link to fixes--changes-from-3103-beta2-to-live" title="Direct link to fixes--changes-from-3103-beta2-to-live">​</a></h2>
<ul>
<li>Removed <code>Disable On Miss</code> from <a href="https://creators.vrchat.com/avatars/avatar-components/raycast">VRCRaycast</a>, since it's redundant now that avatar animator parameters are available instead.</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="known-issues">Known Issues<a href="https://creators.vrchat.com/releases/release-3-10-3#known-issues" class="hash-link" aria-label="Direct link to Known Issues" title="Direct link to Known Issues">​</a></h2>
<ul>
<li>In rare cases, you may see an "All pipe instances are busy" error while building. This is a Unity issue - restarting your editor and trying again should fix it.</li>
</ul>]]></content>
        <author>
            <name>Momo the Monster</name>
            <uri>https://github.com/momo-the-monster</uri>
        </author>
        <category label="release" term="release"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[Release 3.10.2]]></title>
        <id>https://creators.vrchat.com/releases/release-3-10-2</id>
        <link href="https://creators.vrchat.com/releases/release-3-10-2"/>
        <updated>2026-02-05T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Summary]]></summary>
        <content type="html"><![CDATA[<h2 class="anchor anchorWithStickyNavbar_LWe7" id="summary">Summary<a href="https://creators.vrchat.com/releases/release-3-10-2#summary" class="hash-link" aria-label="Direct link to Summary" title="Direct link to Summary">​</a></h2>
<p>SDK Version <code>3.10.2</code> brings a large number of fixes and UX improvements, alongside several new Udon APIs.</p>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="features">Features<a href="https://creators.vrchat.com/releases/release-3-10-2#features" class="hash-link" aria-label="Direct link to Features" title="Direct link to Features">​</a></h2>
<ul>
<li>Added <code>EventTiming.PostLateUpdate</code> and <code>EventTiming.FixedUpdate</code> as available timing options for <a href="https://creators.vrchat.com/worlds/udon/graph/special-nodes#sendcustomeventdelayedframes">delayed custom events</a> in Udon.</li>
<li>Added the option to read and filter client log files within the SDK.<!-- -->
<ul>
<li>You can find this utility under <code>VRChat SDK/Udon Sharp/Parse Logs from File</code>.</li>
<li>Special thanks to "BobyStar" for <a href="https://feedback.vrchat.com/sdk-bug-reports/p/add-parse-logs-from-file-option-from-udonsharp-12b" target="_blank" rel="noopener noreferrer">this canny</a>!</li>
</ul>
</li>
<li>UX improvements for the <a href="https://creators.vrchat.com/avatars/expression-menu-and-controls/">Avatar Expressions Menu</a> editor:<!-- -->
<ul>
<li>Since controls always set their associated parameters to zero when they deactivate, the SDK now warns you when you try to set the activation value to zero, too, because this would mean the parameter's value would never move off zero - which is probably not what you want.</li>
<li>When targeting a Boolean parameter, the <code>Value</code> attribute is now hidden and is always treated as enabled, since that's the only option that works for a Boolean (<code>true</code> when activated, <code>false</code> when deactivated).</li>
</ul>
</li>
<li>Added a parameterless version of <a href="https://creators.vrchat.com/worlds/udon/players/getting-players#getplayers"><code>VRCPlayerApi.GetPlayers()</code></a> that returns an array of the players currently in your world.<!-- -->
<ul>
<li>The version accepting an array of players to populate also remains available, and is still preferred when getting the current list of players very regularly (for example, every frame) due to memory allocations.</li>
</ul>
</li>
<li>Added <code>matchingTags</code> to <code>ContactExitInfo</code>. This means you can now check what tags a VRChat Contact Sender and Receiver have in common as they stop contacting each other.<!-- -->
<ul>
<li>Previously, this was only available when the contacts started contacting each other.</li>
<li>Check <a href="https://creators.vrchat.com/common-components/contacts/#udon-access-in-worlds">the Udon API documentation</a> for details.</li>
</ul>
</li>
<li><a href="https://creators.vrchat.com/avatars/state-behaviors/#avatar-parameter-driver">Avatar Parameter Drivers</a> now support preventing repeats when selecting random values, meaning the parameter will never be set to the same value twice in a row.</li>
<li>The properties <code>enabled</code> and <code>isActiveAndEnabled</code> have been allowlisted for use in UdonGraph and UdonSharp. This applies to everything that derives from <code>UnityEngine.Behaviour</code>, which includes the majority of custom and built-in components.<!-- -->
<ul>
<li>Known limitation: Accessing <code>enabled</code> or <code>isActiveAndEnabled</code> on a field serialized as a <code>Behaviour</code> will not work if the component being targeted is derived from <code>UdonSharpBehaviour</code>. You should instead declare the field with your own custom U# type.</li>
</ul>
</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="fixes--changes">Fixes &amp; Changes<a href="https://creators.vrchat.com/releases/release-3-10-2#fixes--changes" class="hash-link" aria-label="Direct link to Fixes &amp; Changes" title="Direct link to Fixes &amp; Changes">​</a></h2>
<ul>
<li>In the "Authentication" tab, pressing the "Enter"/"Return" key after entering your username and password now logs you in.<!-- -->
<ul>
<li>We also shifted things around slightly to make it less likely that you accidentally hit "Logout" while trying to verify your 2FA code.</li>
</ul>
</li>
<li>Removed redundant spaces that were included when serializing a <a href="https://creators.vrchat.com/worlds/udon/data-containers/data-lists">data list</a> or <a href="https://creators.vrchat.com/worlds/udon/data-containers/data-dictionaries">data dictionary</a> to JSON with the <code>Minify</code> export type using <a href="https://creators.vrchat.com/worlds/udon/data-containers/vrcjson">VRCJSON</a>.</li>
<li><a href="https://creators.vrchat.com/worlds/udon/data-containers/vrcjson#json-functions"><code>VRCJson.TryDeserializeFromJson()</code></a> now always returns <code>false</code> instead of potentially throwing an exception if the input cannot be deserialized.</li>
<li>Fixed <a href="https://creators.vrchat.com/worlds/udon/data-containers/data-dictionaries">DataDictionary</a> sometimes failing to get a value if the key is a data structure like <code>Vector3Int</code>.</li>
<li>The <a href="https://creators.vrchat.com/worlds/components/vrc_mirrorreflection">VRCMirrorReflection</a> component now instantiates non-editable materials instead of changing the original material directly. This means the component no longer modifies the default material built into Unity when it is added to a Unity primitive.</li>
<li>Passing VRChat Contact Sender or Receiver proxy objects to <code>Utilities.IsValid()</code> now gives accurate results based on whether or not the proxy is still valid.</li>
<li>Fixed <a href="https://creators.vrchat.com/common-components/constraints/">VRChat Constraints</a> sometimes failing to appear properly in the inspector when viewed as prefab overrides.</li>
<li>Added a validation hint to disable the "Auto Roll" option for particle systems in worlds, since this can be immersion-breaking for users in VR.</li>
<li>Fixed <a href="https://creators.vrchat.com/worlds/components/vrc_pickup/">VRCPickup</a>'s "Use Text" inspector field not appearing consistently.</li>
<li>Fixed an issue that could result in the <code>VRCFallback</code> tag being set incorrectly on materials after using certain community packages, which could then result in the materials not appearing correctly inside VRChat.</li>
<li>The SDK no longer reverts changes made to the default world scene and UdonSharp utility scripts when you delete your world project's Library folder.<!-- -->
<ul>
<li>Additionally, UdonSharp utility scripts that come with new world projects will no longer be recreated if you delete them, provided you don't also delete the data locator next to them.</li>
</ul>
</li>
<li>Removed some empty entries in the default expression parameters set included in the SDK's samples.</li>
<li>Fixed validation messages being generated against the wrong platform in avatar and world projects if any assets have platform-specific overrides.</li>
<li>Fixed PhysBones regression which caused bones resting on PhysBone colliders to jitter.</li>
<li>PhysBone roots can now be multi-edited.</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="fixes--changes-from-3102-beta1-to-live">Fixes &amp; Changes from <code>3.10.2-beta.1</code> to live<a href="https://creators.vrchat.com/releases/release-3-10-2#fixes--changes-from-3102-beta1-to-live" class="hash-link" aria-label="Direct link to fixes--changes-from-3102-beta1-to-live" title="Direct link to fixes--changes-from-3102-beta1-to-live">​</a></h2>
<ul>
<li>Added 4 new <a href="https://creators.vrchat.com/worlds/udon/vrc-graphics/vrchat-shader-globals/">shader globals</a> containing information about time.</li>
<li>The Toon Standard shader and its Outline variant now set <code>"RenderType" = "Opaque"</code>.</li>
<li>Fixed internal exceptions caused by destroying a PhysBone that is the parent of one or more VRChat Constraints.</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="known-issues">Known Issues<a href="https://creators.vrchat.com/releases/release-3-10-2#known-issues" class="hash-link" aria-label="Direct link to Known Issues" title="Direct link to Known Issues">​</a></h2>
<ul>
<li>In rare cases, you may see an "All pipe instances are busy" error while building. This is a Unity issue - restarting your editor and trying again should fix it.</li>
</ul>]]></content>
        <author>
            <name>Momo the Monster</name>
            <uri>https://github.com/momo-the-monster</uri>
        </author>
        <category label="release" term="release"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[Release 3.10.1]]></title>
        <id>https://creators.vrchat.com/releases/release-3-10-1</id>
        <link href="https://creators.vrchat.com/releases/release-3-10-1"/>
        <updated>2025-12-02T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Summary]]></summary>
        <content type="html"><![CDATA[<h2 class="anchor anchorWithStickyNavbar_LWe7" id="summary">Summary<a href="https://creators.vrchat.com/releases/release-3-10-1#summary" class="hash-link" aria-label="Direct link to Summary" title="Direct link to Summary">​</a></h2>
<p>SDK Version <code>3.10.1</code> fixes two critical bugs in the avatars SDK. Check out the <a href="https://creators.vrchat.com/releases/release-3-10-0">3.10.0 changelog</a> for the latest features.</p>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="fixes--changes">Fixes &amp; Changes<a href="https://creators.vrchat.com/releases/release-3-10-1#fixes--changes" class="hash-link" aria-label="Direct link to Fixes &amp; Changes" title="Direct link to Fixes &amp; Changes">​</a></h2>
<ul>
<li>Fixed a performance regression caused by nesting avatars under a shared root game object. This caused delays as you opened or refreshed the Builder tab in the VRChat SDK control panel.</li>
<li>Choosing a high resolution image for an avatar thumbnail no longer breaks first time avatar creation.</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="known-issues">Known Issues<a href="https://creators.vrchat.com/releases/release-3-10-1#known-issues" class="hash-link" aria-label="Direct link to Known Issues" title="Direct link to Known Issues">​</a></h2>
<ul>
<li>In rare cases, you may see an "All pipe instances are busy" error while building. This is a Unity issue - restarting your editor and trying again should fix it.</li>
</ul>]]></content>
        <author>
            <name>Momo the Monster</name>
            <uri>https://github.com/momo-the-monster</uri>
        </author>
        <category label="release" term="release"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[Release 3.10.0]]></title>
        <id>https://creators.vrchat.com/releases/release-3-10-0</id>
        <link href="https://creators.vrchat.com/releases/release-3-10-0"/>
        <updated>2025-10-24T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Summary]]></summary>
        <content type="html"><![CDATA[<h2 class="anchor anchorWithStickyNavbar_LWe7" id="summary">Summary<a href="https://creators.vrchat.com/releases/release-3-10-0#summary" class="hash-link" aria-label="Direct link to Summary" title="Direct link to Summary">​</a></h2>
<p>SDK Version <code>3.10.0</code> brings <strong>VRChat Dynamics</strong> to <strong>Worlds</strong>! This includes <a href="https://creators.vrchat.com/common-components/physbones">PhysBones</a>, <a href="https://creators.vrchat.com/common-components/contacts">Contacts</a>, <a href="https://creators.vrchat.com/common-components/constraints">VRC Constraints</a>, and Udon integration for all of them. Additionally, <a href="https://creators.vrchat.com/worlds/udon/persistence/">world persistence</a> now exposes data usage information and limits.</p>
<div class="theme-admonition theme-admonition-info admonition_xJq3 alert alert--info"><div class="admonitionHeading_Gvgb"><span class="admonitionIcon_Rf37"><svg viewBox="0 0 14 16"><path fill-rule="evenodd" d="M7 2.3c3.14 0 5.7 2.56 5.7 5.7s-2.56 5.7-5.7 5.7A5.71 5.71 0 0 1 1.3 8c0-3.14 2.56-5.7 5.7-5.7zM7 1C3.14 1 0 4.14 0 8s3.14 7 7 7 7-3.14 7-7-3.14-7-7-7zm1 3H6v5h2V4zm0 6H6v2h2v-2z"></path></svg></span>info</div><div class="admonitionContent_BuS1"><p>This release was originally versioned <code>3.9.1</code>, then bumped due to incompatible APIs.</p></div></div>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="new-features">New Features<a href="https://creators.vrchat.com/releases/release-3-10-0#new-features" class="hash-link" aria-label="Direct link to New Features" title="Direct link to New Features">​</a></h2>
<ul>
<li><strong>VRChat Dynamics are now supported in Worlds</strong>!<!-- -->
<ul>
<li><a href="https://creators.vrchat.com/common-components/physbones">PhysBones</a>, <a href="https://creators.vrchat.com/common-components/contacts">Contacts</a> and <a href="https://creators.vrchat.com/common-components/constraints">VRC Constraints</a> are now available in worlds projects.</li>
<li>All of these components have new Udon APIs and events that allow your scripts to work with them!</li>
<li>This is one of the <a href="https://feedback.vrchat.com/udon/p/physbones-in-the-worlds-sdk" target="_blank" rel="noopener noreferrer">most requested features</a> for our Worlds SDK - we can't wait to see what you will create with it!</li>
</ul>
</li>
<li>World persistence now has an API to retrieve <a href="https://creators.vrchat.com/worlds/udon/persistence/player-data/#storage-information">Storage Information</a>.<!-- -->
<ul>
<li>This includes 3 new functions, <code>GetPlayerDataStorageUsage</code>, <code>GetPlayerDataStorageLimit</code>, and <code>RequestStorageUsageUpdate</code>.</li>
<li>The <code>Request</code> function pairs with the new <code>OnPersistenceUsageUpdated</code> event.</li>
<li>There are also 2 new events for <code>PlayerData</code> usage: <code>OnPlayerDataStorageWarning</code> and <code>OnPlayerDataStorageExceeded</code>.</li>
</ul>
</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="fixes--changes">Fixes &amp; Changes<a href="https://creators.vrchat.com/releases/release-3-10-0#fixes--changes" class="hash-link" aria-label="Direct link to Fixes &amp; Changes" title="Direct link to Fixes &amp; Changes">​</a></h2>
<ul>
<li>A validation warning is now shown in world projects where any spawn point is below the respawn height for the world.</li>
<li>Improved handling of missing spawn points in world projects.</li>
<li>Reduced internal log output when a project loads and when assemblies are reloaded.</li>
<li>Avatar and world IDs now have leading and trailing whitespace removed.</li>
<li>Fixed an SDK crash triggered by deleting any source transform for a VRChat constraint while that constraint component was still visible in the inspector.</li>
<li>Fixed the validations window inadvertently resetting custom poses or animations applied to the avatar in the scene every time it was refreshed.</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="fixes--changes-from-391-beta1-to-391-beta2">Fixes &amp; Changes from <code>3.9.1-beta.1</code> to <code>3.9.1-beta.2</code><a href="https://creators.vrchat.com/releases/release-3-10-0#fixes--changes-from-391-beta1-to-391-beta2" class="hash-link" aria-label="Direct link to fixes--changes-from-391-beta1-to-391-beta2" title="Direct link to fixes--changes-from-391-beta1-to-391-beta2">​</a></h2>
<ul>
<li>Changed <code>VRCContactReceiver.UpdateContentTypes()</code> to take an array of strings instead of an <code>IEnumerable</code> of strings. This should fix Udon graphs containing this method not compiling correctly.<!-- -->
<ul>
<li>If you were previously using this method in U# and passing anything other than a <code>string[]</code> to it, you'll now need to update your scripts to pass a string array.</li>
</ul>
</li>
<li>Resolved an unintended compatibility breaking change with some community made tools.<!-- -->
<ul>
<li>Specifically, the class <code>PhysBoneGrabHelper</code> has been moved back to its original assembly location.</li>
</ul>
</li>
<li>Removed <code>name</code> from the list of symbols exposed to Udon for PhysBones, Contacts and VRC Constraints in worlds.<!-- -->
<ul>
<li>This was causing confusion and can be accessed via the <code>.gameObject</code> property anyway.</li>
</ul>
</li>
<li>On contact receivers, the "Allow Self" and "Allow Others" options now only apply when the incoming sender is part of an avatar, meaning these settings are unused when dealing with a contact sender in a world.<!-- -->
<ul>
<li>Remember, you can disable "World" in "Content Types" if you don't want a receiver on your avatar to detect world contact senders.</li>
</ul>
</li>
<li>PhysBones, Contacts and VRC Constraints now behave properly when used on a <code>VRCPlayerObject</code>.</li>
<li>PhysBones instantiated in a world using <code>Object.Instantiate()</code> now simulate properly instead of staying rigid.<!-- -->
<ul>
<li>Grabs and poses will not synchronize between clients on PhysBones that are instantiated in this way, similarly to how Udon behaviors on instantiated objects are also unsynced.</li>
</ul>
</li>
<li>Fixed some entries in the Udon Class Exposure Tree showing as "not exposed" when they actually are. This mostly affected the recently added dynamics components.</li>
<li>Fixed avatar uploads failing with an incorrect "missing thumbnail" error if the upload process was interrupted part way through.</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="fixes--changes-from-391-beta2-to-3100-beta1-and-3100">Fixes &amp; Changes from <code>3.9.1-beta.2</code> to <code>3.10.0-beta.1</code> and <code>3.10.0</code><a href="https://creators.vrchat.com/releases/release-3-10-0#fixes--changes-from-391-beta2-to-3100-beta1-and-3100" class="hash-link" aria-label="Direct link to fixes--changes-from-391-beta2-to-3100-beta1-and-3100" title="Direct link to fixes--changes-from-391-beta2-to-3100-beta1-and-3100">​</a></h2>
<ul>
<li>Compatibility changes related to the <code>PermissionFilter</code> struct used by PhysBones.<!-- -->
<ul>
<li>New constructors have been added, including a default constructor that takes no parameters. These constructors set the <code>contentTypes</code> property to <code>Everything</code>, which resolves an incompatibility with some existing community packages.</li>
<li>The planned SDK release version has been moved from <code>3.9.1</code> to <code>3.10.0</code> due to remaining incompatibilities that we were unable to resolve sufficiently.</li>
</ul>
</li>
<li>Fixed <code>OnPhysBoneGrabbed()</code> not receiving the player that initiated the grab when using ClientSim in a world project.</li>
<li>Resolved a case that would allow uploading an avatar with no thumbnail attached to it.</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="known-issues">Known Issues<a href="https://creators.vrchat.com/releases/release-3-10-0#known-issues" class="hash-link" aria-label="Direct link to Known Issues" title="Direct link to Known Issues">​</a></h2>
<ul>
<li>In rare cases, you may see an "All pipe instances are busy" error while building. This is a Unity issue - restarting your editor and trying again should fix it.</li>
</ul>]]></content>
        <author>
            <name>Momo the Monster</name>
            <uri>https://github.com/momo-the-monster</uri>
        </author>
        <category label="release" term="release"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[Release 3.9.0]]></title>
        <id>https://creators.vrchat.com/releases/release-3-9-0</id>
        <link href="https://creators.vrchat.com/releases/release-3-9-0"/>
        <updated>2025-10-06T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Summary]]></summary>
        <content type="html"><![CDATA[<h2 class="anchor anchorWithStickyNavbar_LWe7" id="summary">Summary<a href="https://creators.vrchat.com/releases/release-3-9-0#summary" class="hash-link" aria-label="Direct link to Summary" title="Direct link to Summary">​</a></h2>
<p>SDK Version <code>3.9.0</code> brings an Udon API for the camera dolly, a new Auto Hold mode for pickups, improvements to the Network ID Utility, new <code>VRCCameraSettings</code> APIs, and some changes to how Avatar IDs are assigned.</p>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="new-features">New Features<a href="https://creators.vrchat.com/releases/release-3-9-0#new-features" class="hash-link" aria-label="Direct link to New Features" title="Direct link to New Features">​</a></h2>
<ul>
<li>Worlds can now define <a href="https://wiki.vrchat.com/wiki/Camera_Dolly" target="_blank" rel="noopener noreferrer">Camera Dolly</a> paths and activate them via Udon!<!-- -->
<ul>
<li>Check out the <a href="https://creators.vrchat.com/worlds/components/vrc_cameradolly">dolly documentation</a> on how to use the new <code>VRCCameraDollyAnimation</code>, <code>VRCCameraDollyPath</code>, and <code>VRCCameraDollyPoint</code> components together with the <code>VRCCameraDollyAnimation.Import()</code> Udon function.</li>
</ul>
</li>
<li>"AutoHold" for <a href="https://creators.vrchat.com/worlds/components/vrc_pickup/">VRCPickup</a> objects is now supported across all input devices!<!-- -->
<ul>
<li>You can choose to <a href="https://creators.vrchat.com/worlds/components/vrc_pickup/#versions">upgrade any pickup</a> in your world to the new AutoHold system for improved handling (and a simpler yes/no checkbox instead of a 3-choice dropdown), then reupload your world to use the new system.</li>
<li>If you don't upgrade your pickups, your existing worlds are unaffected.</li>
</ul>
</li>
<li>Additions to the <a href="https://creators.vrchat.com/worlds/udon/vrc-graphics/vrc-camera-settings/">VRCCameraSettings</a> and <a href="https://creators.vrchat.com/worlds/udon/vrc-graphics/vrc-quality-settings">VRCQualitySettings</a> APIs:<!-- -->
<ul>
<li>Exposed <code>CullingMask</code> property via <code>VRCCameraSettings</code> to allow modifying active render layers at runtime. Some internal layers are excluded from this.</li>
<li>Added a <code>VRCCameraSettings.GetCurrentCamera</code> function as a proxy for Unity's <code>Camera.current</code>.</li>
<li>Added <code>VRCQualitySettings.ShadowCascade2Split</code> and <code>ShadowCascade2Split</code> properties. These are writeable.</li>
<li>Enabled setting <code>depthTextureMode</code> on <code>VRCCameraSettings.PhotoCamera</code>. Note that you cannot disable basic Depth mode on PhotoCamera, but you can additively add other flags.</li>
</ul>
</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="fixes--changes">Fixes &amp; Changes<a href="https://creators.vrchat.com/releases/release-3-9-0#fixes--changes" class="hash-link" aria-label="Direct link to Fixes &amp; Changes" title="Direct link to Fixes &amp; Changes">​</a></h2>
<ul>
<li>Removed the trust rank requirement for building &amp; testing worlds and avatars.<!-- -->
<ul>
<li>This means that Visitor accounts can now use the SDK to locally build and test their own avatars and worlds.</li>
<li>However, Visitors still need to increase their trust rank before uploading content.</li>
</ul>
</li>
<li>Fixes and improvements to the Network ID Utility:<!-- -->
<ul>
<li>Improved UI responsiveness in very large projects containing a lot of networked objects.</li>
<li>Fixed a case where importing IDs would fail due to an exception being thrown.</li>
<li>The tool now warns against GameObjects with forward slashes (<code>/</code>) in their names while exporting, since this can cause problems when importing again later.</li>
</ul>
</li>
<li>Fixed the <code>_Angle</code> parameter on <a href="https://creators.vrchat.com/common-components/physbones/">PhysBones</a> not working if the PhysBone chain started with a scale of zero.</li>
<li>Minor performance improvement to the <a href="https://creators.vrchat.com/common-components/physbones/">PhysBone</a> inspector panel.</li>
<li><code>VRCShader.SetGlobalInteger</code> now uses the correct integer variant of the backing <code>UnityEngine.Shader</code> function, preserving bit patterns.</li>
<li>Improved handling of <code>UdonBehaviour</code> components with an invalid script assigned to them.</li>
<li><a href="https://creators.vrchat.com/worlds/udon/udonsharp/">UdonSharp</a> scripts are now recompiled when you switch platforms.</li>
<li>Fixed world uploads sometimes failing due to the SDK trying to assign an avatar ID instead of a world ID.</li>
<li>Transform animations inside the <code>Gesture</code> layer should no longer break if no custom FX Layer is provided.</li>
<li>The <code>vrc_AvatarV3FaceLayer</code> sample controller now follows our animator best practices.</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="about-avatar-id-assignments">About Avatar ID Assignments<a href="https://creators.vrchat.com/releases/release-3-9-0#about-avatar-id-assignments" class="hash-link" aria-label="Direct link to About Avatar ID Assignments" title="Direct link to About Avatar ID Assignments">​</a></h2>
<p>This SDK update changes how content IDs (those <code>avtr_*</code> strings) are assigned in our backend.</p>
<div class="theme-admonition theme-admonition-info admonition_xJq3 alert alert--info"><div class="admonitionHeading_Gvgb"><span class="admonitionIcon_Rf37"><svg viewBox="0 0 14 16"><path fill-rule="evenodd" d="M7 2.3c3.14 0 5.7 2.56 5.7 5.7s-2.56 5.7-5.7 5.7A5.71 5.71 0 0 1 1.3 8c0-3.14 2.56-5.7 5.7-5.7zM7 1C3.14 1 0 4.14 0 8s3.14 7 7 7 7-3.14 7-7-3.14-7-7-7zm1 3H6v5h2V4zm0 6H6v2h2v-2z"></path></svg></span>info</div><div class="admonitionContent_BuS1"><p>If you only use the SDK via the built-in UI (the VRChat SDK Control Panel), nothing changes for you.</p><p>If you're a tool author or technical user, keep reading!</p></div></div>
<ul>
<li>For tools that use the VRChat SDK's native <code>BuildAndUpload</code> method:</li>
</ul>
<table><thead><tr><th></th><th></th></tr></thead><tbody><tr><td>New avatars</td><td>No change required.</td></tr><tr><td>Existing avatars</td><td>The <code>VRCAvatar</code> struct <strong>must</strong> now contain the avatar ID. This field was already available, but previously optional.</td></tr></tbody></table>
<ul>
<li>For tools that manually call the <code>Build</code> and <code>Upload</code> methods:</li>
</ul>
<table><thead><tr><th></th><th></th></tr></thead><tbody><tr><td>New avatars</td><td>You need to reserve a new ID on our API via the <code>VRCApi.CreateAvatarRecord</code> method. Note that we highly encourage using the combined <code>BuildAndUpload</code> method which takes care of this for you.</td></tr><tr><td>Existing avatars</td><td>The <code>VRCAvatar</code> struct <strong>must</strong> now contain the avatar ID. This field was already available, but previously optional.</td></tr></tbody></table>
<p>As this is considered a breaking change, the version number of this update has been bumped to <code>3.9.0</code> according to our <a href="https://vcc.docs.vrchat.com/vpm/packages/#vrchats-official-packages-versioning-strategy" target="_blank" rel="noopener noreferrer">versioning scheme</a>.</p>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="fixes-between-390-beta1-and-390">Fixes between <code>3.9.0-beta.1</code> and <code>3.9.0</code><a href="https://creators.vrchat.com/releases/release-3-9-0#fixes-between-390-beta1-and-390" class="hash-link" aria-label="Direct link to fixes-between-390-beta1-and-390" title="Direct link to fixes-between-390-beta1-and-390">​</a></h2>
<ul>
<li>Setters on <code>VRCCameraSettings</code> can now be used from <code>Start</code> in ClientSim without throwing exceptions.</li>
<li>Using <code>Standard Lite</code> shaders in worlds no longer breaks lightmapping.<!-- -->
<ul>
<li>This used to result in an infinite "compiling shaders…" during bakes.</li>
</ul>
</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="known-issues">Known Issues<a href="https://creators.vrchat.com/releases/release-3-9-0#known-issues" class="hash-link" aria-label="Direct link to Known Issues" title="Direct link to Known Issues">​</a></h2>
<ul>
<li>In rare cases, you may see an "All pipe instances are busy" error while building. This is a Unity issue - restarting your editor and trying again should fix it.</li>
<li>The "Upgrade" button may not appear on <code>VRCPickup</code> components if multiple are selected at once.</li>
</ul>]]></content>
        <author>
            <name>Momo the Monster</name>
            <uri>https://github.com/momo-the-monster</uri>
        </author>
        <category label="release" term="release"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[Release 3.8.2]]></title>
        <id>https://creators.vrchat.com/releases/release-3-8-2</id>
        <link href="https://creators.vrchat.com/releases/release-3-8-2"/>
        <updated>2025-06-25T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Summary]]></summary>
        <content type="html"><![CDATA[<h2 class="anchor anchorWithStickyNavbar_LWe7" id="summary">Summary<a href="https://creators.vrchat.com/releases/release-3-8-2#summary" class="hash-link" aria-label="Direct link to Summary" title="Direct link to Summary">​</a></h2>
<p>SDK version <code>3.8.2</code> brings a spawn radius setting to worlds, matches the new <code>Item</code> Unity layer to the VRChat client, and fixes several issues.</p>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="fixes--changes">Fixes &amp; Changes<a href="https://creators.vrchat.com/releases/release-3-8-2#fixes--changes" class="hash-link" aria-label="Direct link to Fixes &amp; Changes" title="Direct link to Fixes &amp; Changes">​</a></h2>
<h3 class="anchor anchorWithStickyNavbar_LWe7" id="for-world-creators">For World Creators<a href="https://creators.vrchat.com/releases/release-3-8-2#for-world-creators" class="hash-link" aria-label="Direct link to For World Creators" title="Direct link to For World Creators">​</a></h3>
<ul>
<li>The <code>reserved3</code> <a href="https://creators.vrchat.com/worlds/layers/">Unity layer</a> has been renamed to <code>Item</code>, and is now set up in the physics collision matrix to match the VRChat client (items only collide with other items).</li>
<li>Worlds now support a spawn radius for players!<!-- -->
<ul>
<li>The SDK now lets you define a circular <code>Spawn Radius</code> in the <a href="https://creators.vrchat.com/worlds/components/vrc_scenedescriptor">scene descriptor component</a>. The radius applies to all spawn points, and the editor visualizes the radius when you select a spawn point in the scene view.</li>
<li>The spawn radius defaults to <code>0.2m</code> for new worlds (as defined in the default VRC world scene template).</li>
<li>Players spawn randomly within this radius. New and existing worlds where the radius is set to <code>0</code> continue to work as before, with players spawning at the exact spawn point.</li>
</ul>
</li>
<li>Fixed the <code>DownloadImage()</code> method in <code>VRCImageDownloader</code> throwing an exception when called from Udon Sharp with no event receiver.</li>
<li>Fixed <code>VRCObjectPool</code>'s <code>StartPositions</code> and <code>StartRotations</code> showing as exposed in the Udon class exposure tree window.</li>
<li>Fixed ClientSim not letting you enter Play Mode without a Scene Descriptor.</li>
</ul>
<h3 class="anchor anchorWithStickyNavbar_LWe7" id="for-avatar-creators">For Avatar Creators<a href="https://creators.vrchat.com/releases/release-3-8-2#for-avatar-creators" class="hash-link" aria-label="Direct link to For Avatar Creators" title="Direct link to For Avatar Creators">​</a></h3>
<ul>
<li>You can now edit avatar tags in the SDK.</li>
<li>Added a validation error that prevents a humanoid avatar from being uploaded if it has a nested armature.<!-- -->
<ul>
<li>"Nested armature" means the root of the armature is not a direct child of the GameObject containing the avatar's animator. Avatars set up this way have previously not had animations play for other users when seen in VRChat.</li>
<li>Specifically, this means the <code>avatarRoot</code> on the root <code>Animator</code> is not the same transform as the <code>VRC_AvatarDescriptor</code>.</li>
<li>This is not a supported configuration.</li>
</ul>
</li>
<li>Opening the VRChat SDK Build Panel no longer creates an empty "VRC Per-Platform Overrides" component.</li>
<li>When all <a href="https://creators.vrchat.com/avatars/per-platform-avatar-overrides">per-platform overrides</a> are removed from an avatar, the "VRC Per-Platform Overrides" component will now be removed as well.</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="fixes--changes-between-382-beta1-and-live">Fixes &amp; Changes between <code>3.8.2-beta.1</code> and live<a href="https://creators.vrchat.com/releases/release-3-8-2#fixes--changes-between-382-beta1-and-live" class="hash-link" aria-label="Direct link to fixes--changes-between-382-beta1-and-live" title="Direct link to fixes--changes-between-382-beta1-and-live">​</a></h2>
<ul>
<li><code>Toon Standard</code> shader updates:<!-- -->
<ul>
<li>Fixed "Outline from Albedo" not taking Tint and Vertex Color (if enabled) into account.</li>
<li>Fixed normal maps being inverted on backfaces and outlines sometimes glitching through on "Cull Off" (double-sided) materials.</li>
</ul>
</li>
<li>Updated the performance rank message in the SDK Build Panel to mention that it is only an estimate.</li>
<li>Adjusted the messaging on avatar pedestals with private avatar IDs to be more accurate.</li>
<li>All custom events are visible in the Udon Graph editor's sidebar again.</li>
<li>Added a warning when any of the Spawns in the <code>VRC Scene Descriptor</code> are too far from origin (more than 1000 units on any axis).<!-- -->
<ul>
<li>Moving the player this far out can cause issues with rendering or UI interaction and is not recommended.</li>
</ul>
</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="known-issues">Known Issues<a href="https://creators.vrchat.com/releases/release-3-8-2#known-issues" class="hash-link" aria-label="Direct link to Known Issues" title="Direct link to Known Issues">​</a></h2>
<ul>
<li>In rare cases, you may see an "All pipe instances are busy" error while building. This is a Unity issue - restarting your editor and trying again should fix it.</li>
</ul>]]></content>
        <author>
            <name>Momo the Monster</name>
            <uri>https://github.com/momo-the-monster</uri>
        </author>
        <category label="release" term="release"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[Release 3.8.1]]></title>
        <id>https://creators.vrchat.com/releases/release-3-8-1</id>
        <link href="https://creators.vrchat.com/releases/release-3-8-1"/>
        <updated>2025-05-22T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Summary]]></summary>
        <content type="html"><![CDATA[<h2 class="anchor anchorWithStickyNavbar_LWe7" id="summary">Summary<a href="https://creators.vrchat.com/releases/release-3-8-1#summary" class="hash-link" aria-label="Direct link to Summary" title="Direct link to Summary">​</a></h2>
<p>Version <code>3.8.1</code> adds the mobile-compatible <code>Toon Standard</code> shader, <a href="https://creators.vrchat.com/worlds/udon/networking/events/#sending-events-with-parameters">Udon network events with parameters</a>, exposes several new VRChat-specific classes to Udon (including <a href="https://creators.vrchat.com/worlds/udon/vrc-graphics/vrc-camera-settings">Camera access</a> and <a href="https://creators.vrchat.com/worlds/udon/networking/network-stats">Network Debug Stats</a>), and <a href="https://creators.vrchat.com/platforms/iOS/build-test-mobile">adds Build &amp; Test for iOS</a>.</p>
<p>This update also allows specifying <a href="https://creators.vrchat.com/avatars/per-platform-avatar-overrides">per-platform overrides</a> for Multi-Platform Build &amp; Publish, and fixes several UI issues in the SDK Control Panel.</p>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="udon-network-events-with-parameters">Udon Network Events with Parameters<a href="https://creators.vrchat.com/releases/release-3-8-1#udon-network-events-with-parameters" class="hash-link" aria-label="Direct link to Udon Network Events with Parameters" title="Direct link to Udon Network Events with Parameters">​</a></h2>
<p>Please read the extensive <a href="https://creators.vrchat.com/worlds/udon/networking/events">network events documentation</a> for details! It includes several examples, network specifications for events, explanations around rate limiting, detailed notes on backward compatibility and security notes.</p>
<p>TL;DR: You can now specify up to 8 parameters on custom network events sent via <code>SendCustomNetworkEvent</code>. All types supported by Udon Sync work. In UdonSharp, you need to use the new <code>[NetworkCallable]</code> attribute. Your existing Udon scripts will continue to work without any changes.</p>
<ul>
<li>Added <code>[NetworkCallable]</code> attribute to UdonSharp, and extended the Udon Graph UI for the <code>Custom Event</code> node to allow parameters to be added.<!-- -->
<ul>
<li>Optionally takes a rate limit parameter, defaulting to 5 per second, per event (max 100 per second). Check out the <a href="https://creators.vrchat.com/worlds/udon/networking/events#rate-limiting">docs on rate-limiting</a>.</li>
</ul>
</li>
<li>Added <code>NetworkEventTarget.Others</code>, which acts similarly to <code>All</code> but excludes the sender from receiving their own event.</li>
<li>Added <code>NetworkEventTarget.Self</code>, which bypasses rate limits and can be used to send local events with parameters.</li>
<li>Added functions <code>NetworkCalling.GetQueuedEvents</code> and <code>NetworkCalling.GetAllQueuedEvents</code> to monitor outgoing event queues (useful when working with rate-limiting).<!-- -->
<ul>
<li>See <a href="https://creators.vrchat.com/worlds/udon/networking/events#congestion-monitoring">docs on congestion monitoring</a>.</li>
</ul>
</li>
<li>Added <code>VRCPlayerApi NetworkCalling.CallingPlayer { get; }</code> to get the sender of any event (including legacy ones!) while inside a function triggered remotely.<!-- -->
<ul>
<li>Includes <code>bool NetworkCalling.InNetworkCall { get; }</code> as a shortcut for <code>Utilities.IsValid(NetworkCalling.CallingPlayer)</code>.</li>
</ul>
</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="toon-standard-shader"><code>Toon Standard</code> Shader<a href="https://creators.vrchat.com/releases/release-3-8-1#toon-standard-shader" class="hash-link" aria-label="Direct link to toon-standard-shader" title="Direct link to toon-standard-shader">​</a></h2>
<ul>
<li>Added the <code>Toon Standard</code> shader, available as <code>VRChat/Mobile/Toon Standard</code>!</li>
<li>This is a full-featured toon shader that is compatible with mobile versions of VRChat. It can be used on PC, Android and iOS.</li>
<li>It comes with many highly requested features that you may know from community-made PC shaders. For example:<!-- -->
<ul>
<li>Custom shadow ramps with configurable toon-style shading</li>
<li>Detail maps with selectable UV channel and render mode</li>
<li>Packable Metallic, Gloss and Occlusion maps, with configurable color channels</li>
<li>Configurable backface culling</li>
<li>Matcap support, additive and multiplicative</li>
<li>Toggleable vertex color support</li>
<li>Hue shift effect</li>
<li>Rim lighting</li>
</ul>
</li>
<li>The focus of this shader is on performance, which means the feature set is limited. Transparency is not supported.</li>
<li>There is also a <code>Toon Standard (Outline)</code> variant that is PC-only. Uploading an avatar with the outline variant to a non-PC platform will automatically fall back to the non-outline variant.</li>
<li>You can select Toon Standard as a PC <a href="https://creators.vrchat.com/avatars/shader-fallback-system/" target="_blank" rel="noopener noreferrer">fallback shader</a> by specifying <code>toonstandard</code> or <code>toonstandardoutline</code> as the <code>VRCFallback</code> tag, making it opt-in.</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="even-more-new-features">Even More New Features<a href="https://creators.vrchat.com/releases/release-3-8-1#even-more-new-features" class="hash-link" aria-label="Direct link to Even More New Features" title="Direct link to Even More New Features">​</a></h2>
<ul>
<li>Added Build &amp; Test support for iOS.<!-- -->
<ul>
<li>This works a bit different than other platforms, so check out <a href="https://creators.vrchat.com/platforms/iOS/build-test-mobile">the documentation</a>!</li>
</ul>
</li>
<li>You can now specify per-platform versions of the avatar to be used during multi-platform build &amp; publish<!-- -->
<ul>
<li>Full documentation for this feature, including public API, is available <a href="https://creators.vrchat.com/avatars/per-platform-avatar-overrides">here</a>.</li>
</ul>
</li>
<li>Exposed <a href="https://creators.vrchat.com/worlds/udon/vrc-graphics/vrc-camera-settings">Screen &amp; Photo Camera</a> as well as certain <a href="https://creators.vrchat.com/worlds/udon/vrc-graphics/vrc-quality-settings">Quality Settings</a> to Udon via appropriate wrapper classes.<!-- -->
<ul>
<li>Also exposes certain quality settings, including <a href="https://creators.vrchat.com/worlds/udon/vrc-graphics/vrc-quality-settings#shadow-distance">shadow distance</a>, to Udon.</li>
<li>Includes 2 new events, <code>OnVRCCameraSettingsChanged</code> and <code>OnVRCQualitySettingsChanged</code>, for when the local user changes camera or quality settings, documented <a href="https://creators.vrchat.com/worlds/udon/graph/event-nodes/#onvrccamerasettingschanged">here</a>.</li>
</ul>
</li>
<li>Added several Udon interfaces to access network debug information.<!-- -->
<ul>
<li>These are meant for advanced Udon networking creators. Check the full documentation <a href="https://creators.vrchat.com/worlds/udon/networking/network-stats">here</a>.</li>
</ul>
</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="fixes--changes">Fixes &amp; Changes<a href="https://creators.vrchat.com/releases/release-3-8-1#fixes--changes" class="hash-link" aria-label="Direct link to Fixes &amp; Changes" title="Direct link to Fixes &amp; Changes">​</a></h2>
<ul>
<li>Fixed the "Alerts" section not updating after docking the SDK Build panel and switching tabs.</li>
<li>Fixed an issue where failing to build a world bundle could result in uploading a previous bundle (e.g. a bundle for a different platform).</li>
<li>Slightly changed how default scale factors are assigned when adding new targets to a <code>VRCHeadChop</code> component.<!-- -->
<ul>
<li>The component will now copy the weight from the previous target in the list. This change has been made to improve support for user made tools that assign scale factors from code.</li>
</ul>
</li>
<li>Fixed VRChat aim and look-at constraints calculating incorrect offsets in some specific situations with the component active and the offset unlocked.</li>
<li>The Avatar SDK no longer blocks the build button due to validation errors.<!-- -->
<ul>
<li>The builds will still fail if validations do not pass after all the avatar processing callbacks finish.</li>
</ul>
</li>
<li>SDK no longer becomes unresponsive when encountering API issues during thumbnail and content info updates.</li>
<li>SDK no longer gets stuck in a disabled state when attempting to save changes when the content name is empty.</li>
<li>Includes PhysBone fixes and changes up to VRChat client <code>2025.2.1</code>, build <code>1622</code>.</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="fixes--changes-in-381-beta2">Fixes &amp; Changes in <code>3.8.1-beta.2</code><a href="https://creators.vrchat.com/releases/release-3-8-1#fixes--changes-in-381-beta2" class="hash-link" aria-label="Direct link to fixes--changes-in-381-beta2" title="Direct link to fixes--changes-in-381-beta2">​</a></h2>
<ul>
<li>The copyright ownership confirmation modal has been moved to appear right after clicking "Build &amp; Publish" instead of before upload.</li>
<li>Clicking "Build &amp; Publish" on an avatar that has <a href="https://creators.vrchat.com/avatars/per-platform-avatar-overrides">per-platform overrides</a> set up will now use the override even without multiple platforms being selected.</li>
<li>Avatars with <a href="https://creators.vrchat.com/avatars/per-platform-avatar-overrides">per-platform overrides</a> configured now show a blue badge 🔵 near the "⋮" button of the avatar selector.</li>
<li>Moved <code>PerPlatformOverrides</code> code into the <code>VRC.SDK3A.Editor</code> assembly. This avoids breaking changes made in <code>3.8.1-beta.1</code>.<!-- -->
<ul>
<li>Updated <a href="https://creators.vrchat.com/avatars/per-platform-avatar-overrides">the documentation</a> to reflect the revised API for getting and setting per-platform avatar overrides.</li>
<li>See <a href="https://feedback.vrchat.com/open-beta/p/vrcsdk-381-beta1-vrcsdk-381-beta1-has-breaking-changes-for-ivrcsdkavatarbuildera" target="_blank" rel="noopener noreferrer">this canny</a> for details.</li>
</ul>
</li>
<li>Fixed a case where the content blueprint ID could get cleared when <code>BuildAndUpload</code> is called right after switching Scenes.</li>
<li>Reserved layers can no longer have their culling distance modified via <code>VRCCameraSettings.LayerCullDistances</code>.</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="features--changes-in-381-beta3">Features &amp; Changes in <code>3.8.1-beta.3</code><a href="https://creators.vrchat.com/releases/release-3-8-1#features--changes-in-381-beta3" class="hash-link" aria-label="Direct link to features--changes-in-381-beta3" title="Direct link to features--changes-in-381-beta3">​</a></h2>
<ul>
<li>Added the <code>Toon Standard</code> shader, available as <code>VRChat/Mobile/Toon Standard</code>!</li>
<li>The SDK no longer gets stuck on "Building Avatar" when building many avatars consecutively.</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="fixes--changes-in-381-beta4">Fixes &amp; Changes in <code>3.8.1-beta.4</code><a href="https://creators.vrchat.com/releases/release-3-8-1#fixes--changes-in-381-beta4" class="hash-link" aria-label="Direct link to fixes--changes-in-381-beta4" title="Direct link to fixes--changes-in-381-beta4">​</a></h2>
<ul>
<li>New features for <code>Toon Standard</code> based on your feedback!<!-- -->
<ul>
<li>Added toggleable vertex color support.</li>
<li>Added <code>MultiplyX2</code> detail map mode, similar to Standard Lite.</li>
<li>Removed <code>Mask</code> detail map mode. Instead, all modes now apply the mask texture.<!-- -->
<ul>
<li>The detail mask is now also applied to the detail normal map.</li>
</ul>
</li>
<li>Added Hue Shift slider for emission, as well as a Hue Shift Mask affecting all 3 sliders.<!-- -->
<ul>
<li>Hue Shift is now a toggleable feature that can be turned off to improve performance if unused.</li>
</ul>
</li>
<li>All mask textures can now select which color channel they use. You can configure this by clicking the <code>&gt;</code> arrow to the left of each texture slot.<!-- -->
<ul>
<li>By default, the setup matches Standard Lite, just like in <code>beta.3</code>.</li>
</ul>
</li>
<li>Removed <code>Anisotropy</code> slider and switched Specular implementation to regular isotropic GGX.<!-- -->
<ul>
<li>The anisotropic mode caused more confusion than it helped and had a non-insignificant performance overhead. If you have a specific use-case you consider important that requires this, let us know on our Feedback board.</li>
</ul>
</li>
<li>Added <code>Albedo Tint</code> slider for Rim light.</li>
<li>Light clamping is now applied on direct and indirect lighting together, instead of individually, and can be toggled on or off via the "Limit Brightness" option.</li>
<li>Also fixed a couple of bugs:<!-- -->
<ul>
<li>Switching to a built-in Shadow Ramp now resets Scale/Offset properly.</li>
<li>Selecting multiple materials using Toon Standard at once no longer resets their Shadow Ramp setting.</li>
<li>Detail and Emission maps no longer appear pixelated at high Scale/Offset values on certain hardware.</li>
<li>Matcaps in Multiplicative mode now apply correctly to additional lights in the ADD pass.</li>
</ul>
</li>
</ul>
</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="fixes--changes-in-the-final-release">Fixes &amp; Changes in the final release<a href="https://creators.vrchat.com/releases/release-3-8-1#fixes--changes-in-the-final-release" class="hash-link" aria-label="Direct link to Fixes &amp; Changes in the final release" title="Direct link to Fixes &amp; Changes in the final release">​</a></h2>
<ul>
<li><code>Toon Standard</code> fixes:<!-- -->
<ul>
<li>Improved specular stability on mobile devices, which should help reduce bright flashes/"sparkles".</li>
<li>The <code>Gloss Map</code> now applies to <code>Reflectivity</code> as well.</li>
<li>Fixed <code>Hue Shift</code> foldout incorrectly being synced to the topmost one.</li>
<li>Fixed default values for the <code>Shadow Ramp</code> slot.</li>
</ul>
</li>
<li><a href="https://creators.vrchat.com/avatars/per-platform-avatar-overrides">Per-platform overrides</a> now work correctly with prefabs and prefab variants.</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="known-issues">Known Issues<a href="https://creators.vrchat.com/releases/release-3-8-1#known-issues" class="hash-link" aria-label="Direct link to Known Issues" title="Direct link to Known Issues">​</a></h2>
<ul>
<li>In rare cases, you may see an "All pipe instances are busy" error while building. This is a Unity issue - restarting your editor and trying again should fix it.</li>
</ul>]]></content>
        <author>
            <name>Momo the Monster</name>
            <uri>https://github.com/momo-the-monster</uri>
        </author>
        <category label="release" term="release"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[Release 3.8.0]]></title>
        <id>https://creators.vrchat.com/releases/release-3-8-0</id>
        <link href="https://creators.vrchat.com/releases/release-3-8-0"/>
        <updated>2025-04-03T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Summary]]></summary>
        <content type="html"><![CDATA[<h2 class="anchor anchorWithStickyNavbar_LWe7" id="summary">Summary<a href="https://creators.vrchat.com/releases/release-3-8-0#summary" class="hash-link" aria-label="Direct link to Summary" title="Direct link to Summary">​</a></h2>
<p>Version <code>3.8.0</code> adds an Udon interface for the <strong>VRChat+ Drone</strong>, improves <strong>PhysBones</strong>, and fixes a variety of minor bugs.</p>
<p>This release went to beta as version <code>3.7.7</code>.</p>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="fixes--changes">Fixes &amp; Changes<a href="https://creators.vrchat.com/releases/release-3-8-0#fixes--changes" class="hash-link" aria-label="Direct link to Fixes &amp; Changes" title="Direct link to Fixes &amp; Changes">​</a></h2>
<ul>
<li>Added Udon API to access the <strong>VRChat+ Drone</strong> of players in your world!<!-- -->
<ul>
<li>Check out the <a href="https://creators.vrchat.com/worlds/udon/players/drones/">documentation</a> to get started.</li>
</ul>
</li>
<li>Improved the content ownership confirmation flow during uploads.<!-- -->
<ul>
<li>The old checkbox was removed in favor of a modal.</li>
<li>The modal only appears once per Unity Editor session and content ID.</li>
</ul>
</li>
<li>Includes <a href="https://creators.vrchat.com/common-components/physbones/">PhysBone</a> dependency sorting as introduced in VRChat client version <code>2025.1.3</code>.<!-- -->
<ul>
<li>PhysBones and PhysBone Colliders now execute in deterministic order depending on their transform relationships with other Physbones. There is a maximum dependency depth of 8 levels deep.</li>
</ul>
</li>
<li>Added an <code>ignoreOtherPhysBones</code> option to <a href="https://creators.vrchat.com/common-components/physbones/">PhysBone</a> components.<!-- -->
<ul>
<li>If you enable this option, the Physbone will ignore other Physbones and their affected transforms beneath itself in the scene hierarchy.</li>
<li>You should avoid disabling this option. Controlling the same Transform with multiple Physbones may lead to unsupported behaviour.</li>
<li>This option is enabled by default. For compatibility, it is disabled for existing avatars.</li>
</ul>
</li>
<li>Allowlisted <code>IVRCImageDownload.Dispose()</code> for Udon, allowing you to dispose individual downloaded textures once they're no longer needed.<!-- -->
<ul>
<li>This is an alternative to disposing the entire downloader at once. This makes it easier to set up a rotating carousel of images using an image downloader.</li>
<li>For more information, see our <a href="https://creators.vrchat.com/worlds/udon/image-loading/">documentation</a> for Image Loading.</li>
<li>Note that failing to dispose <code>IVRCImageDownload</code> objects can lead to excessive memory consumption of your world over time!</li>
</ul>
</li>
<li>Fixed avatar dynamics sometimes not simulating as soon as you enter play mode in avatar projects that have automatic <a href="https://docs.unity3d.com/2022.3/Documentation/Manual/DomainReloading.html" target="_blank" rel="noopener noreferrer">domain reloading</a> disabled.</li>
<li>Fixed four benign warning messages that always appeared in World SDK projects.</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="changes-since-377-beta1">Changes since <code>3.7.7-beta.1</code><a href="https://creators.vrchat.com/releases/release-3-8-0#changes-since-377-beta1" class="hash-link" aria-label="Direct link to changes-since-377-beta1" title="Direct link to changes-since-377-beta1">​</a></h2>
<ul>
<li>Bumped version to <code>3.8.0</code> due to a minor breaking change around type signatures in the <code>com.vrchat.dynamics</code> package.<!-- -->
<ul>
<li>Note that the affected functions aren't considered part of the official public API, and may change further in the future.</li>
</ul>
</li>
<li>Added "Force Kinematic On Remote" option to <code>VRCObjectSync</code>. Use this for objects that simulate physics <em>only</em> for the owner.<!-- -->
<ul>
<li>As an example, the VRChat Drone uses this option so the owner can calculate physics and collisions, while remote users do not run any physics logic.</li>
</ul>
</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="known-issues">Known Issues<a href="https://creators.vrchat.com/releases/release-3-8-0#known-issues" class="hash-link" aria-label="Direct link to Known Issues" title="Direct link to Known Issues">​</a></h2>
<ul>
<li>In rare cases, you may see an "All pipe instances are busy" error while building. This is a Unity issue - restarting your editor and trying again should fix it.</li>
</ul>]]></content>
        <author>
            <name>Momo the Monster</name>
            <uri>https://github.com/momo-the-monster</uri>
        </author>
        <category label="release" term="release"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[Release 3.7.6]]></title>
        <id>https://creators.vrchat.com/releases/release-3-7-6</id>
        <link href="https://creators.vrchat.com/releases/release-3-7-6"/>
        <updated>2025-03-05T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Summary]]></summary>
        <content type="html"><![CDATA[<h2 class="anchor anchorWithStickyNavbar_LWe7" id="summary">Summary<a href="https://creators.vrchat.com/releases/release-3-7-6#summary" class="hash-link" aria-label="Direct link to Summary" title="Direct link to Summary">​</a></h2>
<p>Version <code>3.7.6</code> reworks the SDK's Build Panel, adds multi-platform Build &amp; Publish, and allows you to Build &amp; Test Android/Quest avatars. It also improves ClientSim's pause menu and fixes several bugs.</p>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="fixes--changes">Fixes &amp; Changes<a href="https://creators.vrchat.com/releases/release-3-7-6#fixes--changes" class="hash-link" aria-label="Direct link to Fixes &amp; Changes" title="Direct link to Fixes &amp; Changes">​</a></h2>
<ul>
<li>The VRChat SDK's Build Panel has received a major overhaul.<!-- -->
<ul>
<li>You can now target multiple platforms at the same time when publishing!<!-- -->
<ul>
<li>Multi-Platform Build &amp; Publish goes through each selected platform in sequence and build your content for that platform, always starting with PC (if selected).</li>
<li>You can monitor the progress in both the Builder panel and in Unity's Background Processes window accessed in the bottom right area of the editor.</li>
<li>Once the builds are done, the editor returns to the platform you started the build on.</li>
<li>The updated UI also incorporates all of the changes made to support Build &amp; Test for Android/Quest.</li>
</ul>
</li>
<li>Content Info editing has been improved.<!-- -->
<ul>
<li>The Content Warnings section has been changed into a simple dropdown.</li>
<li>The tag editor has moved to a new popup.</li>
</ul>
</li>
<li>Capturing thumbnails is significantly easier and more responsive.<!-- -->
<ul>
<li>Likewise, this new method addresses past Color Space and Post Processing issues.</li>
</ul>
</li>
</ul>
</li>
<li>You can now build and test avatars on Android/Quest.<!-- -->
<ul>
<li>This requires connecting a phone (or any ADB device) to your PC.</li>
<li>Check out <a href="https://creators.vrchat.com/platforms/android/build-test-mobile/" target="_blank" rel="noopener noreferrer">our documentation</a>!</li>
</ul>
</li>
<li>Added support for <a href="https://creators.vrchat.com/common-components/contacts/#vrccontactsender">Contact Senders</a> to be local only.<!-- -->
<ul>
<li>If you enable "local only", the Contact Sender only exists on the local avatar in a similar way to local only <a href="https://creators.vrchat.com/common-components/contacts/#vrccontactreceiver">Contact Receivers</a>.</li>
<li>These do not contribute to an avatar's performance ranking, but still count towards the hard Contact limit.</li>
</ul>
</li>
<li>Fixed an exeception that could appear when toggling VRChat Contacts in Play mode.</li>
<li>Implemented all VRChat Constraint fixes from client version <code>2025.1.2</code> (and older).</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="client-sim">Client Sim<a href="https://creators.vrchat.com/releases/release-3-7-6#client-sim" class="hash-link" aria-label="Direct link to Client Sim" title="Direct link to Client Sim">​</a></h2>
<ul>
<li>Added a new ClientSim setting, <code>Hide Menu on Launch</code>.<!-- -->
<ul>
<li>This setting automatically closes the ClientSim pause menu when entering Play Mode, after you've accepted the warning about differences between ClientSim and the VRChat Client.</li>
<li>In addition, the ClientSim pause menu now automatically closes when you move your player, similar to how the Quick Menu works in the Client.</li>
</ul>
</li>
<li>Fixed multiple <code>UdonBehaviour</code> scripts on one GameObject not functioning correctly in ClientSim.</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="changes--fixes-in-376-beta2">Changes &amp; Fixes in <code>3.7.6-beta.2</code><a href="https://creators.vrchat.com/releases/release-3-7-6#changes--fixes-in-376-beta2" class="hash-link" aria-label="Direct link to changes--fixes-in-376-beta2" title="Direct link to changes--fixes-in-376-beta2">​</a></h2>
<ul>
<li>Fixed UdonSharp's log watcher by updating it to VRChat's new log file format.</li>
<li>Fixed an issue with uploading worlds on Linux.<!-- -->
<ul>
<li>Linux is not a supported platform for our SDK, but internal tests show that you should now be able upload both worlds and avatars.</li>
</ul>
</li>
<li>The "Prepare Your Content" panel should no longer auto-collapse whenever "Show All Avatar Performance Details" is checked.</li>
<li>The "Validations" panel now only rescans the scene when something in the scene changes.<!-- -->
<ul>
<li>This should generally improve editor performance.</li>
</ul>
</li>
<li>The checkbox confirming "The information provided above is accurate (...)" will now reset correctly when switching between different worlds or avatars.</li>
<li>ASTC compression setting for Android builds are now correctly applied during multi-platform builds.<!-- -->
<ul>
<li>Fixed the beta SDK not preventing Android uploads if textures don't use ASTC compression.</li>
</ul>
</li>
<li>The SDK validation message list should now wrap text correctly at smaller window sizes.</li>
<li>Fixed an issue with execution order when a PhysBone and Constraint component are used together on the same game object.</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="changes--fixes-in-final-release">Changes &amp; Fixes in final release<a href="https://creators.vrchat.com/releases/release-3-7-6#changes--fixes-in-final-release" class="hash-link" aria-label="Direct link to Changes &amp; Fixes in final release" title="Direct link to Changes &amp; Fixes in final release">​</a></h2>
<ul>
<li>The performance stats in the Avatar SDK validations list are now correctly sorted by rank.</li>
<li>The "Build &amp; Publish" button now correctly specifies "... the terms below ..." when builds are blocked in the Avatar SDK.</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="known-issues">Known Issues<a href="https://creators.vrchat.com/releases/release-3-7-6#known-issues" class="hash-link" aria-label="Direct link to Known Issues" title="Direct link to Known Issues">​</a></h2>
<ul>
<li>In rare cases you may see an "All pipe instances are busy" error while building. This is a Unity issue, restarting your editor and trying again should fix it.</li>
</ul>]]></content>
        <author>
            <name>Momo the Monster</name>
            <uri>https://github.com/momo-the-monster</uri>
        </author>
        <category label="release" term="release"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[Release 3.7.5]]></title>
        <id>https://creators.vrchat.com/releases/release-3-7-5</id>
        <link href="https://creators.vrchat.com/releases/release-3-7-5"/>
        <updated>2024-12-11T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Summary]]></summary>
        <content type="html"><![CDATA[<h2 class="anchor anchorWithStickyNavbar_LWe7" id="summary">Summary<a href="https://creators.vrchat.com/releases/release-3-7-5#summary" class="hash-link" aria-label="Direct link to Summary" title="Direct link to Summary">​</a></h2>
<p>Version <code>3.7.5</code> adds Build &amp; Test for Quest, similar to how it works on Android phones. Local-only contact receivers no longer count towards an avatar's performance rank. And there's also a new Udon event, <code>OnVRCPlusMassGift</code>, to make your worlds react to Gift Drops!</p>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="fixes--changes">Fixes &amp; Changes<a href="https://creators.vrchat.com/releases/release-3-7-5#fixes--changes" class="hash-link" aria-label="Direct link to Fixes &amp; Changes" title="Direct link to Fixes &amp; Changes">​</a></h2>
<ul>
<li>Build &amp; Test mode is now available for Quest!</li>
<li>DPID has been reworked to have much sharper visuals when operating on <code>AlphaIsTransparency</code> textures.<!-- -->
<ul>
<li>When you import textures with DPID and <code>AlphaIsTransparency</code> enabled, the SDK now considers the alpha channel separately, making alpha masks as sharp as equivalent color masks.</li>
</ul>
</li>
<li>Resolved an issue where the DPID setting in the SDK would not persist between sessions.</li>
<li>Fixed issue where running "Build and Test" before setting the<code>blueprintId</code> of a world or avatar would trigger the error "Attempted to load the data for a world we do not own, clearing blueprint ID". This error has also been downgraded to a warning.</li>
<li>Contact receivers marked as local-only no longer count towards an avatar's performance rank.</li>
<li>Fixed more cases of jittering with specific configurations of <a href="https://creators.vrchat.com/common-components/constraints">VRChat Constraints</a>.</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="udon">Udon<a href="https://creators.vrchat.com/releases/release-3-7-5#udon" class="hash-link" aria-label="Direct link to Udon" title="Direct link to Udon">​</a></h2>
<ul>
<li>Added a new <a href="https://creators.vrchat.com/worlds/udon/graph/event-nodes/#onvrcplusmassgift">OnVRCPlusMassGift</a> event that allows worlds to react to Gift Drops.</li>
<li>Added the ability for <code>GetComponent</code> to be called on all TextMeshPro Components and <code>VRCMidiPlayer</code>.</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="clientsim">ClientSim<a href="https://creators.vrchat.com/releases/release-3-7-5#clientsim" class="hash-link" aria-label="Direct link to ClientSim" title="Direct link to ClientSim">​</a></h2>
<ul>
<li>Fixed a ClientSim bug where the first <code>OnAvatarEyeHeightChanged</code> call after entering Play Mode would cause a type mismatch error.</li>
<li>Fixed <a href="https://creators.vrchat.com/worlds/layers/#interaction-passthrough-for-user-layers">Interaction Passthrough</a> layers in ClientSim to more closely match client behavior.</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="video-players">Video Players<a href="https://creators.vrchat.com/releases/release-3-7-5#video-players" class="hash-link" aria-label="Direct link to Video Players" title="Direct link to Video Players">​</a></h2>
<ul>
<li>Video players no longer play untrusted URLs in public instances unless the world creator adds the domain to the world's allowlist via the VRChat website.<!-- -->
<ul>
<li>Video players in private instances can play any untrusted URL.</li>
</ul>
</li>
</ul>]]></content>
        <author>
            <name>Momo the Monster</name>
            <uri>https://github.com/momo-the-monster</uri>
        </author>
        <category label="release" term="release"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[Release 3.7.4 - Persistence!]]></title>
        <id>https://creators.vrchat.com/releases/release-3-7-4</id>
        <link href="https://creators.vrchat.com/releases/release-3-7-4"/>
        <updated>2024-11-21T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Summary]]></summary>
        <content type="html"><![CDATA[<h2 class="anchor anchorWithStickyNavbar_LWe7" id="summary">Summary<a href="https://creators.vrchat.com/releases/release-3-7-4#summary" class="hash-link" aria-label="Direct link to Summary" title="Direct link to Summary">​</a></h2>
<p>This update adds <a href="https://creators.vrchat.com/worlds/udon/persistence">Persistence</a> to Udon! Persistence allows you to build VRChat worlds that store data between sessions.</p>
<p>This update also fixes a few minor issues around <a href="https://creators.vrchat.com/worlds/udon/data-containers/vrcjson">VRCJSON</a> and <a href="https://creators.vrchat.com/common-components/constraints">VRChat Constraints</a>.</p>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="persistence">Persistence!<a href="https://creators.vrchat.com/releases/release-3-7-4#persistence" class="hash-link" aria-label="Direct link to Persistence!" title="Direct link to Persistence!">​</a></h2>
<p>Persistence allows worlds to save high scores, inventories, the player's last position, currency, unlocks, preferences, and much more. When a player leaves a world and returns later, Udon can access their saved data.</p>
<p>Learn all about the new features in our <a href="https://creators.vrchat.com/worlds/udon/persistence">Persistence SDK docs</a>.</p>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="other-fixes">Other Fixes<a href="https://creators.vrchat.com/releases/release-3-7-4#other-fixes" class="hash-link" aria-label="Direct link to Other Fixes" title="Direct link to Other Fixes">​</a></h2>
<ul>
<li>Fixed <a href="https://creators.vrchat.com/common-components/constraints">VRChat Constraints</a> that need to run before <a href="https://creators.vrchat.com/common-components/physbones">Physbones</a> not updating while in edit mode.</li>
<li>Fixed <a href="https://creators.vrchat.com/common-components/constraints">VRChat Constraints</a> that have a child <a href="https://creators.vrchat.com/common-components/physbones">Physbone</a>, but also depend on one, not following their sources correctly.</li>
<li>Several fixes for <a href="https://creators.vrchat.com/worlds/udon/data-containers/vrcjson">VRCJSON</a>:<!-- -->
<ul>
<li>Fixed an issue where braces inside strings can fail to deserialize.</li>
<li>Fixed an issue where empty arrays can fail to deserialize if there is whitespace between the opening and closing, such as <code>[ ]</code>.</li>
<li>JSON which starts with a BOM (Byte Order Mark, <code>\uFEFF</code>) would fail to deserialize. This character will now be ignored if it is at the start of the input.</li>
</ul>
</li>
</ul>]]></content>
        <author>
            <name>Momo the Monster</name>
            <uri>https://github.com/momo-the-monster</uri>
        </author>
        <category label="release" term="release"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[Release 3.7.3]]></title>
        <id>https://creators.vrchat.com/releases/release-3-7-3</id>
        <link href="https://creators.vrchat.com/releases/release-3-7-3"/>
        <updated>2024-11-05T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Summary]]></summary>
        <content type="html"><![CDATA[<h2 class="anchor anchorWithStickyNavbar_LWe7" id="summary">Summary<a href="https://creators.vrchat.com/releases/release-3-7-3#summary" class="hash-link" aria-label="Direct link to Summary" title="Direct link to Summary">​</a></h2>
<p>This update fixes multiple issues with <a href="https://creators.vrchat.com/common-components/constraints">VRChat Constraints</a>.</p>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="new-features">New features<a href="https://creators.vrchat.com/releases/release-3-7-3#new-features" class="hash-link" aria-label="Direct link to New features" title="Direct link to New features">​</a></h2>
<ul>
<li>Added an option to the Settings tab of the SDK Control Panel to prevent VRChat constraints from running while in Edit mode.</li>
<li>It is now possible to trigger the "Activate" and "Zero" functions on a VRChat constraint from C# Unity Editor scripts by using the new <code>ActivateConstraint()</code> and <code>ZeroConstraint()</code> methods, <a href="https://feedback.vrchat.com/sdk-bug-reports/p/expose-activate-button-procedure-of-vrcconstraint-components-to-api" target="_blank" rel="noopener noreferrer">addressing this Canny request</a>.</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="fixes--changes">Fixes &amp; Changes<a href="https://creators.vrchat.com/releases/release-3-7-3#fixes--changes" class="hash-link" aria-label="Direct link to Fixes &amp; Changes" title="Direct link to Fixes &amp; Changes">​</a></h2>
<ul>
<li>Improved <a href="https://creators.vrchat.com/common-components/physbones">Physbone</a> and <a href="https://creators.vrchat.com/common-components/contacts">Contact</a> behavior when used beneath <a href="https://creators.vrchat.com/common-components/constraints">VRChat Constraints</a> to reduce jittering.<!-- -->
<ul>
<li>They sort their internal execution orders properly within a frame now.</li>
</ul>
</li>
<li>Fixed a case where toggled constraints could misbehave when three or more constraints are used on the same GameObject at once.</li>
<li>Fixed the "Activate" and "Zero" functions of VRChat Constraints not applying as overrides to prefab instances.</li>
<li>Fixed <code>VRCConstraintSource</code> having its values overwritten with defaults when created with the default constructor in C#.</li>
<li>Fixed rotation, aim and look-at constraints drifting very gradually when one or more axes are unfrozen in certain configurations.</li>
<li>Fixed constraints applying incorrect positions when the target transform is scaled to zero in any axis.</li>
<li>Fixed constraints sometimes having their position or rotation shifted by a tiny amount every frame under certain conditions when they should be staying still.<!-- -->
<ul>
<li>This should make it easier to work with prefabs containing constraints.</li>
</ul>
</li>
<li><a href="https://creators.vrchat.com/common-components/physbones">Physbone</a> stats now recalculate properly when reloading a scene or switching platform.</li>
<li>Fixed <a href="https://creators.vrchat.com/common-components/physbones">Physbone</a> jitter by including fixes from client release <a href="https://docs.vrchat.com/docs/vrchat-202433" target="_blank" rel="noopener noreferrer">2024.3.3</a>.</li>
<li>Fixed "Avatar Options" incorrectly being shown twice in the Settings tab of the SDK Control Panel.</li>
<li>Fixed <code>com.unity.ugui</code> missing as a dependency of the Worlds SDK, addressing <a href="https://feedback.vrchat.com/sdk-bug-reports/p/vrcsdk-packagejson-is-missing-dependency-on-unity-ui" target="_blank" rel="noopener noreferrer">this Canny request</a>.</li>
<li>Added a new "ExampleData" type to the SDK, which will be used to hold metadata for Examples in the future.</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="known-issues">Known Issues<a href="https://creators.vrchat.com/releases/release-3-7-3#known-issues" class="hash-link" aria-label="Direct link to Known Issues" title="Direct link to Known Issues">​</a></h2>
<ul>
<li>The first time you open a Scene and select a GameObject inside a prefab with a U# Behaviour, the GUI for the component directly below that U# Behaviour will not show its GUI. Deselecting and re-selecting the prefab fixes this.</li>
<li>Buffer Particles don't work as they did in Unity 2019, <a href="https://x.com/hfcRedddd/status/1696915379090604179" target="_blank" rel="noopener noreferrer">there is a workaround to fix them from community member hfcRed here</a>.</li>
<li>Unity 2022 sometimes causes Rider's debugger to stop for unhandled exceptions in Unity's IMGUI.<!-- -->
<ul>
<li>Please refer to <a href="https://forum.unity.com/threads/rider-debugger-breaks-on-unhandled-exception.1135879/#post-7305256" target="_blank" rel="noopener noreferrer">this workaround</a> and <a href="https://youtrack.jetbrains.com/issue/RIDER-64944" target="_blank" rel="noopener noreferrer">Jetbrains's bug tracker</a> for more information.</li>
</ul>
</li>
</ul>]]></content>
        <author>
            <name>Momo the Monster</name>
            <uri>https://github.com/momo-the-monster</uri>
        </author>
        <category label="release" term="release"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[Release 3.7.2]]></title>
        <id>https://creators.vrchat.com/releases/release-3-7-2</id>
        <link href="https://creators.vrchat.com/releases/release-3-7-2"/>
        <updated>2024-10-21T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Summary]]></summary>
        <content type="html"><![CDATA[<h2 class="anchor anchorWithStickyNavbar_LWe7" id="summary">Summary<a href="https://creators.vrchat.com/releases/release-3-7-2#summary" class="hash-link" aria-label="Direct link to Summary" title="Direct link to Summary">​</a></h2>
<p>This update adds <a href="https://creators.vrchat.com/platforms/android/build-test-mobile">Build &amp; Test for Mobile</a>, <a href="https://creators.vrchat.com/sdk/example-central">Example Central</a> and some fixes for <a href="http://hello.vrchat.com/blog/spookality-2024-arrives-october-1" target="_blank" rel="noopener noreferrer">Spookality '24</a>! It also introduces <em>Udon Code Signing</em> for improved security.</p>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="new-features">New features<a href="https://creators.vrchat.com/releases/release-3-7-2#new-features" class="hash-link" aria-label="Direct link to New features" title="Direct link to New features">​</a></h2>
<ul>
<li><a href="https://creators.vrchat.com/platforms/android/build-test-mobile">Build &amp; Test for Mobile</a> - send worlds directly to a connected Android Device while working on it for <em>much</em> quicker testing and iteration.</li>
<li><a href="https://creators.vrchat.com/sdk/example-central">Example Central</a> - browse and import SDK Examples from within the Unity Editor.</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="fixes--changes">Fixes &amp; Changes<a href="https://creators.vrchat.com/releases/release-3-7-2#fixes--changes" class="hash-link" aria-label="Direct link to Fixes &amp; Changes" title="Direct link to Fixes &amp; Changes">​</a></h2>
<ul>
<li><code>VRCPlayerAPI.SetAvatarEyeHeightByMultiplier</code> now works properly in ClientSim.</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="changes-in-372-beta2">Changes in <code>3.7.2-beta.2</code><a href="https://creators.vrchat.com/releases/release-3-7-2#changes-in-372-beta2" class="hash-link" aria-label="Direct link to changes-in-372-beta2" title="Direct link to changes-in-372-beta2">​</a></h2>
<ul>
<li>Added <em>Udon Code Signing</em>!<!-- -->
<ul>
<li>Any worlds uploaded with this SDK (or newer) receive a server-side signature. This helps ensure only authentic (unmodified) versions of your world can be loaded into VRChat.<!-- -->
<ul>
<li>This makes it significantly harder for malicious players to cheat or bypass scripts in your worlds.</li>
</ul>
</li>
<li>Each platform (PC, Android, iOS) has a different signature, so you need to upgrade all of your world's platforms.</li>
<li>Udon code signing does not affect non-malicious users, and will not change anything about your Unity editor experience.</li>
<li>This SDK also upgrades all your Udon scripts to a more efficient storage format (only relevant for very old world projects).</li>
<li>We recommend upgrading and re-uploading your worlds with this SDK to make your worlds more secure!</li>
</ul>
</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="changes-in-372-beta3">Changes in <code>3.7.2-beta.3</code><a href="https://creators.vrchat.com/releases/release-3-7-2#changes-in-372-beta3" class="hash-link" aria-label="Direct link to changes-in-372-beta3" title="Direct link to changes-in-372-beta3">​</a></h2>
<ul>
<li>Fixed timing of Udon Code Signature calculation.<!-- -->
<ul>
<li>It is now calculated during the <a href="https://docs.unity3d.com/ScriptReference/Build.IProcessSceneWithReport.html" target="_blank" rel="noopener noreferrer"><code>IProcessSceneWithReport</code></a> callback with an execution order of <code>int.MaxValue - 8192</code> when you build a world.</li>
<li>This fixes an issue with some Udon compilers (e.g. CyanTrigger) that modify code after signature calculation, making uploaded worlds fail verification.</li>
</ul>
</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="changes-between-beta3-and-the-the-final-release">Changes between <code>beta.3</code> and the the final release<a href="https://creators.vrchat.com/releases/release-3-7-2#changes-between-beta3-and-the-the-final-release" class="hash-link" aria-label="Direct link to changes-between-beta3-and-the-the-final-release" title="Direct link to changes-between-beta3-and-the-the-final-release">​</a></h2>
<ul>
<li>Fixed several bugs with Build &amp; Test for Mobile from open beta feedback.</li>
<li>Added a number of helpful error messages when incorrectly setting up Build &amp; Test for Mobile.<!-- -->
<ul>
<li>For example, we will now warn you if your device's screen is locked.</li>
</ul>
</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="known-issues">Known Issues<a href="https://creators.vrchat.com/releases/release-3-7-2#known-issues" class="hash-link" aria-label="Direct link to Known Issues" title="Direct link to Known Issues">​</a></h2>
<ul>
<li>The first time you open a Scene and select a GameObject inside a prefab with a U# Behaviour, the GUI for the component directly below that U# Behaviour will not show its GUI. Deselecting and re-selecting the prefab fixes this.</li>
<li>Buffer Particles don't work as they did in Unity 2019, <a href="https://x.com/hfcRedddd/status/1696915379090604179" target="_blank" rel="noopener noreferrer">there is a workaround to fix them from community member hfcRed here</a>.</li>
<li>Unity 2022 sometimes causes Rider's debugger to stop for unhandled exceptions in Unity's IMGUI.<!-- -->
<ul>
<li>Please refer to <a href="https://forum.unity.com/threads/rider-debugger-breaks-on-unhandled-exception.1135879/#post-7305256" target="_blank" rel="noopener noreferrer">this workaround</a> and <a href="https://youtrack.jetbrains.com/issue/RIDER-64944" target="_blank" rel="noopener noreferrer">Jetbrains's bug tracker</a> for more information.</li>
</ul>
</li>
</ul>]]></content>
        <author>
            <name>Momo the Monster</name>
            <uri>https://github.com/momo-the-monster</uri>
        </author>
        <category label="release" term="release"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[Release 3.7.1]]></title>
        <id>https://creators.vrchat.com/releases/release-3-7-1</id>
        <link href="https://creators.vrchat.com/releases/release-3-7-1"/>
        <updated>2024-09-20T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Summary]]></summary>
        <content type="html"><![CDATA[<h2 class="anchor anchorWithStickyNavbar_LWe7" id="summary">Summary<a href="https://creators.vrchat.com/releases/release-3-7-1#summary" class="hash-link" aria-label="Direct link to Summary" title="Direct link to Summary">​</a></h2>
<p>This update exposes some highly-requested functions to Udon, adds high-quality DPID mipmapping support (opt-in beta), and optimizes PhysBone gizmos.</p>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="new-features">New features<a href="https://creators.vrchat.com/releases/release-3-7-1#new-features" class="hash-link" aria-label="Direct link to New features" title="Direct link to New features">​</a></h2>
<ul>
<li>Exposed the following C# features to Udon:<!-- -->
<ul>
<li><code>Array.Sort()</code> allows Udon to sort Arrays in various ways, which is useful for managing Players in an Udon world. Addresses <a href="https://feedback.vrchat.com/udon/p/arraysort" target="_blank" rel="noopener noreferrer">this Canny post</a>.</li>
<li><code>System.Random</code> allows Udon to create deterministic random seeds, as well as random Bytes and Doubles, extending the possibilities for randomness in Udon Worlds beyond what <code>UnityEngine.Random</code> can do. We exposed 4 new functions, addressing <a href="https://feedback.vrchat.com/udon/p/expose-systemrandom" target="_blank" rel="noopener noreferrer">this Canny post</a>.</li>
<li><code>System.Text.StringBuilder</code> allows Udon to build and reformat strings with better performance than the existing string functions. We exposed 18 new functions and properties, addressing <a href="https://feedback.vrchat.com/udon/p/please-expose-stringbuilder" target="_blank" rel="noopener noreferrer">this Canny post</a>.</li>
<li><code>System.Text.RegularExpressions</code> - <a href="https://learn.microsoft.com/en-us/dotnet/api/system.text.regularexpressions.regex?view=net-8.0" target="_blank" rel="noopener noreferrer">RegEx</a> is a powerful system for searching, matching and replacing patterns within strings of text. We exposed 14 new functions and properties, addressing <a href="https://feedback.vrchat.com/udon/p/feedback-expose-systemtextregularexpressions-namespace" target="_blank" rel="noopener noreferrer">this Canny post</a>.</li>
<li><code>System.Type</code> allows Udon to interact with data types, and can be useful to advanced creators who want to validate object types at runtime. We exposed 67 new functions and properties, addressing <a href="https://feedback.vrchat.com/udon/p/expose-systemtypeissubclassof-isinstanceoftype-issubclassof-and-basetype" target="_blank" rel="noopener noreferrer">this Canny post</a></li>
</ul>
</li>
<li>The SDK now supports "Detail Preserving Image Downscaling" (DPID) mipmaps, which greatly improve the sharpness of world/avatar textures.<!-- -->
<ul>
<li>⚠️<!-- --> We're still working on this one! It is currently a BETA feature and requires explicit opt-in via the "Settings" panel in the SDK control panel.</li>
<li>DPID replaces the mipmapping algorithm on all textures with the "Kaiser" filtering algorithm selected. "Box" filtering is unaffected.<!-- -->
<ul>
<li>The SDK build panel already encourages you to enable "Kaiser" filtering, which in turn now enables DPID.</li>
</ul>
</li>
<li>Unlike the original algorithm, VRChat's version of DPID supports transparency. Enable <a href="https://docs.unity3d.com/Manual/texture-type-default.html" target="_blank" rel="noopener noreferrer">Alpha is Transparency</a> to avoid filtering artifacts on the edges of transparent textures.</li>
<li>The original algorithm implementation was published under BSD 3-Clause (a permissive license like MIT). To 'pay it forward,' we've released our compute shader version under the same license! You can find it in the SDK: <code>com.vrchat.base\Editor\VRCSDK\Dependencies\VRChat\Resources\PerceptualMipmapping\PerceptualPostProcessor.compute</code>.</li>
</ul>
</li>
<li>PhysBone gizmo rendering has been optimized.<!-- -->
<ul>
<li>Editor gizmos for PhysBones with non-0 radius setting now render 2-3x faster.</li>
<li>Editor gizmos of multiple PhysBone components in the hierarchy of the selected object now render 1.5-2x faster.</li>
<li>Addresses <a href="https://feedback.vrchat.com/avatar-dynamics-reports-and-feedback/p/1181-many-physbone-gizmos-lag-editor" target="_blank" rel="noopener noreferrer">this Canny post</a>.</li>
</ul>
</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="fixes--changes">Fixes &amp; Changes<a href="https://creators.vrchat.com/releases/release-3-7-1#fixes--changes" class="hash-link" aria-label="Direct link to Fixes &amp; Changes" title="Direct link to Fixes &amp; Changes">​</a></h2>
<ul>
<li>The SDK now blocks avatars containing particle systems or trail renderers set to destroy themselves when they finish. Particle systems on the avatar's root that disable themselves when they finish are also not allowed.</li>
<li>Fixed typo in the Expression Parameters inspector showing used memory as bytes rather than bits.</li>
<li>Fixed SDK Control Panel setting scripting defines every IMGUI redraw (improves performance slightly).</li>
<li>Improved Lightprobe Hack behavior in situations with lots of ambient lighting.</li>
<li>Fixed how empty expression parameter lists are filled with default parameters. Expression parameter lists can be empty again.</li>
<li>Removed internal warning messages related to PhysBone and Constraint Burst jobs sometimes appearing when opening a project or recompiling scripts.</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="fixes--changes-to-dpid-in-371-beta2">Fixes &amp; Changes to DPID in <code>3.7.1-beta.2</code><a href="https://creators.vrchat.com/releases/release-3-7-1#fixes--changes-to-dpid-in-371-beta2" class="hash-link" aria-label="Direct link to fixes--changes-to-dpid-in-371-beta2" title="Direct link to fixes--changes-to-dpid-in-371-beta2">​</a></h2>
<ul>
<li>Fixed <code>alphaIsTransparent</code> over-emphasising incorrect details.</li>
<li>Fixed non-sRGB textures (e.g. normal maps) diverging at higher mip levels.<!-- -->
<ul>
<li>This should now be consistent with sRGB behavior.</li>
</ul>
</li>
<li>Fixed edge cases where a single fully-transparent pixel would get counted when the others are all the same color.</li>
<li>Fixed null reference exceptions being spammed in the log when importing SDK 3.7.1 for the first time.<!-- -->
<ul>
<li>DPID is now correctly applied to all mipmaps that previously used Kaiser.</li>
</ul>
</li>
<li>Simplified and streamlined the compute shader.</li>
<li>Reduced DPID-related log spam.</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="fixes--changes-to-dpid-in-the-final-version">Fixes &amp; Changes to DPID in the final version<a href="https://creators.vrchat.com/releases/release-3-7-1#fixes--changes-to-dpid-in-the-final-version" class="hash-link" aria-label="Direct link to Fixes &amp; Changes to DPID in the final version" title="Direct link to Fixes &amp; Changes to DPID in the final version">​</a></h2>
<ul>
<li>Marked DPID as "BETA" and switched to opt-in.</li>
<li>Set "conservative mode" to be the default, since it seems to give better results overall.</li>
<li>Fixed normal maps (again).</li>
<li>Fixed support for lightmaps.</li>
<li>Support DPID mipmaps on HDR and Float format textures.</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="known-issues">Known Issues<a href="https://creators.vrchat.com/releases/release-3-7-1#known-issues" class="hash-link" aria-label="Direct link to Known Issues" title="Direct link to Known Issues">​</a></h2>
<ul>
<li>The first time you open a Scene and select a GameObject inside a prefab with a U# Behaviour, the GUI for the component directly below that U# Behaviour will not show its GUI. Deselecting and re-selecting the prefab fixes this.</li>
<li>Buffer Particles don't work as they did in Unity 2019, <a href="https://x.com/hfcRedddd/status/1696915379090604179" target="_blank" rel="noopener noreferrer">there is a workaround to fix them from community member hfcRed here</a>.</li>
<li>Unity 2022 sometimes causes Rider's debugger to stop for unhandled exceptions in Unity's IMGUI.<!-- -->
<ul>
<li>Please refer to <a href="https://forum.unity.com/threads/rider-debugger-breaks-on-unhandled-exception.1135879/#post-7305256" target="_blank" rel="noopener noreferrer">this workaround</a> and <a href="https://youtrack.jetbrains.com/issue/RIDER-64944" target="_blank" rel="noopener noreferrer">Jetbrains's bug tracker</a> for more information.</li>
</ul>
</li>
</ul>]]></content>
        <author>
            <name>Momo the Monster</name>
            <uri>https://github.com/momo-the-monster</uri>
        </author>
        <category label="release" term="release"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[Release 3.7.0]]></title>
        <id>https://creators.vrchat.com/releases/release-3-7-0</id>
        <link href="https://creators.vrchat.com/releases/release-3-7-0"/>
        <updated>2024-08-16T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Summary]]></summary>
        <content type="html"><![CDATA[<h2 class="anchor anchorWithStickyNavbar_LWe7" id="summary">Summary<a href="https://creators.vrchat.com/releases/release-3-7-0#summary" class="hash-link" aria-label="Direct link to Summary" title="Direct link to Summary">​</a></h2>
<p>This update adds VRChat Constraints, Unity AI Navigation, improves Avatar editor panels, upgrades Standard Lite, implements new Player State APIs, and more!</p>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="new-features">New features<a href="https://creators.vrchat.com/releases/release-3-7-0#new-features" class="hash-link" aria-label="Direct link to New features" title="Direct link to New features">​</a></h2>
<ul>
<li>⚠️ The SDK now blocks uploads if the last built avatar exceeds the new reduced download or uncompressed size limits for Avatars.</li>
<li>This release integrates <a href="https://docs.unity3d.com/Packages/com.unity.ai.navigation@1.1/manual/index.html" target="_blank" rel="noopener noreferrer">Unity 2022's AI Navigation</a> package, which allows you to create non-player characters (NPCs) that can intelligently move around the game world, using navigation meshes that are created automatically from your Scene geometry.<!-- -->
<ul>
<li>As the VRChat SDK now includes a reference to the AI navigation package, an "AI Navigation" window appears when you upgrade your scene. You can close it by right-clicking and selecting "Close."</li>
<li>We published <a href="https://creators.vrchat.com/worlds/udon/ai-navigation/" target="_blank" rel="noopener noreferrer">AI Navigation documentation for VRChat Worlds</a> and an <a href="https://creators.vrchat.com/worlds/examples/ai-navigation-example/" target="_blank" rel="noopener noreferrer">AI Navigation Example Scene</a> to help you get started.</li>
</ul>
</li>
<li>Some Avatar editor panels have been updated:<!-- -->
<ul>
<li>The Expression Parameters and Expressions Menu editors have been rebuilt from the ground up.</li>
<li>The updated Expression Parameters editor:<!-- -->
<ul>
<li>Allows you to reorder elements via drag &amp; drop easily</li>
<li>Uses a progress bar style meter to indicate how many synced bytes the parameters use</li>
<li>The Expression Parameters assets now have a new icon, making them easier to see in your Assets folder</li>
</ul>
</li>
<li>The updated Expressions Menu editor:<!-- -->
<ul>
<li>Shows the current Menu Controls count alongside the maximum number of Controls you can add</li>
<li>Shows the types of each Control at-a-glance</li>
<li>Allows you to reorder the Controls via drag &amp; drop easily</li>
<li>Has improved and updated warnings and errors</li>
<li>Has improved layout for editing all the Control types</li>
<li>For Sub-Menu Controls - allows for quick creation of a new Menu asset and provides a button to open the editor for the submenu with a single click</li>
<li>The Expressions Menu assets now have a new icon, so they're easier to see in your Assets folder</li>
</ul>
</li>
</ul>
</li>
<li>Massively upgraded <code>Standard Lite</code> shader!<!-- -->
<ul>
<li>Considerably improved performance in the baseline.</li>
<li><em>Non-linear Lightprobe sampling</em>: This will avoid unusual stark contrast for real-time objects in a scene.</li>
<li><em>Lightprobe specularity</em>: This will fall back to using lightprobes in the scene to generate specular highlights if no reflection probes are present.</li>
<li><em>Geometric Specular AA</em>: This will avoid jagged/aliased edges for shiny objects at a distance/at sharp angles by tweaking the roughness to add just enough to stretch any highlights over at least one extra pixel - this should reduce the apparent 'screen door' effect on a lot of geometry.</li>
<li><em>Spherical Harmonics lightmap compatibility through MonoSH</em> (Bakery): This allows you to have the appearance of real-time lighting without the cost, by having every pixel of a lightmap encode light spread and direction, and otherwise treating it as being lit that way. The MonoSH version in particular avoids additional memory cost by squeezing everything into just one extra map. Baking MonoSH-compatible lightmaps requires the external Bakery plugin.</li>
</ul>
</li>
<li>Added <a href="https://creators.vrchat.com/worlds/udon/graph/event-nodes/#onlanguagechanged">OnLanguageChanged</a> Udon event that gets called on join and when users select a new display language.</li>
<li>Added an info-level message in the SDK build panel that encourages using Kaiser mipmapping for higher clarity.<!-- -->
<ul>
<li>We talked about the new DPID mipmapping algorithm <a href="https://ask.vrchat.com/t/developer-update-11-july-2024/25514#mipmapping-experiments-8" target="_blank" rel="noopener noreferrer">in a dev update</a> before. This is a first step towards that - though the algorithm is not included yet, so this will recommend default Unity Kaiser mips for now.</li>
</ul>
</li>
<li>Added a gizmo to <code>VRCSceneDescriptor</code> to visualize the respawn height.</li>
<li>The VRC Scene Descriptor now shows a gizmo in your scene for each spawn defined in the spawns list.</li>
<li>Auto-converting Dynamic Bones components into PhysBones is now required before uploading.</li>
<li>Implemented some new player state APIs available via Udon:<!-- -->
<ul>
<li>event <a href="https://creators.vrchat.com/worlds/udon/graph/event-nodes/#onplayersuspendchanged"><code>OnPlayerSuspendChanged(VRCPlayerApi player)</code></a></li>
<li>event <a href="https://creators.vrchat.com/worlds/udon/networking/network-components#onmastertransferred"><code>OnMasterTransferred(VRCPlayerApi newMaster)</code></a></li>
<li><a href="https://creators.vrchat.com/worlds/udon/networking/network-components#networking-properties"><code>VRCPlayerApi Networking.Master { get; }</code></a></li>
<li><a href="https://creators.vrchat.com/worlds/udon/networking/network-components#networking-properties"><code>VRCPlayerApi Networking.InstanceOwner { get; }</code></a></li>
<li><a href="https://creators.vrchat.com/worlds/udon/players/#get-issuspended"><code>bool VRCPlayerApi.isSuspended { get; }</code></a></li>
</ul>
</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="vrchat-constraints">VRChat Constraints<a href="https://creators.vrchat.com/releases/release-3-7-0#vrchat-constraints" class="hash-link" aria-label="Direct link to VRChat Constraints" title="Direct link to VRChat Constraints">​</a></h2>
<p>VRChat Constraints are a full-featured replacement for Unity's built-in "Constraint" components. These are available to use on avatars. Existing constraint setups can be auto-converted.</p>
<p>In the client, all constraints will be auto-converted on load, but it is still recommended to use the SDK option to do so, as it allows direct testing and even further improved performance.</p>
<p>VRChat Constraints are supported on Mobile avatars! Check out our updated <a href="https://creators.vrchat.com/avatars/avatar-performance-ranking-system">performance rank page</a> for limits.</p>
<p>VRChat Constraints also have a few unique features, like native "world constraints". Go check out <a href="https://creators.vrchat.com/common-components/constraints/">the extensive documentation</a> for more info!</p>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="fixes">Fixes<a href="https://creators.vrchat.com/releases/release-3-7-0#fixes" class="hash-link" aria-label="Direct link to Fixes" title="Direct link to Fixes">​</a></h2>
<ul>
<li>Fixed issue with broken input events in ClientSim, addressing <a href="https://feedback.vrchat.com/admin/feedback/sdk-bug-reports/p/sdk-361-broke-inputgetkey?boards=sdk-bug-reports" target="_blank" rel="noopener noreferrer">this Canny issue</a>.</li>
<li>Fixed world uploads failing in some cases when using inline sprites in TextMeshPro labels.</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="breaking-api-changes">Breaking API Changes<a href="https://creators.vrchat.com/releases/release-3-7-0#breaking-api-changes" class="hash-link" aria-label="Direct link to Breaking API Changes" title="Direct link to Breaking API Changes">​</a></h2>
<p>As the minor version bump indicates, <code>3.7.0</code> contains breaking changes for user tooling. In particular, all exposed information and APIs related to <em>DynamicBones</em> have been removed without replacement. As uploading with DynamicBones is no longer supported, user tooling should be updated to reflect that and only support PhysBones going forward.</p>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="fixes--changes-relative-to-362-beta1">Fixes &amp; Changes relative to <code>3.6.2-beta.1</code><a href="https://creators.vrchat.com/releases/release-3-7-0#fixes--changes-relative-to-362-beta1" class="hash-link" aria-label="Direct link to fixes--changes-relative-to-362-beta1" title="Direct link to fixes--changes-relative-to-362-beta1">​</a></h2>
<p>This supercedes the <code>3.6.2</code> series.</p>
<ul>
<li>Improved stability of the new editor panels.</li>
<li>Fixed some issues displaying code-generated avatar asset files, as many community tools do.</li>
<li>Fixed avatar expression menu missing parameters between SDK upgrades and restarts.</li>
<li>Fixed empty control names being incorrectly overwritten with "New Control".</li>
<li>Fixed boolean Toggle menu entries not working as expected in-game (toggles created in <code>3.6.2-beta.1</code> or <code>3.6.2-constraints.4</code> may need to be recreated).</li>
<li>Sub-assets of expression menus will now copy the target parameter object from the root asset if set.</li>
<li>Fixed network IDs not being displayed in the Scene Descriptor inspector.</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="fixes--changes-in-370-beta2">Fixes &amp; Changes in <code>3.7.0-beta.2</code><a href="https://creators.vrchat.com/releases/release-3-7-0#fixes--changes-in-370-beta2" class="hash-link" aria-label="Direct link to fixes--changes-in-370-beta2" title="Direct link to fixes--changes-in-370-beta2">​</a></h2>
<ul>
<li>Fixed inconsistent loading of Expression Menu and Parameter icons in editor.</li>
<li>Fixed issue that caused Diffuse and BumpedDiffuse mobile shaders to appear all white.</li>
</ul>
<h4 class="anchor anchorWithStickyNavbar_LWe7" id="constraints-fixes">Constraints Fixes<a href="https://creators.vrchat.com/releases/release-3-7-0#constraints-fixes" class="hash-link" aria-label="Direct link to Constraints Fixes" title="Direct link to Constraints Fixes">​</a></h4>
<ul>
<li>
<p>Fixed rotation constraints locked in exactly one axis sometimes appearing at the wrong rotation. (Woo, gimbal lock.)</p>
</li>
<li>
<p>Fixed parent constraints potentially shifting in the SDK when Activate is pressed.</p>
</li>
<li>
<p>Improved stability for constraints that reference one another in a loop.</p>
</li>
<li>
<p>Fixed more issues with super-low weight constraints.</p>
</li>
<li>
<p>Fixed offsets not always being calculated correctly for unlocked VRChat position constraints.</p>
</li>
<li>
<p>Made corrections to how aim and look-at constraints behave when they are solving in local space.</p>
</li>
<li>
<p>Fixed constraint sources losing their references when selecting multiple VRChat constraints and editing their sources lists at the same time.</p>
</li>
<li>
<p>Improved support for community made tools interacting with the constraints auto-converter in the SDK.</p>
<ul>
<li>Please refer to <a href="https://creators.vrchat.com/common-components/constraints/#editor-tooling-info">our documentation</a> for more info.</li>
</ul>
</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="fixes--changes-in-the-final-version">Fixes &amp; Changes in the final version<a href="https://creators.vrchat.com/releases/release-3-7-0#fixes--changes-in-the-final-version" class="hash-link" aria-label="Direct link to Fixes &amp; Changes in the final version" title="Direct link to Fixes &amp; Changes in the final version">​</a></h2>
<ul>
<li>Further adjustments to the exposed API for constraints. Refer to the <a href="https://creators.vrchat.com/common-components/constraints/#editor-tooling-info">constraints documentation</a> for more info.<!-- -->
<ul>
<li>This includes a parameter to indicate if a conversion was triggered by clicking "Auto-Fix".</li>
</ul>
</li>
<li>Improved parameter assignment for submenus in the expression menu editor.</li>
<li>Fixed incorrect LFS references in .dylib files.</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="known-issues">Known Issues<a href="https://creators.vrchat.com/releases/release-3-7-0#known-issues" class="hash-link" aria-label="Direct link to Known Issues" title="Direct link to Known Issues">​</a></h2>
<ul>
<li>The first time you open a Scene and select a GameObject inside a prefab with a U# Behaviour, the GUI for the component directly below that U# Behaviour will not show its GUI. Deselecting and re-selecting the prefab fixes this.</li>
<li>Buffer Particles don't work as they did in Unity 2019, <a href="https://x.com/hfcRedddd/status/1696915379090604179" target="_blank" rel="noopener noreferrer">there is a workaround to fix them from community member hfcRed here</a>.</li>
<li>Unity 2022 sometimes causes Rider's debugger to stop for unhandled exceptions in Unity's IMGUI.<!-- -->
<ul>
<li>Please refer to <a href="https://forum.unity.com/threads/rider-debugger-breaks-on-unhandled-exception.1135879/#post-7305256" target="_blank" rel="noopener noreferrer">this workaround</a> and <a href="https://youtrack.jetbrains.com/issue/RIDER-64944" target="_blank" rel="noopener noreferrer">Jetbrains's bug tracker</a> for more information.</li>
</ul>
</li>
</ul>]]></content>
        <author>
            <name>Momo the Monster</name>
            <uri>https://github.com/momo-the-monster</uri>
        </author>
        <category label="release" term="release"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[Release 3.6.2-beta.2]]></title>
        <id>https://creators.vrchat.com/releases/release-3-6-2</id>
        <link href="https://creators.vrchat.com/releases/release-3-6-2"/>
        <updated>2024-07-23T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Summary]]></summary>
        <content type="html"><![CDATA[<h2 class="anchor anchorWithStickyNavbar_LWe7" id="summary">Summary<a href="https://creators.vrchat.com/releases/release-3-6-2#summary" class="hash-link" aria-label="Direct link to Summary" title="Direct link to Summary">​</a></h2>
<p>This update adds AI Navigation, improves Avatar editor panels, implements new Player State APIs, fixes input events in ClientSim, and fixes World uploads failing when using inline sprites.</p>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="new-features">New features<a href="https://creators.vrchat.com/releases/release-3-6-2#new-features" class="hash-link" aria-label="Direct link to New features" title="Direct link to New features">​</a></h2>
<ul>
<li>This release integrates <a href="https://docs.unity3d.com/Packages/com.unity.ai.navigation@1.1/manual/index.html" target="_blank" rel="noopener noreferrer">Unity 2022's AI Navigation</a> package, which allows you to create non-player characters (NPCs) that can intelligently move around the game world, using navigation meshes that are created automatically from your Scene geometry.<!-- -->
<ul>
<li>As the VRChat SDK now includes a reference to the AI navigation package, an "AI Navigation" window appears when you upgrade your scene. You can close it by right-clicking and selecting "Close."</li>
<li>We published <a href="https://creators.vrchat.com/worlds/udon/ai-navigation/" target="_blank" rel="noopener noreferrer">AI Navigation documentation for VRChat Worlds</a> and an <a href="https://creators.vrchat.com/worlds/examples/ai-navigation-example/" target="_blank" rel="noopener noreferrer">AI Navigation Example Scene</a> to help you get started.</li>
</ul>
</li>
<li>Some Avatar editor panels have been updated:<!-- -->
<ul>
<li>The Expression Parameters and Expressions Menu editors have been rebuilt from the ground up.</li>
<li>The updated Expression Parameters editor:<!-- -->
<ul>
<li>Allows you to reorder elements via drag &amp; drop easily</li>
<li>Uses a progress bar style meter to indicate how many synced bytes the parameters use</li>
<li>The Expression Parameters assets now have a new icon, making them easier to see in your Assets folder</li>
</ul>
</li>
<li>The updated Expressions Menu editor:<!-- -->
<ul>
<li>Shows the current Menu Controls count alongside the maximum number of Controls you can add</li>
<li>Shows the types of each Control at-a-glance</li>
<li>Allows you to reorder the Controls via drag &amp; drop easily</li>
<li>Has improved and updated warnings and errors</li>
<li>Has improved layout for editing all the Control types</li>
<li>For Sub-Menu Controls - allows for quick creation of a new Menu asset and provides a button to open the editor for the submenu with a single click</li>
<li>The Expressions Menu assets now have a new icon, so they're easier to see in your Assets folder</li>
</ul>
</li>
</ul>
</li>
<li>The VRC Scene Descriptor now shows a gizmo in your scene for each spawn defined in the spawns list.</li>
<li>The SDK now blocks uploads if the last built avatar exceeds the new reduced download or uncompressed size limits for Avatars.</li>
<li>Implemented some new player state APIs available via Udon:<!-- -->
<ul>
<li>event <a href="https://creators.vrchat.com/worlds/udon/graph/event-nodes/#onplayersuspendchanged"><code>OnPlayerSuspendChanged(VRCPlayerApi player)</code></a></li>
<li>event <a href="https://creators.vrchat.com/worlds/udon/networking/network-components#onmastertransferred"><code>OnMasterTransferred(VRCPlayerApi newMaster)</code></a></li>
<li><a href="https://creators.vrchat.com/worlds/udon/networking/network-components#networking-properties"><code>VRCPlayerApi Networking.Master { get; }</code></a></li>
<li><a href="https://creators.vrchat.com/worlds/udon/networking/network-components#networking-properties"><code>VRCPlayerApi Networking.InstanceOwner { get; }</code></a></li>
<li><a href="https://creators.vrchat.com/worlds/udon/players/#get-issuspended"><code>bool VRCPlayerApi.isSuspended { get; }</code></a></li>
</ul>
</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="fixes">Fixes<a href="https://creators.vrchat.com/releases/release-3-6-2#fixes" class="hash-link" aria-label="Direct link to Fixes" title="Direct link to Fixes">​</a></h2>
<ul>
<li>Fixed issue with broken input events in ClientSim, addressing <a href="https://feedback.vrchat.com/admin/feedback/sdk-bug-reports/p/sdk-361-broke-inputgetkey?boards=sdk-bug-reports" target="_blank" rel="noopener noreferrer">this Canny issue</a>.</li>
<li>Fixed world uploads failing in some cases when using inline sprites in TextMeshPro labels.</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="fixes-between-362-beta1-and-362-beta2">Fixes between 3.6.2-beta.1 and 3.6.2-beta.2<a href="https://creators.vrchat.com/releases/release-3-6-2#fixes-between-362-beta1-and-362-beta2" class="hash-link" aria-label="Direct link to Fixes between 3.6.2-beta.1 and 3.6.2-beta.2" title="Direct link to Fixes between 3.6.2-beta.1 and 3.6.2-beta.2">​</a></h2>
<ul>
<li>Improved stability of the new editor panels.</li>
<li>Fixed avatar expression menu missing expression parameters between SDK upgrades and restarts.</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="known-issues">Known Issues<a href="https://creators.vrchat.com/releases/release-3-6-2#known-issues" class="hash-link" aria-label="Direct link to Known Issues" title="Direct link to Known Issues">​</a></h2>
<ul>
<li>The first time you open a Scene and select a GameObject inside a prefab with a U# Behaviour, the GUI for the component directly below that U# Behaviour will not show its GUI. Deselecting and re-selecting the prefab fixes this.</li>
<li>Buffer Particles don't work as they did in Unity 2019, <a href="https://x.com/hfcRedddd/status/1696915379090604179" target="_blank" rel="noopener noreferrer">there is a workaround to fix them from community member hfcRed here</a>.</li>
<li>Unity 2022 sometimes causes Rider's debugger to stop for unhandled exceptions in Unity's IMGUI.<!-- -->
<ul>
<li>Please refer to <a href="https://forum.unity.com/threads/rider-debugger-breaks-on-unhandled-exception.1135879/#post-7305256" target="_blank" rel="noopener noreferrer">this workaround</a> and <a href="https://youtrack.jetbrains.com/issue/RIDER-64944" target="_blank" rel="noopener noreferrer">Jetbrains's bug tracker</a> for more information.</li>
</ul>
</li>
</ul>]]></content>
        <author>
            <name>Momo the Monster</name>
            <uri>https://github.com/momo-the-monster</uri>
        </author>
        <category label="release" term="release"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[Release 3.6.1]]></title>
        <id>https://creators.vrchat.com/releases/release-3-6-1</id>
        <link href="https://creators.vrchat.com/releases/release-3-6-1"/>
        <updated>2024-05-29T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Summary]]></summary>
        <content type="html"><![CDATA[<h2 class="anchor anchorWithStickyNavbar_LWe7" id="summary">Summary<a href="https://creators.vrchat.com/releases/release-3-6-1#summary" class="hash-link" aria-label="Direct link to Summary" title="Direct link to Summary">​</a></h2>
<p>This release exposes additional <a href="https://creators.vrchat.com/worlds/components/textmeshpro">TextMesh Pro</a> components and other useful properties to Udon.</p>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="new-features">New features<a href="https://creators.vrchat.com/releases/release-3-6-1#new-features" class="hash-link" aria-label="Direct link to New features" title="Direct link to New features">​</a></h2>
<ul>
<li>Exposed three new <a href="https://creators.vrchat.com/worlds/components/textmeshpro/">TextMeshPro</a> components to Udon.<!-- -->
<ul>
<li>Added <a href="https://creators.vrchat.com/worlds/components/textmeshpro/tmp_dropdown">TMP Dropdown</a>, <a href="https://creators.vrchat.com/worlds/components/textmeshpro/tmp_inputfield">TMP InputField</a>, and <a href="https://creators.vrchat.com/worlds/components/textmeshpro/tmp_text">TMP Text</a> to Udon.</li>
<li>TextMeshProUGUI and TextMeshPro and exposed through <a href="https://creators.vrchat.com/worlds/components/textmeshpro/tmp_text">TMP Text</a>.</li>
<li>VRChat will now open the on-screen keyboard when selecting a <a href="https://creators.vrchat.com/worlds/components/textmeshpro/tmp_inputfield">TMP InputField</a>.</li>
</ul>
</li>
<li>Added two properties to <code>BaseVRCVideoPlayer</code> and exposed them to Udon.<!-- -->
<ul>
<li><code>int VideoWidth { get; }</code></li>
<li><code>int VideoHeight { get; }</code></li>
<li>These are also available in the subclasses <code>VRCUnityVideoPlayer</code> and <code>VRCAVProVideoPlayer</code>.</li>
</ul>
</li>
<li>Added five voice-related getter methods to <code>VRCPlayerApi</code> and exposed them to Udon.<!-- -->
<ul>
<li><code>float GetVoiceGain()</code></li>
<li><code>float GetVoiceDistanceNear()</code></li>
<li><code>float GetVoiceDistanceFar()</code></li>
<li><code>float GetVoiceVolumetricRadius()</code></li>
<li><code>bool GetVoiceLowpass()</code></li>
</ul>
</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="fixes">Fixes<a href="https://creators.vrchat.com/releases/release-3-6-1#fixes" class="hash-link" aria-label="Direct link to Fixes" title="Direct link to Fixes">​</a></h2>
<ul>
<li>Worlds with vastly more renderers than materials will now build faster.</li>
<li>Fixed a performance bottleneck when validating avatars after a local test build, especially when multiple avatars are present in the scene.</li>
<li>Fixed some issues where the Network ID Utility could get confused about duplicate GameObject paths.<!-- -->
<ul>
<li>Note that it still is not recommended or fully supported to have networked objects share the same hierarchy paths!</li>
</ul>
</li>
<li>Fixed a missing reference error locking up the build panel if an audio clip was deleted or missing from an VRC_AnimatorPlayAudio state behaviour on the avatar.</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="changes-between-361-beta2-and-final-release">Changes between 3.6.1-beta.2 and final release<a href="https://creators.vrchat.com/releases/release-3-6-1#changes-between-361-beta2-and-final-release" class="hash-link" aria-label="Direct link to Changes between 3.6.1-beta.2 and final release" title="Direct link to Changes between 3.6.1-beta.2 and final release">​</a></h2>
<ul>
<li>Udon can now access the three new TextMeshPro components directly.<!-- -->
<ul>
<li>Only the properties listed in VRChat's documentation have been exposed.</li>
<li>The previously new <code>VRC_TMP</code> wrapper components have been removed.</li>
</ul>
</li>
<li>ClientSim: Udon behaviours instantiated via other Udon scripts will now initialize right away and have variables and functions ready.</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="known-issues">Known Issues<a href="https://creators.vrchat.com/releases/release-3-6-1#known-issues" class="hash-link" aria-label="Direct link to Known Issues" title="Direct link to Known Issues">​</a></h2>
<ul>
<li>The first time you open a Scene and select a GameObject inside a prefab with a U# Behaviour, the GUI for the component directly below that U# Behaviour will not show its GUI. Deselecting and re-selecting the prefab fixes this.</li>
<li>Buffer Particles don't work as they did in Unity 2019, <a href="https://x.com/hfcRedddd/status/1696915379090604179" target="_blank" rel="noopener noreferrer">there is a workaround to fix them from community member hfcRed here</a>.</li>
<li>Unity 2022 sometimes causes Rider's debugger to stop for unhandled exceptions in Unity's IMGUI.<!-- -->
<ul>
<li>Please refer to <a href="https://forum.unity.com/threads/rider-debugger-breaks-on-unhandled-exception.1135879/#post-7305256" target="_blank" rel="noopener noreferrer">this workaround</a> and <a href="https://youtrack.jetbrains.com/issue/RIDER-64944" target="_blank" rel="noopener noreferrer">Jetbrains's bug tracker</a> for more information.</li>
</ul>
</li>
</ul>]]></content>
        <author>
            <name>Momo the Monster</name>
            <uri>https://github.com/momo-the-monster</uri>
        </author>
        <category label="release" term="release"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[Release 3.6.0]]></title>
        <id>https://creators.vrchat.com/releases/release-3-6-0</id>
        <link href="https://creators.vrchat.com/releases/release-3-6-0"/>
        <updated>2024-04-26T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Summary]]></summary>
        <content type="html"><![CDATA[<h2 class="anchor anchorWithStickyNavbar_LWe7" id="summary">Summary<a href="https://creators.vrchat.com/releases/release-3-6-0#summary" class="hash-link" aria-label="Direct link to Summary" title="Direct link to Summary">​</a></h2>
<p>This release overhauls the World SDK UI, exposes new Udon functions, and fixes some issues across the SDK and ClientSim.</p>
<p>Supercedes <a href="https://creators.vrchat.com/releases/release-3-5-3">release 3.5.3</a>, which was available for beta testing but was not launched officially.</p>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="new-features">New features<a href="https://creators.vrchat.com/releases/release-3-6-0#new-features" class="hash-link" aria-label="Direct link to New features" title="Direct link to New features">​</a></h2>
<ul>
<li>Big updates to the Worlds SDK for creators! This is a major update with a lot of additions including:<!-- -->
<ul>
<li>A rewrite of all almost all custom inspectors in the World's SDK.</li>
<li>Updated HelpURLs (the question mark on a component) to <em>actually</em> taking you to the VRC docs (gasp).</li>
<li>Properly added almost 20 components to the <strong>Add Component -&gt; VRChat</strong> section.</li>
<li>The Two-Factor Authentication field in the SDK automatically submits once you enter six digits, instead of requiring you to press the Verify button.</li>
</ul>
</li>
<li>World creators now have the ability to modify the value of <code>UnityEngine.Physics.bounceThreshold</code> via Udon. Addresses <a href="https://feedback.vrchat.com/feature-requests/p/allow-world-creators-to-change-physics-settings" target="_blank" rel="noopener noreferrer">this Canny request</a>.<!-- -->
<ul>
<li>This allows world creators to have better control over when objects should or shouldn't bounce, which can be important for physics-based worlds.</li>
</ul>
</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="changes">Changes<a href="https://creators.vrchat.com/releases/release-3-6-0#changes" class="hash-link" aria-label="Direct link to Changes" title="Direct link to Changes">​</a></h2>
<ul>
<li>Layers 3, 6, and 7 are now reserved layers for VRChat. Previously, these were internally reserved by Unity and were freed up in Unity 2022.<!-- -->
<ul>
<li>VRChat now reserves them for internal use moving forward and will move any objects in this layer to the default layer. Reflected <a href="https://creators.vrchat.com/worlds/layers/#unitys-built-in-layers">here</a> in our creator docs.</li>
</ul>
</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="fixes">Fixes<a href="https://creators.vrchat.com/releases/release-3-6-0#fixes" class="hash-link" aria-label="Direct link to Fixes" title="Direct link to Fixes">​</a></h2>
<ul>
<li>Fixed the broken Standard Lite shader <strong>Emission</strong> feature.</li>
<li>Fixed an error about failing to assign network IDs when trying to upload the default VRC world scene right after initialization.</li>
<li>Fixed Unity warning when using the sample dynamic Robot Avatar from the VRChat Avatars SDK.</li>
<li>Exposed missing string methods to Udon. Addresses <a href="https://feedback.vrchat.com/sdk-bug-reports/p/350-beta1-stringtrim-stringtrimstart-and-stringtrimend-are-not-exposed-to-udon-i" target="_blank" rel="noopener noreferrer">this Canny request</a>.<!-- -->
<ul>
<li>Certain variants of <code>Trim</code>, <code>TrimStart</code>, <code>TrimEnd</code>, and others were previously available in Unity 2019 but caused compilation issues in Unity 2022. This fixes those regressions.</li>
</ul>
</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="clientsim">ClientSim<a href="https://creators.vrchat.com/releases/release-3-6-0#clientsim" class="hash-link" aria-label="Direct link to ClientSim" title="Direct link to ClientSim">​</a></h2>
<ul>
<li>Fixed joystick drift issues by adding input axis deadzones. Addresses <a href="https://github.com/vrchat-community/ClientSim/issues/1" target="_blank" rel="noopener noreferrer">this GitHub issue</a>.</li>
<li>Updated ClientSim to use IETF language codes instead of full language names to more accurately simulate VRChat's behavior.</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="public-api-changes">Public API Changes<a href="https://creators.vrchat.com/releases/release-3-6-0#public-api-changes" class="hash-link" aria-label="Direct link to Public API Changes" title="Direct link to Public API Changes">​</a></h2>
<ul>
<li>SDK methods from <code>ShaderValidation</code> have been moved into the <code>ValidationUtils</code> class.</li>
<li>Method signatures from <code>ValidationUtils</code> have been modified. <strong>Anyone using these methods may need to update their code!</strong></li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="fixes-between-353-beta2-and-360-beta1">Fixes between 3.5.3-beta.2 and 3.6.0-beta.1<a href="https://creators.vrchat.com/releases/release-3-6-0#fixes-between-353-beta2-and-360-beta1" class="hash-link" aria-label="Direct link to Fixes between 3.5.3-beta.2 and 3.6.0-beta.1" title="Direct link to Fixes between 3.5.3-beta.2 and 3.6.0-beta.1">​</a></h2>
<ul>
<li>ClientSim input axis dead zones would make mouse movement awkwardly slow.</li>
<li>World upload could fail with an <code>AmbiguousMatchException</code> when a scene contained components with multiple <code>RequireComponent</code> attributes.</li>
<li>Calling <code>Instantiate</code> from Udon in certain events like <code>OnPlayerJoined</code> could fail in ClientSim.</li>
<li>Pickups would not work in ClientSim.</li>
<li>Canvas UI with <code>VRC_UiShape</code> components would not be interactable in ClientSim.</li>
<li><code>VRC_ObjectSync</code> and <code>VRC_ObjectPool</code> would fail to initialize in ClientSim.</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="fixes-between-360-beta1-and-final-release">Fixes between 3.6.0-beta.1 and final release<a href="https://creators.vrchat.com/releases/release-3-6-0#fixes-between-360-beta1-and-final-release" class="hash-link" aria-label="Direct link to Fixes between 3.6.0-beta.1 and final release" title="Direct link to Fixes between 3.6.0-beta.1 and final release">​</a></h2>
<ul>
<li>Fixed an issue that could cause editor crashes with a memory allocation warning under rare circumstances.</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="known-issues">Known Issues<a href="https://creators.vrchat.com/releases/release-3-6-0#known-issues" class="hash-link" aria-label="Direct link to Known Issues" title="Direct link to Known Issues">​</a></h2>
<ul>
<li>The first time you open a Scene and select a GameObject inside a prefab with a U# Behaviour, the GUI for the component directly below that U# Behaviour will not show its GUI. Deselecting and re-selecting the prefab fixes this.</li>
<li>Buffer Particles don't work as they did in Unity 2019, <a href="https://x.com/hfcRedddd/status/1696915379090604179" target="_blank" rel="noopener noreferrer">there is a workaround to fix them from community member hfcRed here</a>.</li>
<li>The Editor may crash when updating a shader graph reference by another shader using UsePass. This is an issue with Unity 2022.3.6f1 and is fixed in 2022.3.14f1.</li>
<li>Unity 2022 sometimes causes Rider's debugger to stop for unhandled exceptions in Unity's IMGUI.<!-- -->
<ul>
<li>Please refer to <a href="https://forum.unity.com/threads/rider-debugger-breaks-on-unhandled-exception.1135879/#post-7305256" target="_blank" rel="noopener noreferrer">this workaround</a> and <a href="https://youtrack.jetbrains.com/issue/RIDER-64944" target="_blank" rel="noopener noreferrer">Jetbrains's bug tracker</a> for more information.</li>
</ul>
</li>
</ul>]]></content>
        <author>
            <name>Momo the Monster</name>
            <uri>https://github.com/momo-the-monster</uri>
        </author>
        <category label="release" term="release"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[Release 3.5.2]]></title>
        <id>https://creators.vrchat.com/releases/release-3-5-2</id>
        <link href="https://creators.vrchat.com/releases/release-3-5-2"/>
        <updated>2024-03-27T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Summary]]></summary>
        <content type="html"><![CDATA[<h2 class="anchor anchorWithStickyNavbar_LWe7" id="summary">Summary<a href="https://creators.vrchat.com/releases/release-3-5-2#summary" class="hash-link" aria-label="Direct link to Summary" title="Direct link to Summary">​</a></h2>
<p>This release brings new functionality for avatar creators and various fixes.</p>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="new-features">New features<a href="https://creators.vrchat.com/releases/release-3-5-2#new-features" class="hash-link" aria-label="Direct link to New features" title="Direct link to New features">​</a></h2>
<ul>
<li>Added the <a href="https://creators.vrchat.com/avatars/avatar-components/vrc-headchop"><code>VRCHeadChop</code> component</a> to the avatars SDK.<!-- -->
<ul>
<li>This component allows avatar authors to control which parts of their avatar are hidden from the perspective of the user wearing it.</li>
</ul>
</li>
<li>Added the <a href="https://creators.vrchat.com/avatars/state-behaviors#animator-play-audio"><code>AnimatorPlayAudio</code> state behaviour</a> to the avatars SDK.<!-- -->
<ul>
<li>This allows you to modify an AudioSource when transitioning to an animation state.</li>
<li>It can change the audio clip, volume, pitch, or loop. It can also play or stop the AudioSource automatically.</li>
</ul>
</li>
<li>Added new <a href="https://creators.vrchat.com/worlds/udon/input-events/#oninputmethodchanged"><code>OnInputMethodChanged</code> Event to Udon</a>, which is triggered whenever the user switches Input Methods, from a Keyboard to a Game Controller, or a Game Controller to a Touchscreen, for example.</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="changes">Changes<a href="https://creators.vrchat.com/releases/release-3-5-2#changes" class="hash-link" aria-label="Direct link to Changes" title="Direct link to Changes">​</a></h2>
<ul>
<li>The worlds SDK will now suggest replacing Unity's default UI shader with a <a href="https://creators.vrchat.com/platforms/android/quest-content-limitations/#shaders">super-sampled shader</a> where appropriate.<!-- -->
<ul>
<li>This can help improve the readability of text elements when viewed in VR.</li>
<li>TextMeshPro components are not affected by this change. Their readability is very high without supersampling.</li>
</ul>
</li>
<li>Added <a href="https://creators.vrchat.com/worlds/udon/data-containers/byte-and-bit-operations">Byte and Bit operations</a> to Udon.<!-- -->
<ul>
<li>Exposed <code>System.BitConverter</code>, <code>System.Buffer</code>, and <code>System.Text.Encoding</code> to Udon.</li>
<li>Added <code>DataToken.BitCast</code> method.</li>
</ul>
</li>
<li>Added <a href="https://creators.vrchat.com/worlds/udon/string-loading">ResultBytes field to string downloader event</a> to allow raw data downloads.</li>
<li>The avatars SDK now warns against using <a href="https://creators.vrchat.com/avatars/#write-defaults-on-states"><em>mixed</em> Write Defaults settings</a> across avatar animators.</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="fixes">Fixes<a href="https://creators.vrchat.com/releases/release-3-5-2#fixes" class="hash-link" aria-label="Direct link to Fixes" title="Direct link to Fixes">​</a></h2>
<ul>
<li>If an Udon script uses <code>[RequireComponent]</code>, the SDK will now silence some harmless errors while building.</li>
<li>Updated <code>UnityEngine.Timeline</code> package version &amp; added to base SDK package dependencies.</li>
<li>Changed "Polygons" to "Triangles" in SDK avatar performance stats for a more accurate description of recommended limits.</li>
<li>Fixed issues with <code>InputUse</code> Udon events firing constantly when using VRChat Mobile. They should now only fire when a genuine tap is done, not while swiping or long-pressing.</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="clientsim">ClientSim<a href="https://creators.vrchat.com/releases/release-3-5-2#clientsim" class="hash-link" aria-label="Direct link to ClientSim" title="Direct link to ClientSim">​</a></h2>
<ul>
<li>Added <a href="https://creators.vrchat.com/worlds/udon/players/#language">all languages supported by VRChat</a>.</li>
<li>Added support for <a href="https://creators.vrchat.com/worlds/udon/players/player-avatar-scaling">player scaling APIs</a>.</li>
<li>Fixed EditorOnly objects not getting removed in Play Mode.</li>
<li>The stacked camera is now enabled/disabled depending on the state of the pause menu to improve performance.</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="known-issues">Known Issues<a href="https://creators.vrchat.com/releases/release-3-5-2#known-issues" class="hash-link" aria-label="Direct link to Known Issues" title="Direct link to Known Issues">​</a></h2>
<ul>
<li>The first time you open a Scene and select a GameObject inside a prefab with a U# Behaviour, the GUI for the component directly below that U# Behaviour will not show its GUI. Deselecting and re-selecting the prefab fixes this.</li>
<li>Buffer Particles don't work as they did in Unity 2019, <a href="https://x.com/hfcRedddd/status/1696915379090604179" target="_blank" rel="noopener noreferrer">there is a workaround to fix them from community member hfcRed here</a>.</li>
<li>The Editor may crash when updating a shader graph reference by another shader using UsePass. This is an issue with Unity 2022.3.6f1 and is fixed in 2022.3.14f1.</li>
<li>Unity 2022 sometimes causes Rider's debugger to stop for unhandled exceptions in Unity's IMGUI.<!-- -->
<ul>
<li>Please refer to <a href="https://forum.unity.com/threads/rider-debugger-breaks-on-unhandled-exception.1135879/#post-7305256" target="_blank" rel="noopener noreferrer">this workaround</a> and <a href="https://youtrack.jetbrains.com/issue/RIDER-64944" target="_blank" rel="noopener noreferrer">Jetbrains's bug tracker</a> for more information.</li>
</ul>
</li>
</ul>]]></content>
        <author>
            <name>Momo the Monster</name>
            <uri>https://github.com/momo-the-monster</uri>
        </author>
        <category label="release" term="release"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[Release 3.5.1]]></title>
        <id>https://creators.vrchat.com/releases/release-3-5-1</id>
        <link href="https://creators.vrchat.com/releases/release-3-5-1"/>
        <updated>2024-02-20T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Summary]]></summary>
        <content type="html"><![CDATA[<h2 class="anchor anchorWithStickyNavbar_LWe7" id="summary">Summary<a href="https://creators.vrchat.com/releases/release-3-5-1#summary" class="hash-link" aria-label="Direct link to Summary" title="Direct link to Summary">​</a></h2>
<p>This release contains multiple Unity 2022 follow-up fixes and overall quality-of-life improvements.</p>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="new-features">New features<a href="https://creators.vrchat.com/releases/release-3-5-1#new-features" class="hash-link" aria-label="Direct link to New features" title="Direct link to New features">​</a></h2>
<ul>
<li>New methods have been added to the Worlds SDK. These methods were previously only available to Creator Economy sellers but can now be used by all world creators.<!-- -->
<ul>
<li>Store.OpenGroupPage: Opens a group page based on its <code>grp_</code> ID.</li>
<li>Store.OpenGroupStorePage: Opens a seller's store page.</li>
<li>Store.OpenGroupListing: Open a seller's listing.</li>
</ul>
</li>
<li>Various features for sellers have been added to the Worlds SDK.<!-- -->
<ul>
<li>These features cannot be used in an uploaded world unless you are a seller.</li>
</ul>
</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="changes">Changes<a href="https://creators.vrchat.com/releases/release-3-5-1#changes" class="hash-link" aria-label="Direct link to Changes" title="Direct link to Changes">​</a></h2>
<ul>
<li>The VRChat SDK now automatically enables "Clamp BlendShape Weights" option in VRChat projects. This mirrors VRChat Client behaviour and prevents BlendShapes from moving beyond their maximum (100) offset.</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="fixes">Fixes<a href="https://creators.vrchat.com/releases/release-3-5-1#fixes" class="hash-link" aria-label="Direct link to Fixes" title="Direct link to Fixes">​</a></h2>
<ul>
<li>Fixed spatialized audio sources creating warnings when entering play mode or adjusting their settings. Users might be prompted to restart their editor when adding the 3.5.1 SDK for the first time.</li>
<li>Fixed upload speed increase logic breaking on macOS/Linux, preventing users from uploading.</li>
<li>Fixed an issue where the SDK would not detect if the blueprint ID of a world / avatar is taken by another user or invalid, and attempt to upload a new world / avatar to that ID. That would result in an "Application Error" message. The blueprint ID is now cleared correctly in this case.</li>
<li>Fixed an issue where builds that went above the upload limit, e.g. 10 MB for Android Avatars, reported the size incorrectly. The SDK now correctly shows all the decimal points for the size. You should no longer see error messages like "10.00 MB &gt; 10.00 MB".</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_LWe7" id="known-issues">Known Issues<a href="https://creators.vrchat.com/releases/release-3-5-1#known-issues" class="hash-link" aria-label="Direct link to Known Issues" title="Direct link to Known Issues">​</a></h2>
<ul>
<li>The first time you open a Scene and select a GameObject inside a prefab with a U# Behaviour, the GUI for the component directly below that U# Behaviour will not show its GUI. Deselecting and re-selecting the prefab fixes this.</li>
<li>Buffer Particles don't work as they did in Unity 2019, <a href="https://x.com/hfcRedddd/status/1696915379090604179" target="_blank" rel="noopener noreferrer">there is a workaround to fix them from community member hfcRed here</a>.</li>
<li>The Editor may crash when updating a shader graph reference by another shader using UsePass. This is an issue with Unity 2022.3.6f1 and is fixed in 2022.3.14f1.</li>
<li>Unity 2022 sometimes causes Rider's debugger to stop for unhandled exceptions in Unity's IMGUI.<!-- -->
<ul>
<li>Please refer to <a href="https://forum.unity.com/threads/rider-debugger-breaks-on-unhandled-exception.1135879/#post-7305256" target="_blank" rel="noopener noreferrer">this workaround</a> and <a href="https://youtrack.jetbrains.com/issue/RIDER-64944" target="_blank" rel="noopener noreferrer">Jetbrains's bug tracker</a> for more information.</li>
</ul>
</li>
</ul>]]></content>
        <author>
            <name>Momo the Monster</name>
            <uri>https://github.com/momo-the-monster</uri>
        </author>
        <category label="release" term="release"/>
    </entry>
</feed>