From d09ef3fd04ab0834e5f4c5bdfa40350da12c38de Mon Sep 17 00:00:00 2001 From: iProgramInCpp Date: Sat, 12 Aug 2023 10:18:50 +0300 Subject: [PATCH] * Flip stair rendering 90 degrees, to be shaded like regular blocks do. --- source/client/renderer/TileRenderer.cpp | 26 +------------------ .../client/renderer/entity/ItemRenderer.cpp | 5 +++- 2 files changed, 5 insertions(+), 26 deletions(-) diff --git a/source/client/renderer/TileRenderer.cpp b/source/client/renderer/TileRenderer.cpp index 2aa190b..d806a91 100644 --- a/source/client/renderer/TileRenderer.cpp +++ b/source/client/renderer/TileRenderer.cpp @@ -2397,6 +2397,7 @@ void TileRenderer::renderTile(Tile* tile, int data RENDER_TILE_ARG_PATCH) } if (shape == SHAPE_CROSS) { + // unused t.begin(); tesselateCrossTexture(tile, data, -0.5f, -0.5f, -0.5f); t.draw(); @@ -2404,30 +2405,6 @@ void TileRenderer::renderTile(Tile* tile, int data RENDER_TILE_ARG_PATCH) } if (shape == SHAPE_STAIRS) { -#ifdef ORIGINAL_CODE - for (int i = 0; i < 2; i++) - { - if (i) - tile->setShape(0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.5f); - else - tile->setShape(0.0f, 0.0f, 0.5f, 1.0f, 0.5f, 1.0f); - - - glTranslatef(-0.5f, -0.5f, -0.5f); - - // @BUG: Beginning twice and never drawing - // @BUG: Using glTranslatef when it only affects the final thing you're drawing - t.begin(); - - renderFaceUp (tile, 0.0f, 0.0f, 0.0f, tile->getTexture(DIR_YNEG, data)); - renderFaceDown(tile, 0.0f, 0.0f, 0.0f, tile->getTexture(DIR_YPOS, data)); - renderNorth (tile, 0.0f, 0.0f, 0.0f, tile->getTexture(DIR_ZNEG, data)); - renderSouth (tile, 0.0f, 0.0f, 0.0f, tile->getTexture(DIR_ZPOS, data)); - renderWest (tile, 0.0f, 0.0f, 0.0f, tile->getTexture(DIR_XNEG, data)); - renderEast (tile, 0.0f, 0.0f, 0.0f, tile->getTexture(DIR_XPOS, data)); - glTranslatef(0.5f, 0.5f, 0.5f); - } -#else // Fixed version from 0.1.1j+ t.addOffset(-0.5f, -0.5f, -0.5f); for (int i = 0; i < 2; i++) @@ -2455,7 +2432,6 @@ void TileRenderer::renderTile(Tile* tile, int data RENDER_TILE_ARG_PATCH) t.draw(); } t.addOffset(0.5f, 0.5f, 0.5f); -#endif return; } diff --git a/source/client/renderer/entity/ItemRenderer.cpp b/source/client/renderer/entity/ItemRenderer.cpp index 9512d7c..19cdccf 100644 --- a/source/client/renderer/entity/ItemRenderer.cpp +++ b/source/client/renderer/entity/ItemRenderer.cpp @@ -238,7 +238,10 @@ void ItemRenderer::renderGuiItem(Font* font, Textures* textures, ItemInstance* i glScalef(10, 10, 10); glRotatef(210.0f, 1.0f, 0.0f, 0.0f); glRotatef(45.0f, 0.0f, 1.0f, 0.0f); - glRotatef(-90.0f, 0.0f, 1.0f, 0.0f); + + // TODO: Why can't we rotate stairs 90deg also? What's rotating them!? + if (Tile::tiles[itemID]->getRenderShape() != SHAPE_STAIRS) + glRotatef(-90.0f, 0.0f, 1.0f, 0.0f); #ifdef ENH_SHADE_HELD_TILES # define PARM_HACK , 1