一般イベント コールバック機能

 

   

コールバック通知 - クイック ナビゲーション

MAXScript では、3ds Max でサポートされているすべての通知イベント(プレ/ポスト シーン ファイルを開く、新規、リセット、シーン ファイルの保存、プレ/ポスト レンダリング、選択の変更など)に対し、コールバック スクリプトを登録することができます。

1 つの通知イベントに対し、任意の数のコールバック スクリプトを指定できます。

コールバック スクリプトは、ID の付いたセットとしてまとめることができ、個々に、または ID を付けたセット全体を削除することができます。

また、コールバック スクリプトは persistent として指定できるため、現在開いているファイルとともに保存およびロードすることができます。

トピック ナビゲーション  

コールバックの追加

コールバックの削除

コールバックの検査

コールバックに関する補足情報

ActionItem の通知

アニメーションの通知

レンダリング ダイアログ ボックスとレンダラー プラグインの通知

イメージ ビューワ表示の通知

レンダラーの通知

FileLink の通知

ファイルの通知

外部参照の通知

レイヤ システムの通知

操作モードの通知

モディファイヤ パネルの通知

モディファイヤの通知

マテリアル ライブラリの通知

マテリアルの通知

ノード関連の通知

プラグインの通知

システムの通知

ラジオシティの通知

システムを元に戻す場合の通知

スケマティク ビューの通知

名前付き選択セットの通知

Direct3D デバイスの通知

その他の通知

コールバックの追加

コールバックを追加するには、以下の構文を使用します。

callbacks.addScript <callback_type_name> (<script_string> | <script_stringstream> | fileName:<filename_string>) [id:<name>] [persistent:<boolean>] 		

このメソッドは、新規のコールバック スクリプトを登録するのに使用します。最初の引数で、このスクリプトが関連付けられている通知イベントのタイプが指定されている必要があります。以下に有効な callback_type_name 値を示します。

スクリプトは、実行するスクリプトのテキストを含む String 値または StringStream 値として、または fileName: キーワード引数として供給されます。キーワード引数の場合は、イベント通知コールバックが発生するたびに、名前を付けたファイルがロードおよび実行されます。直接文字列を指定したり、 fileName: を指定したりできますが、両方を指定することはできません。

オプションの id: パラメータを使用して、単独またはグループのコールバックに固有の名前でタグを付け、グループ内のすべてのコールバックをその他のコールバック(他のスクリプト ツールで登録したコールバックなど)に干渉することなく削除できます。

オプションの persistent: パラメータを使用して、スクリプトを現在開いているシーン ファイルに保存するか、ファイルの開閉操作に関係なく、常に実行できるグローバル コールバック スクリプトとして使用するかどうかを指定できます。 true 値の場合、スクリプトは現在のファイルに保存され、このファイルを開くたびにコールバック用にロードおよび登録されます。persistent コールバック スクリプトは、新規のファイルをロードしたりリセットを実行すると常に削除されるため、あるファイルの persistent スクリプトが他のファイルに間違ってコピーされることはありません。このパラメータの既定値は false です。つまり、このスクリプトはグローバル スクリプトであり、persistent ではありません。

例:

callbacks.addScript #preRender "setUpRenderGeom()" id:#jbwRender

レンダリングを実行する直前に呼び出される新規のコールバック スクリプトを登録します。このスクリプトにより関数が呼び出されます(この関数はあらかじめ設定されている必要があります)。スクリプトには固有の ID が割り当てられ、削除時の選択が可能になります。

コールバックの削除

callbacks.removeScripts [<callback_type_name>] [id:<name>] 	 

このメソッドは、1 つまたは複数のコールバック スクリプトを登録解除および削除します。

コールバック イベント タイプの名前を指定すると、そのイベント タイプに対するすべてのコールバック スクリプトが削除されます。

id: を指定するだけで、その ID を持つすべてのイベント内のコールバック スクリプトが削除されます。

上記の両方を指定すると、指定したイベント タイプと ID に制限して削除することができます。

   

コールバックの検査

callbacks.show [<callback_type_name>] [id:<name>] [to:<stream>] 

このメソッドは、[リスナー](Listener)ウィンドウに現在のコールバック スクリプトをリストします。

3ds Max 2009 以降 でオプションのコールバック タイプ名引数を指定した場合、そのタイプのコールバックだけが表示されます。

オプション キーワード引数 id: を指定した場合、その ID を持つコールバックだけが表示されます。

タイプ名と ID の両方を指定した場合、指定された ID を持つそのタイプのコールバックだけが表示されます。

3ds Max 2018.4 Update の新機能オプションのキーワード引数 to: を指定すると、メソッドからの出力は指定されたストリームに送信されます。

   

callbacks.broadcastCallback <callback_type_name> 

このメソッドは、特定のイベントのシミュレーション方法とそのイベントを実行するためのすべてのコールバック スクリプトを提供します。

3ds Max 内では、 #preRenderFrame および #postRenderFrame コールバックはレンダラーによってのみ呼び出すことができます。このメソッドを使用してこれらのコールバックを呼び出すことはできません。

   

コールバックに関する補足情報

callbacks.notificationParam() 

このメソッドは、コールバックに追加の情報を提供するためにコールバック スクリプト内で呼び出すことができます。このメソッドによって返される値は、コールバックのタイプに応じて異なります。コールバックの追加情報がない場合は、'undefined' という値が返されます。

例:

--Remove any existing callbacks with this ID.
callbacks.removeScripts id:#MXSHelp
--Add a new callback script which will call
--callbacks.notificationParam() before selected nodes are deleted
--and thus will print the deleted objects to the Listener:
callbacks.addScript #selectedNodesPreDelete" print (callbacks.notificationParam())" id:#MXSHelp

コールバック イベント名と notificationParam の戻り値:

サポートされているすべてのコールバック イベント名と、通常返される callbacks.notificationParam() の値を次に示します。ブロードキャストが生成された方法によっては、ここに示した値の代わりに 'undefined' が返される場合があります。

ActionItem の通知:

#actionItemExecutionEnded: array

アクション項目の実行が終了したときに送られます。

callbacks.notificationParam() を呼び出すと、2 要素の配列が戻されます。

  1. アクション項目の名前です。
  2. アクション項目の ID です。

#actionItemExecutionStarted: array

アクション項目の実行が開始したときに送られます。

callbacks.notificationParam() を呼び出すと、2 要素の配列が戻されます。

  1. アクション項目の名前です。
  2. アクション項目の ID です。

#actionItemHotKeyPostExecute: array

キーボード ショートカット(ホットキー)を使用してアクション項目が実行された後に送られます。

