베놈 스피커처럼 몽글거리는 버블 이펙트 만들기

유튜브에서 우연히 본 ‘베놈 스피커’ 영상이 꽤 인상 깊었다.

소리에 반응해서 요동치는 물방울이 단순히 진동하는 게 아니라, 형태가 아예 몽글몽글하게 바뀌는 모습이 인상적이었다.

처음엔 그냥 영상미가 멋지다고 생각했는데,

‘나도 이런 시각적 이펙트를 웹에서 구현해볼 수 있지 않을까?’ 라는 생각이 들어 실험을 시작했다.

그러다 찾게 된 게 이 글이었다:

👉 CSS Awesome Sticky Bubble Effect - by rocchokcoco

기존에는 마우스를 따라다니는 방식이었지만,

나는 중앙 원에서 바깥으로 퍼져 나가는 버블 형태로 바꿔보기로 했다.

SCSS의 @for 문법을 활용해 버블의 크기, 각도, 거리, 애니메이션 속도를 무작위로 지정했고,

filter: contrast와 transform 조합으로 물방울이 몽글하게 터지는 듯한 느낌을 연출했다.



💡 시도하면서 느낀 점

  • 단순히 border-radius와 transform만으로도 꽤 감각적인 효과를 낼 수 있다.

  • filter: contrast는 이런 인터랙션에 굉장히 강력한 도구다.

  • CSS 애니메이션만으로 충분히 “생명력 있는” 움직임을 만들 수 있다.

  • SCSS에서 @for로 랜덤한 값을 넣는 방식은 정말 유용하다. 다만 embed할 땐 컴파일 결과로 보여야 스타일이 깨지지 않는다.

앞으로도 이런 인터랙션 위주의 실험을 종종 해보려고 한다.

눈에 보이는 동작이 아니라 형태 그 자체가 변화하는 느낌을 만드는 게 꽤 재밌다.


🔧 핵심 코드 스니펫

@for $i from 1 through 100 {
  .g-bubble:nth-child(#{$i}) {
    $size: 18 + random(24);             
    $angle: random(360);                
    $dist: 100 + random(100);           
    $dur: (random(30) + 30) / 10;       
    $delay: -1 * random(4000) / 1000;   
 
    --sz: #{$size};
    --ang: #{$angle}deg;
    --dist: #{$dist}px;
    --dur: #{$dur}s;
    --del: #{$delay}s;
  }
}