大虾求教,MAX9里这样的起重机动画怎么做?

来源:百度文库 编辑:超级军网 时间:2024/04/29 04:26:39


如图,红色的主臂是随蓝色主液压筒的旋转而动,同时绿色作用筒可以伸缩,而旁边黄色的副液压筒随之移动。据说要用约束动画来做,但是网上查了半天资料都看不明白,有大虾可以指点一下么,多谢!

新建 BMP 图像.jpg (45.06 KB, 下载次数: 28)

下载附件 保存到相册

2011-11-25 00:45 上传



如图,红色的主臂是随蓝色主液压筒的旋转而动,同时绿色作用筒可以伸缩,而旁边黄色的副液压筒随之移动。据说要用约束动画来做,但是网上查了半天资料都看不明白,有大虾可以指点一下么,多谢!
用反向动力学做,可参考max帮助文档中一个伸缩望远镜的例子。
或一个转动曲柄的例子
有再详细一点的说明么,最好是适合初学者的一步步教程。


楼主要的是不是这样的动画效果??

其实很简单的.就是把各个物件按照反向IK的顺序连接完就可以了,连接完IK后,只用控制起重臂的仰俯和底座的旋转,活塞就会随着自动运动伸缩了,然后你再根据你的需要调整活塞各个部位的比例大小就可以了.(我帮你做的这个只是示意图,活塞的底和顶是连反了的,要是这就是你想要的效果的话,你做的时候自己选择活塞的哪头是顶哪头是底就是了)

其实这样简单的动画用不着看实例教程的,如果你真想学教程,建议先去学下IK链等3d软件做动画必须的基础教程,软件这东西,只有原理懂了,才能举一反三,照你说的跟着做实例的教程就算你一步一步把这动画做出来了你对于动画IK的概念也可能是一头雾水的.

还有,其实max的这种动画在max很老的版本中就能实现了,你没必要拘泥于去想max9里怎么做这动画,软件这东西只是个工具,要有人去用工具的思维才能更有益于表现自己想表现的东西,如果拘泥于软件有什么功能人才能做什么东西的话,那就像是软件在牵人走,有点本末倒置的意味了.



楼主要的是不是这样的动画效果??

其实很简单的.就是把各个物件按照反向IK的顺序连接完就可以了,连接完IK后,只用控制起重臂的仰俯和底座的旋转,活塞就会随着自动运动伸缩了,然后你再根据你的需要调整活塞各个部位的比例大小就可以了.(我帮你做的这个只是示意图,活塞的底和顶是连反了的,要是这就是你想要的效果的话,你做的时候自己选择活塞的哪头是顶哪头是底就是了)

其实这样简单的动画用不着看实例教程的,如果你真想学教程,建议先去学下IK链等3d软件做动画必须的基础教程,软件这东西,只有原理懂了,才能举一反三,照你说的跟着做实例的教程就算你一步一步把这动画做出来了你对于动画IK的概念也可能是一头雾水的.

还有,其实max的这种动画在max很老的版本中就能实现了,你没必要拘泥于去想max9里怎么做这动画,软件这东西只是个工具,要有人去用工具的思维才能更有益于表现自己想表现的东西,如果拘泥于软件有什么功能人才能做什么东西的话,那就像是软件在牵人走,有点本末倒置的意味了.

333.gif (170.82 KB, 下载次数: 19)

下载附件 保存到相册

2011-11-25 12:06 上传

(23.98 KB, 下载次数: 6)2011-11-25 17:21 上传点击文件名下载附件
下载积分: 金钱 -2 元

ravage2 发表于 2011-11-25 17:21
网上的教程翻来复去看了,但我等小白还是看不懂啊= = 原始文件在此,哪位大虾好心能帮忙设置一下么?黄色的 ...


帮你修改好了.