callbacks.notificationParam() を呼び出すと、2 要素の配列が戻されます。

  1. アクション項目の名前です。
  2. アクション項目の ID です。

#actionItemHotkeyPreExecute: array

キーボード ショートカット(ホットキー)を使用してアクション項目が実行される前に送られます。

callbacks.notificationParam() を呼び出すと、2 要素の配列が戻されます。

  1. アクション項目の名前です。
  2. アクション項目の ID です。

アニメーションの通知:

#animateOff: undefined 

[アニメート](Animate)ボタンがオフになったときに送られます。

   

#animateOn: undefined 

[アニメート](Animate)ボタンがオンになったときに送られます。

   

#animationRangeChange: undefined 

アニメーション範囲が変更されたときに送信されます。

   

#animLayersDisabled: array of nodes 

シーン内の一部のノードでアニメーション レイヤが無効になった直後に送られます。

コールバック関数内で callbacks.notificationParam() を呼び出すと、ノードの配列が返されます。

   

#animLayersEnabled: array of nodes 

シーン内の一部のノードでアニメーション レイヤが有効になった直後に送られます。

コールバック関数内で callbacks.notificationParam() を呼び出すと、ノードの配列が返されます。

   

レンダリング ダイアログ ボックスとレンダラー プラグインの通知:

#tabbedDialogCreated: #(integer, integer) 

タブ化されたレンダリング ダイアログ ボックスが作成された後に送られます。

   

#tabbedDialogDeleted: #(integer, integer) 

タブ化されたレンダリング ダイアログ ボックスが削除された後に送られます。

   

#renderParamsChanged: undefined 

共通のレンダラー パラメータが変更されるたびに送られます。

   

#preRendererChange: undefined 

現在のレンダラーを変更したり、レンダラーのタイプのいずれかを変更する前に送られます。

   

#postRendererChange: undefined 

現在のレンダラーを変更したり、レンダラーのタイプのいずれかを変更した後に送られます。

   

イメージ ビューワ表示の通知:

#imageViewerUpdate: IVFB Interface 

カスタム ロールアウトの UI を更新するよう要求するために、イメージ ビューア(またはレンダリングされたフレーム ウィンドウ)から送られます。 callbacks.notificationParam() への呼び出しで、IVFB インタフェースが返されます。これを使用して、仮想フレーム バッファ(別名: レンダリング フレーム ウィンドウ)にロールアウトを追加できます。

   

#preImageViewerDisplay: IVFB Interface 

イメージ ビューワが作成された後、表示される前に送られます。 callbacks.notificationParam() への呼び出しで、IVFB インタフェースが返されます。これを使用して、仮想フレーム バッファ(別名: レンダリング フレーム ウィンドウ)にロールアウトを追加できます。

3ds Max 2009 以降 で使用可能です。

   

#postImageViewerDisplay: IVFB Interface 

イメージ ビューワが表示された後に送られます。 callbacks.notificationParam() への呼び出しで、IVFB インタフェースが返されます。これを使用して、仮想フレーム バッファ(別名: レンダリング フレーム ウィンドウ)にロールアウトを追加できます。

3ds Max 2009 以降 で使用可能です。

   

レンダラーの通知:

#preRender: Array 

レンダリングを開始する前に送られます。この通知は、レンダラーによりレンダリング インスタンス オブジェクトが作成される前に送られます。つまり、ノードや他のオブジェクトをこのイベントへの応答として作成することができます。複数のフレームをレンダリングする場合、このイベントは最初のレンダリングが始まる前に 1 度だけ送られ、フレームごとに送られることはありません。 #preRender コールバックでレンダラーのパラメータ(高さ、幅、エイリアシングなど)を変更して、現在のレンダラーに反映することはできません。これらのパラメータは、3ds Max 内部で既に設定されているので、次のレンダラーのセッションが始まるまで変更は反映されません。

パラメータ定義についての詳細は、SDK ヘルプ ファイルの RendParams クラスを参照してください。

1 - 名前 - rpar->rendType

2 - ブール値 - rpar->isNetRender

3 - ブール値 - rpar->fieldRender

4 - 整数 - rpar->fieldOrder

5 - 時間 - rpar->frameDur

6 - ブール値 - rpar->colorCheck

7 - 整数 - rpar->vidCorrectMethod

8 - 整数 - rpar->ntscPAL

9 - ブール値 - rpar->superBlack

10 - 整数 - rpar->sbThresh

11 - ブール値 - rpar->rendHidden

12 - ブール値 - rpar->force2Side

13 - ブール値 - rpar->inMtlEdit

14 - 浮動小数点 - rpar->mtlEditTile

15 - ブール値 - rpar->mtlEditAA

16 - ブール値 - rpar->multiThread

17 - ブール値 - rpar->useEnvironAlpha

18 - ブール値 - rpar->dontAntialiasBG

19 - ブール値 - rpar->useDisplacement

20 - ブール値 - rpar->useRadiosity

21 - ブール値 - rpar->computeRadiosity

22 - TextureMap - rpar->envMap

23 - 時間 - rpar->firstFrame

24 - 整数 - rpar->scanBandHeight

25 - 整数 - rpar->extraFlags

26 - ポイント 2 - rpar->width、rpar->height

27 - ブール値 - rpar->filterBG

28 - ブール値 - rpar->alphaOutOnAdditive

   

#postRender: undefined 

レンダリングが完了した後に送られます。この通知は、レンダラーによりレンダリング インスタンス オブジェクトが削除される前に送られます。つまり、ノードや他のオブジェクトをこのイベントへの応答として作成することができます。複数のフレームをレンダリングする場合、このイベントはすべてのレンダリング終了後に 1 度だけ送られ、フレームごとに送られることはありません。

   

#preRenderEval: time 

レンダラーがオブジェクトの評価を開始する直前に送られます。

レンダリングされた時間が返されます。

   

#preRenderFrame: Array 

レンダラーによって各フレームがレンダリングされる直前に送られます。この通知は、レンダラーがシーン ジオメトリのスナップショットを撮った直後に送られます。このコールバックの呼び出し時にシーンを修正することはできません。レンダラーはすべてのオブジェクト インスタンスに対して GetRenderMesh() を呼び出し済みで、マテリアルおよびライトは既に更新されています。レンダリングされたものを修正しない場合は、このコールバックを使用してもかまいません。レンダリングされる現在のフレームは、MAXScript の currentTime コンテキストおよびシステム グローバルに設定されます。そのため、その他のシーン オブジェクト プロパティへの参照は、レンダリング中のフレームの時間で自動的に決定されます。レンダラーがマテリアル エディタのサンプルの球を更新するために呼び出された場合、この通知は送られません。レンダリングを出力中の場合だけ送られます。

   

