この記事は、3ds Max 2016の画面で作成したMAXScriptのツールバー登録手順を、保存していた原稿から復元したものです。
現行版での画面・操作・スクリプトの動作は未検証です。
Maxスクリプトをツールバーにボタンとして登録する手順を解説します。
作成済みのスクリプトをUIのボタンに割り当てて実行できるように登録します。
Maxスクリプトをボタン登録する方法
スクリプトを用意してボタン登録用の記述を追加します。
以下の例が変更するのはMayaSelectionModeだけで、ホットキーやカメラ操作全体をMaya方式へ変えるものではありません。
試す前にリスナーでMouseConfigManager.MayaSelectionModeを実行し、表示されたtrueまたはfalseを控えます。
元がfalseならMouseConfigManager.MayaSelectionMode = false、元がtrueならMouseConfigManager.MayaSelectionMode = trueを実行して戻せます。
Autodesk:MouseConfigManagerで読み書きできる設定として説明されています。
ダイアログ版は開いているウィンドウを閉じてから再実行してください。
多重起動の処理を追加していない例なので、単純な切り替えだけなら後述の反転版を選ぶと確認項目を減らせます。
ボタン用のスクリプトを用意
- 先頭にマクロ名と属性を記述し、実行する処理全体を半角の丸括弧で囲みます。次の3行はヘッダーの説明で、その後の完成例のように本文が必要です。
macroScript スクリプト名
category:”カテゴリ名”
toolTip:”マウスオーバー時の表示名”
macroScript MayaSelectionModeToggle category:"max script" toolTip:"MayaSelectionModeToggle" ( rollout MayaSelectionModeToggle "MayaSelectionModeToggle" ( button btn_mayaSelectionModeOn "ON" across:2 button btn_mayaSelectionModeOff "OFF" on btn_mayaSelectionModeOn pressed do ( MouseConfigManager.MayaSelectionMode = true print "Mayaモード選択をON" ) on btn_mayaSelectionModeOff pressed do ( MouseConfigManager.MayaSelectionMode = false print "Mayaモード選択をOFF" ) ) createDialog MayaSelectionModeToggle )
以下はダイアログを開かず、クリックごとに現在値を反転する別案です。
2つの例は同じマクロ名とカテゴリなので、どちらか一方を使ってください。
後から同名・同カテゴリを評価すると登録内容が置き換わります。
macroScript MayaSelectionModeToggle category:"max script" toolTip:"MayaSelectionModeToggle" buttonText:"MayaSelectionModeToggle" ( MouseConfigManager.MayaSelectionMode = not MouseConfigManager.MayaSelectionMode )
- 完成したmacroScriptを保存し、スクリプトエディタで全体を評価して登録します。拡張子を変更するだけでは通常のスクリプトはマクロになりません。
実際のuserMacrosフォルダは、リスナーでgetDir #userMacrosを実行して確認できます。下記は旧環境の例です。
C:\Users\ユーザー名\AppData\Local\Autodesk\3dsMax\2016 – 64bit\JPN\usermacros
既存のmacroScript形式の配布物には、ヘッダーをもう一度付けないでください。
登録元のソースは.msでも評価でき、評価後のコピーがuserMacrosへ.mcrとして保存されます。
元ソースやバックアップをstartupScriptsやプラグインの自動読み込み先へ重ねて置くと二重評価の原因になるため、保管用フォルダを分けます。
メニューの作成とボタン登録
- 保存した完成例をスクリプトエディタで開き、Tools > Evaluate All(Ctrl+E)で登録します。既存の同名マクロがあれば先にバックアップしてください。Autodesk:MacroScriptの登録
- カスタマイズ>ユーザインタフェースをカスタマイズ>ツールバータブ>新規>名前入力
- 小さなウインドウが作成されるので、右側あたりにウインドウを吸着させて、置いておきます。
- カテゴリを選択して、スクリプトで書いたカテゴリ名を選択。するとスクリプトが出てきます。
- 登録されたマクロを新規ツールバーへドラッグします。動作を確認し、UI設定を保存して、再起動後にも表示・実行できるか確認してください。
登録後の動作と更新を確認する
一覧に出ない場合はEvaluate Allのエラーを確認し、コードのcategoryがmax script、マクロ名がMayaSelectionModeToggleであることを照合します。
ボタンを押した後にMayaSelectionModeを再度読み取り、ON版はtrue、OFF版はfalse、反転版は押す前と逆の値になったか確認します。
再起動後はボタンが残っているかと、押したときに処理が動くかを別々に確認し、元の値へ戻してください。
同名・同カテゴリのマクロを更新するとuserMacros内のコピーも置き換わるため、変更前のコードは自動読み込み先の外へ保存します。
古い動作が続く場合は登録元コードと評価エラーを確認し、両方のサンプルを交互に登録していないかを見直してください。
2026年10月26日に公式資料を照合した補足で、今回3ds Max実機による登録・再起動・設定復元の試験は行っていません。
ほかの記事は3DCGソフトの使い方まとめからご覧いただけます。
3ds Maxの記事は、ほかにもあります。




