SCIENTIFICALLY UGLY v3 - a shader pack that ruins every color on purpose
======================================================================

v2: smoothed the light/dark transition so block sides don't snap to a
jarring second color at the edge, spread the "dark" shades further apart
in hue/saturation so blocks stop reading as the same drab olive, bumped
the overlay opacity, and added a cheap 2x2 dither wobble for extra
low-bit-depth ugliness.

v3: fixed gray blocks turning blue in shadow/at dusk (a faint tint from
Minecraft's own ambient skylight was getting treated as if it were fully
saturated blue - it now fades toward neutral instead). Also added a full
chain of "opposite of every photography tip" effects: chromatic
aberration, wildly oversharpened edges (visible halo ringing), a harsh
contrast curve that crushes shadows and blows out highlights, visible
posterization banding, a hard-edged off-color vignette, and a
deliberately wrong white balance tint.

WHAT IT DOES
Every pixel Minecraft renders (blocks, entities, sky, sun, moon, water,
particles) gets sorted by hue into 8 color families, or a "neutral" bucket
if it's basically gray. Each family has an ugly LIGHT shade and an ugly
DARK shade - which one you get depends on whether the original pixel was
light or dark. The ugly color is then blended over the original at 55%
opacity (a straight "50-60% opacity overlay," as requested).

Examples:
- The sun is bright + high-saturation yellow -> acid highlighter yellow
- Dirt is dark + low-saturation orange-brown -> poop brown
- Stone/snow/white wool are low-saturation -> dishwater beige or drab
  brownish-olive (this dark neutral shade approximates Pantone 448C, a real
  color identified by a 2012 Australian government study as the least
  appealing color to smokers, later used worldwide for plain cigarette
  packaging - the actual "most scientifically ugly" color on record)

REQUIREMENTS
Vanilla Minecraft can't load shader packs on its own. You need ONE of:
  - Iris (for Fabric or Quilt): https://irisshaders.dev
  - OptiFine (Forge / vanilla-compatible): https://optifine.net

INSTALL
1. Install Iris or OptiFine for your Minecraft version.
2. Launch the game once with it so the "shaderpacks" folder gets created.
3. Drop this ScientificallyUgly.zip file straight into:
   .minecraft/shaderpacks/
   (Don't unzip it - both Iris and OptiFine read shader packs as zips.)
4. In-game: Options > Video Settings > Shader Packs (Iris) or
   Options > Shaders (OptiFine) > select "ScientificallyUgly".

TWEAKING
Open shaders/final.fsh in a text editor - all the knobs are the named
constants near the top of the file:
  - BLEND (0.62): overlay opacity of the ugly color. Lower = subtler,
    1.0 = full replace.
  - DITHER_STRENGTH (0.16): grainy dither wobble. 0.0 turns it off.
  - CA_STRENGTH (0.015): chromatic aberration (color fringing) amount.
    0.0 turns it off.
  - SHARPEN_STRENGTH (2.5): oversharpening/halo intensity. Real photo
    editors use ~0.3-0.8; lower this toward that range for something
    closer to normal, or push it higher for more ringing.
  - CONTRAST (1.9): how hard shadows crush and highlights blow out.
    1.0 = no extra contrast.
  - POSTERIZE_LEVELS (5.0): fewer levels = more visible color banding.
    Set very high (e.g. 256.0) to effectively disable it.
  - VIGNETTE_START / VIGNETTE_END (0.50 / 0.80) and VIGNETTE_TINT:
    where the vignette begins/ends and what dirty color it fades to.
  - WB_TINT: the wrong-white-balance color cast added to the whole image.
  - Any of the hueLight/hueDark vec3(...) colors in the if/else chain,
    or the hue cutoffs (45.0, 90.0, 135.0, ...) that decide where one
    color family ends and the next begins.
  - smoothstep(0.05, 0.22, sat): how much saturation a pixel needs before
    it's treated as "really" that color instead of fading toward neutral.
    Raise the top number if faint tints (like shadows) are still showing
    up too strongly colored.
  - smoothstep(0.30, 0.70, lig): how gradual the dark-to-light transition
    is. Narrow it (e.g. 0.45, 0.55) for a snappier two-tone look.
