回到 Animator深入系列总目录

Unity5对状态哈希做了改进,拆分成了fullPathHash和shortNameHash,那么就来看看他们有什么区别

测试结果:

fullPathHash支持嵌套子状态以及层,shortNameHash直接不支持路径

这是使用的测试状态机,一共三种状态

测试脚本:

public class A1 : MonoBehaviour
{
public Animator animator; void OnGUI()
{
GUILayout.Box("Layer1 fullPathHash - " + (animator.GetCurrentAnimatorStateInfo().fullPathHash == Animator.StringToHash("Layer1.Idle")));
GUILayout.Box("Layer1 Idle2 fullPathHash - " + (animator.GetCurrentAnimatorStateInfo().fullPathHash == Animator.StringToHash("Layer1.Group.Idle")));
GUILayout.Box("Layer2 fullPathHash - " + (animator.GetCurrentAnimatorStateInfo().fullPathHash == Animator.StringToHash("Layer2.Idle"))); GUILayout.Box("Layer1 shortNameHash - " + (animator.GetCurrentAnimatorStateInfo().shortNameHash == Animator.StringToHash("Idle")));
GUILayout.Box("Layer1 Idle2 shortNameHash(1) - " + (animator.GetCurrentAnimatorStateInfo().shortNameHash == Animator.StringToHash("Group.Idle")));
GUILayout.Box("Layer1 Idle2 shortNameHash(2) - " + (animator.GetCurrentAnimatorStateInfo().shortNameHash == Animator.StringToHash("Idle")));
GUILayout.Box("Layer2 shortNameHash - " + (animator.GetCurrentAnimatorStateInfo().shortNameHash == Animator.StringToHash("Idle")));
}
}

测试结果1(Layer1.Group.Idle未跳转):

测试结果2(Layer1.Group.Idle已跳转):

最终结论:

fullPathHash支持子状态以及层,shortNameHash直接不支持路径

Unity-Animator深入系列---fullPathHash和shortNameHash的更多相关文章

  1. 【转】Unity Animator卡顿研究

    Unity Animator卡顿研究 发表于2017-07-26  点赞3 评论3 分享 分享到 2.3k浏览 想免费获取内部独家PPT资料库?观看行业大牛直播?点击加入腾讯游戏学院游戏程序行业精英群 ...

  2. 【转】unity Animator 怎么判断一个动画播放结束

    关于unity Animator 怎么判断一个动画播放结束这里有几种方法.希望对大家有帮助.还有其他办法的可以分享一下 第一种方法:在动画结束帧后面加个动画事件,调用下含这个变量的函数接口不是可以了? ...

  3. Unity Animator动画状态机 深入理解(一)

    接触Unity以来就已经有了Animator,Animation用的少,不过也大概理解他俩之间的一个区别于联系. 图中其实就是Animator和Animation之间的区别于联系了,啊!你肯定会告诉我 ...

  4. Unity S老师系列课程学习

    AssetBundle(创建打包)入门学习(基于Unity2017) (已看) 分组策略 逻辑实体分组 按照类型分组 按照使用分组 分组策略----总结 把经常更新的资源放在一个单独的包里面,跟不经常 ...

  5. Unity Animator动画状态机 深入理解(二)IK控制

    IK还是一个很神奇和实用的东西啊,起码可以用代码来控制人物骨骼位置还是很爽的.因为不是动画师~ 这篇可能跟Animator没啥关系了哈,都是代码层的. 看了一官方的案例,老的,有些问题,自己修改了一下 ...

  6. 【Unity】UGUI系列教程——拼接一个简单界面

    0.简介: 在目前的游戏市场上,手游依然是市场上的主力军,而只有快速上线,玩法系统完善的游戏才能在国内市场中占据份额.而在手游开发过程中,搭建UI系统是非常基本且重要的技能,极端的说如果对Unity的 ...

  7. unity, Animator.ResetTrigger

    解: 正确的写法应该是:Animator.SetTrigger("unfoldTrigger")Animator.ResetTrigger("unfoldTrigger& ...

  8. Unity优化----drawcall系列

    本文由博主(国宝大熊猫)原创,转载请注明出处:http://www.cnblogs.com/xsln/p/5151951.html 知识普及:      *Drawcall影响的是CPU的效率.因为d ...

  9. unity, animator stateMachine立即触发状态转换

    例如按下键jump按钮人物执行跳起动作,同时动画状态由idle转换为jump,同时打开Game窗口和Animator窗口对比观察,发现人物跳起时动画状态并没有同步发生转换,而是有一定延迟,导致人物动画 ...

随机推荐

  1. gcc 错误:Fatal error error writing to tmp No space left on device

    在使用gcc make时报错:Fatal error error writing to tmp No space left on device finiteVolume/ddtSchemes/Eule ...

  2. 在xocde运行profile 遇到"Existing default base temp directory '/Library/Caches/com.apple.dt.instruments' has insufficient privileges for user id 505. Please have the owner delete this directory"

    找到这篇文章 http://stackoverflow.com/questions/34153795/xcode-7-unable-to-open-instruments-from-developer ...

  3. Python学习总结14:时间模块datetime & time & calendar (一)

    Python中的常用于处理时间主要有3个模块datetime模块.time模块和calendar模块. 一.time模块 1. 在Python中表示时间的方式 1)时间戳(timestamp):通常来 ...

  4. Java线程总结

    在java中要想实现多线程,有两种手段,一种是继续Thread类,另外一种是实现Runable接口. 对于直接继承Thread的类来说,代码大致框架是: class 类名 extends Thread ...

  5. Socket get http request

    package wuyubao.firstsample; import java.io.BufferedReader; import java.io.IOException; import java. ...

  6. SQL Server练习

    SQL Server 基本语法: http://www.w3school.com.cn/sql/sql_intro.asp 练习1: 运行语句: USE [Test1] select FNumber, ...

  7. server端推送消息机制

    推送技术相关请参加WIKI: https://zh.wikipedia.org/wiki/%E6%8E%A8%E9%80%81%E6%8A%80%E6%9C%AF 场景: 监控系统:后台硬件温度.电压 ...

  8. linux强制umount设备的方法

    假如挂载时使用了:mount /dev/sda1 /mnt/sda1 #查找占用设备的pid fuser -m /mnt/sda1 #假如此时得到的pid为12345 kill -9 12345 um ...

  9. 【sublime】插件安装:包管理器——Package Control

    首先,按CTRL+`,打开控制台   粘贴下面的代码,之后回车 如果是sublime3 import urllib.request,os,hashlib; h = '7183a2d3e96f11eea ...

  10. linux系统中grub配置文件

    安装了Windows和Linux时肯定要通过GRUB进行引导,GRUB引导器的主配置文件路径/boot/grub/grub.conf(也可能是/boot/grub2/grub.conf),以#号开头的 ...