Transform not being followed

When I parent a realtime transform to a non-network transform, then the realtime transform doesn't parent and goes to vector 0 on all clients. Why would this happen?
Solution:
---------------------- This issue is likely due to how Normcore handles the synchronization of RealtimeTransform components. RealtimeTransform does not track the parent of a RealtimeTransform and cannot synchronize it at runtime. If a RealtimeTransform is reparented under another game object, and that game object is destroyed, it will take the RealtimeTransform with it, leading to inconsistent state between clients. This could be why your RealtimeTransform is not following its parent and is resetting to a position of vector 0 on all clients. Instead of reparenting, you can create an empty game object on your player character at the pick-up point. Then use a script that synchronizes the world position of the pick-up point object and the RealtimeTransform object that you would like to pick up. This will give you the same visual result and will avoid bugs related to reparenting. ...
Jump to solution
3 Replies
kapa.ai
kapa.ai3mo ago
Hi @Horse Eater Beater. I'm kapa.ai, your friendly support bot. I will try to answer your question by searching through the knowledge base. :wave:
Solution
kapa.ai
kapa.ai3mo ago
---------------------- This issue is likely due to how Normcore handles the synchronization of RealtimeTransform components. RealtimeTransform does not track the parent of a RealtimeTransform and cannot synchronize it at runtime. If a RealtimeTransform is reparented under another game object, and that game object is destroyed, it will take the RealtimeTransform with it, leading to inconsistent state between clients. This could be why your RealtimeTransform is not following its parent and is resetting to a position of vector 0 on all clients. Instead of reparenting, you can create an empty game object on your player character at the pick-up point. Then use a script that synchronizes the world position of the pick-up point object and the RealtimeTransform object that you would like to pick up. This will give you the same visual result and will avoid bugs related to reparenting. If the RealtimeTransform object has a Rigidbody on it, make sure to use the MovePosition() and MoveRotation() methods in FixedUpdate(). For more information, you can refer to the RealtimeTransform documentation (https://normcore.io/documentation/realtime/realtimetransform#extra-notes) and the Common Questions (https://normcore.io/documentation/realtime/common-questions#can-i-reparent-realtimetransform) section on the Normcore website. ---------------------- Note: you can ask me a follow up question by @ mentioning me again :speech_balloon: ----------------------
kapa.ai
kapa.ai3mo ago
<@444173592205459466> kapa.ai is still learning and improving, please let us know how it did by reacting below