lvjincheng 4 anos atrás
pai
commit
b197a803e1

+ 232 - 5
Assets/BowArrow/Resources/Prefabs/BluetoothHolder.prefab

@@ -3047,6 +3047,7 @@ MonoBehaviour:
   DrawImage: {fileID: 4155488362355793910}
   gyrCalibrateCompleteCount: 0
   gyrCalibrateTotalCount: 300
+  lerpForRotation: 1
 --- !u!1 &4155488362869047205
 GameObject:
   m_ObjectHideFlags: 0
@@ -3761,6 +3762,7 @@ RectTransform:
   - {fileID: 4155488362355793910}
   - {fileID: 4155488362344826340}
   - {fileID: 2591453940900963966}
+  - {fileID: 8186963724770082486}
   m_Father: {fileID: 4155488363126191678}
   m_RootOrder: 4
   m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
@@ -4977,6 +4979,231 @@ MonoBehaviour:
     m_VerticalOverflow: 1
     m_LineSpacing: 1
   m_Text: Z
+--- !u!1 &6654171336898662454
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 8186963724770082486}
+  - component: {fileID: 380444894570775523}
+  - component: {fileID: 3711654981136167426}
+  - component: {fileID: 9112168557566949040}
+  - component: {fileID: 4281214751266922128}
+  m_Layer: 5
+  m_Name: BtnLerp
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!224 &8186963724770082486
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 6654171336898662454}
+  m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
+  m_LocalPosition: {x: 0, y: 0, z: 0}
+  m_LocalScale: {x: 1, y: 1, z: 1}
+  m_Children:
+  - {fileID: 1763673631626248475}
+  m_Father: {fileID: 4155488363416939128}
+  m_RootOrder: 12
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+  m_AnchorMin: {x: 1, y: 0}
+  m_AnchorMax: {x: 1, y: 0}
+  m_AnchoredPosition: {x: -50, y: 50}
+  m_SizeDelta: {x: 300, y: 50}
+  m_Pivot: {x: 1, y: 0}
+--- !u!222 &380444894570775523
+CanvasRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 6654171336898662454}
+  m_CullTransparentMesh: 1
+--- !u!114 &3711654981136167426
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 6654171336898662454}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_Material: {fileID: 0}
+  m_Color: {r: 1, g: 1, b: 1, a: 1}
+  m_RaycastTarget: 1
+  m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
+  m_Maskable: 1
+  m_OnCullStateChanged:
+    m_PersistentCalls:
+      m_Calls: []
+  m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0}
+  m_Type: 1
+  m_PreserveAspect: 0
+  m_FillCenter: 1
+  m_FillMethod: 4
+  m_FillAmount: 1
+  m_FillClockwise: 1
+  m_FillOrigin: 0
+  m_UseSpriteMesh: 0
+  m_PixelsPerUnitMultiplier: 1
+--- !u!114 &9112168557566949040
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 6654171336898662454}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_Navigation:
+    m_Mode: 3
+    m_WrapAround: 0
+    m_SelectOnUp: {fileID: 0}
+    m_SelectOnDown: {fileID: 0}
+    m_SelectOnLeft: {fileID: 0}
+    m_SelectOnRight: {fileID: 0}
+  m_Transition: 1
+  m_Colors:
+    m_NormalColor: {r: 1, g: 1, b: 1, a: 1}
+    m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
+    m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1}
+    m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
+    m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608}
+    m_ColorMultiplier: 1
+    m_FadeDuration: 0.1
+  m_SpriteState:
+    m_HighlightedSprite: {fileID: 0}
+    m_PressedSprite: {fileID: 0}
+    m_SelectedSprite: {fileID: 0}
+    m_DisabledSprite: {fileID: 0}
+  m_AnimationTriggers:
+    m_NormalTrigger: Normal
+    m_HighlightedTrigger: Highlighted
+    m_PressedTrigger: Pressed
+    m_SelectedTrigger: Selected
+    m_DisabledTrigger: Disabled
+  m_Interactable: 1
+  m_TargetGraphic: {fileID: 3711654981136167426}
+  m_OnClick:
+    m_PersistentCalls:
+      m_Calls:
+      - m_Target: {fileID: 4281214751266922128}
+        m_TargetAssemblyTypeName: DebugForLerp, Assembly-CSharp
+        m_MethodName: Click
+        m_Mode: 1
+        m_Arguments:
+          m_ObjectArgument: {fileID: 0}
+          m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine
+          m_IntArgument: 0
+          m_FloatArgument: 0
+          m_StringArgument: 
+          m_BoolArgument: 0
+        m_CallState: 2
+--- !u!114 &4281214751266922128
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 6654171336898662454}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 983574778493a3c4f841f360f65d9dfd, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+--- !u!1 &8643754521190468142
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 1763673631626248475}
+  - component: {fileID: 661081068377515979}
+  - component: {fileID: 9138109678956140046}
+  m_Layer: 5
+  m_Name: Text
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!224 &1763673631626248475
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 8643754521190468142}
+  m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
+  m_LocalPosition: {x: 0, y: 0, z: 0}
+  m_LocalScale: {x: 1, y: 1, z: 1}
+  m_Children: []
+  m_Father: {fileID: 8186963724770082486}
+  m_RootOrder: 0
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+  m_AnchorMin: {x: 0, y: 0}
+  m_AnchorMax: {x: 1, y: 1}
+  m_AnchoredPosition: {x: 0, y: 0}
+  m_SizeDelta: {x: 0, y: 0}
+  m_Pivot: {x: 0.5, y: 0.5}
+--- !u!222 &661081068377515979
+CanvasRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 8643754521190468142}
+  m_CullTransparentMesh: 1
+--- !u!114 &9138109678956140046
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 8643754521190468142}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_Material: {fileID: 0}
+  m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1}
+  m_RaycastTarget: 1
+  m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
+  m_Maskable: 1
+  m_OnCullStateChanged:
+    m_PersistentCalls:
+      m_Calls: []
+  m_FontData:
+    m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0}
+    m_FontSize: 30
+    m_FontStyle: 0
+    m_BestFit: 0
+    m_MinSize: 2
+    m_MaxSize: 40
+    m_Alignment: 4
+    m_AlignByGeometry: 0
+    m_RichText: 1
+    m_HorizontalOverflow: 0
+    m_VerticalOverflow: 0
+    m_LineSpacing: 1
+  m_Text: "\u5F00\u542F\u955C\u5934\u65CB\u8F6C\u63D2\u503C"
 --- !u!1 &8647649586001603448
 GameObject:
   m_ObjectHideFlags: 0
