홀로그램 투영

Hologram

반투명한 빛과 스캔선, 깜빡임으로 미래적인 홀로그램 투영을 표현합니다.

다른 이름: HologramSci-fi hologramHolographic projection

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

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

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

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

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

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

export default function ShaderEffect() {
  return (
    <Shader style={{ width: '100%', height: '320px' }} disableTelemetry>
      <Hologram />
    </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: 'Hologram',
    }
  ]
}, { disableTelemetry: true })

속성(props) · Hologram

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

이름값기본값범위·선택지설명(원문)
originOrigin코드에서 지정center—Reference edge the center position is measured from (center default). Lets you pin the shape relative to a corner or the canvas centre.
centerCenter
x0.5y0.5
{"x":0.5,"y":0.5}x, y: 0 – 1Center position of the hologram shape
scaleScale10.1 – 3 (step 0.01)Scale of the hologram shape (1 = default size)
rotationRotation00 – 360 (step 1)Rotation of the hologram shape in degrees
colorColor#5ec8ff—Projection tint — the color the whole hologram emits (classic sci-fi cyan by default)
brightnessBrightness2.50.2 – 3 (step 0.01)Overall emission gain. Bright edges blow out toward white for a hot, projected look.
edgeSoftnessEdge Softness0.040 – 1 (step 0.01)Softness of the shape boundary edge — keep low for crisp projection edges
fillVolume Fill0.450 – 1 (step 0.01)Translucent interior glow. Driven by optical thickness, so thicker parts of a 3D form glow more — the core volumetric cue.
edgeGlowEdge Glow10 – 2.5 (step 0.01)Fresnel rim intensity — bright glowing silhouette and, on 3D shapes, the grazing internal walls of extruded logos
depthLinesDepth Lines0.50 – 1 (step 0.01)Iso-depth scan-lines that hug the surface and reveal the 3D form like a volumetric scan. On flat shapes they become concentric contour rings.
depthScaleDepth Density264 – 70 (step 1)Density of the depth scan-lines — higher packs more contour bands through the volume
scanlinesScanlines0.550 – 1 (step 0.01)CRT scanline contrast — how dark the gaps between horizontal projection lines get
scanlineScaleScanline Count13020 – 400 (step 1)Number of horizontal scanlines across the canvas height
scanlineSpeedScanline Drift10 – 5 (step 0.01)How fast the scanlines drift upward — 0 holds them static
sweepSweep Bar0.10 – 1 (step 0.01)Brightness of the refresh bar that sweeps vertically through the projection
flickerFlicker0.30 – 1 (step 0.01)Unstable-projector flicker — a fast shimmer plus occasional brightness dropouts
distortionDistortion0.10 – 1 (step 0.01)Continuous horizontal wobble and chromatic edge fringing — the wavering of an unstable beam
grainGrain0.70 – 1 (step 0.01)Fine projection static — animated per-pixel noise over the emission
speedSpeed10 – 3 (step 0.01)Master animation speed for every animated layer. 0 freezes the projection.
shapeShape코드에서 지정{"type":"sphere3D","radius":0.35}—Serialized shape configuration (JSON)
shapeSdfUrlshapeSdfUrl코드에서 지정—URL to a pre-generated SDF .bin file — when non-empty, activates SVG mode and triggers a shader recompile
shapeTypeshapeType코드에서 지정—Active SDF shape type — triggers recompile when shape is switched. When empty, derived from shape JSON at mount time.

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

공중에 투사된 홀로그램처럼, 반투명한 면과 빛나는 윤곽 위로 스캔선이 지나갑니다.

`brightness`를 올리면 투영이 밝아지고, `fill`은 내부의 반투명한 빛을 더합니다. `edgeGlow`는 윤곽의 발광을, `depthLines`는 표면을 따라가는 깊이선을 조절합니다. `scanlines`를 올리면 가로선 사이의 어두운 틈이 도드라지고, `flicker`는 투영을 불안정하게 깜빡이게 합니다.

자체 형상을 홀로그램으로 만들므로 정적인 배경이나 다른 UI와 분리된 장면에서 효과가 선명합니다. 스캔선과 깜빡임은 글자를 읽기 어렵게 할 수 있으니 안내 문구에는 약하게 쓰세요.

언제 쓰나

SF 스타일 로고, 투영된 상태 표시, 짧은 장면 전환에 어울립니다. 긴 안내문이나 깜빡임에 민감한 핵심 컨트롤에는 피하세요.

페이지로 열기 ↗