ai21.net
言語

サッカーの9つのルールを解説する教育動画

サッカーの9つのルールを解説する教育動画 — 1

プロンプト

Postav mi video, které vysvětluje pravidla sportu stylem televizní analýzy s AR grafikou. Bez AI video modelů a bez stahování assetů: 3D scénu, postavy, textury, grafiku i zvuk vytvoř kódem. Pracuj samostatně a průběžně mi ukazuj kontrolní snímky.

## Parametry (pro jiný sport změň tuhle sekci a sekci Scénář)
- Sport: fotbal
- Pravidla (9): ofsajd, faul, pokutový kop, vhazování, rohový kop + kop od branky, hra rukou, přímý volný kop, žlutá a červená karta, gól (celý míč za čarou)
- Jazyk všech textů: čeština (plná diakritika, desetinná čárka)
- Délka: cca 68 s (úvod ~4,5 s, každé pravidlo 6 až 8 s, závěr ~4 s)
- Formát: 1920×1080, 30 fps, MP4 (H.264 + AAC)
- Styl postav: PS2 éra ve stylu GTA San Andreas (low-poly tvarované tělo, ručně malované textury)
- Týmy: Červení (červený dres s bílými lemy, bílé trenky), Modří (královsky modrý dres, tmavě modré trenky), rozhodčí černý s limetkovými lemy, brankáři zelený a fialový

## Technologie a pipeline
- Three.js (npm). index.html obsahuje WebGL canvas 1920×1080 a nad ním DOM vrstvu pro HUD.
- Deterministická funkce `window.renderFrame(t)`: stav scény i HUD je čistá funkce času, žádný stav mezi snímky.
- `render.mjs`: lokální statický HTTP server + puppeteer-core se systémovým Chrome (headless, na Macu `--use-angle=metal`). Pro každý snímek zavolej renderFrame(t), počkej 2× requestAnimationFrame, udělej JPEG screenshot a pošli ho rourou do ffmpeg (libx264, CRF 18, yuv420p). Režimy: `stills t1 t2 …` (PNG na kontrolu), `video`, `info` (zapíše časovou osu do out/timeline.json).
- Cesty řeš přes fileURLToPath (složky s mezerami v názvu).
- WebGLRenderer s `preserveDrawingBuffer: true`, ACES tone mapping, PCF soft shadows. EffectComposer s MSAA (samples 4, HalfFloat): RenderPass, UnrealBloomPass, vlastní grade pass (vinětace, jemné zrno, chromatická aberace, záblesk, whip blur, VHS efekt), OutputPass.
- Zvuk: Python (numpy + scipy) syntetizuje celý soundtrack do WAV, ffmpeg ho přimíchá (AAC 192k).
- Výstupy: plná kvalita + webová verze (CRF 23 až 24, maxrate 10M).

## Struktura projektu
src/util.js (easing, tmap pro freeze a zpomalení, track() pro pohyb hráčů po časovaných waypointech s fází běhu podle uražené vzdálenosti, seeded rng), src/world.js, src/player.js, src/ar.js, src/hud.js, src/grade.js, src/segments.js, src/main.js, render.mjs, https://audio.py/, PROGRESS.md (průběžně zapisuj, co je hotové a jak se to pouští, ať se dá navázat po přerušení).

