From b84332d42691b4dc4137d0e9269ea9fc655fa2ff Mon Sep 17 00:00:00 2001 From: IntegratedQuantum Date: Fri, 3 Feb 2023 16:48:40 +0100 Subject: [PATCH] Some small fixes. - Weird alignment issues when using *align(8)Vec3d - Duplicate dFdx --- assets/cubyz/shaders/chunks/chunk_fragment.fs | 15 +++++---------- src/itemdrop.zig | 2 +- 2 files changed, 6 insertions(+), 11 deletions(-) diff --git a/assets/cubyz/shaders/chunks/chunk_fragment.fs b/assets/cubyz/shaders/chunks/chunk_fragment.fs index 2993ef1a..1a6dba61 100644 --- a/assets/cubyz/shaders/chunks/chunk_fragment.fs +++ b/assets/cubyz/shaders/chunks/chunk_fragment.fs @@ -171,16 +171,11 @@ float getLod(ivec3 voxelPosition, int normal, vec3 direction, float variance) { } float perpendicularFwidth(vec3 direction) { // Estimates how big fwidth would be if the fragment normal was perpendicular to the light direction. - vec3 varianceX = dFdx(direction); - vec3 varianceY = dFdx(direction); - varianceX += direction; - varianceX = varianceX*length(direction)/length(varianceX); - varianceX -= direction; - varianceY += direction; - varianceY = varianceY*length(direction)/length(varianceY); - varianceY -= direction; - vec3 variance = abs(varianceX) + abs(varianceY); - return 8*length(variance); + vec3 variance = dFdx(direction); + variance += direction; + variance = variance*length(direction)/length(variance); + variance -= direction; + return 16*length(variance); } vec4 mipMapSample(sampler2DArray texture, ivec2 textureCoords, int textureIndex, float lod) { // TODO: anisotropic filtering? diff --git a/src/itemdrop.zig b/src/itemdrop.zig index 15637f88..da8f01b5 100644 --- a/src/itemdrop.zig +++ b/src/itemdrop.zig @@ -453,7 +453,7 @@ pub const ClientItemDropManager = struct { timeDifference: utils.TimeDifference = .{}, - interpolation: utils.GenericInterpolation(maxf64Capacity) = undefined, + interpolation: utils.GenericInterpolation(maxf64Capacity)align(32) = undefined, // TODO: Remove align(32) after #14527 var instance: ?*ClientItemDropManager = null;