Titel mit Wireframe-Portal
Extrudierte Wireframe-Buchstaben werden aus der mitgelieferten Geist-Schriftart mit einem TTF-Loader und Polygon-Offsetting aufgebaut und dann durch eine Portal-Explosion sichtbar, deren Chaos variabel ist. Ein zweiter Beat tauscht die Buchstaben gegen einen Ersatzsatz mit automatischer Zeilenumbrüchen und Schriftgrößenanpassung, abgestuft mit einer einstellbaren Easing-Kurve und einem Beruhigungs-Glitch, optional mit Tiefennebel.
Kompositions-ID: wireframe-portal-title. Dauer 8 s bei 30 fps, 1920×1080.
Dateien
wireframe-portal-title.html(63 KB)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)
Installation
Installation mit npx hyperframes add wireframe-portal-title; standardmäßig landen die oben genannten Dateien unter compositions/wireframe-portal-title/. Binden Sie den Block dann aus der Host-index.html ein:
<div
data-composition-id="wireframe-portal-title"
data-composition-src="compositions/wireframe-portal-title/wireframe-portal-title.html"
data-start="0"
data-duration="8"
data-track-index="1"
data-width="1920"
data-height="1080"
></div>
Rendern Sie mit benutzerdefinierten Werten, indem Sie die Kompositionsdatei direkt angeben:
npx --yes [email protected] render 'compositions/wireframe-portal-title/wireframe-portal-title.html' --variables '{"title":"BREAKTHROUGH","replacementPhrase":"Lets do this sir!"}'
Variablen
Werden zur Laufzeit über window.__hyperframes.getVariables() ausgelesen; auf dem Kompositionsstamm-Element als data-composition-variables deklariert (einfach angegebenes Attribut, reines JSON).
| id | typ | standard | beschriftung / bereich |
|---|---|---|---|
title | string | "BREAKTHROUGH" | Titel max. 18 Zeichen |
replacementPhrase | string | "Lets do this sir!" | 3D-Ersatzsatz (automatisches Layout) |
phraseDuration | number | 1.85 | Dauer des Satzübergangs (s) 0,65–2,9 Schritt 0,05 |
phraseEasing | number | 8 | Übergangs-Easing (1 sanft – 8 ruckartig) 1–8 Schritt 0,25 |
settleGlitch | number | 0.2 | Stärke des Buchstaben-Beruhigungs-Glitches 0–4 Schritt 0,05 |
depthFog | boolean | true | Tiefennebel (frühes Ausblenden immer aktiv) |
subtitle | string | "HYPERFRAMES PORTAL TITLE" | Untertitel max. 48 Zeichen |
accent | color | "#F5C518" | Akzentfarbe |
burstChaos | number | 1 | Explosions-Chaos (0-2) 0–2 Schritt 0,01 |
Laufzeitvertrag
- Ein pausierter GSAP-Timeline, registriert als
window.__timelines["wireframe-portal-title"]. - Wird bei dem
hf-seek-CustomEvent neu synchronisiert; jeder Frame ist eine geschlossene Funktion der Zeit (nur gesäter PRNG, keine rAF-Schleifen, kein Date.now). - Renderer: three.js 0.181.2, GSAP 3.14.2, Canvas 2D, GLSL-Shader, Post-Processing, Gesäter PRNG, Clipper. Budget ca. 350 MB pro Live-Instanz; immer 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]/clipper.js,https://cdn.jsdelivr.net/npm/[email protected]/build/three.module.js,https://cdn.jsdelivr.net/npm/[email protected]/examples/jsm/. - Lokale Schriftarten: assets/fonts/Geist-Regular.ttf, assets/fonts/Geist-SemiBold.ttf, assets/fonts/Geist-Bold.ttf.
Bearbeitungsregeln (aus dem Quellprojekt)
- Behalten Sie
data-composition-variablesals ein einfach angegebenes Attribut mit"JSON bei. Speichern Sie es niemals über das Studio-Design-Panel. - Fügen Sie
<canvas>nicht in statisches Markup ein; erstellen Sie es zur Laufzeit. - Halten Sie jeden visuellen Zustand eine Funktion von t; Suchsicherheit ist das, was den Block renderbar macht.