レンダリング設定 Python API は Maya インストールの一部として利用でき、..¥Python¥Lib¥site-packages¥maya¥app¥renderSetup フォルダに関連ファイルがあります。
レンダリング設定 API を使用するには、まず次のようにレンダリング設定モジュールを読み込む必要があります。
import maya.app.renderSetup.model.override as override import maya.app.renderSetup.model.selector as selector import maya.app.renderSetup.model.collection as collection import maya.app.renderSetup.model.renderLayer as renderLayer import maya.app.renderSetup.model.renderSetup as renderSetup
また、ネイティブ Maya コマンドを使用できるように、maya.cmds を読み込む必要があります。
レイヤと 2 つのコレクションを作成するサンプル スクリプトを次に示します。このスクリプトはその後、エクスプレッション mySphere* を使用して最初のコレクションに球を追加し、エクスプレッション myCube* を使用して 2 番目のコレクションに立方体を追加します。
import maya.app.renderSetup.model.override as override import maya.app.renderSetup.model.selector as selector import maya.app.renderSetup.model.collection as collection import maya.app.renderSetup.model.renderLayer as renderLayer import maya.app.renderSetup.model.renderSetup as renderSetup import maya.cmds as cmds rs = renderSetup.instance() # Create and append the render layer rl = rs.createRenderLayer("MyRenderSetupLayer") # Create and append 2 collections c1 = rl.createCollection("sphereCollection") c2 = rl.createCollection("cubeCollection") # Create a trivial scene with a cube, a sphere and a cylinder cmds.polySphere(name='mySphere') cmds.move(2, 'mySphere', y=True) cmds.polyCube(name='myCube') cmds.move(5, 'myCube', y=True) cmds.polyCylinder(name='myCylinder') cmds.move(10, 'myCylinder', y=True) # Set up collection 1 to select all spheres using the pattern mySphere*, # and collection 2 to select all cubes using the pattern myCube*. c1.getSelector().setPattern('mySphere*') c2.getSelector().setPattern('myCube*') # Set the render layer as visible. # Only the sphere and the cube are displayed as they are collection members. rs.switchToLayer(rl)