#postRenderFrame: Array 

レンダラーによって各フレームがレンダリングされる直後に送られます。レンダリングされる現在のフレームは、MAXScript の currentTime コンテキストおよびシステム グローバルに設定されます。そのため、その他のシーン オブジェクト プロパティへの参照は、レンダリング中のフレームの時間で自動的に決定されます。レンダラーがマテリアル エディタのサンプルの球を更新するために呼び出された場合、この通知は送られません。レンダリングを出力中の場合だけ送られます。

22 個の要素の配列が返されます。パラメータ定義についての詳細は、SDK ヘルプ ファイルの RenderGlobalContext クラスを参照してください。

1 - 整数 - rendParams->projType

2 - ポイント 2 - rendParams->devWidth、rendParams->devHeight

3 - ポイント 2 - rendParams->xscale、rendParams->yscale

4 - ポイント 2 - rendParams->xc、rendParams->yc

5 - ブール値 - rendParams->antialias

6 - Matrix3 - rendParams->camToWorld

7 - Matrix3 - rendParams->worldToCam

8 - ポイント 2 - rendParams->nearRange、rendParams->farRange

9 - 浮動小数点 - rendParams->devAspect

10 - 浮動小数点 - rendParams->frameDur

11 - TextureMap - rendParams->envMap

12 - カラー - rendParams->globalLightLevel

13 - 時間 - rendParams->time

14 - ブール値 - rendParams->wireMode

15 - 浮動小数点 - rendParams->wire_thick

16 - ブール値 - rendParams->force2Side

17 - ブール値 - rendParams->inMtlEdit

18 - ブール値 - rendParams->fieldRender

19 - ブール値 - rendParams->first_field

20 - ブール値 - rendParams->field_order

21 - ブール値 - rendParams->objMotBlur

22 - 整数 - rendParams->nBlurFrames

   

#beginRenderingReflectRefractMap: undefined 

レンダリングの反射および屈折マップを用意する前に送られます。

   

#beginRenderingActualFrame: undefined 

レンダリング設定後、実際のレンダリングを開始する直前に送られます。

   

#beginRenderingTonemappingImage: undefined 

Tonemapping イメージをレンダリングする前に送られます。

警告:

#preRenderFrame #postRenderFrame 、またはすべての #beginRendering* コールバック内にあるオブジェクトのメッシュは変更できません(特にメッシュがアニメートされていない場合)。レンダラーがすでに元のメッシュを評価しており、そのメッシュに対するポインタを保持しているからです。オブジェクトのメッシュを変更すると古いメッシュは削除されますが、レンダラーはそのことを認識していません。削除されてしまったメッシュをレンダリングしようとするとクラッシュします。

例:

#preRender および #postRender のコールバックを使用した例については、以下を参照してください。

チュートリアル - レンダリング時のオブジェクトの変更

FileLink の通知:

#fileLinkPreAttach: undefined 

ファイル リンクをアタッチする直前に送られます。

   

#fileLinkPostAttach: undefined 

ファイル リンクをアタッチした直後に送られます。

   

#fileLinkPreBind: undefined 

ファイル リンクをバインドする直前に送られます。

   

#fileLinkPostBind: undefined 

ファイル リンクをバインドした直後に送られます。

   

#fileLinkPreDetatch: undefined 

ファイル リンクをデタッチする直前に送られます。

   

#fileLinkPostDetatch: undefined 

ファイル リンクをデタッチした直後に送られます。

   

#fileLinkPreReload: undefined 

ファイル リンクを再ロードする直前に送られます。

   

#fileLinkPostReload: undefined 

ファイル リンクを再ロードした直後に送られます。

   

#filelinkPostReloadPrePrune: undefined 

リロードする新しいオブジェクトがすべて作成されたが、オブジェクトがまだ何も削除されていない時点で送られます。

   

ファイルの通知:

#filePreOpen:(integer | undefined) 

新規ファイルを開く前に送られます。

callbacks.notificationParam() を呼び出すと、レンダリング プリセット ファイルが開いている場合は整数の 2、そうでない場合は undefined が返されます。

   

#filePostOpen: (integer |undefined) 

新規ファイルを開いた後に送られます。

callbacks.notificationParam() を呼び出すと、レンダリング プリセット ファイルが開いている場合は整数の 2、そうでない場合は undefined が返されます。

   

#filePreOpenProcess: #(integer, string) 

ファイルのオープン処理が開始される前に送信されます。

callbacks.notificationParam() を呼び出すと、2 要素の配列が戻されます。

要素 1 は、以下の値になります。

通常のファイル ロードを実行する場合は 1。

 [編集] > [一時保存を呼び出し](Edit>Fetch)を実行する場合は 2。

要素 2 は、ロードされているシーン ファイル名です。

例:

callbacks.removeScripts id:#testCallback
callbacks.addScript #filePreOpenProcess "print (callbacks.notificationParam())" id:#testCallback

一時保存を呼び出しを実行 - コールバックによる出力

2
"C:\Documents and Settings\user\My Documents\3dsmax\autoback\maxhold.mx"

   

#fileOpenFailed: integer 

ファイルのオープンに失敗した後に送られます。

callbacks.notificationParam() を呼び出すと、ファイル タイプを示す整数が返されます。0 は 3ds Max ファイル、1 はマテリアル ライブラリです。

   

#filePostOpenProcess: undefined 

ファイルを開くプロセスが終了した後で送信されます。

   

#filePreSave: string 

ファイルを保存する前に送られます。

callbacks.notificationParam() を呼び出すと、ファイル名を含む文字列が返されます。

   

#filePostSave: string 

ファイルを保存した後に送られます。

callbacks.notificationParam() を呼び出すと、ファイル名を含む文字列が返されます。

   

#filePreSaveProcess: #(integer, string) 

保存処理が開始される前に送信されます。

callbacks.notificationParam() を呼び出すと、2 要素の配列が返されます。

要素 1 は、以下の値になります。

通常のファイルの保存を実行する場合は 1。

[編集] > [一時保存](Edit>Hold)を実行する場合は 2。

自動バックアップを実行する場合は 3。

要素 2 は、保存されているシーン ファイル名です。

例:

以下のコードを評価します。

callbacks.removeScripts id:#testCallback
callbacks.addScript #filePreSaveProcess "print (callbacks.notificationParam())" id:#testCallback

ファイルを「TestingCallback.max」に保存します。コールバックの出力は次のようになります。

1
"C:\Documents and Settings\user\My Documents\3dsmax\scenes\testingcallback.max"

