Best way to create this type of replay system

Hi,

I need to record a short replay of the action similar to the video below. I program with Blueprints not C++ and I know that custom replays are built with C++

I suppose recording a video using a custom plugin such as those I saw on FAB can affect performance. I thought about the Render Target but capture every frame enabled also affects performance.

Any suggestion for a plugin or way to do this?

Well it really depends on the game, time required and effort needed on the approach.

First yes that type of replay system is expensive, replays are generally always expensive by the way. Not just in games even they are still expensive on Event Production, TV Media, however those have their own equipments.

However if you are doing a replay system for shooting a disk like you show in video, you don’t have to make a capture.

You can basically record trajectory of flight as data points, shoot event, shoot even time , Hit Event to do fracture, and just recrate scene of events like a replay?

What are you trying to replay exactly?

1 Like

Thanks for the info. Yes this is exactly what I want to do from a specific camera.

I did a few research and I got this plugin to experiment with:

Record Lets Replay | Fab

But then noticed although it is mentioned to be compatible with 5.3, it is not working with this version.

I think this plugin does as you suggested, record the data and not capture the footage.

Yes basically like that, tbh I didn’t use replay system or created for a game in unreal yet, however basically with that you can replay aeverything that is recorded. You can check here how its done You can a little bit hack into it or build your own system on top of it as extension.

Also doing simple replays is not that hard as it sounds, especially if you are trying to replay a system of projectile, hit, explosion etc. All of them can be reconstructed mathematically.

Here is a very RAW PROTOTYPE I quickly did just to demo the concept, I didn’t use functions etc so i can demonstrate it in a monolithic way to you.

I have 3 debug functions which spawns a projectile (Q), explodes it (E) and start a replay of last projectile movement (R)

Which they Spawn a projectile, on explode gathers data and on R- replay makes a replay sequence: like spawn a cine camera, transition to that, make replay, go back. Ofcourse there is many things to do more and cleanup.

The projectile itself in a high level description. Does 2 things :

If its not replaying spawns, with projectile movement component moves.

If its replaying, than: removes projectile movement component which we dont need, gets data points as transforms, time of explosion and flight time (some of them maybe not explodes).. Creates a spline and a timeline and moves along spline with given time. Explodes if explosion time reached.

Projectile


Results

123

Think you can start with the built in replay system already imo, however can be done manually too with BP and even much nicer in C++

Edit : If its a projectile replay system you can also use predict projectile movement node from component too if there is no dynamic physics applied to it in game, like wind forces etc.

1 Like

Thank you so much!!! I will certainly try your solution. Very appreciated!