Unity模型添加旋转动画就变形,怎么回事?

Unity模型添加旋转动画就变形,怎么回事?,第1张

老实说,我学Unity时,角色控制真的是一个难点,尤其是动画方面。想要在Unity中控制好一个角色且让这个角色的动作协调,不是一个简单的问题,需要我们深入理解其原理。只有这样,我们才有能力写一套精湛的角色控制脚本。Unity里面的动画系统相当复杂(也许是我的程度不够吧),我们不要期望自己不用将Unity动画系统的一些原理搞清楚就能够写出一套很棒的角色控制脚本,这是很愚蠢的。仅仅只是角色移动就播放跑步的动画,角色停下来就播放站立的动画,具有这种想法的程序员应该注意一下了。

移动物体方式1:给物品transform.position 赋值

transform.position = new Vector3(2, 3, 4)

(任意位置移动)

移动物体方式2: Vector3.MoveTowards方式返回新的点位,再赋值给物体

transform.position = Vector3.MoveTowards(transform.position, tartgetPoint, speed * Time.deltaTime)

(知道起点,终点,移动速度 再Updata中每帧更新物体的位置信息 达到匀速移动的效果)

移动物体方式3:transform.Translate

transform.Translate(2,3,4,Space.Self)

(相当于 方式1功能的 +=功能,可以设置参考坐标系 默认为自身坐标系)

旋转方式1 :transform.rotation 赋值方式.

旋转方式2 : transform.Rotate 相当于方式以的 +=功能!

旋转方式3 :transform.LookAt 注视旋转

编写控制该物体旋转的脚本,如下所示:     

public class ro : MonoBehaviour

{

void Update()

    {

Quaternion target=Quaternion.Euler(0,90,0)

transform.rotation=Quaternion.RotateTowards(transform.rotation,target,2.0f)

    }

}

将此脚本挂到Cube上。

Unity是一款由Unity Technologies研发的跨平台2D/3D游戏引擎:

它以交互的图型化开发环境为首要方式,编译器运行在Windows 和Mac OS X下,可发布游戏至Windows、Wii、OSX、iOS或HTML5等众多平台。此外,Unity 还是被广泛用于建筑可视化、实时三维动画等类型互动内容的综合型创作工具。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11728553.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-18
下一篇2023-05-18

发表评论

登录后才能评论

评论列表(0条)

    保存