你的活塞做法完全是错的,你做的活塞就是2个圆柱摆在一起,特别是你塌陷的时候又丧失了各个网格体的基本参数信息,哪怕你就是跟着网上的教程走你都做不出来你想要的效果的,因为你从一开始就是朝错的方向在做.

帮你修改了,打开修改后源文件看各个部件之间是怎么链接的,再看看我帮你修改之后的动画里只有哪2个东西是给了动画参数的(所有的东西都链结了反向IK父子关系,只用动2个虚拟物体的旋转,其它的所有动画包括活塞的旋转伸缩就自动完成了).

我在修改里保留了你做错了的活塞,你对比一下就应该知道你哪里做错了.

还有你说的让钓钩垂直于地面,其实这就是一个简单的注视动画,只用让钓钩的某一个点一直注视着地面以下的某个虚拟物就可以了(我是让钓钩一直注视着地面以下很远的一个虚拟物,被钓钩注视的这个虚拟物具体拉到地面以下多远取决于你做的这个主臂的长度和底座的位置以及这个虚拟物与主臂的长度和底座的相对位置这个3角定位关系而定).

里面只有钓钩始终垂直于地面用了约束动画里的look at(注视约束)修改,活塞和主臂及底座位的随动关系的做法是和约束动画没半点关系的,就是一连串的反向IK链接的父子级动画而已.

你对max的基础还不熟悉,建议与其看实例教程还不如多学习一下max的基础知识还能提高得快一些.


ravage2 发表于 2011-11-25 17:21
网上的教程翻来复去看了,但我等小白还是看不懂啊= = 原始文件在此,哪位大虾好心能帮忙设置一下么?黄色的 ...


帮你修改好了.

你的活塞做法完全是错的,你做的活塞就是2个圆柱摆在一起,特别是你塌陷的时候又丧失了各个网格体的基本参数信息,哪怕你就是跟着网上的教程走你都做不出来你想要的效果的,因为你从一开始就是朝错的方向在做.

帮你修改了,打开修改后源文件看各个部件之间是怎么链接的,再看看我帮你修改之后的动画里只有哪2个东西是给了动画参数的(所有的东西都链结了反向IK父子关系,只用动2个虚拟物体的旋转,其它的所有动画包括活塞的旋转伸缩就自动完成了).

我在修改里保留了你做错了的活塞,你对比一下就应该知道你哪里做错了.

还有你说的让钓钩垂直于地面,其实这就是一个简单的注视动画,只用让钓钩的某一个点一直注视着地面以下的某个虚拟物就可以了(我是让钓钩一直注视着地面以下很远的一个虚拟物,被钓钩注视的这个虚拟物具体拉到地面以下多远取决于你做的这个主臂的长度和底座的位置以及这个虚拟物与主臂的长度和底座的相对位置这个3角定位关系而定).

里面只有钓钩始终垂直于地面用了约束动画里的look at(注视约束)修改,活塞和主臂及底座位的随动关系的做法是和约束动画没半点关系的,就是一连串的反向IK链接的父子级动画而已.

你对max的基础还不熟悉,建议与其看实例教程还不如多学习一下max的基础知识还能提高得快一些.

03.jpg (100.79 KB, 下载次数: 23)

下载附件 保存到相册

2011-11-26 00:22 上传

04.jpg (105.35 KB, 下载次数: 21)

下载附件 保存到相册

2011-11-26 00:22 上传



帮你修改之后的源文件在这里,你自己下了打开看看就知道你哪里做错了.

ab_outpost修改.rar(29.16 KB, 下载次数: 0)

帮你修改之后的源文件在这里,你自己下了打开看看就知道你哪里做错了.

ab_outpost修改.rar(29.16 KB, 下载次数: 0)2011-11-26 00:58 上传点击文件名下载附件
下载积分: 金钱 -2 元


