So that was a fuckin long one, eh?
Nearly 4000 words. Nearly 150 images. Sheesh.
There is absolutely no universe in which I would’ve attempted this project if I’d known how long it would take. The sheer number of hours I poured into this thing… I don't even want to know the real answer.
It was the classic “too many ingredients” pilot problem. I wanted a web of intersecting characters and enough intrigue to fuel an entire season’s worth of plot threads. My grand plan: take screenshots from as many noir classics as I could find and stitch them into one narrative world. Beautiful idea. Completely deranged in practice.

I misjudged processes. I rewrote entire sections because of technical roadblocks. I spent hours — days — just trying to develop a workflow that didn’t make me want to walk into the sea with a pocket full of lead and a belly full of Jim Beam.
But going back in time (and moving forward), I’d approach all of this very differently. I learned a lot from doing everything the hard way, and eventually landed on a workflow that’s way simpler and actually sustainable.
So here’s the path I took — what worked, what didn’t, what I’d never do again. Think of this like my director brain colliding with my writer brain. It’s basically making a miniature storyboard for a film that doesn’t exist yet. And honestly? Any aspiring director should try this at least once. It’s a fantastic storytelling exercise.
Step 1: Conceptualizing
There are really two ways to begin:
- Build a story first, then find images to support it.
- Or find images first, and build a story around what those images allow.
After multiple attempts at this sort of image-fiction hybrid — 12 Years a Maclunkey, BondxWick, Limitless.exe, and now Crooked City — I’ve learned to prioritize the second method. If I want visual consistency (and trust me, I do), it’s simply the saner option.

Keeping the image pool small is crucial. I loved concocting the sprawling conspiracy-board energy of A Spark in the Dark, but continuity spiralled out of control almost instantly. Even after cutting a majority of the films I’d canvassed for my research, my main cast was still drawn from ten different titles:
Laura, Double Indemnity, The Maltese Falcon, Sunset Boulevard, The Asphalt Jungle, La Notte, The Black Vampire, The Big Heat, Gilda, and Out of the Past
That’s after trimming, mind you. And not even counting all of the inserts, establishing shots, and silhouettes I pulled from other films. Next time I’m limiting myself to 2–5 films max — for both consistency and my own mental health.

Finding visually compatible films helps enormously. Characters are the anchor, so I try to identify natural doppelgängers across titles — similar face shapes, hairstyles, body types. Using the same actor across multiple movies is a godsend. Originally much of my anchoring was based around consistent outfits, but I found out very early in the testing process that this metric is much less helpful than you’d think for creating visual consistency.
Once I know who my cast “is,” I comb through the films to identify which scenes actually exist between for those characters. Those scenes become the foundation. This is probably the most important thing I learned: build your characters around available scenes as a whole — not just specific screenshots. Treat the existing scenes as your narrative beats. Forcing a brand-new story beat onto a single piece of mismatched imagery is possible but rarely immersive.

Jumping between films inside the same scene hardly ever works as well as you think it will. It’s better to contain each beat within one film and reserve transitions for the moment the narrative actually moves between films. Though inserts and establishing shots exist free of this rule’s thumb.
However, other approaches exist, too—like pairing two franchises (hello BondxWick) and matching scenes from each, or even photoshopping frames together. Or using a single film and rewriting the story entirely (Limitless.EXE style). But most of what I’m describing here applies specifically to Crooked City.
Step 2: Asset Collection
This step burned me the hardest. I went in blind — eager to build something out of noir imagery, yet I’ve barely seen any noir films. Out of the dozens of titles I pulled from, the only one I’ve actually watched was Sunset Boulevard. Not ideal.
ShotDeck basically saved me. It’s an absurdly good resource — professionally curated, high-res, hand-tagged, and blissfully free of duplicates. Search “black-and-white noir gun close-up” and that’s exactly what you’ll get and only what you'll get. I swear this isn't a sponsored post (ShotDeck, call me), but it’s genuinely worth the subscription and I recommend everyone at least check out the free trial.

Armed with ShotDeck, I promptly lost my mind and collected around 5,000 screenshots. I was trying to match everything — suits, hair, silhouettes, vibes — because I didn’t yet have an ounce of a clue which direction the story would go. Over two-thirds of the films I collected images from ended up going completely unused (for now, at least).

I also grabbed 8–12 high-quality headshots of each actor I wanted to face-swap, trying to figure out what would give the most consistent results.

In hindsight, once I discovered what matters during the testing phase, I could’ve avoided a lot of that chaos.
Step 3: Testing
For face-swapping, I used a free online service. There are dozens if not hundreds of free ones out there. Some may work better than others depending on what kind of project you want to use them for. I found one that gives 100 generations a day. Only a lunatic would hit that limit… I hit it twice.
Not all images swap well, so I learned quickly not to get attached. Angle, lighting, lens distortion, proximity — any of these can doom an otherwise perfect or iconic screenshot. And I probably found every doomed scenario imaginable.
The biggest lesson: facial structure and hairline matter more than clothing or lighting. I originally cast Adam Driver, Jessica Chastain, and Amanda Seyfried in major roles, but their bone structures clashed comically hard with the skulls in the original images I was trying to swap them into. It instantly killed immersion — often comically so.

The sweet spot for reference images ended up being a 45-degree headshot with relatively hard lighting. It shows depth, jawline, and silhouette in one go.
For the target images, any character directly facing the camera or angled within a 45 degree cone usually worked. Side profiles were almost always cursed, and anything beyond that is certified nightmare fuel.