@@ -5517,16 +5744,16 @@ PrefabInstance:
       objectReference: {fileID: 0}
     m_RemovedComponents: []
   m_SourcePrefab: {fileID: 100100000, guid: b100e5f3d1feffb49824e72907d434a4, type: 3}
---- !u!1 &8120678168769779090 stripped
-GameObject:
-  m_CorrespondingSourceObject: {fileID: 5267297738912478573, guid: b100e5f3d1feffb49824e72907d434a4, type: 3}
-  m_PrefabInstance: {fileID: 4155488362696958207}
-  m_PrefabAsset: {fileID: 0}
 --- !u!4 &8120678168769779086 stripped
 Transform:
   m_CorrespondingSourceObject: {fileID: 5267297738912478577, guid: b100e5f3d1feffb49824e72907d434a4, type: 3}
   m_PrefabInstance: {fileID: 4155488362696958207}
   m_PrefabAsset: {fileID: 0}
+--- !u!1 &8120678168769779090 stripped
+GameObject:
+  m_CorrespondingSourceObject: {fileID: 5267297738912478573, guid: b100e5f3d1feffb49824e72907d434a4, type: 3}
+  m_PrefabInstance: {fileID: 4155488362696958207}
+  m_PrefabAsset: {fileID: 0}
 --- !u!1001 &4155488363248417440
 PrefabInstance:
   m_ObjectHideFlags: 0

+ 9 - 2
Assets/BowArrow/Scripts/Bluetooth/AimHandler.cs

@@ -306,12 +306,19 @@ public class AimHandler : MonoBehaviour
         // 记录一些旋转角---end
     }   
 
+    public bool lerpForRotation = true;
     public void Update()
     {
         if (controlObj)
         {
-            // 最终结果进行lerp
-            controlObj.localRotation = Quaternion.Lerp(controlObj.localRotation, newRotation, Time.deltaTime * 8);         
+            if (lerpForRotation)
+            {
+                controlObj.localRotation = Quaternion.Lerp(controlObj.localRotation, newRotation, Time.deltaTime * 8);   
+            } 
+            else 
+            {
+                controlObj.localRotation = newRotation;
+            }
         }
     }
 

+ 18 - 4
Assets/BowArrow/Scripts/Bluetooth/ShootCheck.cs

@@ -1,4 +1,6 @@
 using System;
+using System.Collections;
+using System.Collections.Generic;
 using UnityEngine;
 using UnityEngine.UI;
 using ArduinoBluetoothAPI;
