From 8aa475022672710cba40384dd3c6493ccc28c3ab Mon Sep 17 00:00:00 2001 From: NULL511 Date: Thu, 2 May 2024 18:39:09 -0400 Subject: [PATCH] add trapdoor masks --- shaders/world0/setup.csh | 28 +++++++++++++++++++++++++++- 1 file changed, 27 insertions(+), 1 deletion(-) diff --git a/shaders/world0/setup.csh b/shaders/world0/setup.csh index ab59e42..bb9a19f 100644 --- a/shaders/world0/setup.csh +++ b/shaders/world0/setup.csh @@ -13,7 +13,7 @@ const ivec3 workGroups = ivec3(4, 5, 1); #include "/lib/lpv_blocks.glsl" const vec3 LightColor_SeaPickle = vec3(0.283, 0.394, 0.212); - + uint BuildLpvMask(const in uint north, const in uint east, const in uint south, const in uint west, const in uint up, const in uint down) { return east | (west << 1) | (down << 2) | (up << 3) | (south << 4) | (north << 5); } @@ -240,6 +240,32 @@ void main() { mixMask = BuildLpvMask(1u, 1u, 1u, 0u, 1u, 1u); mixWeight = 1.0; break; + + + case BLOCK_TRAPDOOR_BOTTOM: + mixMask = BuildLpvMask(1u, 1u, 1u, 1u, 1u, 0u); + mixWeight = 1.0; + break; + case BLOCK_TRAPDOOR_TOP: + mixMask = BuildLpvMask(1u, 1u, 1u, 1u, 0u, 1u); + mixWeight = 1.0; + break; + case BLOCK_TRAPDOOR_N: + mixMask = BuildLpvMask(0u, 1u, 1u, 1u, 1u, 1u); + mixWeight = 1.0; + break; + case BLOCK_TRAPDOOR_E: + mixMask = BuildLpvMask(1u, 0u, 1u, 1u, 1u, 1u); + mixWeight = 1.0; + break; + case BLOCK_TRAPDOOR_S: + mixMask = BuildLpvMask(1u, 1u, 0u, 1u, 1u, 1u); + mixWeight = 1.0; + break; + case BLOCK_TRAPDOOR_W: + mixMask = BuildLpvMask(1u, 1u, 1u, 0u, 1u, 1u); + mixWeight = 1.0; + break; } LpvBlockData block;