---
title: "你怎麼做的比 GPT 爛？燒掉 14 億 token 綁一隻 Live2D（第一版）"
description: "「功能是都有啦，但我想要的是多種動作，而不是現在把眼睛噴掉。」"
author: "kidneyweakx"
published: 2026-09-07T03:00:00.000Z
updated: 2026-10-29T09:05:59.999Z
lang: zh-TW
tags: ["ai", "live2d", "claude-code", "個人開發", "踩坑"]
canonical: https://kidneyweakx.com/blog/session-live2d-daughter
---

# 你怎麼做的比 GPT 爛？燒掉 14 億 token 綁一隻 Live2D（第一版）

> 「功能是都有啦，但我想要的是多種動作，而不是現在把眼睛噴掉。」

這個月 token 燒最多的 session，不是工作，不是黑客松，是部落格右下角那隻 Live2D 小女孩。

三天多、四次 context 爆掉重來、一個 session 吃掉大約 **14.7 億 token**（絕大部分是快取讀取，output 約 280 萬）。最後她會眨眼、會轉頭、會揮手了。過程大概就是我一路罵、AI 一路道歉、然後再一路重做。

先講她是誰。她叫 Kiya，資料夾裡叫 `daughter`，我都叫她女兒。

起因其實有點好笑：我拿到一張 NFT，結果團隊跑路了，越想越不爽。**既然專案方不賦能，那我自己來給這張圖賦能。** 最早那一版 Live2D，是拿來測 Gemini 實力的，順便讓她站到部落格右下角。

這篇是第一版的紀錄。她現在還在調，之後應該還會有下一篇。

<br />

## 第一回合：模型沒壞，是從來沒動過

一開始的需求很單純：桌面有一版之前做的 `12-15-daughter1.cmo3`，電腦有裝 Cubism Editor，幫我弄成**免費版能開**的版本。

AI 打開 Editor 一看，唯一超過 FREE 上限的只有參數數量：53 個，上限 30。刪掉 28 個「空參數」之後剩 26 個，其他變形器、ArtMesh、部件全部本來就合規。

然後它順手發現一件很好笑的事：

> 模型沒壞，但**部落格上的它從來就沒動過**。

部落格的 `live2dAnimator.ts` 驅動的是 `ParamAngleX`、`ParamEyeLOpen`、`ParamMouthOpenY` 這種標準 ID，舊模型裡這些 ID 剛好就是那 28 個空參數；真正有綁東西的，是 `PARAM_ANGLE_X` 這種 2.1 舊式 ID。

**也就是說，這隻看板娘從上線那天開始，一直都是一張圖。** 我自己完全沒發現。

說好的 Live2D，結果在部落格上當了好一陣子的立繪。

<br />

## 第二回合：效果超級糟糕

換上新模型、部署上去，頭會轉、眼睛會跟、髮尾會晃。功能上都有了。

然後我看了一眼，回它：

> 效果超級糟糕 你完全沒有精細調整

它也很認真，去查了一輪：有沒有 Live2D 的 MCP？沒有。MCP registry 上沒有，GitHub 上兩個不是控制桌面播放器、就是用 GUI 自動化按 Windows 版 Editor。Cubism 5.1 之後有官方的 WebSocket 外部 API（port 22033），但**只能讀模型結構、暫時設參數值，不能改變形器、鍵值、網格**。

所以綁定只能在 Editor 的 GUI 裡做。剩下的路只有一條：computer use，讓 AI 自己去點那個 Java 視窗。

接下來幾個小時，transcript 裡大概長這樣：

- 「子對話框卡住了（點擊／Escape／無障礙都沒反應）」
- 「子對話框又凍住了（兩次都是在對話框裡用滾輪之後發生）」
- 「參數列位置又差了一列（改到『嘴 变形』了）」
- 「Editor 卡在一個看不見的模態對話框（所有選單都變灰），我把它重啟了」

**一個 AI 在跟一個 Java Swing 視窗搏鬥，而且一直輸。**

不過它也真的做出 v4：眼珠用剪貼遮罩在眼白裡移動、高光獨立一層、嘴巴拆上唇下唇口內、2048 的貼圖、一套 Tap 動作。還順手修掉「會出現兩隻手」的問題，原因是原圖的外套其實畫了三次。

聽起來很完整對吧？

<br />

## 第三回合：整個人像果凍

> 你知道你把整個參數特效拉到 他現在整個人像果凍 手部接口部分也有問題吧

AI 用 Cubism Core 掃了每個參數的極值，結果：**身體旋轉 Y 到 −10 的時候，軀幹被拉長 3.8 倍、往下位移 1700px。**

1700px。整張圖也才那麼高。

它修了，我叫它打開模擬器讓我自己看，然後我列了十點：

> 1. 點擊動作是錯誤的 頭會往後翻
> 2. 轉頭會讓臉部變平面
> 3. 眨眼睛這部分會直接消失 眉毛不見
> 4. 瀏海特效是用跳動的 wtf?
> ……
> 10. 圖片你都亂切 身體上下會被直接剝離
>
> 你有沒有去找別人的教學 你怎麼做的比 gpt 爛

這句話打出去的時候我是認真的。

那時候 Opus 5.5 還沒出來，這個 session 主要跑的是 Fable 5.1。而 GPT 6 astra 在那段時間是真的強，**computer use 根本無敵**。這種要一直點 GUI 的工作，拿它來比一點都不冤枉。

