맥스스크립트 기본

Biped 애니메이션의 저장

스크립팅하는애님 2021. 3. 22. 20:59
728x90
반응형

안녕하세요.

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

오늘은 바이패드 애니메이션을 저장하고 불러오는 방법에 대해서 알아보겠습니다.

(이전 시간에 간단히 설명을 했었는데 조금 더 자세한 설명을 하겠습니다.)

 

바이패드를 사용할 것이기 때문에 멋진 바이패드를 하나 만든 후  간단한 애니메이션을 적용하고 시작하겠습니다.

 

 

biped.saveBipFile <biped_ctrl> <file_name> [#saveSubAnimControllers] [#saveMaxObjects] [#saveSelectedMaxObjects node_array] [#saveSelectedSubAnimControllers node_array int_array]

Biped 모션을 파일로 저장합니다.

명령이 꽤 길어 보이네요.

우선 다음과 같이 입력하고 확인하겠습니다.

 

1
biped.saveBipFile $'Bip001'.controller "D:\\aaa.bip" #saveSubAnimControllers #saveMaxObjects
cs

 

실행을 하면 MAXScript Listener에 true 또는 false라고 결과가 출력됩니다.

true는 성공적으로 실행되어 D드라이브 루트 폴더에 'aaa.bip' 파일이 생성되었을 것입니다.

false는 정상적으로 실행을 했지만 파일을 생성하지 못했다는 의미입니다.

'#saveSubAnimControllers #saveMaxObjects'를 사용했지만 바이패드 노드 외의 본이나 더미가 없고 리깅을 위해 사용한 SubAnim이 없기 때문에 사용하지 않아도 무방합니다.

 

사용한 옵션을 확인해 보겠습니다.

biped.saveBipFile : 바이패드의 애니메이션을 저장하겠다는 명령입니다.

<biped_ctrl> : 저장할 애니메이션을 가지고 있는 바이패드 컨트롤러를 지정합니다.

<file_name> : 애니메이션을 저장할 위치와 파일명을 지정합니다.

[#saveSubAnimControllers] : List controllers를 저장합니다.

[#saveMaxObjects] : MAX objects를 저장합니다.

[#saveSelectedSubAnimControllers node_array int_array] : #saveSubAnimControllers를 사용하여 원하는 List controllers저장할 때,Biped 노드 배열과 해당 하위 애니메이션 정수 배열을(0 = 위치, 1 = 회전, 2 = 스케일) 적어야 합니다.

[#saveSelectedMaxObjects node_array] :  #saveSubAnimControllers를 사용하여 원하는 노드를 저장할 때, 원하는 노드의 이름을 문자 배열 형식으로 적어야 합니다.

 

biped.saveBipFileSegment <biped_ctrl> <file_name> <StartSeg> <EndSeg> [#keyPerFrame] [#saveSubAnimControllers] [#saveMaxObjects] [#saveSelectedMaxObjects node_array] [#saveSelectedSubAnimControllers node_array int_array ]

Biped 모션의 일부 구간을 파일로 저장합니다.

위의 'Biped.saveBipFile'보다 더 명령이 기네요.

다음과 같이 입력하고 결과를 보며 확인해 보겠습니다.

 

1
biped.saveBipFileSegment $'Bip001'.controller "D:\\aaa2.bip" 5 10 #keyPerFrame #saveSubAnimControllers #saveMaxObjects
cs

 

다른 것을 보자면 생성될 파일이 D드라이에 'aaa2.bip'로 저장이 됩니다.

그리고 현재 애니메이션의 5 프레임부터 10 프레임 사이를 저장하고, '#keyPerFrame'을 사용하여 매 프레임마다 키값이 생기도록 했습니다.

 

biped.saveBipFileSegment : 바이패드의 애니메이션 구간을 저장하겠다는 명령입니다.

<StartSeg> : 시작 프레임을 정수 값으로 입력합니다.

<EndSeg> : 끝 프레임을 정수 값으로 입력합니다.

[#keyPerFrame] : 각각의 노드에 매 프레임 키를 생성합니다.

나머지 옵션은  'biped.saveBipFile'와 동일하기 때문에 생략하겠습니다.

 

옵션 부분은 제가 잘 사용하지 않는것이라 설명이 틀릴 수 있습니다.

궁금하신 분들은 따로 맥스 헬프 사이트나, 책, 유튜브 등에서 확인하시길 바랍니다.

 

다음 시간에는 저장된 파일을 이용해서 저장한 파일을 불러오는 것에 대해 알아보겠습니다.

다음 시간에 뵐게요.

728x90
반응형