Ich habe viele Artikel und Anleitungen online über Plugins für Photoshop auf einem Mac gefunden. Problem ist, viele sind alt, gelten nur für CS1 / 2/3/4, oder beziehen sich auf Werkzeuge oder APIs, die (wie es scheint) veraltet sind. Einige Artikel sagen, dass Sie müssen CodeWarrior verwenden, aber es scheint, dass dies nicht mehr existiert sogar in der Mac-Programmierbereich.
Heute, im Jahr 2011, machen Plugins nur für CS5 und nur auf einem Mac mit Snow Leopard, was ist die richtige Toolchain und welche Bibliotheken / APIs / Frameworks sollte ich verwenden?
Ich habe den Eindruck, dass Carbon (was auch immer das ist) alt ist und vermieden werden sollte, aber es ist nicht klar, ob das für Plugins gilt. Mir ist nicht klar, ob ich Kakao (was auch immer das ist) verwenden sollte oder nicht. Ich denke, ich brauche Core Foundation (was auch immer ...) Gibt es eine Wahl zwischen 64 und 32 Bit oder ist CS5 rein 64 Bit und das ist das? (Ich bevorzuge natürlich 64 Bit.) Ich habe das Photoshop CS5 SDK und Photoshop CS5 selbst installiert.
Kann XCode als IDE verwendet werden? Ich werde ein Makefile Hand-Code und kompilieren an der Befehlszeile, wenn das einfacher oder der einzige mögliche Weg ist. Wenn XCode verwendet werden kann, welche Projektvorlage soll verwendet werden? Was ist das für "Mach-O", über das ich gelesen habe, und wie funktioniert das für PS-Plugins?
Es ist besonders verwirrend, da ich ein totaler Anfänger bei Mac-Programmierung jeder Art bin, obwohl ich viele Jahre Erfahrung mit Linux und anderen Plattformen hatte.
Mission erfüllt! (Vor Monaten ... Ich habe gerade gemerkt, dass ich diese Frage hier hatte.)
Cocoa ist nützlich für GUI-Einstellungsfenster und andere Dinge - es ist ein riesiger Haufen Dinge - aber ich habe es nur für das "Über" Popup-Fenster für mein Plugin verwendet.
Vergessen Sie Carbon für die Kombination von CS5 oder höher, OSX 10.6 oder neuer und 64 Bit komplett. Anscheinend waren Teile von Carbon in der Vergangenheit 64 Bit gemacht worden, sollten aber jetzt ignoriert werden.
XCode ist ein feiner Editor. Beginnen Sie mit einem "dylib" -Projekt mit C. C ++ - und Obj-C-Quelldateien können ohne großen Aufwand hinzugefügt werden. Es gibt keine andere Möglichkeit, XCode für einige einfache Spielzeugprojekte zu verwenden, um sich mit der Organisation von Dingen und dem Erstellen von Apps und Bibliotheken vertraut zu machen. Dies ist das einzige wirkliche "Werkzeug", das benötigt wird; der Rest ist APIs - Header-Dateien und Bibliotheken (oder "Frameworks" in der Apple-Welt). Beim Spielen mit XCode erfahren Sie, was ein "Bundle" ist - ein Ordner, der die ausführbare Datei und andere von der App benötigte Dateien enthält.
Pfade müssen für die Photoshop CS5-API eingerichtet werden, wobei zwei oder drei spezifische Verzeichnisse aufgelistet werden müssen. Möglicherweise müssen Sie bestimmte allgemeine Quelldateien aus dem Photoshop-Beispiel-Plugins-Verzeichnis kopieren, und es gab einige Probleme mit einer Datei namens MachOMacrezXcode.h, über die Sie Was bedeutet Exit Code 3 von Rez?
Leider gab es keine wirklich nützlichen Beispiele für gut geschriebene Plugins für CS5 auf 64-Bit. Eine Kombination aus dem Dissolve-Beispiel, dem SimpleFormat-Datei-Lese- / Schreib-Plugin, der Browsing-Quelle für Plugins bei Ссылка und Fragen zum Adobe Photoshop SDK-Forum stellen.
Achte nicht auf den plumpen Prozess, eine "Plugin Suite" zu verwenden, um Speicher zu erhalten. Es ist wie die alte 16-Bit-Windows-API von Microsoft, in der Sie "Memory-Handles" und dickes Malarky benötigten, das jetzt mehrere Male veraltet ist. Heutzutage sind gute alte malloc / free oder neue / delete in Ordnung.
Mit all den Pfeilwunden, die ich jetzt in meinem Rücken habe, sollte ich vielleicht ein Buch oder etwas schreiben ...