lvjincheng 3 роки тому
батько
коміт
a71c1f21c8

+ 5 - 5
Assets/BowArrow/Scripts/GameMode/OnlineObject/ArrowSync.cs

@@ -124,11 +124,11 @@ public class ArrowSync : MonoBehaviour
                     if (syncData.HasArrowCameraTemplate3()) {
                         hasBlockByTree = syncData.GetArrowCameraTemplate3().Item1;
                     }
-                    if (hitTargetAnimalInfo != null) { 
-                        //因为击中的是动物,这里就使用射中时第一帧的数据,可避免跟主机的表现产生差异
-                        SyncDataUtil.StrToVec3(hitTargetAnimalInfo[4], position);
-                        SyncDataUtil.StrToQuat(hitTargetAnimalInfo[5], rotation);
-                    }
+                    // if (hitTargetAnimalInfo != null) { 
+                    //     //因为击中的是动物,这里就使用射中时第一帧的数据,可避免跟主机的表现产生差异
+                    //     position = SyncDataUtil.StrToVec3(hitTargetAnimalInfo[4]);
+                    //     rotation = SyncDataUtil.StrToQuat(hitTargetAnimalInfo[5]);
+                    // }
                     UpdatePosAndRotImmediate();
                     ((ArrowCameraTemplate3) arrowCameraComp.arrowCameraTemplate).beforHitWhenSync(hasBlockByTree);
                     if (hitTargetAnimalInfo != null) {

+ 13 - 19
Assets/BowArrow/Scripts/GameMode/OnlineObject/SyncDataUtil.cs

@@ -12,17 +12,14 @@ public class SyncDataUtil
             + quat.w;
     }
 
-    public static Quaternion StrToQuat(string str, Quaternion quat_out) {
-        string[] sss = str.Split(',');
-        quat_out.x = float.Parse(sss[0]);
-        quat_out.y = float.Parse(sss[1]);
-        quat_out.z = float.Parse(sss[2]);
-        quat_out.w = float.Parse(sss[3]);
-        return quat_out;
-    }
-
     public static Quaternion StrToQuat(string str) {
-        return StrToQuat(str, new Quaternion());
+        string[] sss = str.Split(',');
+        Quaternion quat;
+        quat.x = float.Parse(sss[0]);
+        quat.y = float.Parse(sss[1]);
+        quat.z = float.Parse(sss[2]);
+        quat.w = float.Parse(sss[3]);
+        return quat;
     }
 
     public static string Vec3ToStr(Vector3 v3) {
@@ -31,15 +28,12 @@ public class SyncDataUtil
             + v3.z;
     }
 
-    public static Vector3 StrToVec3(string str, Vector3 v3_out) {
-        string[] sss = str.Split(',');
-        v3_out.x = float.Parse(sss[0]);
-        v3_out.y = float.Parse(sss[1]);
-        v3_out.z = float.Parse(sss[2]);
-        return v3_out;
-    }
-
     public static Vector3 StrToVec3(string str) {
-        return StrToVec3(str, new Vector3());
+        string[] sss = str.Split(',');
+        Vector3 v3;
+        v3.x = float.Parse(sss[0]);
+        v3.y = float.Parse(sss[1]);
+        v3.z = float.Parse(sss[2]);
+        return v3;
     }
 }