← Home/pretext

이 실험에 대해

클릭 지점에서 반경이 매 프레임 3.5px씩 커지는 파문을 생성한다. 각 글자는 자신의 resting position과 현재 파문 반경의 거리가 가까울 때 방사 방향으로 힘을 받는다. 파문이 멀어질수록 세기가 약해지고, 스프링 물리로 원래 자리로 돌아온다. 최대 6개의 파문이 동시에 존재할 수 있다.

핵심 코드

// 파문 반경 = 속도 × 경과 프레임
const currentRadius = age * RIPPLE_SPEED

// 글자와 파문 링의 거리 계산
const distFromRing = Math.abs(dist - currentRadius)

if (distFromRing < RIPPLE_WIDTH) {
  const force = (1 - distFromRing / RIPPLE_WIDTH)
             * (1 - currentRadius / MAX_RADIUS)  // 감쇠
  c.vx += Math.cos(angle) * force * RIPPLE_FORCE
}