# Layers

What are the different layers used for in VRChat? What special properties of some specific layers should you know?

Below I've listed the currently used (+ reserved) layers and their use cases based on experimentation using my layer inspection tools.

<p class="callout warning">My layer research is currently ongoing and information on this page may still be incomplete!</p>

<p class="callout warning">Any object set to **19-21:** **reserved2-4** will be forced to **0: Default** on build (You can still manually force the layer during runtime)</p>

<table border="1" id="bkmrk-no-name-description-" style="border-collapse: collapse; width: 100%; height: 1365.72px;"><colgroup><col style="width: 6.05686%;"></col><col style="width: 20.2719%;"></col><col style="width: 30.1618%;"></col><col style="width: 43.3858%;"></col></colgroup><tbody><tr style="height: 29.7969px;"><td style="height: 29.7969px;">**No**</td><td style="height: 29.7969px;">**Name**</td><td style="height: 29.7969px;">**Visual elements**</td><td style="height: 29.7969px;">**Notes**</td></tr><tr style="height: 65.8438px;"><td style="height: 65.8438px;">0</td><td style="height: 65.8438px;">Default</td><td style="height: 65.8438px;">

- Avatar pedestals
- Emojis

</td><td style="height: 65.8438px;"><p class="callout info">Default layer</p>

</td></tr><tr style="height: 59.3906px;"><td style="height: 59.3906px;">1</td><td style="height: 59.3906px;">TransparentFX</td><td style="height: 59.3906px;">  
</td><td style="height: 59.3906px;"><p class="callout info">Used for Unity's Flare Assets</p>

</td></tr><tr style="height: 104.172px;"><td style="height: 104.172px;">2</td><td style="height: 104.172px;">IgnoreRaycast</td><td style="height: 104.172px;">  
</td><td style="height: 104.172px;"><p class="callout info">Ignored by Unity's Physics Raycasts if no layer mask is provided. Not ignored by VRChat's Physics Raycasts</p>

</td></tr><tr><td>3</td><td>reserved3</td><td>  
</td><td>  
</td></tr><tr style="height: 70.0312px;"><td style="height: 70.0312px;">4</td><td style="height: 70.0312px;">Water</td><td style="height: 70.0312px;">

- Portals
- Mirrors

</td><td style="height: 70.0312px;">  
</td></tr><tr style="height: 152.719px;"><td style="height: 152.719px;">5</td><td style="height: 152.719px;">UI</td><td style="height: 152.719px;">

- Remote camera lens
- Player scanning highlight
- Personal mirror visuals

</td><td style="height: 152.719px;"><p class="callout warning">Interactive objects on this layer can't be interacted with unless the menu is open</p>

<p class="callout info">Colliders of remote players exist on this layer</p>

</td></tr><tr><td>6</td><td>reserved6</td><td>  
</td><td>  
</td></tr><tr><td>7</td><td>reserved7</td><td>  
</td><td>  
</td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">8</td><td style="height: 29.7969px;">Interactive</td><td style="height: 29.7969px;">  
</td><td style="height: 29.7969px;"><p class="callout success">Unused by Unity and VRChat</p>

</td></tr><tr style="height: 86.8125px;"><td style="height: 86.8125px;">9</td><td style="height: 86.8125px;">Player</td><td style="height: 86.8125px;">

- Remote players
- Remote player chatbox

</td><td style="height: 86.8125px;">  
</td></tr><tr style="height: 81.7812px;"><td style="height: 81.7812px;">10</td><td style="height: 81.7812px;">PlayerLocal</td><td style="height: 81.7812px;">

- Local player without head

</td><td style="height: 81.7812px;"><p class="callout info">VRCMirrorReflection refuses to render this layer  
</p>

</td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">11</td><td style="height: 29.7969px;">Environment</td><td style="height: 29.7969px;">  
</td><td style="height: 29.7969px;"><p class="callout success">Unused by Unity and VRChat</p>

</td></tr><tr style="height: 86.8281px;"><td style="height: 86.8281px;">12</td><td style="height: 86.8281px;">UiMenu</td><td style="height: 86.8281px;">

- Nameplates
- Remote camera nameplate

</td><td style="height: 86.8281px;">  
</td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">13</td><td style="height: 29.7969px;">Pickup</td><td style="height: 29.7969px;">  
</td><td style="height: 29.7969px;"><p class="callout info">Default pickup layer</p>

</td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">14</td><td style="height: 29.7969px;">PickupNoEnvironment</td><td style="height: 29.7969px;">

- Personal mirror collider *(regardless of whether grabbable or not)*

</td><td style="height: 29.7969px;"><p class="callout info">Colliders on this layer only collide with the 'Pickup' layer</p>

</td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">15</td><td style="height: 29.7969px;">StereoLeft</td><td style="height: 29.7969px;">  
</td><td style="height: 29.7969px;"><p class="callout success">Unused by Unity and VRChat</p>

</td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">16</td><td style="height: 29.7969px;">StereoRight</td><td style="height: 29.7969px;">  
</td><td style="height: 29.7969px;"><p class="callout success">Unused by Unity and VRChat</p>

</td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">17</td><td style="height: 29.7969px;">Walkthrough</td><td style="height: 29.7969px;">  
</td><td style="height: 29.7969px;"><p class="callout info">Colliders on this layer won't collide with players</p>

</td></tr><tr style="height: 195.344px;"><td style="height: 195.344px;">18</td><td style="height: 195.344px;">MirrorReflection</td><td style="height: 195.344px;">

- Complete local player *(shown in mirrors and cameras)*

</td><td style="height: 195.344px;"><p class="callout warning">Only layer that isn't rendered by the main camera (local player's sees the headless copy of themselves on layer 10)</p>

<p class="callout info">Colliders on this layer don't block VRChat raycasts</p>

</td></tr><tr style="height: 164.828px;"><td style="height: 164.828px;">19</td><td style="height: 164.828px;">InternalUI

*(Previously "reserved2")*

</td><td style="height: 164.828px;">

- HUD
- Main menu
- Camera UI
- Camera lens
- Cursor
- Tooltips
- Expression menu

</td><td style="height: 164.828px;"><p class="callout info">Will render over everything</p>

</td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">20</td><td style="height: 29.7969px;">HardwareObjects

*(Previously "reserved3")*

</td><td style="height: 29.7969px;">  
</td><td style="height: 29.7969px;">  
</td></tr><tr style="height: 29.7969px;"><td style="height: 29.7969px;">21</td><td style="height: 29.7969px;">reserved4</td><td style="height: 29.7969px;">  
</td><td style="height: 29.7969px;">  
</td></tr></tbody></table>

---

### Changelog

#### \[2024-09-04\]

- Added note about recently discovered personal mirror visuals on **UI *(5)***
- Added note about recently discovered personal mirror collider on **PickupNoEnvironment *(14)***