mirror of
https://github.com/Kelsidavis/WoWee.git
synced 2026-03-22 23:30:14 +00:00
Fix sun quad square artifact with hard radial discard cutoff
Add hard discard at radius 0.35 so no fragment beyond that point reaches the additive blend stage. Tighten disc, glow, and edge fade to fit within the cutoff boundary.
This commit is contained in:
parent
0a1e240831
commit
5072c536b5
2 changed files with 9 additions and 6 deletions
|
|
@ -27,17 +27,20 @@ void main() {
|
|||
vec2 uv = TexCoord - 0.5;
|
||||
float dist = length(uv);
|
||||
|
||||
// Hard disc with smooth edge
|
||||
float disc = smoothstep(0.42, 0.35, dist);
|
||||
// Hard circular cutoff — nothing beyond radius 0.35
|
||||
if (dist > 0.35) discard;
|
||||
|
||||
// Soft glow that fades to zero well within quad bounds
|
||||
float glow = exp(-dist * dist * 32.0) * 0.5;
|
||||
// Hard disc with smooth edge
|
||||
float disc = smoothstep(0.35, 0.28, dist);
|
||||
|
||||
// Soft glow confined within cutoff radius
|
||||
float glow = exp(-dist * dist * 40.0) * 0.5;
|
||||
|
||||
// Combine disc and glow
|
||||
float alpha = max(disc, glow) * push.intensity;
|
||||
|
||||
// Fade to zero well before quad edges
|
||||
float edgeFade = 1.0 - smoothstep(0.30, 0.38, dist);
|
||||
// Smooth fade to zero at cutoff boundary
|
||||
float edgeFade = 1.0 - smoothstep(0.25, 0.35, dist);
|
||||
alpha *= edgeFade;
|
||||
|
||||
vec3 color = push.celestialColor.rgb;
|
||||
|
|
|
|||
Binary file not shown.
Loading…
Add table
Add a link
Reference in a new issue