From 14401349b861406036cdc967b4960b31d7bb84a9 Mon Sep 17 00:00:00 2001 From: samsonsin Date: Sun, 8 Jun 2025 01:32:29 +0200 Subject: [PATCH] Added Sildurs Enhanced Default Shaderpack --- ...Sildur's Enhanced Default v1.172 Fancy.txt | 2 + .../shaders/block.properties | 88 +++++ .../shaders/composite.fsh | 332 +++++++++++++++++ .../shaders/composite.vsh | 35 ++ .../shaders/composite1.fsh | 167 +++++++++ .../shaders/composite1.vsh | 18 + .../shaders/entity.properties | 1 + .../shaders/final.fsh | 154 ++++++++ .../shaders/final.vsh | 23 ++ .../shaders/gbuffers_clouds.fsh | 39 ++ .../shaders/gbuffers_clouds.vsh | 45 +++ .../shaders/gbuffers_skybasic.fsh | 32 ++ .../shaders/gbuffers_skybasic.vsh | 21 ++ .../shaders/gbuffers_skytextured.fsh | 22 ++ .../shaders/gbuffers_skytextured.vsh | 41 +++ .../shaders/gbuffers_textured.fsh | 264 +++++++++++++ .../shaders/gbuffers_textured.vsh | 347 ++++++++++++++++++ .../shaders/lang/en_US.lang | 215 +++++++++++ .../shaders/shaders.properties | 65 ++++ .../shaders/shaders.settings | 112 ++++++ .../shaders/shadow.fsh | 25 ++ .../shaders/shadow.vsh | 42 +++ .../shaders/world-1/composite.fsh | 1 + .../shaders/world-1/composite.vsh | 1 + .../shaders/world-1/composite1.fsh | 1 + .../shaders/world-1/composite1.vsh | 1 + .../shaders/world-1/final.fsh | 1 + .../shaders/world-1/final.vsh | 1 + .../shaders/world-1/gbuffers_skytextured.fsh | 1 + .../shaders/world-1/gbuffers_skytextured.vsh | 1 + .../shaders/world-1/gbuffers_textured.fsh | 1 + .../shaders/world-1/gbuffers_textured.vsh | 1 + .../shaders/world-1/shadow.fsh | 4 + .../shaders/world-1/shadow.vsh | 4 + .../shaders/world1/composite.fsh | 1 + .../shaders/world1/composite.vsh | 1 + .../shaders/world1/composite1.fsh | 1 + .../shaders/world1/composite1.vsh | 1 + .../shaders/world1/final.fsh | 1 + .../shaders/world1/final.vsh | 1 + .../shaders/world1/gbuffers_skytextured.fsh | 1 + .../shaders/world1/gbuffers_skytextured.vsh | 1 + .../shaders/world1/gbuffers_textured.fsh | 1 + .../shaders/world1/gbuffers_textured.vsh | 1 + .../shaders/world1/shadow.fsh | 4 + .../shaders/world1/shadow.vsh | 4 + README.md | 1 + 47 files changed, 2127 insertions(+) create mode 100644 .minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy.txt create mode 100644 .minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/block.properties create mode 100644 .minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/composite.fsh create mode 100644 .minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/composite.vsh create mode 100644 .minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/composite1.fsh create mode 100644 .minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/composite1.vsh create mode 100644 .minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/entity.properties create mode 100644 .minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/final.fsh create mode 100644 .minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/final.vsh create mode 100644 .minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/gbuffers_clouds.fsh create mode 100644 .minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/gbuffers_clouds.vsh create mode 100644 .minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/gbuffers_skybasic.fsh create mode 100644 .minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/gbuffers_skybasic.vsh create mode 100644 .minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/gbuffers_skytextured.fsh create mode 100644 .minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/gbuffers_skytextured.vsh create mode 100644 .minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/gbuffers_textured.fsh create mode 100644 .minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/gbuffers_textured.vsh create mode 100644 .minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/lang/en_US.lang create mode 100644 .minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/shaders.properties create mode 100644 .minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/shaders.settings create mode 100644 .minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/shadow.fsh create mode 100644 .minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/shadow.vsh create mode 100644 .minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world-1/composite.fsh create mode 100644 .minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world-1/composite.vsh create mode 100644 .minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world-1/composite1.fsh create mode 100644 .minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world-1/composite1.vsh create mode 100644 .minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world-1/final.fsh create mode 100644 .minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world-1/final.vsh create mode 100644 .minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world-1/gbuffers_skytextured.fsh create mode 100644 .minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world-1/gbuffers_skytextured.vsh create mode 100644 .minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world-1/gbuffers_textured.fsh create mode 100644 .minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world-1/gbuffers_textured.vsh create mode 100644 .minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world-1/shadow.fsh create mode 100644 .minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world-1/shadow.vsh create mode 100644 .minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world1/composite.fsh create mode 100644 .minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world1/composite.vsh create mode 100644 .minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world1/composite1.fsh create mode 100644 .minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world1/composite1.vsh create mode 100644 .minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world1/final.fsh create mode 100644 .minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world1/final.vsh create mode 100644 .minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world1/gbuffers_skytextured.fsh create mode 100644 .minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world1/gbuffers_skytextured.vsh create mode 100644 .minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world1/gbuffers_textured.fsh create mode 100644 .minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world1/gbuffers_textured.vsh create mode 100644 .minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world1/shadow.fsh create mode 100644 .minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world1/shadow.vsh diff --git a/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy.txt b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy.txt new file mode 100644 index 00000000..7dde2cb7 --- /dev/null +++ b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy.txt @@ -0,0 +1,2 @@ +#Sun Jun 08 01:23:13 CEST 2025 +TAA=false diff --git a/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/block.properties b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/block.properties new file mode 100644 index 00000000..4d58cf05 --- /dev/null +++ b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/block.properties @@ -0,0 +1,88 @@ +#Forge mods may add custom block mapping as "assets//shaders/block.properties" in the mod JAR file. +#Format "block.= ..." +#Only one line per block ID is allowed. +# Short format +#block.31=red_flower yellow_flower reeds +# Long format +#block.32=minecraft:red_flower ic2:nether_flower botania:reeds +# Properties +#block.33=minecraft:red_flower:type=white_tulip minecraft:red_flower:type=pink_tulip botania:reeds:type=green +# Block ID, Metadata (backwards compatibility) +#block.34=38:6 38:7 83 +#================================================================================================================== + +#if MC_VERSION >= 12006 +# WAVING ENTITIES +# small grass, fern +block.10031 = short_grass fern + +# Small entities +block.10059 = wheat dead_bush brown_mushroom red_mushroom oak_sapling spruce_sapling birch_sapling jungle_sapling acacia_sapling dark_oak_sapling dandelion poppy blue_orchid allium azure_bluet red_tulip orange_tulip white_tulip pink_tulip oxeye_daisy carrots beetroots potatoes lily_of_the_valley wither_rose cornflower sweet_berry_bush crimson_fungus warped_fungus crimson_roots warped_roots nether_sprouts mangrove_propagule cherry_sapling pink_petals torchflower_crop torchflower pale_oak_sapling closed_eyeblossom open_eyeblossom bush firefly_bush cactus_flower wildflowers short_dry_grass tall_dry_grass + +# Tall grass/Tall flowers +block.10175 = sunflower:half=lower lilac:half=lower tall_grass:half=lower large_fern:half=lower rose_bush:half=lower peony:half=lower small_dripleaf:half=lower pitcher_plant:half=lower +block.10176 = sunflower:half=upper lilac:half=upper tall_grass:half=upper large_fern:half=upper rose_bush:half=upper peony:half=upper small_dripleaf:half=upper big_dripleaf big_dripleaf_stem azalea flowering_azalea pitcher_plant:half=upper +# Inverted lower half, so they hang from the ceiling +block.10177 = hanging_roots + +# Leaves +block.10018 = oak_leaves spruce_leaves birch_leaves jungle_leaves acacia_leaves dark_oak_leaves azalea_leaves flowering_azalea_leaves mangrove_leaves cherry_leaves pale_oak_leaves +# vines +block.10106 = vine weeping_vines_plant weeping_vines twisting_vines_plant twisting_vines cave_vines_plant cave_vines pale_hanging_moss + +# lilypad +block.10111 = lily_pad + +# fire +block.10051 = fire + +# Lava +block.10010 = lava + +# REFLECTIONS +# Water reflections (8, 9), also used for waving water +block.10008 = water +# Transparent reflections, ice(79), stained glass(95, 160), slimeblock(165) +block.10079 = ice honey_block slime_block white_stained_glass orange_stained_glass magenta_stained_glass light_blue_stained_glass yellow_stained_glass lime_stained_glass pink_stained_glass gray_stained_glass light_gray_stained_glass cyan_stained_glass purple_stained_glass blue_stained_glass brown_stained_glass green_stained_glass red_stained_glass black_stained_glass white_stained_glass_pane orange_stained_glass_pane magenta_stained_glass_pane light_blue_stained_glass_pane yellow_stained_glass_pane lime_stained_glass_pane pink_stained_glass_pane gray_stained_glass_pane light_gray_stained_glass_pane cyan_stained_glass_pane purple_stained_glass_pane blue_stained_glass_pane brown_stained_glass_pane green_stained_glass_pane red_stained_glass_pane black_stained_glass_pane +# Emissive entities (glowstone 89) +block.10089 = vault glowstone torch wall_torch redstone_torch:lit=true redstone_wall_torch:lit=true redstone_lamp:lit=true furnace:lit=true blast_furnace:lit=true smoker:lit=true jack_o_lantern beacon campfire lantern:hanging=false shroomlight candle:lit=true white_candle:lit=true orange_candle:lit=true magenta_candle:lit=true light_blue_candle:lit=true yellow_candle:lit=true lime_candle:lit=true pink_candle:lit=true gray_candle:lit=true black_candle:lit=true light_gray_candle:lit=true red_candle:lit=true cyan_candle:lit=true purple_candle:lit=true blue_candle:lit=true brown_candle:lit=true green_candle:lit=true glow_item_frame glow_lichen light cave_vines_plant:berries=true cave_vines:berries=true +block.10090 = lantern:hanging=true soul_lantern:hanging=true +block.10091 = soul_fire soul_lantern soul_torch soul_campfire:lit=true +# blocks that shouldn't be diffused +block.20000 = cobweb nether_wart spore_blossom pitcher_crop +block.10300 = lectern +# Fallback for 1.20.2 and below: +#elif MC_VERSION >= 11300 +block.10031 = grass fern +block.10059 = wheat dead_bush brown_mushroom red_mushroom oak_sapling spruce_sapling birch_sapling jungle_sapling acacia_sapling dark_oak_sapling dandelion poppy blue_orchid allium azure_bluet red_tulip orange_tulip white_tulip pink_tulip oxeye_daisy carrots beetroots potatoes lily_of_the_valley wither_rose cornflower sweet_berry_bush crimson_fungus warped_fungus crimson_roots warped_roots nether_sprouts mangrove_propagule cherry_sapling pink_petals torchflower_crop torchflower +block.10175 = sunflower:half=lower lilac:half=lower tall_grass:half=lower large_fern:half=lower rose_bush:half=lower peony:half=lower small_dripleaf:half=lower pitcher_plant:half=lower +block.10176 = sunflower:half=upper lilac:half=upper tall_grass:half=upper large_fern:half=upper rose_bush:half=upper peony:half=upper small_dripleaf:half=upper big_dripleaf big_dripleaf_stem azalea flowering_azalea pitcher_plant:half=upper +block.10177 = hanging_roots +block.10018 = oak_leaves spruce_leaves birch_leaves jungle_leaves acacia_leaves dark_oak_leaves azalea_leaves flowering_azalea_leaves mangrove_leaves cherry_leaves +block.10106 = vine weeping_vines_plant weeping_vines twisting_vines_plant twisting_vines cave_vines_plant cave_vines +block.10111 = lily_pad +block.10051 = fire +block.10010 = lava +block.10008 = water +block.10079 = ice honey_block slime_block white_stained_glass orange_stained_glass magenta_stained_glass light_blue_stained_glass yellow_stained_glass lime_stained_glass pink_stained_glass gray_stained_glass light_gray_stained_glass cyan_stained_glass purple_stained_glass blue_stained_glass brown_stained_glass green_stained_glass red_stained_glass black_stained_glass white_stained_glass_pane orange_stained_glass_pane magenta_stained_glass_pane light_blue_stained_glass_pane yellow_stained_glass_pane lime_stained_glass_pane pink_stained_glass_pane gray_stained_glass_pane light_gray_stained_glass_pane cyan_stained_glass_pane purple_stained_glass_pane blue_stained_glass_pane brown_stained_glass_pane green_stained_glass_pane red_stained_glass_pane black_stained_glass_pane +block.10089 = glowstone torch wall_torch redstone_torch:lit=true redstone_wall_torch:lit=true redstone_lamp:lit=true furnace:lit=true blast_furnace:lit=true smoker:lit=true jack_o_lantern beacon campfire lantern:hanging=false shroomlight candle:lit=true white_candle:lit=true orange_candle:lit=true magenta_candle:lit=true light_blue_candle:lit=true yellow_candle:lit=true lime_candle:lit=true pink_candle:lit=true gray_candle:lit=true black_candle:lit=true light_gray_candle:lit=true red_candle:lit=true cyan_candle:lit=true purple_candle:lit=true blue_candle:lit=true brown_candle:lit=true green_candle:lit=true glow_item_frame glow_lichen light cave_vines_plant:berries=true cave_vines:berries=true +block.10090 = lantern:hanging=true soul_lantern:hanging=true +block.10091 = soul_fire soul_lantern soul_torch soul_campfire:lit=true +block.20000 = cobweb nether_wart spore_blossom pitcher_crop +block.10300 = lectern +# Fallback for 1.12.2 and below: +#else +block.10031 = tallgrass +block.10059 = wheat deadbush sapling yellow_flower red_flower carrots beetroot potatoes +block.10175 = double_plant:half=lower +block.10176 = double_plant:half=upper +block.10018 = leaves leaves2 +block.10106 = vine +block.10111 = waterlily +block.10051 = fire +block.10010 = flowing_lava lava +block.10008 = flowing_water water +block.10079 = ice slime stained_glass stained_glass_pane +block.20000 = web nether_wart +block.10089 = glowstone torch wall_torch redstone_torch redstone_wall_torch jack_o_lantern redstone_lamp beacon campfire lantern +#endif \ No newline at end of file diff --git a/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/composite.fsh b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/composite.fsh new file mode 100644 index 00000000..2ad5863c --- /dev/null +++ b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/composite.fsh @@ -0,0 +1,332 @@ +#version 120 +/* DRAWBUFFERS:02 */ //0=gcolor, 2=gnormal for normals +/* +Sildur's Enhanced Default: +https://www.patreon.com/Sildur +https://sildurs-shaders.github.io/ +https://twitter.com/Sildurs_shaders +https://www.curseforge.com/minecraft/customization/sildurs-enhanced-default + +Permissions: +You are not allowed to edit, copy code or share my shaderpack under a different name or claim it as yours. +*/ + +#define composite0 +#include "shaders.settings" + +varying vec2 texcoord; +varying vec4 color; +uniform vec3 shadowLightPosition; +uniform mat4 gbufferProjectionInverse; +uniform sampler2D texture; +uniform sampler2D gnormal; //used by reflections and celshading +uniform sampler2D depthtex0; +uniform sampler2D depthtex1; +uniform float viewWidth; +uniform float viewHeight; +uniform float near; +uniform float far; +uniform int isEyeInWater; + +vec3 decode (vec2 enc){ + vec2 fenc = enc*4-2; + float f = dot(fenc,fenc); + float g = sqrt(1-f/4.0); + vec3 n; + n.xy = fenc*g; + n.z = 1-f/2; + return n; +} + +float cdist(vec2 coord) { + return clamp(1.0 - max(abs(coord.s-0.5),abs(coord.t-0.5))*2.0, 0.0, 1.0); +} + +vec3 screenSpace(vec2 coord, float depth){ + vec4 pos = gbufferProjectionInverse * (vec4(coord, depth, 1.0) * 2.0 - 1.0); + return pos.xyz/pos.w; +} + +vec3 toScreenSpace(vec3 pos) { + vec4 iProjDiag = vec4(gbufferProjectionInverse[0].x, gbufferProjectionInverse[1].y, gbufferProjectionInverse[2].zw); + vec3 p3 = pos * 2.0 - 1.0; + vec4 fragposition = iProjDiag * p3.xyzz + gbufferProjectionInverse[3]; + return fragposition.xyz / fragposition.w; +} + +#ifdef SSAO +uniform float aspectRatio; +const vec2 check_offsets[25] = vec2[25](vec2(-0.4894566f,-0.3586783f), + vec2(-0.1717194f,0.6272162f), + vec2(-0.4709477f,-0.01774091f), + vec2(-0.9910634f,0.03831699f), + vec2(-0.2101292f,0.2034733f), + vec2(-0.7889516f,-0.5671548f), + vec2(-0.1037751f,-0.1583221f), + vec2(-0.5728408f,0.3416965f), + vec2(-0.1863332f,0.5697952f), + vec2(0.3561834f,0.007138769f), + vec2(0.2868255f,-0.5463203f), + vec2(-0.4640967f,-0.8804076f), + vec2(0.1969438f,0.6236954f), + vec2(0.6999109f,0.6357007f), + vec2(-0.3462536f,0.8966291f), + vec2(0.172607f,0.2832828f), + vec2(0.4149241f,0.8816f), + vec2(0.136898f,-0.9716249f), + vec2(-0.6272043f,0.6721309f), + vec2(-0.8974028f,0.4271871f), + vec2(0.5551881f,0.324069f), + vec2(0.9487136f,0.2605085f), + vec2(0.7140148f,-0.312601f), + vec2(0.0440252f,0.9363738f), + vec2(0.620311f,-0.6673451f) + ); + +//modified version of Yuriy O'Donnell's SSDO (License MIT -> https://github.com/kayru/dssdo) +float calcSSDO(vec3 fragpos, vec3 normal){ + float finalAO = 0.0; + float radius = 0.05 / (fragpos.z); + const float attenuation_angle_threshold = 0.1; + const int num_samples = 16; + const float ao_weight = 1.0; + + for( int i=0; i 1 || pos.y < 0 || pos.y > 1 || pos.z < 0 || pos.z > 1.0) break; + vec3 fragpos1 = screenSpace(pos.xy, texture2D(depthtex1, pos.st).x); + float err = distance(start, fragpos1); + if(err < pow(length(rvector),1.35)){ + sr++; + if(sr >= maxf){ + color = texture2D(texture, pos.st); + color.a = cdist(pos.st); + break; + } + tvector -= rvector; + rvector *= ref; + +} + rvector *= inc; + tvector += rvector; + start = fragpos0 + tvector; + } + + return color; +}/*--------------------------------------*/ +#endif + +#ifdef Refractions +uniform sampler2D noisetex; +uniform float frameTimeCounter; +uniform vec3 cameraPosition; +uniform mat4 gbufferModelViewInverse; + +mat2 rmatrix(float rad){ + return mat2(vec2(cos(rad), -sin(rad)), vec2(sin(rad), cos(rad))); +} +float calcWaves(vec2 coord){ + vec2 movement = abs(vec2(0.0, -frameTimeCounter * 0.31365))*0.90; //make it a bit slower than in vibrant shaders + + coord *= 0.262144; + vec2 coord0 = coord * rmatrix(1.0) - movement * 4.0; + coord0.y *= 3.0; + vec2 coord1 = coord * rmatrix(0.5) - movement * 1.5; + coord1.y *= 3.0; + + float wave = 1.0 - texture2D(noisetex,coord0 * 0.005).x * 10.0; //big waves + wave += texture2D(noisetex,coord1 * 0.010416).x * 7.0; //small waves + wave *= 0.0157; + + return wave; +} +vec2 calcBump(vec2 coord){ + const vec2 deltaPos = vec2(0.25, 0.0); + + float h0 = calcWaves(coord); + float h1 = calcWaves(coord + deltaPos.xy); + float h2 = calcWaves(coord - deltaPos.xy); + float h3 = calcWaves(coord + deltaPos.yx); + float h4 = calcWaves(coord - deltaPos.yx); + + float xDelta = ((h1-h0)+(h0-h2)); + float yDelta = ((h3-h0)+(h0-h4)); + + return vec2(xDelta,yDelta)*0.05; +} +#endif + +#ifdef Celshading +float pw = 1.0/ viewWidth; +float ph = 1.0/ viewHeight; +float getdepth(vec2 coord) { + return texture2D(depthtex0,coord).x; +} +vec3 celshade(vec3 c) { + //edge detect + float dtresh = 1/(far-near)* 0.0005; + vec4 dc = vec4(getdepth(texcoord.xy)); + + vec4 sa = vec4(getdepth(texcoord.xy + vec2(-pw,-ph)), + getdepth(texcoord.xy + vec2(pw,-ph)), + getdepth(texcoord.xy + vec2(-pw,0.0)), + getdepth(texcoord.xy + vec2(0.0,ph))); + + //opposite side samples + vec4 sb = vec4(getdepth(texcoord.xy + vec2(pw,ph)), + getdepth(texcoord.xy + vec2(-pw,ph)), + getdepth(texcoord.xy + vec2(pw,0.0)), + getdepth(texcoord.xy + vec2(0.0,-ph))); + + vec4 dd = abs(2.0* dc - sa - sb) - dtresh; + dd = step(dd.xyzw, vec4(0.0)); + + float e = clamp(dot(dd,vec4(0.25f)),0.0,1.0); + return c*e; +} +#endif + +#ifdef Godrays +varying vec2 lightPos; +float land = 1.0-near/far/far; +float getnoise(vec2 pos) { + return fract(sin(dot(pos ,vec2(18.9898f,28.633f))) * 4378.5453f); +} +vec3 calcRays(vec3 color){ + vec2 deltatexcoord = vec2(lightPos - texcoord) * 0.04; +#if grays_quality == 1 + vec2 noisetc = texcoord; //fast unfiltered +#elif grays_quality == 2 + vec2 noisetc = texcoord + deltatexcoord*getnoise(texcoord); //slow filtered +#endif + + float gr = 1.0; + for (int i = 0; i < 20; i++) { + float depth0 = texture2D(depthtex0, noisetc).x; + noisetc += deltatexcoord; + gr += dot(step(land, depth0), 1.0)*cdist(noisetc); + } + gr /= 20.0; + + vec3 gfragpos0 = screenSpace(texcoord.xy, texture2D(depthtex0, texcoord.xy).x); + float lightpos = clamp(dot(normalize(gfragpos0.xyz), normalize(shadowLightPosition.xyz)), 0.0, 1.0)*gr*grays_intensity; + return color *= 1.0+lightpos*color * (1.0 - isEyeInWater); +} +#endif + +#ifdef skyReflection +uniform vec3 skyColor; +#endif + +void main() { + + vec4 tex = texture2D(texture, texcoord.xy)*color; + vec3 normal = texture2D(gnormal, texcoord.xy).xyz; //vec2 for normals, z=mat + vec3 newnormal = decode(normal.xy); + vec3 fragPos = toScreenSpace(vec3(texcoord, texture2D(depthtex0, texcoord.xy).x)); + + float getmat = normal.z*2.0; + //bool iswater = getmat > 0.9 && getmat < 1.1; + bool isreflective = getmat > 0.9 && getmat < 2.1; + bool isice = getmat > 1.9 && getmat < 2.1; + bool iswaterlava = (isEyeInWater == 1.0 || isEyeInWater == 2.0); + +#ifdef SSAO + vec3 ao_normal = normalize(cross(dFdx(fragPos),dFdy(fragPos))); + if(!iswaterlava)tex.rgb *= mix(calcSSDO(fragPos, ao_normal), 1.0, 1.0-exp(-length(fragPos)/(0.2*far-near))); //set an offset and scale ao with render distance +#endif + +#ifdef Celshading + if(!isreflective)tex.rgb = mix(celshade(tex.rgb), tex.rgb, 1.0-exp(-length(fragPos)/(0.3*far-near))); //set an offset and scale celshading with render distance +#endif + +#ifdef Reflections +if(isreflective && isEyeInWater < 0.9){ + #ifdef skyReflection + vec3 finalskyC = mix(tex.rgb, skyColor.rgb, clamp((eyeBrightnessSmooth.y/255.0-2.0/16.0)*1.5,0.0,1.0)); //change skycolor to texcolor in low light areas to prevent day/night issues. + vec4 relfcolor = vec4(finalskyC*0.75, 1.0); + #else + vec4 relfcolor = tex; + #endif + vec4 reflection = raytrace(relfcolor, newnormal.xyz); + //tex.rgb = mix(tex.rgb, reflection.rgb, tex.a*reflection.a); + + vec3 normfrag1 = normalize(screenSpace(texcoord.xy, texture2D(depthtex1, texcoord.xy).x)); + + vec3 rVector = reflect(normfrag1, normalize(newnormal.xyz)); + vec3 hV= normalize(rVector - normfrag1); + + float normalDotEye = dot(hV, normfrag1); + float F0 = 0.09; + float fresnel = pow(clamp(1.0 + normalDotEye,0.0,1.0), 4.0) ; + fresnel = fresnel+F0*(1.0-fresnel); + +#ifdef Refractions + vec4 fragpos0 = gbufferProjectionInverse * (vec4(texcoord, texture2D(depthtex0, texcoord).x, 1.0) * 2.0 - 1.0); + fragpos0 /= fragpos0.w; + vec2 wpos = (gbufferModelViewInverse*fragpos0).xz+cameraPosition.xz; + if(!isice)tex.rgb = texture2D(texture, (texcoord.xy+calcBump(wpos))).rgb*color.rgb; +#endif + + reflection.rgb = mix(relfcolor.rgb, reflection.rgb, reflection.a); //maybe change tex with skycolor + tex.rgb = mix(tex.rgb, reflection.rgb, fresnel*1.25); +} +#endif + +#ifdef Godrays + tex.rgb = calcRays(tex.rgb); +#endif + +#ifdef depthbuffer +float c = (2.0 * near) / (far + near - texture2D(depthtex0, texcoord.xy).x * (far - near)); //convert to linear values +tex.rgb = vec3(c); +#endif + +#ifdef draw_refnormals +tex.rgb = normal.rgb; +#endif + + gl_FragData[0] = tex; + gl_FragData[1] = vec4(0.0); //improves performance +} diff --git a/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/composite.vsh b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/composite.vsh new file mode 100644 index 00000000..73c1599b --- /dev/null +++ b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/composite.vsh @@ -0,0 +1,35 @@ +#version 120 +/* +Sildur's Enhanced Default: +https://www.patreon.com/Sildur +https://sildurs-shaders.github.io/ +https://twitter.com/Sildurs_shaders +https://www.curseforge.com/minecraft/customization/sildurs-enhanced-default + +Permissions: +You are not allowed to edit, copy code or share my shaderpack under a different name or claim it as yours. +*/ + +#define composite0 +#include "shaders.settings" + +varying vec2 texcoord; +varying vec4 color; +#ifdef Godrays +varying vec2 lightPos; +#endif +uniform vec3 sunPosition; +uniform mat4 gbufferProjection; + +void main() { + gl_Position = ftransform(); + texcoord = (gl_MultiTexCoord0).xy; +#ifdef Godrays + vec4 tpos = vec4(sunPosition,1.0)*gbufferProjection; + tpos = vec4(tpos.xyz/tpos.w,1.0); + vec2 pos1 = tpos.xy/tpos.z; + lightPos = pos1*0.5+0.5; +#endif + + color = gl_Color; +} diff --git a/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/composite1.fsh b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/composite1.fsh new file mode 100644 index 00000000..56cbb83b --- /dev/null +++ b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/composite1.fsh @@ -0,0 +1,167 @@ +#version 120 +/* DRAWBUFFERS:3 */ +/* +Sildur's Enhanced Default: +https://www.patreon.com/Sildur +https://sildurs-shaders.github.io/ +https://twitter.com/Sildurs_shaders +https://www.curseforge.com/minecraft/customization/sildurs-enhanced-default + +Permissions: +You are not allowed to edit, copy code or share my shaderpack under a different name or claim it as yours. +*/ + +#define composite1 +#include "shaders.settings" + +/* Temporal anti-aliasing (TAA) and adaptive sharpening implementation based on Chocapic13, all credits belong to him: +https://www.minecraftforum.net/forums/mapping-and-modding-java-edition/minecraft-mods/1293898-1-14-chocapic13s-shaders */ + +varying vec2 texcoord; +uniform sampler2D colortex0; //everything + +#ifdef TAA +const bool colortex3Clear = false; +uniform sampler2D colortex3; //TAA mixed with everything +uniform sampler2D depthtex0; +uniform float viewHeight; +uniform float viewWidth; +vec2 texelSize = vec2(1.0/viewWidth,1.0/viewHeight); +uniform mat4 gbufferProjectionInverse; +uniform mat4 gbufferModelViewInverse; +uniform mat4 gbufferPreviousProjection; +uniform mat4 gbufferPreviousModelView; +uniform vec3 cameraPosition; +uniform vec3 previousCameraPosition; + +#define BLEND_FACTOR 0.1 //[0.01 0.02 0.03 0.04 0.05 0.06 0.08 0.1 0.12 0.14 0.16] higher values = more flickering but sharper image, lower values = less flickering but the image will be blurrier +#define MOTION_REJECTION 1.0 //[0.0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.5] //Higher values=sharper image in motion at the cost of flickering +#define ANTI_GHOSTING 0.0 //[0.0 0.25 0.5 0.75 1.0] High values reduce ghosting but may create flickering +#define FLICKER_REDUCTION 1.0 //[0.0 0.25 0.5 0.75 1.0] High values reduce flickering but may reduce sharpness + +#define diagonal3(m) vec3((m)[0].x, (m)[1].y, m[2].z) +#define projMAD(m, v) (diagonal3(m) * (v) + (m)[3].xyz) + +vec3 toClipSpace3Prev(vec3 viewSpacePosition) { + return projMAD(gbufferPreviousProjection, viewSpacePosition) / -viewSpacePosition.z * 0.5 + 0.5; +} + +vec3 toScreenSpace(vec3 p) { + vec4 iProjDiag = vec4(gbufferProjectionInverse[0].x, gbufferProjectionInverse[1].y, gbufferProjectionInverse[2].zw); + vec3 p3 = p * 2.0 - 1.0; + vec4 fragposition = iProjDiag * p3.xyzz + gbufferProjectionInverse[3]; + return fragposition.xyz / fragposition.w; +} + +//returns the projected coordinates of the closest point to the camera in the 3x3 neighborhood +vec3 closestToCamera5taps(vec2 texcoord){ + vec2 du = vec2(texelSize.x*2., 0.0); + vec2 dv = vec2(0.0, texelSize.y*2.); + + vec3 dtl = vec3(texcoord,0.) + vec3(-texelSize, texture2D(depthtex0, texcoord - dv - du).x); + vec3 dtr = vec3(texcoord,0.) + vec3( texelSize.x, -texelSize.y, texture2D(depthtex0, texcoord - dv + du).x); + vec3 dmc = vec3(texcoord,0.) + vec3( 0.0, 0.0, texture2D(depthtex0, texcoord).x); + vec3 dbl = vec3(texcoord,0.) + vec3(-texelSize.x, texelSize.y, texture2D(depthtex0, texcoord + dv - du).x); + vec3 dbr = vec3(texcoord,0.) + vec3( texelSize.x, texelSize.y, texture2D(depthtex0, texcoord + dv + du).x); + + vec3 dmin = dmc; + dmin = dmin.z > dtr.z? dtr : dmin; + dmin = dmin.z > dtl.z? dtl : dmin; + dmin = dmin.z > dbl.z? dbl : dmin; + dmin = dmin.z > dbr.z? dbr : dmin; + return dmin; +} + +//approximation from SMAA presentation from siggraph 2016 +vec3 FastCatmulRom(sampler2D colorTex, vec2 texcoord, vec4 rtMetrics, float sharpenAmount){ + vec2 position = rtMetrics.zw * texcoord; + vec2 centerPosition = floor(position - 0.5) + 0.5; + vec2 f = position - centerPosition; + vec2 f2 = f * f; + vec2 f3 = f * f2; + + float c = sharpenAmount; + vec2 w0 = -c * f3 + 2.0 * c * f2 - c * f; + vec2 w1 = (2.0 - c) * f3 - (3.0 - c) * f2 + 1.0; + vec2 w2 = -(2.0 - c) * f3 + (3.0 - 2.0 * c) * f2 + c * f; + vec2 w3 = c * f3 - c * f2; + + vec2 w12 = w1 + w2; + vec2 tc12 = rtMetrics.xy * (centerPosition + w2 / w12); + vec3 centerColor = texture2D(colorTex, vec2(tc12.x, tc12.y)).rgb; + + vec2 tc0 = rtMetrics.xy * (centerPosition - 1.0); + vec2 tc3 = rtMetrics.xy * (centerPosition + 2.0); + vec4 color = vec4(texture2D(colorTex, vec2(tc12.x, tc0.y )).rgb, 1.0) * (w12.x * w0.y ) + + vec4(texture2D(colorTex, vec2(tc0.x, tc12.y)).rgb, 1.0) * (w0.x * w12.y) + + vec4(centerColor, 1.0) * (w12.x * w12.y) + + vec4(texture2D(colorTex, vec2(tc3.x, tc12.y)).rgb, 1.0) * (w3.x * w12.y) + + vec4(texture2D(colorTex, vec2(tc12.x, tc3.y )).rgb, 1.0) * (w12.x * w3.y ); + return color.rgb/color.a; + +} + + +vec3 calcTAA(){ + //reproject previous frame + vec3 closestToCamera = closestToCamera5taps(texcoord); + vec3 fragposition = toScreenSpace(closestToCamera); + fragposition = mat3(gbufferModelViewInverse) * fragposition + gbufferModelViewInverse[3].xyz + (cameraPosition - previousCameraPosition); + vec3 previousPosition = mat3(gbufferPreviousModelView) * fragposition + gbufferPreviousModelView[3].xyz; + previousPosition = toClipSpace3Prev(previousPosition); + previousPosition.xy = texcoord + (previousPosition.xy - closestToCamera.xy); + + //to reduce error propagation caused by interpolation during history resampling, we will introduce back some aliasing in motion + vec2 d = 0.5-abs(fract(previousPosition.xy*vec2(viewWidth,viewHeight)-texcoord*vec2(viewWidth,viewHeight))-0.5); + float rej = dot(d,d)*MOTION_REJECTION; + //reject history if off-screen and early exit + if (previousPosition.x < 0.0 || previousPosition.y < 0.0 || previousPosition.x > 1.0 || previousPosition.y > 1.0) return texture2D(colortex0, texcoord).rgb; + + //Samples current frame 3x3 neighboorhood + vec3 albedoCurrent0 = texture2D(colortex0, texcoord).rgb; + vec3 albedoCurrent1 = texture2D(colortex0, texcoord + vec2(texelSize.x,texelSize.y)).rgb; + vec3 albedoCurrent2 = texture2D(colortex0, texcoord + vec2(texelSize.x,-texelSize.y)).rgb; + vec3 albedoCurrent3 = texture2D(colortex0, texcoord + vec2(-texelSize.x,-texelSize.y)).rgb; + vec3 albedoCurrent4 = texture2D(colortex0, texcoord + vec2(-texelSize.x,texelSize.y)).rgb; + vec3 albedoCurrent5 = texture2D(colortex0, texcoord + vec2(0.0,texelSize.y)).rgb; + vec3 albedoCurrent6 = texture2D(colortex0, texcoord + vec2(0.0,-texelSize.y)).rgb; + vec3 albedoCurrent7 = texture2D(colortex0, texcoord + vec2(-texelSize.x,0.0)).rgb; + vec3 albedoCurrent8 = texture2D(colortex0, texcoord + vec2(texelSize.x,0.0)).rgb; + + if(TAA_sharpness > 0.0){ //turn sharpening off if set to 0.0 + vec3 m1 = (albedoCurrent0 + albedoCurrent1 + albedoCurrent2 + albedoCurrent3 + albedoCurrent4 + albedoCurrent5 + albedoCurrent6 + albedoCurrent7 + albedoCurrent8)/9.0; + vec3 std = abs(albedoCurrent0 - m1) + abs(albedoCurrent1 - m1) + abs(albedoCurrent2 - m1) + abs(albedoCurrent3 - m1) + abs(albedoCurrent3 - m1) + + abs(albedoCurrent4 - m1) + abs(albedoCurrent5 - m1) + abs(albedoCurrent6 - m1) + abs(albedoCurrent7 - m1) + abs(albedoCurrent8 - m1); + + float contrast = 1.0 - dot(std,vec3(0.299, 0.587, 0.114))/9.0; + albedoCurrent0 = albedoCurrent0*(1.0+TAA_sharpness*contrast)-(albedoCurrent5+albedoCurrent6+albedoCurrent7+albedoCurrent8+(albedoCurrent1 + albedoCurrent2 + albedoCurrent3 + albedoCurrent4)/2.0)/6.0*TAA_sharpness*contrast; + } + + //Assuming the history color is a blend of the 3x3 neighborhood, we clamp the history to the min and max of each channel in the 3x3 neighborhood + vec3 cMax = max(max(max(albedoCurrent0,albedoCurrent1),albedoCurrent2),max(albedoCurrent3,max(albedoCurrent4,max(albedoCurrent5,max(albedoCurrent6,max(albedoCurrent7,albedoCurrent8)))))); + vec3 cMin = min(min(min(albedoCurrent0,albedoCurrent1),albedoCurrent2),min(albedoCurrent3,min(albedoCurrent4,min(albedoCurrent5,min(albedoCurrent6,min(albedoCurrent7,albedoCurrent8)))))); + + vec3 albedoPrev = FastCatmulRom(colortex3, previousPosition.xy,vec4(texelSize, 1.0/texelSize), 0.82).xyz; + vec3 finalcAcc = clamp(albedoPrev,cMin,cMax); + + //increases blending factor if history is far away from aabb, reduces ghosting at the cost of some flickering + float luma = dot(albedoPrev,vec3(0.21, 0.72, 0.07)); + float isclamped = distance(albedoPrev,finalcAcc)/luma; + + //reduces blending factor if current texel is far from history, reduces flickering + float lumDiff2 = distance(albedoPrev,albedoCurrent0)/luma; + lumDiff2 = 1.0-clamp(lumDiff2*lumDiff2,0.0,1.0)*FLICKER_REDUCTION; + + //Blend current pixel with clamped history + return mix(finalcAcc,albedoCurrent0,clamp(BLEND_FACTOR*lumDiff2+rej+isclamped*ANTI_GHOSTING+0.01,0.0,1.0)); +} +#endif + +void main() { + +#ifdef TAA + gl_FragData[0] = vec4(calcTAA(), 1.0); +#else + gl_FragData[0] = texture2D(colortex0, texcoord); //if TAA is disabled just passthrough data from composite0, previous buffer. +#endif +} diff --git a/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/composite1.vsh b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/composite1.vsh new file mode 100644 index 00000000..80bbb603 --- /dev/null +++ b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/composite1.vsh @@ -0,0 +1,18 @@ +#version 120 +/* +Sildur's Enhanced Default: +https://www.patreon.com/Sildur +https://sildurs-shaders.github.io/ +https://twitter.com/Sildurs_shaders +https://www.curseforge.com/minecraft/customization/sildurs-enhanced-default + +Permissions: +You are not allowed to edit, copy code or share my shaderpack under a different name or claim it as yours. +*/ + +varying vec2 texcoord; + +void main() { + gl_Position = ftransform(); + texcoord = gl_MultiTexCoord0.xy; +} diff --git a/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/entity.properties b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/entity.properties new file mode 100644 index 00000000..f475e7d7 --- /dev/null +++ b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/entity.properties @@ -0,0 +1 @@ +entity.11000=minecraft:lightning_bolt \ No newline at end of file diff --git a/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/final.fsh b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/final.fsh new file mode 100644 index 00000000..fae32a4d --- /dev/null +++ b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/final.fsh @@ -0,0 +1,154 @@ +#version 120 +/* +Sildur's Enhanced Default: +https://www.patreon.com/Sildur +https://sildurs-shaders.github.io/ +https://twitter.com/Sildurs_shaders +https://www.curseforge.com/minecraft/customization/sildurs-enhanced-default + +Permissions: +You are not allowed to edit, copy code or share my shaderpack under a different name or claim it as yours. +*/ + +#define final +#include "shaders.settings" + +varying vec2 texcoord; +varying vec4 color; + +uniform sampler2D colortex3; //taa mixed with everything + +//Disable uneeded samplers and such if neither dof nor motionblur is used. +#ifdef Depth_of_Field +#define Blur +#endif +#ifdef Motionblur +#define Blur +#endif + +#ifdef Blur +uniform sampler2D depthtex0; //everything +uniform sampler2D depthtex1; //everything but transparency +uniform sampler2D depthtex2; //everything but transparency+hand + +uniform vec3 cameraPosition; +uniform vec3 previousCameraPosition; +uniform mat4 gbufferProjectionInverse; +uniform mat4 gbufferPreviousProjection; +uniform mat4 gbufferModelViewInverse; +uniform mat4 gbufferPreviousModelView; +#endif + +#ifdef Depth_of_Field +uniform float near; +uniform float far; +uniform float viewWidth; +uniform float aspectRatio; + +//Dof constant values +const float focal = 0.024; +float aperture = 0.008; +const float sizemult = DoF_Strength; +uniform float centerDepthSmooth; +const float centerDepthHalflife = 2.0f; + +float ld(float depth) { + return (2.0 * near) / (far + near - depth * (far - near)); +} + +float fast_blur[9] = float[9](-0.5, -0.375, -0.25, -0.125, 0.0, 0.125, 0.25, 0.375, 0.5); + +vec3 calcDof(vec3 color, float depth0, float depth1){ + float pw = 1.0/ viewWidth; + float z = ld(depth0)*far; + #ifdef smoothDof + float focus = ld(centerDepthSmooth)*far; + #else + float focus = ld(texture2D(depthtex0, vec2(0.5)).r)*far; + #endif + float pcoc = min(abs(aperture * (focal * (z - focus)) / (z * (focus - focal)))*sizemult,pw*15.0); +#ifdef Distance_Blur + float getdist = 1-(exp(-pow(ld(depth1)/Dof_Distance_View*far,4.0)*4.0)); + if(depth1 < 1.0-near/far/far)pcoc = getdist*pw*20.0; +#endif + for ( int i = 0; i < 9; i++) { + color += texture2D(colortex3, texcoord.xy + fast_blur[i]*pcoc*vec2(1.0,aspectRatio)).rgb; + } +return color*0.11; //*0.11 = / 9 +} +#endif + +#ifdef Motionblur +vec3 calcMotionBlur(vec3 color, float depth1){ + vec4 currentPosition = vec4(texcoord.xy, depth1, 1.0)*2.0-1.0; + + vec4 fragposition = gbufferProjectionInverse * currentPosition; + fragposition = gbufferModelViewInverse * fragposition; + fragposition /= fragposition.w; + fragposition.xyz += cameraPosition; + + vec4 previousPosition = fragposition; + previousPosition.xyz -= previousCameraPosition; + previousPosition = gbufferPreviousModelView * previousPosition; + previousPosition = gbufferPreviousProjection * previousPosition; + previousPosition /= previousPosition.w; + + vec2 velocity = (currentPosition - previousPosition).st * MB_strength; + vec2 coord = texcoord.st + velocity; + + int mb = 1; + for (int i = 0; i < 15; ++i, coord += velocity) { + if (coord.s > 1.0 || coord.t > 1.0 || coord.s < 0.0 || coord.t < 0.0) break; + color += texture2D(colortex3, coord).xyz; + ++mb; + } +return color /= mb; +} +#endif + +#ifdef Tonemap +vec3 Uncharted2Tonemap(vec3 x) { + float A = 0.28; + float B = 0.29; + float C = 0.08; //default 0.010 + float D = 0.2; + float E = 0.025; + float F = 0.35; + return ((x*(A*x+C*B)+D*E)/(x*(A*x+B)+D*F))-E/F; +} +#endif + +void main() { + + vec4 tex = texture2D(colortex3, texcoord.xy)*color; + +#ifdef Blur +//Setup depths, do it here because amd drivers suck and texture reads outside of void main or functions are broken, thanks amd +float depth0 = texture2D(depthtex0, texcoord.xy).x; +float depth1 = texture2D(depthtex1, texcoord.xy).x; +float depth2 = texture2D(depthtex2, texcoord.xy).x; +bool hand = depth0 < depth2; +if(depth0 < depth1 || !hand){ + #ifdef Depth_of_Field + tex.rgb = calcDof(tex.rgb, depth0, depth1); + #endif + + #ifdef Motionblur + tex.rgb = calcMotionBlur(tex.rgb, depth1); + #endif +} +#endif + +#ifdef Crossprocess + tex.r = (tex.r*1.3)+(tex.b+tex.g)*(-0.1); + tex.g = (tex.g*1.2)+(tex.r+tex.b)*(-0.1); + tex.b = (tex.b*1.1)+(tex.r+tex.g)*(-0.1); + tex = tex / (tex + 2.2) * (1.0+2.0); +#endif + +#ifdef Tonemap + tex.rgb = Uncharted2Tonemap(tex.rgb)*gamma; +#endif + + gl_FragData[0] = tex; +} diff --git a/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/final.vsh b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/final.vsh new file mode 100644 index 00000000..5ed267f3 --- /dev/null +++ b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/final.vsh @@ -0,0 +1,23 @@ +#version 120 +/* +Sildur's Enhanced Default: +https://www.patreon.com/Sildur +https://sildurs-shaders.github.io/ +https://twitter.com/Sildurs_shaders +https://www.curseforge.com/minecraft/customization/sildurs-enhanced-default + +Permissions: +You are not allowed to edit, copy code or share my shaderpack under a different name or claim it as yours. +*/ + +varying vec2 texcoord; +varying vec4 color; + +void main() { + + gl_Position = ftransform(); + + texcoord = (gl_MultiTexCoord0).xy; + + color = gl_Color; +} diff --git a/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/gbuffers_clouds.fsh b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/gbuffers_clouds.fsh new file mode 100644 index 00000000..b4a0fbf6 --- /dev/null +++ b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/gbuffers_clouds.fsh @@ -0,0 +1,39 @@ +#version 120 +/* DRAWBUFFERS:02 */ //0=gcolor, 2=gnormal for normals +/* +Sildur's Enhanced Default: +https://www.patreon.com/Sildur +https://sildurs-shaders.github.io/ +https://twitter.com/Sildurs_shaders +https://www.curseforge.com/minecraft/customization/sildurs-enhanced-default + +Permissions: +You are not allowed to edit, copy code or share my shaderpack under a different name or claim it as yours. +*/ + +#define gbuffers_clouds +#include "shaders.settings" + +varying vec2 texcoord; +varying vec4 color; +uniform sampler2D texture; + +#ifdef Fog +const int GL_LINEAR = 9729; +const int GL_EXP = 2048; +uniform int fogMode; +#endif + +void main() { + + gl_FragData[0] = texture2D(texture, texcoord.xy)*color; + gl_FragData[1] = vec4(0.0); //fill normal buffer with 0.0, improves performance + +#ifdef Fog + if (fogMode == GL_EXP) { + gl_FragData[0].rgb = mix(gl_FragData[0].rgb, gl_Fog.color.rgb, 1.0 - clamp(exp(-gl_Fog.density * gl_FogFragCoord), 0.0, 1.0)); + } else if (fogMode == GL_LINEAR) { + gl_FragData[0].rgb = mix(gl_FragData[0].rgb, gl_Fog.color.rgb, clamp((gl_FogFragCoord - gl_Fog.start) * gl_Fog.scale, 0.0, 1.0)); + } +#endif +} diff --git a/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/gbuffers_clouds.vsh b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/gbuffers_clouds.vsh new file mode 100644 index 00000000..ca9ac7c7 --- /dev/null +++ b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/gbuffers_clouds.vsh @@ -0,0 +1,45 @@ +#version 120 +/* +Sildur's Enhanced Default: +https://www.patreon.com/Sildur +https://sildurs-shaders.github.io/ +https://twitter.com/Sildurs_shaders +https://www.curseforge.com/minecraft/customization/sildurs-enhanced-default + +Permissions: +You are not allowed to edit, copy code or share my shaderpack under a different name or claim it as yours. +*/ + +#define composite1 +#include "shaders.settings" + +varying vec2 texcoord; +varying vec4 color; + +#ifdef TAA +uniform float viewHeight; +uniform float viewWidth; +vec2 texelSize = vec2(1.0/viewWidth,1.0/viewHeight); +uniform int framemod8; +const vec2[8] offsets = vec2[8](vec2(1./8.,-3./8.), + vec2(-1.,3.)/8., + vec2(5.0,1.)/8., + vec2(-3,-5.)/8., + vec2(-5.,5.)/8., + vec2(-7.,-1.)/8., + vec2(3,7.)/8., + vec2(7.,-7.)/8.); +#endif + +void main() { + gl_Position = ftransform(); + gl_FogFragCoord = length(gl_Position.xyz); + +#ifdef TAA + gl_Position.xy += offsets[framemod8] * gl_Position.w*texelSize; +#endif + + texcoord = (gl_MultiTexCoord0).xy; + + color = gl_Color; +} diff --git a/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/gbuffers_skybasic.fsh b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/gbuffers_skybasic.fsh new file mode 100644 index 00000000..3e099a72 --- /dev/null +++ b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/gbuffers_skybasic.fsh @@ -0,0 +1,32 @@ +#version 120 +/* DRAWBUFFERS:02 */ //0=gcolor, 2=gnormal for normals +/* +Sildur's Enhanced Default: +https://www.patreon.com/Sildur +https://sildurs-shaders.github.io/ +https://twitter.com/Sildurs_shaders +https://www.curseforge.com/minecraft/customization/sildurs-enhanced-default + +Permissions: +You are not allowed to edit, copy code or share my shaderpack under a different name or claim it as yours. +*/ + +varying vec4 color; + +uniform int isEyeInWater; +const int GL_LINEAR = 9729; +const int GL_EXP = 2048; +uniform int fogMode; + +void main() { + + gl_FragData[0] = color; + if (fogMode == GL_EXP) { + gl_FragData[0].rgb = mix(gl_FragData[0].rgb, gl_Fog.color.rgb, 1.0 - clamp(exp(-gl_Fog.density * gl_FogFragCoord), 0.0, 1.0)); + } else if (fogMode == GL_LINEAR) { + gl_FragData[0].rgb = mix(gl_FragData[0].rgb, gl_Fog.color.rgb, clamp((gl_FogFragCoord - gl_Fog.start) * gl_Fog.scale, 0.0, 1.0)); + } else if (isEyeInWater == 1.0 || isEyeInWater == 2.0){ + gl_FragData[0].rgb = mix(gl_FragData[0].rgb, gl_Fog.color.rgb, 1.0 - clamp(exp(-gl_Fog.density * gl_FogFragCoord), 0.0, 1.0)); + } + gl_FragData[1] = vec4(0.0); //fills normal buffer with 0.0, improves overall performance +} diff --git a/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/gbuffers_skybasic.vsh b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/gbuffers_skybasic.vsh new file mode 100644 index 00000000..4e2a89c4 --- /dev/null +++ b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/gbuffers_skybasic.vsh @@ -0,0 +1,21 @@ +#version 120 +/* +Sildur's Enhanced Default: +https://www.patreon.com/Sildur +https://sildurs-shaders.github.io/ +https://twitter.com/Sildurs_shaders +https://www.curseforge.com/minecraft/customization/sildurs-enhanced-default + +Permissions: +You are not allowed to edit, copy code or share my shaderpack under a different name or claim it as yours. +*/ + +varying vec4 color; + +void main() { + gl_Position = ftransform(); + + gl_FogFragCoord = gl_Position.z; + + color = gl_Color; +} diff --git a/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/gbuffers_skytextured.fsh b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/gbuffers_skytextured.fsh new file mode 100644 index 00000000..996bd7cc --- /dev/null +++ b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/gbuffers_skytextured.fsh @@ -0,0 +1,22 @@ +#version 120 +/* DRAWBUFFERS:02 */ //0=gcolor, 2=gnormal for normals +/* +Sildur's Enhanced Default: +https://www.patreon.com/Sildur +https://sildurs-shaders.github.io/ +https://twitter.com/Sildurs_shaders +https://www.curseforge.com/minecraft/customization/sildurs-enhanced-default + +Permissions: +You are not allowed to edit, copy code or share my shaderpack under a different name or claim it as yours. +*/ + +varying vec2 texcoord; +varying vec4 color; +uniform sampler2D texture; + +void main() { + + gl_FragData[0] = texture2D(texture, texcoord.xy)*color; + gl_FragData[1] = vec4(0.0); //fills normal buffer with 0.0, improves overall performance +} diff --git a/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/gbuffers_skytextured.vsh b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/gbuffers_skytextured.vsh new file mode 100644 index 00000000..3821d6ad --- /dev/null +++ b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/gbuffers_skytextured.vsh @@ -0,0 +1,41 @@ +#version 120 +/* +Sildur's Enhanced Default: +https://www.patreon.com/Sildur +https://sildurs-shaders.github.io/ +https://twitter.com/Sildurs_shaders +https://www.curseforge.com/minecraft/customization/sildurs-enhanced-default + +Permissions: +You are not allowed to edit, copy code or share my shaderpack under a different name or claim it as yours. +*/ + +#define composite1 +#include "shaders.settings" + +varying vec2 texcoord; +varying vec4 color; + +#ifdef TAA +uniform float viewWidth; +uniform float viewHeight; +vec2 texelSize = vec2(1.0/viewWidth,1.0/viewHeight); +uniform int framemod8; +const vec2[8] offsets = vec2[8](vec2(1./8.,-3./8.), + vec2(-1.,3.)/8., + vec2(5.0,1.)/8., + vec2(-3,-5.)/8., + vec2(-5.,5.)/8., + vec2(-7.,-1.)/8., + vec2(3,7.)/8., + vec2(7.,-7.)/8.); +#endif + +void main() { + gl_Position = ftransform(); +#ifdef TAA + gl_Position.xy += offsets[framemod8] * gl_Position.w*texelSize; +#endif + texcoord = (gl_MultiTexCoord0).xy; + color = gl_Color; +} diff --git a/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/gbuffers_textured.fsh b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/gbuffers_textured.fsh new file mode 100644 index 00000000..2bb4d75b --- /dev/null +++ b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/gbuffers_textured.fsh @@ -0,0 +1,264 @@ +#version 120 +/* DRAWBUFFERS:02 */ //0=gcolor, 2=gnormal for normals +/* +Sildur's Enhanced Default: +https://www.patreon.com/Sildur +https://sildurs-shaders.github.io/ +https://twitter.com/Sildurs_shaders +https://www.curseforge.com/minecraft/customization/sildurs-enhanced-default + +Permissions: +You are not allowed to edit, copy code or share my shaderpack under a different name or claim it as yours. +*/ + +#define gbuffers_textured +#include "shaders.settings" + +//Setup constants +const int noiseTextureResolution = 128; +//---------------------------------------------------------------- + +/* Don't remove me +const int gcolorFormat = RGBA8; +const int gnormalFormat = RGB10_A2; +const int compositeFormat = RGBA8; +-----------------------------------------*/ + +varying vec4 color; +varying vec3 vworldpos; +varying mat3 tbnMatrix; +varying vec2 texcoord; +varying vec2 lmcoord; +varying float iswater; +varying float mat; +uniform sampler2D normals; +uniform sampler2D texture; +uniform sampler2D lightmap; +uniform float rainStrength; +uniform vec4 entityColor; +uniform int isEyeInWater; +uniform int entityId; +uniform ivec2 eyeBrightnessSmooth; +uniform vec3 shadowLightPosition; + +#ifdef Fog +const int GL_LINEAR = 9729; +const int GL_EXP = 2048; +uniform int fogMode; +#endif + +#ifdef Reflections +uniform sampler2D noisetex; +uniform float frameTimeCounter; + +mat2 rmatrix(float rad){ + return mat2(vec2(cos(rad), -sin(rad)), vec2(sin(rad), cos(rad))); +} + +float calcWaves(vec2 coord){ + vec2 movement = abs(vec2(0.0, -frameTimeCounter * 0.31365*iswater)); + + coord *= 0.262144; + vec2 coord0 = coord * rmatrix(1.0) - movement * 4.0; + coord0.y *= 3.0; + vec2 coord1 = coord * rmatrix(0.5) - movement * 1.5; + coord1.y *= 3.0; + vec2 coord2 = coord + movement * 0.5; + coord2.y *= 3.0; + + float wave = 1.0 - texture2D(noisetex,coord0 * 0.005).x * 10.0; //big waves + wave += texture2D(noisetex,coord1 * 0.010416).x * 7.0; //small waves + wave += sqrt(texture2D(noisetex,coord2 * 0.045).x * 6.5) * 1.33;//noise texture + wave *= 0.0157; + + return wave; +} + +vec3 calcBump(vec2 coord){ + const vec2 deltaPos = vec2(0.25, 0.0); + + float h0 = calcWaves(coord); + float h1 = calcWaves(coord + deltaPos.xy); + float h2 = calcWaves(coord - deltaPos.xy); + float h3 = calcWaves(coord + deltaPos.yx); + float h4 = calcWaves(coord - deltaPos.yx); + + float xDelta = ((h1-h0)+(h0-h2)); + float yDelta = ((h3-h0)+(h0-h4)); + + return vec3(vec2(xDelta,yDelta)*0.45, 0.55); //z = 1.0-0.5 +} +#endif + +varying float NdotLight; +#ifdef Shadows +varying float NdotL; +varying vec3 getShadowpos; +uniform sampler2DShadow shadowtex0; //normal shadows +uniform sampler2DShadow shadowtex1; //colored shadows +uniform sampler2D shadowcolor0; + +//Hacky lightmap setup for emissive blocks, todo +float modlmap = 13.0-lmcoord.s*12.35; +float torch_lightmap = max(1.5/(modlmap*modlmap)-0.00945,0.0); +vec3 emissiveLight = clamp(vec3(1.25)*torch_lightmap, 0.0, 1.0); //emissive lightmap + +float shadowfilter(sampler2DShadow shadowtexture){ + vec2 offset = vec2(0.25, -0.25) / shadowMapResolution; + return clamp(dot(vec4(shadow2D(shadowtexture,vec3(getShadowpos.xy + offset.xx, getShadowpos.z)).x, + shadow2D(shadowtexture,vec3(getShadowpos.xy + offset.yx, getShadowpos.z)).x, + shadow2D(shadowtexture,vec3(getShadowpos.xy + offset.xy, getShadowpos.z)).x, + shadow2D(shadowtexture,vec3(getShadowpos.xy + offset.yy, getShadowpos.z)).x),vec4(0.25))*NdotL,0.0,1.0); +} + +vec3 calcShadows(vec3 c){ + vec3 finalShading = vec3(0.0); + +if(NdotL > 0.0 && rainStrength < 0.9){ //optimization, disable shadows during rain for performance boost + float shading = shadowfilter(shadowtex0); + #ifdef Colored_Shadows + float cshading = shadowfilter(shadowtex1); + finalShading = texture2D(shadowcolor0, getShadowpos.xy).rgb*(cshading-shading) + shading; + #else + finalShading = vec3(shading); + #endif + + //avoid light leaking underground + finalShading *= mix(max(lmcoord.t-2.0/16.0,0.0)*1.14285714286,1.0,clamp((eyeBrightnessSmooth.y/255.0-2.0/16.)*4.0,0.0,1.0)); + + finalShading *= (1.0 - rainStrength); //smoother transition while disabling shadows during rain + finalShading *= (1.0 - iswater); //disable shadows on water plane(not fully, 1.0-0.95) +} + +return c * (1.0+finalShading+emissiveLight) * slight; +} +#endif + +#if nMap == 2 +#extension GL_ARB_shader_texture_lod : enable +varying float dist; +varying vec3 viewVector; +varying vec4 vtexcoordam; // .st for add, .pq for mul +varying vec2 vtexcoord; +varying float isblock; //mc_Entity.x, hack to only apply pom to blocks +bool block = isblock > 0.0 || isblock < 0.0; //get defined and undefined blocks + +uniform ivec2 atlasSize; +vec2 atlasAspect = vec2(atlasSize.y/float(atlasSize.x), atlasSize.x/float(atlasSize.y)); + +mat2 dFdxy = mat2(dFdx(vtexcoord.xy*vtexcoordam.pq), dFdy(vtexcoord.xy*vtexcoordam.pq)); +vec4 readNormal(in vec2 coord){ + return texture2DGradARB(normals,fract(coord)*vtexcoordam.pq+vtexcoordam.st,dFdxy[0],dFdxy[1]); +} + +vec4 calcPOM(vec4 albedo){ + if(block){ //only apply to blocks else return albedo + vec2 newCoord = vtexcoord.xy*vtexcoordam.pq+vtexcoordam.st; + + if (dist < POM_DIST && viewVector.z < 0.0 && readNormal(vtexcoord.xy).a < 1.0){ + const float res_stepths = 0.33 * POM_RES; + vec2 viewCorrection = max(vec2(vtexcoordam.q/vtexcoordam.p*atlasAspect.x,1.0), vec2(1.0,vtexcoordam.p/vtexcoordam.q*atlasAspect.y)); + vec2 pstepth = viewCorrection * viewVector.xy * POM_DEPTH / (-viewVector.z * POM_RES); + vec2 coord = vtexcoord.xy; + for (int i= 0; i < res_stepths && (readNormal(coord.xy).a < 1.0-float(i)/POM_RES); ++i) coord += pstepth; + + newCoord = fract(coord.xy)*vtexcoordam.pq+vtexcoordam.st; + } + albedo = texture2DGradARB(texture, newCoord, dFdxy[0],dFdxy[1])* texture2D(lightmap, lmcoord.st)*color; + + //vec4 specularity = texture2DGradARB(specular, newCoord, dcdx, dcdy); + vec3 bmap = normalize((texture2DGradARB(normals, newCoord, dFdxy[0],dFdxy[1]).rgb*2.0-1.0) * tbnMatrix); + float bmaplight = max(dot(bmap, normalize(shadowLightPosition)),0.0); + #ifdef Shadows + albedo.rgb *= clamp((1.0 + bmaplight - 1.0 * NdotLight) * 0.75, 1.0, 1.5); + #else + albedo.rgb *= clamp(1.0 + bmaplight - 1.0 * NdotLight, 1.0, 1.5); + #endif + #ifdef draw_bmap + if(block)albedo.rgb = bmap; + #endif + return albedo; + } else return albedo; +} +#endif + +vec4 encode (vec3 n){ + return vec4(n.xy*inversesqrt(n.z*8.0+8.0) + 0.5, mat/2.0, 1.0); +} + +void main() { + +#ifndef customLight + vec4 tex = texture2D(texture, texcoord.st) * texture2D(lightmap, lmcoord.xy) * color; +#else + //Mix default MC skylight with custom emissive light + vec4 tex = texture2D(texture, texcoord.st) * color; + float torchmap = clamp(lmcoord.x-0.5/16.0, 0.0, 1.0); //must be clamped to fix enchanted items + tex.rgb *= mix(texture2D(lightmap, vec2(0.5 / 16.0, lmcoord.y)).rgb, vec3(emissive_R,emissive_G,emissive_B)*torchmap, torchmap); +#endif + + vec4 normal = vec4(0.0); //fill the buffer with 0.0 if not needed, improves performance + +#if nMap == 1 + vec3 bmap = normalize((texture2D(normals, texcoord.xy).xyz*2.0-1.0) * tbnMatrix); + float bmaplight = max(dot(bmap, normalize(shadowLightPosition)),0.0); + #ifdef Shadows + tex.rgb *= clamp((1.0 + bmaplight - 1.0 * NdotLight) * 0.75, 1.0, 1.5); + #else + tex.rgb *= clamp(1.0 + bmaplight - 1.0 * NdotLight, 1.0, 1.5); + #endif + #ifdef draw_bmap + tex.rgb = bmap; + #endif +#elif nMap == 2 + tex = calcPOM(tex); +#endif + +#ifdef Shadows + tex.rgb = calcShadows(tex.rgb); +#else + tex.rgb *= (1.0 + NdotLight) * 0.6; //improve visuals without shadows enabled +#endif + +#ifdef Colorboost + tex.rgb = pow(tex.rgb*1.20, vec3(1.20)); +#endif + +#ifdef MobsFlashRed + tex.rgb = mix(tex.rgb,entityColor.rgb,entityColor.a); +#endif + +#ifdef Reflections + vec2 waterpos = (vworldpos.xz - vworldpos.y); + if(mat > 0.9)normal = vec4(normalize(calcBump(waterpos) * tbnMatrix), 1.0); //mat > 0.9 so that only reflective blocks alter normals, boosts performance by about 30%. mat=reflective +#endif + +if(iswater > 0.1){ + if(isEyeInWater > 0.9)tex.a = 0.9; //improve alpha underwater, default is 1 (opaque) +#ifdef waterTex + tex.rgb *= 1.25; //improve colors on water +#else + #if MC_VERSION < 11300 //Add a watercolor fallback for 1.12.2 and below, for some reason color.rgb turns out grey in older versions. + tex = mix(tex, vec4(0.0, 0.275, 0.525, 0.75), 1.0) * texture2D(lightmap, lmcoord.st); + #else + tex.rgb = mix(tex.rgb, color.rgb*0.5, 1.0) * texture2D(lightmap, lmcoord.st).rgb; + #endif +#endif +} + + //Fix lightning bolts + if(entityId == 11000.0) tex = texture2D(lightmap, lmcoord.xy)*color; + + gl_FragData[0] = tex; + gl_FragData[1] = encode(normal.xyz); + +#ifdef Fog + if (fogMode == GL_EXP) { + gl_FragData[0].rgb = mix(gl_FragData[0].rgb, gl_Fog.color.rgb, 1.0 - clamp(exp(-gl_Fog.density * gl_FogFragCoord), 0.0, 1.0)); + } else if (fogMode == GL_LINEAR) { + gl_FragData[0].rgb = mix(gl_FragData[0].rgb, gl_Fog.color.rgb, clamp((gl_FogFragCoord - gl_Fog.start) * gl_Fog.scale, 0.0, 1.0)); + } else if (isEyeInWater == 1.0 || isEyeInWater == 2.0){ + gl_FragData[0].rgb = mix(gl_FragData[0].rgb, gl_Fog.color.rgb, 1.0 - clamp(exp(-gl_Fog.density * gl_FogFragCoord), 0.0, 1.0)); + } +#endif +} \ No newline at end of file diff --git a/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/gbuffers_textured.vsh b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/gbuffers_textured.vsh new file mode 100644 index 00000000..e9f3a1d2 --- /dev/null +++ b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/gbuffers_textured.vsh @@ -0,0 +1,347 @@ +#version 120 +/* +Sildur's Enhanced Default: +https://www.patreon.com/Sildur +https://sildurs-shaders.github.io/ +https://twitter.com/Sildurs_shaders +https://www.curseforge.com/minecraft/customization/sildurs-enhanced-default + +Permissions: +You are not allowed to edit, copy code or share my shaderpack under a different name or claim it as yours. +*/ + +#define gbuffers_textured +#include "shaders.settings" + +//Moving entities IDs +//See block.properties for mapped ids +#define ENTITY_SMALLGRASS 10031.0 // +#define ENTITY_LOWERGRASS 10175.0 //lower half only in 1.13+ +#define ENTITY_UPPERGRASS 10176.0 //upper half only used in 1.13+ +#define ENTITY_SMALLENTS 10059.0 //sapplings(6), dandelion(37), rose(38), carrots(141), potatoes(142), beetroot(207) + +#define ENTITY_LEAVES 10018.0 //161 new leaves +#define ENTITY_VINES 10106.0 + +#define ENTITY_WATER 10008.0 //9 +#define ENTITY_LILYPAD 10111.0 // +#define ENTITY_ICE 10079.0 //transparent reflections, stained glass(95, 160), slimeblock(165) + +#define ENTITY_FIRE 10051.0 // +#define ENTITY_LAVA 10010.0 //11 +#define ENTITY_EMISSIVE 10089.0 //emissive blocks defined in block.properties +#define ENITIY_SOULFIRE 10091.0 +#define ENTITY_WAVING_LANTERN 10090.0 +#define ENTITY_INVERTED_LOWER 10177.0 //hanging_roots +#define ENTITY_NON_DIFFUSE 20000.0 + +varying vec4 color; +varying vec3 vworldpos; +varying mat3 tbnMatrix; +varying vec2 texcoord; +varying vec2 lmcoord; +varying float iswater; +varying float mat; + +attribute vec4 mc_Entity; +attribute vec4 mc_midTexCoord; +attribute vec4 at_tangent; //xyz = tangent vector, w = handedness, added in 1.7.10 + +uniform vec3 cameraPosition; +uniform mat4 gbufferModelView; +uniform mat4 gbufferModelViewInverse; + +//moving stuff +uniform float frameTimeCounter; +const float PI = 3.14; +float pi2wt = (150.79*frameTimeCounter) * animationSpeed; + +vec3 calcWave(in vec3 pos, in float fm, in float mm, in float ma, in float f0, in float f1, in float f2, in float f3, in float f4, in float f5) { + float magnitude = sin(pi2wt*fm + dot(pos, vec3(0.5))) * mm + ma; + vec3 d012 = sin(vec3(f0, f1, f2)*pi2wt); + + vec3 ret; + ret.x = pi2wt*f3 + d012.x + d012.y - pos.x + pos.z + pos.y; + ret.z = pi2wt*f4 + d012.y + d012.z + pos.x - pos.z + pos.y; + ret.y = pi2wt*f5 + d012.z + d012.x + pos.z + pos.y - pos.y; + ret = sin(ret)*magnitude; + + return ret; +} + +vec3 calcMove(in vec3 pos, in float f0, in float f1, in float f2, in float f3, in float f4, in float f5, in vec3 amp1, in vec3 amp2) { + vec3 move1 = calcWave(pos , 0.0027, 0.0400, 0.0400, 0.0127, 0.0089, 0.0114, 0.0063, 0.0224, 0.0015) * amp1; + vec3 move2 = calcWave(pos+move1, 0.0348, 0.0400, 0.0400, f0, f1, f2, f3, f4, f5) * amp2; + return move1+move2; +}/*---*/ + +varying float NdotLight; +#ifdef Shadows +varying float NdotL; +uniform vec3 shadowLightPosition; +varying vec3 getShadowpos; +uniform mat4 shadowProjection; +uniform mat4 shadowModelView; + +#define diagonal3(mat) vec3((mat)[0].x, (mat)[1].y, (mat)[2].z) +vec3 calcShadows(in vec3 shadowpos, in vec3 norm){ + shadowpos = mat3(shadowModelView) * shadowpos + shadowModelView[3].xyz; + shadowpos = diagonal3(shadowProjection) * shadowpos + shadowProjection[3].xyz; + + float distortion = ((1.0 - SHADOW_MAP_BIAS) + length(shadowpos.xy * 1.25) * SHADOW_MAP_BIAS) * 0.85; + shadowpos.xy /= distortion; + + NdotL = clamp(dot(norm, normalize(shadowLightPosition))*1.02-0.02,0.0,1.0); + float bias = distortion*distortion*(0.0046*tan(acos(NdotL))); + + //Certain things shouldn't be diffused, also adjust bias for cheap self shadowing fix + if (mc_Entity.x == ENTITY_SMALLGRASS + || mc_Entity.x == ENTITY_LOWERGRASS + || mc_Entity.x == ENTITY_UPPERGRASS + || mc_Entity.x == ENTITY_SMALLENTS + || mc_Entity.x == ENTITY_LEAVES + || mc_Entity.x == ENTITY_VINES + || mc_Entity.x == ENTITY_LILYPAD + || mc_Entity.x == ENTITY_FIRE + || mc_Entity.x == ENTITY_WAVING_LANTERN + || mc_Entity.x == ENTITY_EMISSIVE + || mc_Entity.x == ENTITY_NON_DIFFUSE) { + NdotL = 0.75; + bias = 0.0010; + } + shadowpos.xyz = shadowpos.xyz * 0.5 + 0.5; + shadowpos.z -= bias; + + return shadowpos.xyz; +} +#else +uniform vec3 shadowLightPosition; +#endif + +#if nMap == 2 +varying float dist; +varying vec3 viewVector; +varying vec4 vtexcoordam; // .st for add, .pq for mul +varying vec2 vtexcoord; +varying float isblock; //mc_Entity.x, hack to only apply pom to blocks +#endif + +#ifdef TAA +uniform float viewWidth; +uniform float viewHeight; +vec2 texelSize = vec2(1.0/viewWidth,1.0/viewHeight); +uniform int framemod8; +const vec2[8] offsets = vec2[8](vec2(1./8.,-3./8.), + vec2(-1.,3.)/8., + vec2(5.0,1.)/8., + vec2(-3,-5.)/8., + vec2(-5.,5.)/8., + vec2(-7.,-1.)/8., + vec2(3,7.)/8., + vec2(7.,-7.)/8.); +#endif + +#ifdef HandLight +uniform int isEyeInWater; +uniform int heldBlockLightValue; +uniform int heldBlockLightValue2; +#endif + +void main() { + + //Positioning + texcoord = (gl_TextureMatrix[0] * gl_MultiTexCoord0).xy; + lmcoord = (gl_TextureMatrix[1] * gl_MultiTexCoord1).xy; + #ifdef HandLight + bool underwaterlava = (isEyeInWater == 1.0 || isEyeInWater == 2.0); + if(!underwaterlava) lmcoord.x = max(lmcoord.x, max(max(float(heldBlockLightValue), float(heldBlockLightValue2)) - 1.0 - length(gl_ModelViewMatrix * gl_Vertex), 0.0) / 15.0); + #endif + vec3 position = mat3(gbufferModelViewInverse) * (gl_ModelViewMatrix * gl_Vertex).xyz + gbufferModelViewInverse[3].xyz; + + vworldpos = position.xyz + cameraPosition; + bool istopv = gl_MultiTexCoord0.t < mc_midTexCoord.t; + +#ifdef Waving_Tallgrass +if (mc_Entity.x == ENTITY_LOWERGRASS && istopv || mc_Entity.x == ENTITY_UPPERGRASS) + position.xyz += calcMove(vworldpos.xyz, + 0.0041, + 0.0070, + 0.0044, + 0.0038, + 0.0240, + 0.0000, + vec3(0.8,0.0,0.8), + vec3(0.4,0.0,0.4)); + +#endif +if (istopv) { +#ifdef Waving_Grass + if ( mc_Entity.x == ENTITY_SMALLGRASS) + position.xyz += calcMove(vworldpos.xyz, + 0.0041, + 0.0070, + 0.0044, + 0.0038, + 0.0063, + 0.0000, + vec3(3.0,1.6,3.0), + vec3(0.0,0.0,0.0)); +#endif +#ifdef Waving_Entities + if (mc_Entity.x == ENTITY_SMALLENTS) + position.xyz += calcMove(vworldpos.xyz, + 0.0041, + 0.0070, + 0.0044, + 0.0038, + 0.0240, + 0.0000, + vec3(0.8,0.0,0.8), + vec3(0.4,0.0,0.4)); +#endif +#ifdef Waving_Fire + if ( mc_Entity.x == ENTITY_FIRE) + position.xyz += calcMove(vworldpos.xyz, + 0.0105, + 0.0096, + 0.0087, + 0.0063, + 0.0097, + 0.0156, + vec3(1.2,0.4,1.2), + vec3(0.8,0.8,0.8)); +#endif +} + +#ifdef Waving_Leaves + if ( mc_Entity.x == ENTITY_LEAVES) + position.xyz += calcMove(vworldpos.xyz, + 0.0040, + 0.0064, + 0.0043, + 0.0035, + 0.0037, + 0.0041, + vec3(1.0,0.2,1.0), + vec3(0.5,0.1,0.5)); +#endif +#ifdef Waving_Vines + if ( mc_Entity.x == ENTITY_VINES) + position.xyz += calcMove(vworldpos.xyz, + 0.0040, + 0.0064, + 0.0043, + 0.0035, + 0.0037, + 0.0041, + vec3(0.5,1.0,0.5), + vec3(0.25,0.5,0.25)); + + if (mc_Entity.x == ENTITY_INVERTED_LOWER && gl_MultiTexCoord0.t > mc_midTexCoord.t) + position.xyz += calcMove(vworldpos.xyz, + 0.0041, + 0.0070, + 0.0044, + 0.0038, + 0.0240, + 0.0000, + vec3(0.8,0.0,0.8), + vec3(0.4,0.0,0.4)); +#endif +#ifdef Waving_Lava + if(mc_Entity.x == ENTITY_LAVA){ + float fy = fract(vworldpos.y + 0.001); + float wave = 0.05 * sin(2 * PI * (frameTimeCounter*0.2 + vworldpos.x / 7.0 + vworldpos.z / 13.0)) + + 0.05 * sin(2 * PI * (frameTimeCounter*0.15 + vworldpos.x / 11.0 + vworldpos.z / 5.0)); + position.y += clamp(wave, -fy, 1.0-fy)*0.5; + } +#endif + iswater = 0.0; + if(mc_Entity.x == ENTITY_WATER)iswater = 0.95; //don't fully remove shadows on water plane +#ifdef Waving_Water + if(mc_Entity.x == ENTITY_WATER || mc_Entity.x == ENTITY_LILYPAD) { //water, lilypads + float fy = fract(vworldpos.y + 0.001); + float wave = 0.05 * sin(2 * PI * (frameTimeCounter*0.8 + vworldpos.x / 2.5 + vworldpos.z / 5.0)) + + 0.05 * sin(2 * PI * (frameTimeCounter*0.6 + vworldpos.x / 6.0 + vworldpos.z / 12.0)); + position.y += clamp(wave, -fy, 1.0-fy)*waves_amplitude; + } +#endif + +#ifdef Waving_Lanterns + if(mc_Entity.x == ENTITY_WAVING_LANTERN){ + vec3 fxyz = fract(vworldpos.xyz + 0.001); + float wave = 0.025 * sin(2 * PI * (frameTimeCounter*0.4 + vworldpos.x * 0.5 + vworldpos.z * 0.5)); + //+ 0.025 * sin(2 * PI * (frameTimeCounter*0.4 + worldpos.y *0.25 + worldpos.z *0.25)); + float waveY = 0.05 * cos(frameTimeCounter*2.0 + vworldpos.y); + position.x -= clamp(wave, -fxyz.x, 1.0-fxyz.x); + position.y += clamp(waveY*0.25, -fxyz.y, 1.0-fxyz.y)+0.015; + position.z += clamp(wave*0.45, -fxyz.z, 1.0-fxyz.z); + } +#endif + +mat = 0.0; +#ifdef Reflections +#ifdef WaterReflection + if(mc_Entity.x == ENTITY_WATER)mat = 1.0; +#endif +#ifdef TransparentReflections + if(mc_Entity.x == ENTITY_ICE)mat = 2.0; //various ids are mapped to ice in block.properties +#endif +#endif + + gl_Position = gl_ProjectionMatrix * gbufferModelView * vec4(position, 1.0); + +#ifdef TAA + gl_Position.xy += offsets[framemod8] * gl_Position.w*texelSize; +#endif + + //Fog + gl_FogFragCoord = length(position.xyz); + + color = gl_Color; + + //Fix colors on emissive blocks + if(mc_Entity.x == ENTITY_EMISSIVE || mc_Entity.x == ENITIY_SOULFIRE || mc_Entity.x == ENTITY_LAVA || mc_Entity.x == ENTITY_FIRE || mc_Entity.x == ENTITY_WAVING_LANTERN || mc_Entity.x == 10300.0)color = vec4(1.0); + if(mc_Entity.x == ENITIY_SOULFIRE || mc_Entity.x == ENTITY_WAVING_LANTERN) lmcoord.x = 1.0; //increase brightness of emissive soul objects. + + //Bump & Parallax mapping + vec3 normal = normalize(gl_NormalMatrix * gl_Normal); + vec3 tangent = normalize(gl_NormalMatrix * at_tangent.xyz); + vec3 binormal = normalize(gl_NormalMatrix * cross(at_tangent.xyz, gl_Normal.xyz) * at_tangent.w); + tbnMatrix = mat3(tangent.x, binormal.x, normal.x, + tangent.y, binormal.y, normal.y, + tangent.z, binormal.z, normal.z); + +#if nMap == 2 + isblock = mc_Entity.x; + if(mc_Entity.x == ENTITY_EMISSIVE || mc_Entity.x == 10300.0)isblock = -1.0; //enable bump and parallax mapping for defined ids. + vec2 midcoord = (gl_TextureMatrix[0] * mc_midTexCoord).st; + vec2 texcoordminusmid = texcoord.xy-midcoord; + vtexcoordam.pq = abs(texcoordminusmid)*2; + vtexcoordam.st = min(texcoord.xy ,midcoord-texcoordminusmid); + vtexcoord.xy = sign(texcoordminusmid)*0.5+0.5; + + viewVector = tbnMatrix * (mat3(gl_ModelViewMatrix) * gl_Vertex.xyz + gl_ModelViewMatrix[3].xyz); + dist = length(gl_ModelViewMatrix * gl_Vertex); +#endif + +#ifdef Shadows + getShadowpos = calcShadows(position, normal); +#else + NdotLight = clamp(dot(normal, normalize(shadowLightPosition))*1.02-0.02,0.0,1.0); + if (mc_Entity.x == ENTITY_SMALLGRASS + || mc_Entity.x == ENTITY_LOWERGRASS + || mc_Entity.x == ENTITY_UPPERGRASS + || mc_Entity.x == ENTITY_SMALLENTS + || mc_Entity.x == ENTITY_LEAVES + || mc_Entity.x == ENTITY_VINES + || mc_Entity.x == ENTITY_LILYPAD + || mc_Entity.x == ENTITY_FIRE + || mc_Entity.x == ENTITY_WAVING_LANTERN + || mc_Entity.x == ENTITY_EMISSIVE + || mc_Entity.x == ENTITY_NON_DIFFUSE) { + NdotLight = 0.60; + } +#endif + +} \ No newline at end of file diff --git a/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/lang/en_US.lang b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/lang/en_US.lang new file mode 100644 index 00000000..1db73410 --- /dev/null +++ b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/lang/en_US.lang @@ -0,0 +1,215 @@ +# Change effect names through language instead of the shader itself +# How to change names and comments: +# option.EffectName=New effect name +# option.EffectName.comment=Your comment. +# +# Change screen names through language instead of properties +# How to change screen names and give them comments: +# screen.ScreenName=New screen name +# screen.ScreenName.comment=Your comment +# +# Tooltip lines ending with "!" are automatically shown red. +# example: option.SHADOW_FILTER.comment=Smooth out shadows. Very small performance hit!. + + +#Options +############################# +option.TAA_sharpness=sharpening + +option.HandLight=Handheld Lighting +option.HandLight.comment=Toggle handheld lighting. + +option.Celshading=Celshading +option.Celshading.comment=Adds a black outline to everything, creating a comic look. Just like in borderlands. + +option.skyReflection=Sky reflection +option.skyReflection.comment=Reflect and blend the default skycolor. Makes water waves more visible. WIP + +option.Reflections=Reflections +option.Reflections.comment=Toggle reflections for transparent blocks, like water, stained glass and ice. +option.Refl_Quality=Reflections Quality +option.Refl_Quality.comment=Adjust the quality of reflections. Fancy increases the accuracy of the raytracer which reduces glitches at the cost of performance. +value.Refl_Quality.1=Fast +value.Refl_Quality.2=Fancy + +option.WaterReflection=Water reflections +option.WaterReflection.comment=See block.properties to add custom water ids. +option.TransparentReflections=Transparent reflections +option.TransparentReflections.comment=See block.properties to adjust reflective blocks. + +option.Depth_of_Field=Depth of Field +option.Depth_of_Field.comment=Simulates eye focusing on objects. §4Low performance impact +option.DoF_Strength=Dof strength +option.DoF_Strength.comment=Changes the strength of the blurring effect. +value.DoF_Strength.60=Low +value.DoF_Strength.90=Default +value.DoF_Strength.120=High +value.DoF_Strength.150=Very High + +option.smoothDof=Smooth Transition +option.smoothDof.comment=Toggle a smooth transition between clear and blurry while focusing on something. + +option.Distance_Blur=Distance Blur +option.Distance_Blur.comment=§4Requires Depth of Field to be enabled. Replaces eye focusing effect with distance being blurred instead. + +option.Dof_Distance_View=Blur view distance +option.Dof_Distance_View.comment=Adjust the view distance of blur. +value.Dof_Distance_View.128=Near +value.Dof_Distance_View.256=Default +value.Dof_Distance_View.384=Far +value.Dof_Distance_View.512=Very Far + +option.Motionblur=Motionblur +option.Motionblur.comment=Blurres your view/camera during movemenent. Doesn't work with Depth of Field. + +option.MB_strength=Blur strength +option.MB_strength.comment=Adjust the blur strength of Motionblur. +value.MB_strength.0.008=Low +value.MB_strength.0.014=Default +value.MB_strength.0.020=High + +option.sunPathRotation=Sun/Moon angle +option.sunPathRotation.comment=Adjust sun and moon angle. +value.sunPathRotation.-0.15f=Default +value.sunPathRotation.-40.0f=Alternative + +option.Godrays=Godrays +option.Godrays.comment=Toggle godrays. +option.grays_quality=Godrays quality +option.grays_quality.comment=Adjust godrays quality, fast causes a low performance hit while fancy causes a high performance hit. +value.grays_quality.1=Fast +value.grays_quality.2=Fancy +option.grays_intensity=Godrays intensity + +option.Colored_Shadows=Colored Shadows +option.Colored_Shadows.comment=Toggle colored shadows. Tints shadows color if passing through stained glass. + +option.grass_shadows=Grass shadows +option.grass_shadows.comment=Toggle grass shadows. + +option.shadowMapResolution=Shadows resolution +option.shadowMapResolution.comment=Change the shadows resolution. +value.shadowMapResolution.512=Very Low +value.shadowMapResolution.1024=Low +value.shadowMapResolution.2048=Medium +value.shadowMapResolution.3072=High +value.shadowMapResolution.4096=Very High +value.shadowMapResolution.8192=Extreme + +option.shadowDistance=Shadows view distance +option.shadowDistance.comment=Change the view distance of shadows. +value.shadowDistance.60.0=Very Near +value.shadowDistance.90.0=Near +value.shadowDistance.120.0=Far +value.shadowDistance.150.0=Very Far +value.shadowDistance.180.0=To Far +value.shadowDistance.210.0=Way to Far + +option.slight=Lighting strength +option.slight.comment=Adjust the lighting strength of shadows/light + +option.Whiteworld=Whiteworld +option.Whiteworld.comment=Makes the ground white, mostly used for debugging. This option was added because it was requested alot. I suppose it looks kinda neat for screenshots. + +option.waterTex=Water texture +option.waterTex.comment=Toggle resoucepack water texture. + +option.MobsFlashRed=Damage flash +option.MobsFlashRed.comment=Makes mobs and the player flash red when hurt. + +option.Colorboost=Color boost +option.Colorboost.comment=If enabled, gives default colors a little kick. + +option.Waving_Leaves=Waving Leaves +option.Waving_Leaves.comment= + +option.Waving_Vines=Waving Vines +option.Waving_Vines.comment= + +option.Waving_Grass=Waving Grass +option.Waving_Grass.comment= + +option.Waving_Tallgrass=Waving Tallgrass +option.Waving_Tallgrass.comment= + +option.Waving_Fire=Waving Fire +option.Waving_Fire.comment= + +option.Waving_Lanterns=Waving Lanterns + +option.Waving_Lava=Waving Lava +option.Waving_Lava.comment= + +option.Waving_Water=Waving Water +option.Waving_Water.comment=Includes waving lilypads. + +option.waves_amplitude=Waves amplitude +option.waves_amplitude.comment=Adjust waves amplitude of waving water. + +option.Waving_Entities=Waving Entities +option.Waving_Entities.comment=Includes: Saplings, small flowers, wheat, carrots, potatoes and beetroot. + +option.depthbuffer=Depthbuffer +option.depthbuffer.comment=If enabled draw the depth buffer. + +option.draw_refnormals=Draw reflection normals + +option.draw_bmap=Draw bumpmap normals + +option.nMap=RP Support +option.nMap.comment=Enable bump or parallax support for resourcepacks, the resourcepack must support it. +value.nMap.0=Off +value.nMap.1=Bumpmapping +value.nMap.2=Parallax + +option.POM_RES=RP Resolution +option.POM_RES.comment=Increasing the resolution past the rp resolution makes it smoother. +option.POM_DEPTH=POM Depth +option.POM_DEPTH.comment=Adjust the depth of parallax mapping, to high values might look weird. +option.POM_DIST=POM Distance +option.POM_DIST.comment=Adjust the distance at which parallax mapping renders. + +option.ambientOcclusionLevel=Default Minecraft AO +option.ambientOcclusionLevel.comment=Minecraft comes with it's own kind of ambient occlusion. + +option.customLight=Custom Lightmap +option.customLight.comment=Toggle custom lightmap and adjust the colors for emissive light. +option.emissive_R=red +option.emissive_G=green +option.emissive_B=blue +#---------------------------------------------------- + +#Screens +screen.AA_SCREEN=Antialiasing +screen.AA_SCREEN.comment=Toggle antialiasing (TAA) and adaptive sharpening. + +screen.AO_SCREEN=Ambient Occlusion +screen.AO_SCREEN.comment=Toggle ambient occlusion (SSAO) and adjust minecrafts default ambient occlusion. + +screen.COLOR_SCREEN=Colors +screen.COLOR_SCREEN.comment=Contains colorboost and crossprocess(color filter) + +screen.DOF_SCREEN=Depth of field +screen.DOF_SCREEN.comment=Change things related to Depth of Field. + +screen.NORMALMAP_SCREEN=Normal map +screen.NORMALMAP_SCREEN.comment=Enable bump or parallax support if the resourcepack supports it. + +screen.MOTION_SCREEN=Motionblur +screen.MOTION_SCREEN.comment=Change things related to Motionblur. + +screen.REFLECTIONS_SCREEN=Reflections +screen.REFLECTIONS_SCREEN.comment=Contains reflections related things. + +screen.SHADOWS_SCREEN=Shadows +screen.SHADOWS_SCREEN.comment=Contains shadow related things, like shadow view distance. + +screen.SKY_SCREEN=Sky +screen.SKY_SCREEN.comment=Contains sky related things, like godrays. + +screen.WAVING_SCREEN=Waving Objects +screen.WAVING_SCREEN.comment=Contains grass, wheat, leaves etc. + +screen.MISC_SCREEN=Misc +screen.MISC_SCREEN.comment=Contains debugging stuff and whatever +#---------------------------------------------------- \ No newline at end of file diff --git a/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/shaders.properties b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/shaders.properties new file mode 100644 index 00000000..2f7bedda --- /dev/null +++ b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/shaders.properties @@ -0,0 +1,65 @@ +#Global Settings +# Set clouds type or turn clouds off +# The clouds are also controlled by "Video Settings -> Details -> Clouds" with higher priority +# clouds=fast|fancy|off + +# Enable or disable old hand light +# Backwards compatibility for shader packs not supporting main and off hand. +# When enabled uses the handheld item with higher light value for the main hand. +# The old hand light is also controlled by "Video Settings -> Shaders -> Old Hand Light" with higher priority +#oldHandLight=true|false + +# Enable or disable old block lighting with fixed multiplier +# The old block lighting is also controlled by "Video Settings -> Shaders -> Old Lighting" with higher priority +# oldLighting=true|false +oldLighting=false + +# Enable or disable rendering of translucent blocks (water, stained glass) in the shadow pass +# shadowTranslucent=true|false +shadowTranslucent=true + +frustum.culling=true + +# Enable or disable the dynamic hand light from "Dynamic Lights" +# This option can be used to disable the dynamic hand light from "Dynamic Lights" if the shader implements its own hand light. +# dynamicHandLight=true|false + +# Enable or disable underwater screen overlay +# underwaterOverlay=true|false + +# Enable or disable sun rendering +# sun=true|false +sun=true + +# Enable or disable moon rendering +# moon=true|false +moon=true + +# Disable the shadow progam if shadows are disabled +program.shadow.enabled=Shadows + +#Final screen +screen= [AA_SCREEN] [AO_SCREEN] [COLOR_SCREEN] [DOF_SCREEN] [NORMALMAP_SCREEN] [MOTION_SCREEN] [REFLECTIONS_SCREEN] [SKY_SCREEN] [SHADOWS_SCREEN] [WAVING_SCREEN] [MISC_SCREEN] Celshading Fog MobsFlashRed + +#Sub-screens: +screen.AA_SCREEN=TAA TAA_sharpness +screen.AO_SCREEN=SSAO ambientOcclusionLevel +screen.COLOR_SCREEN=Tonemap gamma Colorboost Crossprocess HandLight customLight emissive_R emissive_G emissive_B +screen.DOF_SCREEN=Depth_of_Field DoF_Strength smoothDof Distance_Blur Dof_Distance_View +screen.NORMALMAP_SCREEN=nMap POM_RES POM_DIST POM_DEPTH +screen.MOTION_SCREEN=Motionblur MB_strength +screen.SHADOWS_SCREEN=Shadows Colored_Shadows grass_shadows shadowMapResolution shadowDistance slight sunPathRotation +screen.SKY_SCREEN=Godrays grays_quality grays_intensity +screen.REFLECTIONS_SCREEN=Reflections Refractions WaterReflection waterTex TransparentReflections skyReflection +screen.WAVING_SCREEN=animationSpeed Waving_Grass Waving_Tallgrass Waving_Entities Waving_Leaves Waving_Vines Waving_Fire Waving_Lanterns Waving_Lava Waving_Water waves_amplitude +screen.MISC_SCREEN=depthbuffer draw_refnormals draw_bmap +screen.WIP=* + +sliders=gamma emissive_R emissive_G emissive_B ambientOcclusionLevel TAA_sharpness + +# Used for TAA +#uniform.vec2.texelSize=vec2(1.0/viewWidth,1.0/viewHeight) //doesnt work in 1.7.10 +uniform.int.framemod8=fmod(frameCounter, 8) + +profile.Fast=TAA:false SSAO:false HandLight:true customLight:false Celshading:false MobsFlashRed:true Fog:true Tonemap:false Colorboost:false Crossprocess:false Depth_of_Field:false Distance_Blur:false nMap:0 Motionblur:false Shadows:true Colored_Shadows:true grass_shadows:true shadowMapResolution:1024 shadowDistance:90.0 Godrays:false grays_quality:1 Reflections:true Refractions:false WaterReflection:true waterTex:true TransparentReflections:true skyReflection:false Waving_Grass:true Waving_Tallgrass:true Waving_Entities:true Waving_Leaves:true Waving_Vines:true Waving_Fire:true Waving_Lava:true Waving_Water:true Waving_Lanterns:true +profile.Fancy=TAA:true SSAO:true HandLight:true customLight:false Celshading:false MobsFlashRed:true Fog:true Tonemap:false Colorboost:false Crossprocess:false Depth_of_Field:false Distance_Blur:false nMap:0 Motionblur:false Shadows:true Colored_Shadows:true grass_shadows:true shadowMapResolution:2048 shadowDistance:110.0 Godrays:true grays_quality:2 Reflections:true Refractions:true WaterReflection:true waterTex:true TransparentReflections:true skyReflection:true Waving_Grass:true Waving_Tallgrass:true Waving_Entities:true Waving_Leaves:true Waving_Vines:true Waving_Fire:true Waving_Lava:true Waving_Water:true Waving_Lanterns:true \ No newline at end of file diff --git a/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/shaders.settings b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/shaders.settings new file mode 100644 index 00000000..61e7bba6 --- /dev/null +++ b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/shaders.settings @@ -0,0 +1,112 @@ +/* +Sildur's Enhanced Default: +https://www.patreon.com/Sildur +https://sildurs-shaders.github.io/ +https://twitter.com/Sildurs_shaders +https://www.curseforge.com/minecraft/customization/sildurs-enhanced-default + +Permissions: +You are not allowed to edit, copy code or share my shaderpack under a different name or claim it as yours. +*/ +#ifdef composite0 + #define SSAO //Toggle custom ambient occlusion. + const float ambientOcclusionLevel = 1.0f; //Adjust minecrafts inbuild ambient occlusion. [0.0f 0.1f 0.2f 0.3f 0.4f 0.5f 0.6f 0.7f 0.8f 0.9f 1.0f] + + //#define Celshading //Cel shades everything, making it look somewhat like Borderlands. + + #define Reflections //Toggle reflections, also adjust in gbuffers_textured.fsh + #define Refractions //Toggle refractions / distortion caused by waves. + #define skyReflection //Reflect and blend the default skycolor. Makes water waves more visible. WIP + + #define Godrays //Toggle godrays + #define grays_quality 2 //[1 2] 1=fast 2=fancy + #define grays_intensity 0.65 //Adjust godrays intensity [0.35 0.5 0.65 0.70 0.85 1.0] + + //Debugging stuff + //#define depthbuffer //Draw depth buffer + //#define draw_refnormals //Draw reflection normals, actually composite normals but only reflections are stored in the buffer. +#endif + +#ifdef composite1 + #define TAA //Toggle temporal anti-aliasing (TAA) + #define TAA_sharpness 0.65 //[0.0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5 0.55 0.6 0.65 0.7 0.75 0.8 0.85 0.9 0.95 1.0 1.05 1.1 1.15 1.2 1.25 1.3 1.35 1.4 1.45 1.5] Adjust sharpening strength. 0.0 turns sharpening completly off. +#endif + +#ifdef final + //#define Crossprocess //It's like a color filter, alters all colors abit if enabled. + + //#define Depth_of_Field //Simulates eye focusing on objects. Low performance impact + //#define Distance_Blur //Requires Depth of Field to be enabled. Replaces eye focusing effect with distance being blurred instead. + #define smoothDof //Toggle smooth transition between clear and blurry. + #define DoF_Strength 90 //[60 90 120 150] + #define Dof_Distance_View 256 //[128 256 384 512] + + //#define Motionblur //Blurres your view/camera during movemenent. Low performance impact. Doesn't work with Depth of Field. + #define MB_strength 0.014 //[0.008 0.014 0.020] + + //#define Tonemap //Toggle tonemapping, slightly altering colors / color balance. Based of vibrant shaders, which uses uncharted2tonemap. + #define gamma 2.2 //Adjust gamma used by tonemapping. [1.0 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 2.0 2.1 2.2 2.3 2.4 2.5 2.6 2.7 2.8 2.9 3.0] +#endif + +#ifdef gbuffers_clouds + #define Fog //Toggle default fog. +#endif + +#ifdef gbuffers_textured + //#define Colorboost //Gives default colors a little kick + + #define MobsFlashRed + + #define Fog //Toggle default fog. + + #define Reflections //Toggle reflections, also adjust in composite.fsh + #define WaterReflection + #define TransparentReflections //see block.properties, transparent blocks are assigned to ice (79) + + #define Shadows //Also adjust in vertex, SHADOW_MAP_BIAS is also in vertex + #ifdef Shadows + #define Colored_Shadows + #define slight 0.55 //[0.50 0.55 0.60 0.65 0.70 0.75 0.80] + #define SHADOW_MAP_BIAS 0.80 + const int shadowMapResolution = 2048; //Shadows resolution. [512 1024 2048 3072 4096 8192] + const float shadowDistance = 110.0; //Draw distance of shadows.[60.0 90.0 120.0 150.0 180.0 210.0] + const float shadowDistanceRenderMul = 1.0f; + const bool shadowHardwareFiltering0 = true; + const bool shadowHardwareFiltering1 = true; + #endif + const float sunPathRotation = -40.0f; //[-10.0 -20.0 -30.0 -40.0f -50.0 -60.0 -70.0 -80.0 -0.15f -0.0 10.0 20.0 30.0 40.0 50.0 60.0 70.0 80.0] + + #define waterTex //Toggle water texture + + #define nMap 0 //[0 1 2]0=Off 1=Bumpmapping, 2=Parallax, also adjust in vertex + #define POM_RES 32 //Texture / Resourcepack resolution. [32 64 128 256 512 1024 2048] + #define POM_DIST 16.0 //[8.0 16.0 24.0 32.0 40.0 48.0 56.0 64.0] + #define POM_DEPTH 0.30 //[0.10 0.20 0.30 0.40 0.50 0.60 0.70 0.80 0.90 1.0] + //#define draw_bmap //Draw bmap normals + + #define HandLight //Toggle handheld lighting. + //#define customLight //Toggle custom light support for emissive blocks. + #define emissive_R 3.0 //[0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 2.0 2.1 2.2 2.3 2.4 2.5 2.6 2.7 2.8 2.9 3.0] + #define emissive_G 1.5 //[0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 2.0 2.1 2.2 2.3 2.4 2.5 2.6 2.7 2.8 2.9 3.0] + #define emissive_B 0.5 //[0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 2.0 2.1 2.2 2.3 2.4 2.5 2.6 2.7 2.8 2.9 3.0] + + #define animationSpeed 1.0 //[0.25 0.5 0.75 1.0 1.25 1.5 1.75 2.0] + #define Waving_Leaves + #define Waving_Vines + #define Waving_Grass + #define Waving_Entities //Includes: Saplings, small flowers, wheat, carrots, potatoes and beetroot. + #define Waving_Tallgrass + #define Waving_Fire + #define Waving_Lava + #define Waving_Water + #define Waving_Lanterns + #define waves_amplitude 0.65 //[0.55 0.65 0.75 0.85 0.95 1.05 1.15 1.25 1.35 1.45 1.55 1.65 1.75 1.85 1.95 2.05] + + #define TAA +#endif + +#ifdef shadowprogram + #define Shadows + #define SHADOW_MAP_BIAS 0.80 + #define grass_shadows +#endif \ No newline at end of file diff --git a/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/shadow.fsh b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/shadow.fsh new file mode 100644 index 00000000..73e271be --- /dev/null +++ b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/shadow.fsh @@ -0,0 +1,25 @@ +#version 120 +/* DRAWBUFFERS:02 */ //0=gcolor, 2=gnormal for normals +/* +Sildur's Enhanced Default: +https://www.patreon.com/Sildur +https://sildurs-shaders.github.io/ +https://twitter.com/Sildurs_shaders +https://www.curseforge.com/minecraft/customization/sildurs-enhanced-default + +Permissions: +You are not allowed to edit, copy code or share my shaderpack under a different name or claim it as yours. +*/ + +varying vec3 texcoord; +uniform sampler2D texture; +uniform int blockEntityId; + +void main() { + + vec4 color = texture2D(texture, texcoord.xy)*texcoord.z; + if(blockEntityId == 10089.0)color *= 0.0; //remove beacon beam shadows, 10089 is actually the id of all emissive blocks but only the beam should be a block entity + + gl_FragData[0] = color; + gl_FragData[1] = vec4(0.0); //improves performance +} \ No newline at end of file diff --git a/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/shadow.vsh b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/shadow.vsh new file mode 100644 index 00000000..67f61893 --- /dev/null +++ b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/shadow.vsh @@ -0,0 +1,42 @@ +#version 120 +/* +Sildur's Enhanced Default: +https://www.patreon.com/Sildur +https://sildurs-shaders.github.io/ +https://twitter.com/Sildurs_shaders +https://www.curseforge.com/minecraft/customization/sildurs-enhanced-default + +Permissions: +You are not allowed to edit, copy code or share my shaderpack under a different name or claim it as yours. +*/ + +#define shadowprogram +#include "shaders.settings" + +varying vec3 texcoord; +attribute vec4 mc_Entity; + +#ifdef Shadows +vec2 calcShadowDistortion(in vec2 shadowpos) { + float distortion = ((1.0 - SHADOW_MAP_BIAS) + length(shadowpos.xy * 1.25) * SHADOW_MAP_BIAS) * 0.85; + return shadowpos.xy / distortion; +} +#endif + +void main() { + +vec4 position = gl_ModelViewProjectionMatrix * gl_Vertex; +#ifdef Shadows + position.xy = calcShadowDistortion(position.xy); +#endif + + gl_Position = position; + + texcoord.xy = (gl_MultiTexCoord0).xy; + texcoord.z = 1.0; + + if(mc_Entity.x == 10008.0) texcoord.z = 0.0; +#ifndef grass_shadows + if(mc_Entity.x == 10031.0 || mc_Entity.x == 10175.0 || mc_Entity.x == 10176.0) texcoord.z = 0.0; +#endif +} diff --git a/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world-1/composite.fsh b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world-1/composite.fsh new file mode 100644 index 00000000..7d9de27a --- /dev/null +++ b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world-1/composite.fsh @@ -0,0 +1 @@ +#include "/composite.fsh" \ No newline at end of file diff --git a/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world-1/composite.vsh b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world-1/composite.vsh new file mode 100644 index 00000000..96dacb3b --- /dev/null +++ b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world-1/composite.vsh @@ -0,0 +1 @@ +#include "/composite.vsh" \ No newline at end of file diff --git a/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world-1/composite1.fsh b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world-1/composite1.fsh new file mode 100644 index 00000000..8a9475ce --- /dev/null +++ b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world-1/composite1.fsh @@ -0,0 +1 @@ +#include "/composite1.fsh" \ No newline at end of file diff --git a/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world-1/composite1.vsh b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world-1/composite1.vsh new file mode 100644 index 00000000..aef6af31 --- /dev/null +++ b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world-1/composite1.vsh @@ -0,0 +1 @@ +#include "/composite1.vsh" \ No newline at end of file diff --git a/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world-1/final.fsh b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world-1/final.fsh new file mode 100644 index 00000000..d9a7ebca --- /dev/null +++ b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world-1/final.fsh @@ -0,0 +1 @@ +#include "/final.fsh" \ No newline at end of file diff --git a/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world-1/final.vsh b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world-1/final.vsh new file mode 100644 index 00000000..6c6e53e9 --- /dev/null +++ b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world-1/final.vsh @@ -0,0 +1 @@ +#include "/final.vsh" \ No newline at end of file diff --git a/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world-1/gbuffers_skytextured.fsh b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world-1/gbuffers_skytextured.fsh new file mode 100644 index 00000000..7b501c10 --- /dev/null +++ b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world-1/gbuffers_skytextured.fsh @@ -0,0 +1 @@ +#include "/gbuffers_skytextured.fsh" \ No newline at end of file diff --git a/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world-1/gbuffers_skytextured.vsh b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world-1/gbuffers_skytextured.vsh new file mode 100644 index 00000000..23d70658 --- /dev/null +++ b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world-1/gbuffers_skytextured.vsh @@ -0,0 +1 @@ +#include "/gbuffers_skytextured.vsh" \ No newline at end of file diff --git a/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world-1/gbuffers_textured.fsh b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world-1/gbuffers_textured.fsh new file mode 100644 index 00000000..c042c4cf --- /dev/null +++ b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world-1/gbuffers_textured.fsh @@ -0,0 +1 @@ +#include "/gbuffers_textured.fsh" \ No newline at end of file diff --git a/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world-1/gbuffers_textured.vsh b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world-1/gbuffers_textured.vsh new file mode 100644 index 00000000..df2f90f3 --- /dev/null +++ b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world-1/gbuffers_textured.vsh @@ -0,0 +1 @@ +#include "/gbuffers_textured.vsh" \ No newline at end of file diff --git a/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world-1/shadow.fsh b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world-1/shadow.fsh new file mode 100644 index 00000000..6ce63373 --- /dev/null +++ b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world-1/shadow.fsh @@ -0,0 +1,4 @@ +#version 120 +//Iris needs dummy files or nether and end are broken if shadowtextures are loaded (since MC 1.21) +void main() { +} \ No newline at end of file diff --git a/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world-1/shadow.vsh b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world-1/shadow.vsh new file mode 100644 index 00000000..6ce63373 --- /dev/null +++ b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world-1/shadow.vsh @@ -0,0 +1,4 @@ +#version 120 +//Iris needs dummy files or nether and end are broken if shadowtextures are loaded (since MC 1.21) +void main() { +} \ No newline at end of file diff --git a/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world1/composite.fsh b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world1/composite.fsh new file mode 100644 index 00000000..7d9de27a --- /dev/null +++ b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world1/composite.fsh @@ -0,0 +1 @@ +#include "/composite.fsh" \ No newline at end of file diff --git a/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world1/composite.vsh b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world1/composite.vsh new file mode 100644 index 00000000..96dacb3b --- /dev/null +++ b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world1/composite.vsh @@ -0,0 +1 @@ +#include "/composite.vsh" \ No newline at end of file diff --git a/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world1/composite1.fsh b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world1/composite1.fsh new file mode 100644 index 00000000..8a9475ce --- /dev/null +++ b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world1/composite1.fsh @@ -0,0 +1 @@ +#include "/composite1.fsh" \ No newline at end of file diff --git a/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world1/composite1.vsh b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world1/composite1.vsh new file mode 100644 index 00000000..aef6af31 --- /dev/null +++ b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world1/composite1.vsh @@ -0,0 +1 @@ +#include "/composite1.vsh" \ No newline at end of file diff --git a/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world1/final.fsh b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world1/final.fsh new file mode 100644 index 00000000..d9a7ebca --- /dev/null +++ b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world1/final.fsh @@ -0,0 +1 @@ +#include "/final.fsh" \ No newline at end of file diff --git a/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world1/final.vsh b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world1/final.vsh new file mode 100644 index 00000000..6c6e53e9 --- /dev/null +++ b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world1/final.vsh @@ -0,0 +1 @@ +#include "/final.vsh" \ No newline at end of file diff --git a/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world1/gbuffers_skytextured.fsh b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world1/gbuffers_skytextured.fsh new file mode 100644 index 00000000..7b501c10 --- /dev/null +++ b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world1/gbuffers_skytextured.fsh @@ -0,0 +1 @@ +#include "/gbuffers_skytextured.fsh" \ No newline at end of file diff --git a/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world1/gbuffers_skytextured.vsh b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world1/gbuffers_skytextured.vsh new file mode 100644 index 00000000..23d70658 --- /dev/null +++ b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world1/gbuffers_skytextured.vsh @@ -0,0 +1 @@ +#include "/gbuffers_skytextured.vsh" \ No newline at end of file diff --git a/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world1/gbuffers_textured.fsh b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world1/gbuffers_textured.fsh new file mode 100644 index 00000000..c042c4cf --- /dev/null +++ b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world1/gbuffers_textured.fsh @@ -0,0 +1 @@ +#include "/gbuffers_textured.fsh" \ No newline at end of file diff --git a/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world1/gbuffers_textured.vsh b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world1/gbuffers_textured.vsh new file mode 100644 index 00000000..df2f90f3 --- /dev/null +++ b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world1/gbuffers_textured.vsh @@ -0,0 +1 @@ +#include "/gbuffers_textured.vsh" \ No newline at end of file diff --git a/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world1/shadow.fsh b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world1/shadow.fsh new file mode 100644 index 00000000..6ce63373 --- /dev/null +++ b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world1/shadow.fsh @@ -0,0 +1,4 @@ +#version 120 +//Iris needs dummy files or nether and end are broken if shadowtextures are loaded (since MC 1.21) +void main() { +} \ No newline at end of file diff --git a/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world1/shadow.vsh b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world1/shadow.vsh new file mode 100644 index 00000000..6ce63373 --- /dev/null +++ b/.minecraft/shaderpacks/Sildur's Enhanced Default v1.172 Fancy/shaders/world1/shadow.vsh @@ -0,0 +1,4 @@ +#version 120 +//Iris needs dummy files or nether and end are broken if shadowtextures are loaded (since MC 1.21) +void main() { +} \ No newline at end of file diff --git a/README.md b/README.md index 8b6b7078..9c5275c0 100644 --- a/README.md +++ b/README.md @@ -45,5 +45,6 @@ git clone https://gitea.emblad.com/samsonsin/Gregtech-New-Bastards "