if (hasBoundingBox()) {
Vector3 lower = getLowerBound();
lower.subtractLocal(basePosition);
Vector3 upper = getUpperBound();
upper.subtractLocal(basePosition);
minX = Math.max(0,(int)Math.floor(lower.getX() / scale));
minY = Math.max(0,(int)Math.floor(lower.getY() / scale));
minZ = Math.max(0,(int)Math.floor(lower.getZ() / scale));
maxX = Math.min(blockSize+1,(int)Math.ceil(upper.getX() / scale));
maxY = Math.min(blockSize+1,(int)Math.ceil(upper.getY() / scale));