장면의 오브젝트에 기존 애니메이션 제어기 위에 적용할 수 있는 MCG 제어기를 만들고 해당 출력을 입력으로 사용할 수 있습니다. 이 방법은 맨 위 제어기를 먼저 적용한 다음 해당 입력에서 추가 제어기를 적용하는 워크플로우를 대체합니다.
이렇게 하려면 그래프에 하위 제어기의 출력을 받는 매개변수 노드가 있어야 합니다. 그런 다음 사용자 정의 UI 특성을 편집하여 copy 이벤트에 대한 처리기를 추가합니다.
또한 setValue val commit 이벤트에 대한 처리기를 추가할 수 있습니다. 이 처리기는 하위 제어기의 값을 통과하고 여전히 활성 제어기인 것처럼 하위 제어기와 상호 작용할 수 있습니다. 예를 들어 표준 위치 제어기 위에 적용되는 MCG 제어기를 만들어 위치를 클램프하고 선택 및 이동 도구를 사용하여 뷰포트에서 오브젝트를 이동할 수도 있습니다.
on copy source do
(
--Grab the current controller and use its value to drive this controller.
try
(
this.SubController.controller = source
)
catch
(
this.SubController = source
)
return true
)
on setValue val relVal commit do
(
--Set the value of the subController.
--This controller acts like a pass-through.
try
(
SubController.value = val
)
catch
(
SubController = val
)
)
일부 제어기 유형에는 제어기 및 값 특성이 있지만 일부 유형에서는 제어기 자체를 직접 설정합니다. 위의 경우처럼 try/catch를 사용하거나 특정 매개변수 유형에 적합한 항목을 사용하기만 하면 됩니다.