비트와 자장가

[watson!] 맥용 투명 드로잉/노트 앱 본문

개발/결과

[watson!] 맥용 투명 드로잉/노트 앱

eastriver 2023. 2. 24. 21:48
728x90

(제가 만들었지만 정말 잘 만들었습니다)

 

한 달 전 투명한 창을 띄워 그림을 그리거나 글씨를 쓰는 맥용 앱을 만들기로 했습니다.

이전에도 필요해서 잠깐 생각했던 내용인데 창 투명화를 찾아보니 생각했던 것보다 복잡해서 접어둔 것이었습니다.

근데 갑자기 다시 해보고 싶은 생각이 들어서 시도해보니 어쩐지 의외로 간단했습니다.

 

오히려 당시 애를 먹었다고 생각했던 투명한 창보다는, 최적화와 투명창의 그림자 깨짐 문제 등 자잘한 것들을 해결하는 데에 대부분의 시간을 쏟았습니다.

특히 그림그리는 걸 벡터로 했고(굳이?), 지우개도 벡터 마스킹으로 해서(굳이?) 복잡해졌습니다.

사실 벡터로 했던 데에 딱히 이유가 있었던 건 아닌데, 하고 나니 좋은 점들이 있었습니다.

  1. 가볍다. CAShapeLayer를 사용했기 때문에 용량도 덜 차지하고 램도 적게 먹고, GPU를 사용하므로 CPU도 덜 먹는다.
  2. 확대 축소가 자유롭다. 벡터를 쓰는 가장 일반적인 이유이겠지만 왓슨은 현재 확대 축소를 지원하지 않는다.
  3. 내가 똑똑해짐. 멋진 나.

벡터로 한 게 아까워서라도 확대 축소 기능을 추후에 넣어야겠다는 생각입니다. 아니, 아닐지도...

물론 마스크 수십 개가 쌓이면 버벅이던 단점도 있었지만, 레이어가 일정 개수 이상 쌓이면 병합을 함으로써 해당 문제를 깔끔하게 해결했습니다.

 

스스로 감탄하면서 진행했지만, 딱히 알아줄 사람은 없는 게 아쉬워서 관련 내용을 스택오버플로우에나 올리기로 했습니다.

 

 

Flatten CALayer sublayers into one layer

In my app I have one root layer, and many images which are sublayers of rootLayer. I'd like to flatten all the sublayers of rootLayer into one layer/image, that don't have any sublayers. I think I ...

stackoverflow.com

 

How do you copy a CALayer?

How can you make an NSArray full of multiple instances of a CALayer (all with the same frame, contents etc)? Background: CALayer takes a bit of overhead to create, so I would like to create a numbe...

stackoverflow.com

 

아주 고수준의 SwiftUI 프레임워크와 아주 저수준의 CALayer, CARenderer, CIFilter, MTLTexture 등을 동시에 사용하며 만들었기 때문에 거의 맥 운영체제를 종횡무진 날아다니는 기분으로 즐겁게 개발을 했습니다.

...만 이것이 얼마나 가치 있는 일이었는가는 나중에 확인해봐야 할 일입니다.

 

제가 혼자 처음 만든 글로벌 상업 프로젝트라 하겠다.

todoom은 진입 테스트였을 뿐이고,

hocus는 맥 앱스토어 가이드라인에 걸려 오픈소스화했고,

셈틀체는 사실상 한국인만 대상이었으니 말입니다.

 

구글 광고를 해보려 했는데, 예상 외로 구글 광고 진행 방식이 너무 후졌었습니다! 타겟 설정까지는 좋았는데 런칭까지의 플로우라든가, UI라든가 이미 한 걸 또 하라고 해서 또 하려 들어가면 이미 했다고 저리 가라고 하질 않나, 등록했던 사진이 결제하고 나니 이전에 올린 사진으로 바뀌어 있질 않나, 거의 한국 공기업 가입 페이지 수준으로 (어쩌면 그것보다도 더) 후졌었습니다. 어금니를 꽉 깨물고 끝까지 가 봤는데도 승인이 안 났습니다. 한 번 더 참고 바보같은 요청사항을 수정하고 나니 수정했던 걸 또 고치란 소리를 듣고, 한 번만 더 참고 다시 수정하러 가니 수정할 게 없답니다. 그래서 기다려보니 승인이 몇 시간째 안 나 계정을 폭파하고 환불을 받기로 했습니다. 이후 트위터 광고로 넘어가니...

 

이제서야 구글 광고 수익이 떨어지고 있는 게 이해가 갑니다. 대기업 알고보면 별 거 없습니다 정말.

물론 다크모드도 지원합니다(사실 다크모드로 개발하다가 앗차 라이트모드도 해야지 하고 라이트모드 추가했어요).

Download on the Mac App Store

 

728x90
반응형

'개발 > 결과' 카테고리의 다른 글

[셈틀체semteulche] 광고 시작  (0) 2023.02.24
[셈틀체semteulche] itch.io 판매 시작  (0) 2022.10.23
[melonbrain] 한글 고정폭 글꼴  (0) 2022.06.16
[todoom] 할 일 목록  (0) 2022.06.09
[hocus] 맥 창 초점 전환  (0) 2022.04.30
Comments