fix(memory): 增强记忆调谐清晰度与扭曲表现

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-07-01 21:12:51 +08:00
co-authored by Cursor
parent df70089ecc
commit d6e7afe4b3
2 changed files with 6 additions and 6 deletions
@@ -18,7 +18,7 @@ namespace AibisDream.FixSystem
private const float DefaultFadeDuration = 1f;
private const float SearchStartDelay = 1f;
private const float ProjectorMoveDuration = 2f;
private const float MaxClarityDistortion = 0.58f;
private const float MaxClarityDistortion = 1f;
private const float MaxFrequencyBlur = 0.6f;
private const float MinPixelDensity = 18f;
private const float MaxPixelDensity = 96f;
@@ -11,9 +11,9 @@ Shader "AibisDream/MemoryTuningSprite"
_PixelMin ("Pixel Min", Range(8,64)) = 18
_PixelMax ("Pixel Max", Range(32,256)) = 128
_BlurStep ("Blur Step", Range(0,0.01)) = 0.0025
_DistortStrength ("Distort Strength", Range(0,0.05)) = 0.018
_DistortStrength ("Distort Strength", Range(0,0.08)) = 0.035
_ChromaticStrength ("Chromatic Strength", Range(0,0.03)) = 0.008
_FadeDistortStrength ("Fade Distort Strength", Range(0,0.2)) = 0.08
_FadeDistortStrength ("Fade Distort Strength", Range(0,0.2)) = 0.12
_PixelateFade ("Pixelate Fade", Range(0,1)) = 0
_PixelatePixelDensity ("Pixelate Pixel Density", Range(6,160)) = 96
_GaussianBlurFade ("Gaussian Blur Fade", Range(0,1)) = 0
@@ -123,10 +123,10 @@ Shader "AibisDream/MemoryTuningSprite"
float angle = radians(130.0);
float2 dir = float2(cos(angle), sin(angle));
float2 side = float2(-sin(angle), cos(angle));
float2 edge = smoothstep(0.0, 0.12, uv) * smoothstep(0.0, 0.12, 1.0 - uv);
float2 edge = smoothstep(0.0, 0.07, uv) * smoothstep(0.0, 0.07, 1.0 - uv);
float edgeMask = edge.x * edge.y;
float wave = sin(dot(uv - 0.5, dir) * 27.2 + _Time.y * 2.15);
float volFxStrength = lerp(0.006, 0.026, saturate(_UVDistortFade)) * strength;
float volFxStrength = lerp(_DistortStrength * 0.55, _DistortStrength, saturate(_UVDistortFade)) * strength;
return uv + side * wave * volFxStrength * edgeMask;
}
@@ -173,7 +173,7 @@ Shader "AibisDream/MemoryTuningSprite"
half frequency = saturate(_FrequencyTuning);
half pixelate = pow(max(frequency, saturate(_PixelateFade)), 0.75);
half blur = pow(max(frequency, saturate(_GaussianBlurFade)), 0.75);
half distortion = pow(max(clarity, saturate(_UVDistortFade / 0.58)), 0.75);
half distortion = pow(max(clarity, saturate(_UVDistortFade)), 0.85);
float2 uv = input.uv;
half fade = saturate((_DirectionalDistortionFade + 15.0) / 15.0);