Hallo,
ich glaube, Du machst Dir da Leben selber schwer ...!
Um die Grafiken in Spielerfarben einzufärben, ist der Ansatz mit der gemappten Palette ein guter Ansatz. Dann allerdings auf einen festen Index zu schauen, halte ich für "übertrieben".
In Deinem Template verwendest Du doch sicherlich genau definierte Farben!? Nach dem Einlesen des Images ist es dann hoffentlich immer noch eines mit einer mappenden Palette. Dann brauchst Du nur noch die Palette austauschen ... indem Du einfach über alle Farben der Palette iterierst (sollte gehen, oder?) und genau die spielerspezifischen Einträge ersetzt - egal an welchem Index sie stehen.
Eine Alternative, bei der man sich gar keine Raste machen braucht, wäre das Hinzufügen eines Alpha-Channels. Dabei belegst Du die einzufärbenden Bereichen mit durchscheinenden Graustufen und brauchst anschliessend nur einen spilerfarbenen Hintergrund drunterzuschieben. Das kann man dann auch mal eben in ein Pixmap rendern um die Rechenzeit im Folgenden in Grenzen zu halten.
... ansonsten sollte der Export als xpm(?) Dir eine ASCII-Datei liefern, die Du dann nach Belieben editieren kannst ... oder auch per Programm manipulieren. Aber auch hier würde ich mich lieber nicht auf einen fixen Index verlassen, sondern die Einträge matchen.
Tschüß,
Karl-Heinz Fandrey PeerGroup EI Development AMD Saxony Manufacturing GmbH - Fab 30 01109 Dresden, Wilschdorfer Landstrasse 101 Phone: +49 351 277 1649 Fax: +49 351 277 5903 E-mail: karl-heinz.fandrey@amd.com
-----Original Message----- From: Ulf Lorenz [mailto:s8397076@rcs.urz.tu-dresden.de] Sent: Wednesday, November 19, 2003 5:37 PM To: lug-dd@schlittermann.de Subject: Graphikkonvertierung
Hallo,
das hier ist nur eine Vorabanfrage, Details folgen noch, aber vielleicht kennt jemand ein Programm, was garantiert meine Wuensche erfuellt. Folgendes Problem (ich vermute aus dem Kontext sehr stark, dass das benutzte Grafikprogramm gimp war):
Gegeben ist ein Bild, das aus 16 Farben besteht. Daraus soll ein Bild mit einer 16-farbigen Palette werden. Loesung: konvertieren (wie schon gesagt, vermutlich mit gimp). Das Bild ist danauch auf 256 Farben runter (macht auch nichts), allerdings werden fuer die 16 Farben die Farbnummern 0x00, 0x11, 0x22, ... 0xFF benutzt. Ich moechte jetzt allerdings, dass die ersten 16 Farben der Palette benutzt werden. Hat jemand eine Idee, abgesehen davon, selber etwas kleines als Endstufe zu programmieren? *baeh*
Hintergrund: Bei einem Spiel soll jede Einheit ein Bild als Maske bekommen, dessen Palette auf die Spielerpalette umgefaerbt und auf das eigentliche Einheitenbild geblitted wird, so dass die Einheit an bestimmten Stellen die Farben des Spielers traegt.
cu, Ulf
-- 'Have you lost your senses?' 'Yes, but I may have found some better ones.' (Interesting Times)
Lug-dd maillist - Lug-dd@schlittermann.de http://mailman.schlittermann.de/mailman/listinfo/lug-dd