ai21.net
語言

<inputs>

示範影片

<inputs> — 1

提示詞

<inputs>
Give me:

* canvas color
* shape color
* accent color
* shape radius
* fonts
* the states the shape should morph through

Use hex codes, seconds, damping ratios and pixel sizes instead of adjectives.
</inputs>

<direction>
Make a 14 second, 1440x1440, 60fps seamless UI motion loop.

One shape, zero cuts.

The shape morphs from state to state and is never replaced.

Each state fills 50% of the frame.

The camera starts on the beat and settles slower than the shape.

Use closed-form springs.

Shape damping 0.72, settle time 0.35s.
Camera damping 1.0, settle time 0.6s.

Content swaps use 12px blur and fade over 0.15s.

The cursor tip stays locked to whatever it drags.
</direction>

<structure>
Use a 0.5s beat grid.

0.0 - pixel mascot idles
1.0 - mascot squashes into play button
1.5 - loader
2.0 - check draws
2.5 - timeline scrub
4.0 - keyframe stretches past the end and snaps back
5.0 - bezier editor
7.0 - counter rolls F 000 to F 840
8.5 - render bar fills
10.0 - command palette types "export mp4"
11.0 - toast says "840 frames rendered"
12.0 - toast shrinks back into the mascot

The last frame must be the first frame.
</structure>

<build>
Write one HTML file with Canvas 2D.

window.renderAt(t) must be a pure function of time.

No Math.random.
No clock.
No carried state.

?t= must freeze the exact moment.

Render every frame from renderAt(frame / 60).

Use 4 subframes for motion blur.

Encode to H.264 at 60fps.
</build>

<gotchas>
Fix the cursor jump at the loop wrap with:

t - 14*floor(t/14)

Do not cross-fade orange into ink.

Use a ripple from the center at 1.5s and from the click point at 12.0s.

Roll word swaps vertically.

Start draw-on after blur-in.

Aim the cursor at where the target will be when it lands.

Keep cursor speed under 65 px/frame.
</gotchas>

<start>
First show me the storyboard.

Then write the code.

After the first render, check 5 frames around every beat and fix the issues before the final render.
</start>

中文翻譯

<inputs>
請給我:

* 畫布顏色
* 圖形顏色
* 強調色
* 圖形圓角半徑
* 字體
* 圖形應當形變經過的各個狀態

使用十六進制色值、秒、阻尼比和像素尺寸,而不是形容詞。
</inputs>

<direction>
製作一個 14 秒、1440x1440、60fps 的無縫 UI 動效循環。

一個圖形,零剪輯。

圖形從一個狀態形變到下一個狀態,永遠不會被替換。

每個狀態佔據畫面的 50%。

相機在節拍點啓動,並比圖形更慢地穩定下來。

使用閉式解彈簧。

圖形阻尼 0.72,穩定時間 0.35s。
相機阻尼 1.0,穩定時間 0.6s。

內容切換使用 12px 模糊,並在 0.15s 內淡出。

光標尖端始終鎖定在它所拖拽的對象上。
</direction>

<structure>
使用 0.5s 的節拍網格。

0.0 - 像素吉祥物待機
1.0 - 吉祥物壓扁成播放按鈕
1.5 - 加載指示器
2.0 - 對勾繪製
2.5 - 時間線拖動
4.0 - 關鍵幀拉伸越過末尾後彈回
5.0 - 貝塞爾編輯器
7.0 - 計數器從 F 000 滾動到 F 840
8.5 - 渲染進度條填充
10.0 - 命令面板輸入“export mp4”
11.0 - toast 顯示“840 frames rendered”
12.0 - toast 縮回吉祥物中

最後一幀必須與第一幀相同。
</structure>

<build>
用一個 HTML 文件,使用 Canvas 2D。

window.renderAt(t) 必須是關於時間的純函數。

不得使用 Math.random。
不得使用時鐘。
不得攜帶狀態。

?t= 必須凍結到精確的瞬間。

用 renderAt(frame / 60) 渲染每一幀。

使用 4 個子幀實現運動模糊。

以 60fps 編碼爲 H.264。
</build>

<gotchas>
用以下方式修復循環銜接處的光標跳變:

t - 14*floor(t/14)

不要讓橙色交叉淡化爲墨色。

在 1.5s 使用從中心擴散的漣漪,在 12.0s 使用從點擊點擴散的漣漪。

單詞切換採用垂直滾動。

在模糊進入之後再開始繪製。

讓光標瞄準目標落位時所在的點。

保持光標速度低於 65 px/幀。
</gotchas>

<start>
先給我看分鏡腳本。

然後再寫代碼。

第一次渲染後,檢查每個節拍點前後的 5 幀,並在最終渲染前修正這些問題。
</start>

溯源

原作者
flxrnc
發佈日期
2026-10-08(由推文 ID 反解)
原始出處
查看原帖 ↗
收錄來源
yihui-dev/awesome-opus5-5-videos · flxrnc-251921 · MIT