Download

UE4 for non-realtime simulation?

Sorry if this isn’t the right forum, I had trouble deciding where to ask it. UE4 has a lot of things I like but I’m trying to determine which of my needs it can meet.

I’m wondering if there is a way to force UE4 to run at less than realtime, for simulation purposes. I know you can adjust time to achieve “bullet-time” effects and such, but I’m not sure that totally covers what I have in mind. Normally if I’m running some code that’s taking too long I’d expect UE4 to basically start dropping frames, and internally update the true elapsed time so objects still move at the right speeds etc. What I’m asking is, is there a practical way to simply force UE4 to render out every frame as though it’s running at some fixed rate, ignoring how long that it actually takes to produce those frames? Not just dropping the frame rate to 1 fps or using a fixed time dilation value or something, but just forcing it to wait however long it takes to complete computation. There will be times when I want to run realtime, and times when I just want to see if my code is working properly despite its potential inability to keep up prior to being optimized.

Ideally I’d like to know if this is something that could be enabled without modifying the UE source, though of course that seems like the next thing to look into if that fails. Having the source certainly is a benefit.

Thanks for any insights!

Currently, in the Matinee settings, you can set the movie output to a mode that renders at a constant frame rate, and makes certain that every frame is rendered. Since this just works in any scene that Matinee works in, it seems it meets you qualifications. However, I haven’t tried it yet, and you may not need the output video, though I think it could be an invaluable tool to pinpoint exactly where your similation went wrong.

This is not the default behavior, by default it just tries to do it in realtime. You have to actually change the settings. If you wanted to do this without the video, you would need to modify the source code, I believe.

Thanks for the tip BillDStrong! Much appreciated, that sounds like it will probably meet a lot of my needs.