OpenPype icon indicating copy to clipboard operation
OpenPype copied to clipboard

Arnold Scene Source Raw - OP-8014

Open tokejepsen opened this issue 1 year ago • 4 comments

Changelog Description

This PR is to try and re-instate some flexibility to the Arnold Scene Source family, which got restricted by https://github.com/ynput/OpenPype/pull/4449

The proxy workflow introduced was actually broken due to https://github.com/ynput/OpenPype/pull/4460.

We can now have any nodes directly in the instance set, which should be backwards compatible of the Arnold Scene Source before the overhaul in https://github.com/ynput/OpenPype/pull/4449. The content and proxy sets works as well, but not at the same time as the raw nodes directly in the instance set. There is a validator in place to prevent using a single instance for both workflows.

Now the question is whether we should have this as a single family or split somehow? The workflow of having nodes directly in the instance set, compared to content and proxy set, can be documented, so I see this as most a matter of terminology. Arnold Scene Source makes sense to have as a family, but only if its a the raw output with little to no validation, similar to Maya Scene. But then I'm not sure what to call the other family that has more of a workflow in place, which is similar to Model and Pointcache.

Testing notes:

Will update when we have a decision on direction.

tokejepsen avatar Jan 30 '24 11:01 tokejepsen

@antirotor doesn't this solve the issue with ASS we talked about int he office?

mkolar avatar Feb 09 '24 23:02 mkolar

I am little struggling with it but - if Arnold Scene Source is to be "raw" form, we can have ASS Standin for the more restrictive one - loaders to support both of them. Truth to be told, I really don't know the right name for it. Maybe even something like Arnold Scene Source - Raw and Arnold Scene Source?

antirotor avatar Mar 14 '24 15:03 antirotor

How about Arnold Scene Source and Arnold Scene Source Proxy?

The workflow that is in place, is for proxy loading in the viewport. I think we should also get rid of the content objectset since we'll have two families anyways to differentiate workflows, so "content" nodes will just be in the root objectset for the Arnold Scene Source Proxy.

tokejepsen avatar Mar 14 '24 16:03 tokejepsen

How about Arnold Scene Source and Arnold Scene Source Proxy?

The workflow that is in place, is for proxy loading in the viewport. I think we should also get rid of the content objectset since we'll have two families anyways to differentiate workflows, so "content" nodes will just be in the root objectset for the Arnold Scene Source Proxy.

Yep, but we need to handle backwards compatibility with existing scenes

antirotor avatar Mar 15 '24 09:03 antirotor

Yep, but we need to handle backwards compatibility with existing scenes

@antirotor I think since the proxy workflow was broken due to https://github.com/ynput/OpenPype/pull/4460, there would only be roughly 2 months where people could have made valid proxy ass publishing. Then its been 1 year with the broken proxy workflow, which probably shows how much its used and that we dont need to worry about backward compatibility for Arnold Scene Source Proxy For Arnold Scene Source we would be restoring backward compatibility with this PR, so I dont think we need to worry about any backward compatibility.

tokejepsen avatar Apr 08 '24 13:04 tokejepsen

here for example successful Publish for pointcache with the same selection of objects...

image

LiborBatek avatar Apr 18 '24 14:04 LiborBatek

@LiborBatek could you show the instance or send me the workfile?

tokejepsen avatar Apr 18 '24 16:04 tokejepsen

Here is my Arnold scene source instance details...

Screenshot 2024-04-19 094405

LiborBatek avatar Apr 19 '24 07:04 LiborBatek

So my question is, should be this instance type so limited?? as I dont see any point constrain it so much for the user... why I should care about something outside of actual publish instance aka ass ??

@LiborBatek from the screen grab it looks like some geometries are being flagged as hidden but they might not be?

To debug this, could you maybe send me the rig you are using?

tokejepsen avatar Apr 27 '24 10:04 tokejepsen

@LiborBatek I've found the bug that caused the validator to falsely flag nodes as hidden. Give it another test when you have time.

tokejepsen avatar Apr 29 '24 18:04 tokejepsen