From d5fdcf0b040b86ccae06fb539f34f5419e0a3e64 Mon Sep 17 00:00:00 2001
From: client_Wu Xijin <364452445@qq.com>
Date: 星期二, 21 五月 2019 14:28:02 +0800
Subject: [PATCH] 3335 解决静帧动画在移动终端播放闪屏的问题

---
 System/CreateRolePostProcess/CreateRolePostProcessor.cs |   67 ++++++++++++++++-----------------
 1 files changed, 33 insertions(+), 34 deletions(-)

diff --git a/System/CreateRolePostProcess/CreateRolePostProcessor.cs b/System/CreateRolePostProcess/CreateRolePostProcessor.cs
index ed56b9b..2660ec0 100644
--- a/System/CreateRolePostProcess/CreateRolePostProcessor.cs
+++ b/System/CreateRolePostProcess/CreateRolePostProcessor.cs
@@ -23,27 +23,31 @@
         onEnd = onComplete;
         isSkiped = false;
 
+        var uiroot = WindowCenter.Instance.uiRoot;
+        uiroot.EnableCanvas(false, uiroot.baseCanvas,
+                              uiroot.lifeBarCanvas,
+                              uiroot.nameCanvas,
+                              uiroot.normalCanvas,
+                              uiroot.modalCanvas,
+                              uiroot.tipsCanvas,
+                              uiroot.systemCanvas,
+                              uiroot.recycleBin,
+                              uiroot.fightCanvasGroup.damageNumGroups[0].parent);
+
+        WindowCenter.Instance.Open<CreateRoleMovieSkipWin>();
+        CameraController.Instance.CameraObject.enabled = false;
+
         if (Application.isEditor)
         {
-            var uiroot = WindowCenter.Instance.uiRoot;
-            uiroot.EnableCanvas(false, uiroot.baseCanvas,
-                                  uiroot.lifeBarCanvas,
-                                  uiroot.nameCanvas,
-                                  uiroot.normalCanvas,
-                                  uiroot.modalCanvas,
-                                  uiroot.tipsCanvas,
-                                  uiroot.systemCanvas,
-                                  uiroot.recycleBin,
-                                  uiroot.fightCanvasGroup.damageNumGroups[0].parent);
-
-            WindowCenter.Instance.Open<CreateRoleMovieSkipWin>();
+            PlayMovie();
         }
         else
         {
-            CameraManager.uiCamera.enabled = false;
+            WindowCenter.Instance.Close<LoadingWin>();
+            CameraManager.uiCamera.backgroundColor = Color.black;
+            CameraManager.uiCamera.clearFlags = CameraClearFlags.SolidColor;
+            Clock.AlarmAfter(0.1f, PlayMovie);
         }
-
-        PlayMovie();
     }
 
     public static void Skip()
@@ -59,7 +63,7 @@
             case RuntimePlatform.Android:
             case RuntimePlatform.IPhonePlayer:
                 Handheld.PlayFullScreenMovie("CreateRoleMovie.mp4", Color.black, FullScreenMovieControlMode.CancelOnInput, FullScreenMovieScalingMode.AspectFit);
-                Clock.AlarmAfter(0.1f, () => { PlayCameraAnimation(); });
+                Clock.AlarmAfter(0.1f, PlayCameraAnimation);
                 break;
             case RuntimePlatform.WindowsPlayer:
                 MoviePlayer.Instance.Play("CreateRoleMovie", PlayCameraAnimation);
@@ -73,6 +77,7 @@
 
     static void PlayCameraAnimation()
     {
+        CameraManager.uiCamera.clearFlags = CameraClearFlags.Depth;
         CameraController.Instance.CameraObject.enabled = true;
         CameraController.Instance.PlayAnimationClip("KC_Camera");
         var logicUpdate = new LogicUpdate();
@@ -88,28 +93,22 @@
 
     static void OnStop()
     {
-        if (Application.isEditor)
-        {
-            var uiroot = WindowCenter.Instance.uiRoot;
-            uiroot.EnableCanvas(true, uiroot.baseCanvas,
-                                          uiroot.lifeBarCanvas,
-                                          uiroot.nameCanvas,
-                                          uiroot.normalCanvas,
-                                          uiroot.modalCanvas,
-                                          uiroot.tipsCanvas,
-                                          uiroot.systemCanvas,
-                                          uiroot.recycleBin,
-                                          uiroot.fightCanvasGroup.damageNumGroups[0].parent);
+        var uiroot = WindowCenter.Instance.uiRoot;
+        uiroot.EnableCanvas(true, uiroot.baseCanvas,
+                                      uiroot.lifeBarCanvas,
+                                      uiroot.nameCanvas,
+                                      uiroot.normalCanvas,
+                                      uiroot.modalCanvas,
+                                      uiroot.tipsCanvas,
+                                      uiroot.systemCanvas,
+                                      uiroot.recycleBin,
+                                      uiroot.fightCanvasGroup.damageNumGroups[0].parent);
 
-            WindowCenter.Instance.Close<CreateRoleMovieSkipWin>();
-        }
-        else
-        {
-            CameraManager.uiCamera.enabled = false;
-        }
+        WindowCenter.Instance.Close<CreateRoleMovieSkipWin>();
 
         var sendInfo = new CA108_tagCMRefreshMainServerRole();
         GameNetSystem.Instance.SendInfo(sendInfo);
+        CameraController.Instance.CameraObject.enabled = true;
         if (onEnd != null)
         {
             onEnd();

--
Gitblit v1.8.0