Skip to content
Branch: master
Find file Copy path
Find file Copy path
1 contributor

Users who have contributed to this file

187 lines (113 sloc) 4.78 KB

Please feel free to improve this page as needed. Thank you.



Also, see the frequently asked questions.

How to run from code

import studiolibrary


How to reload for development

This code removes all previously imported Studio Library modules and caches before loading.

Tip: You can also hold "Shift" when clicking the shelf button to reload the modules.

import studiolibrary

import studiolibrary


How to set the name and path from code

Create and show a library with the name "Figaro Pho - Anim" that points to a custom path.

import studiolibrary
studiolibrary.main(name="Figaro Pho - Anim", path="P:/figaro/studiolibrary/anim")


How to create a local and shared library

Create and show both a shared library and a local library.

import studiolibrary
studiolibrary.main(name="Local", path="C:/temp/studiolibrary/")
studiolibrary.main(name="Shared", path="P:/shared/studiolibrary/")


How to create more than one library instance

In this example we create a library for the animation department, previs department and another library for a local temp folder.

Create three libraries and only show the third one. You can access the others via the settings menu.

import studiolibrary

studiolibrary.main(name="Local", path="C:/temp/studiolibrary", show=False)
studiolibrary.main(name="Figaro Pho - Anim", path="P:/figaro/studiolibrary/anim", show=False)
studiolibrary.main(name="Figaro Pho - Previs", path="P:/figaro/studiolibrary/previs")


How to create a library for several projects

When implementing the Studio Library for several projects we can get the current project name and then set the name and path.

import studiolibrary

# You could use an environment variable or an in-house python module to get the project name.
project = "MyProject"

path = "/shared/libraries/" + project + "Library"
name = project + " Library"

studiolibrary.main(name=name, path=path)


How to debug "No object match when loading data": (version 1.3.9+)

In version 1.3.9+ you can now switch on debug mode which should log any strange behavior in the script editor.

Make sure “Debug mode” is checked under the settings menu. Apply the pose and It should print any strange behavior in the script editor. This can make applying poses much slower.

You might see something like...

// mutils : Cannot find matching destination object for ...
// mutils : load function took 0.38400 sec /


How to fix a scene that has unknown nodes

Unknown nodes are because a plugin is missing. An easy way to fix this issue is to execute the following code in the Python script editor. The other way is to find the missing plugin and make sure it’s loaded.

# Delete all unknown nodes in the current scene
import maya.cmds
n ="unknown")
if n:


How to lock and unlock specific folders

import studiolibrary

path= "P:/figaro/studiolibrary/anim"
name = "Figaro Pho - Anim"
superusers = ["kurt.rathjen"]

# Unlock all folders. This is the default behaviour.
studiolibrary.main(name=name, path=path)

# Lock all folders unless you're a super user.
studiolibrary.main(name=name, path=path, superusers=superusers)

# This command will lock only folders that contain the word "Approved" in their path.
studiolibrary.main(name=name, path=path, superusers=superusers, lockFolder="Approved")

# This command will lock all folders except folders that contain the words "Users" or "Shared" in their path.
studiolibrary.main(name=name, path=path, superusers=superusers, unlockFolder="Users|Shared")


You can’t perform that action at this time.