Unreal 4.24 Universal Scene Description (USD) support

Just tried preview one of 4.25 on macOS - I see the plug-in, and loaded it, but still don’t see a USD stage tab. Would love to know if it’s expected to work here or not.

Hey guys, just testing with this TV Retro asset:

Everything works EXCEPT the normal maps. Any hint? Anyone being able to use normal maps from USD files?

Same here.There were questions asked about 4.24 support as well, on macOS. There are no solid answers to that yet :confused:


Tried building the plugin myself by copying over the source in the installation directory. I got the above errors.

It does’t look like UnrealUSDWrapper is supported on Mac yet.

So… I haven’t tried this myself… but does USD also spawn weird specialty actors like Datasmith, that do weird things if you attempt to put them into Blueprint actors?

Hi,

I’m trying the Houdini Solaris to UE4 USD workflow and it works pretty well so far.
Models and textures are showing and everything is in the right place. Very promising. Even point clouds are working.
I would like to apply existing unreal materials to specific meshes when opening or reloading the stage.
Houdini Digital Assets can do this with the unreal_material parameter where you assign the reference path of the material.

Looking through the source code of UnrealUSDWrapper there might be already a function in there:

// load each material at the material path;
UsdPrim MaterialPrim = Stage->Load(Path);

    if(MaterialPrim)
    {
        // Default to using the prim path name as the path for this material in Unreal
        FString MaterialName = ANSI_TO_TCHAR( MaterialPrim.GetName().GetString().c_str() ) ;

        std::string UsdMaterialName;

        // See if the material has an "unrealAssetPath" attribute.  This should be the full name of the material
        static const TfToken AssetPathToken = TfToken(UnrealIdentifiers::AssetPath);
        UsdAttribute UnrealAssetPathAttr = MaterialPrim.GetAttribute(AssetPathToken);
        if (UnrealAssetPathAttr && UnrealAssetPathAttr.HasValue())
        {
            UnrealAssetPathAttr.Get(&UsdMaterialName);


        }

        MaterialNames.Add( MoveTemp( MaterialName ) );
    }

What kind of attribute and where do I need to create in Houdini Solaris or other software to make this work in Unreal’s USD Stage, if possible?

Thank you!

Steffen

Has someone managed to load the Nvidia Attic USD Stage?
It does crash on me every time.

Magicaly it repaired itself over night.

But why are there no UVs imported?

We’ve been using USD for a while now, but we’d love to have some way of importing a stage at runtime. Does anyone know of any plans to do this or will this plugin be Editor only for the foreseeable? I’ve had a look on the roadmap at Trello but can’t see anything coming up. Thanks!

Same problem here. It doesn’t show up in 4.25, nor in 4.26.
I found this UE-85966 issue report — “USD Stage is not available on Mac and Linux” which is already flagged as Fixed in 4.26, but I compiled master branch yesterday and USD Stage manager is still missing from the Window menu. Maybe those commits fix this problem only for Macs? That I wouldn’t know, as I’m on Debian Bullseye.

I’m very eager to test out Epic’s USD implementation with USD assets exported from Houdini.

Anyone got the USD Stage to show up on GNU/Linux?

Sorry to hijack, I’m hoping this is the right thread to ask this.

I have a USD file that I load in via the Stage Actor. I have an animated character in this USD, that I have keyed with the Timecode in Sequencer. When I scrub through the shot in sequencer, the animation plays through just fine. However, when I render my shot, the animation doesn’t play, and my character stays static in the frames rendered.

I’m sure I’m just missing something silly, but what would that be? There is little in the way of documentation on this subject.

Thanks!

Do you check auto play?

So many questions but lets start with a workflow one.
So I added multiple USD stage actors into a Level. When I open the USD stage window how do I tell it which one I want to work on? It’s not by selection, When you import something new, then it shows up in there, but then I can’t figure out how to get one of the other ones to list there.

I know it’s a new feature, but it would be awesome if the docs were a little more informative and if there was maybe a video out there? I’m very excited that it’s in there. Maybe a “Your first hour with USD” :slight_smile:

Thanks.

1 Like

Hi,

very cool feature, the USD support. Love it.

I have the same question:
How to switch between multiple UsdStageActors in the USD Stage editor? Or is there supposed to be only one in a level?

Thanks

1 Like

in 4.26 it works in macOs

Are there any ideas to make the loading times faster?