做这个类型的动画顺序应该是先确立活塞各头底的连接虚拟物的位置再根据虚拟物的位置制作活塞(包括活塞的倾斜什么的都要靠虚拟物的移动来完成而不是靠旋转活塞完成,不然一旦做到后面发现活塞的位置不对需要调整修改活塞尺寸的时候你会发现你会多出N大一堆不必要的麻烦事出来),像你这样先做活塞再去想怎么把活塞的头底按照你想要的动画效果连接是会多花几倍的工作量的(更何况你连活塞的制作方法都完全错了,按照你做活塞的那方法,那不叫活塞,只能叫摆在一起的2个圆柱体)

还有,你制作的这个东东,活塞的随动动画你居然用为活塞的各个部件单独设置动画参数的方法去做?!!{:soso_e126:} 你这完全是相当于为各个部件设置独立动画再把所有的独立动画拼接在一起以达到你想要的随动动画的效果......用你这方法理论上倒是可以达到你想要的效果,只是正确的方法比起来,你需要多花的时间和工作量可能要以百倍计算.{:soso_e127:}

这样的动画按照你所说的预想要求,实际上需要设置动画参数的只有2个虚拟物而已,你只用控制图中箭头指着的2个虚拟物不同轴向的旋转,底座/主臂/活塞/活塞的伸缩/钓钩以及钓钩的朝向就会按照你想要的方式随动了.(给你修改的源文件里做了动画的,你看一下随动动画的效果再把各个链接物体拆开看一下反向IK链是怎么连的应该就能明白了)



做这个类型的动画顺序应该是先确立活塞各头底的连接虚拟物的位置再根据虚拟物的位置制作活塞(包括活塞的倾斜什么的都要靠虚拟物的移动来完成而不是靠旋转活塞完成,不然一旦做到后面发现活塞的位置不对需要调整修改活塞尺寸的时候你会发现你会多出N大一堆不必要的麻烦事出来),像你这样先做活塞再去想怎么把活塞的头底按照你想要的动画效果连接是会多花几倍的工作量的(更何况你连活塞的制作方法都完全错了,按照你做活塞的那方法,那不叫活塞,只能叫摆在一起的2个圆柱体)

还有,你制作的这个东东,活塞的随动动画你居然用为活塞的各个部件单独设置动画参数的方法去做?!!{:soso_e126:} 你这完全是相当于为各个部件设置独立动画再把所有的独立动画拼接在一起以达到你想要的随动动画的效果......用你这方法理论上倒是可以达到你想要的效果,只是正确的方法比起来,你需要多花的时间和工作量可能要以百倍计算.{:soso_e127:}

这样的动画按照你所说的预想要求,实际上需要设置动画参数的只有2个虚拟物而已,你只用控制图中箭头指着的2个虚拟物不同轴向的旋转,底座/主臂/活塞/活塞的伸缩/钓钩以及钓钩的朝向就会按照你想要的方式随动了.(给你修改的源文件里做了动画的,你看一下随动动画的效果再把各个链接物体拆开看一下反向IK链是怎么连的应该就能明白了)

05.jpg (36.71 KB, 下载次数: 15)

下载附件 保存到相册

2011-11-26 00:37 上传

太感谢了!源文件里本身的动画只是先模拟一预览下啦,不是真的要这么做。
呃,系统说该附件无法读取?能发到这个邮箱么,再次感谢...
ravagecn@gmail.com
ravage2 发表于 2011-11-26 02:39
呃,系统说该附件无法读取?能发到这个邮箱么,再次感谢...
晕死,超大的附件功能怎么回事?!

源文件已经发到你邮箱了,请查收.
收到,再次感谢!但是发现你用的是damper,麻烦的是我这个模型要用在游戏MOD里面,还不清楚引擎是否支持damper,先去测试下了...
唉,不行,输出为游戏用的格式后活塞动画不能识别。
http://bbs.hxsd.com/showthread.php?t=9966920
在这里找到的起重机动画则可以输出为我需要的动画格式...

