TeleportTo targetLocation becomes None after hierarchy edit
closed
naqtn
VRC_Trigger losts targetLocation object when the object hierarchy is changed.
Reproduce steps:
- Create target location object.
- Create teleportable object. (Create a object, Add VRC_ObjectSync)
- Create TeleportTo caller object normally. (Create a object, Add VRC_Trigger, Check AdvancedMode on, Add any trigger, Add SendRPC action, Set teleportable object (of step 2) to reciever, Select TeleportTo method, Set target location object (of step 1) to targetLocation )
- Change hierarchy of target location object. (Create parent object. Move target location object as a child of parent object.)
- Open VRC_Trigger of caller object again. You will see None in targetLocation field.
Log In
Fax
closed
Thank you for your report! Our SDK2 has been deprecated.
owlboy
With the advent of VRCSDK2, I assume this will never be fixed.
owlboy
TeleportPlayer
does not exhibit this issue.owlboy
I just reorganized my whole hierarchy in The Pug not knowing this was an issue. Now I have _a lot_ of teleports to fix. What a huge bummer.
naqtn
I think you should not treat GameObject argument like other value object (Color, Vector3, string, ...). ( https://en.wikipedia.org/wiki/Value_object )
It's not stable. It can be modified outside of VRC_Trigger.
naqtn
When reopening SendRPC argument edit view, I got following error log.
-------
Error decoding parameters: Could not locate Transform at path /SendRPCTeleportTest/Target1
at VRCSDK2.VRC_Serialization+TransformSurrogate.SetObjectData (System.Object obj, System.Runtime.Serialization.SerializationInfo info, StreamingContext context, ISurrogateSelector selector) [0x00000] in <filename unknown>:0
at System.Runtime.Serialization.ObjectRecord.LoadData (System.Runtime.Serialization.ObjectManager manager, ISurrogateSelector selector, StreamingContext context) [0x00016] in /Users/builduser/buildslave/mono/build/mcs/class/corlib/System.Runtime.Serialization/ObjectManager.cs:570
at System.Runtime.Serialization.ObjectManager.DoFixups () [0x00066] in /Users/builduser/buildslave/mono/build/mcs/class/corlib/System.Runtime.Serialization/ObjectManager.cs:84
at System.Runtime.Serialization.Formatters.Binary.ObjectReader.ReadNextObject (System.IO.BinaryReader reader) [0x0000f] in /Users/builduser/buildslave/mono/build/mcs/class/corlib/System.Runtime.Serialization.Formatters.Binary/ObjectReader.cs:145
at System.Runtime.Serialization.Formatters.Binary.ObjectReader.ReadObjectGraph (BinaryElement elem, System.IO.BinaryReader reader, Boolean readHeaders, System.Object& result, System.Runtime.Remoting.Messaging.Header[]& headers) [0x0003f] in /Users/builduser/buildslave/mono/build/mcs/class/corlib/System.Runtime.Serialization.Formatters.Binary/ObjectReader.cs:110
at System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.NoCheckDeserialize (System.IO.Stream serializationStream, System.Runtime.Remoting.Messaging.HeaderHandler handler) [0x00078] in /Users/builduser/buildslave/mono/build/mcs/class/corlib/System.Runtime.Serialization.Formatters.Binary/BinaryFormatter.cs:179
at System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Deserialize (System.IO.Stream serializationStream) [0x00000] in /Users/builduser/buildslave/mono/build/mcs/class/corlib/System.Runtime.Serialization.Formatters.Binary/BinaryFormatter.cs:136
at VRCSDK2.VRC_Serialization.ParameterDecoder (System.Byte[] dataParameters, Boolean rethrow) [0x00000] in <filename unknown>:0
UnityEngine.Debug:LogError(Object)
VRCSDK2.VRC_Serialization:ParameterDecoder(Byte[], Boolean)
VRCSDK2.VRC_TriggerEditor:RenderRPCParameterEditor(SerializedProperty) (at Assets/VRCSDK/Dependencies/VRChat/Editor/VRC_TriggerEditor.cs:1216)
VRCSDK2.VRC_TriggerEditor:RenderEventEditor(SerializedProperty, SerializedProperty, SerializedProperty, Int32) (at Assets/VRCSDK/Dependencies/VRChat/Editor/VRC_TriggerEditor.cs:940)
VRCSDK2.<RenderTriggerEventsEditor>c__AnonStorey3:<>m__0(Rect, Int32, Boolean, Boolean) (at Assets/VRCSDK/Dependencies/VRChat/Editor/VRC_TriggerEditor.cs:515)
UnityEditorInternal.ReorderableList:DoListElements(Rect) (at C:/buildslave/unity/build/Editor/Mono/GUI/ReorderableList.cs:576)
UnityEditorInternal.ReorderableList:DoLayoutList() (at C:/buildslave/unity/build/Editor/Mono/GUI/ReorderableList.cs:383)
VRCSDK2.VRC_TriggerEditor:RenderTriggerEventsEditor(SerializedProperty, Int32) (at Assets/VRCSDK/Dependencies/VRChat/Editor/VRC_TriggerEditor.cs:577)
VRCSDK2.VRC_TriggerEditor:RenderTriggers() (at Assets/VRCSDK/Dependencies/VRChat/Editor/VRC_TriggerEditor.cs:210)
VRCSDK2.VRC_TriggerEditor:OnInspectorGUI() (at Assets/VRCSDK/Dependencies/VRChat/Editor/VRC_TriggerEditor.cs:154)
UnityEditor.DockArea:OnGUI()