Replies: 11 comments 13 replies
-
Great discussion Dhruv, That said, all functionality for transporting data in and out of Maya from the Pixar plugin remains in MayaUSD, however not all of it is exposed through the UI. We did not bring over the Pixar UI's for tagging data as we still want to investigate more native ways of defining that data. Something that would be helpful would be production samples which would show these concepts as you would like them to exist in Maya, and then the USD as you would expect it to be exported (or vice-versa). |
Beta Was this translation helpful? Give feedback.
-
Beta Was this translation helpful? Give feedback.
-
I would think it could. Maya will reference in a set and either namespace it or increment its name as needed. If the translator was set to look for a naming pattern for the set as opposed to a hard coded name, I would think it would be possible. For transparency's sake, we have not chosen a direction, but I am interested in understanding any pitfalls with the set-based approach.Any other concerns with a set-based approach? To summarize the methods on the table are:
For #4 Maya does have the notion of metadata for nodes, its just not very fleshed out. This approach would still present the problem of "which" data to export if you did not want ALL Maya custom attributes and metadata. |
Beta Was this translation helpful? Give feedback.
-
I just wanted to ping this thread and ask people's thoughts on specifically 1.~~ customLayerDataKeys (vector of strings): The names of the keys, matched by index to the values~~ Actually, looking at MSyntax, and as an example the chaserArgs flag, I think I can just replicate the chaserArgs argument and make it so it is a multiUse flag with three arguments: key, value, type So then it just requires adding a single flag, and no index matching I think this will allow people in MEL/Python to easily provide the parameters. Do people have any thoughts on that approach? or other possible alternatives? |
Beta Was this translation helpful? Give feedback.
-
Has there been any resolution to this? I am working on writing USD out of Maya to be loaded into other DCCs (Unreal, Houdini). I want to be able to tag materials with hints so I can translate those materials into something useful in those other DCCs. Is there a way to do that today? Thanks, |
Beta Was this translation helpful? Give feedback.
-
Can I bring this back from the dead as I have been unable to find any reference to the correct way to export arbitrary attributes to USD prim vars in any of the documentation? |
Beta Was this translation helpful? Give feedback.
-
Hello, we have a way of tagging user attributes for export with USD and wondering if that is what you are looking for. More information on that option can be found here: https://github.com/Autodesk/maya-usd/blob/dev/lib/mayaUsd/commands/Readme.md under the Custom Attributes and Tagging for USD section. Let me know if that helps. |
Beta Was this translation helpful? Give feedback.
-
Thanks David - that's the section I've been looking at so far, but from what I can tell there's a line that says:
however, the section 'below' that's referred to appears to be missing, having been removed from the document a little while back. |
Beta Was this translation helpful? Give feedback.
-
Yes the docs are a little confusing I think and need to be updated, I will report this to the team and see if we can get better documentation. The way that an attribute is tagged is by using the "adaptor" helper tool: The following script will creates the attribute subdivisionScheme and assigns it the loop value. The adaptor will tag the attribute with USD_ATTR (you can see it in the Attribute Editor under the Extra Attributes section) so on export it will set that value of subdivisionScheme to loop which is not the default. I hope that helps clear things up a little bit more. I can create a video if that would help.
|
Beta Was this translation helpful? Give feedback.
-
@mrloafbot I would imagine that should work. I tested it on my end and I am also not able to get it to work. One workaround is to bring the leftHanded mesh into Maya as a stage and then through the attribute editor change the orientation value to rightHanded and then open the Layer Editor and save your stage. That should change it. I am looking further into the issue with orientation value not working as a user defined attr. |
Beta Was this translation helpful? Give feedback.
-
Beta Was this translation helpful? Give feedback.
-
Hi everyone,
I was wondering what people's thoughts are on how the maya-usd project plans to handle the following sets of extra data that users may want to expose to the exported USD files:
Per Prim Custom Primvars
This is mostly about being able to export attributes as primvars that the default USD export would not otherwise do.
For example extra channels that downstream processes or code could react to.
The Pixar exporter had the somewhat hidden option of using
USD_UserExportedAttributesJson
to specify custom attributes for export along with naming etc. There was also a basic UI to manage the options for this.Is this the route that the Maya USD exporter will also go down? Are there any plans to use the same attribute and tools or update them to something else? If so, would this be exposable to some place easy for artists to access?
Alternatively (or additionally) would it make sense to people to allow for an alembic style approach of providing attribute prefixes to match against e.g.
USD_*
. I can see some pros and cons with regards to usability for both which is why I ask. Specifically the alembic style route is great for quickly specifying what you want exported without necessarily modifying all your objects, but makes it hard to capture the amount of options that the other approaches provide.Per Prim AssetInfo
This is something I haven't seen existing tooling around. I imagine having a similar system as the
USD_UserExportedAttributesJson
with a JSON field would make sense?This would be handy for exporting static metadata as part of an object.
Per Prim Kind
This one's a little more niche. Perhaps a custom string attribute? Various pipelines may have kinds that aren't exposed to Maya, but are still valid to set for their downstream pipelines to query.
USD file customLayerData
Custom Layer Data would be really useful for embedding extra data that is not prim specific but layer specific for the pipeline to use, or for general book keeping.
This one's something we use quite a bit to include metadata like copyright info etc... for
.usdz
files.Right now we implement this as a custom chaser but I can see it being really useful to be exposed as an exporter argument, for general use. Perhaps as another json formatted string argument?
Anyway, I just wanted to start the discussion on this. The need for custom data export has come up a few times on our end, so before we dev anything internally, we want to make sure it's something representative of the general direction that Autodesk and others were planning to go down.
Beta Was this translation helpful? Give feedback.
All reactions