Code Slice Hero
Eine vollflächige Quadratkachel-Oberfläche trägt eine nahtlose Überschrift. Ein imaginärer Cursor überquert die Oberfläche; nahegelegene Kacheln reagieren auf sein Gaußsches Tiefenfeld mit Anheben und Neigung, und nur die Zellen, die die Silhouetten einer der beiden Überschriften schneiden, drehen sich um und geben die hintere Überschrift frei. Das gesamte Raster ist ein einziger instanziierter WebGL 2-Durchlauf mit einem gemeinsamen Vorder-/Rückseiten-Texturpaar sowie einem gebündelten projizierten Schattendurchlauf. Kopie, Textgröße und quadratische Zellgröße sind unabhängig, sodass Kacheln nie verzerren. Sweep-Richtung, Easing-Stärke, Cursor-Radius, Abfall, Tiefe, Bounce und Schatten sind alle variabel.
Kompositions-ID: code-slice-hero. Dauer 8 s bei 30 fps, 1920×1080.
Dateien
code-slice-hero.html(24 KB)assets/Geist-Bold.ttf(65 KB)assets/Geist-OFL.txt(4 KB)assets/gsap-3.14.2.min.js(128 KB)assets/GSAP-NOTICE.txt(1 KB)shadows.js(10 KB)surface.js(8 KB)
Installation
Installiere mit npx hyperframes add code-slice-hero; standardmäßig landen die obigen Dateien unter compositions/code-slice-hero/. Binde den Block dann aus der Host-index.html ein:
<div
data-composition-id="code-slice-hero"
data-composition-src="compositions/code-slice-hero/code-slice-hero.html"
data-start="0"
data-duration="8"
data-track-index="1"
data-width="1920"
data-height="1080"
></div>
Rendere mit benutzerdefinierten Werten, indem du die Kompositionsdatei direkt ansteuerst:
npx --yes [email protected] render 'compositions/code-slice-hero/code-slice-hero.html' --variables '{"headline":"MAKE IT","reverseHeadline":"MATTER."}'
Variablen
Wird zur Laufzeit über window.__hyperframes.getVariables() ausgelesen; deklariert auf dem Kompositions-Root als data-composition-variables (einfach angegebenes Attribut, reines JSON).
| id | type | default | label / Bereich |
|---|---|---|---|
headline | string | "MAKE IT" | Kopie · Vordere Überschrift max 32 Zeichen |
reverseHeadline | string | "MATTER." | Kopie · Hintere Überschrift max 32 Zeichen |
direction | enum | "left-to-right" | Bewegung · Sweep-Richtung (links-nach-rechts |
sweepDuration | number | 4.2 | Bewegung · Sweep-Dauer 2,6–4,5 Schritt 0,05 |
sweepEaseStrength | number | 3 | Bewegung · Sweep-Easing-Stärke 0–3 Schritt 0,05 |
flipDuration | number | 0.75 | Bewegung · Jede Kachel-Umklapp 0,65–1,65 Schritt 0,05 |
cursorRadius | number | 210 | Cursor · Einflussradius 160–480 Schritt 10 |
cursorFalloff | number | 1.4 | Cursor · Einflussabfall 0,4–3,5 Schritt 0,05 |
cursorDepth | number | 80 | Cursor · Tiefe (+ Richtung Kamera) -320–320 Schritt 10 |
tiltStrength | number | 55 | Cursor · Zug-/Neigungsstärke 0–55 Schritt 1 |
noiseStrength | number | 2 | Bewegung · Organische Variation 0–2 Schritt 0,05 |
flipBounce | number | 0.15 | Bewegung · Elastischer Umklapp-Bounce 0–0,8 Schritt 0,05 |
cellSize | number | 112 | Schnitte · Quadratische Zellgröße 24–120 Schritt 4 |
formationScale | number | 1 | Schnitte · Lokaler Formationsmaßstab 0,94–1 Schritt 0,001 |
fontSize | number | 310 | Schrift · Maximale Größe 160–480 Schritt 5 |
behindColor | color | "#212121" | Oberfläche · Hintergrund hinter Kacheln |
shadowStrength | number | 0.19 | Oberfläche · Wurfschattenstärke 0–0,65 Schritt 0,01 |
shadowSoftness | number | 4 | Oberfläche · Wurfschattenweichheit 0,5–4 Schritt 0,1 |
Laufzeitvertrag
- Eine pausierte GSAP-Timeline registriert als
window.__timelines["code-slice-hero"]. - Neu-Synchronisation beim
hf-seek-CustomEvent; jeder Frame ist eine geschlossene Funktion der Zeit (nur gesäter PRNG, keine rAF-Schleifen, keinDate.now). - Renderer: GSAP, Canvas 2D, Gesäter PRNG.
- Externe Laufzeitabhängigkeiten: keine (lokal bereitgestellt).
- Lokale Schriftarten: assets/Geist-Bold.ttf.
Bearbeitungsregeln (aus dem Quellprojekt)
data-composition-variablesals einfach angegebenes Attribut mit einfachen"-JSON halten. Niemals über das Design-Panel von Studio speichern.<canvas>nicht im statischen Markup ablegen; zur Laufzeit erzeugen.- Jeden visuellen Zustand als Funktion von
thalten; Suchsicherheit ist das, was den Block renderfähig macht.