ravage2 发表于 2011-11-26 19:59
收到,再次感谢!但是发现你用的是damper,麻烦的是我这个模型要用在游戏MOD里面,还不清楚引擎是否支持dam ...


哈哈哈哈,我还以为你是要做视频动画呢,用在MOD的话当然不能用damper做活塞,不过max里可不是只有damper可以做活塞哟.

换个思路不就行了嘛,2个圆柱链接不同的2个虚拟物,然后在相互look at对方链接的那个虚拟物就可以满足你用在MOD的需要了,所以我说你对max的理解还处在软件牵人走的阶段,还需要大量的充实max的基础知识.

max做的东西调出到游戏引擎里用的时候游戏引擎对max内部程序的支持是很欠缺的,不止是dampe这样内置程序参数的东西不能用,就连反射什么的有关程序贴图的材质都不能用(这点在以前和朋友一起做小游戏的时候是深受其害的,结果直接练就了我手绘材质的功底).

帮你重新修改了活塞的做法,步骤如下(把步骤写给你看是为了让你从原理上理解用max的圆柱体制作活塞随动的方法):

1:创建一个圆柱体(暂命名为圆A)
2:创建一个虚拟虚拟物(暂命名为虚A)
3:把虚A的XYZ轴对齐至圆A并把圆A链接绑定到虚A
4:复制圆A和和虚A并延Y轴反向同时缩小圆A的直径,命名为圆B和虚B
5:给圆A一个look at(注视约束)使之一直注视虚B的轴心
6:给圆B一个look at(注视约束)使之一直注视虚A的轴心

然后再复制3个活塞(每个活塞的组成部分包括2个圆柱体加2个虚拟物),再把4个活塞放到合适的位置(移动活塞的时候使用动虚拟物不动几何体的方式),再把各个虚拟物体分别绑定到主臂和底座上.完成收工(制作4个活塞一共耗时不到3分钟)

然后的操作方法和用dampe做的那个max文件一样,只用控制主臂根部和底座的那2个虚拟物旋转,活塞就会随着主臂底座的仰俯旋转自动伸缩随动了.

这样用圆柱制作的活塞的基本信息参数就是圆柱这样没有内置程序控制参数的基本几何体,你拿到MOD里用的时候就不会存在如damper那样基本参数信息里有内置程序控制而让游戏引擎无法识别了.

按照游戏引擎里的需求制作的max修改就是这个附件(这次自己测试了下是可以下的),你下了之后看一下里面能随主臂和底座随动的以和你做的一样同样是圆柱体制作的活塞和你制作的那4个活塞有什么不一样就应该知道你是哪里做错了.

ab_outpost(修改-2).rar(24.92 KB, 下载次数: 15)
ravage2 发表于 2011-11-26 19:59
收到,再次感谢!但是发现你用的是damper,麻烦的是我这个模型要用在游戏MOD里面,还不清楚引擎是否支持dam ...


哈哈哈哈,我还以为你是要做视频动画呢,用在MOD的话当然不能用damper做活塞,不过max里可不是只有damper可以做活塞哟.

换个思路不就行了嘛,2个圆柱链接不同的2个虚拟物,然后在相互look at对方链接的那个虚拟物就可以满足你用在MOD的需要了,所以我说你对max的理解还处在软件牵人走的阶段,还需要大量的充实max的基础知识.

max做的东西调出到游戏引擎里用的时候游戏引擎对max内部程序的支持是很欠缺的,不止是dampe这样内置程序参数的东西不能用,就连反射什么的有关程序贴图的材质都不能用(这点在以前和朋友一起做小游戏的时候是深受其害的,结果直接练就了我手绘材质的功底).

帮你重新修改了活塞的做法,步骤如下(把步骤写给你看是为了让你从原理上理解用max的圆柱体制作活塞随动的方法):

