where it started

uncamera is a product of my waning desire to open my phone camera app anymore.

you see, as smartphone cameras have improved over the years i’d begun to notice a feeling creeping in about the photos i was taking: they felt fake.

this left me wondering: how could i make a photo feel like how i actually remembered it? the goal for me when taking photos wasn’t to capture life itself, but to capture memories as i remembered them; as i felt them.

photographers thankfully had an answer: shoot analogue or edit your photos.

origin stories

guillermo reverter is one of my dearest friends. he also happens to be an excellent marine wildlife videographer, photographer, conservationist and all round good guy.

we lived together in london for many years, and in that time he would show me the various workflows he’d go through when editing images and footage - in particular, color grading.

it facintated me how much time he would spend chasing a ‘feel’ simply by adjusting color scene-to-scene, whilst working painstakingly to retain something as simple as a subject’s skin tone.

he also shot a lot of analogue photos, and loved shooting on experimental film stocks like lomochrome purple. in fact, it was through living with him i developed my love for analogue photography and weird film stocks.

photos by brian lincoln

i downloaded davinci, and began to experiment with color grades.

what i knew about color theory and color spaces as a designer certainly helped me have a good amount of intuition doing this kind of work, but at this stage i had just about learned what a lookup table was and started trying to understand the various LUT formats, color spaces, and a pipeline began to take shape in my mind.

my first experiment was to try and work backwards from a set of simple reference images - could i take a set of sample images from a particular film stock (such as the aforementioned lomochrome purple) and move dials around long enough until the image i was editing actually looked like it came from the film stock?

the film stock I chose coincidentially wound up being a great place to start as it only had one real goal - replace greens with purples and move blues into a more teal space. the only real limitations i had were that it would need to work specifically with the iPhone’s color space.

after a day spent twiddling dials against a photo of my parents very fat cat (lux), i had my first ‘holy shit’ moment.

while the color grading wasn’t an apples to apples comparison and certainly wouldn’t respond as unpredictably as a real film shot, the process did cement that first step of the image processing pipeline and validate to me that intentional color could dramatically affect the feeling of a photo.

i downloaded a handful of additional .cube files that were compatible with the display p3 color space to fill the app up* and begin testing interactions

*these didn’t make it into the app, for both quality and licensing reasons.

never underestimate a camera interface

cameras are a creative tool and thus have a lot of variables that can dramatically affect the output image. before even designing the interface i had to ask a tough question of the experience:

- how much control did i actually want to offer

- what would create the right kind of constraints?

i began with .cube selection, as this was something i felt could be a character building moment for the camera. i knew i wanted a bigger shutter button than the native camera and reachable controls that would survive rotation for either right or left-handed photographers.

i tried a swipe-on-viewfinder to update the lookup table selected and applied, but it somehow didn’t feel like a tactile camera. that ‘but’ became a design philosophy for the whole product. uncamera had to feel like a physical object, not a piece of software.

i started experimenting with a dial around the shutter button that would rotate, and snap into place with your selection.

the dial felt right to me off the bat. haptics were initially missing, as well as the ability to quickly shortcut to another lut but once those were in it genuinely felt like a nice control, analagous to a real camera’s focus ring or iso dial. it also gave uncamera the kind of character i was looking for.

during early testing, a friend of mine (alex) shared this message when giving feedback of the interface.

the nice thing about this source of inspiration was that the LCD could be used for anything inside the app, potential film roll limits or even just something as simple as showing off which lut you had selected - this wound up being the most valuable use of the component.

after this i put in some experimental ‘finishes’ to try and emulate analog output along the top of the viewfinder these applied:

- grain tiles - eventually baked into the app as a default with each ‘film stock’ having its own individual grain values

- bloom

- halation

- chromatic aberation

the next thing to do of course was to create custom film canisters for each of the various lookup tables in the app.

there’s a single canister and each of the film can textures is designed in figma.

here’s an idea of how the output images look against their canisters :)

themes and finishing touches

one of the things i wanted to get in early on was themes - these all took their own time in refinement and various test builds.

the final* product

there’s still minor refinements happening every day, on both the lookup table front and the app itself. right now i’m working towards the iPhone Duo layouts and some surprise features that are only possible on a folding device.

some thank yous ❤️

this project has taken me over 4 months from beginning to end, and i’ve learnt a considerable amount about color, color spaces, look-up tables, swiftui and blender.

i’m proud to say the end product is something with soul, but it wouldn’t have been possible without early testers:

- guillermo reverter - it’s probably fair to say you were the real inspiration of this product and it’s a privilege to know someone as dedicated to their craft as you

- joel auterson - my former improbable colleague and friend who not only used and tested the app, but wrote about uncamera in a blog post that hit the top of hackernews and made me pick up the app again after almost giving up on it

- josh ward - my first power user with hundreds of sessions across 50+ builds, you reported crashes, suggested features, shared the beta and shaped the direction of uncamera more than you know

- diego mirones - my old high school friend who caught wind of the beta and made a lot of feature suggestions and consistently sent me shots

- ben & kush - the pictures you sent me proved to me uncamera was doing the job of capturing the feeling i was chasing

uncamera is now on the app store, feel free to give it a go :)