From e5c745ee16b932a826f11be29eadb40938cd541f Mon Sep 17 00:00:00 2001 From: Anuken Date: Tue, 10 Jun 2025 20:21:20 -0400 Subject: [PATCH] Generate autotiles at gradle pack time --- core/assets/maps/weatheredChannels.msav | Bin 50824 -> 52670 bytes core/src/mindustry/io/TypeIO.java | 2 +- .../consumers/ConsumePayloadDynamic.java | 1 + tools/src/mindustry/tools/Generators.java | 22 ++++++ .../mindustry/tools/ImageTileGenerator.java | 68 ++++++++++++++++++ 5 files changed, 92 insertions(+), 1 deletion(-) create mode 100644 tools/src/mindustry/tools/ImageTileGenerator.java diff --git a/core/assets/maps/weatheredChannels.msav b/core/assets/maps/weatheredChannels.msav index f9ef2030e115c972e978bcc955391b3088c0baca..aa02ffabf714f557b05faf873f225071ba1297e0 100644 GIT binary patch literal 52670 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 literal 50824 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
S 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 public int id; diff --git a/core/src/mindustry/world/consumers/ConsumePayloadDynamic.java b/core/src/mindustry/world/consumers/ConsumePayloadDynamic.java index ebb6f32430..c2d52fcefd 100644 --- a/core/src/mindustry/world/consumers/ConsumePayloadDynamic.java +++ b/core/src/mindustry/world/consumers/ConsumePayloadDynamic.java @@ -60,6 +60,7 @@ public class ConsumePayloadDynamic extends Consume{ var inv = build.getPayloads(); var pay = payloads.get(build); + table.clear(); table.table(c -> { int i = 0; for(var stack : pay){ diff --git a/tools/src/mindustry/tools/Generators.java b/tools/src/mindustry/tools/Generators.java index 8503c80b26..833ffae080 100644 --- a/tools/src/mindustry/tools/Generators.java +++ b/tools/src/mindustry/tools/Generators.java @@ -69,6 +69,28 @@ public class Generators{ public static void run(){ ObjectMap gens = new ObjectMap<>(); + generate("autotiles", () -> { + for(Floor floor : content.blocks().select(b -> b.isFloor() && b.asFloor().autotile).as()){ + Fi basePath = new Fi("../../../assets-raw/sprites_out/blocks/environment/" + floor.name + "-autotile.png"); + + if(basePath.exists()){ + //theoretically this might not finish in time, but I doubt that will ever happen + mainExecutor.submit(() -> { + try{ + ImageTileGenerator.generate(basePath, floor.name, new Fi("../../../assets-raw/sprites_out/blocks/environment/" + floor.name)); + }catch(Exception e){ + Log.err("Failed to autotile: " + floor.name, e); + }finally{ + //the raw autotile source image must never be included, it isn't useful + basePath.delete(); + } + }); + }else{ + Log.warn("Autotile floor '@' not found: @", floor.name, basePath.absolutePath()); + } + } + }); + generate("splashes", () -> { int frames = 12; diff --git a/tools/src/mindustry/tools/ImageTileGenerator.java b/tools/src/mindustry/tools/ImageTileGenerator.java new file mode 100644 index 0000000000..bc5c01138d --- /dev/null +++ b/tools/src/mindustry/tools/ImageTileGenerator.java @@ -0,0 +1,68 @@ +package mindustry.tools; + +import arc.files.*; +import arc.graphics.*; +import arc.math.geom.*; +import arc.struct.*; +import arc.util.serialization.*; + +import java.io.*; + +/** Java port of https://github.com/GglLfr/tile-gen/blob/master/src/main.rs */ +public class ImageTileGenerator{ + private static final int layoutWidth = 384, layoutHeight = 128; + private static final Pixmap layout = new Pixmap(Base64Coder.decode("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")); + + public static void generate(Fi path, String name, Fi outputDir) throws IOException{ + Pixmap image = new Pixmap(path); + + try{ + int width = image.width, height = image.height; + + if(width % 4 != 0 || height % 4 != 0) throw new IOException("Image dimensions are not divisible by 4: " + width + "x" + height); + if(width != height) throw new IOException("Image is not square: " + width + "x" + height); + + int cellSize = width / 4; + + IntIntMap colorToPosition = new IntIntMap(); + + for(int x = 0; x < 4; x++){ + for(int y = 0; y < 4; y++){ + colorToPosition.put(layout.get(x * layoutWidth / 12, y * layoutHeight / 4), Point2.pack(x * width / 4, y * height / 4)); + } + } + + int outWidth = width / 4 * 12, outHeight = height; + Pixmap out = new Pixmap(outWidth, outHeight); + + for(int cx = 0; cx < 12; cx++){ + for(int cy = 0; cy < 4; cy++){ + for(int rx = 0; rx < cellSize; rx++){ + for(int ry = 0; ry < cellSize; ry++){ + int point = colorToPosition.get(layout.get( + (cx * cellSize + rx) * layoutWidth / (width * 3), + (cy * cellSize + ry) * layoutHeight / height + ), -1); + + if(point != -1){ + int sx = Point2.x(point), sy = Point2.y(point); + out.set(cx * cellSize + rx, cy * cellSize + ry, image.get(sx + rx, sy + ry)); + } + } + } + } + } + + for(int i = 0; i < 47; i++){ + int cx = i % 12, cy = i / 12; + Pixmap cropped = out.crop(cx * cellSize, cy * cellSize, cellSize, cellSize); + outputDir.child(name + "-" + i).writePng(cropped); + cropped.dispose(); + } + + out.dispose(); + }finally{ + image.dispose(); + } + } +}