Minor - Add Assets And Support Dual Screen

This commit is contained in:
2026-02-03 16:15:50 +01:00
parent 76132c2cbe
commit 7a3d9e54c4
1039 changed files with 149985 additions and 21327 deletions

View File

@@ -0,0 +1,61 @@
namespace Assets.MobileOptimizedWater.Scripts
{
using UnityEngine;
using UnityEngine.UI;
public class CameraDepthSlider : MonoBehaviour
{
[SerializeField] private Slider slider;
[SerializeField] private Transform cameraTransform;
[Space]
[SerializeField] private float minDistance;
[SerializeField] private float maxDistance;
[Space]
[SerializeField] private float scrollDelta;
[SerializeField] private float scrollSpeed;
private Vector3 cameraDirectionToRoot;
private float currentScrollSpeed;
private float currentValue;
public void Awake()
{
cameraDirectionToRoot = cameraTransform.localPosition.normalized;
slider.value = 0.2f;
OnSliderValueChanged();
}
public void OnSliderValueChanged()
{
UpdateDepthPosition(slider.value);
}
#if UNITY_EDITOR
public void Update()
{
if (Input.GetKey(KeyCode.W))
{
currentScrollSpeed = Mathf.Lerp(currentScrollSpeed, currentScrollSpeed + scrollDelta, Time.deltaTime * scrollSpeed);
UpdateDepthPosition(Mathf.Lerp(currentValue, currentValue + currentScrollSpeed, Time.deltaTime * scrollSpeed));
}
else if (Input.GetKey(KeyCode.S))
{
currentScrollSpeed = Mathf.Lerp(currentScrollSpeed, currentScrollSpeed + scrollDelta, Time.deltaTime * scrollSpeed);
UpdateDepthPosition(Mathf.Lerp(currentValue, currentValue - currentScrollSpeed, Time.deltaTime * scrollSpeed));
}
currentScrollSpeed = 0f;
}
#endif
private void UpdateDepthPosition(float value)
{
currentValue = Mathf.Clamp(value, 0f, 1f);
cameraTransform.localPosition = cameraDirectionToRoot * Mathf.Lerp(minDistance, maxDistance, currentValue);
}
}
}