I started with the blueprint rolling ball project, changed the ball’s blueprint to get fps style controls (in PhysicsBallBP), added some ramp meshes into the level. That’s pretty much it.
If I start a new rolling ball project and fraps it to 20fps there’s no earthquake but the ball rolls noticably slower. On the FPS project at 20fps I don’t see any difference to player speed or physics.
I’m not sure I’ll be able to reproduce this in this instance. I do not have Fraps or any recording software similar to it. If you’re able to repro this in a way that does not require Fraps running in the background I’d definitely be curious to look at it.
Physics stuff slows down when lowering the framerate!
If you load up a new first person project, shoot the boxes, they bounce around with a certain weight to them. Right?
Now if you type “t.maxfps 10” into the console it brings the framerate down to 10, shoot the boxes, suddenly they bounce around a lot slower as if in slow motion, but the player can move around at the same speed as before.
So if you have a game with physics objects that need to behave in a certain way, then it’s pretty much broken as their behaviour changes depending on the fps.
I’m really not sure how this works so this might not make any sense - maybe physics objects need to be updated per tick instead of per frame? Or something similar to the fps character?
Ok I seem to have fixed the screen shaking this by turning on substepping. The boxes physics are fixed too.
But my rolling ball character still slows down/is less responsive at a lower framerate
I’ve tried playing around with substepping but haven’t got it how it should be.
The reason you’re seeing it be less responsive is because the InputAxis nodes only check once per frame. If you’re frame rate is only 20 it’ll be checking 20 times. The higher the FPS the more checks it provides on the current value of the InputAxis.
Aside from using Fraps and having that lower your FPS are there other instances where you would need the FPS be this low or are you just testing situations?
Ok I think I see whats going on, my add impulse is getting fired less times the lower the framerate. Causing it to act more sluggish.
I’m going for a little deathmatch multiplayer game but the players character has a ball for legs (could be a robot) causing the players to move around as if the floor was ice and the levels will look like something out of tony hawks. Now if a player cant get up a little ramp because their PC is rubbish (low fps) while a faster computer can glide up with ease… its a pretty broken game.
I just need things to be consistent regardless of framerate.