白羽
2018-06-22
来源 :网络
阅读 5543
评论 0
摘要:本文将带你了解Maya应用之单独显示线框和带贴图物体 优化视窗操作流畅度 ,希望本文对大家学Maya有所帮助。
maya有的时候需要在场景里切换物体显示效果,比如线框还是贴图之类
有时候在大量场景文件需要单独对一个物体进行贴图查看显示,而不需要显示其他的,因为加载贴图会很卡
一般方法是我们选中需要显示贴图的物体,然后孤立选择,再按6切换,但有的时候切回去的时候忘了关贴图就会直接卡死maya
max有这种方式可以单独对一个物体显示线框,但是maya没有很方便的方式(我用的2016)
所以这里给出一种方式可以单独切换,比如下面的效果
但不影响渲染结果,只是修改视口的显示效果

这里主要根据的是maya里物体对象显示的绘制覆盖属性
这个属性可以覆盖你在视口设置的物体显示模式,线框啊 实体带贴图啊(viewport 2也是这样)

所以可以根据这个对maya里面视口显示进行优化
比如先重置一遍覆盖显示,然后单独对某些物体显示需要的效果
于是写了下面的mel脚本
[plain] view plain copy print?
1. global proc setAll()
2. {
3. string $objects[] = `ls -dag -type mesh`;
4. for($object in $objects)
5. {
6. setAttr ($object+".overrideEnabled") 1;
7. setAttr ($object+".overrideTexturing") 0;
8. }
9.
10. }
11. global proc setOneVisible()
12. {
13. string $objects[] = `ls -dag -type mesh -sl`;
14. for($object in $objects)
15. {
16. setAttr ($object+".overrideEnabled") 0;
17. }
18. }
19. global proc setOneInvisible()
20. {
21. string $objects[] = `ls -dag -type mesh -sl`;
22. for($object in $objects)
23. {
24. setAttr ($object+".overrideEnabled") 1;
25. }
26. }
27.
28. global proc wjChangeViewportRender()
29. {
30. if(`window -ex myTestWin`)
31. deleteUI myTestWin;
32.
33. window -t "材质显示切换" myTestWin;
34. columnLayout -adj 1;
35.
36. button -l "初始化全部隐藏" -c "setAll";
37. button -l "显示材质" -c "setOneVisible";
38. button -l "隐藏材质" -c "setOneInvisible";
39. showWindow myTestWin;
40. }
41.
42. wjChangeViewportRender();
使用方法是先初始化全部隐藏,然后按6键
另外测试表明一开始初始化后,单独再打开某一个带贴图的物体,那个物体的贴图是单独加载的
并不会加载全部贴图,其他物体因为都覆盖的了显示属性,所以可以优化maya里操作流程
当然这还只是一个原型,可以用其他方式去扩展,比如远处的不显示,或者只显示线框
可以在很大程度上使得maya操作更流畅
本文由职坐标整理并发布,希望对同学们有所帮助。了解更多详情请关注职坐标常用软件之Maya频道!
喜欢 | 0
不喜欢 | 0
您输入的评论内容中包含违禁敏感词
我知道了

请输入正确的手机号码
请输入正确的验证码
您今天的短信下发次数太多了,明天再试试吧!
我们会在第一时间安排职业规划师联系您!
您也可以联系我们的职业规划师咨询:
版权所有 职坐标-一站式AI+学习就业服务平台 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
沪公网安备 31011502005948号