A first pass on a pyblish UI aimed at fixing shitty 3d assets, for when you get dropped into those projects with lots of bad assets.
Created for ease of use for artists, who find pyblish lite & QML too overwhelming.
- pyblish is designed to work with clean files, in a data driving approach, it struggles with lots of bad assets.
- As a user it then is hard to know which mesh failed which check
The new UI
- only shows relevant validations per selected instance.
(no more artist struggles with knowing why a mesh failed validation)
- filter by instance type.
(ex. if artist is only interested in the mesh, or animation)
- a repair/fix function. currently hardcoded to a fix method.
a single click fixes any issue with a reliable known fix.
Looks cool! Would it be possible to make a video, demonstrating the workflow?
Any thoughts to making QML and/or Lite also filtering plug-ins per selected instance? Seems reasonable, I can’t recall whether either of them already do this?
It’d be great to port this eventually to QML & lite.
For now I did my own spin to iterate fast.
(I’m planning some more new features i’ve been working on, ex. explicit plugin registration)
both qml and lite show all validation checks.
You can see this in the screenshot above. (The pyblish lite window is on the left.)
It shows that the MESH:cube instance failed. but it’s unclear why.
The only way to figure out is scroll through the log (screenshot below) and hope it tells you.
The workflow is very basic:
On opening the tool:
- collect runs and shows you the instances. just like in lite.
- check all : runs validation.
shows you validation results (green success red fail)
user can now select the instance they are interested in, and see what is wrong with them.
“Aha! Mesh:Cube failed because the mesh triangle count validation failed.”
- autofix all: attempt to run a fix action on failed validations that have a fix action
then rerun validation and show results.
in the sample vid both backface culling & material diffuse get auto fixed.
the end goal of this tool is a 1 click tool that fixes everything that can automatically be fixed.
then flag remaining issues in a very minimalist way to the user.
(which then can batch run on 100 files)
Cool. In my opinion, this seems like a great standalone tool. What if the user could spin up this UI at any point, and hit the Fix All button to correct things as they go? Like a workflow thing, not necessarily related to publishing. Something they’d do every now and then to keep a clean house, like Maya’s “Optimize Scene”. And then, once they’re happy they’d publish it, with or without Pyblish.
that’s exactly how it’ll be used.
the workflow would be something like:
- TODO asset creator. set up assets according to presets
- asset fixer: help you creating asset according the validation rules (uses Pyblish collect/validate)
- asset validate, export, integrate. (Pyblish or manual export)
i also remember reading a few of your posts somewhere mentioning pyblish isnt’t meant to be a sanitise file tool, or fix / repair tool, but validation only.
So for now it makes sense to do a separate UI.