Hello everyone,
I’m new here so please let me know if I’ve made any mistakes. I’m producing an animated film and have made many destructible custom vehicles. Everything works perfectly but when I record the vehicle motion with take recorder and review the animation with a camera, the vehicle jitters/stutters. In 5.0 I didn’t have this problem but am now in 5.3. While in gameplay the motion is smooth.
I’m assuming the tick rate between the Engine and Physics frame rate is off.
Below are some of the steps I’ve taken to fix this issue based off of other forums, although none have worked.
There’s a setting in general Options called “Force Fixed Frame Interval Playback”. That is supposed to lock the output to evaluate on frames so that when you dump video, you’ll get the same predictable behavior that you see in the editor. This didn’t work.
I also tried baking the recorded animation in the curve editor by selecting all points and pressing filter. However I couldn’t figure out how to “smooth” the baked animation. Turned on Vsync made no difference.
I then tried setting my project to a fixed FPS in project settings, this didn’t work. Lastly I tried messing with the ASync, smooth frame rate and substepping settings but it made no difference.
I now am trying to set the tick group of my actors to postphysics using the line of code
PrimaryActorTick.TickGroup = TG_PostPhysics;
in the BeginPlay function. However all of my vehicles are blueprints so I can’t figure out how I would do that.
I believe this is caused by FPS smoothing or inconsistencies in fps, leading actors to tick at different intervals.
Any info would be greatly appreciated, I would be happy to give a tip to anyone who can help figure this out. I successfully ran a Kickstarter for the film and have a deadline
I’ve spent half of the year so far on just this scene.
Wow thank you so much! I saw this today and should’ve looked. The info you just sent is extremely helpful.
Since January I’ve taken so much time learning everything about recording chaos vehicles through trial and error. I created various 1960s car models in Blender, they look so good with the Chaos Vehicle rig. The weight painting, modeling and breakable glass was challenging. Recording particles in particular, that was tough to wrap my head around.
I started this in UE 5.0 and recording the animation couldn’t have been easier. However I needed to use 5.3 to utilize the map I created using City Sample Assets. When I render it out using Hardware Ray Tracing and Path Tracing it looks very real. Using rigging I purchased from Chris Jones (the blender artist) I made my own hyper-realistic characters and using Rokoko mocap suit for animation.
I appreciate your response and will keep you updated.
Awesome article btw, very well written.
I tried changing the Custom Time Step to Genlocked but it didn’t help. I wish I knew more about ticking because I’m messing with all of the framerate settings and it does seem to have an impact on the jittering of the vehicle once recorded.
I just can’t pinpoint which parameter I need to adjust within framerate settings. Correct me if wrong but it was my understanding the physics rate has to occur more than the engine. The vehicle movement is smooth in gameplay, not sure why it won’t record that way. I even tried enabling ASync for my vehicle blueprint and all attached components.
I have animated static meshes attached to vehicles such as old rotating police lights, wiper blades and lights. I tested vehicles without any attached but it didn’t make a difference.
For my physics delta time initial average, I tried dividing my engine rate (120) by 2.
Would you know how I would set the tick group of my actors(mesh or blueprint) to postphysics using the line of code
PrimaryActorTick.TickGroup = TG_PostPhysics;
in the BeginPlay function?
I assume I would have to do that within the event graph.
Is the stutter in your animation curves, though, or just in the playback? Do you see bumps in the plotted keyframes? At first glance it looks like the level sequence is fighting physics in playing it back. Are you super far from origin by any chance?
The vehicle location from which I’m starting recording is 21989.999312 x 66740.000249 x 30.0 not too far
I’ve attached some screenshots, what do you mean by bumps? Am I looking at the right data? When I playback on the vehicle 3rd person camera, there is no jitter. However whenever I render it always jitters no matter what camera I’m rendering from. In gameplay as I said, no jitter.
Success!!! Months ago I started talking to a brilliant YouTuber that goes by Sengchor. I didn’t think he would know how to solve the issue but he did. I had to go into the construction script of the custom vehicle and add a ‘Set Tick Group’ node to the end of chain with ‘Post Physics’ selected under New Tick Group.
This was the equivalent of setting the tick group of my blueprints to postphysics using the line of code
PrimaryActorTick.TickGroup = TG_PostPhysics;
in the BeginPlay function . However being that my vehicles are blueprints they would need to be C++ actors. According to Sengchor there would be no difference between using a node in Blueprint or setting it from C++, unless the Unreal Engine source code has some bug related to this. The easier way is to just add the ‘Set Tick Group’ node.
I owe a lot of credit to Sengchor, if it weren’t for him this animated film wouldn’t be possible.