[804][Bug] Local pickups can no longer be reparented
complete
CyanLaser
In live, it is possible to reparent an object with the VRC_Pickup script. In open beta, reparenting this object does nothing. This breaks the new climbing mechanic for Desktop users.
Live:
Open Beta:
You can test on any climbing map:
Rapunzel - wrld_98400948-004d-44b8-9dea-293a3badf70f
The Depths - wrld_dae5e150-d663-4397-9431-a581f5f49271
Sky Temple - wrld_ad74d280-1d2c-4baa-b2fe-f463e16f05cc
Colossus - wrld_c631055c-edeb-4ddb-a3d4-09b1dcb7a0a5
Log In
g
gg67
complete
Fixed in 805 beta.
g
gg67
CyanLaser, can you share any more details on the strategy you are using to make climbing work for desktop? This will help us understand why it broke in 804.
Thanks!
Fionna
gg67: Here is a repro world showing various reparenting behavior: wrld_2a39ce10-296c-4a95-9a48-a6a6c4181a0b
There are three "apples"
-Nested (empty parent, synced pickup underneath)
-Synced (simple pickup with Object Sync)
-Local (simple pickup without Object Sync)
There are two "plates", both pickups, one with Object Sync and one without.
The sets of buttons will parent the corresponding "apple" to "plate". In live, the Nested and Local pickups reparent and move with either plate. In Open Beta, ONLY the nested pickup will reparent.
Desired behavior: ALL pickups reparent without the need to be nested under an empty parent.
Less desired behavior: match behavior on live build for local pickups.
The yellow cube is a rigidbody. You can poke it with the stick to move it. The buttons will parent and unparent the red sphere to it. This is testing the basic function of Reparent with no triggers attached.
USE CASES: make it easier to manage pickups, such as putting them in containers to be carried, attaching them to other props, mechanics involving climbing and VRHat-type wearables, etc.
g
gg67
Fionna: Thanks! This is super helpful. What is the current method used to reparent objects?
Fionna
gg67: Button UI, called by an animation event. (This method is used often for many purposes.) When the gameobject is enabled, the animator calls the event and clicks the button. OnClick, Transform—SetParent.
g
gg67
tracked