<br />

## 根因：拿一把槌子敲所有釘子

這次它終於停下來，先講根因，而且講得很誠實：

**根因 1：把「应用3D旋转表现」當成萬用鍵值產生器。** 轉頭、眨眼、嘴巴、眉毛、身體，全部都用同一個對話框做。它只會把每個零件當成一張平面卡片在 3D 裡旋轉，所以轉頭臉變平面、點頭整顆頭像卡片往後翻、眨眼是把眼睛壓成一條線而不是眼皮蓋下來。

**根因 2：頭髮用剛性旋轉。** 瀏海整片繞一個點轉，看起來就是「跳動」。

**根因 3：從來沒有逐參數看過畫面。** 用 Core 檢查頂點數字，卻沒有把每個參數的極值渲染出來看。

第三點最痛。**它一直在驗證「數字對不對」，沒有在驗證「看起來對不對」。** 一個月後我做 AI 動畫，自動檢查全部 PASS 但根本不想看，又掉進一模一樣的坑。

之後它才去讀官方手冊和社群教學，研究結果寫成三份文件，裡面直接判死 v4：

- 官方明文說「应用3D旋转表现」會覆寫鍵值，**只建議用在沒編過鍵的物件**
- 「摇摆动作自动生成」只支援彎曲變形器，旋轉變形器明文不支援
- 頭髮物理有官方範例的數字可以抄：兩段擺錘，長度 10/7、容易度 0.95/0.86……

還有一個我自己也沒想到的：網頁追蹤會無限果凍，是因為 pixi-live2d-display 0.4 的 `focus()` 把游標位置用 `atan2` 轉成單位向量，**離中心 5px 和 500px 都是滿偏轉 ±30°**，而且沒有滑鼠離開的處理，模型永遠不會回中。

**該先做的研究，在第三回合才做。** 前面燒掉的，都是學費。

<br />

## 第四回合：v5 毀了，回去用 v4

研究完照計畫重切 PSD，做 v5。瀏海第一版用直線楔形硬切，我問「long bundle 是三小」；第二版改成沿著髮絲描邊走，這個我覺得對了。

結果匯進 Editor 之後又炸：

> 我覺得你還是用 v4 調好了 你這版幾乎都毀了
>
> 但你切那三小 你那些去邊都沒弄乾淨 眼原本問題是最少的 你改超爛

它認了：v5 的切法只用 alpha 門檻加膨脹，沒有去光暈、沒有清孤島、邊緣沒收；**眼睛 v4 原本就切得好，不該重切。**

於是 v6 是「v4 的眼睛 + v5 的研究」。這次每做一步就匯出 moc3、用自己寫的離線渲染器出圖，我看過再往下。中間還出現過一個很經典的坑：

> Editor 把滑桿值寫成參數預設值

匯出的時候右眼的開閉滑桿剛好停在 0，所以靜止狀態她就是閉著一隻眼。

<br />

## 交接給 GPT，然後又拿回來

做到一半我叫它「用最簡單的話語」寫交接，要丟給 gpt 6 astra 接手，理由就是上面說的：computer use 它比較強。Claude 寫了一份 `docs/handover.md`。

然後我又回頭跟它說「幫我改」，它一打開就發現：

> The Editor was relaunched by someone and a new `v7/` folder exists next to v6

它沒有直接蓋過去，先檢查磁碟上到底改了什麼才動手。**兩個 AI 輪流摸同一個 Editor，誰也沒把誰的東西弄壞**，這點我覺得比綁定本身還難得。

最後幾輪是手臂：手肘的旋轉樞軸要拖到關節上、前臂要能折到 150°、揮手時手不能甩出畫布。中間它又踩到「全選快捷鍵把不透明度套到每一個網格」這種事，只好退回存檔。

9 月 7 日，最後一句：

> blog部署一下

> 已上線：https://blog.kidneyweakx.workers.dev

<br />

## 學到的事

1. **沒有 API 的工具，AI 就是在用滑鼠跟你一起受苦。** Cubism Editor 不能程式化改綁定，所以每一個鍵值都是 computer use 點出來的，每一個隱形對話框都是一次重啟
2. **先研究，再動手。** 這次最貴的錯，是在第三回合才去讀官方手冊。前兩回合是用自動化功能硬湊出「功能都有」的東西
3. **驗證要驗「看起來」，不是驗「數字」。** 頂點座標全部合理，人卻像果凍。自己寫一個離線渲染器出圖，比任何數字檢查都有用
4. **好的部分不要重做。** v5 毀在把原本最沒問題的眼睛也重切了

說穿了，這個 session 會燒到 14 億 token，不是因為 Live2D 有多難，**而是因為我讓它跳過了「先搞懂再做」這一步**，然後用三天的來回去補。

AI 很會道歉，但道歉不會讓她的瀏海飄起來。

不過至少現在點她一下，她會揮手了。一張跑路專案的 NFT，最後在我的部落格上動了起來，**這個賦能，總算是我自己給的**。

第一版先到這裡，Kiya 還在調。下一版做完再來寫。

<!-- 圖：v4 果凍截圖、離線渲染的參數極值圖、最終揮手 GIF（素材在 ~/Desktop/daughter/ 和 live2d-maker/docs/） -->
