动画

2018-04-09  本文已影响0人  王一1

Input.GetAxisRaw("Vertical");此方法的返回值只有-1,0,1。 ..........................................................................................................................................

CrossPlatformInput :跨平台输入

Editor:编译器扩展。 里面都是Scripts,使用Using UnityEditor命名空间的脚本需要放到Editor文件夹下。

模型导入:

外部导入的模型

这种模型下的文件都是不可改的。

Model—>ScaleFactor 改变模型的尺寸,先改变缩放再拖入场景Rig—>Animation Type :

None:无动画类型,适用于不会动的,节省资源; 

 Legacy:使用Animation组件播放,过去的动画,一套动画只针对一个模型去做,基本上不能复用,基本上已被废弃(找资源时看到这个放弃此模型); 

 Generic:非人形的动画 ;  

Humanoid:人形的动画,满足Unity的骨骼要求时会有√提示,点√后面的打开骨骼  AvatarDefinition:可以选择使用自身的骨骼或是使用场景中有的其他的骨骼(可以节约资源), OptimizeGameObjects优化一些资源

动画:

Avatar:是映射关系,两个模型之间可以建立Avatar那么两个动画可以复用。

xxxxSkeleton:骨骼,都是空物体

Animation:帧动画

Animator:动画状态机

    Speed:播放速度    Multiplier:是乘数,实际值=Speed*Multiplier,可以用于在代码中更改动画播放速度(使用这个需要创建一个float参数,然后勾上Parameter)

    Mirror:镜像

Normalized Time:表示动画播放的进度,整数表示播了几次,小时表示播放当前一次的百分比

Has Exit Time:勾选时可以在当前动作未完成时播放下一动作

Foot IK:反向动力学   Write Defaults:把一个暂时不用的游戏物体SetActive(false)后,重新启用时希望游戏物体恢复到默认值时勾选 // 大概如此,但有丶问题,日后遇到问题再研究

在 Script中可以通过对象.SetFloat等修改值,其中SetTrigger是只执行一次就会回落,相当于Bool 不过初始值是false,执行这次动作时变为true,然后再次变为false

方法:GetCurrentAnimatorStateInfo:获取某一层的状态机信息

            IsInTransition:判断是否在执行动画过渡

            StringToHash:返回状态机所代表的Hash值  // 使用哈希值寻找动画参数效率更高

上一篇 下一篇

猜你喜欢

热点阅读