zoukankan      html  css  js  c++  java
  • UnityEngine中Animator相关类的说明

    ----------------------------------------------------------------------

    Animator

    这个单独写,比较多

    AnimationClip 
    有个SampleAnimation,可以让Go采样到某个动画时间(直接设置那个时间的姿势)
    有个只读的frameRate,帧率,采样频率(暂时不知道有什么应用)

    AnimatorClipInfo
    只包含AnimationClip和权重信息

    AnimationClipPair
    包含原始clip和目标clip,暂时不知道有什么用

    AnimatorControllerParameter
    貌似就是用来控制动画改变条件的
    --------------------------------------------------------------------
    AnimatorOverrideController
    动态替换状态用,不重启动画状态机
    AnimatorOverrideController is used to override clips from a controller to specialize some animations for a given avatar.Swapping Animator.runtimeAnimatorController with an AnimatorOverrideController based on the same AnimatorController at runtime doesn't reset state machine's current state.

    代码
    Animator animator = GetComponent<Animator>();
    AnimatorOverrideController overrideController = new AnimatorOverrideController();
    animator.runtimeAnimatorController = overrideController;
    --------------------------------------------------------------------
    AnimatorStateInfo
    可以通过Animator获取


    AnimatorTransitionInfo
    可以通过Animator获取
    --------------------------------------------------------------------
    AnimatorUtility
    里面有重要方法
    public static void OptimizeTransformHierarchy(GameObject go, string[] exposedTransforms);

    This function will remove all transform hierarchy under GameObject, the animator will write directly 

    transform matrices into the skin mesh matrices saving alot of CPU cycles.

    第一个方法会把骨骼transform去掉,参数exposedTransforms是保留的骨骼transform名称,被保留的每个transform
    会直接绑定到当前gameobject下

    public static void DeoptimizeTransformHierarchy(GameObject go);
    与第一个函数功能相反,恢复原样

    这两个函数的调用都会引起Animator重建
    A call to this function at runtime will re-initialize the animator.
    --------------------------------------------------------------------

    AnimationCurve 代码修改动画曲线时用,貌似很少用手动修改动画曲线
  • 相关阅读:
    安卓 出现Cannot launch AVD in emulator 错误
    服务器架构中,集群,负载均衡,分布式有什么区别吗
    JavaScript事件
    替换节点内文本的万用函数
    DOM(Document Object Module,文档对象模型)为JavaScript提供完整,全面控制网页结构与内容的对象
    c++和java的区别
    解决Spark集群无法停止
    spark 作业调度
    hadoop,hbase,hive,zookeeper整合可行性分析及版本确定
    hadoop+spark+kudu
  • 原文地址:https://www.cnblogs.com/nafio/p/9137356.html
Copyright © 2011-2022 走看看