1:创建一个圆柱体(暂命名为圆A)
2:创建一个虚拟虚拟物(暂命名为虚A)
3:把虚A的XYZ轴对齐至圆A并把圆A链接绑定到虚A
4:复制圆A和和虚A并延Y轴反向同时缩小圆A的直径,命名为圆B和虚B
5:给圆A一个look at(注视约束)使之一直注视虚B的轴心
6:给圆B一个look at(注视约束)使之一直注视虚A的轴心

然后再复制3个活塞(每个活塞的组成部分包括2个圆柱体加2个虚拟物),再把4个活塞放到合适的位置(移动活塞的时候使用动虚拟物不动几何体的方式),再把各个虚拟物体分别绑定到主臂和底座上.完成收工(制作4个活塞一共耗时不到3分钟)

然后的操作方法和用dampe做的那个max文件一样,只用控制主臂根部和底座的那2个虚拟物旋转,活塞就会随着主臂底座的仰俯旋转自动伸缩随动了.

这样用圆柱制作的活塞的基本信息参数就是圆柱这样没有内置程序控制参数的基本几何体,你拿到MOD里用的时候就不会存在如damper那样基本参数信息里有内置程序控制而让游戏引擎无法识别了.

按照游戏引擎里的需求制作的max修改就是这个附件(这次自己测试了下是可以下的),你下了之后看一下里面能随主臂和底座随动的以和你做的一样同样是圆柱体制作的活塞和你制作的那4个活塞有什么不一样就应该知道你是哪里做错了.

ab_outpost(修改-2).rar(24.92 KB, 下载次数: 15)2011-11-26 22:46 上传点击文件名下载附件
下载积分: 金钱 -2 元
ravage2 发表于 2011-11-26 20:09
http://bbs.hxsd.com/showthread.php?t=9966920
在这里找到的起重机动画则可以输出为我需要的动画格式...
我没火星时代的号,不能下火星时代论坛的东西,不过不用看你发火星时代的那个max文件我都能想到他是怎么做的,不信你就下了我之后修改的那个附件看看我制作游戏里可以识别的随动活塞的方法和你发的火星时代论坛上的那个max文件是不是同样的做法吧.

软件只是工具,只有把工具熟悉了,才能随时根据需要制作出自己需要的东西,想着自己需要制作什么东西再去看工具能否完成如何完成,那只能说明工具的使用者对于工具还没有达到工具随人手的应用水平,还是建议你不忙去学习N多实例教程,先把max的基础教程摸透了再向实例提高吧.

ravage2 发表于 2011-11-26 20:02
唉,不行,输出为游戏用的格式后活塞动画不能识别。


做视频和做游戏的3d制作要求无论对模型还是材质还是灯光的要求是不一样的,你现在遇到的这问题太简单了,换种做法几分钟就能解决了,想当初和朋友一起做小游戏的时候,用OGRE的引擎遭遇max的反射材质无法被游戏引擎识别时候的窘境,那可是逼得我硬生生的用AE制作动态反射假材质,那时候多出来的工作量才是差点把我人都搞疯了的.{:soso_e113:}

还给你个建议,你发的你做的那个max文件里,里面需要做运动的部分不光是活塞,就连主臂和底座你都是用的直接给几何体运动参数的方法在做动画而没有绑定任何一个虚拟物,你既然制作的是MOD需要的东东,那游戏类的3d制作和视频类的3d制作的一些区别我想你还不了解,制作游戏的时候,游戏里的东西的运动都是以虚拟物的绑定去控制的,一般情况下,能以虚拟物绑定运动就绝不给几何体运动参数(不管是角色类还是机械类都是遵循这个原则在做游戏里的动画),其中的原因就不是几句话能说得清楚了,你在做游戏的时候时间长了自己慢慢就能体会到为什么游戏的制作会遵循这样的原则了.
ravage2 发表于 2011-11-26 20:02
唉,不行,输出为游戏用的格式后活塞动画不能识别。


