전체 글 226

Callback(5) : Animation / Direct3D / FileLink Device Notification

안녕하세요. 애니메이터가 들려주는 맥스 스크립트의 스크립팅하는 애님입니다. 오늘도 callback의 이벤트 명에 대해서 이야기하겠습니다. (callback의 이벤트는 수가 상당히 많기 때문에 한동안 callback에 대해서 이야기하도록 합니다.) Animation Notifications #animateOff: undefined 애니메이션(Auto Key)버튼이 꺼지면 전달됩니다. #animateOn: undefined 애니메이션(Auto Key)버튼이 켜 지면 전달됩니다. (위 두가지 내용은 이전에 작업해본 내용입니다. Notifications값이 undefined인 것을 보니 다른 정보 값은 없습니다.) #animationRangeChange: undefined 애니메이션 범위가 변경되었을 때 전송됩..

Callback(4) :콜백 이벤트 명과 notificationParam 반환(ActionItem)

안녕하세요. 애니메이터가 들려주는 맥스 스크립트의 스크립팅하는 애님입니다. 계속해서 callback의 형 이름에 대해서 이야기하겠습니다. (이라고 설명이 나와서 '형 이름'이라고 적었는데 정확히는 '이벤트명'이라고 나오네요. 이후에는 '이벤트명'이라고 하겠습니다.) Callback Event Names and notificationParam Return Values callback 이벤트명과 notificationParam값을 되돌려줍니다. 만약 notificationParam값이 undefined로 되돌려진다면 값이 없다는 의미입니다. (callback은 맥스의 버전이 올라갈 때마다 새롭게 추가되고 있다고 하니 제가 설명하는 것 중에는 없는 것도 있을 수 있습니다. 저는 2020 버전을 기준으로 진행하..

Callback(3) : 확인

안녕하세요. 애니메이터가 들려주는 맥스 스크립트의 스크립팅하는 애님입니다. 오늘도 지난번에 이어 Callback에 대해 설명을 하겠습니다. Inspecting Callbacks 지난번에 callback을 삭제하는 것에 대해 공부를 했는데 삭제가 정말로 잘 이루어졌는지 혹은 현재 실행 중인 callback이 어떤 것이 있는지 확인하는 방법이 궁금할 수 있습니다. callback 삭제 여부를 확인하는 방법은 callbacks.show() 를 사용합니다. MaxScript Editor를 열고 다음과 같이 입력한 다음 실행해 봅시다. 1 2 3 4 5 6 7 8 9 10 11 12 fn messgebox_fn = ( messagebox "animation On" ) fn messgebox2_fn = ( mess..

Callback(2) : 삭제

안녕하세요. 애니메이터가 들려주는 맥스 스크립트의 스크립팅하는 애님입니다. 지난번에 이어 Callback에 대해 설명을 하겠습니다. 오늘 배워볼 내용은 실행된 Callback을 삭제하는 방법입니다. Callback이 자동으로 실행되는것은 좋은데 원치 않는 경우에도 실행이 되어 반대로 번거로운 경우가 종종 발생합니다. 이럴 때는 실행된 Callback을 삭제해야 하는데요. 다음과 같은 명령어로 삭제를 할 수 있습니다. Removing Callbacks callbacks.removeScripts [] [id:] callbacks.removeScripts는 callback을 removeScripts명령을 사용하여 지운다는 의미입니다.[]은 callback을 생성할 때 사용했던 callback의 형태명 입니다...

Callback(1) : 소개와 추가

안녕하세요. 애니메이터가 들려주는 맥스 스크립트의 스크립팅하는 애님입니다. 정말 오래간만에 글을 올립니다. 이런저런 핑곗거리는 많겠지만, 그냥 쉬다 보니 계속 쉬게 되었습니다. 잡설은 넘어가고 본론으로 들어가도록 하죠. 맥스로 작업을 하다보면 가끔 자동으로 어떤 행동이 실행됐으면 좋겠다는 생각이 들 때가 있습니다. 예를 들면 새 맥스파일을 열었을 때 자동으로 뷰포트 레이아웃이 4개로 정리된다거나 혹은 헬프 파일을 숨겨주는 것처럼 말입니다. 이렇게 어떤 이벤트가 발생하면 이것을 감지해서 자동으로 실행하는 명령어를 Callback이라고 합니다. 맥스에는 자동으로 감지할 수 있는 이벤트의 수가 많기 때문에 이 Callback의 종류도 상당히 많습니다. 자동으로 무언가를 실행하기 때문에 상당히 편할 것 같긴 하..

Wire Parameter(2)

안녕하세요. 애니메이터가 들려주는 맥스 스크립트의 스크립팅하는 애님입니다. 오늘도 Wire Parameter에 대해 이야기하겠습니다. 지난번과 동일하게 Point001과 Point002를 만들고 Wire Parameter로 연결합니다. 그럼 연결되었는 Wire Parameter를 끊어 보겠습니다. paramWire.disconnect 여기서 사용되는 명령은 paramWire.disconnect입니다. paramWire.disconnect controller controller : Wire Parameter로 연결된 Controller입니다. 다음과 같이 MAXScript에 입력하고 실행하여 봅시다. 1 paramWire.disconnect $'Point001'.rotation.controller[3] c..

Wire Parameter(1)

안녕하세요. 애니메이터가 들려주는 맥스 스크립트의 스크립팅하는 애님입니다. 오늘 할 이야기는 Wire Parameter입니다. Wire Parameter는 리깅 작업할 때 자주 쓰이는 기능인데 프레임마다 실시간으로 계산을 해야 하기 때문에 뷰포트상에서 돌리기에는 상당히(?) 무거운 기능이지만, 그렇다고 안 쓰자니 너무 편리한 기능이라 정말 난감합니다. ㅎㅎ 랜더링으로 출력된 동영상이 최종 데이터라면 그런 걱정은 없겠지만요. 다음과 같이 Point 두개를 만들겠습니다. Point001은 월드축 Position 0, 0, 0에 위치합니다.(위쪽의 Point) Point002는 월드축 Position 0, 0, -30에 위치합니다.(아래쪽의 Point) 두 Point의 축은 위 이미지와 같습니다.(Top 뷰에..

Constraints - Path(5)

안녕하세요. 애니메이터가 들려주는 맥스 스크립트의 스크립팅하는 애님입니다. 오늘은 Path Constraint를 마무리하도록 하겠습니다. 우선 이전 시간과 동일하게 작은 Box001과, Box001이 따라서 이동할 Path인 Line001을 만들었습니다. 그리고 Box001의 Position Controller에 Path Constraint을 적용합니다. 그 후에 Box001의 Path Constraint에 Line001을 추가했습니다. Axis 오브젝트가 라인을 따라 이동할 축을 결정하거나 변경합니다. .axis Integer default: 0 integer형 값을 가지며, 0을 기본값으로 합니다. x : 0 y : 1 z : 2 사용방법은 다음과 같습니다. 1 2 $'Box001'.pos.contr..

Constraints - Path(4)

안녕하세요. 애니메이터가 들려주는 맥스 스크립트의 스크립팅하는 애님입니다. 오늘도 이야기할 내용은 Path Constraint입니다. 우선 이전 시간과 동일하게 작은 Box001과, Box001이 따라서 이동할 Path인 Line001을 만들었습니다. 그리고 Box001의 Position Controller에 Path Constraint을 적용합니다. 그 후에 Box001의 Path Constraint에 Line001을 추가했습니다. Path Options - constant Velocity 현재 경로를 따라가는 속도를 결정하는 방법을 확인하거나 변경할 수 있습니다. .constantVel Boolean default: false -- alias: Constant_Velocity 라인을 따라 버텍스의 위..

Constraints - Path(3)

안녕하세요. 애니메이터가 들려주는 맥스 스크립트의 스크립팅하는 애님입니다. 오늘도 이야기할 내용은 Path Constraint입니다. 우선 이전 시간과 동일하게 작은 Box001과, Box001이 따라서 이동할 Path인 Line001을 만들었습니다. 그리고 Box001의 Position Controller에 Path Constraint을 적용합니다. 그 후에 Box001의 Path Constraint에 Line001을 추가했습니다. Path Options - Bank Amount 이전 시간에 이야기했던 Bank의 가중치 값을 구하거나 정합니다. . bankAmount Float default: 0.5 -- animatable, alias: Bank_Amount 값이 양수인지 음수 인지에 따라 방향을 정..