모래게임 Sandrop TIL 9
색을 안 건드리고 정보를 더하기
튜닝할 수치는 이름을 붙여 한 곳에 둔다
플레이하면서 색이 구분이 안 되는 게 계속 걸렸다. 팔레트는 이미 손봤으니 이번엔 색을 더 건드리지 않기로 했다.
아직 안 채운 칸은 원래 색을 크림색과 섞어 흐리게 깔린다. 그 비율이 원색을 20%만 남기는 값이라 색이 죽어 있었다. 절반까지 올리니 무슨 색을 부어야 하는지 읽혔다.
이런 값은 눈으로 보며 맞춰야 해서, 코드 속에 숫자로 박지 않고 이름을 붙여 한 곳에 뒀다. 이후 조정은 그 숫자만 바꾼다.
- 눈으로 맞춰야 하는 값은 반드시 이름을 붙여 꺼내 둔다. 그래야 조정이 코드 수정이 아니라 값 바꾸기가 된다
- 색이 안 보인다는 말에 색을 바꾸는 것 말고도 답이 있다. 무엇이 그 색을 죽이고 있는지 먼저 본다
어디까지 채웠는지가 안 보인다는 말
테스트해 준 사람에게서 나온 말이다. 부어도 어디까지 찼는지 모르겠다는 것.
듣고 보니 채운 부분과 안 채운 부분이 색 농도로만 갈리고 있었다. 경계에 얇은 어두운 선을 넣으니 그제야 지금까지 얼마나 채웠는지가 한눈에 들어왔다.
- 만든 사람은 어디까지 찼는지 안다. 처음 보는 사람이 그걸 알 수 있는지는 물어봐야 안다
- 진행 상황은 숫자보다 경계로 보여 주는 편이 빠르다
정보는 그것이 쓰이는 자리에 놓는다
지금 바로 모래가 앉을 칸을 원색에 가깝게 은은히 깜빡이게 했다. 그 칸들의 색이 곧 “지금 부을 수 있는 색”이다.
화면 위쪽에 색 점으로 같은 정보를 이미 주고 있었는데, 캔버스 위에서 깜빡이니 훨씬 빨리 읽혔다. 같은 정보라도 쓰는 자리에 있으면 눈이 옮겨 갈 일이 없다.
- 정보를 어디에 놓을지는 무엇을 보여 줄지만큼 중요하다. 판단하는 자리에서 멀면 있어도 안 쓴다
에셋에 맞출 때
그림에 색을 곱해 입히면 원색이 안 나온다
엎어 둔 통이 보드의 모래색과 다른 색으로 보였다. 그림에 색을 곱해 입히는 방식이라, 원본의 크림색 질감과 음영이 그대로 곱해져 순수한 원색이 안 나온다.
열린 통은 안에 순수한 색 원반이 보여서 기준색이 살아 있는데, 엎으면 그게 사라진다. 엎은 통 뚜껑에도 같은 색 원반을 얹어 기준을 만들었다.
- 색을 정확히 보여 줘야 하는 자리에는 계산으로 만든 색 말고 순수한 색을 하나 둔다
- 그림에 색을 입히는 방식은 톤을 맞추는 데는 좋고 색을 알려 주는 데는 부족하다
대충 가운데가 아니라 재서 맞춘다
원반을 타일 정중앙에 정원으로 놓으니 떠 보였다. 그림을 직접 열어 보니 통 바닥면은 정중앙이 아니라 위에서 27% 지점에 있고, 정원이 아니라 가로로 넓적한 타원이었다.
그 값대로 맞추니 뚜껑에 앉았다.
- 그림 위에 무언가를 겹칠 때는 그림을 열어 실제 위치와 모양을 잰다. 가운데일 것 같다는 짐작이 제일 자주 틀린다
선보다 면이 강한 신호다
꺼낼 수 있는 칸을 테두리 빛으로 표시했는데, 테스트해 준 사람이 약하다고 했다. 바닥 면 자체를 밝게 바꾸니 확실해졌다.
- 강조를 올릴 때 선을 굵게 하는 것보다 면을 바꾸는 쪽이 크다. 선은 장식으로 읽히고 면은 상태로 읽힌다
출시에서 빠져야 할 것
잊어도 안 새게 두 겹으로 막는다
지나간 레벨을 다시 하는 기능은 개발용이라 출시 때 반드시 빠져야 한다. 지우는 걸 잊을 수 있으니 두 겹으로 막았다. 출시 빌드에서는 설정 화면에 아예 안 보이고, 실제 동작 경로에서도 한 번 더 막힌다.
여기서 걸린 게 있다. 설정값을 읽는 함수의 기본값이 켬이라, 명시하지 않으면 저장된 값이 없을 때 디버그가 켜진 채로 읽혔다.
- 출시에서 빠져야 할 기능은 화면에서 숨기는 것만으로 부족하다. 동작 경로에서도 막아야 저장된 값이 안 살아난다
- 기본값이 켬인 설정은 위험하다. 새 항목을 추가할 때마다 기본이 무엇인지 확인한다