소용돌이 패턴

Swirl

여러 겹의 색이 소용돌이처럼 흐르며 계속 움직이는 패턴입니다.

다른 이름: Swirl스월

WebGPU 를 지원하는 브라우저에서 움직입니다

이 기기에서는 데모를 그리지 못해 정지 화면을 보여 줍니다

React
// WebGPU 를 지원하는 브라우저에서만 그립니다.
import { Shader, Swirl } from 'shaders/react'

export default function ShaderEffect() {
  return (
    <Shader style={{ width: '100%', height: 320 }} disableTelemetry>
      <Swirl />
    </Shader>
  )
}
Vue
<!-- WebGPU 를 지원하는 브라우저에서만 그립니다. -->
<script setup lang="ts">
import { Shader, Swirl } from 'shaders/vue'
</script>

<template>
  <Shader style="width: 100%; height: 320px" :disable-telemetry="true">
    <Swirl/>
  </Shader>
</template>
Svelte
<!-- WebGPU 를 지원하는 브라우저에서만 그립니다. -->
<script>
  import { Shader, Swirl } from 'shaders/svelte'
</script>

<Shader style="width: 100%; height: 320px" disableTelemetry>
  <Swirl />
</Shader>
Solid
// WebGPU 를 지원하는 브라우저에서만 그립니다.
import { Shader, Swirl } from 'shaders/solid'

export default function ShaderEffect() {
  return (
    <Shader style={{ width: '100%', height: '320px' }} disableTelemetry>
      <Swirl />
    </Shader>
  )
}
JavaScript
// WebGPU 를 지원하는 브라우저에서만 그립니다.
// <canvas id="canvas" style="width:100%;height:320px"></canvas> 가 페이지에 있어야 한다
import { createShader } from 'shaders/js'

const shader = await createShader(document.getElementById("canvas"), {
  components: [
    {
      type: 'Swirl',
    }
  ]
}, { disableTelemetry: true })

속성(props) · Swirl

값을 바꾸면 위 데모와 코드 탭에 바로 반영됩니다. 설명은 라이브러리 레지스트리의 영어 원문(MIT)입니다.

이름값기본값범위·선택지설명(원문)
colorAColor A#1275d8—Primary gradient color
colorBColor B#e19136—Secondary gradient color
stopsColors코드에서 지정null—Multi-stop gradient colors (overrides Color A / Color B when set)
speedSpeed10 – 5 (step 0.1)Flow animation speed
detailDetail10 – 5 (step 0.1)Level of detail and intricacy in the swirl patterns
blendBlend500 – 100 (step 1)Skew color balance toward A (lower values) or B (higher values)
colorSpaceColor Spacelinearlinear · oklch · oklab · hsl · hsv · lchColor space for color interpolation

모든 컴포넌트 공통: blendMode · opacity · visible · maskSource/maskType · boundingBox · id

물감을 물에 풀었을 때처럼 색이 소용돌이치며 이어집니다. 선으로 그린 나선보다 넓은 색의 흐름이 화면을 채웁니다.

`speed`를 올리면 흐름이 빨라지고, `detail`을 올리면 무늬가 더 복잡해집니다. `blend`는 첫 번째 색과 두 번째 색 중 어느 쪽으로 균형을 기울일지 정합니다. `stops`를 지정하면 기본 두 색 대신 여러 색으로 구성할 수 있습니다.

`stops`의 기본값은 null이라 기본 두 색을 사용합니다. 별도 입력 없이 캔버스를 채우지만, 높은 속도와 디테일은 시각적으로 바쁠 수 있습니다. 글 뒤에 둘 때는 움직임과 색 대비를 낮춰 읽기 흐름을 지키세요.

언제 쓰나

추상적인 히어로 배경, 색이 흐르는 대기 화면, 정적인 면에 유기적인 움직임을 더할 때 좋습니다. 글이나 정밀한 데이터가 중심인 화면은 피하세요.

페이지로 열기 ↗