Loading
Loading
Loading
mobile footer

Build the Interaction Layer Your Website is Missing.

Browse All EffectsBrowse All EffectsBrowse All EffectsUpgrade to ProUpgrade to ProUpgrade to Pro

70+ effects free, forever. No credit card.

© 2026 Hyperiux. All Rights Reserved.

AI Component CatalogueHey AI, Learn About Us
Platform

Vault

  • Documentation
  • Pricing
  • Blog
  • Community
  • NPM
  • MCP

Categories

  • All Effects
  • WebGL
  • Text
  • Backgrounds
  • Buttons
  • Carousels
  • Scroll
  • Components
  • Navigation
  • Cursor
  • Transitions
  • Loaders

Documents

  • Introduction
  • Installation
  • CLI
  • Dependencies
  • License

Legal

  • License Agreement
  • Terms of Service
  • Privacy Policy
  • Refund Policy
Socials
  • Twitter / X
  • LinkedIn
  • GitHub
  • Instagram
Contact Us
  • hello@hyperiux.com
New effects, in your inbox

Every new drop, plus the occasional behind-the-scenes build. No spam. Unsubscribe anytime.

All Effects
Featured ComponentsText AnimationsAnimated BackgroundsAnimated ButtonsCarousel EffectsScroll EffectsCreative ComponentsNavigationsCursor EffectsTransitionsLoadersWebGL & 3D Effects
Templates
IntroductionInstallationCLIDependenciesLicense
PricingBlogGithubNPMMCP Doc
Loading
Home/effects/Creepy Background

Creepy Background

A dark, fluid background where glowing purple and molten-orange patterns twist, spread, and dissolve into an ever-changing abstract landscape.

Three.js
DemoDemoDemo

Tune the Real Props

Background

Colour of the empty space behind the clouds.

Cool

Colour of the thin outer edges of the clouds.

Mid

Colour of the denser middle of the clouds.

Warm

Colour of the hot areas near the cores.

Hot

Colour of the hottest cores.

Overview

Creepy Background transforms a dark canvas into a constantly evolving field of liquid-like patterns. Vibrant purple and fiery orange formations spread across the screen, folding into irregular waves, swirling shapes, and deep black pockets.

The animation resembles a shifting mixture of smoke, molten material, and psychedelic fluid. Its unpredictable movement creates an unsettling yet visually captivating atmosphere, while the contrast between luminous colours and dark negative space adds depth.

Built using Three.js WebGPU and TSL, the effect uses shader-oriented mathematical and noise functions to create its abstract appearance. It works particularly well for creative portfolios, experimental brands, entertainment websites, and immersive hero sections.


Usage Code

page
1import CreepyBackground from '@/components/effects/creepy-background'2 3const page = () => {4  return (5    <div className="h-screen w-full">6      <CreepyBackground />7    </div>8  )9}10 11export default page

Example Production Use Case

Consider a creative studio launching a website for an experimental digital art exhibition. The homepage opens with a bold exhibition title surrounded by slowly shifting purple and orange fluid patterns.

As visitors explore the page, the background continues transforming, creating an atmosphere that feels mysterious and alive. The dark central space provides contrast for the heading and primary call to action.

The result is a distinctive visual introduction that establishes the exhibition's identity without requiring conventional photography or illustrations.


Best Used For

  • Experimental creative agency websites.
  • Digital art and immersive exhibition pages.
  • Horror, mystery, and entertainment campaigns.
  • Music and underground culture websites.
  • Futuristic and unconventional brand identities.
  • Cinematic hero sections and landing pages.
  • Interactive storytelling experiences.

Not For

Creepy Background is less suitable for corporate dashboards, financial applications, checkout flows, and content-heavy interfaces where clarity and restrained visuals are essential. Its high-contrast movement can compete with text and interactive controls.

Avoid combining it with several other intensive animated backgrounds or complex WebGL scenes. The effect works best as a primary atmospheric element with minimal competing motion.


Performance Budget

Keep shader calculations efficient and control the rendering resolution to reduce GPU load. Procedural noise and screen-space effects can become expensive at high resolutions, so test performance across different hardware capabilities.

On mobile and lower-powered devices, reduce rendering quality or animation complexity where necessary. Pause offscreen rendering and provide a static fallback when continuous animation is unnecessary or unsupported.


