Spine hero
英雄的單一繪畫被切割成零件並安裝在骨骼上,每個動作片段都以程式碼的形式編寫在該骨骼上。模型負責創作和檢視,腳本負責測量,最終由人眼做出決定。昂貴的模型僅執行需要品味判斷的工作。
第一個片段之前
- 步驟 0:從繪畫建立骨骼:零件、每個零件隱藏部位的填補、骨骼、網格、IK。工具不包含在內;rig 提供了方法。請暫停並讓人類確認休息姿勢與繪畫是否相符。
- 步驟 0b:為你的引擎編寫捕捉功能:它執行動作片段、渲染,並寫入
metrics.json和特寫鏡頭。沒有這個,下面的所有步驟都無法被判斷。gate 提供了合約以及何時完成。
這兩項是大部分的前置工作,由你來完成:在原版中,僅捕捉功能的程式碼大小大約是閘道腳本的六倍。一旦兩者都存在,下面的循環便開始。
然後是待機姿勢(在骨骼上製作,絕不來自影片),接著是走路和跑步,最後是攻擊動作。
循環,一次一個片段
- 簡報。 協調器會撰寫一份簡短的簡報:動作、預期效果、計畫、作者可以寫入的檔案、一個構建與閘道命令,以及一個令牌預算。請參閱 orchestration。
- 時間參考。 最佳做法:使用圖像轉影片模型來動畫化英雄本身的靜止圖片。它僅提供時間點和節拍,並寫入一個節拍檔案。如果沒有影片模型,請手動撰寫節拍檔案。請參閱 reference video。
- 繪製繪畫從未展示的部分。 圖像模型會繪製隱藏部位(遠側的腿、遠側的手臂、盾牌後的外衣)以及任何可更換的裝備,作為獨立的碎片;對於快速打擊,則繪製不包含裝備的全身關鍵圖。請在動畫製作之前完成此步驟。請參閱 rig 和 moves。
- 在骨骼上創作。 一個強大的編碼模型會編寫稀疏的關鍵影格和 IK。走路和跑步:請參閱 locomotion。站姿是在骨骼上進行動畫製作的。快速打擊可能使用少數幾個全身關鍵圖,並將真實的裝備放在其對應的骨頭上,這樣武器和盾牌仍然可以交換:請參閱 moves。
- 閘道。 捕捉片段,寫入
metrics.json,執行scripts/gate.mjs。模型不判斷數字。請參閱 gate。 - 審查。 僅在閘道通過後:一個中階模型會讀取
gate.json、聯絡表以及 2 倍大小的腳部和頭部特寫,並判斷數字無法顯示的問題(重量、繪畫品質、重複零件)。 - 檢查。 一個獨立於作者和審查者的中階模型,會逐項檢查所有全尺寸特寫,依據 defects 清單進行。閘道無法看到繪畫品質。
- 協調器的檢視。 協調器在將任何內容交給人類之前,會自行讀取每個特寫鏡頭。
- 人類。 人類觀看影片並做出決定。人類發現的每個缺陷都會成為
references/defects.md中的一個新條目。
如果閘道、審查或檢查失敗,會回到相同的作者層級,最多進行 3 輪。之後,提升一個層級,再進行 3 輪。如果仍然失敗,則停止,並將閘道輸出和影片交給人類。角色和層級:請參閱 pipeline。如果只有一個代理,請將作者、審查者和檢查者分開執行,每次使用全新的上下文:請參閱 orchestration。
英雄的完成狀態
- 休息姿勢、待機、走路、跑步以及每個攻擊動作都已獲得人類批准,並被列為凍結狀態,所有簡報都可以看到它們。
- 每個片段在最終構建時都通過了閘道檢查,且所有被提高的限制都帶有註釋。
clips.json包含每個片段的持續時間和循環標誌,以及走路和跑步的groundSpeed和loopWindow。英雄的規格文件包含相同的速度、站立高度、腳底骨骼和一個box。box包含每個片段的所有武器和盾牌組合(盒子檢查)。- 交換測試通過:每個片段中每個影格,使用每種裝備組合,包括在片段中中途更換裝備的情況。
- 動作表格、測試和文件都已更新(管線整理步驟)。
對於一個較小的項目(例如,只有一個待機、一個走路和一個攻擊),將相同的清單應用於你所發布的片段:跑步和其他動作不是必須的。
應遵守的規則
- 絕不要為了滿足檢查而重新創作一個人類已經批准的片段。應報告衝突。
- 待機動畫必須在骨骼上創作,絕不能從影片中獲取。
- 影片僅提供節拍和時間點。絕不要根據其中的每個影格標記來配對骨骼。
- 可更換的裝備絕不能繪製到圖畫中。它應該安裝在自己的骨骼上,這樣才能被更換。
- 使用附件鍵來切換圖畫,絕不透明度。
- 代理永不提交。由協調器進行驗證和提交。
- 在做出「這個可以乾淨地交換」之類的聲明之前,先請一位懷疑論者來反駁它。
- 保持上下文小巧。將圖像裁剪到你需要的部分和影格,每個圖像僅打開一次,並使用
tail來查看較長的輸出。
檔案
| 檔案 | 何時閱讀它 |
|---|---|
| references/pipeline.md | 規劃誰做什麼,以及使用哪個模型層級 |
| references/rig.md | 從繪畫建立骨骼(步驟 0);慣例;待機動畫 |
| references/locomotion.md | 走路或跑步 |
| references/moves.md | 站姿、打擊、持有的關鍵圖、裝備和交換、遠程武器 |
| references/reference-video.md | 製作時間參考,無論是否有影片模型;節拍檔案 |
| references/defects.md | 每個視覺檢查(人類發現但檢查遺漏的 13 個缺陷) |
| references/gate.md | 捕捉功能(步驟 0b)、每個檢查及其限制、為第一個英雄設定限制 |
| references/orchestration.md | 簡報、每次動作一次運行、構建鎖定、預算、升級機制、單一代理模式 |
scripts/gate.mjs, scripts/gate-limits.json | 捕捉的閘道檢查:`node scripts/gate.mjs /metrics.json --kind idle |
scripts/with_lock.sh | 多個作者同時在同一個骨骼上構建 |
assets/metrics.example.json | 捕捉合約的範例 |