-
Notifications
You must be signed in to change notification settings - Fork 129
Conversation
Task linked: OP-3129 Houdini bgeo publishing |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Some early comments
…lishing' into feature/OP-3129_houdini-bgeo-publishing
Tested in my machine with some of my old project.
If the user didn't put the SOP path and without the validator checked, it won't export any bgeo path to the pyblish directory (and it can't pass the integrate.py) |
@antirotor Are you expected to do additional changes based on the open comments on this PR or does this just need some testing before it's ready to merge? |
Yep, I would like to add the validator and logic around the output node index. |
openpype/hosts/maya/plugins/publish/collect_arnold_scene_source.py
Outdated
Show resolved
Hide resolved
openpype/hosts/maya/plugins/publish/collect_arnold_scene_source.py
Outdated
Show resolved
Hide resolved
…lishing' into feature/OP-3129_houdini-bgeo-publishing
@BigRoy I think this is resolved, just want to check with you |
I still have some issues with adding the extra family on Create into A collector doing it would already be safer plus doesn't require us storing this basically non-dynamic/changeable data on the node (which makes no sense because it's just an implementation detail). A simple example collector could do: if creator_identifier == "io.openpype.creators.houdini.bgeo":
families += ["bgeo"]
elif creator_identifier == "io.openpype.creators.houdini.pointcache":
families += ["abc"] Not perfect either because then the new publisher can't specify user parameters based on that collector because there's unfortunately no notion of PreCollector plug-ins which run before the user interaction but after the creator. Anyway - let's at the very least fix up the (what I suspect will be an) issue with existing pointcache instances in the new publisher and I'd say this is an "ok" implementation. For more context, storing data on the node. I have the same issues with Similarly with the Since in Houdini I can see how it might differ in other hosts, but it's basically what is already breaking Houdini, Fusion (and likely Maya new publisher too?). We should be storing as little data as possible in the scene through which we can produce reproducable publishes. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Haven't tested, but code looks good.
I've moved the logic to collector - it should handle legacy instances. The problem with additional families, collection and plugin parameters is there and has no solution currently. In this particular case, it doesn't matter that much because it has no additional parameters defined down the line - but in theory, it should have - for example format specification for bgeo should be probably parameter of the bgeo extractor plugin. I don't mind having those families set by creator - you can argue that it is static, but moving it to collector (in this particular case) just move the static stuff down the line - testing I agree totally on what we are storing on the instance itself and it should be as minimal as possible. |
Requested changes were incorporated in the PR
So we've just hit this error for the first time now - when publishing USD files on our end. @moonyuet have you had this since? Side note: I've asked SideFX support about this as well, ticket: |
Brief description
Support for simple publishing of bgeo files.
Description
This is adding basic support for bgeo publishing in Houdini. It will allow publishing bgeo in all supported formats (selectable in the creator options). If selected node has
output
on sop level, it will be used automatically as path in file node.Additional info
For future work it might be good to rethink how "pointcache" family is implemented regarding to various format and validation needs. Maybe default option for file format can be added to settings, some additional validation, and so on.
Testing notes:
Resolves #3098