Smooth Sync: Sync your Transforms Smoothly across the network

Thank You !

As a non-programmer, I absolutely ADORE SmoothSync and I’ll be using it religiously moving forward. However I’d like to request a feature, if I may. Would it be at all possible to have “add variable(+)” functionality added to the SmoothSync component?

I ask because I have a mountain of vars outside of SmoothSync that I replicate through the usual Unreal means, but two that are critical are very janky because of that, and I want to move them into SmoothSync so they’re, well, smooth. It’s just one extra rotator and a float.

then being able to pull a pin off of the smoothsync component node and choose “get/set (var)” would be SUUUUUUUUUUUUUUPER invaluable.


@fuestrine Did you ever manage to have a look at the ownership change issue that I mentioned a few months ago?

@fuestrine I have same problem as GuacFrog. I hope this will be solved soon. :slight_smile:

@Woondas Does your issue also involve physics handles? @GuacFrog Sorry nothing yet but I just upped the priority on that task.

Cool, I appreciate it. Let me know if you want a reproducible example

@GuacFrog Yeah, that would be really useful.

Hi, I was facing attachment problem like many others faced, I guess the solution is sent with the update but it still doesn’t work. My character teleports X0Y0Z0 location when I attach it to another actor (which is using SmoothSync either). I found out a solution posted on Discord and I saw the same line is still exist in the plugin itself.

What could be the problem?

Edit: Solved the problem, I was attaching character to the actor on character blueprint, it was happening on client side but the actor was on server side. I triggered the attachment function inside the server actor and it worked.

Hello everyone!
I have a problem. I use SmoothSync for my project. And when i use node SetActorLocation or Teleport. I notise a defect.
when using the plugin I need to move the actor using “set actor location” or “Teleport” via Run On Server -> Multicast, but there are problems that are visible in the video
pls help me.
Thanks you

@amhad321 You should be using the teleport() method in SmoothSync. You only need to call it on the controlling client (or the server). You shouldn’t need your own RPCs, SmoothSync should handle it internally.

@**fuestrine Ok, **but how should I use it? There is no input or output in this method. How can I teleport an actor to coordinates 0 0 0?

@fuestrine, help me pls
im sad

@amhad321 Just set the position on the client like you normally would then call the teleport method. It uses the current position on the client so you don’t need to pass anything in.

Take a look at this video, and pay attention to the window that is located on the top left. An error related to the player’s teleport is clearly visible there.
Thanks beforehand!

I don’t see you calling Smooth Sync’s Teleport method in your video.
Try making your setup like this: Imgur: The magic of the Internet
You’ll want to call SmoothSync’s Teleport method right after you set the position.

Let me know how it goes.

Hello! After I started using the Smooth Sync component the frame rendering time increased 10 times. I tried to set thresholds and even set send rate to 1 and disable Sync Movement Mode - nothing helps, can you please clarify why this can be happening? I have a lot of actors in sync but almost all of them don’t move, all the actors are props with static mesh in the root.

I’ll have to make a project and test out your scenario. Thank you for letting us know about this issue.
About how many actors are you trying to sync?
The main dev these days for Smooth Sync is out this week, so you may have to wait about a week for a detailed response/solution though.

Thank you, it’s about 300 actors, using standard movement replication I see about 35-40ms/frame, adding Smooth Sync component and disabling movement replication I see about 250-300ms/frame when run listen server and client on the same machine.

I found the source of the problem. I have pretty heavy calculations on hit event of an actor and Smooth Sync cause the hit event to trigger on each and every actor even if the actor is still. Do you know how can I tweak the Smooth Sync system to avoid it?

I’ve managed to fix it from the hit event side but now I’m experiencing different problem - when I set owner at runtime and then clear buffer, synchronization breaks and client that owns the actor doesn’t affect it on the server side. I can move actor using physics handle but server doesn’t see it and when server moves actor the actor’s transform on the client resets to the server’s one.