2009-08-31 6 views
9

Für die Softwareentwicklung braucht man oft Bilder. Aber wenn ich auf ein Bild zu arbeiten beginnen sehr schnell ich mit Dutzenden von Versionen am Ende, wie soUmgang mit Bildern während der Softwareentwicklung

  • Beginnen Sie mit einem schönen großen Maßstab Bild, sagen wir mal, ein Foto von meiner Kamera (x.nef)
  • I Machen Sie einige Anpassungen bei der Belichtungskorrektur und Weißabgleich, konvertieren Sie es in ein x.jpg
  • beginnen, einige kleine Sachen durch Kopieren in verschiedene Stücke aus zwei anderen Bildern hinzuzufügen. (A.jpg, was b.jpg in einem geschichteten Bild x.pdn
  • jetzt habe ich es auf die gewünschte Größe skalieren und speichern Sie es als x_small.jpg

Inzwischen habe ich 6 verschiedene Bilddateien im Umlauf und niemand außer mir weiß, hinter ihnen den Prozess

die Frage ist also:.? Wie Sie Bilder in den Entwicklungsprozess handhaben Sie

Edit:. Thx für alle großen Eingang ich verschiedene Fragen kombiniert meiner Ich habe die Antwort von jiinx0r akzeptiert, weil sie wirklich die fehlende Idee enthielt Ich möchte eine Namenskonvention für die Art der durchgeführten Änderungen anwenden.

+0

Ich sehe das nicht wirklich als Programmierfrage, sorry. Zum Schließen gewählt. Ich würde vorschlagen, dass Sie dies über DocType oder Super User nach den SO FAQ fragen. –

+0

Es ist nicht Code schreiben, aber es ist etwas, das in den Entwicklungsprozess kommt, wenn Sie auf Websites arbeiten. Ich war schon dort. –

+0

Beim Schreiben von Spielen ist das Artwork das wichtigste Element Ihres Codes. –

Antwort

4

Dateibenennung sollte über eine Namenskonvention behandelt werden.

{name}-{mod type}-{size}-{version}-{create date}.png 
{name}-final.png 

e.g. 
file-white_balance-800x600-v01-20090831.png 
file-white_balance-800x600-v02-20090831.png 
file-final.jpg 

der eigentliche Punkt ist eine auf Konvention vereinbart zu schaffen, dass die Menschen sehen den Wert in den folgenden (aber einfache/komplexe notwendig für Ihre Gruppe ist). In meiner Organisation tun wir dies für Eingabe/Ausgabe Datendateien, Bilder, Skripte usw. (nicht die gleiche Konvention für alle notwendig, aber dass sie etwas folgen, das vereinbart wurde)

Hoffe, dass hilft.

+0

Es ist traurig, nicht wahr? Das VAX-Dateisystem hatte mehrere Versionen pro Datei, Mainframe konnte es tun. Windows und Linux können nicht. Apple verkauft es als "neues Feature". Es gibt so viele Dateiformate, die wirklich von einem Dateisystem profitieren könnten, das automatisch Versionsdateien ... :( –

1

Normalerweise haben wir den Bildtitel und die Auflösung im Namen angehängt.

myimage_800_600.png 

auf diese Weise alle die wie Bilder zusammen in der Ordneransicht gruppiert werden, und Sie können Sie die gewünschte Größe leicht wählen, ohne zu wandern, was „Medium“ bedeutet.

6

Sie könnten Ihre Bilder einfach unter die Quellcodeverwaltung stellen.

Das würde die Revisionshistorie und Notizen behandeln. Wenn Sie wirklich alle Übergangsversionen des Abbilds behalten müssen und dies nicht in Ihrem Projektordner möchten, haben die meisten Quellcodeverwaltungsbäume einen "Werkzeugbereich" für diese Art von Sache.

EDIT: Wenn das, was du suchst, ist die Übersicht über die verschiedenen Größen zu halten (Thumbnails, etc.), ich mit Konvention über Konfiguration und implementieren eine einheitliche Datei (oder das Verzeichnis) Benennungssystem gehen würde.

Zum Beispiel würde ich wahrscheinlich separate Ordner für die 100px und 500px Versionen des gleichen Bildes haben. Oder vielleicht würde ich sie in den gleichen Ordner mit einer speziellen Namenskonvention setzen: logo-100.jpg und logo-500.jpg ... So oder so ist es wahrscheinlich in Ordnung, nur eine Entscheidung treffen und sicher sein, während des gesamten Projekts konsistent zu bleiben .

Ein letzter Gedanke: einige Leute gerne eine Tonne Metadaten in den Dateinamen aufnehmen. Für mich kommt es auf den Umfang Ihrer Operation und Ihre individuellen Bedürfnisse an. Ich würde persönlich zu einem weniger ist mehr Ansatz - wenn Sie darüber nachdenken, in etwas zu investieren (oder erstellen ein Werkzeug, um es für Sie tun), stellen Sie sicher, es ist eigentlich ein Nettogewinn an Zeit und nicht nur etwas für Deine OCD zum Mitmachen!

Als Entwickler neigen wir dazu, in diesem Bereich eklatante Fehler zu machen. Ich weiß, dass ich einige Male schuldig war.

+1

Ich denke nicht, dass das funktioniert, wenn Sie das gleiche Bild, aber verschiedene Größen in der Anwendung benötigen (Thumbnails zum Beispiel) –

+0

Guten Gedanken, ich habe eine Bearbeitung dafür hinzugefügt, falls das das ist, wonach er sucht. –

3

Ich bemühe mich, nur ein einzelnes "Quell" -Bild zu haben und dann alle Änderungen in ein kurzes Python-Skript oder einen anderen Code zu packen, damit ich die Effekte neu erstellen und/oder später anpassen kann.

Das Originalbild wird entweder als PNG oder TIFF gespeichert (um Qualitätsverluste durch Speichern zu vermeiden) und als allerletzter Schritt in den endgültigen Typ konvertiert. Das ist auch die Zeit, in der ich Skalierung und andere verlustbehaftete Operationen mache.

+0

benutzt du Python, um ein Bildmanipulationsprogramm 'fern zu steuern' oder benutzt du Python, um die Bildmanipulation tatsächlich durchzuführen? –

+0

Ich benutze PIL (pyhon imaging library) –

2

Wir haben ein Download- und ein Webspiel mit ein paar hundert Grafik-Assets entwickelt, von denen die meisten während der Entwicklung als psd-Dateien gespeichert wurden. Wir brauchten jpg und png Versionen für die Release Version des Spiels und minderwertige jpg und png Versionen für die Webversion.

Wir überprüften die Originale in Versionsverwaltung, um die Versionierung zu handhaben.

Um flexibel zu bleiben und das Original zu ändern, ohne das Bild nach jedem Update zweimal neu packen zu müssen, hatten wir ein Perl/ImageMagick-Skript, das die gepackten Bilder automatisch aktualisiert.

Der Dateiname blieb derselbe, aber die komprimierten Bilder würden zu verschiedenen Verzeichnissen gehen, je nachdem, für welche Version des Spiels jedes Bild gepackt wurde.

1

Ich stimme zu, dass die Quellcodeverwaltung für Sie die beste Wahl ist. Eine herkömmliche Quellensteuerung passt jedoch nicht wirklich zu Bildern.

Haben Sie sich http://www.alienbrain.com angesehen?

Es ist kommerziell, könnte aber etwas sein, das helfen könnte. Ich habe auch etwas über Photoshop oder Imageready gesucht und gesehen, das Versionskontrolle enthält. Du könntest dir das ansehen.

+0

Gut zu wissen, dass es Werkzeuge gibt, die dabei helfen, obwohl es für die Nutzung, an die ich denke, viel zu teuer ist. –

0

Ich habe alle Teile zusammen aus den verschiedenen Antworten, für ein System, das meine Bedürfnisse paßt:

  1. Bilder in der Quellcodeverwaltung gehen. Dies beinhaltet Bilder oder Zwischenschritte.
  2. Wenn mehrere Bilder basierend auf einem Quellbild, aber mit unterschiedlichen Transformationen benötigt werden, kann dies in automatische Builds (Skalierung, Komprimierung, Abtönung) integriert werden
  3. Basierend auf einer Namenskonvention oder Ordnerstruktur können Dateien kategorisiert werden in: Quelle (z. B. Originalfoto), Zwischenprodukt (für die verschiedenen Verarbeitungsschritte), Basis (ein Bild, das tatsächlich in der Software verwendet wird oder nach automatischer Verarbeitung wie in Schritt 2 möglich ist)
  4. Für die Verarbeitungsschritte sollte eine Namenskonvention sorgen dass die Art der Verarbeitung erkannt werden kann und auch die Reihenfolge der Schritte. So wäre man in der Lage, vom Quellbild durch die verschiedenen Verarbeitungsschritte zum endgültigen Bild zu gelangen.
Verwandte Themen