Apple Design:發表影片
此技能可製作長度30-35秒、風格類似Apple發表會廣告的產品影片。隨附兩部已完成的作品,每部新影片都會從其中一部開始製作:
| 影片 | 風格 | 適用場景 |
|---|---|---|
films/oto | 活潑流行。 每個節拍變換的飽和平面色塊、巨大的白色文字、會跟著低音彈跳的趣味產品,120 BPM 浩室音樂。 | 消費性電子產品、喇叭、耳機、玩具,任何有趣或色彩繽紛的商品。 |
films/vela | 電影感。 黑色舞台、棚拍金屬質感、光暈、緩慢的鏡頭運動、光束與投影世界、爆炸圖,100 BPM 配樂。 | 高階硬體、相機、穿戴裝置,任何「工程工藝」類產品。 |
渲染後,打開任一資料夾中的 out/sheet.jpg,或直接閱讀 film.js 以查看每一個鏡頭。references/film-recipe.md 說明了影片的構成方式,並列出了可重複使用的鏡頭模式。撰寫新影片前請先閱讀此文件。
影片運作方式
films/<name>/index.html設定字型和文字樣式。films/<name>/film.js使用 Three.js 基本幾何體建立產品,並定義SHOTS,這是一組{ a, b, f(t, p) }的時間範圍。renderAt(t)會重設場景,並為該秒數呼叫對應的鏡頭函數。每一幀都是時間t的純函數:不依賴Date.now、CSS 動畫或幀與幀之間的狀態,這是達成影格精確渲染的關鍵。films/<name>/music.py使用 numpy 創作配樂,並輸出out/score.wav。Oto 版本還會輸出env.json(包含鼓點時間與逐幀低音包絡),讓產品和環圈能夠對應實際音樂做出反應。render.mjs負責提供資料夾服務、在無頭 Chrome 中使用 GPU 渲染影格,並編碼成 MP4。
製作新影片的工作流程
- 簡報。 取得產品名稱、產品是什麼、一個令人驚豔的特點、3-5 個真實數據(含單位)、顏色或材質、標語,以及發表年份(例如「Coming 2027」)。如果使用者只給了一個粗略想法,請自行構思有品味的具体細節並告知。最多只問一個問題。
- 選擇基礎影片(Oto 用於活潑流行,Vela 用於電影感)並複製:
cp -r films/oto films/<name>(小寫,無空格)。刪除已複製的out/資料夾與env.json。 - 先編寫節拍表。 選擇 BPM(100-124)。在小節網格上安排 8-11 個鏡頭(120 BPM 時一個小節為 2 秒,因此鏡頭長度為 2、4 或 8 秒),並為每個鏡頭寫下畫面文字。遵循食譜中的敘事弧線:冷開場 → 節奏落下 → 名稱 → 功能 → 內部構造 → 關鍵數字 → 系列展示 → 靜默 → 結尾卡。僅當使用者要求審閱時,才先以短表格展示給使用者,否則請繼續進行。
- 在
film.js中建立產品模型,取代makeOto/makeDevice。使用車床輪廓、球體、環面與圓角方塊,搭配MeshPhysicalMaterial(clearcoat、sheen、metalness),以及用於格柵、螢幕和標籤的 Canvas 紋理來建構。提供一個pose(...)或setFinish(...)函數供鏡頭呼叫。請參閱食譜中的建模章節。 - 改寫鏡頭與文字:
SHOTS、CAPS、標籤、系列名稱、結尾卡。確保剪輯點落在節拍邊界上。重複使用既有的輔助函數(showWord、showRings、drawField、panels、cam、分解鏡頭裝置、標註引導線)。 - 創作音樂:編輯已複製的
music.py,設定 BPM、調性或多和弦列表,以及編曲段落,讓每個段落與其對應的鏡頭相符(揭露時的強拍、分解鏡頭時的過渡、結尾卡前的靜默)。如果影片使用env.json,請保留kick_times與包絡匯出功能。 - 檢查靜態圖,然後渲染(從技能資料夾執行):
檢查樣片。修正任何被裁切、重疊、偏移或難以閱讀的問題後再進行完整渲染。python3 films/<name>/music.py node render.mjs <name> sheet # 8 幀 → films/<name>/out/sheet.jpg node render.mjs <name> stills 4.2,9,17 # 任意指定秒數 node render.mjs <name> final # → <Name>_Launch_Film.mp4 含音樂final以 60 fps 渲染 34 秒約需 3-8 分鐘;使用final 30可快速產生草稿。 - 交付。 提供最終 MP4 與樣片的路徑,逐行列出所有鏡頭,並提供具體的調整選項(文案、顏色、時間點、音樂)。
初始設定(僅需一次)
cd ~/.claude/skills/apple-design && npm install
python3 -m pip install numpy scipy # 或使用虛擬環境
需要 Google Chrome 與 ffmpeg。如果 Chrome 安裝在非標準路徑,請設定 CHROME_PATH。
品質標準
- 每個剪輯點和每個文字都必須精準落在音樂的節拍網格上。請對照 BPM 檢查
a/b時間。 - 一個鏡頭只傳達一個想法。標題 ≤ 7 個單詞,巨型文字 1 個單詞。
- 產品的光線必須足以辨識其形體:主光、輪廓光、柔和的接觸陰影,以及金屬上的環境反射。
- 至少有一個鏡頭是此產品獨有的(Oto 的分解鏡頭與「louder lifts it higher」,Vela 的牆壁、桌面與天花板)。
- 結尾卡包含名稱、一句標語與發表年份,然後在最後一個音符淡出。
- 每次進行最終渲染前,務必先檢視樣片。
使用規範
「Apple 風格」指的是視覺風格。請勿使用 Apple 的標誌、產品名稱、商標、SF Pro 字型或真實的 Apple 影片片段。此處使用的字型為 Inter 與 Inter Tight。僅在使用者要求製作概念展示影片時,才能自行虛構產品名稱與規格,並需標註為「概念展示」。