IMPROVE MAYA STARTUP AND SHUTDOWN TIMES
Since Maya 2016, it launches with a set of at least 3 acwebbrowser.exe process. Besides all the fuss it creates in the task manager and resource hog it can be, it can also slow down Maya startup and shutdown times by more than 200%, up to 30 seconds each time! Those process are some chromium engines that connect to the web for different tasks, especially regarding registration. Quite a useless thing to wait for each time you start Maya if you ask me.
Messing with the install files is a bad idea as it will probably prevent Maya from launching, it’s much more easy to disable that behaviour by setting these simple environment variable MAYA_DISABLE_CLIC_IPM and MAYA_DISABLE_CIP to 1.
If you have no internet connection or if you are in a huge studio with tons of artists using Maya, it will surely make a huge difference!
If you want to improve the shutdown time even more, set the other environment variable MAYA_DISABLE_CER to 1.
Each time Maya quits, it requests a connection to Amazon web services (AWS) for the Autodesk Customer Involvement Program, adding 30 seconds of stupidity in some worst cases.
If you are on Windows, you could also disable the console window that appears for each Maya instance. It’s a good debug tool so keep in mind that you’d may have to reenable it in case you encounter a problem, but I feel it is way more pleasant without that window polluting the workplace. To do that just set the environment variable MAYA_NO_CONSOLE_WINDOW to 1. There is no need for that on Linux or Mac because they have a real terminal.
Regarding the performance of the VP2 viewport with MAYA_DISABLE_VP2_WHEN_POSSIBLE.
The viewport 2.0 has some really nice features like motion blur, ambient occlusion, anti aliasing but it’s still not really usable regarding performances and bugs. I have seen a performance loss around 30-40% even with the basic settings and wireframe mode.
But the worst is that even if you change all your viewport to the Legacy one, the performance loss is still very noticeable :
- only legacy – 100%
- activate viewport 2 – 70%
- reuse legacy in all viewports – 87%
Since Maya 2015 the viewport 2.0 is activated by default, so if the user that worked on the scene previously has not changed its default viewport and if you load the UI settings from the scene, you may have some viewport 2.0 instances in the scene, even if your main viewport is in legacy mode.
To make sure you never get some VP2 residue make sure that you deactivate the preferences in UI Elements > Restore saved layouts from file. It won’t use the UI configuration saved by the precedent user working on the scene, and in the mean time speedup the loading and sometimes fix some bugs. Actually I think it’s one of the first thing you should setup in Maya with a custom layout so that your UI is consistent throughout different sessions.
The other way around is to use a script that will query all the different 3d model panels, and set them to the legacy viewport… And reset and free everything regarding the viewport 2.0.
def setAllPanelsToRenderer(renderer, reset=True): """Possible values: base_OpenGL_Renderer, hwRender_OpenGL_Renderer, vp2Renderer""" modelPanels = cmds.getPanel(type='modelPanel') for panel in modelPanels: cmds.modelEditor(panel, edit=True, rendererName=renderer) if reset or os.environ.get('MAYA_DISABLE_VP2_WHEN_POSSIBLE', False): cmds.ogs(reset=True)
You may have noticed the MAYA_DISABLE_VP2_WHEN_POSSIBLE environment variable, it is used when switching viewport engines to tell Maya to free everything related to the viewport 2.0 if it is not used in any viewport anymore. I think it’s always a good thing to set it.