MAYA中的代码学习有哪些方法?

2021-03-25
5626
0

MAYA中的代码学习有哪些小技巧?3dmax是一款功能非常强大的三维模型制作软件,利用该软件我们可以制作任何你能够想到的模型,在模型创建时方法灵活多样,那么,小编就来和大家说一下,MAYA中的代码学习有哪些小技巧?方法简单赶紧来学习看看吧。

 

前提条件:

1、零代码基础;

2、会用maya;

3、看到英文懂得尝试用翻译工具;

4、有查百度谷歌的意识与习惯;

案例说明:很简单,用代码生成1个球和5个方块,用不同的三种方式。

 

1、入门,打开maya官方文档和maya脚本编辑器,从mel入手。

原因:mel命令较少,但针对性较强,都是针对maya的操作过程,配合手动操作过程中的实时反馈,辅助理解,且文档清晰,通俗易懂;

成果:能辅助绝大多数的maya操作,省时省力,效率提高早下班,这个时候你可以给自己提升至少70%的工作效率;

要点:这个过程的本质就是把手动操作时返回的代码转换成你自己的代码,此阶段你暂时还不需要去了解什么是面向过程和面向对象;

例(mel):

============================

polySphere -n "QiuQiu" -r 1 -sx 20 -sy 20 -ax 0 1 0 -cuv 2 -ch 1;

for($i=1;$i<6;$i )

string $cube[] = `polyCube -n ("FangKuai_" $i) -w 1 -h $i -d 1`;

setAttr ($cube[0] ".tx") $i;

setAttr ($cube[0] ".ty") ($i*0.5);

setAttr ($cube[0] ".tz") ($i*2);

============================

2、懵懂,打开maya官方文档,找到python的相关页面,用python对比上面学习的mel,一对一进行比对学习,主要是通过对比,学会简单的python语法规则。

原因:由于熟悉了mel,只要按照文档上一对一的套路转成python的格式来写,会加深两种语言的书写格式的理解;

成果:和小众语言mel不同,由于python现成的公共库更多(虽然你暂时还用不上),现成的东西也许更好用,更省力,这个时候你大概明白了什么是面向过程;

要点:1-2阶段最容易遇到的就是书写格式错误,如【Error: Line 1.1: Syntax error】 以及 【Error: invalid syntax】;

例(python):

============================

import maya.cmds as cmds

cmds.polySphere(n="QiuQiu",r=1,sx=20,sy=20,ax=(0,1,0),cuv=2,ch=True)

for i in xrange(1,6):

cube = cmds.polyCube(n="FangKuai_" str(i),w=1,h=i,d=1)

cmds.setAttr(cube[0] ".tx",i)

cmds.setAttr(cube[0] ".ty",i*0.5)

cmds.setAttr(cube[0] ".tz",i*2)

============================

 

 

 

3、进阶,打开maya的pymel的官方文档,用你学到的python的基础,用pymel代替你的mel,所有的需求都用pymel来练、来写。

原因:pymel,是maya中的很好用的python模块,抛开执行速度不谈,它在便利性方面,是真的香;

成果:三两行就能搞定以前几十行才能搞定的功能(这个例子很简单体现不出来差距);

要点:用pymel的目的之一是省代码,但目的之二才是最重要的,就是潜移默化地从“面向过程”完成到“面向对象”的思维转变,并理解python的真正思维;

例(pymel,本质也是python):

============================

import pymel.core as pmc # 此行可以开始搭配搜索“python的模块导入”的相关概念教程进行理解

pmc.polySphere(n="QiuQiu",r=1,sx=20,sy=20,ax=(0,1,0),cuv=2,ch=True)

for i in xrange(1,6):

cube = pmc.polyCube(n="FangKuai_" str(i),w=1,h=i,d=1) # 此行可以开始搭配搜索“python的实例化”的相关概念教程进行理解

cube[0].tx.set(i) # 此行可以开始搭配搜索“python的对象、属性与方法”的相关概念教程进行理解

cube[0].ty.set(i*0.5)

cube[0].tz.set(i*2)

============================

 

 

4、学成,再跳出maya这个辣鸡软件,去搜python的教程,学习所有python的相关知识,谷歌无数的资料等着你去查。

原因:已经没有什么东西能够拦得住你了,星辰大海就在前面!

成果:落得一个涨工资的悲惨下场;

要点:python现成的库中,只有你想不到的库,没有不存在的库,搜索的关键字大概归纳为“python的类、实例化、继承、对象、属性及方法”;

例(python):

print("Hello world!! Show me the money!!")

 

本期的MAYA中的代码学习有哪些小技巧?就分享结束啦,学建模一定要多看、多练、多思考,希望大家都能够早日成为大神。如果需要更多建模教程,可以搜索绘学霸。

免责声明:本文内部分内容来自网络,所涉绘画作品及文字版权与著作权归原作者,若有侵权或异议请联系我们处理。
收藏

全部评论

您还没登录

暂无留言,赶紧抢占沙发
王氏教育是国内专业的CG数字艺术设计线上线下学习平台,在王氏教育,有原画、插画、漫画、影视、3D模型等培训课程,也有学习资源下载、行业社区交流。CG数字艺术学习,来王氏教育。
绘学霸iOS端二维码

IOS下载

绘学霸安卓端二维码

安卓下载

绘学霸微信小程序二维码

小程序

版权声明
本网站所有产品设计、功能及展示形式,均已受版权或产权保护,任何公司及个人不得以任何方式复制部分或全部,违者将依法追究责任,特此声明。
热线电话
18026259035
咨询时间:9:00~21:00
在线客服
联系网站客服
客服微信:18026259035
公司地址
中国·广州
广州市海珠区晓港中马路130号之19
绘学霸客户端(权限暂无,用于CG资源与教程交流分享)
王氏教育 王氏教育