Tutorial : Faster Quixel Bridge -> Unreal asset exporting workflow/pipeline (Unofficial)
Hey all,
I work with some large studios where deliverables and timelines are tight especially during the holiday season. Recently Quixel Bridge was having some problems exporting displacement maps to Unreal, and during this troubleshooting phase I learned some tips and tricks that can potentially save your team "Hours" of painful waiting to click on the next button in bridge to export, or the next button in unreal to confirm high poly asset import, OR when doing serial exports unreal stores assets in memory until you physically click save to commit to disk, this eats up memory and you typically only able to export/import 20GB of assets per 100GB of ram, as well as some other useful tips I can think of - so here we go!
1) Install Quixel Bridge,
set the download options for assets to include (ALL) maps, and under meshes include (ALL) LODS as well as the source (LOD0) if you are doing reference quality renders (Arcvis for example)
2) Download assets, keep clicking the download icon on the next asset to queue up hundreds of gigabytes of downloads.
3) Create an unreal project specifically for processing textures and FBX - this is to keep your main project clean, and working while this process happens.
4) Go to your downloads folder for Quixel Bridge (ie G:\Quixel\Downloaded\)
4a) Sort the folder by modified date time from oldest to newest, this will help you keep what you copy this step separate from what is continuing to download in the background.
5) Copy everything that has downloaded at this time to (ie G:\QuixelUnrealProject\Content\Megascans) btw the path doesn't matter, pick a place to land your assets!
6) browse to G:\QuixelUnrealProject\Content\Megascans in explorer, type cmd in the address bar to open a command prompt.
7) run the following command to delete the quixel json tracking files, this prompts unreal to ask about converting to a data table.
del /S *.json
you should see output like the following (in my case)
Deleted file - C:\TFS\Content\1Game\Content\Environment\3d_debris_rb0gufa\rb0gufa.json
Deleted file - C:\TFS\Content\1Game\Content\Environment\3d_debris_rbxiqba\rbxiqba.json
Deleted file - C:\TFS\Content\1Game\Content\Environment\3d_moss_sjBby\sjBby.json
Deleted file - C:\TFS\Content\1Game\Content\Environment\3d_rock_phycx\phycx.json
Deleted file - C:\TFS\Content\1Game\Content\Environment\3d_rock_rgvwD\rgvwD.json
8) Open Unreal Engine and let it enumerate the source control file changes it found.
9) Click Import, this will convert all the jpg files to uasset textures and fbx to static meshes. (This will take some time, however unlike the export to unreal plugin process unreal works continuously in processing the full list of changes versus being told to import and process materials, and then waiting to be told about the next export from bridge (all while bridge is frozen waiting for unreal to accept the next export, preventing you from really queueing multiple exports..
10) go back to your Quixel Downloads and based on the date/time of modified on, you should be able to determine the next "chunk" of folders to copy over and process next in bulk.
11) When you are done copy the /Content/Megascans stuff to your projects /Content/WhateverFolder
This process allows you to continue using your Unreal Editor on your primary project with out asset exporting blocking you. This process also allows you to use bridge specifically to download, which means you can queue larger amounts of assets for download and you dont have to wait for bridge to respond after clicking export each time, depending on the assets in my case all LODs and all Textures and Source mesh could take 10+ minutes to export with materials into Unreal.
What about the materials?
Honestly its best that you own your own master material, use the MS_DefaultMaterial_Displacement material from Quixel for your 3d and surfaces, basically export 1 of each type from Quixel to Unreal to get it generate the material, recently all these master materials were in the quixel install folder associated to each unreal plugin version/build but it appears that they removed these local files so the manual export is the only way I can think of to get the initial material.
Make that your master material, create instances for each folder you brought over and associate the texture maps, your done!
For extra credit you can run yet another copy of "QuixelUnrealProject" so you can import/process even more at a time. Just watch out for disk space :)
Other tips and tricks I think I will make another post about as this one is fairly long, the other stuff is recommendations on source control when working with Quixel assets, amongst other things like materials and landscape materials.
Until next time!
David Kimball
-
To remove the Thumbnails and Previews (Used by Quixel Bridge, not needed for Unreal)
G:\QuixelExports\Content\1Game\Content\Environment\3dAssets>FOR /d /r . %d IN (Thumbs) DO @IF EXIST "%d" rd /s /q "%d""
G:\QuixelExports\Content\1Game\Content\Environment\3dAssets>FOR /d /r . %d IN (Previews) DO @IF EXIST "%d" rd /s /q "%d""
Please sign in to leave a comment.
Comments
1 comment