Skip to content
This repository has been archived by the owner on Aug 29, 2024. It is now read-only.

Actors with ReplicateMovement enabled and non-replicated root components don't get transform updates. #2997

Open
oblm opened this issue Mar 31, 2021 · 0 comments

Comments

@oblm
Copy link
Contributor

oblm commented Mar 31, 2021

Description

Actors with ReplicateMovement enabled and non-replicated root components don't get transform updates.

Expected behavior

Actors with ReplicateMovement enabled and non-replicated root components don't get transform updates. Indeed, they do if you toggle from Spatial Networking to Native Unreal Networking.

Current behavior

  • Given you have an Actor set to ReplicateMovement and the RootComponent (Main Chassis) is set to not Replicate
  • When the RootComponent isn't set to be simulating, UPrimitiveComponent::SyncComponentToRBPhysics() will do nothing (specifically, it will early out), so all of the work that FPhysicsReplication does will not pass through the RootComponent, meaning these commands never reach the Actor.

Possible solution

You can workaround this by overloading AActor::PostNetReceivePhysicState in order to manually handle specific cases. A more robust solution will need more investigation.

Environment

UnrealGDK: 0.11.0
UnrealEngine: 4.25-SpatialOSUnrealGDK

Internal ticket

UNR-4485

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

1 participant