この時点で[編集] > [一時保存を呼び出し](Edit>Fetch)を実行します。コールバックの出力は次のようになります。

2
"C:\Documents and Settings\user\My Documents\3dsmax\autoback\maxhold.mx"

自動バックアップの作動を待機します。コールバックの出力は次のようになります。

3
"C:\Documents and Settings\user\My Documents\3dsmax\autoback\AutoBackup01.max"

   

#filePostSaveProcess: #(integer, string) 

保存処理が完了した後に送信されます。

callbacks.notificationParam() を呼び出すと、 #filePreSaveProcess と同じ 2 要素の配列が返されます。上述の説明を参照してください。

   

#filePreSaveOld: undefined 

古いバージョンのファイルが保存される前に送られます。

   

#filePostSaveOld: undefined 

古いバージョンのファイルが保存された後で送られます。

   

#filePreMerge: integer 

ファイルを結合する前に送られます。

callbacks.notificationParam() を呼び出すと、オブジェクトまたはシーンの外部参照が合成された場合は整数の 1 が、そうでない場合は undefined が返されます。

   

#filePostMerge: integer 

ファイルを結合した後に送られます。

callbacks.notificationParam() を呼び出すと、オブジェクトまたはシーンの外部参照が合成された場合は整数の 1 が、そうでない場合は undefined が返されます。

   

#filePostMerge2: #(integer, integer) 

ファイルが正常に結合された後に、#filePostMerge の直後に送られます。

callbacks.notificationParam() を呼び出すと、2 つの要素を含む配列が返されます。最初の要素はファイルを保存するバージョンで、2 番目の要素はファイルに名前を付けて保存するバージョンです。

たとえば、3ds Max 2017 ([ファイルの種類](Save as Type)が 3ds Max 2016 に設定されていた)で保存されたファイルをロードする場合、値は 19000 (MAX_RELEASE_R19)および 18000 (MAX_RELEASE_R189)になります。

   

#filePostMergeProcess: undefined 

マージ プロセスが終了した後で送信されます。

   

#preImport: undefined 

ファイルを読み込む前に送られます。

   

#postImport: filename 

ファイルを読み込んだ後に送られます。

callbacks.notificationParam() を呼び出すと、読み込み中のファイルの名前が返されます。3ds Max 2017 以降で使用可能です。

   

#importFailed: undefined 

読み込みに失敗した場合に送られます。

   

#preExport: undefined 

ファイルを書き出す前に送られます。

   

#postExport: filename 

ファイルを書き出した後に送られます。

callbacks.notificationParam() を呼び出すと、書き出し中のファイルの名前が返されます。3ds Max 2017 以降で使用可能です。

   

#exportFailed: undefined 

書き出しに失敗した場合に送られます。

   

外部参照の通知:

#objectXrefPreMerge: undefined 

外部参照のロード(通常は[合成](Merge)通知の周辺)

   

#objectXrefPostMerge: undefined 

外部参照のロード(通常は[合成](Merge)通知の周辺)

   

#sceneXrefPreMerge: undefined 

外部参照のロード(通常は[合成](Merge)通知の周辺)

   

#sceneXrefPostMerge: undefined 

外部参照のロード(通常は[合成](Merge)通知の周辺)

   

レイヤ システムの通知:

#layerCreated: BaseLayer (reftarg) 

レイヤ作成後に送られます。

callbacks.notificationParam() を呼び出すと、レイヤの ReferenceTarget が返されます。

注: #layerCreated には既知の問題があります。オブジェクトが合成されるかオブジェクトの外部参照が行われたのに、これらのアクションが #layerCreated イベントにブロードキャストされなかった場合に、レイヤが作成されてしまいます。

   

#layerDeleted: BaseLayer (reftarg) 

レイヤが削除される前に送られます。 callbacks.notificationParam() によってレイヤが返されます。

   

#layerParentChanged: #(BaseLayer, BaseLayer) 

レイヤの親が変更された後に送られます。

callbacks.notificationParam() を呼び出すと、2 つの要素(新しい親と古い親)を含む配列が返されます。

   

#nodeLayerChanged: #(node, BaseLayer, BaseLayer) 

新しいレイヤ上にノードが配置された後で送られます。 callbacks.notificationParam() によって、ノード、古いレイヤ、新しいレイヤという 3 つの要素を含む配列が返されます。

   

操作モードの通知:

   

#manipulateModeOn: undefined 

操作モードになったときに送られます。

   

#manipulateModeOff: undefined 

操作モードが終了したときに送られます。

モディファイヤ パネルの通知:

#modPanelObjPreChange: undefined 

[修正](Modify)パネル内で現在の編集オブジェクトが変更される直前に送られます。

   

#modPanelObjPostChange: undefined 

[修正](Modify)パネル内で現在の編集オブジェクトが変更された直後に送られます。

   

#modPanelSelChanged: undefined 

[修正](Modify)パネルが選択されたか、またはシーンで新しく選択が行われたために、[修正](Modify)パネルが新しい選択上で開いた場合に送られます。通知はパネルの再描画の直前に選択が行われた後に発生し、パネルの状態は上書きされることなくコールバック関数によって修正できます。

   

#ModPanelSubObjectLevelChanged: #(newSOlevelIndex, oldSOlevelIndex) 

[修正](Modify)パネルのサブオブジェクト レベルが切り替わるたびに送られます。 callbacks.notificationParam() を呼び出すと、新しい SO レベル番号と古い SO レベル番号を含んだ配列が返されます。3ds Max 9 以降で使用可能です。

   

モディファイヤの通知:

#preModifierAdded: #(node, modifier) 

モディファイヤがノードに追加される前に送られます。

コールバック関数内で callbacks.notificationParam() を呼び出すと、ノードと追加されたモディファイヤを含む 2 つの要素配列が返されます。

   

#postModifierAdded: #(node, modifier) 

モディファイヤがノードに追加された後に送られます。

コールバック関数内で callbacks.notificationParam() を呼び出すと、ノードと追加されたモディファイヤを含む 2 つの要素配列が返されます。

   

#preModifierDeleted: #(node, modifier) 

モディファイヤがノードから削除される前に送られます。

コールバック関数内で callbacks.notificationParam() を呼び出すと、ノードと削除されたモディファイヤを含む 2 つの要素配列が返されます。

   

#postModifierDeleted: #(node, modifier) 

モディファイヤがノードから削除された後に送られます。

コールバック関数内で callbacks.notificationParam() を呼び出すと、ノードと削除されたモディファイヤを含む 2 つの要素配列が返されます。

   

マテリアル ライブラリの通知:

#mtlLibPreOpen: undefined 

マテリアル ライブラリをロードする直前に送られます。

   

#mtlLibPostOpen: materiallib 

マテリアル ライブラリをロードした直後に送られます。

コールバック関数内で callbacks.notificationParam() を呼び出すと、ロードされた MaterialLibrary が返されます。

   

#mtlLibPreSave: undefined 

マテリアル ライブラリを保存する直前に送られます。

   

#mtlLibPostSave: undefined 

マテリアル ライブラリを保存した直後に送られます。

   

#mtlLibPreMerge: undefined 

マテリアル ライブラリを結合する直前に送られます。

   

#mtlLibPostMerge: undefined 

マテリアル ライブラリを結合した直後に送られます。

   

マテリアルの通知:

#FailedDirectXMaterialTextureLoad: undefined 

ビットマップを DirectX シェーダ マテリアルにロードできなかったときに送られます。

通常は、DirectX がこのファイル形式をサポートしていない場合です。開発者はこの通知を登録して、ビットマップ形式を DirectX テクスチャ リソースに変換できるようすることができます。

   

#mtlRefAdded: material 

マテリアル参照が追加されると呼び出されます。

コールバック関数内で callbacks.notificationParam() を呼び出すと、マテリアルが返されます。

   

#mtlRefDeleted: material 

マテリアル参照が削除されると呼び出されます。

コールバック関数内で callbacks.notificationParam() を呼び出すと、マテリアルが返されます。

   

#proxyTempDisableStart: undefined
#proxyTempDisableEnd: undefined

ビットマップ プロキシを一時的に無効にする操作の前後に送られます。

コールバック関数内で callbacks.notificationParam() を呼び出すと、undefined が返されます。

   

ノード関連の通知:

#nodeCreated: node 

ノードの作成時に送られます。

コールバック関数内で callbacks.notificationParam() を呼び出すと、ノードが返されます。

   

#nodeCloned: node 

ノードのクローンが作成されたが、Hold.Accept(..)が実行される前に送られます。

コールバック関数内で callbacks.notificationParam() を呼び出すと、ノードが返されます。

   

#sceneNodeAdded: node 

ノードがシーンに追加された直後に送られます。

コールバック関数内で callbacks.notificationParam() を呼び出すと、ノードが返されます。

   

#nodeFreeze: node 

ノードをフリーズするときに送られます。

コールバック関数内で callbacks.notificationParam() を呼び出すと、ノードが返されます。

   

#nodeUnfreeze: Node 

ノードをフリーズ解除するときに送られます。

コールバック関数内で callbacks.notificationParam() を呼び出すと、ノードが返されます。

   

#nodeHide: node 

ノードを非表示にするときに送られます。

コールバック関数内で callbacks.notificationParam() を呼び出すと、ノードが返されます。

   

#nodeUnhide: Node 

ノードを表示するときに送られます。

コールバック関数内で callbacks.notificationParam() を呼び出すと、ノードが返されます。

   

#nodeLinked: Node 

新規親子リンクを作成するときに送られます。コールバック関数内で callbacks.notificationParam() を呼び出すと、ノードが返されます。

   

#nodeUnlinked: Node 

親子リンクを解除するときに送られます。

コールバック関数内で callbacks.notificationParam() を呼び出すと、ノードが返されます。

   

#nodePreDelete: Node 

ノードを削除する前に送られます。

コールバック関数内で callbacks.notificationParam() を呼び出すと、ノードが返されます。

   

#nodePostDelete: undefined 

ノードを削除した後に送られます。

   

#nodePreMaterial: Node 

ノードが新規マテリアルを取得する直前に送られます。

コールバック関数内で callbacks.notificationParam() を呼び出すと、ノードが返されます。

   

#nodePostMaterial: Node 

ノードが新規マテリアルを取得した直後に送られます。

コールバック関数内で callbacks.notificationParam() を呼び出すと、ノードが返されます。

   

#nodeRenamed: #(name, name) 

シーン ノードの名前が変更された場合に送られます。

コールバック関数内で callbacks.notificationParam() を呼び出すと、新旧のノード名を文字列として含む 2 つの要素配列が返されます。

注:3ds Max 7 で導入された #nodeNameSet コールバックを使用すると、高い信頼性が得られます。下記を参照してください。

   

#nodeNameSet: #(name, name, node) 

シーン ノード名が設定または変更されると、送信されます。

コールバック関数内で callbacks.notificationParam() を呼び出すと、新旧のノード名およびノードを含む 3 つの要素配列が返されます。

注:3ds Max 7 で導入された #nodeNameSet コールバックを使用すると、高い信頼性が得られます。下記を参照してください。

   

#preNodeBonePropChanged: Array of nodes 

変更前のボーン プロパティ。

コールバック関数内で callbacks.notificationParam() を呼び出すと、ノードの配列が返されます。

このオプションは 3ds Max 2014 より前のバージョンでは正しく機能しませんでした。

個々のボーンには修正されたバージョンが呼び出されるので、戻り値は配列のままですが呼び出しごとに含まれるノードは 1 つのみです。

通知は、すべてのボーン アニメーション プロパティの変更に対してブロードキャストされます。例外として、 InvalidateObjectTM() は、ボーンのプロパティ内のフラグを変更しますが、そのフラグは子ボーンが変更された場合にも変更されます。ビューポート内でノードを移動させるだけでこの状況が発生してしまうため、大量の通知を避けるために除外します。

   

#postNodeBonePropChanged: Array of nodes 

変更後のボーン プロパティ。

コールバック関数内で callbacks.notificationParam() を呼び出すと、ノードの配列が返されます。

このオプションは 3ds Max 2014 より前のバージョンでは正しく機能しませんでした。

個々のボーンには修正されたバージョンが呼び出されるので、戻り値は配列のままですが呼び出しごとに含まれるノードは 1 つのみです。

通知は、すべてのボーン アニメーション プロパティの変更に対してブロードキャストされます。例外として、 InvalidateObjectTM() は、ボーンのプロパティ内のフラグを変更しますが、そのフラグは子ボーンが変更された場合にも変更されます。ビューポート内でノードを移動させるだけでこの状況が発生してしまうため、大量の通知を避けるために除外します。

   

#preNodeGeneralPropChanged: Array of nodes 

変更前の一般プロパティ。

コールバック関数内で callbacks.notificationParam() を呼び出すと、ノードの配列が返されます。

   

#postNodeGeneralPropChanged: Array of nodes 

変更後の一般プロパティ。

コールバック関数内で callbacks.notificationParam() を呼び出すと、プロパティを変更されたノードの配列が返されます。

   

