This plugin requires Adobe Photoshop. (Users of Photoshop Elements should see The Photo Geek's Elemental Plugin)
This plugin works in Lightroom 5 (and older versions as far back as Lightroom 3, though some features depend on the version of Lightroom).
The same download works for both Windows and Mac. See the box to the upper right for the download link (in orange) and installation instructions.
This plugin allows photos in Lightroom to be used as source layers for a composite image in Lightroom, via a Photoshop layered image, in a non-destructive way. Even after the layered image is built, edited in Photoshop, and imported back into Lightroom as a new composite image, changes to the original source images in Lightroom are reflected through the Photoshop edits and back into the composite image in Lightroom.
Within the layered image (which can be a PSD or TIFF), the Lightroom images are represented as smart-object layers. You may perform pixel editing to your heart's content, add layers, blending modes, masks, apply filters, resize, transform, add text, run actions.... pretty much whatever you like so long as you don't modify the smart-object layers themselves.
WARNING: this is new, early beta stuff that I want to put out for comments. This documentation is not even pretending to be complete or well written. The plugin expires after a couple of weeks because I'm sure I'll be putting out new versions at a rapid pace early on, at least if its popularity warrants. Eventually I'll move it to my free-but-donations-welcomed donationware model.
The first proof-of-concept version of this plugin was written quickly in one day. In the morning, while writing my “The Amazing Marketing Power of Scott Kelby” blog post, the idea of how to do this plugin came to me, and by the evening I had a version to a group of friends for testing. It's been considerable work to smooth out the rough edges enough to release as a beta, but now I'm ready to get it to a wider audience.
What This Plugin Is and Isn't
This plugin is not “Layers in Lightroom”. That won't happen until Adobe makes it happen.
But this plugin is much more than simply using Photoshop as an external editor. It creates a persistent link between Lightroom photos and layers in a Lightroom composite image. The “persistent link” means that going back to edit the source images does not invalidate the edits within the layered composite image, nor the edits within the Lightroom view of that composite image. Everything flows through, and you can jump back and forth with your edits and everything just works.
This simple graphic depicts the edit flow that is maintained on an ongoing basis:
Master Image Files
One or more
Lightroom Develop Edits
(of each individual master image file)
Layering and Editing in Photoshop
in the composition image added to Lightroom
Lightroom Develop Edits
of the composition image, such as final cropping
Final Image in Lightroom
All in all, this plugin might be described as:
|“||A slow but mostly-effective way to get a somewhat layer-like experience in a Lightroom non-destructive workflow by using Photoshop as an external rendering engine.||”|
Pros & Cons
Pro: It really works (mostly) — You can do a bunch of stuff to a Lightroom image in Photoshop... clone out complex shapes, add text labels, put a big frilly frame around it, whatever. If sometime later you make further changes to the source image in Lightroom, those changes can be carried right through the Photoshop edits and back into to the composite image.
Con: It requires Photoshop — Photoshop is powerful, but expensive. However, authors of other pixel-editing software could easily make their applications work with the kind of approach I've developed here. It wouldn't surprise me if we see this technique used with Gimp (free), for example. If the folks at OnOne updated their Perfect Layers to employ this technique, it would bring it a heck of a lot closer to the “Layers in Lightroom” myth whose advertisements spurred me to make this plugin. I encourage them to do so.
Con: It's not Fast — Going out to Photoshop to render layers and edits can be pretty slow. If you're using multiple 10-megapixel layers in a 16-bit PSD, it's going to take some time. And a lot of disk space. A 16-bit image with two 10-megapixel layers can run 300 megabytes. The plugin offers various format/compression levels, to allow you to trade off disk space for speed, and vice-versa.
Pro: You Can Do a Lot In Photoshop — Photoshop is slow because it's extremely powerful, and this plugin doesn't limit what you can do beyond warning that if you change the name of a layer created by this plugin, you'll break the link and it won't receive updates when its master image in Lightroom is updated.
Con: It's not Fully Automatic — To have Lightroom changes reflected in the composite image, you've got to invoke a “refresh Photoshop composite” command that the plugin adds to Lightroom. This hassle can be mitigated by using a keyboard shortcut, and you can do all your library holds in one shot if you like, but the simple fact that it's not automatic is a notable bummer.
Con: It's not Always Entirely Smooth — When you edit any Lightroom file in an external editor like Photoshop, Lightroom is pretty good at noticing that the file has changed, and quickly picks up the changes. This generally holds true while working with this plugin, but sometimes Lightroom can be slow to notice changes, leaving you with a “Loading” image in Lightroom even though the image has actually been created. In my limited experience so far, this doesn't happen often, and has cleared itself up within 15-20 seconds, but that's a long time to be wondering what's going on.
Con: Windows vs. Mac Differences — This plugin attempts to provide glue among a lot of components... Lightroom's library, Lightroom's render engine, Photoshop's render engine, the file system, and the operating system. Everything currently works on both systems, but things are smoother on a Mac because I've been able to figure out how to control app-switching manually, something I haven't figured out on Windows yet. But “smoother” is a relative term to begin with, since applications are switching back and forth, it definitely doesn't feel as integrated as one might hope.
Pro: I'm Not Spinning You — It's always nice to hear the truth, isn't it?
After installing the plugin (download link and install instructions are in the upper-right corner), two items are added to the “File > Plugin Extras” menu:
Open as “Photoshop Layers” Composition — Invoke this after selecting one or more images to be used in a layered composition. Each image becomes a layer. The resulting composite image is added to Lightroom as an additional image.
Refresh “Photoshop Layers” Composition — Invoke this after selecting one or more “Photoshop Layers” composite images (the ones created via the item above). Each is refreshed, which means that edits are carried through from the individual photos to Photoshop and back to Lightroom.
Here's an example of what the “Open as” command brings up when multiple images are selected:
As you can see, there are a number of options for what to create, and how to handle the workflow.
A composite image (TIFF or PSD) looks like any other TIFF/PSD in Lightroom, except that it has custom metadata describing it as having been created by this plugin. (It's this custom metadata that allows the plugin to refresh it automatically.) You can view it via the “All Plugin Metadata” preset in Library's Metadata panel. You can also choose “Layered Composite” metadata item in the Library Filter, and in rules for Smart Collections. (I'll likely create such a smart collection automatically in a future version of the plugin.)
This plugin is distributed as “donationware”. I have chosen to make it available for free — everyone can use it forever, without cost of any kind — but unless registered, its functionality is somewhat reduced after six weeks.
Registration is done via PayPal, and if you choose to register, it costs the minimum 1-cent PayPal fee; any amount you'd like to add beyond PayPal's sliding fees as a gift to me is completely optional, and completely appreciated.
Note: a Lightroom major upgrade, such as from Lr4 to Lr5, de-registers the plugin in the upgraded version, so if you want to maintain registration, a new ($0.01 if you like) registration code is needed in the upgraded version. It makes for a hassle every couple of years, I know. Sorry. See this note for details.
For details on plugin registration and on how I came into this hobby of Lightroom plugin development, see my Plugin Registration page.
( Update Log via RSS )
Fixed a but related to stacking the new composite.
Upgraded to the embedded copy of ExifTool to version 9.76.
|20141019.40||Windows Only: Add a one-time check for the POODLE security vulnerability, and alert the user if it exists.|
|20140902.39||New build system|
|20140731.38||Registration fix for Lr5.6|
|20140720.37||More Creative-Cloud support.|
Fixed an issue with Creative-Cloud revalidation.
Lr5.5 and later Creative-Cloud installs can now revalidate themselves if needed.
|20140710.34||Sigh, had a bug in the Creative-Cloud support.|
Now supports Lr5.5+ Creative-Cloud Installs.
|20140704.32||Sigh, introduced an error for some folks with the rebuild the other day.|
Added an "Expunge Plugin Data" section to the plugin manager, to allow plugin data to be cleared from the catalog.
Upgraded to the embedded copy of ExifTool to version 9.60.
Fixed a bug in the "smoother revalidation" stuff recently added.
Upgraded to the embedded copy of ExifTool to version 9.53.
Make the revalidation process smoother, especially for folks using Lr5.4 and later.
Upgraded to the embedded copy of ExifTool to version 9.46.
Update for OS X Mavricks.
Updated the Image::ExifTool library to version 9.39.
|20130613.25||Better support for plugin revalidation.|
|20130611.24||Yet another Lr5 update|
|20130610.23||Final update for Lr5|
|20130501.22||Update for Lr5|
|20130412.21||Build system update.|
|20130328.20||Fix for the registration system.|
|20130209.19||More build-system maintenance|
|20130206.18||Tweak for my registration system|
Upgraded to the embedded copy of ExifTool to version 9.15.
|20120608.16||Fix an "attempt to perform arithmetic on field" error.|
Update to handle the Mac App Store version of Lightroom.
Tweak for Lr4.1RC2.
Enhanced the send-log dialog to hopefully make reports more meaningful to me, yielding, I hope, the ability to respond more sensibly to more reports.
|20120330.14||Update to handle 4.1RC|
|20120309.13||Update to the debug logging to better track down timing issues that might arise.|
More on the march toward Lr4, including upheaval in the code to handle Lightroom APIs being discontinued in Lr4.
|20120114.11||More tweaks for Lr4b|
Update for Lr4 beta: explain in the plugin manager that the plugin can't be registered in the beta.
Updated Image::ExifTool to version 8.75.
Had issues with the registration button sometimes not showing.
Added the ability to auto-stack with the main source image.
Added a note to the dialog text that one shouldn't “Edit Contents” on the smart-object layers that the plugin creates: any such edits will be lost on refresh.
Added an “In Layered Composite” custom-metadata item to track photos used as layers in composite images, mostly so that I can protect such images via a smart collection in my PhotoSafe plugin. This new metadata is a bit fragile because Lightroom doesn't offer a plugin hooks when an image is deleted, so the plugin can't reset this bit when the component image is removed. I could try to tap into the Publish hooks to handle this, but that seems like overkill, so for now I've made this “In Layered Composite” item user adjustable, so you can manually unset it as needed.
To help keep track of what's part of what, I added a new plugin-extras command, “Isolate Related “Photoshop Layers” Images”. When applied to a layered composite image, it shows the layered image and the images that make up its layers. When applied to an image that's included as a layer, it shows that parent layer and all its children (which includes the selected image).
Removed the 10-layer limit on image creation, replacing it with an interstitial dialog warning if more than five images are selected, giving the user the chance to abort or continue. This allows creation of many-layered objects, while still providing protection against the accidental invocation of the plugin while a zillion photos are selected.
Added a startup task to clean the temp folder of any left-over temporary files created by the plugin.
The plugin seems stable enough, so I've moved it to the "donationware" model like most of my other plugins.
Updated the Windows keyboard shortcut for the Refresh "Photoshop Layers" Composition menu item to Alt-F S F, and added the items to the various TranslatedStrings.txt files so that it can be customized (though such customization is fragile because it's lost with each plugin update).
Added a TIFF option. For the moment, I'm just exposing the various TIFF config options right in the dialog, but it's ugly, so may try to figure out a way to stuff them somewhere else in the future.
In earlier versions I'd been adding notes to the new layered-image's metadata about what version of this program had created it, etc, but I realize now that this overwrites the caption and such in Lightroom if the metadata is imported from the image, so starting in this version none of that stuff is written to layered images.
Might have figured out a way to get rid of the "metadata is out of date" triple-bullet badge.
Made faster to generate / refresh compositions (starting with new compositions created via this version of the plugin or later).
Fixed a problem whereby the plugin would get ahead of Photoshop in cases where Photoshop was just being slow.
On Windows, if the plugin can't figure out where Photoshop.exe is on its own, ask the user.
The way I was launching Photoshop on Windows didn't seem to work for some people. I don't understand why, but I've switched to a new way by querying the OS for the command registered to handle PSD files, and launching that app. Hopefully this will work for everyone.
Various small fixes/enhancements.
|20110426.3||Fixed silly "InitPlugin:130" bug introduced in previous version.|
|20110425.2||A few bug fixes from early feedback. Added a cancelable progress bar to the rebuild operation.|
|20110425.1||First public beta release|