MAYA マテリアルタイプを一括変換

シーン中のマテリアルを任意のマテリアルタイプに一括して変更を行う。標準ではサポートされていないようなので、MELを作成し、使用する。

  1. Script Editorを開き、下のウインドウに下記を参照して入力する。

    string $phongs[] = `ls -type phong`;
    for( $item in $phongs ){
      string $lambert = `createNode lambert`;
      replaceNode $item $lambert;
      showEditor $lambert;
      delete $item;
    }
    

    上記の場合、シーンにあるマテリアルの「マテリアルタイプ」を Phong から Lambert へ変更します。
    他のタイプにしたい場合は、[phong] [lambert] の部分を任意のタイプに置き換えて記述してください。

    マテリアルタイプ一覧

    anisotropic
    blinn
    lambert
    layeredShader
    phong
    phongE
    shadingMap
    surfaceShader
    useBackground
    

  2. Script を [Execute] する。すると、Attribute Editor が開き、順番にマテリアルタイプが変更される。

作成したMELは、Shelfに登録しておくと便利です。