protected final IBakedModel bakeModel(ModelBlock model) { if (model.getElements().isEmpty()) { return null; } else { TextureAtlasSprite sprite = ModelLoader.defaultTextureGetter().apply(new ResourceLocation(model.resolveTextureName("particle"))); SimpleBakedModel.Builder simplebakedmodel$builder = (new SimpleBakedModel.Builder(model, model.createOverrides())).setTexture(sprite); for (BlockPart blockpart : model.getElements()) { for (Map.Entry<EnumFacing,BlockPartFace> entry : blockpart.mapFaces.entrySet()) { BlockPartFace blockpartface = entry.getValue(); sprite = ModelLoader.defaultTextureGetter().apply(new ResourceLocation(model.resolveTextureName(blockpartface.texture))); BakedQuad baked = manager.makeBakedQuad(blockpart, blockpartface, sprite, entry.getKey(), ModelRotation.X0_Y0, false); if (blockpartface.cullFace == null || !TRSRTransformation.isInteger(ModelRotation.X0_Y0.getMatrix())) { simplebakedmodel$builder.addGeneralQuad(baked); } else { simplebakedmodel$builder.addFaceQuad(ModelRotation.X0_Y0.rotate(blockpartface.cullFace), baked); } } } return simplebakedmodel$builder.makeBakedModel(); } }