MEL入門009 for文を使用する。
MEL入門008でバックフェースカリングを行うMELを作成しました。
string $selOBJ= `ls -sl`;
// 配列を使用した記述方法は setAttr $selOBJ[0].backfaceCulling 3そのままではなく、下記になります。
setAttr ( $selOBJ[0]+ ".backfaceCulling ")3;
setAttr ( $selOBJ[1]+ ".backfaceCulling ")3;
と書きましたが
これでは2つの選択したオブジェクトのみしか使用できません。
選択するオブジェクト全てに使用するにはfor文を使用します。このように書きます。
string $selOBJ;
string $selOBJS= `ls -sl`;
for( $selOBJ in $selOBJS )
{
setAttr ( $selOBJ + ".backfaceCulling ")3;
};
for( $selOBJ in $selOBJS )の
$selOBJ in $selOBJS は 条件です。
この条件で $selOBJSに $selOBJ が入るごとに
{
setAttr ( $selOBJ + ".backfaceCulling ")3;
};
を繰り返し実行します。
バックカリングを解除するMELは
string $selOBJ;
string $selOBJS[]= `ls -sl`;
for( $selOBJ in $selOBJS )
{
setAttr ( $selOBJ + ".backfaceCulling ")0;
};