Hello,
I wonder if someone can help me. I’m creating a scripted action to automatically generate a level sequence with all of our usual defaults pre set such as blend in’s and root motion modes etc. Our cinematic team asked if I could also add an option to generate it as a Shot with the Actors bound by proxy to the actors in the master sequence.
In the sequence editor you can just right click on the actor and select convert->proxy->etc [Image Removed]
However I’m having a hard time trying to figure out how to do that in code.
Has anyone done this before and can help me out? The best I managed was to do this (claude.ai suggested it)
FMovieScenePossessable* MutablePossessable = shotMovieScene->FindPossessable(shotPossessable.GetGuid());
if (MutablePossessable)
MutablePossessable->SetParent(masterBindingGuid, baseMovieScene);
but it doesnt work properly. I also tried converting the actor in the shot to possessable but that is even worse as it seems to leave an actor in the level even when the sequence editor is closed.
In case it helps heres where I add the actors. I run this for both the master sequence and the shot sequence. Perhaps I should add it in a different way in the shot sequence?
ULevelSequenceEditorSubsystem* seqSub = Cast<ULevelSequenceEditorSubsystem>(GEditor->GetEditorSubsystemBase(ULevelSequenceEditorSubsystem::StaticClass()));
FMovieSceneBindingProxy returnedProxy = seqSub->AddSpawnableFromClass(SequenceToAddTo, CharacterToAdd);
Cheers for any help
Paul
[Attachment Removed]
Steps to Reproduce
Build a master sequence with a single actor (spawnable). Add a Shot track with a single section that points at another level seqeuence that contains an actor of the same class (spawnable).
Then pass both level sequences to a code function
[Attachment Removed]
Hi [mention removed],
I’ve been looking into this workflow and wanted to share the current findings.
SetParent(…) will not reproduce the Sequencer Convert → Proxy workflow. Proxy bindings are resolved through Sequencer’s internal binding system, using a hierarchy-aware FMovieSceneObjectBindingID, rather than by making the shot binding a child of the master binding.
Creating the sequence, adding spawnables, and converting the binding to a Replaceable Actor Binding can all be done through the public editor API. However, the final step — assigning the proxy target binding (the equivalent of Convert → Proxy in the UI) — depends on how Sequencer constructs a portable/relative FMovieSceneObjectBindingID within the active master/shot hierarchy.
At the moment, this final step does not appear to be exposed as a straightforward public C++ API. The public editor API gets you most of the way there, but the hierarchy-dependent binding assignment is still handled internally by Sequencer.
For a fully native workflow, the current options would be:
extending the editor to expose this functionality, which I could help with if modifying the editor is an option for your team, or
reusing the same internal binding-ID construction logic that the UI uses.
Best regards,
Joan
[Attachment Removed]