마우스를 올려보세요
이 실험에 대해
마우스 위치가 자석처럼 작용한다. 매 프레임 각 공에 마우스 방향으로 힘을 가해 인력/척력을 구현한다. 거리가 가까울수록 힘이 강해진다. 버튼으로 인력↔척력을 전환.
핵심 코드
// 매 프레임: 마우스 방향으로 힘 적용
const sign = attracting ? 1 : -1
const dx = mouseX - body.position.x
const dist = Math.max(5, Math.hypot(dx, dy))
const strength = sign * 0.0028 / Math.max(30, dist)
Body.applyForce(body, body.position, {
x: (dx / dist) * strength,
y: (dy / dist) * strength,
})