#preNodeGiPropChanged: Array of nodes 

アドバンスト ライティング プロパティの変更前に送られます。

コールバック関数内で callbacks.notificationParam() を呼び出すと、プロパティを変更されるノードの配列が返されます。

   

#postNodeGiPropChanged: Array of nodes 

アドバンスト ライティング プロパティの変更後に送られます。

コールバック関数内で callbacks.notificationParam() を呼び出すと、プロパティを変更されたノードの配列が返されます。

   

#preNodeMentalrayPropChanged: Array of nodes 

mental ray プロパティの変更前に送られます。

コールバック関数内で callbacks.notificationParam() を呼び出すと、mental ray プロパティを変更されるノードの配列が返されます。

   

#postNodeMentalrayPropChanged: Array of nodes 

mental ray プロパティの変更後に送られます。

コールバック関数内で callbacks.notificationParam() を呼び出すと、mental ray プロパティを変更されたノードの配列が返されます。

   

#preNodesCloned: Array of nodes 

ノードがクローン作成される前に送られます。

コールバック関数内で callbacks.notificationParam() を呼び出すと、ノードの配列が返されます。

   

#postNodesCloned: #(array of nodes, array of nodes, name) 

ノードがクローン作成された後に送られます。

コールバック関数内で callbacks.notificationParam() を呼び出すと、次の 3 つの要素による配列が返されます。最初の要素は元のノードの配列、2 番目の要素はクローン作成されたノードの配列、そして 3 番目の要素は、 #copy #instance 、または #reference の名前の値です。

   

#preNodeUserPropChanged: Array of nodes 

変更前のユーザ プロパティ。

コールバック関数内で callbacks.notificationParam() を呼び出すと、ノードの配列が返されます。

   

#postNodeUserPropChanged: Array of nodes 

変更後のユーザ プロパティ。

コールバック関数内で callbacks.notificationParam() を呼び出すと、ノードの配列が返されます。

   

#preMirrorNodes: Array of nodes 

ミラー操作の最初。

コールバック関数内で callbacks.notificationParam() を呼び出すと、ノードの配列が返されます。

   

#postMirrorNodes: Array of nodes 

ミラー操作の最後。

コールバック関数内で callbacks.notificationParam() を呼び出すと、ノードの配列が返されます。

   

#selectedNodesPreDelete: Array of nodes 

選択されたノードを削除する直前に送られます。

コールバック関数内で callbacks.notificationParam() を呼び出すと、これから削除されるノードの配列が返されます。

   

#selectedNodesPostDelete: undefined 

選択されたノードを削除した直後に送られます。

   

#selectionSetChanged: undefined 

選択セットを変更した後に送られます。

   

#postNodeSelectOperation: undefined 

システムのノード選択プロセッサがノードの選択を終了した後に送られます。

   

プラグインの通知:

#ClassDescAdded: MAXClass 

新しい ClassDesc が登録されていることを通知します。

この通知は、プラグインを含む DLL がロードされた場合や、ClassDesc が 3ds Max で動的に作成および登録されている場合(スクリプト プラグインが定義されている場合など)に発生します。プラグインを含む DLL をロードすると、プラグインごとに #classDescLoaded 通知、#ClassDescAdded 通知の順番に表示されます。ClassDesc が 3ds Max で動的に作成および登録されている場合は、#ClassDescAdded 通知のみが表示されます。

コールバック関数内で callbacks.notificationParam() を呼び出すと、登録中の ClassDesc の MAXClass ラッパーが返されます。

   

#classDescLoaded: MAXClass 

プラグインの dll から ClassDesc が正常にロードされた後に送られます。

コールバック関数内で callbacks.notificationParam() を呼び出すと、ロード中の ClassDesc の MAXClass ラッパーが返されます。

   

#interactivePluginCreationStarted: MAXClass 

ユーザがプラグイン インスタンスの作成を開始するときに送られます。

この通知が送信されるタイミングは、[作成](Create)パネルや[修正](Modify)パネル、またはメイン メニューを使用してオブジェクトをインタラクティブに作成するときなどです。プラグイン インスタンスをプログラム(SDK、MAXScript、python など)を使用して作成した場合は、この通知は送信されません。

コールバック関数内で callbacks.notificationParam() を呼び出すと、プラグインをラップしている MAXClass が返されます。

   

#interactivePluginCreationEnded: MAXClass 

ユーザがプラグイン インスタンスの作成を終了したときに送られます。

プラグイン インスタンスをプログラム(SDK、MAXScript、python など)を使用して作成した場合は、この通知は送信されません。

コールバック関数内で callbacks.notificationParam() を呼び出すと、プラグインをラップしている MAXClass が返されます。

   

#ObjectDefinitionChangeBegin: MAXClass 

オブジェクトのインスタンスが新しいオブジェクト定義に更新される直前に送信されます。

MAXScript では、定義スクリプトを再評価することにより、スクリプト プラグインおよびスクリプト カスタム アトリビュートの定義を更新することができます。新しい定義により、ローカル変数、パラメータ ブロック、パラメータ ブロックの項目、ロールアウト、およびロールアウト コントロールを追加または削除することができます。新しい定義が評価された後に、既存のプラグイン インスタンスはこの新しい定義に変換されます。この通知は、インスタンスが新しい定義に変換される直前に送られます。

プラグインはこの通知を使用することにより、プラグイン インスタンスのロールアウト表示の再構築を定義に従ってコントロールすることができます。

コールバック関数内で callbacks.notificationParam() を呼び出すと、スクリプト プラグインをラップしている MAXClass が返されます。

   

#ObjectDefinitionChangeEnd: MAXClass 

オブジェクトのインスタンスが新しいオブジェクト定義に更新された後に送られます。#ObjectDefinitionChangeBegin を参照してください。

コールバック関数内で callbacks.notificationParam() を呼び出すと、スクリプト プラグインをラップしている MAXClass が返されます。

   

#pluginLoaded: string 

プラグインをロードするたびに送られます。

コールバック関数内で callbacks.notificationParam() を呼び出すと、ロードされた dll の名前を含む文字列が返されます。

   

システムの通知:

#appActivated: undefined 

メイン アプリケーション ウィンドウをアクティブ化するときに呼び出されます。

注:このメッセージは、メイン ウィンドウをアクティブ化するたびに呼び出されます。注意して使用してください。システム起動時に何らかの操作を行うことが目的である場合は、代わりに #postSystemStartup を使用することを検討してください。

   

#appDeactivated: undefined 

メイン アプリケーション ウィンドウを非アクティブ化するときに呼び出されます。

