JShong.script - Rrender Layer Creator




오브젝트별로 렌더 레이어를 생성해주는 MEL


옆자리 두완이가 갑자기 선택한 오브젝트를 자동으로 오브젝트 이름으로 렌더레이어를 생성하고 그 레이어에 그 오브젝트만 자동으로 넣는 프로그램이 있으면 좋겠다고 해서 오~ 정말 좋겠다~ 싶어서 간단하게 짜본 프로그램.

확실히 쓸 일이 꽤 있네. 특히 여러 레이어가 순차적으로 생겨나야 한다던가 (건물 생성 CG?) 하는 씬에 쓰면 좋을것 같다. 그런데 오브젝트 갯수만큼 레이어수가 많아지니까... 조심 조심.. ㅋㅋ
흠.. 여기서 더 나아가 레이어별로 오브젝트를 넣고 쉐이더도 오브젝트 이름과 같은 쉐이더를 만들어 그 해당 레이어에 해당 오브젝트에 해당 쉐이더를 자동으로 적용시켜주는 기능을 추가 해봐야겠다.
아니면 오브젝트를 다 넣되 해당 오브젝트를 제외한 다른 오브젝트는 blind 해주는 (black hall로 빼거나 use background 시켜주는) 기능을 추가하면 정말 여러모로 잘 쓰일 것 같다.


proc Make_RenderLayer()
{
string $OBJ_List[];
$OBJ_List=`ls -sl`;
int $size_OBJ_List=`size($OBJ_List)`;
int $count=0;
for ($count=0 ; $count<$size_OBJ_List ; $count++)
{
string $Layer_Name = stringArrayToString({$OBJ_List[$count], "_R"}, "");
select $OBJ_List[$count];
createRenderLayer -name $Layer_Name -number 1 -makeCurrent -noRecurse `ls -selection`;
}
}
Make_RenderLayer();