3ds Max 里"Hello World"就是一段 macroScript + messageBox,Evaluate 完能在 Customize UI 里找到、能绑热键,是最基础的宏骨架。
最小可运行版本
打开 MAXScript Editor(Scripting > New Script),粘贴:
macroScript HelloWorld
category:"MyTools"
tooltip:"Hello World 测试"
buttonText:"Hi"
(
on execute do
(
messageBox "Hello World!" title:"3ds Max Macro"
)
)
按 Ctrl+E(Tools > Evaluate All) 执行一次。
验证它真的注册了
-
Customize > Customize User Interface > Keyboard
-
Category 滚到 MyTools
-
列表里能看到 HelloWorld → 选它,Hotkey 按个
Ctrl+Alt+H,Assign → OK -
按
Ctrl+Alt+H→ 弹出 "Hello World!" 对话框 ✅
这就是 MacroScript 的最小闭环:header 定义身份 →
on execute do是触发体 → Evaluate 注册进 CUI → 绑键调用。后面你所有自定义宏都在这个骨架上加逻辑。
几个最小知识点
-
macroScript 名
HelloWorld必须单词无空格,CUI 里显示的就是它 -
category:"MyTools" 决定在 Customize UI 里归到哪一类,自己起个好记的,所有宏放一类方便管
-
tooltip / buttonText 可选,tooltip 是悬停提示,buttonText 是拖到工具栏时显示的短名
-
Evaluate 后不用保存 .mcr 文件也会进内存,但重开 Max 就没了;要永久保留,把这段存成
.mcr放usermacros文件夹(MAXScript > Open Script 里能看路径),或者 Evaluate 一次后 Max 会自动写进去 -
想改逻辑:改完再 Ctrl+E 重新 Evaluate,CUI 里同名的会被覆盖
这就是 3ds Max 宏的 "Hello World"。你前面做的 Hold/Release 宏、ReselectLastDeselected、AlignByCorrespondence 全是这个骨架套不同逻辑。要我给你一个"点一下在 Listener 打印选中物体名"的第二个练习宏吗?比 messageBox 更贴近实际调试用。
关于文件的保存:
存成 .mcr 放 usermacros 文件夹
(MAXScript > Open Script 里能看路径)
对应的usermacros目录
C:\Users\36359\AppData\Local\Autodesk\3dsMax\2026 - 64bit\ENU\usermacros

682

被折叠的 条评论
为什么被折叠?