注:このメッセージは、メイン ウィンドウをアクティブ化するたびに呼び出されます。注意して使用してください。システム起動時に何らかの操作を行うことが目的である場合は、代わりに #preSystemShutdown を使用することを検討してください。

   

#postSystemStartup: undefined 

ソフトウェアの起動後に送られます。

   

#selectionLocked: undefined 

選択のロックがトリガされたときに送られます。

   

#selectionUnlocked: undefined 

選択のロック解除がトリガされたときに送られます。

   

#systemPreNew: integer 

3ds Max をリセットする直前に送られます。

コールバック関数内で callbacks.notificationParam() を呼び出すと、[新規シーン](New Scene)ダイアログ ボックスで選択されたオプションに対応する次の整数値が返されます。

1 - すべて新規

2 - オブジェクトを保持

3 - オブジェクトと階層を保持

   

#systemPostNew: undefined 

3ds Max をリセットした直後に送られます。

   

#systemPreReset: undefined 

3ds Max をリセットする前に送られます。

   

#systemPostReset: undefined 

3ds Max をリセットした後に送られます。

   

#systemPreDirChange: undefined 

変更後のシステム パス - [パスを設定](Configure Paths)ダイアログ ボックスで変更される dir のカタログ

   

#systemPostDirChange: undefined 

変更後のシステム パス - [パスを設定](Configure Paths)ダイアログ ボックスで変更される dir のカタログ

   

#preSystemShutdown: undefined 

ソフトウェアがシャットダウン プロセスを開始する直前に送られます。

   

#postSystemShutdown: undefined 

ソフトウェアがシャットダウン プロセスを完了する直前に送られます。

MAXScript リスナーと 3ds Max のUI を伴うオペレーションは、このコールバックを実行している時は、すでにこのコールバックが閉じている為使用できません。ファイルの書き込みのような UI 関連ではないオペレーションでは正しく実行されます。

   

#welcomeScreenDone: undefined 

初回のようこそ画面が表示された後に送信されます(表示されていないか、閉じられている場合)

   

#preAppThemeChange: undefined 

アプリケーションのテーマを変更する前に送られます。

   

#postAppThemeChange: undefined 

アプリケーションのテーマを変更した後に送られます。

   

#postLoadingMenus: undefined 

メニュー ファイルがロードされ、メニュー バーが更新された後に呼び出されます。

この通知に登録されたクライアントは、独自のメニューまたはメニュー項目を現在ロードされているメニュー セットに追加することができます。

   

#preLoadingCuiToolbars: string 

メイン アプリケーション メニュー バーが保存される前に送られます。

callbacks.notificationParam() を呼び出すと、ロード中のパスが返されます。既定のツールバーをロードしている場合は、空の値が返されます。

   

#postLoadingCuiToolbars: string 

メイン アプリケーション メニューバーが保存された後に送られます。

callbacks.notificationParam() を呼び出すと、ロード中のパスが返されます。既定のツールバーをロードしている場合は、空の値が返されます。

   

#preSavingCuiToolbars: string 

ツールバーの設定が保存される前に送られます。

callbacks.notificationParam() を呼び出すと、保存中のパスが返されます。既定のツールバーを保存している場合は、空の値が返されます。

   

#postSavingCuiToolbars: string 

ツールバーの設定が保存された後に送られます。

callbacks.notificationParam() を呼び出すと、保存中のパスが返されます。既定のツールバーを保存している場合は、空の値が返されます。

   

#preSavingMenus: string 

メイン アプリケーション メニュー バーが保存される前に送られます。

callbacks.notificationParam() を呼び出すと、保存中のパスが返されます。

   

#postSavingMenus: string 

メイン アプリケーション メニューバーが保存された後に送られます。

callbacks.notificationParam() を呼び出すと、保存中のパスが返されます。

   

#postSceneReset: undefined 

既存のシーン内のすべての参照が削除された直後に送られます。

この通知は、既存のシーンがワイプされた後に送られます。この通知が送信されるのは、ファイルから新しいシーンをロードする直前や、ファイルを更新している場合などです。

   

#preSceneStateRestore: string 

シーン ステートが復元される前に送られます。

callbacks.notificationParam() を呼び出すと、シーン ステートの名前が返されます。

   

#postSceneStateRestore: string 

シーン ステートが復元された後に送られます。

callbacks.notificationParam() を呼び出すと、シーン ステートの名前が返されます。

   

#preSceneStateSave: string 

シーン ステートが保存される前に送られます。

callbacks.notificationParam() を呼び出すと、シーン ステートの名前が返されます。

   

#postSceneStateSave: string 

シーン ステートが保存された後に送られます。

callbacks.notificationParam() を呼び出すと、シーン ステートの名前が返されます。

   

#preWorkspaceChange: undefined 

CUI ワークスペースが変更される前に送られます。

callbacks.notificationParam() を呼び出すと、ワークスペース名が返されます。

   

#postWorkspaceChange: string 

CUI ワークスペースが変更された後に送られます。

callbacks.notificationParam() を呼び出すと、ワークスペース名が返されます。

   

#preWorkspaceCollectionChange: undefined 

システム ワークスペースのコレクションが変更される前に送られます。

   

#postWorkspaceCollectionChange: undefined 

システム ワークスペースのコレクションが変更された後に送られます。

   

ラジオシティの通知:

#radiosityPluginChanged: undefined 

ラジオシティ プラグインが変更された時に送られます。

   

#radiosityProcessDone: undefined 

ラジオシティ処理が終了した時に送られます。

   

#radiosityProcessReset: undefined 

ラジオシティ処理がリセットされた時に送られます。

   

#radiosityProcessStart: undefined 

ラジオシティ処理を開始した時に送られます。

   

#radiosityProcessStopped: undefined 

ラジオシティ処理を停止した時に送られます。

   

システムを元に戻す場合の通知:

#sceneUndo: string 

シーンを元に戻した後に送られます。 callbacks.notificationParam() では、取り消しエントリの名前が返されます。3ds Max 8 以降で使用可能です。

   

#sceneRedo: string 

シーンを元に戻した後に送られます。 callbacks.notificationParam() では、取り消しエントリの名前が返されます。3ds Max 8 以降で使用可能です。

例:

callbacks.removeScripts id:#test
callbacks.addScript #sceneRedo "format \"Redo: %\\n\" (callbacks.notificationParam())" id:#test
callbacks.addScript #sceneUndo "format \"Undo: %\\n\" (callbacks.notificationParam())" id:#test

#preSceneRedo: string 

シーンをやり直す前に送られます。 callbacks.notificationParam() はやり直しの文字列を返します。

   

#preSceneUndo: string 

