スクリプト Helper プラグインが拡張できるのは、既存の Helper プラグインだけです。スクリプト Helper プラグインを宣言するには <superclass>
を helper
と指定します。create
ツールが指定された場合、delegate の create ツールが無効になります。
スクリプト Helper プラグインの例は、「スクリプト プラグイン メソッド」の Three Lights の例を参照してください。
イベント ハンドラ
on getDisplayMesh do ....
このイベント ハンドラは スクリプト カメラとヘルパーで、3ds Max 7 以降で使用でき、開発者は代理オブジェクトのビューポート表示メッシュを、カスタム表示メッシュに置き換えることができます。
このハンドラはオプションです。
下の例は、メッシュが実際に変更された場合に限り、ハンドラでそのメッシュを更新する方法を示しています。
例:
plugin Helper HelperTest_DisplayMesh name:"HelperTest" classID:#(0x47db14fe, 0x4e9b5f90) category:"Standard" extends:dummy ( local lastSize, meshObj parameters pblock rollout:params ( size type:#float animatable:true ui:amount default:40.0 ) rollout params "HelperTest Parameters" ( Spinner amount "Size:" range:[0, 1e9, 40] ) on getDisplayMesh do ( if (meshObj == undefined) do ( meshObj = createInstance box length:size \ width:size height:size mapCoords:false \ lastSize = size ) if size != lastSize do ( meshObj.length = meshObj.width = meshObj.height = size \ lastSize = size ) meshObj.mesh ) tool create ( on mousePoint click do ( nodeTM.translation = gridPoint;#stop ) ) )
on useWireColor do ....
このオプションのイベント ハンドラーを使用すると、開発者はビューポートでのオブジェクトの描画にノードのワイヤ カラーを使用するか、指定のオブジェクト タイプに対応した UI カラー(Helper にはダミー オブジェクト)を使用するかを指定できます。このハンドラが true を返す場合は、ノードのワイヤ カラーが使用されます。 false を返す場合は、オブジェクト タイプの UI カラーが使用されます。イベント ハンドラを指定しない場合は、ワイヤ カラーが使用されます。getDisplayMesh
ハンドラを指定した場合に限って、このハンドラを使用できます。3ds Max 8 以降 で使用可能です。