오늘 해낸 것 (2026-08-01)
이 글은 Daily Log 시리즈의 119번째 기록입니다. (총 155개)
오늘 한 일
- 모래게임 Sandrop
- 일일 보상을 상자에서 카드로 — 고르면 카드가 뒤집히고 액자 안에서 받은 것의 아이콘이 튀어나오며 꽃가루가 터진다
- 고르기 전 카드가 숨쉬듯 커졌다 작아지게. 카드마다 박자를 밀어 아홉 장이 따로 움직인다
- 일일 보상 화면만 어두운 배경으로 — 밝은 배경에서는 어두운 카드가 떠 보였다
- 보상 구성 변경 — 아이템 한 장이 3종을 다 주던 것을 종류별 한 장으로. 코인 4 · 아이템 3 · 하트 2
- 하트·코인 아이콘을 직접 그린 그림으로 교체
- 손으로 그린 그림을 도안으로 넣는 경로를 만듦. 태극·복주머니를 코드로 그리던 것에서 그림으로 교체
- 릴리스 서명 — 업로드 키를 만들어 연결. 이제 스토어에 올릴 수 있는 파일이 나온다
- 레벨 동결은 출시 후로 미루기로 결정
- 언어 전환(한국어/영어) — 문구 103개를 한곳으로 모으고 설정에 선택지를 넣음
- 광고 보고 하트 받기(하루 1회) — 하트가 0일 때 코인을 거치지 않는 탈출구
- 한 수도 안 둔 판은 뒤로가기에 확인 없이 바로 목록으로
- 상점 아이콘 규칙 정리, 게임 방법을 모달로. 완성작 갤러리 탭은 안 만들기로 결정
- 룸톤 Roomtone
- 매장용 앱을 홈·곡·관리자·설정 네 탭으로 다시 짬. 저절로 재생되던 것은 걷어냄
- 올린 음원을 MP3 320k로 굽고 음량을 −16 LUFS로 맞추는 파이프라인을 넣음. 변환·업로드를 bat 하나로 묶음
- 재생 바를 좌·중앙·우 3단으로 다시 디자인, 볼륨은 작은 팝업으로
- 장르에 섞여 있던 악기를 ‘편성’ 축으로 분리. 곡마다 원본 파일명을 저장
- 같은 프롬프트로 제목이 겹치던 17곡에 서로 다른 제목을 지어주고, 음량·길이가 빠진 곡을 채움
- 매장 업종을 계정으로 옮김 — 운영자가 관리자에서 계정별로 정하고, 매장 설정엔 읽기 전용으로 표시
- 좋아요 1개 이상이면 홈에 ‘좋아요 표시한 곡’ 재생목록이 뜨게 함
- 곡별 재생 통계를 붙임 — 재생 시점 업종·시각을 남겨 업종별·시간대·빈도·기간을 봄(오늘부터 기록)
- 관리자 쪽을 운영자 콘솔로 — 서비스를 쓰는 계정 목록과 계정별 설정 편집
- 룸톤을 GitHub 저장소에 연결하고 올림
- 블로그
- 7월 30일치 기록 정리
- 콘티온 Conti On
- 콘티에 담긴 곡마다 메모 한 칸을 달 수 있게 함 — “이 곡 키 -2”, “간주 길게” 같은 걸 곡별로. 콘티 전체 메모는 그대로 두고 별개. 마지막 작성자 이름 표시, 승인 전에만 편집, PPT엔 안 나감
어려웠던 점
-
모래게임 Sandrop
- 코인이 게임 화면에서 어둡게 보여 밝기를 올렸더니, 이번엔 빛 받은 부분이 하얗게 뭉개졌다. 재보니 코인의 60%가 순백으로 날아가 각인이 사라진 상태였다. 밝기를 올리는 방법을 세 번 갈아 끼운 끝에 맞는 걸 찾았다
- 손으로 그린 그림을 넣었더니 복주머니의 파란 리본과 금색 동전이 통째로 사라졌다. 기존 축소 방식이 픽셀 그림의 경계를 뭉개면서 색을 없앤 것이었다
- 그림 두 장을 바꿨는데 500탄 중 469탄의 그림이 통째로 바뀌었다. 도안을 난이도 순으로 정렬해 배정하는 구조라, 하나를 바꾸면 뒤가 전부 밀린다. 출시 후에 이러면 유저가 지나온 레벨이 다 달라진다
- 새로 그린 복주머니가 어느 난이도에도 안 맞았다. 처음엔 다시 그려서 그런 줄 알았는데, 예전 것도 똑같이 쉬웠다. 그림의 86%가 한 색이라 부을 순서를 고민할 거리가 없는 도안이었다
- 릴리스 서명을 붙이면서 “키가 없으면 빌드가 실패한다”고 적어 놨는데, 실제로 돌려 보니 그냥 성공하고 서명 없는 파일이 나왔다. 막으려던 사고를 그대로 두고 있었던 셈이라 다시 고쳤다
- 문구를 한곳으로 모으니 상수로 두었던 자리가 전부 컴파일 오류가 났다. 상수는 빌드할 때 값이 정해져야 하는데 문구는 실행 중에 바뀐다
- 언어를 바꾸고 뒤로 나갔더니 목록 화면이 옛 언어 그대로였다. 이미 만들어진 화면은 다시 만들 이유가 없으니 당연한 일이었다
- 화면 테스트 12개가 한꺼번에 깨졌다. 테스트가 찾는 문구는 한국어인데 테스트 환경의 기기 언어가 영어라, 기본값이 영어를 골랐다
- 영어로 바꾸니 설정 줄이 37픽셀 넘쳤다. 화면이 한국어 기준으로 짜여 있어서 문구가 길어지자 밀려났다
- 광고를 보고 하트를 받는데, 하트가 4개면 5개를 준다고 적어 놓고 1개만 들어왔다. 하루 한 번뿐인 기회를 5분의 1 값에 쓰게 두고 있었다
-
룸톤 Roomtone
- 곡을 올릴 때 제목을 프롬프트 보고 자동으로 짓게 하고 싶었지만, 그러려면 외부 API와 비용이 든다. 자동화하지 않고 필요할 때 수동으로 짓기로 정했다
- 운영자 화면에 계정 관리를 어디까지 넣을지 갈렸다. 계정 목록을 보고 계정별 설정을 바꾸는 게 맞지만, 매장이 자기 계정으로 로그인하는 구조가 아직 없어 다계정을 다 만들어도 매장 앱이 어느 계정인지 못 가린다. 지금은 계정 하나짜리 목록·편집까지만 하고, 두 번째 고객을 받는 때를 계정별 로그인 붙이는 시점으로 미뤘다
-
콘티온 Conti On
- 곡별 메모를 댓글처럼 여러 개(누가·언제 달린 스레드)로 할지, 곡마다 한 칸으로 할지 정해야 했다. 스레드는 새 테이블·CRUD가 붙어 무겁고, 실제 필요는 곡별 지시 한 줄이라 한 칸으로 정했다
- 잠긴(승인된) 콘티에서도 메모를 달게 할지 갈렸다. 좌석 안내는 잠겨도 자막 담당자가 바꾸지만, 메모는 진행 논의라 콘티 전체 메모와 같은 규칙(승인 전에만)으로 통일했다
배운 점
- 모래게임 Sandrop TIL 20으로 정리
- 회전은 원근이 있어야 뒤집혀 보인다
- 반 넘게 돌면 거울상이라 되돌려야 한다
- 그림 그리는 객체는 프레임마다 새로 생긴다
- 밝기를 곱하면 밝은 부분이 날아간다
- 색을 지키며 밝히려면 밝기만 따로 다뤄야 한다
- 픽셀 그림은 최근접으로 줄인다
- 도안 난이도는 색 개수가 아니라 면적 분포가 정한다
- 설정을 비워 두는 것만으로는 사고를 못 막는다
- 업로드 키는 잃어도 복구된다
- 번역이 빠진 걸 컴파일이 잡게 만들 수 있다
- 언어에 따라 변하는 값은 상수가 될 수 없다
- 테스트는 기기 언어를 따라간다
- 레이아웃은 만들 때 쓴 언어에 맞춰져 있다
- 한도가 있는 보상은 주는 양이 아니라 받는 양을 보여줘야 한다
- 룸톤 Roomtone TIL 2로 정리
- 업로드가 형식을 안 알려주면 확장자로 정한다
- 음량은 재생 때가 아니라 올릴 때 파일에 굽는다
- 태그 축은 tag_id로 묶여 있어 나중에 갈라도 곡 연결이 유지된다
- 콘티온 Conti On TIL 7에 추가
- 곡별 메모도 예약만 돼 있던 컬럼을 5계층에 이어 살림 / 콘티 저장이 “항목 전부 다시 쓰기”라 항목별 작성자는 화면이 왕복시켜 보존(고친 항목만 내 이름으로)
해야 할 일
- 모래게임 Sandrop
- 스토어 등록물·Play Console(콘텐츠 등급·데이터 보안 양식·타겟층)
- 배포 전 디버그 제거
- 출시 후 레벨 동결
- 남은 성능 과제: 캔버스를 이미지로 구워 한 번에 그리기, 게임 루프가 화면 전체를 새로 그리지 않게 하기
- 룸톤 Roomtone
- 음원 암호화
- 시간대별 재생목록 자동 전환
- 기기 1대 묶기(과금 단위)
- 회사 공간 2주 파일럿
- 콘티온 Conti On
- iPad 실기기에서 곡별 메모 작성·작성자 표시 확인
- 곡 중복 감지(백로그)
Series: Daily Log
1 | 오늘 해낸 것 2 | 오늘 해낸 것 3 | 오늘 해낸 것 4 | 오늘 해낸 것 5 | 오늘 해낸 것 6 | 오늘 해낸 것 7 | 오늘 해낸 것 8 | 오늘 해낸 것 9 | 오늘 해낸 것 10 | 오늘 해낸 것 11 | 오늘 해낸 것 12 | 오늘 해낸 것 13 | 오늘 해낸 것 14 | 오늘 해낸 것 15 | 오늘 해낸 것 16 | 오늘 해낸 것 17 | 오늘 해낸 것 18 | 오늘 해낸 것 19 | 오늘 해낸 것 20 | 오늘 해낸 것 21 | 오늘 해낸 것 22 | 오늘 해낸 것 23 | 오늘 해낸 것 24 | 오늘 해낸 것 25 | 오늘 해낸 것 26 | 오늘 해낸 것 27 | 오늘 해낸 것 28 | 오늘 해낸 것 29 | 오늘 해낸 것 30 | 오늘 해낸 것 31 | 오늘 해낸 것 32 | 오늘 해낸 것 33 | 오늘 해낸 것 34 | 오늘 해낸 것 35 | 오늘 해낸 것 36 | 오늘 해낸 것 37 | 오늘 해낸 것 38 | 오늘 해낸 것 39 | 오늘 해낸 것 40 | 오늘 해낸 것 41 | 오늘 해낸 것 42 | 오늘 해낸 것 43 | 오늘 해낸 것 44 | 오늘 해낸 것 45 | 오늘 해낸 것 46 | 오늘 해낸 것 47 | 오늘 해낸 것 48 | 오늘 해낸 것 49 | 오늘 해낸 것 50 | 오늘 해낸 것 51 | 오늘 해낸 것 52 | 오늘 해낸 것 53 | 오늘 해낸 것 54 | 오늘 해낸 것 55 | 오늘 해낸 것 56 | 오늘 해낸 것 57 | 오늘 해낸 것 58 | 오늘 해낸 것 59 | 오늘 해낸 것 60 | 오늘 해낸 것 61 | 오늘 해낸 것 62 | 오늘 해낸 것 63 | 오늘 해낸 것 64 | 오늘 해낸 것 65 | 오늘 해낸 것 66 | 오늘 해낸 것 67 | 오늘 해낸 것 68 | 오늘 해낸 것 69 | 오늘 해낸 것 70 | 오늘 해낸 것 71 | 오늘 해낸 것 72 | 오늘 해낸 것 73 | 오늘 해낸 것 74 | 오늘 해낸 것 75 | 오늘 해낸 것 76 | 오늘 해낸 것 77 | 오늘 해낸 것 78 | 오늘 해낸 것 79 | 오늘 해낸 것 80 | 오늘 해낸 것 81 | 오늘 해낸 것 82 | 오늘 해낸 것 83 | 오늘 해낸 것 84 | 오늘 해낸 것 85 | 오늘 해낸 것 86 | 오늘 해낸 것 87 | 오늘 해낸 것 88 | 오늘 해낸 것 89 | 오늘 해낸 것 90 | 오늘 해낸 것 91 | 오늘 해낸 것 92 | 오늘 해낸 것 93 | 오늘 해낸 것 94 | 오늘 해낸 것 95 | 오늘 해낸 것 96 | 오늘 해낸 것 97 | 오늘 해낸 것 98 | 오늘 해낸 것 99 | 오늘 해낸 것 100 | 오늘 해낸 것 101 | 오늘 해낸 것 102 | 오늘 해낸 것 103 | 오늘 해낸 것 104 | 오늘 해낸 것 105 | 오늘 해낸 것 106 | 오늘 해낸 것 107 | 오늘 해낸 것 108 | 오늘 해낸 것 109 | 오늘 해낸 것 110 | 오늘 해낸 것 111 | 오늘 해낸 것 112 | 오늘 해낸 것 113 | 오늘 해낸 것 114 | 오늘 해낸 것 115 | 오늘 해낸 것 116 | 오늘 해낸 것 117 | 오늘 해낸 것 118 | 오늘 해낸 것 119 | 오늘 해낸 것 읽는 중 120 | 오늘 해낸 것 121 | 오늘 해낸 것 122 | 오늘 해낸 것 123 | 오늘 해낸 것 124 | 오늘 해낸 것 125 | 오늘 해낸 것 126 | 오늘 해낸 것 127 | 오늘 해낸 것 128 | 오늘 해낸 것 129 | 오늘 해낸 것 130 | 오늘 해낸 것 131 | 오늘 해낸 것 132 | 오늘 해낸 것 133 | 오늘 해낸 것 134 | 오늘 해낸 것 135 | 오늘 해낸 것 136 | 오늘 해낸 것 137 | 오늘 해낸 것 138 | 오늘 해낸 것 139 | 오늘 해낸 것 140 | 오늘 해낸 것 141 | 오늘 해낸 것 142 | 오늘 해낸 것 143 | 오늘 해낸 것 144 | 오늘 해낸 것 145 | 오늘 해낸 것 146 | 오늘 해낸 것 147 | 오늘 해낸 것 148 | 오늘 해낸 것 149 | 오늘 해낸 것 150 | 오늘 해낸 것 151 | 오늘 해낸 것 152 | 오늘 해낸 것 153 | 오늘 해낸 것 154 | 오늘 해낸 것 155 | 오늘 해낸 것