ynput / ayon-houdini

Houdini addon for AYON
Apache License 2.0
11 stars 9 forks source link

Add python panel for AYON Generic Loaders #140

Closed MustafaJafar closed 1 month ago

MustafaJafar commented 1 month ago

Changelog Description

[!Note] This PR is for trying Houdini python panels for controlling AYON Generic Loaders. It's mainly for sharing code and showing a demo.

Testing notes:

  1. follow the gif above.
BigRoy commented 1 month ago

Nice! Very interesting prototype.

I do want to state that I'd like to avoid maintaining more separate Qt UIs where we can - I'd rather focus as much as possible on staying closer to Houdini itself. For example, I'd rather have it be a panel of a regular "node parms" that auto switches. That way, you also still have full control over putting in expressions there, etc. Note that with e.g. context options in LOPs these types of attributes may also be dynamically set from the node graph itself. As soon as we start moving to a custom UI or dialog we'll suddenly be writing Houdini's parameter panel ;) but then ourselves, in Qt. I'd like to avoid that.

Aside of that - this is very nice experiment and could potentially be used as a drawing board / inspiration of other approaches we could take. So let's definitely keep this open for now to think about - but I wouldn't prioritize it unless it offers us features that we really need and would be impossible in native Houdini.

@dee-ynput @antirotor thoughts?

moonyuet commented 1 month ago

I've done some test to apply the loaded representation to the generic loader node by using the python panel. Is it possible getting the filepath from the representation to map on the generic loader node? Currently it's not updating the filepath when using python panel to switch the asset representation type. (This python panel is pretty useful for switching assets btw if the users have multiple generic loader nodes and usually they would have) image

MustafaJafar commented 1 month ago

Currently it's not updating the filepath when using python panel to switch the asset representation type.

I happens because I don't trigger the callbacks after assigning the parameters. It should be fixed when using expressions instead of callbacks.

MustafaJafar commented 1 month ago

closing this in favor of creating opening Parameter floating panel.