Has anyone actually got USD to work at runtime on a packaged build!

Please, I really need help on this for a crucial project!

I am trying to get a USD animation to run from a packaged project, but I’ve spent more than a couple of weeks with no real success! Has anyone actually got USD to load and play correctly without crashes or errors? I have experimented with Unreal engine 5.3 and 5.4.

On Unreal 5.3 and 5.4, this setup runs in testing, but unfortunately does not work in runtime build.
There has been years of development into supporting USD in Unreal Engine, but I am surprised that it does not actually work in practice when the project is built at Runtime!! By default, USD seems to be disabled for runtime (packaged game build). From reading available docs and forum posts, it seems that the following convoluted route is needed – but it still ends up with fatal errors on runtime in 5.3 and totally not working in 5.4.

Unreal 5.4 - Does not complete packaging build. Many errors in the build output log.
Unreal 5.3 – The USD is visible at runtime momentarily, but a fatal crash occurs instantly.
Unreal 5.2 - Unknown (still working on making the build from sourcecode)

I referred to these forum posts and help pages:

This is my process:

  • Build Unreal engine from source (clone repository from Github, build in Visual studio 2022, make new c++ game project with the newly built windows binary, load project from within Visual studio, add USD plugin, close project.
  • In Visual Studio, add new line of code to the project’s Project.Target.cs :
  
GlobalDefinitions.Add("FORCE_ANSI_ALLOCATOR=1");
  • Run the Unreal project, and add the USD plugin.

  • Create USD stage, and populate it with a USD.

  • In the level blueprint, on BeginPlay, use ‘Set Root Layer’ node (includes the USD’s local path, manually copied into the field) and connect in the USD stage actor into the ‘Set Root Layer’ node.
    (link to Epic help page)

  • Run a packaging build for windows.

Any help or advice on this would be appreciated!