How to get an event for every rendered frame

I have a sequence that I am rendering using the movie render queue plugin.
As the rendering happens, I would like to dump extra information (bone/socket locations) to the disk related to each frame.
To do this, I have been looking for an event to trigger my blueprint code to dump this extra information.
I have tried using many different events but all these events fire faster than the actual number of .png images that I get when I render the sequence.
I have tried:

  • The tick event
  • The “Get Frame Count” blueprint function
  • I added a repeating event track that spans all the frames of the sequence and this one fires a custom event.
  • I implemented a custom MoviePipelinePIEExecutor in C++ and override the OnBeginFrame_Implementation method and printed on how often this method gets called.

All these different avenues of getting a frame count / event did not give me what I wanted.
All of them fire like the tick event which fires roughly 7 times faster than the actual number of frames (number of .png images that I get in the output).

How can I get a frame count / event that matches the number of images that I get in the output?

Thanks!

1 Like

I have the same problem bro, and have tried the former three method with not working。Have you find out a way to solve this ?

Repeater events should work. You can also hijack the MRQ HUD and have it run a custom event each frame from there.