VynixShader (Lite)
===================

🌅 Enhanced lighting and shadows

* ☀️ Beautiful sunrises and sunsets
* 🌊 Realistic water reflections
* ☁️ Improved clouds and sky rendering
* 🌿 Vibrant, natural color grading
* 🌙 Better nighttime atmosphere
* ⚡ Optimized for high FPS
* 🎮 Great for Survival, Creative, and PvP

Rebuilt after a crash/stuck-loading-screen report. Changes made to fix it:

- Removed the #include "/common.glsl" file — some OptiFine/Iris builds
  fail to resolve custom include paths, which silently breaks shader
  compilation and leaves you stuck on the shader-loading screen. All
  helper code is now pasted directly into each file instead.
- Fixed viewWidth/viewHeight being declared as vec2 in the old
  composite shader — they are actually float uniforms in OptiFine/Iris.
  That type mismatch was a compile error, which is exactly the kind of
  bug that causes an infinite load or a hard crash.
- Removed the composite (bloom) and final (vignette/tonemap) passes
  entirely. Extra full-screen passes are the single biggest FPS cost in
  a shader pack. Cutting them gets you as close to 0% extra lag as a
  shadow-enabled pack can get.
- Shadow sampling is now a single texture lookup instead of a 9-tap
  blur (PCF). Shadows look slightly harder-edged, but cost far less.
- Lowered shadowMapResolution (1024) and shadowDistance (96) for lower
  GPU load. Raise these back up in shaders.properties if your PC can
  handle it and you want sharper/farther shadows.

Latest fixes
-------------
- Sun/moon were rendering as ovals instead of circles. The procedural
  glow in composite.fsh measured distance in raw screen UV space, which
  stretches on any non-square screen. Now corrected for aspect ratio,
  so they're round at any resolution.
- Mobs were "glowing" (rendering at full brightness even in pitch-dark
  caves). The pack had no gbuffers_entities shader, so OptiFine/Iris
  was falling back to a bare, unlit program for all entities. Added a
  proper gbuffers_entities.vsh/.fsh that samples the lightmap, so mobs
  now darken in the dark and light up correctly near torches/sunlight,
  same as terrain.
- Added animations:
  - Mobs get a subtle idle bob (MOB_IDLE_BOB, on by default) - the
    whole model shifts together so it never distorts, just gives a
    gentle "alive" feel instead of standing dead still.
  - Waving grass/crops/flowers, leaves, and water are now ON by
    default (previously required manually enabling them in the shader
    options).
  - Added sway for vines, kelp, and seagrass.

What's still included
-----------------------
- Real-time sun/moon shadows
- Waving grass/crops/flowers, leaves, vines/kelp/seagrass
- Waving water
- Idle mob bob animation
- In-game sliders: SHADOW_STRENGTH, SUN_BRIGHTNESS, WAVE_SPEED
- Toggles: WAVING_PLANTS, WAVING_WATER, WAVING_LEAVES, MOB_IDLE_BOB

Installation
-------------
1. Open Minecraft with OptiFine or Iris installed.
2. Options > Video Settings > Shaders... > Open Shader Pack Folder.
3. Copy VynixShader.zip into that folder (leave it zipped).
4. Select "VynixShader" in the shader list and click Done.

If it still gets stuck on loading
-----------------------------------
That screen is almost always a shader compile error, not a generic
crash. To diagnose:
1. Check the game's log (latest.log, or the shader debug screen if
   Iris shows one) for a line mentioning which .vsh/.fsh file failed
   and why.
2. Confirm your OptiFine/Iris build actually matches your Minecraft
   version — a mismatched build is the #1 cause of shaders refusing to
   load at all.
3. If a specific file is named in the error, that's the one to fix —
   feel free to paste the error back and I'll patch it directly.

Version compatibility: 1.21.x through 26.1/26.2 (same notes as before —
OptiFine/Iris reads this pack, not vanilla, so no version-specific
pack_format issues; just make sure your mod build matches your game
version).
