Announcement

Collapse
No announcement yet.

Smooth Sync: Sync your Transforms Smoothly across the network

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • replied
    Originally posted by fuestrine View Post
    caryest
    Default settings should work. I'll check some things out tonight to make sure it's all still working as expected with dedicated server.

    One thing may be that you still have Replicate Movement checked. You'll want to uncheck that as Smooth Sync will be handling that behavior and they may be fighting each other to set the position/rotation of the object.

    Another thing you may want to check is that your movement code isn't trying to move the ships on your clients because Smooth Sync should also be the only one handling that (if the server is the owner or there is no owner for the ship that is).
    Nevermind, i think it is something related to the character, ship rotation is smoothly replicated, thank you so much for the help!

    Leave a comment:


  • replied
    caryest
    Default settings should work. I'll check some things out tonight to make sure it's all still working as expected with dedicated server.

    One thing may be that you still have Replicate Movement checked. You'll want to uncheck that as Smooth Sync will be handling that behavior and they may be fighting each other to set the position/rotation of the object.

    Another thing you may want to check is that your movement code isn't trying to move the ships on your clients because Smooth Sync should also be the only one handling that (if the server is the owner or there is no owner for the ship that is).

    Leave a comment:


  • replied
    Originally posted by fuestrine View Post
    caryest
    What is "error distance"?

    Is this video showing single player and your locally owned vehicle? Smooth Sync works by syncing objects in a multiplayer setting.

    If it's a locally controlled vehicle, you probably are just rotating without using delta time. Do something like Rotation = Rotation + speed * deltaTime.
    By error distance i meant rotation difference between server and client. It looks like there wans't any type of interpolation.

    Here you can see another video showing the two players: https://drive.google.com/open?id=1Pqa7MgdyQPL6WOZ9i1d4Uv7XaISg-zbd

    The video shows a second player placed on top of a vehicle controlled by another player using a dedicated server. I am applying the rotation like this:

    Click image for larger version  Name:	Rotation.png Views:	1 Size:	18.1 KB ID:	1616401
    Last edited by caryest; 05-07-2019, 10:43 AM.

    Leave a comment:


  • replied
    caryest
    What is "error distance"?

    Is this video showing single player and your locally owned vehicle? Smooth Sync works by syncing objects in a multiplayer setting.

    If it's a locally controlled vehicle, you probably are just rotating without using delta time. Do something like Rotation = Rotation + speed * deltaTime.

    Leave a comment:


  • replied
    Hi, Sorry to bother you but, i would like to know if it is possible to force smooth interpolation regardless of error distance. I am trying to smoothly rotate a vehicle, but movement is jittery and i am not sure which parameter to modify. Here is a short .avi showing the jittery rotation https://drive.google.com/open?id=109...uhBLXBbW0Jj66I

    Thank you in advance!

    Leave a comment:


  • replied
    Version 1.18 has been submitted to the Marketplace.

    Change log:
    • Fix for if custom Scene Component To Sync is set before BeginPlay() is called.
    Last edited by fuestrine; 05-05-2019, 08:13 PM.

    Leave a comment:


  • replied
    Version 1.17 has been submitted to the Marketplace.

    Change log:
    • Fix for setting velocity to angular velocity when compressed.
    • Fix for syncing chosen scene component's primitive component.

    Leave a comment:


  • replied
    Version 1.16 has been submitted to the Marketplace.

    Change log:
    • Added option to not sync Movement Mode when using a Character Controller.
    • Now automatically sends a State if Movement Mode changes so that animations line up better.
    • Better comments and renamed some of the internal use variables.

    Leave a comment:


  • replied
    Thanks! Very nice

    Leave a comment:


  • replied
    Thank you, the update sounds very promising.
    Your support for the plugin is just awesome!

    Leave a comment:


  • replied
    Ramasurinen e3pojedi pDunkl tschmi22 BioXide
    All of your problems should be fixed with the new version of Smooth Sync (1.15) that is available on the Marketplace. Change log is in the above comment.

    You shouldn't need work arounds any more for any of your problems or added features. Let me know if there are any outstanding issues after updating Smooth Sync.
    Last edited by fuestrine; 04-25-2019, 07:42 PM.

    Leave a comment:


  • replied
    Version 1.15 has been submitted to the Marketplace.

    Change Log:
    • New Feature! Added syncing of Movement Mode (animations).
    • New Feature! Added automatic syncing for velocity of Movement Controllers for animations like walking / running in Third Person Template.
    • Fix for owner time becoming off after some length of time which caused syncing to become erratic.
    I know a lot of people have been waiting for the new feature of animation syncing and for a fix for time becoming off. I'll message each of you after it becomes accepted. It's usually about a day or two for them to accept it.
    Last edited by fuestrine; 04-25-2019, 02:37 AM.

    Leave a comment:


  • replied
    Originally posted by fuestrine View Post
    BioXide
    Sorry about the issue. I've got a solution already but it needs cleaning up. I plan on putting it on the Marketplace tomorrow. I've also got a fix for automatically using Velocity for running animations and I'm also syncing the MovementMode so that things like the jump animation plays in the Third Person Template.
    Ah sweet, I was breaking my head last night with this haha

    Leave a comment:


  • replied
    BioXide
    Sorry about the issue. I've got a solution already but it needs cleaning up. I plan on putting it on the Marketplace tomorrow. I've also got a fix for automatically using Velocity for running animations and I'm also syncing the MovementMode so that things like the jump animation plays in the Third Person Template.

    Leave a comment:


  • replied
    Hey there,

    So I also had the same issue that e3pojedi discovered with the 500ms ping, after hours of debugging and going over the C++, at least on my occasion, it was related to extrapolation not working, usually around 400-500ms ping that's when interpolation stopped working and extrapolation kicked in, but it never ran, because isSimulatingPhysics was always set to false since my character's root component doesn't have physics on. So I removed all mentions of isSimulatingPhysics and extrapolation started working again, which fixed the issue of massive desync, getting stuck in place during high ping, I'm using character movement with the smooth sync comp, if that helps anyone else.

    For the animation issue, you simply need to use the latest velocity/rotation in the SmoothSync comp instead of get actor velocity/rotation, what I did was use the default methods in autonomous proxy and used the SmoothSync velocity as a simulated proxy.

    Thanks for the plugin, very helpful.

    EDIT: Scratch that, for some reason I can't get extrapolation to work, I've modified the code to use character movement and disabled position updates so only extrapolation runs, it calls the event and applies the velocity but the simulated proxy stays in the same place always, I've noticed that this also affects rotation as well, so once the ping is over 500ms+ rotation stops working until you stop sending any inputs and rest kicks in, that's when things are updated.
    Last edited by BioXide; 04-23-2019, 08:51 AM.

    Leave a comment:

Working...
X