Stations: Difference between revisions
Added missing Official resource, fixed citation. Page still stubbed! |
remove stub |
||
| Line 1: | Line 1: | ||
[[File:Station in unity.webp|thumb|Station example in unity.]] | [[File:Station in unity.webp|thumb|Station example in unity.]] | ||
'''Stations''' | '''Stations''' (often called '''seats''' or '''chairs''') are interactive objects that place a user at a defined position and rotation, optionally applying seated IK and/or custom animations. Stations are commonly used in [[worlds]], and can also be used on [[avatars]] to create attachable seats. | ||
== | == Overview == | ||
A Station is typically implemented with a creator component that users interact with to "sit" (enter the station). When a user enters a station, the station can: | |||
* Move the user to a defined entry transform. | |||
* Optionally treat the user as seated (seated IK) and/or apply a custom animation controller. | |||
* Optionally restrict movement/exit or allow switching between stations. | |||
== General behavior == | |||
=== Entering === | |||
Stations require an interactable area. A Collider on the same GameObject is used as the click/interaction area. A Box Collider may be added automatically if none exists. | |||
=== Exiting === | |||
By default, users can typically leave a station by moving. Disabling the Station's GameObject will remove (unseat) users currently using it. Disabling only the Collider prevents new users from entering, but does not remove the current user. | |||
== World == | |||
=== Adding a Station in a world === | |||
In worlds, Stations are commonly used for chairs, ride seats, and vehicle/ride systems that reposition the user. | |||
=== Component options === | |||
The VRC_Station component provides the following commonly used options: | |||
{| class="wikitable" | {| class="wikitable" | ||
! Option | |||
! | ! Description | ||
!Description | |||
|- | |- | ||
|Player Mobility | | Player Mobility | ||
| | | Controls whether the user can move while in the station (Mobile / Immobilize / Immobilize For Vehicle). | ||
|- | |- | ||
|Can | | Can Use Station From Station | ||
| | | Whether a user can switch directly into another station while currently seated. | ||
|- | |- | ||
|Animation Controller (optional) | | Animation Controller (optional) | ||
|Overrides the | | Overrides the default seating animation with a custom controller. | ||
|- | |- | ||
|Disable Station Exit | | Disable Station Exit | ||
| | | Prevents exiting by usual means; creators must provide an explicit way to unseat. | ||
|- | |- | ||
|Seated | | Seated | ||
| | | Enables seated behavior (also affects the avatar `Seated` parameter when used). | ||
|- | |- | ||
|Station Enter Player Location | | Station Enter Player Location | ||
|Transform | | Transform used as the user's position when entering. | ||
|- | |- | ||
|Station Exit Player Location | | Station Exit Player Location | ||
|Transform | | Transform used as the user's position when exiting. | ||
|- | |- | ||
|Controls Object | | Controls Object | ||
| | | Allows the seated user to control a target object (for example, a vehicle seat). | ||
|} | |} | ||
== | === Animator integration === | ||
Stations can drive Animator logic using built-in parameters: | |||
* `InStation`: true when the avatar is using a station (even if seated [[IK]] is not enabled). | |||
* `Seated`: true when seated [[IK]] is enabled (only when the station's ''Seated'' option is enabled). | |||
* `AvatarVersion`: may be used to branch behavior for SDK2 avatars vs SDK3 avatars.<ref>VRChat's documentation notes that stations behave differently for avatars uploaded with older [[SDK]] versions, and recommends using `AvatarVersion` and `InStation` to branch seated animation logic. See {{VRC link|https://creators.vrchat.com/worlds/components/vrc_station/#detecting-sdk2-avatars| VRC Station - Detecting SDK2 Avatars}} - on [[Creators.vrchat.com|''creators.vrchat.com'']]</ref> | |||
== Avatar == | |||
Stations can also be placed on avatars to create "seats" that move with the avatar. | |||
=== Notes and limitations === | |||
* Avatars can have up to 6 stations; additional stations are disabled. | |||
* Some station settings are less useful on avatars because walking typically exits the station, and "Disable Station Exit" may not behave as expected on avatar stations. | |||
== See also == | |||
* [[Udon]] | |||
== Official resources == | == Official resources == | ||
* {{VRC link|https://creators.vrchat.com/worlds/components/vrc_station| VRC Station}} - on [[Creators.vrchat.com|''creators.vrchat.com'']] | * {{VRC link|https://creators.vrchat.com/worlds/components/vrc_station| VRC Station}} - on [[Creators.vrchat.com|''creators.vrchat.com'']] | ||
== References == | == References == | ||
<references/> | |||
Revision as of 16:21, 16 December 2025

Stations (often called seats or chairs) are interactive objects that place a user at a defined position and rotation, optionally applying seated IK and/or custom animations. Stations are commonly used in worlds, and can also be used on avatars to create attachable seats.
Overview
A Station is typically implemented with a creator component that users interact with to "sit" (enter the station). When a user enters a station, the station can:
- Move the user to a defined entry transform.
- Optionally treat the user as seated (seated IK) and/or apply a custom animation controller.
- Optionally restrict movement/exit or allow switching between stations.
General behavior
Entering
Stations require an interactable area. A Collider on the same GameObject is used as the click/interaction area. A Box Collider may be added automatically if none exists.
Exiting
By default, users can typically leave a station by moving. Disabling the Station's GameObject will remove (unseat) users currently using it. Disabling only the Collider prevents new users from entering, but does not remove the current user.
World
Adding a Station in a world
In worlds, Stations are commonly used for chairs, ride seats, and vehicle/ride systems that reposition the user.
Component options
The VRC_Station component provides the following commonly used options:
| Option | Description |
|---|---|
| Player Mobility | Controls whether the user can move while in the station (Mobile / Immobilize / Immobilize For Vehicle). |
| Can Use Station From Station | Whether a user can switch directly into another station while currently seated. |
| Animation Controller (optional) | Overrides the default seating animation with a custom controller. |
| Disable Station Exit | Prevents exiting by usual means; creators must provide an explicit way to unseat. |
| Seated | Enables seated behavior (also affects the avatar `Seated` parameter when used). |
| Station Enter Player Location | Transform used as the user's position when entering. |
| Station Exit Player Location | Transform used as the user's position when exiting. |
| Controls Object | Allows the seated user to control a target object (for example, a vehicle seat). |
Animator integration
Stations can drive Animator logic using built-in parameters:
- `InStation`: true when the avatar is using a station (even if seated IK is not enabled).
- `Seated`: true when seated IK is enabled (only when the station's Seated option is enabled).
- `AvatarVersion`: may be used to branch behavior for SDK2 avatars vs SDK3 avatars.[1]
Avatar
Stations can also be placed on avatars to create "seats" that move with the avatar.
Notes and limitations
- Avatars can have up to 6 stations; additional stations are disabled.
- Some station settings are less useful on avatars because walking typically exits the station, and "Disable Station Exit" may not behave as expected on avatar stations.
See also
Official resources
References
- ↑ VRChat's documentation notes that stations behave differently for avatars uploaded with older SDK versions, and recommends using `AvatarVersion` and `InStation` to branch seated animation logic. See VRC Station - Detecting SDK2 Avatars - on creators.vrchat.com