檢查 materials/ 底下的開門動畫轉場影片:抽出分鏡截圖(自動跳過黑幕)、依五軸(形式/動畫/配件/材質/聲音)分類判讀、對回 ../re-door-gallery/docs/Doors-Difficulity-Estimation.xlsm.csv 的評估項目,並記錄檢查進度。凡是使用者要「檢查門」「分類門動畫」「看某支開門影片」「抽分鏡」,或提到門型代碼(如 1-1 a02、b06 電梯拉門)、指到 materials/ 底下的 mp4 時,都應使用此 skill;不帶參數時自動挑下一個未檢查的門型。
Scanned 8/30/2026
Install to Claude Code
npx -y skills add moojing/re-canvas-door-swing --skill check-door --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Check Door?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/moojing-check-door)More formats (shields.io, HTML) on the badges page.
---
name: check-door
description: 檢查 materials/ 底下的開門動畫轉場影片:抽出分鏡截圖(自動跳過黑幕)、依五軸(形式/動畫/配件/材質/聲音)分類判讀、對回 ../re-door-gallery/docs/Doors-Difficulity-Estimation.xlsm.csv 的評估項目,並記錄檢查進度。凡是使用者要「檢查門」「分類門動畫」「看某支開門影片」「抽分鏡」,或提到門型代碼(如 1-1 a02、b06 電梯拉門)、指到 materials/ 底下的 mp4 時,都應使用此 skill;不帶參數時自動挑下一個未檢查的門型。
---
# 檢查開門動畫影片(check-door)
對單支開門動畫影片做一次完整判讀:抽分鏡 → 五軸分類 → 對照 CSV 評估 → 記錄進度。
一次處理一支影片;使用者會反覆呼叫,逐一檢查完所有門型。
## 輸入解析
參數可能是以下任一種,依序嘗試解析:
1. **影片路徑**:直接使用。
2. **門型代碼**(如 `1-1 a02`、`1-4 b01`):影片放在 `materials/1 開門動畫轉場製作/` 底下,作品資料夾名稱**含編號前綴**,實名如下,直接照抄不要猜:
- `1-1 1996 Biohazard` / `1-2 1998 Biohazard 2` / `1-3 1999 Biohazard 3` / `1-4 2000 Biohazard Gun Survivor` / `1-5 2000 Biohazard Code Veronica`
作品資料夾內是以代碼開頭的門型資料夾(如 `a02單門-喇叭鎖/`),裡面常有多個變體影片(s1、s2…);挑**檢查紀錄中還沒出現的第一個變體**處理,並在報告結尾列出該資料夾剩餘未檢查的變體數。
3. **無參數**:讀取檢查紀錄 `../re-door-gallery/docs/door-classifications.md`,按 CSV 的順序(1-1 → 1-5)找出下一個尚未檢查的門型,從它的第一個變體開始。
## 步驟 1:抽分鏡
```bash
.claude/skills/check-door/scripts/extract_frames.sh <影片路徑> <scratchpad>/frames/<門型代碼-變體>/ 8
```
腳本會印出影片長度與黑幕區段,並只在有畫面的區段取樣(頭尾留 5% 邊距避開淡入淡出)。
輸出檔名是 `frame_<秒數>s.png`,直接依時間排序 Read 進來看。
**補抽關鍵動作**:開門動作通常發生在「第一段有畫面區段的結尾、進黑幕之前」。如果抽到的影格裡門只有全關和全開兩種狀態、沒抓到旋轉/滑動中的過程,用範圍模式在該區段最後 1.5 秒補抽:
```bash
.claude/skills/check-door/scripts/extract_frames.sh <影片> <同一輸出資料夾> 5 <start> <end>
```
## 步驟 2:五軸分類
依下面的詞彙判讀。看不出來的軸(通常是聲音,影格聽不到)標「推斷」並說明依據。
| 軸 | 可能的值 |
|----|---------|
| **形式** | 單門 / 雙門 / 大扇門 / 非門轉場(階梯、直梯、電梯、滑梯、繩索、鑽洞)。混合型以**畫面上有沒有門板動畫**為準:電梯柵門有實際開闔動畫就歸雙門/單門並加註「電梯」,純搭乘無門板動畫才算非門轉場 |
| **動畫** | 門板運動:鉸鏈旋轉(注意單開/雙開、內推/外拉)、水平滑動、中分滑動、垂直移動、旋轉位移、純鏡頭移動。另記鏡頭行為(前推穿越、跟隨)與轉場(黑幕淡入淡出位置) |
| **配件** | 無把 / 喇叭鎖 / 豎把 / 橫把 / 彎把 / 斜把 / 圓環 / 門栓鎖 / 自動(無配件),含鎖孔面板等細節 |
| **材質** | 門板外觀(木/鐵/鏽蝕/柵欄…)+ **門板幾何**:平面板(貼圖可解)/ 有造型 / 鏤空——這直接決定實作成本 |
| **聲音** | 依運動方式推斷(轉鎖 click、木門吱嘎、金屬滑動…),除非有其他資訊來源 |
判讀時特別留意**和實作成本相關的細節**:把手是否有獨立動畫(轉動/下壓)、門是否只開單邊、門板是否非平面、背景環境是否入鏡(載具門)。
## 步驟 3:對照 CSV
讀 `../re-door-gallery/docs/Doors-Difficulity-Estimation.xlsm.csv`,找到對應作品區塊裡的該門型列,取出:是否重複(參照哪個門型)、製作難度、風險標記、預估時數、備註。
風險標記圖例:⚠️ 有實作風險或需研究、❓ 有疑問、❌ 成本過高不推薦、$ 需購買模型。
**核對重點**:實際看完影片後,CSV 的評估是否合理?例如備註說「需要找模型」但實際門板是平面貼圖可解、或動畫比表上想的複雜(只開單邊、把手有特殊動作)。有出入就明確指出——這是整個檢查流程的主要價值。
## 步驟 4:輸出報告
依此模板輸出(給使用者看的最終訊息):
```markdown
## <門型代碼> <門型名稱> — <變體檔名>
**分鏡結構**(時間軸表。一般門的典型段落是:淡入 / 門特寫 / 開門動作 / 穿越 / 背面 / 淡出,
但這只是常見形,不是固定格式——電梯類會有「開門 → 內部搭乘 → 再開門」的多段結構,
階梯類完全沒有門;照實際看到的段落列時間軸即可)
**五軸分類**(表格:形式 / 動畫 / 配件 / 材質 / 聲音)
**CSV 對照**:難度 X、預估 X 小時、標記、備註原文
**核對結論**:評估合理 / 有出入(說明)
剩餘未檢查:<同代碼剩 N 個變體;或「此代碼已完成」>
```
## 步驟 5:記錄進度
把結果追加到 `../re-door-gallery/docs/door-classifications.md`(不存在就先建,含表頭)。
**欄位順序是資料契約**:`build_gallery.py` 依「作品 `##` 區塊 + 固定十欄」解析,照抄勿改:
```markdown
# 開門動畫檢查紀錄
## 1-1 1996 Biohazard
| 代碼 | 名稱 | 變體數 | 形式 | 材質 | 動畫 | 配件 | CSV | 核對 | 備註 |
|------|------|--------|------|------|------|------|-----|------|------|
```
- 每個作品一個 `## 1-x 作品名` 區塊,門型列一律放在對應區塊底下(缺區塊標題的列會被 parser 跳過)。
- 「核對」填 ✅合理 / ✅比評估樂觀 / ⚠️有出入(簡述) / ⚠️需重估 / ❌無法製作,且只保留**最終判定**——gallery 徽章依這個字串分類,改判時把前次結論移到備註。
- 聲音(推斷)與檢查日期寫進「備註」欄,不要新增欄位。
- 同一支影片重複檢查時更新既有列,不要重複追加。
- 這個檔案同時是進度表:無參數呼叫時靠它決定下一個目標。
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!