불꽃놀이

도움말

불꽃놀이

주먹을 쥐었다 활짝 펴면 그 손바닥에서 불꽃이 솟아올라 정점에서 터집니다.

노는 방법

«카메라 켜고 손으로 쏘기»를 누르고, 손바닥이 카메라를 정면으로 보게 드세요. 손이 잡히면 손바닥에 고리가 하나 생깁니다.

주먹을 꽉 쥐면 고리가 주황색으로 바뀝니다 — 장전됐다는 뜻입니다. 그 상태에서 손을 활짝 펴면 불꽃탄이 손바닥에서 솟아오릅니다.

손을 높이 든 채로 펼수록 세게 나가고 그만큼 높은 곳에서 터집니다. 양손이 각각 따로 장전되니 번갈아 쏠 수 있습니다.

카메라를 켜지 않아도 화면 아무 데나 누르면 그 자리에서 한 발 올라갑니다.

F 키나 오른쪽 위 버튼으로 전체화면이 되고, Esc로 나옵니다. 불꽃은 크게 볼수록 좋습니다.

아래 «불꽃 세팅»에서 쏠 불꽃을 미리 정해 둘 수 있습니다. 모양과 색을 골라 순서대로 담으면 실제 불꽃놀이처럼 그 순서로 나가고, 끝나면 처음으로 돌아옵니다. 아무것도 안 담으면 무작위입니다.

무엇을 보나요

손 관절 21개의 좌표만 봅니다. 얼굴도 신원도 다루지 않고, 영상은 브라우저 밖으로 나가지 않습니다 — 저장도 전송도 녹화도 없습니다.

손 검출 모델은 7.5MB라 저장소에 넣지 않고 구글이 공개한 것을 카메라를 켤 때 받아옵니다. 페이지를 열기만 하면 아무것도 받지 않습니다.

어떻게 만들었나

펼침도는 손가락 끝과 손목 사이 거리를 «손바닥 길이»로 나눠서 잽니다. 픽셀 거리를 그대로 쓰면 카메라에서 멀어질 때마다 기준을 다시 잡아야 하는데, 손바닥으로 나누면 손이 화면의 5%든 40%든 같은 숫자가 나옵니다. 엄지는 빼고 넷만 씁니다 — 주먹을 쥐어도 옆으로 붙을 뿐 손목 쪽으로 접히지 않아서 같은 자로 재면 «반쯤 편 손»이 됩니다.

여는 문턱과 잠그는 문턱을 따로 뒀습니다. 하나로 두면 손을 반쯤 편 채 가만히 있어도 검출이 흔들리는 것만으로 연발이 나갑니다. 0.25 아래로 내려가야 장전되고 0.62 위로 올라가야 나가며, 그 사이에서는 아무 일도 일어나지 않습니다.

불꽃탄은 타이머가 아니라 «정점»에서 터집니다. 올라가는 속도가 0을 넘어서는 순간입니다. 시간으로 터뜨리면 세게 쏜 것과 약하게 쏜 것이 같은 높이에서 터져서, 손을 높이 든 보람이 없습니다.

양손은 순서를 하나로 나눠 씁니다. 손마다 따로 세면 왼손이 1·3번, 오른손이 2·4번을 쏘게 되어 «짜 놓은 순서»가 깨집니다. 짠 것이 공연이라면 커서도 하나여야 합니다.

폭발은 국화·고리·버들가지·겹불꽃 네 가지인데, 방향은 전부 고르게 뿌리고 속도만 다르게 줍니다. 고리는 모두 같은 속도로 나가 껍질처럼 퍼지고, 국화는 속도가 제각각이라 속이 찬 공처럼 보입니다. 실제 차이가 거기에 있습니다.

입자를 점으로 찍지 않고 직전 위치에서 지금 위치까지 선분으로 긋습니다. 점으로 찍으면 알갱이가 뚝뚝 끊겨 보이고, 잔상을 남기려면 캔버스를 반투명 검정으로 덮어야 하는데 그러면 뒤에 깔린 웹캠 화면이 가려집니다.

물리 라이브러리를 쓰지 않았습니다. 중력·항력·수명이 전부라 라이브러리를 얹으면 왜 되는지가 안 남습니다.

다시 누르면 닫힙니다

✋ 손으로 쏘는 불꽃놀이

아래에서 카메라를 켜거나, 여기를 눌러도 한 발 나갑니다

F를 누르면 전체화면

손 모양만 봅니다 · 저장·전송·녹화 없음

불꽃 세팅

지금은 쏠 때마다 무작위입니다. 발을 추가하면 짠 순서대로 나갑니다.

잘 안 나갈 때

손바닥이 카메라를 정면으로 보게 하세요. 손날을 보이면 손가락이 겹쳐 보여서 편 손인지 쥔 손인지 구분이 안 됩니다. 주먹은 «꽉», 펴는 건 «활짝» — 중간에서 어정쩡하게 멈추면 일부러 안 나가게 해 뒀습니다.

손을 높이 들수록 높이 터집니다

발사 세기는 손의 높이에서 가져옵니다. 화면 위쪽에서 펴면 세게, 아래쪽에서 펴면 약하게 올라가고, 불꽃은 항상 정점에서 터집니다.

전체화면으로 보세요

무대 오른쪽 위 버튼이나 F 키로 전체화면이 됩니다. 나갈 때는 Esc. 잘려 나가는 화면 비율은 알아서 맞추니 손과 불꽃이 어긋나지 않습니다.

쏠 불꽃을 미리 정해 둘 수 있습니다

아래 «불꽃 세팅»에서 모양과 색을 골라 순서대로 담아 두면, 실제 불꽃놀이처럼 그 순서대로 나가고 끝나면 처음으로 돌아옵니다. 양손이 같은 순서를 나눠 쓰기 때문에 번갈아 쏴도 순서가 안 꼬입니다. 아무것도 안 담으면 지금처럼 무작위입니다.

카메라 없이도 됩니다

화면 아무 데나 누르면 그 자리에서 한 발 올라갑니다.