做视频和做游戏的3d制作要求无论对模型还是材质还是灯光的要求是不一样的,你现在遇到的这问题太简单了,换种做法几分钟就能解决了,想当初和朋友一起做小游戏的时候,用OGRE的引擎遭遇max的反射材质无法被游戏引擎识别时候的窘境,那可是逼得我硬生生的用AE制作动态反射假材质,那时候多出来的工作量才是差点把我人都搞疯了的.{:soso_e113:}

还给你个建议,你发的你做的那个max文件里,里面需要做运动的部分不光是活塞,就连主臂和底座你都是用的直接给几何体运动参数的方法在做动画而没有绑定任何一个虚拟物,你既然制作的是MOD需要的东东,那游戏类的3d制作和视频类的3d制作的一些区别我想你还不了解,制作游戏的时候,游戏里的东西的运动都是以虚拟物的绑定去控制的,一般情况下,能以虚拟物绑定运动就绝不给几何体运动参数(不管是角色类还是机械类都是遵循这个原则在做游戏里的动画),其中的原因就不是几句话能说得清楚了,你在做游戏的时候时间长了自己慢慢就能体会到为什么游戏的制作会遵循这样的原则了.
再次感谢大虾的详细说明~顺便说下这个附件可以下,但是上面那个还是不行= =
恩,这个可以正确的导出了。
ravage2 发表于 2011-11-26 23:18
再次感谢大虾的详细说明~顺便说下这个附件可以下,但是上面那个还是不行= =
这个附件下了之后拿去放到游戏里测试了吗?

ravage2 发表于 2011-11-26 23:20
恩,这个可以正确的导出了。


能正确导出就行了,你还是多学习一下max基础的好一些,不怪你说你看不懂网上教怎么做随动活塞的教程,那只是因为你对max的基础知识理解都还不够而已所以在看相关实例教程的时候当然吃力了.
ravage2 发表于 2011-11-26 23:20
恩,这个可以正确的导出了。


能正确导出就行了,你还是多学习一下max基础的好一些,不怪你说你看不懂网上教怎么做随动活塞的教程,那只是因为你对max的基础知识理解都还不够而已所以在看相关实例教程的时候当然吃力了.
嗯,没有问题


一个新的问题:4组活塞在底盘转动时z轴似乎是不会随之转动的?而且一般为了节省系统资源,这4组活塞其实是可以精简为2组的,因为这里主梁不会在其X轴上倾斜。是否要实现我希望的动画,必须要分离为4组呢?

一个新的问题:4组活塞在底盘转动时z轴似乎是不会随之转动的?而且一般为了节省系统资源,这4组活塞其实是可以精简为2组的,因为这里主梁不会在其X轴上倾斜。是否要实现我希望的动画,必须要分离为4组呢?
ravage2 发表于 2011-11-26 23:59
一个新的问题:4组活塞在底盘转动时z轴似乎是不会随之转动的?而且一般为了节省系统资源,这4组活塞其实是可 ...
第一个新问题没看懂你想表达的意思.

第2个新问题,活塞是可以合并成2组的,你只用照我前面教你的步骤自己重新做一遍就可以了。
MAX的ik操作起来是有些不太方便
ravage2 发表于 2011-11-26 20:09
http://bbs.hxsd.com/showthread.php?t=9966920
在这里找到的起重机动画则可以输出为我需要的动画格式...
谢谢提供的资料
ravage2 发表于 2011-11-26 20:09
http://bbs.hxsd.com/showthread.php?t=9966920
在这里找到的起重机动画则可以输出为我需要的动画格式...
谢谢提供的资料
skyline1204 发表于 2011-11-26 22:14
哈哈哈哈,我还以为你是要做视频动画呢,用在MOD的话当然不能用damper做活塞,不过max里可不是只有damper ...
帮我开阔了思路,谢谢
ravage2 发表于 2011-11-26 02:39
呃,系统说该附件无法读取?能发到这个邮箱么,再次感谢...
附件可以读取啊