Accessibility and Mobile

Keep headings, navigation, and interactive elements in accessible HTML above the animated canvas. Maintain sufficient contrast as bright fluid patterns move behind the content.

On mobile, preserve the overall composition without letting high-contrast movement overwhelm smaller screens. Respect prefers-reduced-motion by pausing the shader animation or displaying a static frame.


Common Mistakes

  • Excessive colour intensity that overwhelms foreground content.
  • Heavy procedural noise calculations that reduce rendering performance.
  • Poor contrast between animated patterns and text.
  • High rendering resolutions on low-powered devices.
  • Abrupt animation movement that disrupts the fluid appearance.
  • Running continuous shader updates when the effect is offscreen.
  • Missing WebGPU compatibility handling or fallback visuals.
  • Ignoring reduced-motion preferences.

Changelog

Initial release

API Reference

PropTypeDefaultDescription
speednumber0.15How fast the clouds crawl and fold into new shapes.
warpnumber2.5How much the clouds twist into each other. Higher is stranger. Not used when Cursor only is on.
scalenumber1.1Size of the pattern. Lower values give bigger clouds. Not used when Cursor only is on.
voidSizenumber0.65Size of the dark, empty area that drifts around the middle. 0 fills the screen. Not used when Cursor only is on.
cursorOnlybooleanfalseHides the background clouds so only the colour from the cursor shows on the background colour.
mouseInteractivebooleantrueThe cursor leaves coloured smoke that spreads out and fades over the clouds.
mouseStrengthnumber1How much colour the cursor releases as it moves. Needs Mouse on.
mouseSizenumber1Width of the smoke trail the cursor leaves. Needs Mouse on.
trailLengthnumber2How long the smoke lingers and spreads before it fades, in seconds. Needs Mouse on.
heatnumber2.2How far the clouds burn from blue into orange and red cores. Not used when Cursor only is on.
grainnumber0.5Strength of the speckled film grain inside the clouds.
backgroundColorcolor#000000Colour of the empty space behind the clouds.
coolColorcolor#2a1affColour of the thin outer edges of the clouds.
midColorcolor#e04cffColour of the denser middle of the clouds.
warmColorcolor#ffa01eColour of the hot areas near the cores.
hotColorcolor#d0101aColour of the hottest cores.

Questions, Answered.

What is Creepy Background?

Creepy Background is an animated React effect featuring flowing purple and orange fluid patterns against a dark canvas, creating an eerie, psychedelic atmosphere.

How does Creepy Background work?

The effect uses Three.js Shading Language functions, including noise, screen-space coordinates, and mathematical operations, to warp layered clouds that burn from a cool blue through magenta and orange to red. Moving the pointer leaves a trail of coloured smoke through the clouds.

What technologies does Creepy Background use?

The supplied implementation imports React, Three.js through three/webgpu, and shader functions from three/tsl, including Fn, mx_noise_float, screenUV, and uniform.

Does Creepy Background require WebGPU?

No. It is written with Three.js's WebGPU build and TSL, but the renderer is created with forceWebGL, so it always renders through WebGL2 and runs in any browser that supports WebGL2.

Can I customise the colours and animation?

Yes. Props cover the palette (backgroundColor, coolColor, midColor, warmColor, hotColor, heat), the shape of the clouds (warp, scale, voidSize), speed and grain, and the pointer trail (mouseInteractive, mouseStrength, mouseSize, trailLength). Turn on cursorOnly to show colour only where the pointer has been.

Can Creepy Background work with Next.js and mobile devices?

Yes. It is a client component, so it works in the Next.js App Router. It pauses while offscreen or in a hidden tab, renders at a lower pixel ratio on touch devices, and stops animating when reduced motion is preferred.

Request a Custom Animation

Need a custom effect? Tell us what to create.

Related Effects

Explore All EffectsExplore All EffectsExplore All Effects
Moss Grid
Three.js@react-three/fiber@react-three/postprocessing

Moss Grid

Backgrounds

Neon Streak
Pro
WebGL Shader

Neon Streak

Backgrounds

Dither Canvas
Pro
canvas-shader

Dither Canvas

Backgrounds

Spider Particles Background
Three.js

Spider Particles Background

Backgrounds