Experimental tooling to allow Unreal Engine and Dragonframe to interface with one another by responding to events sent over OSC by Dragonframe to manipulate a level sequence in Unreal Engine. This example project is built with UnrealEngine 5.7 but the plugin should work in other versions of UnrealEngine 5
After booting into Unreal Engine navigate to Plugins > UnDragon > EUBP_OSCRX. Open this Blueprint and find the "Create OSC Server" node and put in the IP address of your computer
Open DragonFrame and go to Preferences > Open Sound Control Turn on OSC Output and set a matching IP address. Port should already both be configured to 7000 in Unreal and Dragonframe but if not make sure they are matching
Set "Position Frame Event" to be /composition/selectedclip/transport/position [frame]
Set "Shoot Event" to /capture/triggered/
Once everything is configured correctly right click EUBP_OSCRX and select "Run Editor Utility Blueprint". This will initialise the OSC server.
Now open a level and ensure it has a LevelSequenceActor and a BP_UnDragonV02 actor placed in it.
In the details panel of the LevelSequenceActor ensure it has a Level Sequence Asset and select Open Level Sequence
In the details panel of BP_UnDragonV02 actor you must make sure the Level Sequence Actor is set and all of the actors that you want recorded into the sequence are in the "Objects To Track" array. Choosing an actor in "Object To Track" will add that actor and all of its parents to the array. It is necessary that an object with parents in the scene have all of its parents recorded in the sequence. Clicking "BindObjectParentsToLevelSequence" will make sure that all the actors in the array have a transform track in the sequence.
Now begin capturing frames in Dragonframe. If everything is correctly configured it should record transform data of tracked objects to the sequence and then move the frame head to the next frame corresponding to DragonFrame.