extract method buildBoxQuads
This commit is contained in:
parent
1b766e5fd9
commit
5e2b792591
@ -154,13 +154,26 @@ class BlockModels(object):
|
|||||||
allQuads = []
|
allQuads = []
|
||||||
|
|
||||||
for element in allElements:
|
for element in allElements:
|
||||||
|
quads = self.buildBoxQuads(element, name, textureVars, variantXrot, variantYrot, variantZrot)
|
||||||
|
allQuads.extend(quads)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
self.modelQuads[block.internalName + block.blockState] = allQuads
|
||||||
|
|
||||||
|
except Exception as e:
|
||||||
|
log.error("Failed to parse variant of block %s\nelements:\n%s\ntextures:\n%s", name,
|
||||||
|
allElements, textureVars)
|
||||||
|
raise
|
||||||
|
|
||||||
|
def buildBoxQuads(self, element, name, textureVars, variantXrot, variantYrot, variantZrot):
|
||||||
|
quads = []
|
||||||
shade = element.get("shade", True)
|
shade = element.get("shade", True)
|
||||||
fromPoint = Vector(*element["from"])
|
fromPoint = Vector(*element["from"])
|
||||||
toPoint = Vector(*element["to"])
|
toPoint = Vector(*element["to"])
|
||||||
fromPoint /= 16.
|
fromPoint /= 16.
|
||||||
toPoint /= 16.
|
toPoint /= 16.
|
||||||
box = FloatBox(fromPoint, maximum=toPoint)
|
box = FloatBox(fromPoint, maximum=toPoint)
|
||||||
|
|
||||||
for face, info in element["faces"].iteritems():
|
for face, info in element["faces"].iteritems():
|
||||||
face = facesByCardinal[face]
|
face = facesByCardinal[face]
|
||||||
texture = info["texture"]
|
texture = info["texture"]
|
||||||
@ -184,24 +197,12 @@ class BlockModels(object):
|
|||||||
|
|
||||||
self.firstTextures.setdefault(name, texture)
|
self.firstTextures.setdefault(name, texture)
|
||||||
self._textureNames.add(texture)
|
self._textureNames.add(texture)
|
||||||
allQuads.append((box, face,
|
quads.append((box, face,
|
||||||
texture, uv, cullface,
|
texture, uv, cullface,
|
||||||
shade, element.get("rotation"), info.get("rotation"),
|
shade, element.get("rotation"), info.get("rotation"),
|
||||||
variantXrot, variantYrot, variantZrot))
|
variantXrot, variantYrot, variantZrot))
|
||||||
|
|
||||||
|
return quads
|
||||||
|
|
||||||
|
|
||||||
self.modelQuads[block.internalName + block.blockState] = allQuads
|
|
||||||
|
|
||||||
except Exception as e:
|
|
||||||
log.error("Failed to parse variant of block %s\nelements:\n%s\ntextures:\n%s", name,
|
|
||||||
allElements, textureVars)
|
|
||||||
raise
|
|
||||||
|
|
||||||
# for name in self.modelQuads:
|
|
||||||
# log.info("Quads for %s:\n%s\n", name, self.modelQuads[name])
|
|
||||||
# raise SystemExit
|
|
||||||
|
|
||||||
def getTextureNames(self):
|
def getTextureNames(self):
|
||||||
return iter(self._textureNames)
|
return iter(self._textureNames)
|
||||||
|
Reference in New Issue
Block a user