【Max脚本】脚本运算量大时防止MAX假死(白屏)

【Max脚本】脚本运算量大时防止MAX假死(白屏)对于脚本中需要大量运算的时候,一般都是在界面增加ProgressBar控件,一是能了解运算进度二是防止UI卡死,但是有些过于复杂的运算ProgressBar控件就不起做用了,甚至整个MAX界面出现白屏的状态。执行以下代码为例:sp=convertToPoly(GeoSphereradius:30segs:12)vertsCount=polyop.getNumVertssp

【Max脚本】脚本运算量大时防止MAX假死(白屏)

对于脚本中需要大量运算的时候,一般都是在界面增加ProgressBar控件,一是能了解运算进度二是防止UI卡死,但是有些过于复杂的运算ProgressBar控件就不起做用了,甚至整个MAX界面出现白屏的状态。

执行以下代码为例:

sp = convertToPoly(GeoSphere radius:30 segs:12)
vertsCount = polyop.getNumVerts sp

for i = 1 to vertsCount do
(
	GeoSphere pos:(polyop.getVert sp i) radius:1 segs:4
	redrawViews()
)


【Max脚本】脚本运算量大时防止MAX假死(白屏)

想要解决这个问题只要加上一句代码就可以了:

windows.processPostedMessages()

完成代码:

sp = convertToPoly(GeoSphere radius:30 segs:12)
vertsCount = polyop.getNumVerts sp

for i = 1 to vertsCount do
(
	windows.processPostedMessages()
	GeoSphere pos:(polyop.getVert sp i) radius:1 segs:4
	redrawViews()
)

目前仅在2011版本的MAX上试过,更高的版本估计肯定可以用,低版本的话需要自己再测试了

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/35148.html

(0)
编程小号编程小号

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注