SyntaxHighlighter

2014年8月21日木曜日

メモ_maya(選択したオブジェクトのアトリビュートを変更)

他のページからのコピペ

選択したオブジェクトのアトリビュートを変更

string $obj[] = `ls -sl`;

for ($objSel in $obj)
{
//変更可能なのは、ここから//
setAttr ($objSel+".miReflectionBlur") 2.5;
//ここまで//
}

-------------------------------------------------------
これは、「選択したマテリアルにリフレクションブラーを入れる」ってこと

1.//「for ($objSel in $obj)」は、「$objの中の$objSel」を//
2.//setAttr ($objSel+".miReflectionBlur") 2.5;しますって意味//
3.「2.5」って数値は、リフレクションブラーを2.5にしますって意味。
----------------------------------------------------------------------

つまり、2の「.miReflectionBlur」の中身を変えれば、どんなものでも一括で変更できる。また、1行だけでなく何行入れてもいい。

たとえば、
@選択したマテリアルを全てブラックホールにする。
setAttr ($objSel+".matteOpacityMode") 0;

@選択したマテリアルを全てブラックホールをやめる。
setAttr ($objSel+".matteOpacityMode") 2;

@選択したマテリアルを全てグローを切る。
setAttr ($objSel+".glowIntensity") 0;

@選択したマテリアルのambientColorに、occlusionをつける。
connectAttr -force mib_amb_occlusion1.outValue ($objSel+".ambientColor");
//「mib_amb_occlusion1」は、オクルージョンの名前//



---------------------------------------------------------------------------------------------
//選んだカメラのアトリビュートを変更

string $obj[] = `ls -sl`;
for($lsCam in $obj)
{
setAttr($lsCam+".filmFit")1;
setAttr($lsCam+".cameraScale")1.2;
}
---------------------------------------------------------------------------------------------
//
マニピュレータをオンにする

string $slCam[] = `ls -sl`;
for($lsCam in $slCam)
{
renderManip -e -cam 0 0 0 1 0 $lsCam ;
}

---------------------------------------------------------------------------------------------

string $pMesh[] = `ls -type "mesh"`;
//select $pMesh;
for ($spMesh in $pMesh)
{
    print ($spMesh + "\n");
    setAttr ($spMesh + ".overrideEnabled")0;
    //setAttr ($spMesh + ".template")0;
}
---------------------------------------------------------------------------------------------
//カメラのイメージプレーンを削除
string $list[] = `lsType imagePlane`;
for ($node in $list)
{
select -r $node;
delete;
}
---------------------------------------------------------------------------------------------



string $before = "hoge";
string $after = "hoge";

string $node[] = `ls -type file`;
  
    for ($fileNode in $node){
  
        string $path = `getAttr ($fileNode + ".fileTextureName")`;
        print ($path + "\n") ;              
        string $changePath = `substitute $before $path $after`;
        print ($changePath + "\n") ;   
        setAttr -type "string" ($fileNode + ".fileTextureName") $changePath;
    }