Different physics on different machines?

I’ve done this hover car tutorial [Unreal Engine 4.7+] Hover Vehicle Blueprint Tutorial - YouTube and I dont get the same results whenever I add force to the mesh using the forward vector… it tilts forward

after doing it several times I tried it on my other machine… and it works just like the tutorial. So i’ve exported the project that works (zipped) to the first machine and still getting the same results as before

here is a video of the gameplay of each machine with the same project.

Machine A - Not working like tutorial

Machine B - Working like tutorial

  • hover ok - YouTube
  • Windows 7 - 64 bits
  • Intel i73630QM @ 2.40GHz
  • Intel HD Graphics 4000
  • 8GB RAM

I really don’t know whats happening and how to fix it… if anyone has any idea please share it

Thanks!

Hello relgert,

This is most likely due to the line traces (and any other logic) being called on Tick. Tick is called every frame. The reason this is inconsistent is because different machines will experience different performance impacts from the same project. To give an example, when a game is running at 60 FPS (Frames Per Second), the tick function is being called 60 times every second. If another computer is only able to run at 30 FPS, it’ll only be calling at half the speed. This can cause vastly different calculations due to the time between these calls.

I can’t see the framerate for the first video although it does seem much choppier. I’m not sure if this is caused by the recording software or if that is how it usually looks.

Edit: Making use of delta time is most likely the solution here, but I’ll need some time to fiddle around with it to figure out exactly how to set it up.

Hi Matthew, thanks for your response…

I’ve been trying to test the fps and got both of them working at 40 fps… and getting the same results, on each computer I tweak the graphics config to get different FPS and always the same thing… 12, 20, 30 40 and 60 fps… the same on each computer, also I been reading about delta time, and seems like addforce and addforce at location are framerate independent… and I’m using just these two functions to move the object

Also on the machine that works like the tutorial (Machine B)… when I turn on the substepping… it behaves like the other one tilting the object forward… I’m looking to do the opposite… making machine A work like machine B…

I tried tweaking substepping values… but not getting much results

Hello relgert, I’m still looking into this issue but I wanted to make a comment on one thing. While AddForce is framerate independent, if you’re calling it on Tick, it’s being called every frame which makes it framerate dependent.

That being said, using the console command “t.maxfps ##” on my computer to change the framerate, I’m not seeing the differences you’re running into. Are you sure that the Trace Length and Hover Force settings are set to the same amounts for both of the computers’ projects?

It also seems like you may be following the video creator’s advice of adding force at certain points of the mesh as it tilts when moving, while it usually doesn’t tilt as the force is being added at the root location. Is this the case?

Hi Matthew, thanks for looking into this…

when I change the FPS on the computers it doesn’t change anything either… each machine keeps working the same… I tried the t.fpsMax command and got the same results…

Here is a better video trying the different fps…

I also though it had something to do about the advice of the video creator… but I’m not adding the force to any specific location… also tried to add force at location using the location of the mesh with the same results… also checked the pivot point of the mesh and is well centered…

the values of the traceLength and hoverForce are the same on each project… also on each component.

I added my project to a github repository if your interested on checking it out… and feel free to modify anything

right now i’m looking if my computer is the problem… I have 2 graphic cards on this laptop… getting the same result on both… I have something called Physx from my nvidia GPU… I don’t know if has something to do, but could not find anyone else complaining… I updated all my drivers with no luck…

I tried to Build the project on one machine and run it on the other… with the same results… now i’m interested to try a UE4 game, to see if it works properly…

After that I think I will be installing windows 7… I’m out of Ideas

I Really Appreciate your help, Thanks!

Having a Nvidia card that is using PhysX could be changing the results for sure. I’d suggest going into your Control Panel > Nvidia Control Panel > Configure Surround, PhysX and selecting “CPU” for the PhysX settings to see if you get the same results after that. Whenever you have a PC that isn’t using an Nvidia card, PhysX is being done by the CPU which should be how your working computer is handling it.

I get the same results whether I change to CPU or Geforce 840M… So if i make a project like this… it will not run exactly the same on computers with Physx? I’m just concerned to work on a project that later only works on some computers the way I wanted…
I read that turning substepping helps… but when I do… it start tilting forward ( on the machine that runs like the turorial)… maybe hovering is not so simple just adding forward force… maybe more forces should be implemented?

having similar problems in the thread linked above.

This is a very basic way of setting up a hover vehicle so there are more complex ways to do it that will do a better job of staying consistent. There is always a certain amount of randomness in computer generated physics but it shouldn’t be this vast.

Have you tried tweaking the center of mass as the person did in the video tutorial? There really is no reason that the tilting should be occurring like this since going forwards and backwards doesn’t affect the force applied by the HoverComponents.

I did tried that… it helps a little… but the movement still uneven…
Where does the AddForce function applies the force to? the pivot point, the center of mass or no specific location? I couldn’t find an answer to this…

I will be Installing a fresh Windows 7… I’ll keep you updated once I finish

The AddForce inside of the HoverCar BP should be applying it to the Car Mesh. When you apply it to that, it should be applying it directly to the center of mass.

Well with a fresh install and only the necessary software/drivers I get the same results… I don’t know what’s up… I bought this computer mainly to do a project on ue4 and i don’t know if i should be using it…

Anyways… Thank for your help!

Have you taken a look at Polivantage’s post about this issue? He linked it in his comment above. It seems like it may have some information that could help you out.

Yes I have, And could not find anything to apply or test on my project…

Hi Matthew, I’ve come to a solution setting the hoverComponent to the “Pre Physics” tick group… it was set “During Physics”… now works like a charm

Thanks for your help!