Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- client-main.log with verbose logging
- 9.8.2026 08:45:14 [Notification] Client logger started.
- 9.8.2026 08:45:14 [Notification] Game Version: v1.22.6 (Stable)
- 9.8.2026 08:45:14 [Notification] Process path: ~/.config/VSLGameVersions/1.22.6/Vintagestory
- 9.8.2026 08:45:14 [Notification] Operating System: Linux (CachyOS) [Kernel 7.1.5.1]
- 9.8.2026 08:45:14 [Notification] CPU Cores: 20
- 9.8.2026 08:45:14 [Notification] CPU: 13th Gen Intel(R) Core(TM) i5-13600K
- 9.8.2026 08:45:14 [Notification] Available RAM: 31797 MB
- 9.8.2026 08:45:14 [Notification] OpenAL Initialized. Available Mono/Stereo Sources: 255/1
- 9.8.2026 08:45:14 [Notification] Graphics Card Vendor: AMD
- 9.8.2026 08:45:14 [Notification] Graphics Card Version: 4.6 (Core Profile) Mesa 26.1.6-arch3.1
- 9.8.2026 08:45:14 [Notification] Graphics Card Renderer: AMD Radeon RX 9060 XT (radeonsi, gfx1200, ACO, DRM 3.64, 7.1.5-1-cachyos)
- 9.8.2026 08:45:14 [Notification] Graphics Card ShadingLanguageVersion: 4.60
- 9.8.2026 08:45:14 [Notification] GL.MaxVertexUniformComponents: 16384
- 9.8.2026 08:45:14 [Notification] GL.MaxUniformBlockSize: 2147483647
- 9.8.2026 08:45:14 [Notification] C# Framework: .net 10.0.10
- 9.8.2026 08:45:14 [Notification] Cairo Graphics Version: 1.18.4
- 9.8.2026 08:45:14 [Notification] OpenAL Version: 1.1 ALSOFT 1.23.0
- 9.8.2026 08:45:14 [Notification] Zstd Version: 1.5.7
- 9.8.2026 08:45:14 [Notification] Start discovering assets
- 9.8.2026 08:45:14 [Notification] Found 35 base assets in category lang
- 9.8.2026 08:45:14 [Notification] Found 0 base assets in category patches
- 9.8.2026 08:45:14 [Notification] Found 24 base assets in category config
- 9.8.2026 08:45:14 [Notification] Found 0 base assets in category worldproperties
- 9.8.2026 08:45:14 [Notification] Found 49 base assets in category sounds
- 9.8.2026 08:45:14 [Notification] Found 230 base assets in category shapes
- 9.8.2026 08:45:14 [Notification] Found 84 base assets in category shaders
- 9.8.2026 08:45:14 [Notification] Found 19 base assets in category shaderincludes
- 9.8.2026 08:45:14 [Notification] Found 182 base assets in category textures
- 9.8.2026 08:45:14 [Notification] Found 4 base assets in category music
- 9.8.2026 08:45:14 [Notification] Found 0 base assets in category dialog
- 9.8.2026 08:45:14 [Notification] Found 627 base assets in total
- 9.8.2026 08:45:14 [Notification] Loading sounds
- 9.8.2026 08:45:14 [Notification] (Re-)loaded frame buffers
- 9.8.2026 08:45:14 [Notification] Loaded Shaderprogramm for render pass .
- 9.8.2026 08:45:14 [Notification] Waiting for async sound loading...
- 9.8.2026 08:45:14 [Notification] Sounds loaded
- 9.8.2026 08:45:14 [Notification] Begin loading shaders
- 9.8.2026 08:45:14 [Notification] Load shaders now
- 9.8.2026 08:45:14 [Notification] Loading shaders...
- 9.8.2026 08:45:14 [Notification] Loaded Shaderprogramm for render pass standard.
- 9.8.2026 08:45:14 [Notification] Loaded Shaderprogramm for render pass particlescube.
- 9.8.2026 08:45:14 [Notification] Loaded Shaderprogramm for render pass particlesquad.
- 9.8.2026 08:45:14 [Notification] Loaded Shaderprogramm for render pass sky.
- 9.8.2026 08:45:14 [Notification] Loaded Shaderprogramm for render pass nightsky.
- 9.8.2026 08:45:14 [Notification] Loaded Shaderprogramm for render pass woittest.
- 9.8.2026 08:45:14 [Notification] Loaded Shaderprogramm for render pass transparentcompose.
- 9.8.2026 08:45:14 [Notification] Loaded Shaderprogramm for render pass debugdepthbuffer.
- 9.8.2026 08:45:14 [Notification] Loaded Shaderprogramm for render pass helditem.
- 9.8.2026 08:45:14 [Notification] Loaded Shaderprogramm for render pass chunkopaque.
- 9.8.2026 08:45:14 [Notification] Loaded Shaderprogramm for render pass chunkliquid.
- 9.8.2026 08:45:14 [Notification] Loaded Shaderprogramm for render pass decals.
- 9.8.2026 08:45:14 [Notification] Loaded Shaderprogramm for render pass final.
- 9.8.2026 08:45:14 [Notification] Loaded Shaderprogramm for render pass gui.
- 9.8.2026 08:45:14 [Notification] Loaded Shaderprogramm for render pass blur.
- 9.8.2026 08:45:14 [Notification] Loaded Shaderprogramm for render pass chunktransparent.
- 9.8.2026 08:45:14 [Notification] Loaded Shaderprogramm for render pass findbright.
- 9.8.2026 08:45:14 [Notification] Loaded Shaderprogramm for render pass chunktopsoil.
- 9.8.2026 08:45:14 [Notification] Loaded Shaderprogramm for render pass godrays.
- 9.8.2026 08:45:14 [Notification] Loaded Shaderprogramm for render pass autocamera.
- 9.8.2026 08:45:14 [Notification] Loaded Shaderprogramm for render pass blockhighlights.
- 9.8.2026 08:45:14 [Notification] Loaded Shaderprogramm for render pass wireframe.
- 9.8.2026 08:45:14 [Notification] Loaded Shaderprogramm for render pass entityanimated.
- 9.8.2026 08:45:14 [Notification] Loaded Shaderprogramm for render pass luma.
- 9.8.2026 08:45:14 [Notification] Loaded Shaderprogramm for render pass blit.
- 9.8.2026 08:45:14 [Notification] Loaded Shaderprogramm for render pass particlesquad2d.
- 9.8.2026 08:45:14 [Notification] Loaded Shaderprogramm for render pass shadowmapentityanimated.
- 9.8.2026 08:45:14 [Notification] Loaded Shaderprogramm for render pass chunkshadowmap.
- 9.8.2026 08:45:14 [Notification] Loaded Shaderprogramm for render pass texture2texture.
- 9.8.2026 08:45:14 [Notification] Loaded Shaderprogramm for render pass celestialobject.
- 9.8.2026 08:45:14 [Notification] Loaded Shaderprogramm for render pass guitopsoil.
- 9.8.2026 08:45:14 [Notification] Loaded Shaderprogramm for render pass colorgrade.
- 9.8.2026 08:45:14 [Notification] Loaded Shaderprogramm for render pass guigear.
- 9.8.2026 08:45:14 [Notification] Loaded Shaderprogramm for render pass ssao.
- 9.8.2026 08:45:14 [Notification] Loaded Shaderprogramm for render pass bilateralblur.
- 9.8.2026 08:45:14 [Notification] Loaded Shaderprogramm for render pass chunkliquiddepth.
- 9.8.2026 08:45:14 [Notification] Loaded Shaderprogramm for render pass aurora.
- 9.8.2026 08:45:14 [Notification] Loaded Shaderprogramm for render pass cloudmap.
- 9.8.2026 08:45:14 [Notification] Loaded Shaderprogramm for render pass cloudvolumetric.
- 9.8.2026 08:45:14 [Notification] Loaded Shaderprogramm for render pass instanced.
- 9.8.2026 08:45:14 [Notification] Loaded Shaderprogramm for render pass lines.
- 9.8.2026 08:45:14 [Notification] Loaded Shaderprogramm for render pass entityanimated.
- 9.8.2026 08:45:14 [Notification] Cached session key is valid, validating with server
- 9.8.2026 08:45:15 [Notification] Server validation response: Good
- 9.8.2026 08:45:15 [Notification] Will search the following paths for mods:
- 9.8.2026 08:45:15 [Notification] ~/.config/VSLGameVersions/1.22.6/Mods
- 9.8.2026 08:45:15 [Notification] ~/.config/VSLInstallations/My-New-Installation/Mods
- 9.8.2026 08:45:42 [Notification] Initialized GUI Manager
- 9.8.2026 08:45:42 [Notification] Initialized Server Connection
- 9.8.2026 08:45:42 [Notification] Server args parsed
- 9.8.2026 08:45:42 [Notification] Server main instantiated
- 9.8.2026 08:45:51 [Notification] Processed server identification
- 9.8.2026 08:45:51 [Notification] Map initialized
- 9.8.2026 08:45:51 [Notification] Received server assets
- 9.8.2026 08:45:51 [Notification] Loading and pre-starting client side mods...
- 9.8.2026 08:45:51 [Notification] Will search the following paths for mods:
- 9.8.2026 08:45:51 [Notification] ~/.config/VSLGameVersions/1.22.6/Mods
- 9.8.2026 08:45:51 [Notification] ~/.config/VSLInstallations/My-New-Installation/Mods
- 9.8.2026 08:45:51 [Notification] Found 4 mods (0 disabled)
- 9.8.2026 08:45:51 [Notification] Mods, sorted by dependency: game, coriaendershaders, creative, survival
- 9.8.2026 08:45:51 [Notification] Instantiated 149 mod systems from 4 enabled mods
- 9.8.2026 08:45:51 [Notification] Done loading and pre-starting client side mods.
- 9.8.2026 08:45:51 [Notification] External Origins in load order: modorigin@~/.config/VSLGameVersions/1.22.6/assets/creative/, modorigin@~/.config/VSLGameVersions/1.22.6/assets/survival/, [email protected]
- 9.8.2026 08:45:51 [Notification] Tags registries now locked.
- 9.8.2026 08:45:51 [Notification] Found 1 external assets in category lang
- 9.8.2026 08:45:51 [Notification] Found 10 external assets in category patches
- 9.8.2026 08:45:51 [Notification] Found 128 external assets in category config
- 9.8.2026 08:45:51 [Notification] Found 25 external assets in category worldproperties
- 9.8.2026 08:45:51 [Notification] Found 681 external assets in category sounds
- 9.8.2026 08:45:51 [Notification] Found 6123 external assets in category shapes
- 9.8.2026 08:45:51 [Notification] Found 31 external assets in category shaders
- 9.8.2026 08:45:51 [Notification] Found 8 external assets in category shaderincludes
- 9.8.2026 08:45:51 [Notification] Found 9459 external assets in category textures
- 9.8.2026 08:45:51 [Notification] Found 83 external assets in category music
- 9.8.2026 08:45:51 [Notification] Found 18 external assets in category dialog
- 9.8.2026 08:45:51 [Notification] Found 0 external assets in category compatibility
- 9.8.2026 08:45:51 [Notification] Reloaded lang file now with mod assets
- 9.8.2026 08:45:51 [Notification] Compatibility lib: 0 assets added, 0 assets replaced.
- 9.8.2026 08:45:51 [Notification] JsonPatch Loader: 6 patches total, successfully applied 6 patches, no errors
- 9.8.2026 08:45:52 [Notification] Received 4469 item types from server
- 9.8.2026 08:45:52 [Notification] Loaded 14091 block types from server
- 9.8.2026 08:45:53 [Notification] Reloaded sounds, now with mod assets
- 9.8.2026 08:45:53 [Notification] Composed 1 4096x2048 entities texture atlases from 695 textures
- 9.8.2026 08:45:53 [Notification] Collected 3096 shapes to tesselate.
- 9.8.2026 08:45:54 [Notification] Composed 1 4096x2048 items texture atlases from 2346 textures
- 9.8.2026 08:45:55 [Notification] Composed 2 4096x2048 blocks texture atlases from 7449 textures
- 9.8.2026 08:45:55 [Notification] Server assets loaded
- 9.8.2026 08:45:56 [Notification] Blocks tesselated
- 9.8.2026 08:46:02 [Notification] Server launched
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogramm for render pass standard.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogramm for render pass standard.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogramm for render pass entityanimated.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogramm for render pass particlescube.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogramm for render pass lines.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogramm for render pass aurora.
- 9.8.2026 08:46:02 [Notification] Initialised WeatherSystemClient. simLightning is loaded.
- 9.8.2026 08:46:02 [Warning] [coriaendershaders] [CoriaenderShadersModSystem] Couldn't find VsImGui mod system, GUI will be unavailable.
- 9.8.2026 08:46:02 [Notification] [coriaendershaders] [EffectManager] Initializing WaterEffects.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogram for render pass watercompose.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogram for render pass cameradepth.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogram for render pass waternormals.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogram for render pass screenspacereflections.
- 9.8.2026 08:46:02 [Notification] [coriaendershaders] [EffectManager] Initializing CloudShadows.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogram for render pass cloudshadowmap.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogram for render pass cloudshadowblur.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogram for render pass cloudmapmip.
- 9.8.2026 08:46:02 [Notification] [coriaendershaders] [EffectManager] Initializing TerrainShadows.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogram for render pass drawvoxeldata.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogram for render pass depthmipmap.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogram for render pass depthmipmap.
- 9.8.2026 08:46:02 [Notification] [coriaendershaders] [EffectManager] Initializing VoxelSpriteRenderer.
- 9.8.2026 08:46:02 [Notification] [ChunkMemoryManager] Initializing memory manager
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogram for render pass visibleculling.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogram for render pass voxelcompaction.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogram for render pass voxelcompaction.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogram for render pass casterculling.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogram for render pass drawvoxeldata.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogram for render pass depthmipmap.
- 9.8.2026 08:46:02 [Notification] [coriaendershaders] [EffectManager] Initializing DeferedShading.
- 9.8.2026 08:46:02 [Error] Shader compile error in deferredlighting 0:233(42): error: `shadowCoordsNear' undeclared
- 0:233(42): error: type mismatch
- 0:233(42): error: operands of `==' must have the same type
- 0:382(70): error: `shadowCoordsNear' undeclared
- 0:382(70): error: type mismatch
- 0:382(50): error: operands to arithmetic operators must be numeric
- 0:382(28): error: no matching function for call to `smoothstep(float, float, error)'; candidates are:
- 0:382(28): error: float smoothstep(float, float, float)
- 0:382(28): error: vec2 smoothstep(float, float, vec2)
- 0:382(28): error: vec3 smoothstep(float, float, vec3)
- 0:382(28): error: vec4 smoothstep(float, float, vec4)
- 0:382(28): error: vec2 smoothstep(vec2, vec2, vec2)
- 0:382(28): error: vec3 smoothstep(vec3, vec3, vec3)
- 0:382(28): error: vec4 smoothstep(vec4, vec4, vec4)
- 0:382(28): error: double smoothstep(double, double, double)
- 0:382(28): error: dvec2 smoothstep(double, double, dvec2)
- 0:382(28): error: dvec3 smoothstep(double, double, dvec3)
- 0:382(28): error: dvec4 smoothstep(double, double, dvec4)
- 0:382(28): error: dvec2 smoothstep(dvec2, dvec2, dvec2)
- 0:382(28): error: dvec3 smoothstep(dvec3, dvec3, dvec3)
- 0:382(28): error: dvec4 smoothstep(dvec4, dvec4, dvec4)
- 0:382(6): error: no matching function for call to `mix(float, float, error)'; candidates are:
- 0:382(6): error: float mix(float, float, float)
- 0:382(6): error: vec2 mix(vec2, vec2, float)
- 0:382(6): error: vec3 mix(vec3, vec3, float)
- 0:382(6): error: vec4 mix(vec4, vec4, float)
- 0:382(6): error: vec2 mix(vec2, vec2, vec2)
- 0:382(6): error: vec3 mix(vec3, vec3, vec3)
- 0:382(6): error: vec4 mix(vec4, vec4, vec4)
- 0:382(6): error: double mix(double, double, double)
- 0:382(6): error: dvec2 mix(dvec2, dvec2, double)
- 0:382(6): error: dvec3 mix(dvec3, dvec3, double)
- 0:382(6): error: dvec4 mix(dvec4, dvec4, double)
- 0:382(6): error: dvec2 mix(dvec2, dvec2, dvec2)
- 0:382(6): error: dvec3 mix(dvec3, dvec3, dvec3)
- 0:382(6): error: dvec4 mix(dvec4, dvec4, dvec4)
- 0:382(6): error: float mix(float, float, bool)
- 0:382(6): error: vec2 mix(vec2, vec2, bvec2)
- 0:382(6): error: vec3 mix(vec3, vec3, bvec3)
- 0:382(6): error: vec4 mix(vec4, vec4, bvec4)
- 0:382(6): error: double mix(double, double, bool)
- 0:382(6): error: dvec2 mix(dvec2, dvec2, bvec2)
- 0:382(6): error: dvec3 mix(dvec3, dvec3, bvec3)
- 0:382(6): error: dvec4 mix(dvec4, dvec4, bvec4)
- 9.8.2026 08:46:02 [Error] Couldn't write to log file, failed formatting #version 430
- #define FXAA 1
- #define SSAOLEVEL 1
- #define NORMALVIEW 0
- #define BLOOM 1
- #define GODRAYS 0
- #define FOAMEFFECT 1
- #define SHINYEFFECT 1
- #define SHADOWQUALITY 1
- #define DYNLIGHTS 25
- #define USEOIT 1
- #define TERRAINSHADOWS
- #define CLOUDSHADOWS
- #define INCOLORUNIT 0
- #define INGLOWUNIT 1
- #define GPOSITIONUNIT 2
- #define GNORMALUNIT 3
- #define SHADOW_CASCADE_BINDING 4
- #define DEFERBASE
- #define SHADOWMAPFARUNIT 4
- #define SHADOWMAPNEARUNIT 5
- #define INCLUDESHADOWCOORDS
- layout(location=0) out vec4 outColor;
- layout(binding=INCOLORUNIT) uniform sampler2D inColor;
- layout(binding=INGLOWUNIT) uniform sampler2D inGlow;
- layout(binding=GPOSITIONUNIT) uniform sampler2D GPosition;
- layout(binding=GNORMALUNIT) uniform sampler2D GNormal;
- in vec2 vUV;
- uniform mat4 invModelView;
- uniform float shadowIntensity;
- #ifdef INCLUDESHADOWCOORDS
- uniform mat4 modelViewMtx;
- #if SHADOWQUALITY > 0
- uniform float shadowRangeFar;
- uniform mat4 toShadowMapSpaceMatrixFar;
- vec4 shadowCoordsFar;
- #endif
- #if SHADOWQUALITY > 1
- uniform float shadowRangeNear;
- uniform mat4 toShadowMapSpaceMatrixNear;
- vec4 shadowCoordsNear;
- #endif
- const float transitionDistance = 10.0;
- void calcShadowMapCoords(mat4 modelviewMat, vec4 worldPos) {
- float nearSub = 0;
- #if SHADOWQUALITY > 0
- float len = length(worldPos);
- #endif
- #if SHADOWQUALITY > 1
- // Near map
- shadowCoordsNear = toShadowMapSpaceMatrixNear * worldPos;
- float distanceNear = clamp(
- max(max(0.0, 0.03 - shadowCoordsNear.x) * 100, max(0.0, shadowCoordsNear.x - 0.97) * 100) +
- max(max(0.0, 0.03 - shadowCoordsNear.y) * 100, max(0.0, shadowCoordsNear.y - 0.97) * 100) +
- max(0.0, shadowCoordsNear.z - 0.98) * 100 +
- max(0.0, len / shadowRangeNear - 0.15)
- , 0.0, 1.0);
- nearSub = shadowCoordsNear.w = clamp(1.0 - distanceNear, 0.0, 1.0);
- if (shadowCoordsNear.z >= 0.999) shadowCoordsNear.w = 0.0; // so no need to test both in fogandlight.fsh
- #endif
- #if SHADOWQUALITY > 0
- // Far map
- shadowCoordsFar = toShadowMapSpaceMatrixFar * worldPos;
- float distanceFar = clamp(
- max(max(0.0, 0.03 - shadowCoordsFar.x) * 10, max(0.0, shadowCoordsFar.x - 0.97) * 10) +
- max(max(0.0, 0.03 - shadowCoordsFar.y) * 10, max(0.0, shadowCoordsFar.y - 0.97) * 10) +
- max(0.0, shadowCoordsFar.z - 0.98) * 10 +
- max(0.0, len / shadowRangeFar - 0.15)
- , 0.0, 1.0);
- distanceFar = distanceFar * 2 - 0.5;
- shadowCoordsFar.w = max(0.0, clamp(1.0 - distanceFar, 0.0, 1.0) - nearSub);
- if (shadowCoordsFar.z >= 0.999) shadowCoordsFar.w = 0.0; // so no need to test both in fogandlight.fsh
- #endif
- }
- #endif
- //? #version 430
- // https://github.com/opengl-tutorials/ogl/blob/master/tutorial16_shadowmaps/ShadowMapping.fragmentshader
- vec2 poissonDisk[16] = vec2[](
- vec2( -0.94201624, -0.39906216 ),
- vec2( 0.94558609, -0.76890725 ),
- vec2( -0.094184101, -0.92938870 ),
- vec2( 0.34495938, 0.29387760 ),
- vec2( -0.91588581, 0.45771432 ),
- vec2( -0.81544232, -0.87912464 ),
- vec2( -0.38277543, 0.27676845 ),
- vec2( 0.97484398, 0.75648379 ),
- vec2( 0.44323325, -0.97511554 ),
- vec2( 0.53742981, -0.47373420 ),
- vec2( -0.26496911, -0.41893023 ),
- vec2( 0.79197514, 0.19090188 ),
- vec2( -0.24188840, 0.99706507 ),
- vec2( -0.81409955, 0.91437590 ),
- vec2( 0.19984126, 0.78641367 ),
- vec2( 0.14383161, -0.14100790 )
- );
- // Returns a random number based on a vec3 and an int.
- float random(vec3 seed, int i){
- vec4 seed4 = vec4(seed,i);
- float dot_product = dot(seed4, vec4(12.9898,78.233,45.164,94.673));
- return fract(sin(dot_product) * 43758.5453);
- }
- float StratifiedPoisson(vec4 ShadowCoord, sampler2DShadow shadowMap) {
- float b = 1.0;
- float visibility=1.0;
- // Fixed bias, or...
- float bias = 0.005;
- // ...variable bias
- // float bias = 0.005*tan(acos(cosTheta));
- // bias = clamp(bias, 0,0.01);
- // Sample the shadow map 4 times
- for (int i=0;i<4;i++){
- // use either :
- // - Always the same samples.
- // Gives a fixed pattern in the shadow, but no noise
- int index = i;
- // - A random sample, based on the pixel's screen location.
- // No banding, but the shadow moves with the camera, which looks weird.
- // int index = int(16.0*random(gl_FragCoord.xyy, i))%16;
- // - A random sample, based on the pixel's position in world space.
- // The position is rounded to the millimeter to avoid too much aliasing
- // int index = int(16.0*random(floor(Position_worldspace.xyz*1000.0), i))%16;
- // being fully in the shadow will eat up 4*0.2 = 0.8
- // 0.2 potentially remain, which is quite dark.
- visibility -= 0.2*(1.0-texture( shadowMap, vec3(ShadowCoord.xy + poissonDisk[index]/700.0, (ShadowCoord.z-bias)/ShadowCoord.w) ));
- }
- return b;
- }
- float StratifiedPoisson(vec3 worldPos, vec4 ShadowCoord, sampler2DArrayShadow shadowMap) {
- float b=1.0;
- float bias = 0.001;
- float shadow = 0.0;
- int samples = 8;
- for (int i = 0; i < samples; i++){
- //int index = i;
- int index = int(16.0 * random(floor(worldPos.xyz * 1000.0), i)) % 16;
- vec2 offset = poissonDisk[index] / textureSize(shadowMap, 0).x;
- shadow += texture(shadowMap, vec4(ShadowCoord.xy + offset, ShadowCoord.z, ShadowCoord.w-bias)).r;
- }
- b = shadow / samples;
- return b;
- }
- layout(std140, binding = SHADOW_CASCADE_BINDING) uniform ShadowCascadeBlock
- {
- mat4[4] terrainShadowMatrixes;
- vec4 splitEdges;
- vec4 normalOffsetScales;
- vec4 sunDir;
- float terrainShadowsMax;
- int cascadeCount;
- int dontMixWithBaseShadows;
- } shadow_uniforms;
- #ifdef DEFERBASE
- layout(binding=SHADOWMAPFARUNIT) uniform sampler2DShadow shadowMapFar;
- layout(binding=SHADOWMAPNEARUNIT) uniform sampler2DShadow shadowMapNear;
- uniform float shadowMapWidthInv;
- uniform float shadowMapHeightInv;
- // Adapted from fogandlight.fsh
- float getBrightnessFromShadowMap() {
- #if SHADOWQUALITY > 0
- float totalFar = 9.0;
- if (shadowCoordsFar.w > 0) {
- for (int x = -1; x <= 1; x++) {
- for (int y = -1; y <= 1; y++) {
- totalFar -= texture (shadowMapFar, vec3(shadowCoordsFar.xy + vec2(x * shadowMapWidthInv, y * shadowMapHeightInv), shadowCoordsFar.z - 0.0009));
- }
- }
- }
- totalFar /= 9.0;
- #ifdef TERRAINSHADOWS
- // Don't fade outside edge here
- float shadow = shadowCoordsFar.w > 0 && shadowCoordsNear.w == 0 ? totalFar : totalFar * shadowCoordsFar.w;
- #else
- float shadow = totalFar * shadowCoordsFar.w;
- #endif
- #endif
- #if SHADOWQUALITY > 1
- float totalNear = 9.0;
- if (shadowCoordsNear.w > 0) {
- for (int x = -1; x <= 1; x++) {
- for (int y = -1; y <= 1; y++) {
- totalNear -= texture (shadowMapNear, vec3(shadowCoordsNear.xy + vec2(x * shadowMapWidthInv, y * shadowMapHeightInv), shadowCoordsNear.z - 0.0005));
- }
- }
- }
- totalNear /= 9.0;
- shadow += totalNear * shadowCoordsNear.w;
- #endif
- #if SHADOWQUALITY > 0
- return 1 - shadow * 0.5;
- #endif
- return 1.0;
- }
- #endif
- uniform bool terrainShadowsEnabled;
- uniform bool softTerrainShadows;
- #ifdef COLORCASCADES
- uniform bool colorCascades;
- #endif
- layout(binding=6) uniform sampler2DArrayShadow terrainShadowNear;
- layout(binding=7) uniform sampler2DArrayShadow terrainShadowFar;
- float getTerrainShadowBrightness(vec3 worldPos, vec3 normal, float viewDepth) {
- float b = 1.0;
- // Normal offset shadow biasing, based on https://github.com/godotengine/godot/issues/17260
- float cosLightAngle = dot(shadow_uniforms.sunDir.xyz, normal);
- float normalOffsetScale = clamp(1 - cosLightAngle, 0, 1);
- int terrainShadowIdx = viewDepth <= shadow_uniforms.splitEdges[0]? 0
- : viewDepth <= shadow_uniforms.splitEdges[1]? 1
- : viewDepth <= shadow_uniforms.splitEdges[2]? 2
- : 3;
- terrainShadowIdx = min(terrainShadowIdx, shadow_uniforms.cascadeCount);
- #ifdef COLORCASCADES
- if(colorCascades) outColor = (terrainShadowIdx == 3 ? vec4(0.8,0.3,0.8,0) : terrainShadowIdx == 2 ? vec4(0.8,0.8,0,0) : terrainShadowIdx == 1 ? vec4(0.2,0.5,1,0) : vec4(0.9,0.1,0.5,0));
- #endif
- vec4 terrainShadowPos = (shadow_uniforms.terrainShadowMatrixes[terrainShadowIdx] * vec4(worldPos, 1));
- normalOffsetScale *= shadow_uniforms.normalOffsetScales[terrainShadowIdx];
- vec3 shadowOffset = normal.xyz * normalOffsetScale;
- vec2 offsetShadowPos = (shadow_uniforms.terrainShadowMatrixes[terrainShadowIdx] * vec4(worldPos + shadowOffset, 1)).xy;
- terrainShadowPos.xy = offsetShadowPos.xy;
- // Ignore if not on the texture
- vec2 onMap = step(vec2(0.0), terrainShadowPos.xy) * step(terrainShadowPos.xy, vec2(1.0));
- if(onMap.x * onMap.y == 0) return 1.0;
- // sampler2DArrayShadow indexing is weird
- vec4 shadowPos = vec4(terrainShadowPos.xy, terrainShadowIdx % 2, terrainShadowPos.z);
- if(softTerrainShadows) {
- if(terrainShadowIdx < 2)
- {
- b = StratifiedPoisson(worldPos, shadowPos, terrainShadowNear);
- } else {
- b = StratifiedPoisson(worldPos, shadowPos, terrainShadowFar);
- }
- } else {
- if(terrainShadowIdx < 2)
- {
- b = texture(terrainShadowNear, shadowPos);
- } else {
- b = texture(terrainShadowFar, shadowPos);
- }
- }
- #ifndef DEFERBASE
- // Blend with edges of base game shadows
- float blendFactor = shadowCoordsFar.w;
- #if SHADOWQUALITY > 1
- blendFactor += shadowCoordsNear.w;
- #endif
- blendFactor *= shadow_uniforms.dontMixWithBaseShadows;
- if(blendFactor > 0.33) { b = 1 - (1 - b) * smoothstep(1.1, SHADOWQUALITY > 1 ? 0.15 : 0.6, blendFactor); }
- #endif
- return max(b, shadow_uniforms.terrainShadowsMax);
- }
- uniform bool cloudshadowsEnabled;
- layout(binding=8) uniform sampler2D cloudShadowmap;
- uniform vec3 cloudspaceOrigin;
- uniform int cloudmapSize;
- uniform int cloudTileSize;
- uniform vec3 sunPosition;
- uniform int cloudShadowStyle;
- uniform float cloudShadowMax;
- uniform float cloudStart;
- uniform float cloudRange;
- uniform float cloudshadowK;
- float getCloudShadowBrightness(vec3 worldPos) {
- float bCloud = 1.0;
- vec3 sunPosition = -shadow_uniforms.sunDir.xyz;
- // Slide position in sun direction to intersect cloud plane
- vec3 toCloudPlane = abs(sunPosition.y) > 0.01? (cloudspaceOrigin.y - worldPos.y) * (sunPosition / sunPosition.y) : vec3(0);
- vec2 cloudmapPos = (worldPos.xz + toCloudPlane.xz) / cloudTileSize;
- cloudmapPos -= cloudspaceOrigin.xz;
- vec2 cloudmapUV = cloudmapPos / cloudmapSize;
- vec2 onMap = step(vec2(0), cloudmapUV) * step(cloudmapUV, vec2(1));
- if(onMap.x * onMap.y > 0) {
- float cloudExpShadow = cloudShadowStyle == 0? texelFetch(cloudShadowmap, ivec2(cloudmapPos) * 4, 0).r : texture(cloudShadowmap, cloudmapUV).r;
- float shadowmapDepth = clamp((sign(sunPosition.y) * length(toCloudPlane) / cloudTileSize + cloudStart) / cloudRange, 0, 1);
- bCloud = clamp(exp(-cloudshadowK*shadowmapDepth) * cloudExpShadow, 1 - cloudShadowMax, 1);
- }
- return bCloud;
- }
- void main() {
- vec4 viewPos = texelFetch(GPosition, ivec2(gl_FragCoord.xy), 0);
- if(viewPos.z == 0.0) discard;
- vec4 inColor = texelFetch(inColor, ivec2(gl_FragCoord.xy), 0);
- vec4 glowData = texelFetch(inGlow, ivec2(gl_FragCoord.xy), 0);
- vec4 gnormal = texelFetch(GNormal, ivec2(gl_FragCoord.xy), 0);
- vec3 normal = (invModelView * vec4(gnormal.xyz, 0)).xyz;
- vec4 worldPos = invModelView * vec4(viewPos.xyz, 1);
- float fogLevel = (viewPos.w - glowData.r) / 2;
- float b = 1.0;
- #ifdef DEFERBASE
- calcShadowMapCoords(modelViewMtx, worldPos);
- b = min(b, getBrightnessFromShadowMap());
- #endif
- if(terrainShadowsEnabled) {
- float terrainShadow = getTerrainShadowBrightness(worldPos.xyz, normal, -viewPos.z);
- b = mix(b, terrainShadow, smoothstep(0.8, 0.6, (shadowCoordsFar.w + shadowCoordsNear.w)));
- }
- #ifdef COLORCASCADES
- if(colorCascades) return;
- #endif
- if(cloudshadowsEnabled) b = min(b, getCloudShadowBrightness(worldPos.xyz));
- b = 1 - (1 - b) * shadowIntensity;
- // The game adjusts brightness based on surface normal, so we need to account for it
- float intensity = 0.34 + (1 - shadowIntensity)/8.0;
- float nb = max(max(intensity, 0.5 + 0.5 * dot(normal, -shadow_uniforms.sunDir.xyz)), normal.y * 0.95);
- if(b > nb) discard;
- b = clamp(glowData.z + 1 - (1 - b) * nb * (1 - fogLevel), 0 ,1);
- outColor = inColor * b;
- }
- (FormatException)
- 9.8.2026 08:46:02 [Error] Link error in shader program for pass deferredlighting: error: linking with uncompiled/unspecialized shader
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogramm for render pass sleepoverlay.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogramm for render pass machinegear.
- 9.8.2026 08:46:02 [Notification] Started 99 systems on Client:
- 9.8.2026 08:46:02 [Notification] Mod 'VSEssentials.dll' (game):
- 9.8.2026 08:46:02 [Notification] Vintagestory.ServerMods.Core
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.EntityPartitioning
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.ErrorReporter
- 9.8.2026 08:46:02 [Notification] Vintagestory.ServerMods.ModCompatiblityUtil
- 9.8.2026 08:46:02 [Notification] Vintagestory.ServerMods.NoObf.ModJsonPatchLoader
- 9.8.2026 08:46:02 [Notification] FluffyClouds.FluffyCloudsModSystem
- 9.8.2026 08:46:02 [Notification] Vintagestory.Systems.ModSystemTfEditFromAttributes
- 9.8.2026 08:46:02 [Notification] Vintagestory.ServerMods.GenMaps
- 9.8.2026 08:46:02 [Notification] Vintagestory.ServerMods.ModSystemWorldGenStructures
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.ModSystemRenderFallingBlocksFast
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.FallingBlockParticlesModSystem
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.ModSystemItemRendererOptimizer
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.ModSystemFpHands
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.CharacterExtraDialogs
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.EntityNameTagRendererRegistry
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.ModSystemAmbientParticles
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.EntityParticleSpawner
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.EntityParticleSystem
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.POIRegistry
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.ModSystemProgressBar
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.RoomRegistry
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.WeatherSystemCommands
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.WeatherSystemClient
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.SystemRemotePlayerTracking
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.WorldMapManager
- 9.8.2026 08:46:02 [Notification] Vintagestory.ServerMods.LoadColorMaps
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.ClothManager
- 9.8.2026 08:46:02 [Notification] Mod 'VSSurvivalMod.dll' (survival):
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.ModSystemControlPoints
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.SurvivalCoreSystem
- 9.8.2026 08:46:02 [Notification] Vintagestory.Systems.StoryLockableDoor
- 9.8.2026 08:46:02 [Notification] Vintagestory.Client.NoObf.StoryGenFailedSystem
- 9.8.2026 08:46:02 [Notification] Vintagestory.Client.NoObf.ModSystemBossHealthBars
- 9.8.2026 08:46:02 [Notification] Vintagestory.ServerMods.UpgradeTasks
- 9.8.2026 08:46:02 [Notification] Vintagestory.ServerMods.ModSystemDetailModeSync
- 9.8.2026 08:46:02 [Notification] Vintagestory.ServerMods.ModSystemTiledDungeons
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.MSShapeFromAttrCacheHelper
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.MyceliumSystem
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.ModSystemLabelMeshCache
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.ModSystemShapeFromAttributesTransform
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.ModSystemCatchCreature
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.FishingSupportModSystem
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.ModSystemGliding
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.ModSystemMeasuringRope
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.ModSystemStopRaiseShieldAnim
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.ModSystemSnowShoveling
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.ModSystemSubTongsDurability
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.Timeswitch
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.ScreenshakeToClientModSystem
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.StoryStructuresSpawnConditions
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.ModSystemNPCHairStyling
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.ModSystemSkinnableAdditions
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.ModSystemVillagerDebug
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.ModSystemAuction
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.ModSystemBlockReinforcement
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.Core
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.ModSystemBoatingSoundAndRatlineStamina
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.ModSystemShipConstructionSitePreview
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.CharacterSystem
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.MealMeshCache
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.VariablesModSystem
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.ModsystemElevator
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.ActivityModSystem
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.ActivityEditorSystem
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.ModSystemFarming
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.ModSystemCommandHandbook
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.ModSystemSurvivalHandbook
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.ModSystemTutorial
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.HeldItemMouseInputHandler
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.ModSystemNightVision
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.TobiasTeleporter
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.ModJournal
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.LiquidItemStackRenderer
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.ModSystemStructureLocator
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.ModLootRandomizer
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.ModSystemChiselCommands
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.MicroBlockModelCache
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.ModSystemEntityOwnership
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.ModSystemRifts
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.ModSystemRiftWeather
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.ModSleeping
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.ModSystemUnbreakSupportBeam
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.ModSystemSupportBeamPlacer
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.TeleporterManager
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.ModTemperature
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.SystemTemporalStability
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.TemporalStabilityEffects
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.ModSystemWearableStats
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.ModSystemEditableBook
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.Mechanics.MechanicalPowerMod
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.TradeHandbookInfo
- 9.8.2026 08:46:02 [Notification] Vintagestory.ServerMods.GenDevastationLayer
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.RecipeRegistrySystem
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.ModSystemOreMap
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.ModSystemSnowballs
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.HumanoidOutfits
- 9.8.2026 08:46:02 [Notification] Vintagestory.GameContent.ModSystemDevastationEffects
- 9.8.2026 08:46:02 [Notification] Mod 'VSCreativeMod.dll' (creative):
- 9.8.2026 08:46:02 [Notification] Vintagestory.ServerMods.Core
- 9.8.2026 08:46:02 [Notification] Vintagestory.ServerMods.WorldEdit.WorldEdit
- 9.8.2026 08:46:02 [Notification] Mod 'coriaendershaders-1.2.2-pre.4.zip' (coriaendershaders):
- 9.8.2026 08:46:02 [Notification] CoriaenderShaders.CoriaenderShaders.CoriaenderShadersModSystem
- 9.8.2026 08:46:02 [Notification] Loading shaders...
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogramm for render pass standard.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogramm for render pass particlescube.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogramm for render pass particlesquad.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogramm for render pass sky.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogramm for render pass nightsky.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogramm for render pass woittest.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogramm for render pass transparentcompose.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogramm for render pass debugdepthbuffer.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogramm for render pass helditem.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogramm for render pass chunkopaque.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogramm for render pass chunkliquid.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogramm for render pass decals.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogramm for render pass final.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogramm for render pass gui.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogramm for render pass blur.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogramm for render pass chunktransparent.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogramm for render pass findbright.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogramm for render pass chunktopsoil.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogramm for render pass godrays.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogramm for render pass autocamera.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogramm for render pass blockhighlights.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogramm for render pass wireframe.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogramm for render pass entityanimated.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogramm for render pass luma.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogramm for render pass blit.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogramm for render pass particlesquad2d.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogramm for render pass shadowmapentityanimated.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogramm for render pass chunkshadowmap.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogramm for render pass texture2texture.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogramm for render pass celestialobject.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogramm for render pass guitopsoil.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogramm for render pass colorgrade.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogramm for render pass guigear.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogramm for render pass ssao.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogramm for render pass bilateralblur.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogramm for render pass chunkliquiddepth.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogramm for render pass aurora.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogramm for render pass cloudmap.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogramm for render pass cloudvolumetric.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogramm for render pass instanced.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogramm for render pass lines.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogramm for render pass entityanimated.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogramm for render pass chunkshadowmap.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogramm for render pass standard.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogramm for render pass standard.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogramm for render pass entityanimated.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogramm for render pass particlescube.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogramm for render pass lines.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogramm for render pass aurora.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogram for render pass watercompose.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogram for render pass cameradepth.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogram for render pass waternormals.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogram for render pass screenspacereflections.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogram for render pass cloudshadowmap.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogram for render pass cloudshadowblur.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogram for render pass cloudmapmip.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogram for render pass drawvoxeldata.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogram for render pass depthmipmap.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogram for render pass depthmipmap.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogram for render pass visibleculling.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogram for render pass voxelcompaction.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogram for render pass voxelcompaction.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogram for render pass casterculling.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogram for render pass drawvoxeldata.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogram for render pass depthmipmap.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogramm for render pass sleepoverlay.
- 9.8.2026 08:46:02 [Notification] Loaded Shaderprogramm for render pass machinegear.
- 9.8.2026 08:46:02 [Notification] Reloaded shaders now with mod assets
- 9.8.2026 08:46:03 [Notification] Received level init
- 9.8.2026 08:46:03 [Notification] Loaded Shaderprogramm for render pass instanced.
- 9.8.2026 08:46:03 [Event] 26 traits loaded from 1 files
- 9.8.2026 08:46:03 [Event] 6 classes loaded from 1 files
- 9.8.2026 08:46:03 [Notification] Initialized Music Engine
- 9.8.2026 08:46:03 [Notification] Texture size is 32 so decal atlas size of 128x128 should suffice
- 9.8.2026 08:46:03 [Notification] Received level finalize
- 9.8.2026 08:46:03 [Notification] Loaded Shaderprogramm for render pass cloudmap.
- 9.8.2026 08:46:03 [Notification] Loaded Shaderprogramm for render pass cloudvolumetric.
- 9.8.2026 08:46:03 [Notification] Loaded Shaderprogramm for render pass clouds.
- 9.8.2026 08:46:03 [Notification] Loading world map cache db...
- 9.8.2026 08:46:04 [Warning] ===============================================================
- 9.8.2026 08:46:04 [Warning] (x_x) Captured 4 issues during startup:
- 9.8.2026 08:46:04 [Warning] [coriaendershaders] [CoriaenderShadersModSystem] Couldn't find VsImGui mod system, GUI will be unavailable.
- 9.8.2026 08:46:04 [Error] Shader compile error in deferredlighting 0:233(42): error: `shadowCoordsNear' undeclared
- 0:233(42): error: type mismatch
- 0:233(42): error: operands of `==' must have the same type
- 0:382(70): error: `shadowCoordsNear' undeclared
- 0:382(70): error: type mismatch
- 0:382(50): error: operands to arithmetic operators must be numeric
- 0:382(28): error: no matching function for call to `smoothstep(float, float, error)'; candidates are:
- 0:382(28): error: float smoothstep(float, float, float)
- 0:382(28): error: vec2 smoothstep(float, float, vec2)
- 0:382(28): error: vec3 smoothstep(float, float, vec3)
- 0:382(28): error: vec4 smoothstep(float, float, vec4)
- 0:382(28): error: vec2 smoothstep(vec2, vec2, vec2)
- 0:382(28): error: vec3 smoothstep(vec3, vec3, vec3)
- 0:382(28): error: vec4 smoothstep(vec4, vec4, vec4)
- 0:382(28): error: double smoothstep(double, double, double)
- 0:382(28): error: dvec2 smoothstep(double, double, dvec2)
- 0:382(28): error: dvec3 smoothstep(double, double, dvec3)
- 0:382(28): error: dvec4 smoothstep(double, double, dvec4)
- 0:382(28): error: dvec2 smoothstep(dvec2, dvec2, dvec2)
- 0:382(28): error: dvec3 smoothstep(dvec3, dvec3, dvec3)
- 0:382(28): error: dvec4 smoothstep(dvec4, dvec4, dvec4)
- 0:382(6): error: no matching function for call to `mix(float, float, error)'; candidates are:
- 0:382(6): error: float mix(float, float, float)
- 0:382(6): error: vec2 mix(vec2, vec2, float)
- 0:382(6): error: vec3 mix(vec3, vec3, float)
- 0:382(6): error: vec4 mix(vec4, vec4, float)
- 0:382(6): error: vec2 mix(vec2, vec2, vec2)
- 0:382(6): error: vec3 mix(vec3, vec3, vec3)
- 0:382(6): error: vec4 mix(vec4, vec4, vec4)
- 0:382(6): error: double mix(double, double, double)
- 0:382(6): error: dvec2 mix(dvec2, dvec2, double)
- 0:382(6): error: dvec3 mix(dvec3, dvec3, double)
- 0:382(6): error: dvec4 mix(dvec4, dvec4, double)
- 0:382(6): error: dvec2 mix(dvec2, dvec2, dvec2)
- 0:382(6): error: dvec3 mix(dvec3, dvec3, dvec3)
- 0:382(6): error: dvec4 mix(dvec4, dvec4, dvec4)
- 0:382(6): error: float mix(float, float, bool)
- 0:382(6): error: vec2 mix(vec2, vec2, bvec2)
- 0:382(6): error: vec3 mix(vec3, vec3, bvec3)
- 0:382(6): error: vec4 mix(vec4, vec4, bvec4)
- 0:382(6): error: double mix(double, double, bool)
- 0:382(6): error: dvec2 mix(dvec2, dvec2, bvec2)
- 0:382(6): error: dvec3 mix(dvec3, dvec3, bvec3)
- 0:382(6): error: dvec4 mix(dvec4, dvec4, bvec4)
- 9.8.2026 08:46:04 [Error] Couldn't write to log file, failed formatting #version 430
- #define FXAA 1
- #define SSAOLEVEL 1
- #define NORMALVIEW 0
- #define BLOOM 1
- #define GODRAYS 0
- #define FOAMEFFECT 1
- #define SHINYEFFECT 1
- #define SHADOWQUALITY 1
- #define DYNLIGHTS 25
- #define USEOIT 1
- #define TERRAINSHADOWS
- #define CLOUDSHADOWS
- #define INCOLORUNIT 0
- #define INGLOWUNIT 1
- #define GPOSITIONUNIT 2
- #define GNORMALUNIT 3
- #define SHADOW_CASCADE_BINDING 4
- #define DEFERBASE
- #define SHADOWMAPFARUNIT 4
- #define SHADOWMAPNEARUNIT 5
- #define INCLUDESHADOWCOORDS
- layout(location=0) out vec4 outColor;
- layout(binding=INCOLORUNIT) uniform sampler2D inColor;
- layout(binding=INGLOWUNIT) uniform sampler2D inGlow;
- layout(binding=GPOSITIONUNIT) uniform sampler2D GPosition;
- layout(binding=GNORMALUNIT) uniform sampler2D GNormal;
- in vec2 vUV;
- uniform mat4 invModelView;
- uniform float shadowIntensity;
- #ifdef INCLUDESHADOWCOORDS
- uniform mat4 modelViewMtx;
- #if SHADOWQUALITY > 0
- uniform float shadowRangeFar;
- uniform mat4 toShadowMapSpaceMatrixFar;
- vec4 shadowCoordsFar;
- #endif
- #if SHADOWQUALITY > 1
- uniform float shadowRangeNear;
- uniform mat4 toShadowMapSpaceMatrixNear;
- vec4 shadowCoordsNear;
- #endif
- const float transitionDistance = 10.0;
- void calcShadowMapCoords(mat4 modelviewMat, vec4 worldPos) {
- float nearSub = 0;
- #if SHADOWQUALITY > 0
- float len = length(worldPos);
- #endif
- #if SHADOWQUALITY > 1
- // Near map
- shadowCoordsNear = toShadowMapSpaceMatrixNear * worldPos;
- float distanceNear = clamp(
- max(max(0.0, 0.03 - shadowCoordsNear.x) * 100, max(0.0, shadowCoordsNear.x - 0.97) * 100) +
- max(max(0.0, 0.03 - shadowCoordsNear.y) * 100, max(0.0, shadowCoordsNear.y - 0.97) * 100) +
- max(0.0, shadowCoordsNear.z - 0.98) * 100 +
- max(0.0, len / shadowRangeNear - 0.15)
- , 0.0, 1.0);
- nearSub = shadowCoordsNear.w = clamp(1.0 - distanceNear, 0.0, 1.0);
- if (shadowCoordsNear.z >= 0.999) shadowCoordsNear.w = 0.0; // so no need to test both in fogandlight.fsh
- #endif
- #if SHADOWQUALITY > 0
- // Far map
- shadowCoordsFar = toShadowMapSpaceMatrixFar * worldPos;
- float distanceFar = clamp(
- max(max(0.0, 0.03 - shadowCoordsFar.x) * 10, max(0.0, shadowCoordsFar.x - 0.97) * 10) +
- max(max(0.0, 0.03 - shadowCoordsFar.y) * 10, max(0.0, shadowCoordsFar.y - 0.97) * 10) +
- max(0.0, shadowCoordsFar.z - 0.98) * 10 +
- max(0.0, len / shadowRangeFar - 0.15)
- , 0.0, 1.0);
- distanceFar = distanceFar * 2 - 0.5;
- shadowCoordsFar.w = max(0.0, clamp(1.0 - distanceFar, 0.0, 1.0) - nearSub);
- if (shadowCoordsFar.z >= 0.999) shadowCoordsFar.w = 0.0; // so no need to test both in fogandlight.fsh
- #endif
- }
- #endif
- //? #version 430
- // https://github.com/opengl-tutorials/ogl/blob/master/tutorial16_shadowmaps/ShadowMapping.fragmentshader
- vec2 poissonDisk[16] = vec2[](
- vec2( -0.94201624, -0.39906216 ),
- vec2( 0.94558609, -0.76890725 ),
- vec2( -0.094184101, -0.92938870 ),
- vec2( 0.34495938, 0.29387760 ),
- vec2( -0.91588581, 0.45771432 ),
- vec2( -0.81544232, -0.87912464 ),
- vec2( -0.38277543, 0.27676845 ),
- vec2( 0.97484398, 0.75648379 ),
- vec2( 0.44323325, -0.97511554 ),
- vec2( 0.53742981, -0.47373420 ),
- vec2( -0.26496911, -0.41893023 ),
- vec2( 0.79197514, 0.19090188 ),
- vec2( -0.24188840, 0.99706507 ),
- vec2( -0.81409955, 0.91437590 ),
- vec2( 0.19984126, 0.78641367 ),
- vec2( 0.14383161, -0.14100790 )
- );
- // Returns a random number based on a vec3 and an int.
- float random(vec3 seed, int i){
- vec4 seed4 = vec4(seed,i);
- float dot_product = dot(seed4, vec4(12.9898,78.233,45.164,94.673));
- return fract(sin(dot_product) * 43758.5453);
- }
- float StratifiedPoisson(vec4 ShadowCoord, sampler2DShadow shadowMap) {
- float b = 1.0;
- float visibility=1.0;
- // Fixed bias, or...
- float bias = 0.005;
- // ...variable bias
- // float bias = 0.005*tan(acos(cosTheta));
- // bias = clamp(bias, 0,0.01);
- // Sample the shadow map 4 times
- for (int i=0;i<4;i++){
- // use either :
- // - Always the same samples.
- // Gives a fixed pattern in the shadow, but no noise
- int index = i;
- // - A random sample, based on the pixel's screen location.
- // No banding, but the shadow moves with the camera, which looks weird.
- // int index = int(16.0*random(gl_FragCoord.xyy, i))%16;
- // - A random sample, based on the pixel's position in world space.
- // The position is rounded to the millimeter to avoid too much aliasing
- // int index = int(16.0*random(floor(Position_worldspace.xyz*1000.0), i))%16;
- // being fully in the shadow will eat up 4*0.2 = 0.8
- // 0.2 potentially remain, which is quite dark.
- visibility -= 0.2*(1.0-texture( shadowMap, vec3(ShadowCoord.xy + poissonDisk[index]/700.0, (ShadowCoord.z-bias)/ShadowCoord.w) ));
- }
- return b;
- }
- float StratifiedPoisson(vec3 worldPos, vec4 ShadowCoord, sampler2DArrayShadow shadowMap) {
- float b=1.0;
- float bias = 0.001;
- float shadow = 0.0;
- int samples = 8;
- for (int i = 0; i < samples; i++){
- //int index = i;
- int index = int(16.0 * random(floor(worldPos.xyz * 1000.0), i)) % 16;
- vec2 offset = poissonDisk[index] / textureSize(shadowMap, 0).x;
- shadow += texture(shadowMap, vec4(ShadowCoord.xy + offset, ShadowCoord.z, ShadowCoord.w-bias)).r;
- }
- b = shadow / samples;
- return b;
- }
- layout(std140, binding = SHADOW_CASCADE_BINDING) uniform ShadowCascadeBlock
- {
- mat4[4] terrainShadowMatrixes;
- vec4 splitEdges;
- vec4 normalOffsetScales;
- vec4 sunDir;
- float terrainShadowsMax;
- int cascadeCount;
- int dontMixWithBaseShadows;
- } shadow_uniforms;
- #ifdef DEFERBASE
- layout(binding=SHADOWMAPFARUNIT) uniform sampler2DShadow shadowMapFar;
- layout(binding=SHADOWMAPNEARUNIT) uniform sampler2DShadow shadowMapNear;
- uniform float shadowMapWidthInv;
- uniform float shadowMapHeightInv;
- // Adapted from fogandlight.fsh
- float getBrightnessFromShadowMap() {
- #if SHADOWQUALITY > 0
- float totalFar = 9.0;
- if (shadowCoordsFar.w > 0) {
- for (int x = -1; x <= 1; x++) {
- for (int y = -1; y <= 1; y++) {
- totalFar -= texture (shadowMapFar, vec3(shadowCoordsFar.xy + vec2(x * shadowMapWidthInv, y * shadowMapHeightInv), shadowCoordsFar.z - 0.0009));
- }
- }
- }
- totalFar /= 9.0;
- #ifdef TERRAINSHADOWS
- // Don't fade outside edge here
- float shadow = shadowCoordsFar.w > 0 && shadowCoordsNear.w == 0 ? totalFar : totalFar * shadowCoordsFar.w;
- #else
- float shadow = totalFar * shadowCoordsFar.w;
- #endif
- #endif
- #if SHADOWQUALITY > 1
- float totalNear = 9.0;
- if (shadowCoordsNear.w > 0) {
- for (int x = -1; x <= 1; x++) {
- for (int y = -1; y <= 1; y++) {
- totalNear -= texture (shadowMapNear, vec3(shadowCoordsNear.xy + vec2(x * shadowMapWidthInv, y * shadowMapHeightInv), shadowCoordsNear.z - 0.0005));
- }
- }
- }
- totalNear /= 9.0;
- shadow += totalNear * shadowCoordsNear.w;
- #endif
- #if SHADOWQUALITY > 0
- return 1 - shadow * 0.5;
- #endif
- return 1.0;
- }
- #endif
- uniform bool terrainShadowsEnabled;
- uniform bool softTerrainShadows;
- #ifdef COLORCASCADES
- uniform bool colorCascades;
- #endif
- layout(binding=6) uniform sampler2DArrayShadow terrainShadowNear;
- layout(binding=7) uniform sampler2DArrayShadow terrainShadowFar;
- float getTerrainShadowBrightness(vec3 worldPos, vec3 normal, float viewDepth) {
- float b = 1.0;
- // Normal offset shadow biasing, based on https://github.com/godotengine/godot/issues/17260
- float cosLightAngle = dot(shadow_uniforms.sunDir.xyz, normal);
- float normalOffsetScale = clamp(1 - cosLightAngle, 0, 1);
- int terrainShadowIdx = viewDepth <= shadow_uniforms.splitEdges[0]? 0
- : viewDepth <= shadow_uniforms.splitEdges[1]? 1
- : viewDepth <= shadow_uniforms.splitEdges[2]? 2
- : 3;
- terrainShadowIdx = min(terrainShadowIdx, shadow_uniforms.cascadeCount);
- #ifdef COLORCASCADES
- if(colorCascades) outColor = (terrainShadowIdx == 3 ? vec4(0.8,0.3,0.8,0) : terrainShadowIdx == 2 ? vec4(0.8,0.8,0,0) : terrainShadowIdx == 1 ? vec4(0.2,0.5,1,0) : vec4(0.9,0.1,0.5,0));
- #endif
- vec4 terrainShadowPos = (shadow_uniforms.terrainShadowMatrixes[terrainShadowIdx] * vec4(worldPos, 1));
- normalOffsetScale *= shadow_uniforms.normalOffsetScales[terrainShadowIdx];
- vec3 shadowOffset = normal.xyz * normalOffsetScale;
- vec2 offsetShadowPos = (shadow_uniforms.terrainShadowMatrixes[terrainShadowIdx] * vec4(worldPos + shadowOffset, 1)).xy;
- terrainShadowPos.xy = offsetShadowPos.xy;
- // Ignore if not on the texture
- vec2 onMap = step(vec2(0.0), terrainShadowPos.xy) * step(terrainShadowPos.xy, vec2(1.0));
- if(onMap.x * onMap.y == 0) return 1.0;
- // sampler2DArrayShadow indexing is weird
- vec4 shadowPos = vec4(terrainShadowPos.xy, terrainShadowIdx % 2, terrainShadowPos.z);
- if(softTerrainShadows) {
- if(terrainShadowIdx < 2)
- {
- b = StratifiedPoisson(worldPos, shadowPos, terrainShadowNear);
- } else {
- b = StratifiedPoisson(worldPos, shadowPos, terrainShadowFar);
- }
- } else {
- if(terrainShadowIdx < 2)
- {
- b = texture(terrainShadowNear, shadowPos);
- } else {
- b = texture(terrainShadowFar, shadowPos);
- }
- }
- #ifndef DEFERBASE
- // Blend with edges of base game shadows
- float blendFactor = shadowCoordsFar.w;
- #if SHADOWQUALITY > 1
- blendFactor += shadowCoordsNear.w;
- #endif
- blendFactor *= shadow_uniforms.dontMixWithBaseShadows;
- if(blendFactor > 0.33) { b = 1 - (1 - b) * smoothstep(1.1, SHADOWQUALITY > 1 ? 0.15 : 0.6, blendFactor); }
- #endif
- return max(b, shadow_uniforms.terrainShadowsMax);
- }
- uniform bool cloudshadowsEnabled;
- layout(binding=8) uniform sampler2D cloudShadowmap;
- uniform vec3 cloudspaceOrigin;
- uniform int cloudmapSize;
- uniform int cloudTileSize;
- uniform vec3 sunPosition;
- uniform int cloudShadowStyle;
- uniform float cloudShadowMax;
- uniform float cloudStart;
- uniform float cloudRange;
- uniform float cloudshadowK;
- float getCloudShadowBrightness(vec3 worldPos) {
- float bCloud = 1.0;
- vec3 sunPosition = -shadow_uniforms.sunDir.xyz;
- // Slide position in sun direction to intersect cloud plane
- vec3 toCloudPlane = abs(sunPosition.y) > 0.01? (cloudspaceOrigin.y - worldPos.y) * (sunPosition / sunPosition.y) : vec3(0);
- vec2 cloudmapPos = (worldPos.xz + toCloudPlane.xz) / cloudTileSize;
- cloudmapPos -= cloudspaceOrigin.xz;
- vec2 cloudmapUV = cloudmapPos / cloudmapSize;
- vec2 onMap = step(vec2(0), cloudmapUV) * step(cloudmapUV, vec2(1));
- if(onMap.x * onMap.y > 0) {
- float cloudExpShadow = cloudShadowStyle == 0? texelFetch(cloudShadowmap, ivec2(cloudmapPos) * 4, 0).r : texture(cloudShadowmap, cloudmapUV).r;
- float shadowmapDepth = clamp((sign(sunPosition.y) * length(toCloudPlane) / cloudTileSize + cloudStart) / cloudRange, 0, 1);
- bCloud = clamp(exp(-cloudshadowK*shadowmapDepth) * cloudExpShadow, 1 - cloudShadowMax, 1);
- }
- return bCloud;
- }
- void main() {
- vec4 viewPos = texelFetch(GPosition, ivec2(gl_FragCoord.xy), 0);
- if(viewPos.z == 0.0) discard;
- vec4 inColor = texelFetch(inColor, ivec2(gl_FragCoord.xy), 0);
- vec4 glowData = texelFetch(inGlow, ivec2(gl_FragCoord.xy), 0);
- vec4 gnormal = texelFetch(GNormal, ivec2(gl_FragCoord.xy), 0);
- vec3 normal = (invModelView * vec4(gnormal.xyz, 0)).xyz;
- vec4 worldPos = invModelView * vec4(viewPos.xyz, 1);
- float fogLevel = (viewPos.w - glowData.r) / 2;
- float b = 1.0;
- #ifdef DEFERBASE
- calcShadowMapCoords(modelViewMtx, worldPos);
- b = min(b, getBrightnessFromShadowMap());
- #endif
- if(terrainShadowsEnabled) {
- float terrainShadow = getTerrainShadowBrightness(worldPos.xyz, normal, -viewPos.z);
- b = mix(b, terrainShadow, smoothstep(0.8, 0.6, (shadowCoordsFar.w + shadowCoordsNear.w)));
- }
- #ifdef COLORCASCADES
- if(colorCascades) return;
- #endif
- if(cloudshadowsEnabled) b = min(b, getCloudShadowBrightness(worldPos.xyz));
- b = 1 - (1 - b) * shadowIntensity;
- // The game adjusts brightness based on surface normal, so we need to account for it
- float intensity = 0.34 + (1 - shadowIntensity)/8.0;
- float nb = max(max(intensity, 0.5 + 0.5 * dot(normal, -shadow_uniforms.sunDir.xyz)), normal.y * 0.95);
- if(b > nb) discard;
- b = clamp(glowData.z + 1 - (1 - b) * nb * (1 - fogLevel), 0 ,1);
- outColor = inColor * b;
- }
- (FormatException)
- 9.8.2026 08:46:04 [Error] Link error in shader program for pass deferredlighting: error: linking with uncompiled/unspecialized shader
- 9.8.2026 08:46:04 [Warning] ===============================================================
- 9.8.2026 08:46:04 [Notification] OpenAL Initialized. Available Mono/Stereo Sources: 255/1
- 9.8.2026 08:46:04 [Fatal] Game Version: v1.22.6 (Stable)
- 2026-08-09 8:46:04âŻa.m.: Critical error occurred in the following mod: [email protected]
- System.AggregateException: One or more errors occurred. ([DeferredLightingProgram] Shader failed to compile:
- Link error in shader program for pass deferredlighting: error: linking with uncompiled/unspecialized shader)
- ---> CoriaenderShaders.CoriaenderShaders.ShaderCompileException: [DeferredLightingProgram] Shader failed to compile:
- Link error in shader program for pass deferredlighting: error: linking with uncompiled/unspecialized shader
- at CoriaenderShaders.ShaderPrograms.UniformQueueShaderProgram.Initialize() in Src:\ShaderPrograms\UniformQueueShaderProgram.cs:line 184
- at CoriaenderShaders.Effects.DeferredShading.SetupShaders() in Src:\Effects\DeferredShading.cs:line 68
- at CoriaenderShaders.Effects.EffectManager.SetupGLResources(GLResourceFlags flags) in Src:\Effects\EffectManager.cs:line 97
- --- End of inner exception stack trace ---
- at CoriaenderShaders.CoriaenderShaders.CoriaenderShadersModSystem.<SetupException>b__68_0() in Src:\CoriaenderShaders\CoriaenderShadersModSystem.cs:line 237
- at CoriaenderShaders.Helpers.CoriaenderRenderer.<>c__DisplayClass27_0.<SetRenderMethod>b__0(Single f, EnumRenderStage s) in Src:\Helpers\CoriaenderRenderer.cs:line 51
- at CoriaenderShaders.Helpers.CoriaenderRenderer.OnRenderFrame(Single deltaTime, EnumRenderStage stage) in Src:\Helpers\CoriaenderRenderer.cs:line 82
- at Vintagestory.Client.NoObf.ClientEventManager.TriggerRenderStage(EnumRenderStage stage, Single dt) in VintagestoryLib\Client\Util\ClientEventManager.cs:line 257
- at Vintagestory.Client.NoObf.ClientMain.TriggerRenderStage(EnumRenderStage stage, Single dt) in VintagestoryLib\Client\ClientMain.cs:line 858
- at Vintagestory.Client.NoObf.ClientMain.MainRenderLoop(Single dt) in VintagestoryLib\Client\ClientMain.cs:line 910
- at Vintagestory.Client.NoObf.ClientMain.MainGameLoop(Single deltaTime) in VintagestoryLib\Client\ClientMain.cs:line 782
- at Vintagestory.Client.GuiScreenRunningGame.RenderToPrimary(Single dt) in VintagestoryLib\Client\MainMenu\Screens\GuiScreenRunningGame.cs:line 173
- at Vintagestory.Client.ScreenManager.Render(Single dt) in VintagestoryLib\Client\ScreenManager.cs:line 742
- at Vintagestory.Client.ScreenManager.OnNewFrame(Single dt) in VintagestoryLib\Client\ScreenManager.cs:line 686
- at Vintagestory.Client.NoObf.ClientPlatformWindows.window_RenderFrame(FrameEventArgs e) in VintagestoryLib\Client\ClientPlatform\GameWindow.cs:line 112
- at OpenTK.Windowing.Desktop.GameWindow.Run()
- at Vintagestory.Client.ClientProgram.Start(ClientProgramArgs args, String[] rawArgs) in VintagestoryLib\Client\ClientProgram.cs:line 354
- at Vintagestory.Client.ClientProgram.<>c__DisplayClass10_0.<.ctor>b__1() in VintagestoryLib\Client\ClientProgram.cs:line 131
- at Vintagestory.ClientNative.CrashReporter.Start(ThreadStart start) in VintagestoryLib\Client\ClientPlatform\ClientNative\CrashReporter.cs:line 95
- CoriaenderShaders.CoriaenderShaders.ShaderCompileException: [DeferredLightingProgram] Shader failed to compile:
- Link error in shader program for pass deferredlighting: error: linking with uncompiled/unspecialized shader
- at CoriaenderShaders.ShaderPrograms.UniformQueueShaderProgram.Initialize() in Src:\ShaderPrograms\UniformQueueShaderProgram.cs:line 184
- at CoriaenderShaders.Effects.DeferredShading.SetupShaders() in Src:\Effects\DeferredShading.cs:line 68
- at CoriaenderShaders.Effects.EffectManager.SetupGLResources(GLResourceFlags flags) in Src:\Effects\EffectManager.cs:line 97
- Crash written to file at "/home/bran/.config/VSLInstallations/My-New-Installation/Logs/client-crash.log"
- 9.8.2026 08:46:04 [Notification] Exiting game now. Server running=True. Exit reason: Game crashed
- 9.8.2026 08:46:04 [Notification] Destroying game session, waiting up to 200ms for client threads to exit
- 9.8.2026 08:46:05 [Notification] Stopping single player server
- 9.8.2026 08:46:05 [Notification] Finished fully loading sounds (async)
- 9.8.2026 08:46:05 [Notification] ChunkIntake threads completed gracefully.
- 9.8.2026 08:46:05 [Notification] ChunkLoading threads completed gracefully.
- 9.8.2026 08:46:05 [Notification] Exiting current game to main menu, reason: window close event
Advertisement
Add Comment
Please, Sign In to add comment