@Override public @Nonnull List<BakedQuad> getQuads(@Nullable IBlockState state, @Nullable EnumFacing side, long rand) { long start = crazypants.enderio.util.Profiler.instance.start(); if (state instanceof BlockStateWrapperBase) { IBakedModel model = ((BlockStateWrapperBase) state).getModel(); if (model instanceof CollectedQuadBakedBlockModel) { ((CollectedQuadBakedBlockModel) model).setParticleTexture(getParticleTexture()); } if (model != null) { crazypants.enderio.util.Profiler.instance.stop(start, state.getBlock().getLocalizedName() + " (relayed)"); return model.getQuads(state, side, rand); } } return getDefaults().getQuads(state, side, rand); }
@Override public void bakeModel() { long start = Profiler.instance.start(); @Nonnull QuadCollector paintQuads = new QuadCollector(); boolean hasPaintRendered = false; String cacheResult; if (block instanceof IBlockPaintableBlock && (!(block instanceof IWrenchHideablePaint) || !getYetaDisplayMode().isHideFacades())) { hasPaintRendered = PaintWrangler.wrangleBakedModel(world, pos, ((IBlockPaintableBlock) block).getPaintSource(state, world, pos), paintQuads); } if (!hasPaintRendered) { if (MinecraftForgeClient.getRenderLayer() == null || MinecraftForgeClient.getRenderLayer() == block.getBlockLayer()) { model = null; cacheResult = "relaying"; } else { model = NULL; cacheResult = "none"; } } else { model = new CollectedQuadBakedBlockModel(paintQuads); cacheResult = "paint only"; } Profiler.instance.stop(start, state.getBlock().getLocalizedName() + " (bake, cache=" + cacheResult + ")"); }
@Override public void bakeModel() { long start = Profiler.instance.start(); QuadCollector quads = null; QuadCollector overlayQuads = null;