Skip to navigation | Skip to content

Share your knowledge. Make a difference.

Programming Photoshop Plugins

1 - I can do better 2 - Jury's out 3 - Pretty darn good 4 - Splendiferous 5 - Awesometastic (by 4 people)   Your rating: 1 - I can do better 2 - Jury's out 3 - Pretty darn good 4 - Splendiferous 5 - Awesometastic

Ranked #790 in Tech & Geek, #21029 overall

Rated G. (Control what you see)

 

Finding resources that explain how to program a Photoshop plugin is a extremely difficult task.

Why? Just because there is little information on the web.

Again, why? Well, most people agree that creating a Photoshop plugin is a gold mine area due to the popularity of this software.

I don't know if that is still true, but it was some time ago.

Anyway, no matter the reason, information on this subject is scarse and that's the reason of the existance of this Lens.

This list is a good starting point. As with all of my other lenses, it will be updated as I find more useful resources. Updates will be indicated in this section of the page.

What involves programming a Photoshop Plugin? 

If you are an advanced programmer, you may find this list a bit basic, but if you are a novice programmer, a technically advanced or curious mind, or in charge of a Photoshop plugin development project, then the following list will give you an insight of what is needed.
  1. Theory:
    - A basic to intermediate knowledge about how bitmap graphics work and a bit of color theory.
    - A basic knowledge of most common computer graphics algorithms.
    - Knowledge of commercial and shareware Photoshop Plugins available
    - Knowledge about Adobe Photoshop software and its plugins capabilities
    - Lots of research time to invest
  2. Development:
    - For full featured plugins C++ is a must. Metrowerks for Mac and Unix. Visual Studio for Windows.
    - Some alternate solutions can be found for C and Delphi
    - Last, some basic solutions can be made through scripting languages.
    - Various testing configurations.
  3. Plugin distribution:
    - Knowledge of Photoshop plugins installation
    - Insights of creating a Plugin installer
    - Demos, trials, copy protection and other distribution strategies

Graphics Programming Theory and Algorithms 

The intention of this list is to mention just a few interesting graphics theory and algorithms resources that can be used in your Photoshop plugin programming.
Perlin Noise Theory and Implementation
Tutorial with pseudo code implementation about Perlin Noise and its use in procedural texture programming.
Renderman Shading Language
This site offers an very well explained introduction to Renderman Shading Language. Very easy to adapt to any other programming language. Learning the insights of this language, will give you the knowledge to create incredible digital textures plugins.
Image Processing Algorithms
An extensive list of image processing and analysis algorithms. If you plan to create a photo manipulation plugin, this list comes in handy.
Computer Graphics Algorithms
This list includes all type of algorithms for computer generated graphics. Suitable for special effects, shading and 3d graphics plugins.
Color Science Theory
Although this list does not include many algorithms, it's a useful resource to understand in depth how color works. Very technical!

Photoshop Plugins Development Platforms 

This section will show you the different options available to develop a Photoshop Plugin.
Adobe Photoshop SDK
The Adobe Photoshop SDK is the only way to program full featured Photoshop plugins available. Requires Visual Studio .Net (windows) or Code Warrior (Mac and Linux).
PROS: You can create ANY Photoshop plugin you want. Your expertize is your limit.
CONS: Expensive for personal or non comercial use. It is available only by subscribing to the The Adobe Solutions Network (ASN) Developer Program and You may not qualify to gain access to the Photoshop SDK anyway. Long to explain, just follow the link and read all about it.
FIlter Meister
FilterMeister is a Photoshop plugin that includes a C programming platform.
PROS: Inexpensive even for hobby or personal use. It is perhaps the easiest and fastest way to create moderately complex plugins. Lots of support from the friendly creators and a users group. Lots of examples at the web site. Ideal solution for color correction or filter-like plugins.
CONS: Documentation is a major problem. Not capable of creating full featured plugins with user driven tools.
Centaurix Photoshop SDK for Delphi
Photoshop SDK for Delphi is a plug-in development solution for Borland Delphi 5, 6, 7 and for Borland C++ Builder 6.
PROS: Inexpensive. You should be able to create full featured plugins, although I'm not quite sure.
CONS: Very little information. Not many people using it.
Filter Factory
A minor tool that came with older versions of Adobe Photoshop. If you want to play, this is a good option, but don't ever think of producing something commercial with it.
Filter Foundry
Mostly the same as Filter Factory. Just a toy but it can be used to test some algorithms.
Filter Formula
A better version of Filter Factory. In my opinion, still a toy (speaking in commercial terms).

