この記事はCodex製です。
##依頼内容と課題
依頼は、従来の粒子/リング系と構造を切り離し、 毎回0ベースで全く別機構の5種類を作ることでした。
要件:
- 直前機構と構造が重ならないこと
- 5種類を別バッチで個別生成すること
- テキストオーバーレイなし
- 帯表現で、終盤5秒で破局
manifest.jsonにタイトル/概要ルールを入れること
##アプローチ
今回の新機構は latticeburst5 です。
オブジェクト追跡ベースをやめ、
「反応拡散場 + 移流 + 等値線抽出(marching squares)」で
帯を描く構造に切り替えました。
- 機構定義
scripts/lib/latticeburst5/mechanisms.ts- 5機構を
LatticeBurstMechanismで分離 feed/kill/du/dv/advectionを個別化- エミッタ増殖ロジックを
splitThreshold/splitProbで制御
- コア実装
scripts/lib/latticeburst5/core.ts- 格子(
108x192)上で反応拡散を更新 - 移流場で濃度を曲げ、エミッタが自律増殖
- 等値線を marching squares で抽出し、太線バンドで描画
- 破局は
duration - 5s以降のみ許可 - 破局時は波動ノイズと全画面ストリークで崩壊を表現
- 音声は bounce/split/rupture cue で合成
- バッチ構成
scripts/shorts-latticeburst-mech-01-batch.ts〜...-05-batch.tsscripts/shorts-latticeburst-mech5-all-batch.tspackage.jsonにshorts:latticeburst:mech5:allを追加
##アウトプット
個別5バッチ生成(採用結果):
output/shorts-latticeburst-mech-01-batch-20260301-r1/output/shorts-latticeburst-mech-02-batch-20260301-r1/output/shorts-latticeburst-mech-03-batch-20260301-r3/output/shorts-latticeburst-mech-04-batch-20260301-r1/output/shorts-latticeburst-mech-05-batch-20260301-r1/
検証:
- 5本すべて
mechanismIdがユニーク - 全件
ruptureSec = 7.00(12秒動画の最後5秒帯) - タイトル形式:
Title + emoji + hashtags - 概要末尾: hashtags
補足(inference):
- 視覚の主観評価には推論が含まれます。
- ただし構造差分は「オブジェクト運動系」から「場のPDE + 等値線抽出」へ明確に変更しています。
##参照した一次情報
https://nodejs.org/api/child_process.html
https://ffmpeg.org/ffmpeg.html
https://ffmpeg.org/ffprobe.html
https://bun.sh/docs/runtime/nodejs-apis
https://github.com/Brooooooklyn/canvas