/// <summary>
 /// 播放视频
 /// </summary>
 /// <param name="time">指定时间点</param>
 /// <param name="mPlayType">播放模式,仅支持VideoRenderMode MaterialOverride 和RenderTexture模式</param>
 public void PlayOnTime(float time, MPlayType mPlayType = MPlayType.Normal)
 {
     if (m_videoPlayer == null)
     {
         return;
     }
     InternalPlay(time, mPlayType);
 }
 /// <summary>
 /// 播放视频
 /// </summary>
 /// <param name="normalTime">归一化的时间(0-1)</param>
 /// <param name="mPlayType">播放模式,仅支持VideoRenderMode MaterialOverride 和RenderTexture模式</param>
 public void Play(float normalTime = 0f, MPlayType mPlayType = MPlayType.Normal)
 {
     if (m_videoPlayer == null)
     {
         return;
     }
     InternalPlay((float)(normalTime * length), mPlayType);
 }
    private void InternalPlay(float time, MPlayType mPlayType)
    {
        this.time = time;
        if (!isPlaying)
        {
            m_videoPlayer.Play();
        }
        _isPlaying = true;
        _mPlayType = mPlayType;
        _internalEventHandlers.Clear();
        switch (mPlayType)
        {
        case MPlayType.Normal:    //donothing
            break;

        case MPlayType.EasyIn:
            if (renderMode == VideoRenderMode.MaterialOverride || renderMode == VideoRenderMode.RenderTexture)
            {
                alpha = 0f;
                StartCoroutine("EaysInCoroutine");
            }
            break;

        case MPlayType.EasyOut:
            if (renderMode == VideoRenderMode.MaterialOverride || renderMode == VideoRenderMode.RenderTexture)
            {
                ResetAlpha();
                InternalRegisterEvent((long)(m_videoClip.frameCount - 1), InternalPlayCompleteAction);
            }
            break;

        case MPlayType.EasyInOut:
            if (renderMode == VideoRenderMode.MaterialOverride || renderMode == VideoRenderMode.RenderTexture)
            {
                //Pause();
                alpha = 0f;
                StartCoroutine("EaysInCoroutine");
                InternalRegisterEvent((long)(m_videoClip.frameCount - 1), InternalPlayCompleteAction);
            }
            break;
        }
#if UNITY_EDITOR
        Log();
#endif
    }