自作ノードのアトリビュートをアトリビュートエディタで表示する時に独自のレイアウトにしたりコントロールを変更・追加したりすることができる。
例としてsineNode.soのアトリビュートエディター内におけるinputアトリビュートのコントロールをスライダーにしてみよう。
global proc AEsineTemplate( string $nodeName )
{
editorTemplate -beginScrollLayout;
editorTemplate -beginLayout "Parameters" -collapse false;
editorTemplate -callCustom "sineInputNew"
"sineInputReplace"
"input";
editorTemplate -endLayout;
editorTemplate -addExtraControls;
editorTemplate -endScrollLayout;
editorTemplate -suppress "caching";
editorTemplate -suppress "nodeState";
}
global proc sineInputNew( string $attrName )
{
floatSliderGrp -label "Input" -field true -min -1.0 -max 1.0 -step 0.1 -value 0.0 inputSliderGrp;
connectControl inputSliderGrp $attrName;
}
global proc sineInputReplace( string $attrName )
{
connectControl inputSliderGrp $attrName;
}