Monsterbilder für Roguelike reihten sich so aneinander
↓↓↓ Ich wollte diese Reihenfolge ändern ...
Es ist ziemlich schwierig, alle Bilder solcher Charaktere manuell zu verarbeiten ...
Als ich untersuchte, ob es mit einem Skript automatisiert werden kann, war es eine gute Idee, ImageMagick zu verwenden.
Da es sich um eine Mac-Umgebung handelt, habe ich sie über MacPorts installiert.
Wenn Sie sich in einer Windows-Umgebung befinden, können Sie diese mithilfe des hier beschriebenen Installationsprogramms problemlos installieren.
Ich habe mich entschlossen, das Bild wie folgt zu verarbeiten
Verwenden Sie die Option "-crop", um das Bild zuzuschneiden.
bash
convert [Eingabedatei] -crop '[Breite]x[Höhe]+[X-Koordinate oben links]+[Oben links Y-Koordinate]' [Ausgabedatei]
Verwenden Sie beispielsweise den folgenden Befehl, um das Bild input.png mit einer Größe von 32 x 32 mit (x, y) = (10,20) als Koordinate oben links zuzuschneiden.
bash
convert input.png -crop '32x32+10+20' output.png
Basierend darauf ein Python-Skript, das für jeden Teil ein Zombie-Bild ausschneidet
crop.py
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import os
#■ Schneiden Sie zuerst das Bild zu
#Ausschnittgröße
SIZE = 16
#Eingabedatei
INPUT = "all.png "
#Zombie-Startkoordinaten
x = 80
y = 80
for i in range(0, 15):
#In 5x3 aufgereiht
ox = (i / 3) * SIZE
oy = (i % 3) * SIZE
ox += x
oy += y
#Ausgabedatei(Ausgabe in den tmp-Ordner)
out = "tmp/%d.png "%i
#Erstellung von Befehlszeichenfolgen
cmd = "/opt/local/bin/convert %s -crop '%dx%d+%d+%d' %s"%(INPUT, SIZE, SIZE, ox, oy, out)
print cmd
#Lauf
os.system(cmd);
Dies ist ein Skript, das das Zeichen aus all.png ausschneidet und es als 0 bis 14.png im Ordner tmp ausgibt. Jetzt können Sie es einzeln ausschneiden.
Verbinden Sie als Nächstes die ausgeschnittenen Bilder. Verwenden Sie zum Zuschneiden die Option "+ anhängen".
bash
convert +append [Eingabedatei 1] [Eingabedatei 2] [...] [Ausgabedatei]
Der Befehl zum Verketten von 1.png 2.png 3.png und zum Ausgeben an out.png lautet beispielsweise wie folgt.
bash
convert +append 1.png 2.png 3.png out.png
Hier ist ein Python-Skript, das die darauf basierend ausgeschnittenen Bilder verkettet.
append.py
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import os
#■ Kombinieren Sie Bilder
#An die Seite anschließen
cmd = "/opt/local/bin/convert +append "
for i in range(0, 15):
#Eingabedatei
inFile = "tmp/%d.png "%i
#Verketten Sie mit der Befehlszeichenfolge
cmd += inFile + " "
#Legen Sie den Namen der Ausgabedatei fest
cmd += "zombie.png "
print cmd
#Lauf
os.system(cmd)
Es ist ein Skript, das 0 bis 14.png im tmp-Ordner an "zombie.png " ausgibt. Infolgedessen können die Bilder wie unten gezeigt verbunden werden.
Wenn Sie danach dieses Skript ändern, scheinen Sie alle Zeichen leicht zu durchlaufen.
Im Fall eines Punktbildspiels können Daten in niedriger Auflösung vorbereitet werden, um ein Gefühl von Punkten zu vermitteln, und sie können vergrößert und im tatsächlichen Spiel verwendet werden. Wenn Sie in diesem Fall normal zoomen, sieht es verschwommen aus.
Dies ist beispielsweise ein 32x32-Punktbild.
Wenn Sie dies auf 96x96 vergrößern, sieht es verschwommen aus.
Daher ist es notwendig, das Pixelverhältnis zu vergrößern, während es fest bleibt.
Geben Sie die Option "-filter box" an, um diese Konvertierung in ImageMagick durchzuführen.
bash
convert -filter box -resize [Vergrößerung]% [Eingabedatei] [Ausgabedatei]
Die Vergrößerung beträgt 100% Standardwert. Wenn Sie beispielsweise die Größe der Bildeingabe.png verdoppeln möchten, führen Sie den folgenden Befehl aus:
bash
convert -filter box -resize 200% input.png output.png
Das Folgende ist eine Methode, um ein Bild mit einem festen Pixelverhältnis auszugeben und das Bild mithilfe eines Python-Skripts zu verdoppeln.
scale.py
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import os
#Eingabedatei
INPUT = "zombie.png "
#Ausgabedatei
OUTPUT = "zombie_2x.png "
#Doppelt
SCALE = 2
#Erstellung von Befehlszeichenfolgen
cmd = "/opt/local/bin/convert -filter box -resize %d%% %s %s"%(SCALE*100, INPUT, OUTPUT)
print cmd
#Lauf
os.system(cmd)
Dies ist ein Skript, das zombie.png verdoppelt und als zombie_2x.png ausgibt.
Ich habe mir das Monsterbild geliehen, das diesmal von hier ausgeschnitten wurde.
Es gibt viele schöne Bilder, die für Roguelikes verwendet werden können, was sehr gut ist.
Wenn Sie die Option "-transparent" angeben, können Sie die transparente Farbe und Ausgabe angeben.
bash
convert -transparent '#RRGGBB' [Eingabedatei] [Ausgabedatei]
Zum Beispiel ist die Hintergrundfarbe des diesmal verwendeten Monsterbildes "# 476c6c"
bash
convert -transparent '#476c6c' zombie.png zombie_alpha.png
Dann können Sie ein transparentes Bild zombie_alpha.png erstellen.
Recommended Posts