What’s the difference between using the script component to create a pythong/c# component, vs explicitly using the python/C# component?
Yeah, there was a single scripting component which you are asked to choose the language. Now I see they added separate C#/Python2/Python3 components. What’s the difference?
I don’t think there is one. As far as I recall, the three auto-intitiated script instance components were a response to complaints that each language should have it’s own individual component type, like prior to Rhino 8. This feels like a half solution that complicates things and clearly is confusing to users. If we include the hidden legacy scripting components, that makes for a total of ten shipped scripting components:
That’s maybe a bit much, no? Perhaps culling either the un-initiated script component or the three instances would help? The advice back in the day was to make user objects if we wanted customised scripting components, and that would still work here if one wants an auto-intitiated scripting component.
Hehe, indeed. I think it might simplify things if they:
- Culled the base script component (first group).
- Kept the three script instances (second group).
- Hid the VB component (third group).
- Reduced the hidden GHPython and C# components to one each (fourth group).
They would make things immediately more understandable (i.e. three new components vs three old ones). It might also make the development simpler, if one doesn’t have “to fit square pegs into round holes” in order to have one universal component support all three languages.
Edit: That said, I do actually like the idea of one universal script component (i.e. the base script component where one selects a language upon instantiation). And if that is in fact not an issue in terms of development/supporting three languages, I’d prefer they cull the three script instances and hide the VB component. What’s simpler than just one component (and three hidden ones), right: