教你如何使用maxscript调试器

教你如何使用maxscript调试器(转载)

 教你如何使用maxscript调试器
作者:李英江 (转载)

 

  就我个人来说3ds max 8脚本调试器用得不多,在这里我讲一下脚本调试器的原理和简单的用法。脚本调试器只不过是一个max8的一个调试程序,它允许暂停3ds max主线程和其它线程,可以使用命令threads显示当前的3ds max所有线程及线程id,可以使用setThread 线程ID)切换当前调试的线程。一般情况调试器默认为调试最顶层(这个词不知道大家是否理解我的意思,就像是家里面的菜盘子,最顶层的盘子是最后放上去的,当然要拿开盘子只能从最上面一个开始)的线程,3ds max本身在实现一些操作时大量使用多线程,例如渲染时,就创建了一个新线程,关于线程和进程的区别,你可以找相应编程书籍。在3ds max8的目前调试器版本,还不支持鼠标选择某行设置断点(至少我没有找到这个功能,你找到了请告诉我),因此我现在断定,这是一个不实用的工具。但是3ds max8已经为我们提供了这个工具,当然是有用的了,只不过稍稍麻烦。
  使用脚本调试器(我假设你已经写好了一个脚本),首先在你的脚本你想要暂停的地方设置断点,设置断点可以使用break()函数,也就是当脚本运行到这里时暂停程序。这样当你运行这个脚本时你将会在脚本调试器的"输出"编辑窗口中显示线程相应的内容。(我个人认为每运行一个脚本,3ds max就为这个脚本创建一个线程,所以才可以使用脚本调试器来跟踪脚本。谁能证实一下我的猜测 我的E-MAIL: [email protected])。当脚本执行到你设的断点处就停下来,这时你可以使用getVar ""和 setVar "" 来查看变量内容和临时设置变量内容。更方便查看变量内容的方法可以点击"监视"按钮,然后输入变量名按回车键即可显示你刚输入的变量名的值了。点击"运行"按钮可以使脚本运行到下一个断点处暂停,查看和设置变量的方法上一步所说的是一样。
  总结一下:3ds max8的目前的调试器还很不完善(你也可以用丑陋来形容,希望以后的Max版本能把脚本调试器做得好点,好可惜我没有看到在MAX9调试器有一点点的变化)。脚本调试器虽不怎么样,但也不是一无是处,至少你可以少用print和format来查看运行时变量内容和调试脚本。
  以下是我写了一个简单的调试脚本,运行后当i=10时会启动脚本调试器。
global ps=10
for i=0 to 100 do
(
    ps = ps + i
  if i==10 do break()
)
查看运行时断点的i变量,可以点击"监视"按钮,输入i 然后回车,就可以看到变量i的值为10。

你可能感兴趣的:(教你如何使用maxscript调试器)