So i’m wondering if there’s a plugin or possible future feature of GH to create temporary placeholders for unrecognized components due to a file using plugins i don’t have
Since grasshopper is able to recognize the name of the plugin and component of the unrecognized object
or is it impossible because without the component it’s impossible to identify the input and output? (but couldn’t this be identified by the components that outputs and receives data from the component?)
Maybe there’s some kind of limitation I don’t understand and i’m saying something stupid, in which case can someone explain it?
and yes i could just install the missing plugin, but sometimes I’d already have similar components that does the same thing, in which case I don’t want to install a new plugin.
but I agree it would be a nice feature to have. Don’t see much limitations technically - if the missing components derive simply from GH_Component it should be relatively simple to extract their parameters and dump them into GH_Params like in the picture above.
Perhaps I can get around to trying to implement this as an external plugin … anyone know the proper way of “asking” Grasshopper if a certain GUID corresponds to an installed component?
Hm, I misread the info about this one. I thought it was the Guid for the assembly! To myself: Don’t think so much, read the letters instead, one by one if necessary.
Famous last words… turns out there are complications due to the way GH_Archive is structured. The parameter chunks don’t seem to store any information about their type at all ( GH_Number, GH_Curve, etc.), that’s handled by the (missing) component during deserialization.
And you can’t just upcast everything to Generic Data ( GH_Param<IGH_Goo> ) because that would potentially lose type-specific attributes, e.g. Param_Number takes Degrees / Expression modifiers, Param_Curve takes Reparameterize, etc.
There could be other workarounds, but it’s definitely not the simple unpack-and-dump I was expecting
Even better would be if all component plug-in developers started creating packages for the package manager that automates downloading of missing components.
There are already some available, like GhShaderNodes (8