diff options
Diffstat (limited to 'src/content_mapblock.cpp')
-rw-r--r-- | src/content_mapblock.cpp | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/src/content_mapblock.cpp b/src/content_mapblock.cpp index 996db421b..527086b89 100644 --- a/src/content_mapblock.cpp +++ b/src/content_mapblock.cpp @@ -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;} } |