맥스스크립트 심화

파일머지 편하게하기(2)

스크립팅하는애님 2021. 4. 23. 19:44
728x90
반응형

안녕하세요.

애니메이터가 들려주는 맥스 스크립트의 스크립팅하는 애님입니다.

지난 시간에 이어 파일 머지를 편하게 하는 방법을 계속 설명하겠습니다.

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
fileName = ""
 
rollout Merge_Rollout "Merge"
(
    button selectMerge_btn "머지파일선택" pos:[5, 5]
    label fileName_lab "FileName" style_sunkenedge:true height:15 width:155 pos:[5, 30]
    button run_btn "실행" pos:[5, 60]
    
    on selectMerge_btn pressed do
    (
        fileName = getOpenFileName caption:"머지할파일선택:" filename:".max" types:"맥스파일(*.max)|*.max"
        fileName_lab.caption = fileName
    )
)
createdialog Merge_Rollout 
cs

 

 

(이전 시간까지 진행한 내용)

 

우선 내용을 더 진행하기 전에 머지할 파일과 머지될 파일을 준비하겠습니다.

바이 패드와 칼(박스)을 각각 만들어 두겠습니다.

 

머지할 파일
머지될 파일

 

이 둘이 머지되어 무기가 오른손에 링크가 되도록 하겠습니다.

 

오늘은 '실행' 버튼의 이벤트 핸들러를 만들어 보겠습니다.

 

1
2
3
4
5
on run_btn pressed do
(
    mergeMaxFile fileName #select quiet:true
    $.parent = $'Bip001 R Hand'
)
cs

 

위 내용을 원본 스크립트의 13 ~ 14번 라인 사이에 적어 넣습니다.

 

이제 실행을 하는데 순서는 아래와 같습니다.

 

 

1 '머지 파일 선택' 버튼 클릭

2 머지될 파일을 선택

3 'Open' 버튼 클릭

4 '실행' 버튼 클릭

 

 

위 이미지와 같이 파일이 머지가 됩니다.

추가된 스크립트 3번 라인의 'mergeMaxFile fileName #select quiet:true'에서 '#select'는 머지된 파일의 오브젝트가 머지가 된 후 해당 오브젝트를 선택 상태가 되록합니다.

그래서 4번 라인 '$.parent = $'Bip001 R Hand''을 했을 때 박스의 부모가 오른손이 되는 것입니다.

 

이제 적당히 칼을 손으로 옮겨 놓습니다.

 

 

자 이제 완성입니다.

.

.

뭔가 이상하네요.

분명 머지를 편하게 한다고 했는데 일반적으로 머지하는 것과 비교해 하나도 편한지 모르겠습니다. ㅎㅎㅎ

우리는 여기에서 몇 가지 기능을 추가해서 폴더 머지를 만들어 볼 것입니다.

즉 폴더를 하나 지정해서 그 폴더 안에 있는 파일에 똑같은 머지를 반복한다는 이야기입니다.

애니메이터는 같은 캐릭터(몬스터) 파일이 동작 수만큼 있기 때문에 머지를 하게 되면 수십 내지 수백 개의 파일에 동일한 작업을 하게 되므로 잘 만들어 놓으면 매우 유용합니다.

 

오늘은 여기까지 하고, 다음 시간에는 폴더 머지에 대해 설명하겠습니다.

728x90
반응형