美文网首页
2019-08-07【3D-Game-Kits】SceneLin

2019-08-07【3D-Game-Kits】SceneLin

作者: 持刀的要迟到了 | 来源:发表于2019-08-07 13:11 被阅读0次

    https://unity3d.com/cn/learn/tutorials/projects/2d-game-kit/scenelinkedsmb

    1.单个生命周期


    image.png
        public class SSS : SceneLinkedSMB<PlayerController>
        {
    
            /// <summary>
            /// 动作刚进来
            /// Called before Updates when execution of the state first starts (on transition to the state).
            /// </summary>
            public override void OnSLStateEnter(Animator animator, AnimatorStateInfo stateInfo, int layerIndex)
            {
                base.OnSLStateEnter(animator, stateInfo, layerIndex);
    
                m_MonoBehaviour.OnSLStateEnter("【1】");
            }
    
            /// <summary>
            /// 还在完全转换到本动作过程中的Update
            /// Called after OnSLStateEnter every frame during transition to the state.
            /// </summary>
            public override void OnSLTransitionToStateUpdate(Animator animator, AnimatorStateInfo stateInfo, int layerIndex)
            {
                base.OnSLTransitionToStateUpdate(animator, stateInfo, layerIndex);
    
                m_MonoBehaviour.OnSLTransitionToStateUpdate("【1】");
            }
    
            /// <summary>
            /// 完全转换到本状态的第一帧
            /// Called on the first frame after the transition to the state has finished.
            /// </summary>
            public override void OnSLStatePostEnter(Animator animator, AnimatorStateInfo stateInfo, int layerIndex)
            {
                base.OnSLStatePostEnter(animator, stateInfo, layerIndex);
    
                m_MonoBehaviour.OnSLStatePostEnter("【1】");
            }
    
            /// <summary>
            /// 完全转换到本状态后的Update
            /// Called every frame after PostEnter when the state is not being transitioned to or from.
            /// </summary>
            public override void OnSLStateNoTransitionUpdate(Animator animator, AnimatorStateInfo stateInfo, int layerIndex)
            {
                base.OnSLStateNoTransitionUpdate(animator, stateInfo, layerIndex);
    
                m_MonoBehaviour.OnSLStateNoTransitionUpdate("【1】");
            }
    
            /// <summary>
            /// 开始转向下一个状态的第一帧
            /// Called on the first frame after the transition from the state has started.  Note that if the transition has a duration of less than a frame, this will not be called.
            /// </summary>
            public override void OnSLStatePreExit(Animator animator, AnimatorStateInfo stateInfo, int layerIndex)
            {
                base.OnSLStatePreExit(animator, stateInfo, layerIndex);
    
                m_MonoBehaviour.OnSLStatePreExit("【1】");
            }
    
            /// <summary>
            /// 转向下一个状态过程中的Update
            /// Called after OnSLStatePreExit every frame during transition to the state.
            /// </summary>
            public override void OnSLTransitionFromStateUpdate(Animator animator, AnimatorStateInfo stateInfo, int layerIndex)
            {
                base.OnSLTransitionFromStateUpdate(animator, stateInfo, layerIndex);
    
                m_MonoBehaviour.OnSLTransitionFromStateUpdate("【1】");
            }
    
    
            /// <summary>
            /// 完全退出本状态
            /// Called after Updates when execution of the state first finshes (after transition from the state).
            /// </summary>
            public override void OnSLStateExit(Animator animator, AnimatorStateInfo stateInfo, int layerIndex)
            {
                base.OnSLStateExit(animator, stateInfo, layerIndex);
    
                m_MonoBehaviour.OnSLStateExit("【1】");
            }
    
    
    
        }
    

    相关文章

      网友评论

          本文标题:2019-08-07【3D-Game-Kits】SceneLin

          本文链接:https://www.haomeiwen.com/subject/eqkodctx.html