Inventory blocks render fix
This commit is contained in:
parent
de92cff0aa
commit
163fdd2e37
@ -106,6 +106,7 @@ void AssetsLoader::addDefaults(AssetsLoader& loader) {
|
|||||||
loader.add(ASSET_SHADER, "res/ui", "ui");
|
loader.add(ASSET_SHADER, "res/ui", "ui");
|
||||||
|
|
||||||
loader.add(ASSET_ATLAS, "res/block.png", "block");
|
loader.add(ASSET_ATLAS, "res/block.png", "block");
|
||||||
|
loader.add(ASSET_TEXTURE, "res/block.png", "block_tex");
|
||||||
loader.add(ASSET_TEXTURE, "res/slot.png", "slot");
|
loader.add(ASSET_TEXTURE, "res/slot.png", "slot");
|
||||||
|
|
||||||
loader.add(ASSET_FONT, "res/font", "normal");
|
loader.add(ASSET_FONT, "res/font", "normal");
|
||||||
|
|||||||
@ -138,7 +138,7 @@ void HudRenderer::drawDebug(int fps, bool occlusion){
|
|||||||
}
|
}
|
||||||
|
|
||||||
void HudRenderer::drawInventory(Player* player) {
|
void HudRenderer::drawInventory(Player* player) {
|
||||||
Texture* blocks = assets->getTexture("block");
|
Texture* blocks = assets->getTexture("block_tex");
|
||||||
uint size = 48;
|
uint size = 48;
|
||||||
uint step = 64;
|
uint step = 64;
|
||||||
uint inv_cols = 10;
|
uint inv_cols = 10;
|
||||||
@ -229,7 +229,7 @@ void HudRenderer::draw(){
|
|||||||
uishader->uniformMatrix("u_projview", uicamera->getProjection()*uicamera->getView());
|
uishader->uniformMatrix("u_projview", uicamera->getProjection()*uicamera->getView());
|
||||||
|
|
||||||
// Chosen block preview
|
// Chosen block preview
|
||||||
Texture* blocks = assets->getTexture("block");
|
Texture* blocks = assets->getTexture("block_tex");
|
||||||
|
|
||||||
batch->texture(nullptr);
|
batch->texture(nullptr);
|
||||||
batch->color = vec4(1.0f);
|
batch->color = vec4(1.0f);
|
||||||
|
|||||||
@ -301,8 +301,9 @@ void Batch2D::blockSprite(float x, float y, float w, float h, int atlasRes, int
|
|||||||
float vu = 1.0f - ((index[3] / atlasRes) * scale) - scale;
|
float vu = 1.0f - ((index[3] / atlasRes) * scale) - scale;
|
||||||
float uf = (index[0] % atlasRes) * scale;
|
float uf = (index[0] % atlasRes) * scale;
|
||||||
float vf = 1.0f - ((index[0] / atlasRes) * scale) - scale;
|
float vf = 1.0f - ((index[0] / atlasRes) * scale) - scale;
|
||||||
// if (this->index + 18*VERTEX_SIZE >= capacity)
|
|
||||||
// render();
|
if (this->index + 18*VERTEX_SIZE >= capacity)
|
||||||
|
render();
|
||||||
|
|
||||||
float ar = 0.88f;
|
float ar = 0.88f;
|
||||||
float ox = x + (w * 0.5f);
|
float ox = x + (w * 0.5f);
|
||||||
|
|||||||
@ -292,7 +292,7 @@ vec4 BlocksRenderer::pickSoftLight(int x, int y, int z, ivec3 right, ivec3 up) c
|
|||||||
// Get texture atlas UV region for block face
|
// Get texture atlas UV region for block face
|
||||||
inline UVRegion uvfor(const Block& def, uint face, int atlas_size) {
|
inline UVRegion uvfor(const Block& def, uint face, int atlas_size) {
|
||||||
float uvsize = 1.0f / (float)atlas_size;
|
float uvsize = 1.0f / (float)atlas_size;
|
||||||
float us = 0.0097;
|
float us = 0.0097; // TODO: replace with correct calculations (including 0.36)
|
||||||
const uint id = def.textureFaces[face];
|
const uint id = def.textureFaces[face];
|
||||||
float u = (id % atlas_size) * uvsize;
|
float u = (id % atlas_size) * uvsize;
|
||||||
float v = 1.0f - (id / atlas_size + 1) * uvsize;
|
float v = 1.0f - (id / atlas_size + 1) * uvsize;
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user