Pretty sure I already know the answer here, but I’m wondering if it’s possible to use the TakeRecorder functionality when GEditor
is not available.
I wrote a bunch of code that uses TakeRecorder start/stop programmatically for a procedural rendering system (i.e., this thing goes wide, we’d run this across a lot of machines on a farm) and it works beautifully when running inside the editor locally.
When running UnrealEditor.exe
headless (with -game -RenderOffscreen -NoLoadingScreen -Unattended
) it failed. After some debugging I noticed the TakeRecorder code opens up the Sequencer UI panel, which depends on GEditor
being available – which doesn’t exist during -game
headless mode.
Any suggestions for alternative options to capture some kind of “replay” of what happens during one game run, so I can play it back later in another game run?
I guess my two options are:
- Use the DemoNetDriver system (i.e., Network Replication) to store a replay for later playback.
- Reimplement my own version of TakeRecorder/TakeRecorderActorSource and bake out the actor’s skeleton bone information every frame. But just looking at how much code there is in TakeRecorder/Sequencer/Movie plugins, this leaves me rather nervous.
Welcoming suggestions.