Here’s a snippet that shows how to loop through all material libraries and materials and delete unconnected shaders:
var oMatLibs = ActiveProject.ActiveScene.MaterialLibraries; oEnum = new Enumerator( oMatLibs ) ; for (;!oEnum.atEnd();oEnum.moveNext() ) { var oMatLib = oEnum.item() ; oEnum1 = new Enumerator( oMatLib.Items ) ; for (;!oEnum1.atEnd();oEnum1.moveNext() ) { var oMat = oEnum1.item() ; DeleteUnusedShaders( oMat ); } }
The same thing but in Python.
oMatLibs = Application.ActiveProject.ActiveScene.MaterialLibraries for lib in oMatLibs: for mat in lib.Items: Application.DeleteUnusedShaders( mat )