This week I will import the USD file into Unreal Engine, and if the process goes well I can even try to make some shots.
In UE5 if you wanna import USD file make sure turn on the USD importer and USD multi-user synchronization in plug-in manager, if not you can not find any places import USD.

After that you could find USD stage in the virtual prodution under the window button. Jump into it you could export the USD file. On the left side there are the groups and assets information, on the right side there is a attribute editor. You could directly move or do other things on this stage, all the changes will rewrite the USD file, basically this is a live update of the file. If you want to change to other 3D software such as MAYA, 3D Max, etc. will not have any impact, all changes will be updated, this technical process can be used in almost all major 3D software. Especially for large scene files, this is very convenient, to my project for example, Maya source files are about 500MB, if you use the USD cache process is only 35MB.

I now successfully export in my Unreal Engine project content, next make sure everthing is fine you could swich all the assets in Unreal assets cause now all of them it’s still cache file. After swich your are free to do anything such as lighting, this is tricky Unreal Engine can’t iidentify Maya’s light and Arnold material. So there is a huge work I need to solve, I need to create one more time about the material and rebuild the whole light enviroment.
Fortunately the Unreal Engine’s material system works very well, I can create a material sphere to be a ‘mother material’ and then create material instances from the ‘mother material’ to act as ‘child materials’, which is called a very good explanation of the logic. This way I only need to calculate the desired effect in ‘mother material’ and build all the nodes I need, in ‘child materials’ I only need to replace the map and adjust the parameters in the preview window, all the ‘child materials’ do not need to link nodes or calculate again.

Here I use the ‘mother material’ and ‘child materials’ created for the building as examples to explain in detail how to use them. Firstly I create a basic material for the building and rename it as ‘M_building’. Then double click and jump into material icons like the hyperlink in Maya. Drag all the needed maps of one of the models into the window, and link them in right position. Here I also add some nodes, I want to have a place to control the normal map’s intensity so I link the RGP out in a multiply node and add another single-digit material expression constants and link in B in multiply node. So that I could control the normal map’s intensity by change the number in the single-digit material expression constants. Same way to control the UV. And don’t forget to convert all nodes to constants and change their names to the ones you want, otherwise they won’t be visible in ‘child materials’. Everything set up just save it. The ‘mother material’ is already done.

Then create a material instances by the ‘mother material’ and rename it as ‘MI_XXX’, the difference name is just to identify which are material instances. Double click in it the window is different. You could see all the nodes I added is in the right hand side by some form of attributes reconciliation, all I need is just turn on which attribute I want to make some changes. Also the maps must be replaced to what you need for single modle.

Anyway by this method, I quickly redid all the materials and added some new nodes to better control them. Next week I will rebuild the whole lighting system and maybe I will add more prop lights because it is very easy and fast to calculate these light effects inside Unreal Engine and I can do more stuff in this scene.