I also discovered that some original frames just “liked” being swapped; they were reliable across multiple actors. When I had to recast Adam Driver as Reese, I tested several options (Jake Gyllenhaal, Ryan Gosling, Sebastian Stan, Cillian Murphy) using those same reliable frames. Fassbender won purely on jawline and recognizability.

My workflow then became:
- Find ~10 headshots of the actor.
- Swap them onto a handful of test frames.
- Delete the headshots that produced the worst results.
- Rinse and repeat until I had 3–4 “golden” headshots (labelled A–D) I could rely on.
- Always run “A” first, then B through D if A failed.

Multiple faces in a frame created another problem: the software scans left to right across the images and swaps the first one it finds — be it a background extra, painting, or even sometimes a statue. I solved this by masking out all non-target faces with solid black boxes in Photoshop before uploading. Later, during fine tuning process, I recombined everything.

Face-swapping is a tightrope act: angle, lighting, texture, shape. I scrapped entire sequences, iconic images, even full films solely because the swaps were unconvincing or inconsistent. Losing the original narrator, in particular, was tragic — and required a near page-one re-write because I’d already written the story and favourited my frames before trying to test the images. The original draft was much more heavily structured around Le Doulos and Out of the Past, but each film was reduced to only four shots each out of 140+ total images by the end of the process.
My biggest recommendation: only commit to a screenshot, film, or even character after testing whether a good swap is possible. Save yourself the heartbreak.
Step 4: Structuring
In reality, structuring and testing happen mostly simultaneously, but the testing phase starts slightly before. I structured the story around whichever images produced the best swaps, and tested new images based on what the story needed next.
Using what assets I collected in Step 2, I picked a number of scenes of these recurring characters I’d found (completely unaware of their actual context) and arranged them into a rough narrative arc based purely on the vibe I got from the images. From there, I chose the frames that best communicated each beat, adjusting the beat if necessary to justify the most visually consistent images.
By the end of this stage, I could “watch” the story visually without any text and it would somewhat make sense.

Then I wrote the prose — using images as punctuation, reactions, or transitions (just like how trailers cue audience emotion by cutting to a character’s expression or reaction to a joke, stunt, or scare).
Once my three-act set pieces were complete, I added connective tissue: establishing shots, inserts, anything needed to transition smoothly between films and scenes. This is where ShotDeck’s tag system shines.

Need a New York skyline? Search, pick, fine-tune — Donezel Washington.
Step 5: Fine Tuning
Fine tuning is the final polish — small details, micro-adjustments, the stuff you should only do once you know exactly which images you’re keeping.
If you want to half-ass it, you can probably skip all of these steps, but what’s the point of attempting something like this if you’re not going to give it your best effort?
Note: the image compression on Peliplat may make some of the adjustments seem less perceptible in these crops, but trust me: they're very noticeable at full-resolution.
For Crooked City, this fine-tuning process boiled down to six key steps:
1. Colour Correction
Working in greyscale made this much easier. Every noir film has its own tint — blue, green, silver, etc — but converting everything to a pure greyscale workspace in Photoshop neutralized all of that in a single click. It also helped eliminate stray colour artifacts left behind by swapping coloured headshots onto B&W film stock.

Colour workflows, however, require matching temperature, tint, shadows, brightness, the whole shebang. All the more reason to choose films and screenshots that already closely resemble each other — though it’s worth noting the face swaps go much smoother when using coloured images for both inputs.
2. Masking
For multi-person frames, I aligned the multiple versions of the screenshot on top of each other in Photoshop and removed the black boxes layer by layer so no swapped face got accidentally covered in the next step.

3. Blending
The face-swap software compresses the entire image, often adding ugly artifacts — especially immediately surrounding the swapped face. To fix this, I kept the original image on top and erased only the old face — soft brush, low opacity — letting the swapped face underneath peek through. Sometimes only the eyes, mouth, or jaw needed replacement in order to retain facial texture from the original images that were lost in the swap. Sometimes hairlines needed major surgery.


4. Texture Matching
High-res digital headshots superimposed on grainy 1950s film stock look ridiculous without adjustment. I added a mix of gaussian blur (0.2–3px) and noise (1–4px) to integrate the swapped textures. Contrast and brightness got micro-tweaks.

5. Cropping
Everything needs to match aspect ratios. Inconsistent framing breaks immersion immediately unless done deliberately with purpose. So also keep this in mind when choosing your frames because you may end up losing important information depending on the severity of the crop. For Crooked City, I went for Academy Ratio (1.375:1).

6. Colour Grading
I used an analog film filter site (https://29a.ch/film-emulator/) and sifted through endless variations until one gave the final images a unified style I liked — an ever-so-slight green tint, boosted highlights, and stronger contrast. Then an additional layer of grain to glue everything together.
I didn't need to composite multiple frames for this project, but the same methods would apply if I did.

Conclusion
And that’s about it. After the colour grading is complete, the images are pretty much ready to go, and your article is done — except for the thumbnail of course.
I’d love to see others give this method a try. Give it your own spin. Build on it. Improve it. Try something different.
I know Peliplat is mainly a site for “writing” rather than “photoshop show-and-tell”, but I really see the potential for articles to be something bigger than the sum of their parts. Sure, the words are the backbone, but high-quality thought-out visuals can do so much to elevate a piece beyond simple analysis & opinion and into an almost different medium entirely.
And seeing as though the image functionality on this site exists in the first place, I see no reason not to utilize it to its full extent.
I look forward to seeing what the community creates with this knowledge.
Learn from my mistakes so you don’t have to make them yourselves.
Thanks for coming to my TED talk.




Share your thoughts!
Be the first to start the conversation.