How to resolve the lag when using async physics simulation of Unreal Engine 5

As I observed in advanced vehicle demo within Unreal Engine 5, while the game thread(GT) advance dt = 0. 1 s, the physics thread(PT) advances 5 steps (each dt= 0.02s). However, the rigidbodies sync their transform to game thread while only 1 step is completed in physics thread, which makes a lag of 0.08s between GT and PT. How to minimize such lag in UE5? For game that depends on physics result heavily (vehicle games for example), is there a best practice for using async physics?

2 Likes

I have the same problem, I’m trying to make a flight simulator multiplayer so I’ve made the physics of Flight with the most real formulas I was able to do for lift drag induced drag etc but then when I tried to make it multiplayer the planes are getting out of sync really fast and so the air combat is practically impossible
Searching online seems that the only solution is a $400 plugin called General Motion Component

Have you ever figured that out? This is currently blocking the development of my game. Non-async physics kill performance.

Edit:
You are right, the first frames data is copied over to the game thread.

Sync Pos= X=48594.429 Y=-21081.053 Z=813.813, Rot= P=-0.086177 Y=-88.770959 R=-4.402263, Vel= X=38.867 Y=-2341.978 Z=-11.075

Async Pos= X=48594.877 Y=-21110.408 Z=813.665, Rot= P=-0.018113 Y=-88.764931 R=-4.314147, Vel= X=40.088 Y=-2347.015 Z=-8.370
Async Pos= X=48595.029 Y=-21120.207 Z=813.624, Rot= P=0.002541 Y=-88.762965 R=-4.282710, Vel= X=40.521 Y=-2348.844 Z=-7.310
Async Pos= X=48595.182 Y=-21130.013 Z=813.588, Rot= P=0.022105 Y=-88.761058 R=-4.250830, Vel= X=40.940 Y=-2350.595 Z=-6.346
Sync Pos= X=48594.877 Y=-21110.408 Z=813.665, Rot= P=-0.018113 Y=-88.764930 R=-4.314147, Vel= X=40.088 Y=-2347.015 Z=-8.370

Async Pos= X=48595.336 Y=-21139.825 Z=813.556, Rot= P=0.040781 Y=-88.759196 R=-4.218447, Vel= X=41.344 Y=-2352.238 Z=-5.468
Async Pos= X=48595.489 Y=-21149.642 Z=813.524, Rot= P=0.057273 Y=-88.757205 R=-4.180483, Vel= X=41.686 Y=-2353.917 Z=-5.765
Sync Pos= X=48595.336 Y=-21139.825 Z=813.556, Rot= P=0.040781 Y=-88.759193 R=-4.218447, Vel= X=41.344 Y=-2352.238 Z=-5.468

Async Pos= X=48595.640 Y=-21159.466 Z=813.490, Rot= P=0.071834 Y=-88.755043 R=-4.136453, Vel= X=42.047 Y=-2355.464 Z=-6.261
Async Pos= X=48595.790 Y=-21169.295 Z=813.454, Rot= P=0.084518 Y=-88.752731 R=-4.086440, Vel= X=42.439 Y=-2356.974 Z=-6.828
Async Pos= X=48595.938 Y=-21179.128 Z=813.415, Rot= P=0.095544 Y=-88.750232 R=-4.030027, Vel= X=42.849 Y=-2358.378 Z=-7.570
Sync Pos= X=48595.640 Y=-21159.466 Z=813.490, Rot= P=0.071834 Y=-88.755044 R=-4.136453, Vel= X=42.047 Y=-2355.464 Z=-6.261