How to export an object with VRay Materials to a USD with Materials

Hi all!

Is there any best practice, how to export objects from max as USD but with materials when shaded with VRay Materials or with multiple VRayMaterials through a MultiSubMaterial?

In my try, objects shaded with VRayMaterials or MultiSubMaterials with VRayMaterials, always export with WireColor and visually loose all material info.

Thank you and greetings!

Hi!

We are currently working together with Autodesk to provide USD support for V-Ray specific stuff, including proper export.

Wohooo! Thanks, thats good to know! - Maybe you can share a VRay PR for the current Max PR + USD PR in the 3dsmax feedback community (beta), when you’re ready.

Nice!
@matanov is there a rough ETA, even if its a very rough ETA, for this to land in any form?

Also, would that then mean, that the resulting USD, will work in ANY other app, supporting the latest USD as per the latest official specs from Kronos?

Hmmm or am I now mixing up USD with glTF?

Sure it ain’t MaterialX? XD

Yes, Kronos - gLTF.

Most likely V-Ray specific data exported to USD will be handled properly if you have V-Ray on the other end as well.

About the ETA (and I will risk it here), my hopes are to have something for Update 1 of V6 which is scheduled for Q1 2023. I’m pretty sure that we will share some builds for testing before that.

Hehe, I see waht you did there.

But since you mentioned it, hehehe, I’m still wishing for a “universal” interchange format between Max/VRay, and other apps without VRay. FBX export from Max is not the greatest for this, and even then, standard material or physical material only get you so far.
Would be great if there was “something” (I dont know what this something would be), that could take a VRay scene from Max, and convert the materials to something universal, you mentioned MaterialX, so that, or MDL, or something along those lines. I havent looked deeply into gLTF yet, beyond simple single objects, so not sure what is/isnt supported in terms of materials for that. I remember you mentioned few years back there will never be a 100% universal thing, or at least we’re far of from getting that. That’s fine, if I can get something at least 85% to 95% of the way, that will be great. I may just need to code my own system that creates a json or xml from a vraymaterial, then rebuild it on the other end, whichever end that may be.

Anyway, this is getting off topic a bit from the OP’s original question. Feel free to reply in PM or mail me Lele, or even here if you think it’s relevant…

There are some scripted translators out there in the web … VRayMtl to StdMat or PhysicalMat etc. // … Also Max’ USD exporter translates Materials in a USD format as long as max can readout the prior format (ex: VRayMtl). So, when Chaos makes their Mtls “understandable” for the max USD exporter, the Mtls could be properly translated into the generic USD Mtls.

3ds max Omniverse Connector from Nvidia seems to be doing quite decent job out of the box.