프로젝트iOS · Shipped

K-emoji 앱 아이콘.

얼굴 위에 한글을 올린다.

on-deviceno accounts18 localesiOS

k-emoji


얼굴 위에 한글 자모를 올리는 셀카 앱이다. 눈 위에는 ㅋㅋ, 볼에는 ㅠㅠ. 한국 사람들이 웃고 울 때 평소에 치는 그 글자들이다.

얼굴 인식은 Apple의 Vision 프레임워크로 휴대폰 안에서 처리한다. 가입도 업로드도 없다. 사진이 기기 밖으로 나가지 않으니 서버에서 유출되거나 사라질 일도 없다.

글자들이 이미 그 역할을 하고 있어서 만들었다. 한국어 채팅에서 ㅋ와 ㅠ는 장식이 아니라 웃음과 눈물 그 자체다. 그게 눈에 들어오고 나니 마스크로 만드는 건 당연했다.

분홍 비니를 쓴 사람 뒤로 한글 패턴이 반복해서 나타나는 배경 모드. K-emoji로 만들었다.
분홍 비니 — 배경 모드

움직이는 모습

마스크가 작동하는 짧은 클립 세 개. 글자가 얼굴에 내려앉고, 뒤로는 패턴이 화면을 채운다.

분홍 비니를 쓴 사람 뒤로 한글 패턴이 반복해서 나타나는 배경 모드. K-emoji로 만들었다.
분홍 비니 — 배경 모드
노란 벤치에 앉은 사람을 한글 패턴이 둘러싼 K-emoji 브랜드 컷.
노란 벤치 — 브랜드 컷
눈을 ㅠㅠ로 가린 금발의 사람. K-emoji로 만들었다.
금발 — 얼굴 마스크

전과 후

같은 셀카, 탭 한 번 차이. 맨얼굴로 들어가서 ㅋㅋ를 쓰고 나온다.

마스킹 전, 단색 스튜디오 배경 앞에서 웃는 사람. K-emoji.
전
같은 사람, 같은 단색 배경. 눈을 ㄱㄱ로 가렸다. K-emoji.
후
마스킹 전, 단색 스튜디오 배경 앞에서 머그잔을 든 분홍 비니 차림의 사람. K-emoji.
전
같은 분홍 비니 차림의 사람 뒤로 ㄱ 패턴이 반복된다. 배경 모드, K-emoji.
후

얼굴 모드

글자가 얼굴 위에 바로 올라간다. 눈 위로 ㅋㅋ, 한쪽 볼에 ㅠ 하나. Add Jamo를 눌러 글자를 더 얹고, 색(흰색, 검정, 노랑, 분홍)과 굵기(Thin부터 Heavy까지)를 고른다. 가는 ㅎ는 차분해 보이고, 굵은 ㅎ는 화면 절반을 덮는다.

얼굴 모드로 눈을 ㅎㅎ와 ㅠㅠ로 가린 두 사람. K-emoji.
얼굴 모드 — 마스크 둘
K-emoji 편집 화면. Add Jamo 버튼, 색과 굵기 조절, 모델의 눈은 ㄱㄱ로 가려져 있다.
편집기 — 자모, 색, 굵기

배경 모드

사람만 오려 내고 뒤쪽을 글자 하나로 빽빽하게 채우는 모드다. LETTER(LOL ㅋ, SMILE ㅎ, CRY ㅠ, TEARS ㅜ)와 그 글자가 반복될 BACKDROP 색을 고른다. 결과는 K-pop 포스터 같다. 앞에는 내가 있고, 뒤에는 그때 기분이 글자로 적혀 있다.

마젠타 배경 앞의 사람, 뒤로 ㅋ 패턴이 반복된다. 배경 모드, K-emoji.
결과 — 마젠타 배경
K-emoji 편집 화면. 배경 모드의 LETTER와 BACKDROP 조절.
편집기 — 글자, 배경
파란 배경에 ㄱ 패턴이 반복되고, 그 앞에 사람이 서 있다. 배경 모드, K-emoji.
파란 배경 — 전체 프레임

휴대폰 안에서만

얼굴은 휴대폰에서 돌아가는 Apple의 Vision 프레임워크가 찾는다. 어디로도 아무것도 보내지 않는다. 만들 계정도 없고 앱 뒤에 서버도 없다. 얼굴은 남의 데이터베이스에 가장 남기고 싶지 않은 정보라서, 서버를 아예 만들지 않았다.

내 iPhone 안에서셀카사진 보관함에서얼굴 인식Vision framework자모 마스크ㅋ · ㅠ · ㅎ저장내 사진으로
서버 없음 · 계정 없음 · 휴대폰 밖으로 나가는 것 없음

왜 이렇게 만들었나

왜 자모인가. 한글 자모는 모양 자체가 그림처럼 읽힌다. ㅋ는 웃음, ㅠ는 울음이고, 한국 사람들은 매일 그런 뜻으로 친다. 그래서 이 마스크는 아무 스티커가 아니다. 얼굴에 올리기 전부터 글자에 이미 뜻이 담겨 있다.

계정이 없는 건 일부러다. 얼굴 데이터만큼 개인적인 정보도 드물다. 안전하게 지킨다고 정직하게 약속하려면 저장할 곳을 아예 두지 않는 수밖에 없다. 로그인도 서버도 없고, 사진 사본은 내 휴대폰 말고 어디에도 없다.

출시부터 18개 언어. 이 앱을 쓸 사람들은 젊고, 한국에만 있지 않다. 그래서 "영어 먼저, 나머지는 나중에"가 아니라 첫날부터 번역해서 내놓았다.

on-device
100%
서버
0
언어
18
모드
2