Communitygithub.com

szeproka/hyperframes-registry

Glasscherben fliegen durch Nebel und fügen sich zur Überschrift zusammen. HyperFrames-Block, 1920×1080, 12,16 s, 19 Variablen.

Was ist hyperframes-registry?

Der Skill 'Glass Shard Title' erzeugt einen animierten Titel, bei dem zersplitterte Glasstücke aus der Tiefe heranfliegen, sich rotierend zu einer Silhouette der Überschrift zusammenfügen und dann wieder an der Kamera vorbeifliegen. Jedes Fragment ist ein Sutherland–Hodgman-Schnitt eines verrauschten Kleckses gegen seine Voronoi-Zelle, sodass die Stücke die Buchstaben stets vollständig abdecken. Die Komposition unterstützt HyperFrames und kann sowohl über ein HTML-Attribut in eine Seite eingebunden als auch über die CLI mit individuellen Variablen gerendert werden. Mit 19 anpassbaren Parametern – von Flug- und Rotationszeiten über Nebelintensität bis hin zur Anzahl der Kacheln – bietet der Block umfangreiche Gestaltungsmöglichkeiten und ist vollständig seek-sicher, da jeder Frame eine deterministische Funktion der Zeit ist.

Funktioniert mit~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/szeproka/hyperframes-registry/tree/HEAD/registry/blocks/glass-shard-title

In Ihrer bevorzugten KI fragen

Öffnet einen neuen Chat, in dem dieser Agent-Skill bereits geladen ist.

Dokumentation

Glastitel aus Scherben

Voronoi-geschnittene Glasscheiben fliegen aus der Tiefe heran, rotieren und landen als gekachelte Silhouette der Überschrift, um dann wieder an der Kamera vorbeizufliegen. Jedes Stück ist ein Sutherland–Hodgman-Schnitt eines verrauschten Kleckses gegen seine Voronoi-Zelle, sodass die Teile den Buchstaben stets vollständig abdecken. Glas- und Matcap-Oberflächen erhalten pro Fragment Nebel; der Z-Flug ist von der Easing-Kurve entkoppelt, sodass die Scherben die Tiefe sichtbar durchqueren. Eine Kachelzahl von 1 ergibt eine einzelne Scheibe.

Kompositions-ID: glass-shard-title. Dauer 12,16 s bei 30 fps, 1920×1080.

Dateien

  • glass-shard-title.html (16 KB)
  • assets/ferndale_studio_01_1k.hdr (1,6 MB)
  • assets/fonts/Geist-Bold.ttf (65 KB)
  • assets/fonts/Geist-Regular.ttf (65 KB)
  • assets/fonts/Geist-SemiBold.ttf (65 KB)
  • assets/fonts/Geist-OFL.txt (4 KB)
  • assets/fonts/cormorant-garamond.woff2 (37 KB)
  • assets/fonts/CormorantGaramond-OFL.txt (4 KB)
  • assets/glass-main.js (549 KB)
  • assets/Three-LICENSE.txt (1 KB)
  • assets/matcap-1.png (wird bei der Installation vom CDN abgerufen)

Installation

Mit npx hyperframes add glass-shard-title installieren; die oben genannten Dateien landen standardmäßig unter compositions/glass-shard-title/. Anschließend wird der Block in der host-index.html eingebunden:

<div
  data-composition-id="glass-shard-title"
  data-composition-src="compositions/glass-shard-title/glass-shard-title.html"
  data-start="0"
  data-duration="12.16"
  data-track-index="1"
  data-width="1920"
  data-height="1080"
></div>

Zum Rendern mit benutzerdefinierten Werten wird die Kompositionsdatei direkt angesprochen:

npx --yes [email protected] render 'compositions/glass-shard-title/glass-shard-title.html' --variables '{"headline":"Designed in glass","tileCount":8}'

Variablen

Zur Laufzeit über window.__hyperframes.getVariables() auslesbar; auf dem Kompositions-Root als data-composition-variables deklariert (einfache Anführungszeichen, reines JSON).

idtypstandardbezeichnung / bereich
headlinestring"Designed in glass"Überschrift, max. 40 Zeichen
tileCountnumber8Kacheln 1–400 Schritt 1
roundnessnumber0.4Rundung (0-1) 0–1 Schritt 0.01
bevelnumber0.35Fase (0-1) 0–1 Schritt 0.01
meshSmoothnumber0.6Oberflächenglätte (0-1) 0–1 Schritt 0.01
flyInTimenumber2.3Einflugzeit (s) 0,2–6 Schritt 0,05
flyOutTimenumber2.4Ausflugzeit (s) 0,2–6 Schritt 0,05
staggernumber0.27Staffelung (0-1) 0–1 Schritt 0,01
flyInRotationnumber5Einflugrotation (0-60) 0–60 Schritt 0,1
flyOutRotationnumber6Ausflugrotation (0-6) 0–6 Schritt 0,1
chaosnumber0.25Kontur-Chaos (0-1) 0–1 Schritt 0,01
paddingnumber1Randabstand (0-1) 0–1 Schritt 0,01
sizeVariancenumber0.35Größenvarianz (0-1) 0–1 Schritt 0,01
gapnumber0.03Kachelabstand 0–0,3 Schritt 0,002
easePownumber10Einflug-Positions-Easing (1-10) 1–10 Schritt 0,1
sideDistnumber3Seitlicher Flugabstand 0–60 Schritt 0,5
zDistnumber-42Z-Einflug (negativ) -400–0 Schritt 2
zOutnumber14Z-Ausflug (+ = hinter Kamera) -400–60 Schritt 2
fognumber36Nebelentfernung (0 = aus) 0–400 Schritt 2

Laufzeitvertrag

  • Eine pausierte GSAP-Timeline registriert als window.__timelines["glass-shard-title"].
  • Neu-Synchronisation über das hf-seek-CustomEvent; jeder Frame ist eine geschlossene Funktion der Zeit (nur seeded PRNG, keine rAF-Schleifen, kein Date.now).
  • Renderer: three.js 0.181.2 (gebündelt), GSAP 3.14.2, Canvas 2D, GLSL-Shader, HDR-Umgebung, Matcap, Seeded PRNG, d3-delaunay, Schattenkarten. Budget ca. 350 MB pro Live-Instanz; nur eine gleichzeitig ausführen.
  • Externe Laufzeitabhängigkeiten: https://cdn.jsdelivr.net/npm/[email protected]/dist/gsap.min.js, https://cdn.jsdelivr.net/npm/[email protected]/dist/d3-delaunay.min.js.
  • Lokale Schriftarten: assets/fonts/Geist-Regular.ttf, assets/fonts/Geist-SemiBold.ttf, assets/fonts/Geist-Bold.ttf.
  • Der gebündelte Code ist in die Komposition eingebettet (assets/glass-main.js); nach Bearbeitung der .mjs-Quelle mit esbuild neu bündeln und wieder einbetten.

Bearbeitungsregeln (aus dem Quellprojekt)

  1. data-composition-variables als Attribut mit einfachen Anführungszeichen und plain "-JSON belassen. Niemals über das Studio-Design-Panel speichern.
  2. Kein <canvas> im statischen Markup; zur Laufzeit erzeugen.
  3. Jeden visuellen Zustand als Funktion von t belassen; Seek-Sicherheit ist das, was den Block renderbar macht.

Individual skills in this repo

This repo contains 4 individual skills — each has its own dedicated page.

Verwandte Skills