Skip emitting empty nodes for entity meshes

This commit is contained in:
David Vierra 2015-11-07 06:25:35 -10:00
parent 311a714616
commit 983bec64ff

View File

@ -235,6 +235,9 @@ class TileEntityLocationMesh(EntityMeshBase):
continue continue
tilePositions.append(ref.Position) tilePositions.append(ref.Position)
if not len(tilePositions):
return
tiles = self._computeVertices(tilePositions, defaultColor, chunkPosition=chunk.chunkPosition) tiles = self._computeVertices(tilePositions, defaultColor, chunkPosition=chunk.chunkPosition)
vertexNode = VertexNode([tiles]) vertexNode = VertexNode([tiles])
@ -279,6 +282,9 @@ class CommandBlockLocationMesh(EntityMeshBase):
else: else:
continue continue
if not len(tileColors):
return
tiles = self._computeVertices(tilePositions, tileColors, chunkPosition=chunk.chunkPosition) tiles = self._computeVertices(tilePositions, tileColors, chunkPosition=chunk.chunkPosition)
vertexNode = VertexNode([tiles]) vertexNode = VertexNode([tiles])
@ -354,6 +360,9 @@ class ItemFrameMesh(EntityMeshBase):
# xxxx assumes 1.8 TilePos - fix this in ref?? # xxxx assumes 1.8 TilePos - fix this in ref??
mapTiles.append((mapTex, ref.TilePos, ref.Facing)) mapTiles.append((mapTex, ref.TilePos, ref.Facing))
if not len(mapTiles):
return
nodes = [] nodes = []
for mapTex, (x, y, z), facing in mapTiles: for mapTex, (x, y, z), facing in mapTiles:
@ -440,6 +449,9 @@ class MonsterModelRenderer(ChunkMeshBase):
yield yield
if not sceneNode.childCount():
return
self.sceneNode = sceneNode self.sceneNode = sceneNode
@ -554,6 +566,9 @@ class MonsterLocationRenderer(EntityMeshBase):
continue continue
monsterPositions.append(pos) monsterPositions.append(pos)
if not len(monsterPositions):
return
monsters = self._computeVertices(monsterPositions, monsters = self._computeVertices(monsterPositions,
(0xff, 0x22, 0x22, 0x44), (0xff, 0x22, 0x22, 0x44),
offset=True, offset=True,