Third Party Programming Services 

Here are a few options if you want to outsource your project. Take into account that these companies will charge you high fees for outstanding results. If you are on a budget, you should try to hire a freelance programmer from sites like rentacoder.com or getacoder.com
Andromeda Software
Creators of renowned Photoshop plugins such as Red Eye Pro, 3DLuxe and Cutline Filter. They now offer plugin development services.
Digital Element
Creators of Aurora and Verdant, offer custom plugin development.
Ambient Design
You can contract services from this company that developed nothing less than KPT5 plugins suite for MetaCreations (now distributed by Corel).

Article and Sources About Programming a Photoshop Plugin 

How to Write a Photoshop Plug-In, Part 1
The mother of all Photoshop SDK tutorials. Its very old and outdated, and only for Mac, but it is the only article that covers in depth the use of the official Photoshop SDK.
How to Write a Photoshop Plug-In, Part 1
Part two of the article mentioned above.
The Complete Guide to Creating Photoshop Filters
An in depth guide about programming Photoshop plugins with Filter Factory.
Photoshop Plugins Programming Tools
A good overview about Photoshop plugins programming tools.
Sample filter sources
A set of several file format and export plugins with source code.
Filter Meister Yahoo Group
Although it is Filter Meister Oriented, it is one of the best free Photoshop plugin programming sources. Discussions about algorithms, host compatibility and new plugins promotion. Members are eager to share info in a polite and helpful envioronment.
Plugin Setup Tool
Windows Setup tool specifically designed for installing PhotoShop compatible plug-ins. Will recognize all Windows PhotoShop plug-in compatible hosts and allow the user to pick which hosts the plug-in should be installed for.

Promoting And Selling Your Photoshop Plugin 

This is by no means a complete list of such a vast area as promotional and marketing resources. Just three examples to get you go. You should do more research, but as an starting point it should be useful.
The Photoshop Roadmap
The Photoshop Roadmap promotes and sells plugins and other Photoshop related products from renowned companies such as: AutoFX, Andromeda Software, AvBros, Frischluft, Human Software, Gertrudis Graphics and Mark Monciardini among many others. Just contact Enrique Flouret (eflouret@photoshoproadmap.com) for more information.
Filter Meister Yahoo Group
This group welcomes every new plugin annoncement. Just don't do it with commercial language. Be friendly and eager to share experiences. The group will review your filter and let you know if they find algorithm or interface related problems.
Share It!
Share It! is one of many payment processing options available for shareware or commercial developers. Share It! is part of Digital River's network. By subscribing you will be provided with a huge arsenal of administrative and marketing tools. Also, you can opt for a retail distribution managed by Digital River.

Computer Graphics Programming Books 

There are no Photoshop Plugin programming books on the market yet. But you will certainly need to learn Computer Graphics Programming to start developing your plugin. This is a short list of interesting books.

OpenGL(R) Shading Language

Digital Image Processing (2nd Edition)

Practical Algorithms for Image Analysis: Descriptions, Examples, and Code

X
eflouret

About eflouret

Architect, Designer and Web Marketer from Argentina.
Site Manager of The Photoshop Roadmap a renowned Photoshop resources web site

eflouret's Pages

See all of eflouret's pages