ASEPRITE (Allegro Sprite Editor)

Veröffentlicht am

Inspiriert durch die Mojam-Aktion habe ich mir vorgenommen, mich auch mal etwas mit der Spiele-Programmierung (speziell mit Java) zu beschäftigen. Aber dazu vielleicht irgendwann später einmal mehr…

Jedenfalls habe ich auf der Suche nach einem Sprite-Editor ein interessantes Programm gefunden, das ich gerne kurz vorstellen möchte – ASEPRITE.

"Lord Lard" im ASEPRITE-Editor

ASEPRITE ist ein OpenSource-Projekt, das auf Windows, Mac OS und Linux lauffähig ist. Ein erster Pluspunkt. Leider gibt es auch Probleme, auf die ich aber erst weiter unten eingehen will.

Während für Windows eine Binary-Version zum Download bereitsteht, müssen Linux-Benutzer aber die Sourcen herunterladen und selbst kompilieren. Da recht wenig Abhängigkeiten bestehen, sollte das im Regelfall aber nicht sehr kompliziert sein.

Features

Horizontal gesplitteter Editor

Als erstes muss ich mal sagen, gefällt mir die pixelige Oberfläche – :) auch wenn das nur Eye-Candy ist. Und was die Features angeht, naja, ich bin ja kein Profi, aber ich denke, man kann als Hobby-Pixelartist schon sehr gut mit dem Programm arbeiten:

  • Frame-basierte Bearbeitung.
  • Mehrere Layers sind möglich.
  • Vorschau der Animation.
  • Es besteht eine Onion Skinning Option, die den vorigen Frame halb-transparent mit anzeigt (bzw. den Teil des vorigen Frames, der über den Rand des aktuellen heraussteht), so dass man die Bewegung gut sehen/bearbeiten kann.
  • Zeitleiste und Layer-Übersicht

    Der Editor kann beliebig horizontal und vertikal gesplittet werden. So dass man gleichzeitig in mehreren Zoom-Stufen oder aber auch an mehreren Sprites arbeiten kann. Wobei die horizontale und vertikale Aufteilung der Frames auf dem Sheet wählen kann.

  • Sprite-Sheets (alle Sprites in einer Grafik-Datei) können importiert und exportiert werden.
  • Es gibt ein nettes Cheat-Sheet (offiziell Quick-Reference genannt) mit den Shortcuts für die Funktionen.

Kompilation

Um die Kompilation durchführen zu können, muss man zunächst CMake und ein paar andere Pakete installieren:

sudo apt-get install cmake build-essential libx11-dev

Dann legt man sich eine Verzeichnis für die Kompilation an, z.B.:

mkdir /tmp/aseprite
cd /tmp/aseprite

Als nächstes benötigt man natürlich die Quellen. Dazu kann man sich von der Homepage die Sourcen der aktuellen Stable-Version herunterladen. Oder man lädt sich die aktuelle Entwicklungsversion von GitHub (wofür natürlich noch Git installiert werden müsste). Letzteres macht man folgendermaßen:

git clone git://github.com/dacap/aseprite.git

Nun wechselt man in das Verzeichnis, das durch das entpacken der Stable Sources bzw. durch das Klonen des Git-Repositories erstellt wurde. So, dass man nun in dem Verzeichnis steht, in dem auch die Datei INSTALL.txt zu finden ist. In dieser Datei finden sich übrigens in etwa diese Informationen zur Kompilation.

Dann erstellt man ein temporäres Verzeichnis für den Build, wechselt da hinein und startet den Vorgang:

mkdir build
cd build
cmake .. -G "Unix Makefiles"

Abschließend ist noch ein einfaches…

make

… notwendig. Die Kompilation ist damit dann (hoffentlich ohne Fehler) abgeschlossen.

Installation

Befindet man sich nicht (mehr) im temporären Build-Verzeichnis (im Beispiel oben wurde es build genannt), wechselt man zunächst dort hinein. Dann kopiert man das kompilierte Binary an den Zielort. Am besten natürlich in ein Verzeichnis, das im Pfad liegt – also zum Beispiel /usr/local/bin:

sudo cp src/aseprite /usr/local/bin

Außerdem benötigt ASEPRITE noch ein paar zusätzliche Dateien. Diese muss man an einen Ort kopieren, wo das Programm sie auch sucht. Das kann z.B. das Verzeichnis $HOME/.aseprite sein, oder aber in diesem Fall passender /usr/local/share/aseprite/data. Also:

mkdir -p /usr/local/share/aseprite/data
sudo cp -pr ../data/* /usr/local/share/aseprite/data

Das war’s. ASEPRITE sollte nun über aseprite startbar sein.

<UPDATE 10.03.2012>

Um das Programm ins Menü einzubinden, kopiert man folgenden Inhalt in eine Datei namens /usr/local/share/applications/aseprite.desktop (Verzeichnis anlegen, falls nicht vorhanden):

[Desktop Entry]
Version=1.0
Name=ASEPRITE
Comment=Allegro Sprite Editor
Exec=/usr/local/bin/aseprite
Terminal=false
Type=Application
Icon=/usr/local/share/aseprite/data/icons/ase16.png
Categories=Graphics
MimeType=image/bmp;image/gif;image/jpeg;image/png;

</UPDATE 10.03.2012>

Probleme / Bugs

Leider erzeugt das Programm eine hohe Systemlast. Unter Unity 3D und wohl auch unter Gnome3 legt das Programm so sogar das System praktisch lahm – in Unity 2D ist ASEPRITE dagegen gut verwendbar. Ein Bug (#76) ist dazu bereits erfasst – es wäre natürlich gut, wenn ihr für diesen Bug voten würdet, damit er mehr Gewicht bekommt (außerdem werdet ihr so über Neuigkeiten zum Bug auf dem Laufenden gehalten).

Wer Unity kurzzeitig für die Arbeit mit ASEPRITE deaktivieren will (ohne sich neu anzumelden), kann das vor dem Programmstart so tun:

metacity --replace &

Zu beachten ist dabei, dass das Panel natürlich so verschwindet und man nur noch über das Terminal Programme starten kann. Mit…

compiz --replace &

… stellt man den Ursprungszustand wieder her.

<UPDATE 08.05.2012>

Für den Performance-Bug unter Unity und Gnome Shell habe ich heute einen kurzen Beitrag mit einem weiteren Workaround gepostet…

</UPDATE 08.05.2012>

Außerdem ist mir noch ein Bug (#52) aufgefallen, der aber in der Entwicklungsversion (im Gegensatz zur Stable Version 0.9) schon behoben ist: Importiert man ein Sprite-Sheet kann man die vorbelegte Sprite-Größe von 16×16 zwar ändern, die Änderung hat aber keinen Effekt. Das ist natürlich ein Problem, wenn man bereits fertige Sheets hat, die aber nicht korrekt in den Editor übernehmen kann.


Dieser Artikel wurde in der/den Kategorie(n) _Anwendungen, Planet-U veröffentlicht und mit den Tags , , , , versehen.

7 Kommentare zu ASEPRITE (Allegro Sprite Editor)

  1. Kommentar von tuxflo
    9. März 2012, 19:31 Uhr.

    Hey Danke für den Tip!
    Ich möchte mich derzeit auch mit Sprite Programmierung befassen und da kommt mir dieses Tool gerade recht.

    Grüße,
    tuxflo

    • Kommentar von Gerald
      10. März 2012, 08:12 Uhr.

      Viel Spaß und Erfolg dabei! Ich habe gerade gesehen, dass bei den Kopier-Vorgängen nach der Kompilation die sudos vergessen hatte. Und den mkdir vor des Verzeichnisses unterhalb von /usr/local/share auch. Aber das hast du ja vermutlich schon bemerkt… :)

  2. Kommentar von Marco
    10. März 2012, 11:17 Uhr.

    Experience auf dem Mac ist die Hölle, btw 😉

    Naja, mal v1.0 abwarten.

    • Kommentar von Gerald
      10. März 2012, 12:23 Uhr.

      An der Performance kann/muss tatsächlich noch gearbeitet werden. Ist wirklich noch ein großer Haken. Zumal ich normalerweise mit Unity arbeite.
      Aktuell arbeite ich aber an einem Sprite unter XFCE (habe noch eine Ubuntu Studio Installation). Da läuft das Programm flüssig. Beim Mac hast du aber halt keine Ausweichmöglichkeit…
      Aber ich denke, es lohnt sich, wenn du dir kommende Versionen von ASEPRITE nochmal anschaust. Das Programm macht (sonst) wirklich einen guten Eindruck.

  3. Kommentar von Takidoso
    16. März 2012, 19:24 Uhr.

    Hi ho,
    habe mir gerade das Tool in Windows XPruntregezogen. Hmmm… irgendwie verstehe ich nocch nicht so ganz, wie man bestehnede Bilder lädt. Wollte ein Gif einfach reinziehen über open und er scheint es irgendwie nicht laden zu wollen,tut soalswärees ein Verzeichnis :-(

    Mache ich da was falsch, oder muss ich vordem Laden einer Bilddatei irgendwas noch machen?

    • Kommentar von Gerald
      16. März 2012, 22:22 Uhr.

      Nee, eigentlich sollten sich vorhandene Grafiken ganz normal über File –> Open öffnen lassen. Wenn es ein Sprite-Sheet ist, musst du dann danach aber noch die Import-Funktion aufrufen – aber zuerst muss mal die Datei geöffnet sein. Hatte da noch keinerlei Probleme. Habe allerdings bislang nur mit png-Dateien hantiert.

  4. Pingback: ASEPRITE: Performance-Problem bei Unity und Gnome Shell umgehen | ME and my U

Hinterlasse eine Antwort

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *

Du kannst folgende HTML-Tags benutzen: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>