查看: 1919|回复: 0
打印 上一主题 下一主题

让对象在Unity3D中动起来

[复制链接]

5552

主题

2

听众

8万

积分

首席设计师

Rank: 8Rank: 8

纳金币
-1
精华
11

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

跳转到指定楼层
楼主
发表于 2012-4-28 13:42:52 |只看该作者 |倒序浏览
Points: 80 让对象动起来有两步:



1。在场景中移动对象



2。让对象播放动画 我们一步步来实现这个目标。 移动对象需要用到UnityScript,不过这里我们只是想要简单的移动,拿“Script Tutorial”中的例子稍改改就行: function Update () { transform.position.x+= 0.02; } 在unity3d中运行看看效果,我们将这个脚本绑定到一个球上,球开始向x轴方向移动了。 接下来再看看如何播放动画。 手册上说,如果想用max来做动画,必须将其导出为fbx文件。 没经验就是没经验,我装的3ds max9,从Autodesk网站上下载了个FBX插件For max 2009,结果死活加载不了,最后想想弄个低版本的插件试试,结果进去一找,怎么还有个For max9的?敢情max9跟max2009不是一回事啊!而且,这max9都已经这么老了,中间还隔了个max2008,再加上最新的max2010…… 在max中做了个简单的球,和几帧简单的动画,导出到Unity3D中,需要手动添加动画,效果如下: 结合上面的移动脚本,最后试运行了下,球开始边转边跑了

还有几个问题:
1。当在max做多个动画时,在Unity3D中添加进来,第二个动画的播放位置有问题,不管摆到哪儿,播动画的时候这个GameObject都会跑到场景原点去。
2。手册中说只支持Animation与Bone Based Animation。不会做动画,不知道max的骨骼动画导出来是怎样,另外,biped动画是否能导出?需要试验一下。
------------------- 费了半天劲找比例尺,原来是max中单位设置不正确。 方法:Customize – Unit Setup – System Unit Setup 用cm做单位,这样做一个 100 * 100 * 100 单位的box放到Unity3D中正好占据一个Unity3D单位。 在手册的某处也说到了,只是不太明显:Unity’s physics system expects 1 meter in the game world to be 1 unit in the imported file. 所以,也根本用不着我来假设一个Unity3D单位等于现实世界中的一米……
分享到: QQ好友和群QQ好友和群 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
转播转播0 分享淘帖0 收藏收藏0 支持支持0 反对反对0
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

手机版|纳金网 ( 闽ICP备2021016425号-2/3

GMT+8, 2024-11-11 21:13 , Processed in 0.492833 second(s), 29 queries .

Powered by Discuz!-创意设计 X2.5

© 2008-2019 Narkii Inc.

回顶部