ynput / ayon-core

Apache License 2.0
31 stars 36 forks source link

Tools: Implement "Dependency" or "Links" view (e.g. in Loader) #780

Open BigRoy opened 2 years ago

BigRoy commented 2 years ago

Is your feature request related to a problem? Please describe.

The "Dependency" loader will get more useful after ynput/OpenPype#3629 and ynput/OpenPype#3633. However, to easily trace from a selected version I'd recommend implementing some additional changes.

The current state: afbeelding

The above was the state in OpenPype - In AYON this is currently gone since a rewrite occurred of the Loader tool. This issue is to track the request to add it again, and preferably in a better fashion than before.

Describe the solution you'd like

Describe alternatives you've considered

Of course better tooling to visualize the dependencies in general would be even better, like a node graph (e.g. ReactFlow) or even just showing the recursive inputs/outputs in a hierarchy would be useful, like this example of what we had used in one of our productions before OpenPype.


It's good to be aware that on the web frontend there's a similar feature in the "Node Graph" addon (in beta, low priority backlog) - as Milan mentioned here

[cuID:OP-3715]

BigRoy commented 4 months ago

Came up on Discord here:

I commented these 'reference' links:

In OpenPype there was the Dependency Links shown in the Loader tool but it's been removed from AYON when rewriting large parts of the UIs (plus the UI sucked a bit in OpenPype). I think it still has merit to have something nearby somewhere.

Reference of links in loader: https://github.com/ynput/OpenPype/pull/3629#issuecomment-1209153823 + https://github.com/ynput/OpenPype/pull/3629#issuecomment-1243870103

I had this tiny widget in avalon: https://github.com/BigRoy/core/blob/acre/avalon/tools/representationinput.py which was basically the screenshot shown here: https://github.com/getavalon/core/issues/395#issuecomment-501749753 which we actually ended up using in a project back then, more details here: https://github.com/getavalon/core/issues/395#issuecomment-778078006 with the gist linking to the UI.

Originating from these Avalon issues at the time: https://github.com/getavalon/core/issues/395

It wouldn't be too hard to transfer these to AYON codebase since the data is relatively similar, just a different query.

In one of those threads I also had a NodeGraphQt demo, here: https://github.com/getavalon/core/issues/395#issuecomment-518670047