diff options
author | RealBadAngel <maciej.kasatkin@o2.pl> | 2014-10-15 04:13:53 +0200 |
---|---|---|
committer | RealBadAngel <maciej.kasatkin@o2.pl> | 2014-10-18 16:42:23 +0200 |
commit | 0066bd77d25793b76fdaa9a62755cca934f0121d (patch) | |
tree | 61760994616113cd307d6dc6c2980f5f547fa78f /src/content_mapblock.cpp | |
parent | d1ccc64e1ecfd00df36d2b8a8b3420b70434fefd (diff) | |
download | minetest-0066bd77d25793b76fdaa9a62755cca934f0121d.tar.gz minetest-0066bd77d25793b76fdaa9a62755cca934f0121d.tar.bz2 minetest-0066bd77d25793b76fdaa9a62755cca934f0121d.zip |
Add meshnode drawtype.
Diffstat (limited to 'src/content_mapblock.cpp')
-rw-r--r-- | src/content_mapblock.cpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/content_mapblock.cpp b/src/content_mapblock.cpp index c84e75ac0..53b9874d4 100644 --- a/src/content_mapblock.cpp +++ b/src/content_mapblock.cpp @@ -1715,6 +1715,18 @@ void mapblock_mesh_generate_special(MeshMakeData *data, makeCuboid(&collector, box, tiles, 6, c, txc); } break;} + case NDT_MESH: + { + 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); + } + break;} } } } |