Skip to content

Commit 08e628c

Browse files
committed
Merge PR #1959 from buscher
2 parents 68c9cce + 38762b9 commit 08e628c

File tree

2 files changed

+13
-3
lines changed

2 files changed

+13
-3
lines changed

overviewer_core/src/primitives/edge-lines.c

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,8 +45,13 @@ edge_lines_draw(void* data, RenderState* state, PyObject* src, PyObject* mask, P
4545
int32_t increment = 0;
4646
if (block_class_is_subset(state->block, (mc_block_t[]){block_wooden_slab, block_stone_slab}, 2) && ((state->block_data & 0x8) == 0)) // half-steps BUT no upsidown half-steps
4747
increment = 6;
48-
else if (block_class_is_subset(state->block, (mc_block_t[]){block_snow_layer, block_unpowered_repeater, block_powered_repeater}, 3)) // snow, redstone repeaters (on and off)
48+
else if (block_class_is_subset(state->block, (mc_block_t[]){block_unpowered_repeater, block_powered_repeater}, 2)) // redstone repeaters (on and off)
4949
increment = 9;
50+
else if (state->block == block_snow_layer) {
51+
uint32_t block_data = get_data(state, DATA, x, y, z);
52+
// height calculation from textures.py -> def snow
53+
increment = (int)((12.0f - (12.0f / 8.0f * (float)block_data)));
54+
}
5055

5156
/* +X side */
5257
side_block = get_data(state, BLOCKS, x + 1, y, z);

overviewer_core/textures.py

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3601,8 +3601,6 @@ def draw_east():
36013601
# snow
36023602
@material(blockid=78, data=list(range(1, 9)), transparent=True, solid=True)
36033603
def snow(self, blockid, data):
3604-
# still not rendered correctly: data other than 0
3605-
36063604
tex = self.load_image_texture("assets/minecraft/textures/block/snow.png")
36073605

36083606
y = 16 - (data * 2)
@@ -3616,6 +3614,13 @@ def snow(self, blockid, data):
36163614
side = self.transform_image_side(sidetex)
36173615
otherside = side.transpose(Image.FLIP_LEFT_RIGHT)
36183616

3617+
sidealpha = side.split()[3]
3618+
side = ImageEnhance.Brightness(side).enhance(0.9)
3619+
side.putalpha(sidealpha)
3620+
othersidealpha = otherside.split()[3]
3621+
otherside = ImageEnhance.Brightness(otherside).enhance(0.8)
3622+
otherside.putalpha(othersidealpha)
3623+
36193624
alpha_over(img, side, (0, 6), side)
36203625
alpha_over(img, otherside, (12, 6), otherside)
36213626
alpha_over(img, top, (0, 12 - int(12 / 8 * data)), top)

0 commit comments

Comments
 (0)