using UnityEngine; using UnityEngine.Rendering.HighDefinition; public class WaterCheckComponent : MonoBehaviour { private WaterSearchParameters waterSearchParameters; private WaterSearchResult waterSearchResult; public WaterSurface water; private void Awake() { if (water == null) { water = Object.FindFirstObjectByType(); } } public bool IsInWater() { waterSearchParameters.startPositionWS = base.transform.position; water.ProjectPointOnWaterSurface(waterSearchParameters, out waterSearchResult); return base.transform.position.y < waterSearchResult.projectedPositionWS.y; } public bool IsInWater(Vector3 position) { waterSearchParameters.startPositionWS = position; water.ProjectPointOnWaterSurface(waterSearchParameters, out waterSearchResult); return position.y < waterSearchResult.projectedPositionWS.y; } }