## Svět
- Hřiště 105×68 m. Tráva jako canvas textura (pruhy po 5,25 m, šum, skvrny) + dlaždicová detail textura přes onBeforeCompile. Čáry jako ostrá geometrie, ne textura. Vnější hrana čar = hranice hřiště.
- Branky se sítí (LineSegments), rohové praporky.
- Stadion: dvoupatrová mísa podle superelipsy, dav jako canvas textura lidí v řadách, LED pás mezi patry, střecha s žebry, řady reflektorů na hraně střechy (emisivní, bloom), vnější fasáda s osvětlenými okny, noční obloha, světla města kolem, tmavá zem.
- LED mantinely kolem hřiště s českými nápisy (PRAVIDLA FOTBALU, RESPEKT, FAIR PLAY, ZNEJ PRAVIDLA, #PRAVIDLAFOTBALU), pomalu se posouvají.
- Světla: 4 směrová světla z rohů střechy se stíny (shadow kamera zaostřená na akci daného segmentu), hemisférické světlo, jemná mlha.
- Analytický grade: do všech materiálů světa vlož přes onBeforeCompile sdílený uniform uFreeze (odbarvení do chladné šedozelené + ztmavení). AR materiály ho nemají, takže při zastaveném obrazu zůstanou syté.

## Postavy (styl GTA San Andreas)
- Hierarchický rig: root → body (pánev) → trup → hlava a ramena → lokty, kyčle → kolena → kotníky. Póza = sada úhlů (náklon a rotace trupu, flexe a abdukce ramen, lokty, kyčle, kolena, kotníky, náklon těla, výskok).
- Geometrie: trup jako LatheGeometry (široká ramena, užší pas), zúžené končetiny, klouby jako koule, dlaň s palcem, kopačka s podrážkou a zúženou špičkou, tvarovaná hlava (užší brada), nos, uši, vlasy jako slupka (krátké, objemné, ježek, holá hlava).
- Ručně malované canvas textury: obličej (oči s duhovkou a odleskem, obočí, stín nosu, rty, tváře, strniště nebo vousy, vlasová linie), dres (V-výstřih, boční pruhy, znak, sponzor, jméno a velké číslo na zádech, vrásky látky), rukávy, trenky s číslem, štulpny s pruhy.
- Každý hráč jiný: pleť, vlasy, účes, oči, vousy, barva kopaček, postava. Česká jména na zádech (NOVÁK, DVOŘÁK, RŮŽIČKA…).
- Procedurální běh (fáze z uražené vzdálenosti, ať nohy nekloužou) + knihovna póz: kop (nápřah, úder, dokopnutí), skluz, zakopnutí a pád, vhazování, výskok s paží nad hlavou, zvednutá karta, postoj ve zdi, výskok zdi, robinzonáda brankáře, hlava dolů.
- Zvýraznění: obrysová slupka (inverted hull, tloušťka podle vzdálenosti od kamery), průsvitný hologram „ducha“ pro naznačení restartu, rozsvícení paže.

## AR grafika (additive blending, depthWrite false, kreslí se postupně přes progress)
GroundLine (zářící čára na zemi), Curtain (svislá rovina: ofsajd, branková a postranní čára), GroundRing (prstenec nebo disk s pulzem, čárkováním a výsečí, třeba kruh 9,15 m), Area (vyplněné území s okrajem a skenem), Trail (trubice trajektorie míče), GroundArrow (šipka s běžícími chevrony), Marker (zaměřovač kontaktu), Beam (světelný sloup), ScanGrid (skenovací mřížka), Segment3D (měřicí úsečky), Silhouette (válec obrysu těla).
Barvy: tyrkysová = měření, červená = přestupek, jantarová = míč a území, zelená = platné rozhodnutí.
DŮLEŽITÉ: shadery musí být NaN-safe (clamp UV, žádné pow ze záporného čísla). MSAA na hranách extrapoluje UV a NaN se v bloomu rozleje do černých bloků přes půl obrazu.

## HUD (DOM, styl sportovního přenosu)
- Logo vlevo nahoře „PRAVIDLA FOTBALU / AR ANALÝZA ZÁPASU“ + počítadlo „01 / 09“.
- Vpravo nahoře stav (ŽIVĚ, ZÁZNAM, ZPOMALENĚ ×0,6, STOP · AR, PŘETÁČENÍ ◀◀, KONEC ZÁPASU) a herní čas.
- Lower third vlevo dole: číslo pravidla, název, jednověté vysvětlení, ukazatel postupu z 9 dílků.
- Panel rozhodnutí vpravo dole v barvě rozhodnutí (OFSAJD, PENALTA, GÓL…) s podtitulkem.
- Při zastavení obrazu: záblesk, rohové závorky, štítek „ZASTAVENÝ OBRAZ · AR ANALÝZA“, krátký technický řádek dole.
- AR štítky ukotvené na 3D bod (projekce kamerou) s odkazovou čarou. Drž je v bezpečné zóně (ne pod spodní grafikou, ne pod logem) a nesmí se překrývat.
- Velká grafika karty (žlutá a červená) s důvody, úvodní titulek, závěr „TEĎ ZNÁŠ PRAVIDLA.“ s mřížkou 9 pravidel, stinger přechod (šikmé pruhy navy, tyrkysová, bílá + logo) na každém střihu.
- Čitelnost: minimální velikosti (název pravidla 66 px, popis 29 px, štítek 33 px + podtitulek 21 px, technický řádek 22 px). Text vždy na tmavém podkladu, krátké texty. Line-height aspoň 1,05, aby diakritika (Ž, Č, Ř) nebyla oříznutá. Titulky neodhaluj maskou, vypadá to jako ořez: použij fade + rozostření + lehký zoom.
- Fonty: systémové s českou diakritikou (na macOS DIN Condensed + Avenir Next Condensed). Pokrytí znaků ověř předem přes fc-query.

## Scénář (vnitřní časy segmentů, natažení na čtení viz další sekce)
Úvod (3,5 s): dron sjíždí z noční oblohy přes střechu do stadionu na široký záběr středu hřiště. Skenovací mřížka přejede hřiště, pod hráči naskočí kroužky, štítek „MÍČ SLEDOVÁN“. Titulek „PRAVIDLA FOTBALU“, nad ním „TV ANALÝZA PRAVIDEL“, pod ním „9 KLÍČOVÝCH PRAVIDEL · AR ANALÝZA“.
1. Ofsajd: televizní kamera, Červený #8 přihrává, zastavení v okamžiku přihrávky. Kamera se přesune do osy ofsajdové linie. Tyrkysová rovina u nejzazší části těla předposledního obránce (Modrý #4), červená u předsunutého kolena útočníka (Červený #9), měření „+1,59 m“ (spočítej z kloubů, paže se nepočítají). Rozhodnutí OFSAJD: nepřímý volný kop, Modří.
2. Faul: záznam ×0,6 nízko u trávníku. Modrý #10 vede míč, Červený #6 jde skluzem zezadu do kotníku. Zastavení v okamžiku kontaktu: zaměřovač „KONTAKT“, „MÍSTO FAULU“ (kruh + sloup), šipka dráhy skluzu, červený obrys. Kamera obkrouží, pak pád. FAUL: přímý volný kop.
3. Penalta: Červený #9 ve vápně, Modrý #3 ho podrazí. Zastavení, jeřáb nahoru. Zvýraznění pokutového území, oblouk z místa faulu na pokutovou značku s drátěným míčem, „11 m“. PENALTA.
4. Vhazování: přihrávka Červeného #2 přejede postranní čáru (trajektorie se kreslí živě). Zastavení až ve chvíli, kdy je celý míč venku, střih na kameru za čarou. Červená rovina, „+15 cm“, „CELÝ MÍČ VENKU“, „POSLEDNÍ DOTEK · ČERVENÝ #2“, modrá šipka do hřiště a hologram modrého hráče s míčem nad hlavou. VHAZOVÁNÍ (Modří).
5. Roh + kop od branky: střela Červeného #10 tečovaná Modrým #4 za brankovou čáru → ROHOVÝ KOP. Pak efekt přetáčení (VHS) a stejná střela bez teče → KOP OD BRANKY (zvýrazněné brankové území).
6. Hra rukou: střela, Modrý #5 ve výskoku s paží nad ramenem, míč do předloktí. Paže zčervená, ramenní linie, čára paže „ÚHEL PAŽE 135°“, průsvitný válec „OBRYS TĚLA“. RUKA: přímý volný kop.
7. Volný kop: zeď na 8,00 m „ZEĎ MOC BLÍZKO“, nakreslí se kruh 9,15 m, zeď ustoupí, číslo naběhne na 9,15 m a zezelená. Kamera za exekutora, zahraný oblouk přes zeď zpomaleně, zastavení „PŘES ZEĎ“. PŘÍMÝ VOLNÝ KOP.
8. Karty: detail rozhodčího se žlutou kartou proti hráči se svěšenou hlavou + velká grafika ŽLUTÁ KARTA / NAPOMENUTÍ se 3 důvody. Střih, červená karta, vyloučený odchází + ČERVENÁ KARTA / VYLOUČENÍ.
9. Gól: střela, brankář vyrazí, míč padá na čáru. Kamera u brankové čáry. První zastavení: polovina míče na čáře, červená rovina, „−11 cm“, „ZATÍM NENÍ GÓL“. Míč se dokutálí. Druhé zastavení: celý míč za čarou, rovina zezelená, „+3 cm“, blesky foťáků v hledišti. GÓL.
Závěr (2,5 s): kamera stoupá nad hřiště (návrat k úvodnímu záběru), mřížka, „TEĎ ZNÁŠ PRAVIDLA.“ + mřížka 9 pravidel, stmívačka.

Každé zastavení obrazu: krátký záblesk, odbarvení scény, kamera se dál pomalu hýbe kolem zmrazených hráčů, AR prvky naskakují postupně. Mezi segmenty vždy stinger.

## Čas na čtení
Akce (běh, kopy, skluzy) běží ve skutečné rychlosti. Analytické části každého segmentu natáhni 1,5× až 2,1× přes warp funkci (výstupní čas → vnitřní čas segmentu), aby každé pravidlo bylo na obrazovce 6 až 8 s a všechny texty se daly v klidu přečíst. `node render.mjs info` exportuje výslednou časovou osu do out/timeline.json.

## Zvuk (procedurální, https://audio.py/)
120 BPM broadcast groove (kopák, virbl, hi-haty, basa se sidechainem, arpeggio, pad), riser v úvodu, závěrečný akord. Při zastaveném obrazu hudba ztlumená low-passem. Dav (filtrovaný šum s vlněním, řev při gólu), whoosh + boom na každém střihu, kovový úder na každém zastavení, krátké „razítko“ při rozhodnutí, píšťalka, kopy do míče, zvuk přetáčení. Časy všech zvuků načti z out/timeline.json, ať sedí na obraz i po změně délky. Cílová hlasitost kolem −14 LUFS.

## Postup práce a kontrola
1. Nejdřív rozjeď pipeline (server, render, ffmpeg) s jednou scénou a ověř, že WebGL v headless Chrome běží.
2. Po každé změně vyrenderuj kontrolní snímky v klíčových časech a prohlédni je, včetně výřezů na 100 % kvůli textu a diakritice.
3. Celé video kontroluj přes kontaktní listy (ffmpeg filtr tile) a snímky kolem přechodů.
4. Hotové video ověř dekódováním (`ffmpeg -v error -i video.mp4 -f null -`) a délku a stopy přes ffprobe.
5. Do PROGRESS.md průběžně zapisuj, co je hotové a jakými příkazy se to pouští.

日本語訳

テレビ分析とARグラフィックのスタイルで、スポーツのルールを解説する動画を作ってほしい。AI動画モデルは使わず、アセットのダウンロードもなし:3Dシーン、キャラクター、テクスチャ、グラフィック、音声はコードで作ること。単独で作業を進め、確認用のフレームを随時見せること。

## パラメータ(別のスポーツにする場合は、このセクションと「シナリオ」セクションを変更する)
- スポーツ:サッカー
- ルール(9):オフサイド、ファウル、ペナルティキック、スローイン、コーナーキック+ゴールキック、ハンド、直接フリーキック、イエローカードとレッドカード、ゴール(ボール全体がラインを越えた場合)
- すべてのテキストの言語:チェコ語(完全なダイアクリティカルマーク、小数点はカンマ)
- 長さ:約68秒(導入 約4.5秒、各ルール6〜8秒、結び 約4秒)
- フォーマット:1920×1080、30 fps、MP4(H.264 + AAC)
- キャラクターのスタイル:GTA San Andreas風のPS2時代(ローポリの造形ボディ、手描きテクスチャ)
- チーム:赤チーム(白い縁取りの赤いユニフォーム、白いショーツ)、青チーム(ロイヤルブルーのユニフォーム、濃紺のショーツ)、審判はライム色の縁取りが入った黒、ゴールキーパーは緑と紫

## 技術とパイプライン
- Three.js(npm)。index.htmlには1920×1080のWebGL canvasと、その上に重ねるHUD用のDOMレイヤーを含める。
- 決定論的な関数 `window.renderFrame(t)`:シーンとHUDの状態は時間の純粋関数であり、フレーム間の状態を持たない。
- `render.mjs`:ローカルの静的HTTPサーバー+システムのChromeを使うpuppeteer-core(headless、Macでは`--use-angle=metal`)。各フレームでrenderFrame(t)を呼び、requestAnimationFrameを2回待ち、JPEGスクリーンショットを撮ってパイプでffmpegへ送る(libx264、CRF 18、yuv420p)。モード:`stills t1 t2 …`(確認用PNG)、`video`、`info`(タイムラインをout/timeline.jsonに書き出す)。
- パスはfileURLToPath経由で扱う(名前にスペースを含むフォルダ)。
- `preserveDrawingBuffer: true`のWebGLRenderer、ACESトーンマッピング、PCFソフトシャドウ。MSAA付きのEffectComposer(samples 4、HalfFloat):RenderPass、UnrealBloomPass、独自のグレードパス(ビネット、細かなグレイン、色収差、フラッシュ、ウィップブラー、VHSエフェクト)、OutputPass。
- 音声:Python(numpy + scipy)がサウンドトラック全体をWAVに合成し、ffmpegがミックスする(AAC 192k)。
- 出力:フル品質+Web版(CRF 23〜24、maxrate 10M)。

## プロジェクト構成
src/util.js(イージング、フリーズとスローモーション用のtmap、時間指定のウェイポイント間を移動する選手用のtrack()(走行距離に応じた走行フェーズ付き)、シード付きrng)、src/world.js、src/player.js、src/ar.js、src/hud.js、src/grade.js、src/segments.js、src/main.js、render.mjs、https://audio.py/、PROGRESS.md(何が完成していてどう起動するかを随時書き、中断後にも再開できるようにする)。

## 世界
- ピッチは105×68 m。芝はcanvasテクスチャ(5.25 mごとのストライプ、ノイズ、シミ)+onBeforeCompileによるタイル状のディテールテクスチャ。ラインはテクスチャではなくシャープなジオメトリ。ラインの外側エッジ=ピッチの境界。
- ネット付きのゴール(LineSegments)、コーナーフラッグ。
- スタジアム:スーパー楕円に沿った二層のボウル、観客は列に並ぶ人々のcanvasテクスチャ、層の間のLED帯、リブ付きの屋根、屋根の縁に並ぶ投光照明(エミッシブ、ブルーム)、窓が灯る外壁、夜空、周囲の街の明かり、暗い地面。
- ピッチ周囲のLEDボードにはチェコ語の表示(PRAVIDLA FOTBALU、RESPEKT、FAIR PLAY、ZNEJ PRAVIDLA、#PRAVIDLAFOTBALU)を出し、ゆっくりスクロールさせる。
- ライト:屋根の四隅からの4つのディレクショナルライト(影付き、シャドウカメラは各セグメントのアクションにピントを合わせる)、半球ライト、かすかな霧。
- 分析用グレード:onBeforeCompile経由で世界のすべてのマテリアルに共有uniform uFreezeを注入する(冷たい灰緑色への脱色+暗転)。ARマテリアルにはこれがないため、フリーズ時も彩度が保たれる。

## キャラクター(GTA San Andreasスタイル)
- 階層リグ:root → body(骨盤)→ 胴体 → 頭と肩 → 肘、股関節 → 膝 → 足首。ポーズ=角度のセット(胴体の傾きと回転、肩の屈曲と外転、肘、股関節、膝、足首、体の傾き、ジャンプ)。
- ジオメトリ:胴体はLatheGeometry(広い肩、細い腰)、先細りの四肢、球体の関節、親指付きの手のひら、ソールと細い先端を持つスパイク、造形された頭(細い顎)、鼻、耳、シェル状の髪(短髪、ボリューム、スパイク、坊主頭)。
- 手描きのcanvasテクスチャ:顔(虹彩とハイライト付きの目、眉、鼻の影、唇、頬、無精ひげまたはひげ、生え際)、ユニフォーム(Vネック、サイドストライプ、エンブレム、スポンサー、背中の名前と大きな背番号、生地のシワ)、袖、番号入りのショーツ、ストライプ入りのソックス。
- 選手はそれぞれ異なる:肌、髪、髪型、目、ひげ、スパイクの色、体格。背中にはチェコ語の名前(NOVÁK、DVOŘÁK、RŮŽIČKA…)。
- 手続き的な走り(走行距離から決まるフェーズで脚が滑らないように)+ポーズライブラリ:キック(振りかぶり、インパクト、フォロースルー)、スライディング、つまずきと転倒、スローイン、頭上まで腕を上げたジャンプ、カードを掲げる、壁に入る立ち方、壁のジャンプ、GKのダイビングセーブ、うつむき。
- ハイライト:アウトラインシェル(インバーテッドハル、カメラからの距離に応じた厚み)、再開を示す半透明の「ゴースト」ホログラム、腕の発光。

## ARグラフィック(加算合成、depthWrite false、progressに応じて順次描画)
GroundLine(地面に光るライン)、Curtain(垂直な平面:オフサイド、ゴールライン、タッチライン)、GroundRing(パルス、破線、扇形を持つリングまたはディスク、例えば9.15 mの円)、Area(縁とスキャン付きの塗りつぶし領域)、Trail(ボールの軌跡のチューブ)、GroundArrow(走るシェブロン付きの矢印)、Marker(接触の照準)、Beam(光の柱)、ScanGrid(スキャングリッド)、Segment3D(測定用の線分)、Silhouette(体の輪郭の円柱)。
色:ターコイズ=計測、赤=反則、アンバー=ボールと領域、緑=有効な判定。
重要:シェーダーはNaNセーフでなければならない(UVをclampし、負の数に対するpowは使わない)。エッジのMSAAはUVを外挿し、NaNはブルームで画面の半分に及ぶ黒いブロックとして広がる。

## HUD(DOM、スポーツ中継スタイル)
- 左上のロゴ „PRAVIDLA FOTBALU / AR ANALÝZA ZÁPASU“ +カウンター „01 / 09“。
- 右上のステータス(ŽIVĚ、ZÁZNAM、ZPOMALENĚ ×0,6、STOP · AR、PŘETÁČENÍ ◀◀、KONEC ZÁPASU)と試合時間。
- 左下のロワーサード:ルール番号、名称、一文の説明、9分割の進行インジケーター。
- 右下に判定パネルを判定色で(OFSAJD、PENALTA、GÓL…)、サブタイトル付き。
- フリーズ時:フラッシュ、四隅のブラケット、ラベル „ZASTAVENÝ OBRAZ · AR ANALÝZA“、下部に短い技術的な一行。
- ARラベルは3Dポイントに固定(カメラ投影)し、引き出し線を付ける。セーフゾーン内(下部グラフィックの下やロゴの下に置かない)に保ち、重ならないようにすること。
- カードの大きなグラフィック(黄と赤)と理由、オープニングタイトル、9つのルールのグリッド付きの結び „TEĎ ZNÁŠ PRAVIDLA.“、すべてのカットにスティンガー・トランジション(斜めのネイビー、ターコイズ、白のストライプ+ロゴ)。
- 可読性:最小サイズ(ルール名66 px、説明29 px、ラベル33 px+サブタイトル21 px、技術行22 px)。テキストは常に暗い下地の上に置き、短く保つ。ダイアクリティカルマーク(Ž、Č、Ř)が切れないよう、行間は最低1.05。タイトルはマスクで表示しない(切り抜きに見える):フェード+ぼかし+軽いズームを使う。
- フォント:チェコ語のダイアクリティカルマークに対応したシステムフォント(macOSではDIN Condensed + Avenir Next Condensed)。文字のカバレッジは事前にfc-queryで確認する。

## シナリオ(セグメントの内部時間、読み取り用の引き伸ばしは次のセクションを参照)
導入(3.5秒):ドローンが夜空から屋根を越えてスタジアムへ降下し、ピッチ中央のワイドショットになる。スキャングリッドがピッチを走査し、選手の下にリングが現れ、ラベル „MÍČ SLEDOVÁN“ が表示される。タイトル „PRAVIDLA FOTBALU“、その上に „TV ANALÝZA PRAVIDEL“、その下に „9 KLÍČOVÝCH PRAVIDEL · AR ANALÝZA“。
1. オフサイド:テレビカメラ。赤の#8がパスを出し、パスの瞬間にフリーズ。カメラはオフサイドラインの軸へ移動する。最後から2人目の守備者(青の#4)の体の最も後方の部分にターコイズの平面、攻撃者(赤の#9)の前に出た膝に赤い平面、計測 „+1,59 m“(関節から算出し、腕は含めない)。判定はOFSAJD:間接フリーキック、青チーム。
2. ファウル:芝のすぐそばの低い位置から×0.6のリプレイ。青の#10がボールを運び、赤の#6が後方から足首へスライディング。接触の瞬間にフリーズ:照準 „KONTAKT“、„MÍSTO FAULU“(円+柱)、スライディング軌道の矢印、赤い輪郭。カメラが周回し、その後に転倒。FAUL:直接フリーキック。
3. ペナルティ:ペナルティエリア内の赤の#9を青の#3が倒す。フリーズし、クレーンが上昇。ペナルティエリアをハイライトし、ファウルの地点からペナルティマークへ、ワイヤーフレームのボール付きの弧を描き、„11 m“。PENALTA。
4. スローイン:赤の#2のパスがタッチラインを越える(軌道はライブで描画される)。ボール全体が外に出た瞬間にフリーズし、ラインの外側のカメラへ切り替える。赤い平面、„+15 cm“、„CELÝ MÍČ VENKU“、„POSLEDNÍ DOTEK · ČERVENÝ #2“、ピッチ内への青い矢印、頭上にボールを持つ青の選手のホログラム。VHAZOVÁNÍ(青チーム)。
5. コーナー+ゴールキック:赤の#10のシュートが青の#4に触れてゴールラインの外へ → ROHOVÝ KOP。その後、巻き戻しエフェクト(VHS)を挟み、同じシュートが誰にも触れずに → KOP OD BRANKY(ゴールエリアをハイライト)。
6. ハンド:シュート、青の#5が肩より上に腕を上げてジャンプし、ボールが前腕に当たる。腕が赤くなり、肩のライン、腕のライン „ÚHEL PAŽE 135°“、半透明の円柱 „OBRYS TĚLA“。RUKA:直接フリーキック。
7. フリーキック:壁が8.00 mに „ZEĎ MOC BLÍZKO“、9.15 mの円が描かれ、壁が下がる。数字が9.15 mに上がって緑になる。執行者の後方からのカメラ、壁を越える弧をスローモーションで、フリーズ „PŘES ZEĎ“。PŘÍMÝ VOLNÝ KOP。
8. カード:うつむく選手に対してイエローカードを出す審判のアップ+大きなグラフィック ŽLUTÁ KARTA / NAPOMENUTÍ と3つの理由。カット、レッドカード、退場者が去る+ČERVENÁ KARTA / VYLOUČENÍ。
9. ゴール:シュート、GKが弾き、ボールがライン上に落ちる。ゴールライン際のカメラ。最初のフリーズ:ボールの半分がライン上、赤い平面、„−11 cm“、„ZATÍM NENÍ GÓL“。ボールが転がっていく。2回目のフリーズ:ボール全体がラインの外、平面が緑になり、„+3 cm“、スタンドでカメラのフラッシュ。GÓL。
結び(2.5秒):カメラがピッチの上へ上昇(冒頭のショットに戻る)、グリッド、„TEĎ ZNÁŠ PRAVIDLA.“ +9つのルールのグリッド、フェードアウト。

各フリーズでは:短いフラッシュ、シーンの脱色、フリーズした選手の周りをカメラがゆっくり動き続け、AR要素が順に現れる。セグメント間には必ずスティンガーを入れる。

## 読み取りのための時間
アクション(走り、キック、スライディング)は実速で再生する。各セグメントの分析パートは、warp関数(出力時間 → セグメントの内部時間)で1.5倍から2.1倍に引き伸ばし、各ルールが画面に6〜8秒表示されて、すべてのテキストを落ち着いて読めるようにする。`node render.mjs info` は最終的なタイムラインをout/timeline.jsonに書き出す。

## 音(プロシージャル、https://audio.py/)
120 BPMのブロードキャスト・グルーヴ(キック、スネア、ハイハット、サイドチェインのかかったベース、アルペジオ、パッド)、導入のライザー、結びのコード。フリーズ中は音楽をローパスでこもらせる。観客(フィルターをかけた揺らぎのあるノイズ、ゴール時の歓声)、各カットにフーッシュ+ブーム、各フリーズに金属的な打撃音、判定時に短い「スタンプ」音、ホイッスル、ボールを蹴る音、巻き戻しの音。すべての音の時間はout/timeline.jsonから読み込み、尺が変わっても映像に合うようにする。目標ラウドネスは約−14 LUFS。

## 作業手順と確認
1. まず1つのシーンでパイプライン(サーバー、レンダー、ffmpeg)を動かし、headless ChromeでWebGLが動作することを確認する。
2. 変更のたびにキーとなる時点の確認用フレームをレンダリングして目を通す。テキストとダイアクリティカルマークのため、100%のトリミングも含めて確認する。
3. 動画全体はコンタクトシート(ffmpegのtileフィルター)とトランジション前後のフレームで確認する。
4. 完成した動画はデコード(`ffmpeg -v error -i video.mp4 -f null -`)で、長さとトラックはffprobeで検証する。
5. PROGRESS.mdには、何が完成していてどのコマンドで起動するのかを随時書き記す。

出典

原作者
lukasersil
公開日
2026-10-02(由推文 ID 反解)
原典
元の投稿を見る ↗
収録元
zhuyansen/awesome-opus-5.5-video · 2105922894924501283 · ライセンス未表明