【3D技术宅公社】XR数字艺术论坛  XR技术讨论 XR互动电影 定格动画

 找回密码
 立即注册

QQ登录

只需一步,快速开始

调查问卷
论坛即将给大家带来全新的技术服务,面向三围图形学、游戏、动画的全新服务论坛升级为UTF8版本后,中文用户名和用户密码中有中文的都无法登陆,请发邮件到324007255(at)QQ.com联系手动修改密码

3D技术论坛将以计算机图形学为核心,面向教育 推出国内的三维教育引擎该项目在持续研发当中,感谢大家的关注。

查看: 1399|回复: 0

5-3 HashIDs 哈希表控制

[复制链接]
发表于 2013-10-1 23:08:10 | 显示全部楼层 |阅读模式
学习如何通过控制哈希表有效地控制引用状态和参数
HashIDs

c#
  1. using UnityEngine;
  2. using System.Collections;

  3. public class HashIDs : MonoBehaviour
  4. {
  5.         // 为动画设置一些数字标签而取代动画中动作名称的字符串
  6.         public int dyingState;
  7.         public int locomotionState;
  8.         public int shoutState;
  9.         public int deadBool;
  10.         public int speedFloat;
  11.         public int sneakingBool;
  12.         public int shoutingBool;
  13.         public int playerInSightBool;
  14.         public int shotFloat;
  15.         public int aimWeightFloat;
  16.         public int angularSpeedFloat;
  17.         public int openBool;
  18.        
  19.        
  20.         void Awake ()
  21.         {
  22.                 // 注意:这里的动画名称一定要和Animator编辑器中的动作名称一一对应
  23.                 dyingState = Animator.StringToHash("Base Layer.Dying");             // 死亡动画名称
  24.                 locomotionState = Animator.StringToHash("Base Layer.Locomotion");   // 行为动画名称
  25.                 shoutState = Animator.StringToHash("Shouting.Shout");               // 喊话动画名称
  26.                 deadBool = Animator.StringToHash("Dead");                           // 死亡变量
  27.                 speedFloat = Animator.StringToHash("Speed");                        // 速度变量
  28.                 sneakingBool = Animator.StringToHash("Sneaking");                   // 潜行变量
  29.                 shoutingBool = Animator.StringToHash("Shouting");                   // 喊话变量
  30.                 playerInSightBool = Animator.StringToHash("PlayerInSight");         // 被发现变量
  31.                 shotFloat = Animator.StringToHash("Shot");                          // 射击变量
  32.                 aimWeightFloat = Animator.StringToHash("AimWeight");                               
  33.                 angularSpeedFloat = Animator.StringToHash("AngularSpeed");                       
  34.                 openBool = Animator.StringToHash("Open");
  35.         }
  36. }
复制代码
JS
  1. #pragma strict

  2. // Here we store the hash tags for various strings used in our animators.
  3. public var dyingState : int;
  4. public var locomotionState : int;
  5. public var shoutState : int;
  6. public var deadBool : int;
  7. public var speedFloat : int;
  8. public var sneakingBool : int;
  9. public var shoutingBool : int;
  10. public var playerInSightBool : int;
  11. public var shotFloat : int;
  12. public var aimWeightFloat : int;
  13. public var angularSpeedFloat : int;
  14. public var openBool : int;


  15. function Awake ()
  16. {
  17.     dyingState = Animator.StringToHash("Base Layer.Dying");
  18.     locomotionState = Animator.StringToHash("Base Layer.Locomotion");
  19.     shoutState = Animator.StringToHash("Shouting.Shout");
  20.     deadBool = Animator.StringToHash("Dead");
  21.     speedFloat = Animator.StringToHash("Speed");
  22.     sneakingBool = Animator.StringToHash("Sneaking");
  23.     shoutingBool = Animator.StringToHash("Shouting");
  24.     playerInSightBool = Animator.StringToHash("PlayerInSight");
  25.     shotFloat = Animator.StringToHash("Shot");
  26.     aimWeightFloat = Animator.StringToHash("AimWeight");
  27.     angularSpeedFloat = Animator.StringToHash("AngularSpeed");
  28.     openBool = Animator.StringToHash("Open");
  29. }
复制代码

手机版|小黑屋|3D数字艺术论坛 ( 沪ICP备14023054号 )

GMT+8, 2024-11-27 11:03

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表