シーンを元に戻した後に送られます。 callbacks.notificationParam() は元に戻す文字列を返します。

   

#postRestoreObjsDeleted: unefined 

「元に戻す」システムがフラッシュされ、「元に戻す」システム内に少なくとも 1 つの RestoreObj が存在していた場合に送られます。

   

スケマティク ビューの通知:

#svSelectionSetChanged: integer 

スケマティク ビューの選択設定を変更したら送られます。 callbacks.notificationParam() によって、スケマティク ビューのインデックスが返されます。

   

#svDoubleClickGraphNode: undefined 

ユーザがスケマティク ビューのノードをダブルクリックすると送られます。

   

#svPreLayoutChange: integer 

スケマティク ビューをレイアウトのアルゴリズムに適用する前に送られます。

コールバック関数内で callbacks.notificationParam() を呼び出すと、スケマティク ビューのインデックスが返されます。

   

#svPostLayoutChange: integer 

スケマティク ビューをレイアウトのアルゴリズムに適用した後に送られます。

コールバック関数内で callbacks.notificationParam() を呼び出すと、スケマティク ビューのインデックスが返されます。

   

名前付き選択セットの通知:

#NamedSelSetCreated: string 

名前付き選択セットが作成された後に送られます。

callbacks.notificationParam() を呼び出すと、新しい選択セットの名前が返されます。

3ds Max 9 以降で使用可能です。

   

#NamedSelSetDeleted: string 

名前付き選択セットが削除された後に送られます。

callbacks.notificationParam() を呼び出すと、削除された名前付き選択セットの名前が返されます。

3ds Max 9 以降で使用可能です。

   

#NamedSelSetRenamed: string 

名前付き選択セットの名前が変更された後に送られます。

callbacks.notificationParam() を呼び出すと、名前を変更した選択セットの古い名前と新しい名前を含む配列が返されます。

3ds Max 9 以降で使用可能です。

   

#NamedSelSetPreModify: string 

名前付き選択セットのノード セットの変更が開始したときに送られます。たとえば、名前付き選択セットに対してノードを追加または削除した場合、または名前付き選択セットのノード セットが完全に置き換えられた場合です。

callbacks.notificationParam() を呼び出すと、修正された選択セットの名前が返されます。

   

#NamedSelSetPostModify: string 

名前付き選択セットのノード セットが変更されたときに送られます。

callbacks.notificationParam() を呼び出すと、修正された選択セットの名前が返されます。

   

Direct3D デバイスの通知:

#D3DPreDeviceReset: undefined 

デバイスがリセットされる前に送られます。

3ds Max 9 以降 で使用可能です。

   

#D3DPostDeviceReset: undefined 

デバイスがリセットされた後に送られます。

3ds Max 9 以降 で使用可能です。

   

その他の通知:

#activeViewportChanged: undefined 

現在のアクティブなビューポートが変更されたときに送られます。

   

#atsPostRepathPhase: undefined 

アセット トラッキング システムの走査が完了した後に送られます。

   

#atsPreRepathPhase: undefined 

アセット トラッキング システムの走査が開始する前に送られます。

   

#bitmapChanged: string 

ビットマップを再読み込みした後に送られます。

コールバック関数内で callbacks.notificationParam() を呼び出すと、bitmaptexture のビットマップ ファイル名を含む文字列を返します。

   

#byCategoryDisplayFilterChanged: undefined 

オブジェクト カテゴリが表示/非表示にマークされた後に送られます。

   

#colorChanged: undefined 

システムのカスタム カラーの更新中に送られます。

   

#cuiMenusUpdate: undefined 

メイン アプリケーション メニュー バーが更新されるときに送信されます。

   

#customDisplayFilterChanged: undefined 

カスタム表示フィルタをアクティブ/非アクティブにした後で送られます。

   

#lightingUnitDisplaySystemChange: undefined 

ライト単位の表示システムを変更した場合に送られます。

   

#mouseSettingsChanged: undefined 

マウス設定ファイルが変更された後に送られます(新しいマウス設定ファイルをロード/保存した後など)。

   

#preViewPanelDelete: integer 

ビューポートが削除される前に送られます。通常は、ビュー タブを削除するときに発生します。

コールバック関数内で callbacks.notificationParam() を呼び出すと、ビューポートの HWND が返されます。

   

#preViewportTooltip: node 

ビューポートのツールチップがポップ アップ表示される前に送られます。

コールバック関数内で callbacks.notificationParam() を呼び出すと、ツールチップをトリガするノードが返されます。

   

#sceneExplorerNeedsUpdate: undefined 

シーン エクスプローラの表示を更新する必要がある場合に送られます。

   

#sceneStateDelete: string 

シーン ステートが削除されたときに送られます。

コールバック関数内で callbacks.notificationParam() を呼び出すと、シーン ステートの名前が返されます。

   

#sceneStateRename: #(string, string) 

シーン ステートの名前が変更されたときに送られます。

コールバック関数内で callbacks.notificationParam() を呼び出すと、古い名前と新しい名前を含む 2 つの要素からなる配列が返されます。

   

#spacemodeChange: undefined 

ユーザが参照する座標系を変更した場合に送られます。

   

#timeunitsChange: undefined 

ユーザが時間の書式を変更した場合に送られます。

   

#unitsChange: undefined 

ユーザが単位設定を変更した場合に送られます。

   

#viewportChange: undefined 

ビューポート パラメータが変更される(ビューポートのパン、ズーム、軌道周回、またはアクティブ ビューポートの変更)たびに送信されます。

現在は、ビューポート レイアウトの変更についての通知は行われません。

   

#viewportSafeFrameToggle: integer

ビューポートのセーフ フレームをオンまたはオフにしたときに送られます。

コールバック関数内で callbacks.notificationParam() を呼び出すと、オンの場合は整数値 -1、オフの場合は 0 を返します。

3ds Max 2014 以降で使用可能です。

   

#mainWindowEnabled: boolean 

メインのアプリケーション ウィンドウが有効になったときに送られます。

コールバック関数内で callbacks.notificationParam() を呼び出すと、ブール値が返されます。3ds Max のメイン ウィンドウが使用可能な場合は true、別のウィンドウが使用可能な場合は false が返されます。

   

#heightMenuChanged: undefined 

ユーザが高さメニューを操作したときに送られます。

   

#playbackStart: undefined 

アニメーションの再生を開始するときに送られます。

   

#playbackEnd: undefined 

アニメーションの再生が終了したときに送られます。

   

#preProgress: undefined 

進行状況バーを表示する前に送られます。

   

#postProgress: undefined 

進行状況バーが終了した後に送られます。

関連事項