@@ -10,6 +12,7 @@ public class ShootCheck : MonoBehaviour
     CMD cmd = new CMD();
     bool locked = false;
     float maxAcc = 0;
+    Queue<float> keyAccList = new Queue<float>();
     public float shootSpeed;
     public static ShootCheck ins; 
 
@@ -59,15 +62,26 @@ public class ShootCheck : MonoBehaviour
         {
             return false;
         }
-        if (acc > cmd.getAcc() && acc > maxAcc) 
+        if (acc > cmd.getAcc()) 
         {
-            maxAcc = acc;
+            if (acc > maxAcc)
+            {
+                maxAcc = acc;
+            }
+            keyAccList.Enqueue(acc);
             return false;
         } 
         else if (acc < cmd.getAcc() && maxAcc != 0) {
-            shootSpeed = maxAcc;
-            // Log("最大加速度:" + maxAcc);
+            shootSpeed = 0;
+            foreach (var keyAcc in keyAccList)
+            {
+                shootSpeed += keyAcc;
+            }
+            shootSpeed /= keyAccList.Count;
+            shootSpeed *= 6;
+            Debug.LogWarning("初速度: " + shootSpeed);
             maxAcc = 0;
+            keyAccList.Clear();
             Dolock();
             Invoke("Unlock", 1.8f);
             return true;

+ 21 - 0
Assets/BowArrow/Scripts/Debug/DebugForLerp.cs

@@ -0,0 +1,21 @@
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+using UnityEngine.UI;
+
+public class DebugForLerp : MonoBehaviour
+{
+    // Start is called before the first frame update
+    void OnEnable()
+    {
+        this.transform.GetComponentInChildren<Text>().text = 
+            AimHandler.ins.lerpForRotation ? "关闭镜头旋转插值" : "开启镜头旋转插值";
+    }
+
+    public void Click()
+    {
+        AimHandler.ins.lerpForRotation = !AimHandler.ins.lerpForRotation;
+        this.transform.GetComponentInChildren<Text>().text = 
+            AimHandler.ins.lerpForRotation ? "关闭镜头旋转插值" : "开启镜头旋转插值";
+    }
+}

+ 11 - 0
Assets/BowArrow/Scripts/Debug/DebugForLerp.cs.meta

@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 983574778493a3c4f841f360f65d9dfd
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 1 - 21
Assets/BowArrow/Scripts/Game/ArmBow.cs

@@ -162,27 +162,7 @@ public class ArmBow : MonoBehaviour
 
         if (ShootCheck.ins && !GameMgr.debugInEditor) 
         {
-            float accRange = LoginMgr.myUserInfo.deviceAccValue;
-            float pullDistance = ShootCheck.ins.shootSpeed / accRange * 36;
-            int bowPound = DeviceMgr.ins.GetCurrentBowPound();
-            if (bowPound == 18) 
-            {
-                float x = pullDistance;
-                double p1 = -1.188748333;
-                double p2 = 0.033890372;
-                double p3 = 3.408473747;
-                double y = 1 / (p1 + p2 * Mathf.Pow(x, 0.5f) * Mathf.Log(x) + p3 / Mathf.Pow(x, 0.5f));
-                Arrow.speed = GameMgr.RealSizeToGameSize((float) y);
-            } 
-            else if (bowPound == 25) 
-            {
-                float x = pullDistance;
-                double p1 = -1.567293395;
-                double p2 = 0.039774484;
-                double p3 = 4.73453844;
-                double y = 1 / (p1 + p2 * Mathf.Pow(x, 0.5f) * Mathf.Log(x) + p3 / Mathf.Pow(x, 0.5f));
-                Arrow.speed = GameMgr.RealSizeToGameSize((float) y);
-            }
+            Arrow.speed = GameMgr.RealSizeToGameSize(ShootCheck.ins.shootSpeed);
         }   
 
         arrowCopy.SetActive(true);  

BIN
Assets/MeiShu Asset/GameArea/New Folder/Textures/Mapping_006.png


+ 1 - 1
ProjectSettings/DynamicsManager.asset

@@ -4,7 +4,7 @@
 PhysicsManager:
   m_ObjectHideFlags: 0
   serializedVersion: 13
-  m_Gravity: {x: 0, y: -12.48, z: 0}
+  m_Gravity: {x: 0, y: -4.061, z: 0}
   m_DefaultMaterial: {fileID: 0}
   m_BounceThreshold: 2
   m_DefaultMaxDepenetrationVelocity: 10