修改水

This commit is contained in:
2026-01-01 22:00:33 +08:00
parent 040a222bd6
commit 9ceffccd39
1800 changed files with 103929 additions and 139495 deletions

View File

@@ -0,0 +1,40 @@
// Crest Water System
// Copyright © 2024 Wave Harmonic. All rights reserved.
using UnityEngine;
using WaveHarmonic.Crest.Internal;
namespace WaveHarmonic.Crest.Examples
{
/// <summary>
/// Places the game object on the water surface by moving it vertically.
/// </summary>
[AddComponentMenu(Constants.k_MenuPrefixSample + "Sample Height Demo")]
sealed class SampleHeightDemo : ManagedBehaviour<WaterRenderer>
{
[SerializeField, HideInInspector]
#pragma warning disable 414
int _Version = 0;
#pragma warning restore 414
[Tooltip(ICollisionProvider.k_LayerTooltip)]
[SerializeField]
CollisionLayer _Layer;
readonly SampleCollisionHelper _SampleHeightHelper = new();
private protected override System.Action<WaterRenderer> OnUpdateMethod => OnUpdate;
void OnUpdate(WaterRenderer water)
{
// Assume a primitive like a sphere or box.
var r = transform.lossyScale.magnitude;
if (_SampleHeightHelper.SampleHeight(transform.position, out var height, minimumLength: 2f * r, _Layer))
{
var pos = transform.position;
pos.y = height;
transform.position = pos;
}
}
}
}