升级水插件

This commit is contained in:
2026-01-08 22:30:55 +08:00
parent febff82d24
commit ca68084264
415 changed files with 18138 additions and 7134 deletions

View File

@@ -10,10 +10,14 @@ namespace WaveHarmonic.Crest.Editor
[CustomEditor(typeof(WaterRenderer))]
sealed class WaterRendererEditor : Inspector
{
// Whether validation was triggered by user request, which should never skip console logging.
internal static bool ManualValidation { get; private set; }
WaterRenderer _Target;
void OnEnable()
protected override void OnEnable()
{
base.OnEnable();
_Target = (WaterRenderer)target;
}
@@ -65,9 +69,9 @@ namespace WaveHarmonic.Crest.Editor
if (i < target.LodLevels - 1) message += "\n\n";
}
if (target.Material.HasVector(WaterRenderer.ShaderIDs.s_Absorption))
if (target.Surface.Material.HasVector(WaterRenderer.ShaderIDs.s_Absorption))
{
message += $"\n\nDepth Fog Density: {target.Material.GetVector(WaterRenderer.ShaderIDs.s_Absorption)}";
message += $"\n\nDepth Fog Density: {target.Surface.Material.GetVector(WaterRenderer.ShaderIDs.s_Absorption)}";
}
EditorGUILayout.HelpBox(message, MessageType.None);
@@ -98,6 +102,8 @@ namespace WaveHarmonic.Crest.Editor
if (GUILayout.Button("Validate Setup"))
{
ManualValidation = true;
ValidatedHelper.ExecuteValidators(target, ValidatedHelper.DebugLog);
foreach (var component in FindObjectsByType<EditorBehaviour>(FindObjectsSortMode.None))
@@ -107,6 +113,8 @@ namespace WaveHarmonic.Crest.Editor
}
Debug.Log("Crest: Validation complete!", target);
ManualValidation = false;
}
}
}
@@ -128,8 +136,10 @@ namespace WaveHarmonic.Crest.Editor
_HostComponentType = hostComponentType;
}
void OnEnable()
protected override void OnEnable()
{
base.OnEnable();
Undo.undoRedoEvent -= OnUndoRedo;
Undo.undoRedoEvent += OnUndoRedo;
}
@@ -297,7 +307,8 @@ namespace WaveHarmonic.Crest.Editor
switch (spectrumModel)
{
case WaveSpectrum.SpectrumModel.PiersonMoskowitz:
spec.ApplyPiersonMoskowitzSpectrum();
var water = WaterRenderer.Instance;
spec.ApplyPiersonMoskowitzSpectrum(water != null ? water.Gravity : Mathf.Abs(Physics.gravity.y));
break;
}
}
@@ -383,7 +394,7 @@ namespace WaveHarmonic.Crest.Editor
var canBake = !onDemand && !Application.isPlaying;
var canPopulate = Application.isPlaying ? onDemand : target.Type != DepthProbeMode.Baked;
if (target.SavedTexture != null && isBaked ? GUILayout.Button("Switch to Real-Time") : GUILayout.Button("Switch to Baked"))
if (isBaked ? GUILayout.Button("Switch to Real-Time") : target.SavedTexture != null && GUILayout.Button("Switch to Baked"))
{
Undo.RecordObject(target, isBaked ? "Switch to Real-Time" : "Switch to Baked");
target.Type = isBaked ? DepthProbeMode.RealTime : DepthProbeMode.Baked;
@@ -451,6 +462,10 @@ namespace WaveHarmonic.Crest.Editor
settings.singleChannelComponent = TextureImporterSingleChannelComponent.Red;
ti.SetTextureSettings(settings);
}
else
{
ti.textureType = TextureImporterType.Default;
}
// Set format.
{