This issue has been closed as 'Won't Fix' due to an extended period of time without updates. If this issue is important to you please let us know by posting on the AnswerHub or UDN, and Epic will re-open the ticket for further review.
User Description:
In USceneComponent::PreNetReceive the old (in this case, non-null) AttachParent is being cached into NetOldAttachParent. In USceneComponent::PostRepNotifies, AttachParent and NetOldAttachParent are exchanged before then running AttachToComponent on NetOldAttachParent.
After the exchange, and before the AttachToComponent, this means that AttachParent is its original, pre-replicated, value (which in this case is not null), and NetOldAttachParent now has the newly replicated value. In the case of a non-null parent being replicated, the value of NetOldAttachParent goes through AttachToComponent, causing AttachParent to be overwritten, which means it then matches the host. BUT, when it's null, AttachToComponent will basically just ignore it, which means AttachParent will stay the original, pre-replicated value (which in this case, is non-null).
Result: When the server detaches from its parent, the client is offset and remains attached to the original parent.
Expected: The client would detach from the parent
Head over to the existing Questions & Answers thread and let us know what's up.
6 |
Component | UE - Networking |
---|---|
Affects Versions | 4.15 |
Created | Apr 6, 2017 |
---|---|
Resolved | Mar 26, 2018 |
Updated | Jan 30, 2019 |