실제 동물을 수집형 카드로 만들어주는 게임을 만들었습니다 - 길고양이와 유기동물에 대한 관심을 높이는 데 도움이 되길 바랍니다
I built a game that turns real animals into collectible cards - and I hope it helps people notice strays
핵심 요약
실제 동물을 촬영해 수집형 카드로 만드는 게임 'Snoutlas'를 개발해 유기동물에 대한 관심을 유도하려는 프로젝트.
- Snoutlas 앱 — 실제 동물을 촬영해 수집형 카드로 만드는 게임임.
- 유기동물 인식 — 주변 동물을 관찰하고 기록하며 유기동물에 대한 관심을 유도함.
- 기술 스택 — SwiftUI, SwiftData, Supabase를 활용해 개발함.
- 게임 요소 — 카드 희귀도, 수집, 거래 등 게임적 요소를 통해 동기 부여함.
영상에 나오는 고양이는 내가 밖에서 실제로 만난 녀석이야. 카메라를 들이대니까 앱이 동물을 인식해서 사진을 수집용 카드로 만들어주더라고. 다이내믹 아일랜드가 있는 아이폰에서는 카드가 마치 즉석 사진처럼 그 안에서 '출력'되고, 폰을 움직이면 사진이 현상되는 방식이지.
앱 이름은 Snoutlas야. 쉽게 말하자면 포켓몬처럼 동물을 수집하는 건데, 배틀 같은 건 없어. 그냥 밖으로 나가서 여기저기 돌아다니고, 주변을 좀 더 세심하게 관찰하면서 고양이, 강아지, 새, 야생동물, 곤충 등 우리 주변에 사는 온갖 생명체들로 도감을 채워나가는 게 목적이야.
내가 사는 동네에는 길동물이 진짜 많아. 근데 사람들은 시간이 지나면 익숙해져서 그냥 무심하게 지나치거든. 마당에 있는 고양이 한 마리, 가게 앞에 있는 강아지 한 마리, 이런 식으로 말이야.
나는 앱이 사람들에게 동물을 관찰하는 습관을 만들어줄 수 있을지 궁금했어. 처음에는 그냥 멈춰서 사진 한 장 찍는 정도겠지만, 다음번에는 물이나 사료를 챙겨주거나, 병원에 데려가거나, 임시 보호처를 찾거나, 아니면 아예 입양을 결심하게 될지도 모르잖아. 앱 하나로 길동물 문제를 다 해결할 순 없겠지만, 적어도 그냥 지나쳤을 생명체를 한 번 더 눈여겨볼 이유 정도는 만들어줄 수 있지 않을까 싶어.
그냥 딱딱한 도감처럼 느껴지지 않게 게임 요소도 좀 넣었어. 카드 등급도 랜덤이고, 부스트나 팩, 아트 변형, 꾸미기 같은 것들도 있지.
동물 배틀 같은 건 없어. 새로운 종을 발견하고, 예쁜 사진을 찍고, 컬렉션을 늘려가는 재미에 집중했거든. 카드는 공유하거나 교환할 수도 있어. 나중에는 다른 나라에 사는 동물들도 수집할 수 있게 될 거야. 한 사람에겐 흔한 동물이 다른 나라 사람에겐 희귀한 카드일 수도 있으니까. 사진이 예쁘면 사람들이 더 적극적으로 교환하려고 하지 않을까?
앞으로 추가하고 싶은 기능들:
- '반려동물', '길동물', '야생', '도움 필요' 같은 라벨 기능
- 검증된 보호소 동물들을 카드로 만들고 입양 정보 링크 연결
- 잃어버린 반려동물을 찾을 수 있는 도구 (주인이 다른 사람의 사진 속에서 자기 동물을 알아볼 수 있게)
- 동물 복지 단체와의 파트너십
- 수익금 일부를 동물 보호에 투명하게 기부하는 시스템 (캠페인이나 특정 구매 건에 한해서)
마지막 건 아직 계획 단계야. 제대로 하려면 검증된 파트너도 필요하고 법적, 재무적 구조도 확실히 잡아야 하니까.
안전이랑 개인정보 문제도 신중하게 고민 중이야. 현재 지도는 대략적인 반경만 보여주고, 사진이 찍힌 정확한 위치는 절대 공개 안 해. 다음 업데이트에서는 잃어버린 반려동물을 찾는 경우처럼, 사진을 찍은 사람에게 정당한 이유를 설명하고 정확한 위치를 요청할 수 있는 기능을 넣을 수도 있어. 물론 위치 공유 여부는 사진을 찍은 사람이 직접 결정하게 할 거고.
개발자 입장에서 보면, 이 프로젝트는 어느새 작은 소셜 네트워크가 되어버렸어. 동물 인식, 도감, 피드, 친구, 댓글, 선물, 거래, 지도, 모니터링, 중복 사진 방지, 오프라인 포획, 인앱 결제까지 다 들어가 있거든.
SwiftUI, SwiftData, Supabase로 만들었고, 개발 내내 Codex를 코딩 파트너로 엄청나게 활용했어. 큰 기능을 단계별로 쪼개고, 백엔드 계약이나 마이그레이션 작업하고, 생성된 코드 검토하고, 위험한 부분에 테스트 코드 짜는 것까지 전부 다 말이야.
화려한 카메라 애니메이션 만드는 건 재밌었지만, 진짜 골치 아팠던 건 위치 정보 보호, 같은 동물을 찍은 사진을 중복으로 처리하지 않으면서도 합법적인 사진은 걸러내지 않는 로직, 오프라인 포획의 안전성, 그리고 모든 소셜 기능을 일관성 있게 유지하는 거였어.


