骑行视角等优化

This commit is contained in:
lishuo committed 2021-12-09 18:17:39 +08:00
1 parent b1fedd4831
commit 7d2af849f4
23 files changed
+2565 -1685

No files matched your search

@@ -288,18 +288,18 @@ namespace Assets.Scenes.Ride.Scripts
cameraSlider = uipanel.transform.Find("CameraSlider").GetComponent<Slider>();
Text CameraText = uipanel.transform.Find("CameraSlider/Text").GetComponent<Text>();
#if !(UNITY_IOS || UNITY_ANDROID)
string[] phoneList = new string[] { "18120141032", "15651831367", "18120141031", "15261826280", "18662240319" };
if (phoneList.Contains(App.CurrentUser.Phone))
{
cameraSlider.gameObject.SetActive(true);
cameraSlider.value = cameraY;
CameraText.text = cameraY.ToString("f0");
cameraSlider.onValueChanged.AddListener((f) =>
{
cameraY = f;
CameraText.text = f.ToString("f0");
});
}
//string[] phoneList = new string[] { "18120141032", "15651831367", "18120141031", "15261826280", "18662240319" };
//if (phoneList.Contains(App.CurrentUser.Phone))
//{
// cameraSlider.gameObject.SetActive(true);
// cameraSlider.value = cameraY;
// CameraText.text = cameraY.ToString("f0");
// cameraSlider.onValueChanged.AddListener((f) =>
// {
// cameraY = f;
// CameraText.text = f.ToString("f0");
// });
//}
#endif
//路书基本信息绑定
mapName.text = routeInstance.Name;
@@ -304,15 +304,19 @@ public class CyclingController : DeviceServiceMonoBase
timer += 1.0f;
}
}
private void LateUpdate()
float touchTimer = 0.1f;
private void FixedUpdate()
{
#if UNITY_IOS || UNITY_ANDROID
if (competitionId == 0 && singleUIManager != null)
touchTimer -= Time.deltaTime;
if (touchTimer <= 0)
{
#if UNITY_IOS || UNITY_ANDROID
HandleTouch();
}
#else
HandleMouseScrollWheel();
#endif
touchTimer += 0.1f;
}
}
public bool isWatch { get; set; }
private Vector3 currentCameraPos { get; set; }
@@ -322,15 +326,48 @@ public class CyclingController : DeviceServiceMonoBase
Vector3 near = new Vector3(-8, 23, -20);
List<Vector3> cameraList { get; set; }
/// <summary>
/// 处理PC端
/// </summary>
private void HandleMouseScrollWheel()
{
var scrollDelta = Input.GetAxis("Mouse ScrollWheel");
UnityEngine.Debug.Log($"scrolldelta{scrollDelta}");
if (cameraList == null)
{
cameraList = new List<Vector3>();
cameraList.Add(near);
cameraList.Add(plane);
cameraList.Add(far);
}
var prePos = Camera.main.transform.localPosition;
var nextPos = Camera.main.transform.localPosition;
if (scrollDelta < 0)
{
nextPos = cameraList.Where(c => c.y > Camera.main.transform.localPosition.y).FirstOrDefault();
if (nextPos != Vector3.zero)
StartCoroutine(MoveCamera(prePos, nextPos));
}
if (scrollDelta > 0)
{
nextPos = cameraList.Where(c => c.y < Camera.main.transform.localPosition.y).LastOrDefault();
if (nextPos != Vector3.zero)
StartCoroutine(MoveCamera(prePos, nextPos));
}
}
private void HandleTouch()
{
if (singleUIManager == null)
return;
var touchCount = Input.touchCount;
switch (Input.touchCount)
{
case 1:
{
//单击切换极简模式
if (Input.touches[0].tapCount >= 2 && isStart && singleUIManager.clearLock)
if (Input.touches[0].tapCount==1 && isStart && singleUIManager.clearLock && competitionId == 0)
{
if (IsPointerOverGameObject(Input.mousePosition))
{
@@ -379,6 +416,7 @@ public class CyclingController : DeviceServiceMonoBase
}
break;
}
}
/// <summary>
@@ -635,7 +673,7 @@ public class CyclingController : DeviceServiceMonoBase
private IEnumerator MoveCamera(Vector3 prePos, Vector3 nextPos)
{
float t = 0;
while (t < 1)
while (t < 0.5f)
{
t += Time.deltaTime;
Vector3 v = Vector3.Lerp(prePos, nextPos, t);
@@ -20,7 +20,7 @@ namespace Assets.Scenes.Ride.Scripts
cancelButton = transform.Find("CancelButton").GetComponent<Button>();
saveButton = transform.Find("SaveButton").GetComponent<Button>();
slider = transform.Find("Sensitivity").GetComponent<Slider>();
text = transform.Find("Sensitivity/Text").GetComponent<Text>();
text = transform.Find("Sensitivity/Button/Text").GetComponent<Text>();
text.text = App.RideSetting.Sensitivity.ToString("#0")+ "%";
slider.value =(float)App.RideSetting.Sensitivity;
slider.onValueChanged.AddListener((f) =>