diff options
Diffstat (limited to 'src/main/java/dev/figboot/cuberender/test')
3 files changed, 6 insertions, 43 deletions
diff --git a/src/main/java/dev/figboot/cuberender/test/GraphicsPanel.java b/src/main/java/dev/figboot/cuberender/test/GraphicsPanel.java index 0473be4..12ca9ef 100644 --- a/src/main/java/dev/figboot/cuberender/test/GraphicsPanel.java +++ b/src/main/java/dev/figboot/cuberender/test/GraphicsPanel.java @@ -1,5 +1,6 @@ package dev.figboot.cuberender.test; +import dev.figboot.cuberender.api.SkinUtil; import dev.figboot.cuberender.math.*; import dev.figboot.cuberender.state.BlendMode; import dev.figboot.cuberender.state.Framebuffer; @@ -14,12 +15,11 @@ import java.awt.*; import java.awt.event.ComponentAdapter; import java.awt.event.ComponentEvent; import java.awt.image.BufferedImage; -import java.io.File; import java.io.IOException; import java.io.InputStream; import java.util.EnumMap; -public class GraphicsPanel extends JPanel { +class GraphicsPanel extends JPanel { private Framebuffer framebuffer; private final EnumMap<BodyPart, Mesh<?>> meshes = new EnumMap<>(BodyPart.class); @@ -54,43 +54,6 @@ public class GraphicsPanel extends JPanel { private BodyPart[] overlayParts; private BodyPart[] overlayPartsSlim; - private void copyLimbFlipped(BufferedImage src, BufferedImage target) { - for (int y = 4, maxY = src.getHeight(); y < maxY; ++y) { - for (int x = 0; x < 4; ++x) { - target.setRGB(x, y, src.getRGB(11 - x, y)); - target.setRGB(x + 4, y, src.getRGB(7 - x, y)); - target.setRGB(x + 8, y, src.getRGB(3 - x, y)); - target.setRGB(x + 12, y, src.getRGB(15 - x, y)); - } - } - - for (int y = 0; y < 4; ++y) { - for (int x = 0; x < 4; ++x) { - target.setRGB(x + 4, y, src.getRGB(7 - x, y)); - target.setRGB(x + 8, y, src.getRGB(11 - x, y)); - } - } - } - - private BufferedImage convertToModernSkin(BufferedImage bi) { - BufferedImage realBI = new BufferedImage(64, 64, BufferedImage.TYPE_INT_ARGB); - Graphics2D g2d = realBI.createGraphics(); - - g2d.drawImage(bi, 0, 0, 64, 32, null); - - copyLimbFlipped(bi.getSubimage(0, 16, 16, 16), realBI.getSubimage(16, 48, 16, 16)); - copyLimbFlipped(bi.getSubimage(40, 16, 16, 16), realBI.getSubimage(32, 48, 16, 16)); - g2d.dispose(); - - try { - ImageIO.write(realBI, "PNG", new File("test.png")); - } catch (IOException ex) { - throw new RuntimeException(ex); - } - - return realBI; - } - public GraphicsPanel() { addComponentListener(new ComponentAdapter() { @Override @@ -114,7 +77,7 @@ public class GraphicsPanel extends JPanel { } if (bi.getHeight() == 32) { - bi = convertToModernSkin(bi); + bi = SkinUtil.convertToModernSkin(bi, null); } Texture tex = new Texture(bi); @@ -310,7 +273,7 @@ public class GraphicsPanel extends JPanel { } @RequiredArgsConstructor - public enum BodyPart { + private enum BodyPart { HEAD(8/16f, 8/16f, 8/16f, 8/64f, 56/64f), TORSO(8/16f, 12/16f, 4/16f, 20/64f, 44/64f), LEFT_ARM(4/16f, 12/16f, 4/16f, 44/64f, 44/64f), diff --git a/src/main/java/dev/figboot/cuberender/test/TestWindow.java b/src/main/java/dev/figboot/cuberender/test/TestWindow.java index f7f94bd..95af070 100644 --- a/src/main/java/dev/figboot/cuberender/test/TestWindow.java +++ b/src/main/java/dev/figboot/cuberender/test/TestWindow.java @@ -2,7 +2,7 @@ package dev.figboot.cuberender.test; import javax.swing.*; -public class TestWindow extends JFrame { +class TestWindow extends JFrame { public TestWindow() { setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setTitle("Graphics test"); diff --git a/src/main/java/dev/figboot/cuberender/test/TestWindowControl.java b/src/main/java/dev/figboot/cuberender/test/TestWindowControl.java index 22218b5..e023e39 100644 --- a/src/main/java/dev/figboot/cuberender/test/TestWindowControl.java +++ b/src/main/java/dev/figboot/cuberender/test/TestWindowControl.java @@ -11,7 +11,7 @@ import java.awt.event.ActionEvent; import java.util.EnumMap; import java.util.Map; -public class TestWindowControl extends JFrame { +class TestWindowControl extends JFrame { private final GraphicsPanel graphicsPanel; private final JRadioButton radOverlayOpaque, radOverlayTranslucent; |
