mirror of
https://github.com/luanti-org/luanti.git
synced 2025-10-13 08:35:20 +02:00
Recalculate normals for cached meshes.
Check if mesh is here before adding to meshcollector. Fix deleting the meshes.
This commit is contained in:
@@ -1720,11 +1720,13 @@ void mapblock_mesh_generate_special(MeshMakeData *data,
|
||||
v3f pos = intToFloat(p, BS);
|
||||
video::SColor c = MapBlock_LightColor(255, getInteriorLight(n, 1, nodedef), f.light_source);
|
||||
u8 facedir = n.getFaceDir(nodedef);
|
||||
for(u16 j = 0; j < f.mesh_ptr[facedir]->getMeshBufferCount(); j++) {
|
||||
scene::IMeshBuffer *buf = f.mesh_ptr[facedir]->getMeshBuffer(j);
|
||||
collector.append(getNodeTileN(n, p, j, data),
|
||||
(video::S3DVertex *)buf->getVertices(), buf->getVertexCount(),
|
||||
buf->getIndices(), buf->getIndexCount(), pos, c);
|
||||
if (f.mesh_ptr[facedir]) {
|
||||
for(u16 j = 0; j < f.mesh_ptr[facedir]->getMeshBufferCount(); j++) {
|
||||
scene::IMeshBuffer *buf = f.mesh_ptr[facedir]->getMeshBuffer(j);
|
||||
collector.append(getNodeTileN(n, p, j, data),
|
||||
(video::S3DVertex *)buf->getVertices(), buf->getVertexCount(),
|
||||
buf->getIndices(), buf->getIndexCount(), pos, c);
|
||||
}
|
||||
}
|
||||
break;}
|
||||
}
|
||||
|
Reference in New Issue
Block a user