还原水插件

This commit is contained in:
2026-03-05 00:14:42 +08:00
parent 0de35591e7
commit e82f2ea6b7
270 changed files with 2773 additions and 12445 deletions

View File

@@ -24,7 +24,9 @@ namespace WaveHarmonic.Crest
{
_Water = water;
renderPassEvent = RenderPassEvent.BeforeRenderingTransparents;
ConfigureInput(ScriptableRenderPassInput.None);
// Copy color happens between "after skybox" and "before transparency".
ConfigureInput(ScriptableRenderPassInput.Color | ScriptableRenderPassInput.Depth);
}
public static void Enable(WaterRenderer water)
@@ -56,14 +58,12 @@ namespace WaveHarmonic.Crest
}
// Our reflections do not need them.
if (camera == _Water.Reflections.ReflectionCamera)
if (camera == WaterReflections.CurrentCamera)
{
return;
}
var material = _Water.Surface.Material;
if (material == null)
if (Instance._Water.Surface.Material == null)
{
return;
}
@@ -73,15 +73,6 @@ namespace WaveHarmonic.Crest
return;
}
{
// Copy color happens between "after skybox" and "before transparency".
var pass = ScriptableRenderPassInput.Color | ScriptableRenderPassInput.Depth;
#if d_Crest_SimpleTransparency
pass = ScriptableRenderPassInput.None;
#endif
ConfigureInput(pass);
}
camera.GetUniversalAdditionalCameraData().scriptableRenderer.EnqueuePass(Instance);
}
@@ -122,7 +113,6 @@ namespace WaveHarmonic.Crest
var rld = new RendererListDesc(_ShaderTagID, renderingData.cullResults, cameraData.camera)
{
layerMask = 1 << _Water.Surface.Layer,
// Required to set the pass. Use shader to keep WB material overrides.
overrideShader = _Water.Surface.Material.shader,
overrideShaderPassIndex = 0, // UniversalForward
renderQueueRange = RenderQueueRange.transparent,
@@ -139,10 +129,7 @@ namespace WaveHarmonic.Crest
});
}
}
#endif
#if URP_COMPATIBILITY_MODE
#if UNITY_6000_0_OR_NEWER
[System.Obsolete]
#endif
public override void Execute(ScriptableRenderContext context, ref RenderingData renderingData)
@@ -157,7 +144,6 @@ namespace WaveHarmonic.Crest
var rld = new RendererListDesc(_ShaderTagID, renderingData.cullResults, renderingData.cameraData.camera)
{
layerMask = 1 << _Water.Surface.Layer,
// Required to set the pass. Use shader to keep WB material overrides.
overrideShader = _Water.Surface.Material.shader,
overrideShaderPassIndex = 0, // UniversalForward
renderQueueRange = RenderQueueRange.transparent,
@@ -170,7 +156,6 @@ namespace WaveHarmonic.Crest
context.ExecuteCommandBuffer(buffer);
CommandBufferPool.Release(buffer);
}
#endif
}
}
}