Merge pull request #846 from MihailRis/fixes

fixes
This commit is contained in:
MihailRis 2026-06-03 21:02:41 +03:00 • committed by GitHub
commit 34cc778f0d
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
7 changed files with 44 additions and 32 deletions

View file

@ -136,18 +136,18 @@ void Mesh::addBox(
const bool enabledSides[6],
const glm::mat4& transform
) {
if (enabledSides[0]) // north
addPlane(pos+Z*size, X*size, Y*size, Z, uvs[0], transform);
if (enabledSides[1]) // south
addPlane(pos-Z*size, -X*size, Y*size, -Z, uvs[1], transform);
if (enabledSides[2]) // top
addPlane(pos+Y*size, X*size, -Z*size, Y, uvs[2] * glm::vec2(-1), transform);
if (enabledSides[3]) // bottom
addPlane(pos-Y*size, X*size, Z*size, -Y, uvs[3] * glm::vec2(-1, 1), transform);
if (enabledSides[4]) // west
addPlane(pos+X*size, -Z*size, Y*size, X, uvs[4], transform);
if (enabledSides[5]) // east
addPlane(pos-X*size, Z*size, Y*size, -X, uvs[5] * glm::vec2(-1, 1), transform);
if (enabledSides[0]) // east
addPlane(pos-X*size, Z*size, Y*size, -X, uvs[0], transform);
if (enabledSides[1]) // west
addPlane(pos+X*size, -Z*size, Y*size, X, uvs[1] * glm::vec2(-1, 1), transform);
if (enabledSides[2]) // bottom
addPlane(pos-Y*size, X*size, Z*size, -Y, uvs[2], transform);
if (enabledSides[3]) // top
addPlane(pos+Y*size, X*size, -Z*size, Y, uvs[3] * glm::vec2(-1, 1), transform);
if (enabledSides[4]) // south
addPlane(pos-Z*size, -X*size, Y*size, -Z, uvs[4], transform);
if (enabledSides[5]) // north
addPlane(pos+Z*size, X*size, Y*size, Z, uvs[5] * glm::vec2(-1, 1), transform);
}
void Mesh::scale(const glm::vec3& size) {

View file

@ -73,7 +73,7 @@ Mesh<VertexStructure>::~Mesh() {
MeshStats::meshesCount--;
glDeleteVertexArrays(1, &vao);
glDeleteBuffers(1, &vbo);
for (int i = ibos.size() - 1; i >= 0; i--) {
for (int i = 0; i < ibos.size(); i++) {
glDeleteBuffers(1, &ibos[i].ibo);
}
}
@ -98,7 +98,7 @@ void Mesh<VertexStructure>::reload(
glBufferData(GL_ARRAY_BUFFER, 0, {}, GL_STREAM_DRAW);
}
for (int i = indices.size(); i < ibos.size(); i++) {
for (int i = 0; i < ibos.size(); i++) {
glDeleteBuffers(1, &ibos[i].ibo);
}
ibos.clear();

View file

@ -83,12 +83,12 @@ static util::TextureRegion determine_texture_region(
const Assets& assets, const std::string& texture
) {
static std::array<std::string, 6> faces {
"blocks:dbg_north",
"blocks:dbg_south",
"blocks:dbg_top",
"blocks:dbg_bottom",
"blocks:dbg_west",
"blocks:dbg_east",
"blocks:dbg_west",
"blocks:dbg_bottom",
"blocks:dbg_top",
"blocks:dbg_south",
"blocks:dbg_north",
};
if (texture.length() < 2 || texture.at(0) != '$') {