
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report
Hello,
I'm quite confused about the Global Utility Plugin not having a User Interface:
I need to write a plugin that puts every python tools my project has in a menu in the main menu bar where they are easily accessible.
- first off do I really need to run maxscript from C++ in order to execute my python script? the API doesn't seem to make a method available for running python files and using the python GUP is too complex for what I need to do.
- second I need to make the menu independent of any UI files (that means registering and unregistering menus), I work with codev and don't have access to their computer to deploy stuff myself (and they don't all have the same kind of setup) so I need something they can just drop into stdplug folder and forget about. so unless there is something that works as nicely for this as a GUP plugin I kind of need it.
-third I looked at the UtilityObj Class but I can't seem to get it to work nicely with GUP. it does compile but nothing shows up, I also try doing all the menu setup in a python script so the interaction between c++ and python would be a little less awkward meaning I just run this script at startup. the script does run well and prints what it is supposed to in the console but menus don't show up. (can't post code unfortunately because of NDA)
I'm looking into system plugins doc and I have read the recommended samples and Howto but I'm kind of at the end of the rope here, and wondering if there isn't something simpler that could be done.
UPDATE:
found this while going over the doc again (doclink😞
"If a plugin wants to add menus and items to 3ds Max's existing menus, or create its own quad menu context, it should be done when 3ds Max starts. This is best done with a global utility plugin (GUP). These plug-ins have a GUP::Start(), method that is called when 3ds Max's first starts up. It is in that method that plugins should register new contexts and add menus and items."
So now I wonder why it doesn't work. Especially from a python script?
Solved! Go to Solution.