Quixel Bridge Fix for Maya/Arnold (4.8)

The latest version of the Maya plug-in is 4.8.
This is my modified importer script for that version:
MS_Importer.py

How to use:

  • Update Quixel Bridge to the latest version
  • Update the Maya plug-in
  • Replace the the script in the lug-in folder
    (the path is something like this: …Megascans\Library\support\plugins\maya\4.8\MSLiveLink)

Fixes:

  • Added a missing Displacement shader node (without that there is no displacement)
  • Unnecessary node removed from the roughness branch (use nodes if you need them)
  • Modified attributes on the imported file nodes (alpha is luminance on, alpha offset: -0.5 for the displacement)
  • Set attributes for the added Displacement node (displacement padding: 10 cm (you have to change that to get correct results if the actual displaced distance is more that 10 cm), displacement zero value: 0 [because we already set that with the alpha offset], displacement scale: 10)
  • Modified attributes on the imported geometries (removed duplicated attributes: there is no point to modify the same values in two different places)
  • Set shader Base Color weight to 1 (the default 0.8 is way too dark for the already usually too dark albedo textures).

Why those modifications:

The missing Displacement shader is obvious.
The others are simple to explain as well.
The adaptive Displacement preview feature is rally useful in Maya (to check contacts with characters, more precice layout etc.). Also you always want to add clear and easy to use controls.
The best way to modify Displacement intensity (scale) and offset is when you can see the result immediately.
All the modifications are targeted to that goal.

This way you can change the displacement offset via the alpha offset int the file node, you can change the intensity (scale) on the Displacement shader node while you can see correct preview in the viewport.
Displacement preview: select an object, press ALT+3
Turn off: press 1

Important tips:

Always download the Displacement textures with the JPEG+EXR mode.
If not, the script can’t find the the EXR file (I have no fix for that, sorry).

For objects (not ground or big surfaces) usually it’s better to use decimated hires geometry than a displaced one.

If you using this method in most cases you have to modify the downloaded EXRs.
The original files usually using the Red channel only, and the Green and Blue channels are black (which is perfectly fine for UE4 but in Maya and with this method is not correct).
How to fix it:

  • open the texture (choose Alpha channel data As Transparency)
  • copy/paste the R channel into the G and B layers
    Unfortunately it’s not consistent, sometimes you have to paste the R channel as RGB data:
    After you copied the R channel select the RGB layer in the Channel panel and than use the Paste command. There will be a huge difference in values. You have to test it to make sure which asset needs which method. 😦
  • flatten the image
  • save the file
  • click Reload in Maya (file node)

Unfortunately in Maya there is no easy way to offset a color value into negative (to get correct preview). So that’s why I chose this method (this way you can see what you do). The original script is not wrong (except the missing displacement shader), but it’s not very artist friendly.

One more thing: If you sending the High Poly geometry to Maya, don’t forget to turn off the subdivisions at the shape (mesh) node at the Arnold section.

Cheers, D

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.