Earthbound Patterns Overview
Earthbound patterns are inspired by EarthBound's "Video Drugs" (aka "Video Relaxants") battle backgrounds. These patterns use HDMA (Horizontal Direct Memory Access) effects to create dynamic, hypnotic visual effects without frame-by-frame animation.
Historical Context
EarthBound (Mother 2) featured unique psychedelic shifting and twisting backgrounds during enemy encounters. The original development team referred to these as "Video Drugs" due to their hypnotic effect. Unlike other RPGs of its time, these backgrounds used HDMA to create dynamic patterns through mid-frame register updates.
Technical Foundations
HDMA (Horizontal Direct Memory Access)
HDMA is a SNES hardware feature that allows mid-frame register updates. In EarthBound, this is used to shift each scanline horizontally based on vertical position and time.
Key Concept: Each scanline is shifted left or right based on:
- Vertical position (y-coordinate)
- Time (animation frame)
- Sine wave modulation
Plasma Effects
Plasma effects are generated by combining multiple sine waves across the x and y axes, creating smooth, continuous flowing patterns.
Key Concept: Superposition of sine waves with color palette cycling and time-based modulation.
Fractal Brownian Motion (fBm)
Fractal Brownian Motion creates self-similar patterns with fine detail at multiple scales by summing multiple octaves of noise with increasing frequency and decreasing amplitude.
Pattern List
Basic Patterns
- HDMA Scanline Shift - Scanline shifting based on vertical position
- Multi-Layer Plasma - Classic plasma with multiple sine waves
- Fractal Brownian Motion - Multi-scale noise summation
- Earthbound Warping Distortion - Combined radial and scanline distortion
- Moiré Interference - Overlapping wave patterns
- Color Cycling Gradient - Gradient with time-based color shifts
Looping Patterns (10 seconds @ 60fps = 600 frames)
These patterns are designed to loop seamlessly over 600 frames.
- Seamless Plasma Loop - Plasma with divisors of 600
- Rotating Fractal Loop - Fractal noise with 360° rotation
- Moiré Interference Loop - Interference with phase shifts
- Radial Breathing Loop - Radial pulsing animation
- HDMA Scanline Loop - Scanline shift with modulo arithmetic
- Kaleidoscope Loop - Symmetrical kaleidoscope with rotation
Color Palettes
Earthbound Sunset
- Deep Purple: #2D1B4E
- Magenta: #8B2C5C
- Coral: #FF6B6B
- Orange: #FFA07A
- Yellow: #FFE66D
Neon Vaporwave
- Purple: #9C27B0
- Pink: #E91E63
- Red: #F44336
- Orange: #FF9800
- Cyan: #00BCD4
Oceanic Psychedelic
- Deep Blue: #1A237E
- Teal: #009688
- Green: #4CAF50
- Lime: #CDDC39
- Cyan: #00BCD4
Looping Principles
To create seamless loops:
- Use sine wave periods that divide total frames evenly
- Use modulo arithmetic for wraparound operations
- Ensure rotations complete integer revolutions
- Verify frame 0 == frame N-1 mathematically