概要
KJ Shape Key Current Value Tools (Add-on)は、現在のShape Key状態を新しくに作ったshape keyに詰め込むAdd-onです。
Blender標準のShape Key操作では、選択Shape KeyをBasis化したり、Basisへ反映したりできますが、Value=1.0以外の状態を反映することはできません.そこで,どのような状態のshape (0<Value <1.0)であっても1つのshape keyに収める(下表No.3の機能)ためのAdd-onです。
このAdd-onでは、次のような処理ができます。




| No. | 機能 | 内容 |
|---|---|---|
| 1 | 選択Shape Keyの現在Valueを新規Shape Key化 | Value=0.3や0.6など、現在値の形を新しいShape Key(自動生成)にする |
| 2 | 選択Shape Keyの現在ValueをBasisへ反映 | Value=1.0ではなく、現在Value分だけBasisへ焼き込む |
| 3 | 全Shape Keyの現在状態を1つに統合 | 複数Shape Keyの現在Valueを1つの新しいShape Keyに押し込める |
| 4 | 元Valueの記録(補助機能) | 統合前に、どのShape KeyがどのValueだったか記録する |
| 5 | 元Valueの復元(補助機能) | 統合後でも、元のShape Key Value状態へ戻して再調整できる |
Blender公式マニュアルでは、Shape Keyはオブジェクトを別形状へ変形するための機能であり、Morph TargetやBlend Shapeとも呼ばれると説明されています。また、BasisはShape Keyの基準形状として扱われます。
対応環境
| 項目 | 内容 |
|---|---|
| Add-on名 | KJ Shape Key Current Value Tools |
| バージョン | v0.1.2 |
| 作者 | KenJin |
| 対応想定 | Blender 5.1 |
| 対象 | Mesh Object |
| 表示場所 | 3D Viewport > N Menu > KJ Shape |
インストール方法
- Blenderを起動します。
- 上部メニューから Edit > Preferences を開きます。
- Add-ons を選択します。
- 右上の Install を押します。
kj_shape_key_current_value_tools.pyを選択します。- Add-on一覧で KJ Shape Key Current Value Tools にチェックを入れます。
- 3D Viewportで Nキー を押します。
- サイドバーに KJ Shape タブが表示されれば準備完了です。
基本的な考え方
通常のShape Key
Shape Keyは、Basisを基準として別の形状を記録する仕組みです。
例:
| Shape Key(名) | 内容 |
|---|---|
| Basis | 通常の顔 |
| Smile | 笑顔 |
| Blink | まばたき |
| Eye_Adjust | 目の補正 |
各Shape KeyにはValueがあります。
Smile = 0.40
Blink = 0.25
Eye_Adjust = 0.60
この場合、画面に表示される形は、これらのShape Keyが現在Valueで合成された状態です。
このAdd-onでできること
1. Active Current Value -> New Shape Key (No.1機能)
選択中のShape Keyの現在Value状態を、新しいShape Keyとして保存します。
たとえば、Smile のValueが 0.40 のときに実行すると、Smileの40%分だけ変形した形が新しいShape Keyになります。
使用例
| 操作前 | 内容 |
|---|---|
| Active Shape Key | Smile |
| Smile Value | 0.40 |
実行後、新しいShape Keyとして Current_Value などが作成されます。
この新しいShape Keyは、Smileの100%変形ではなく、Smile 0.40相当の形です。
使いどころ
- 変形が強すぎるShape Keyから中間形状を作りたい場合
- Value=1.0ではなく、現在表示されている程度の変形を保存したい場合
- 顔の表情、まぶた、口、黒目位置などの中間状態をShape Key化したい場合
2. Active Current Value -> Basis / Keep Residual (No.2機能)
選択中Shape Keyの現在Value分をBasisへ反映します。
ただし、元のShape Keyは削除せず残します。
使用例
| 操作前 | 内容 |
|---|---|
| Active Shape Key | Eye_Adjust |
| Eye_Adjust Value | 0.60 |
この状態で実行すると、Eye_Adjustの60%分だけBasisへ反映されます。
その後、Eye_Adjust自体は残ります。
使いどころ
- 基本形状を少しだけ補正したい場合
- ただし、元Shape Keyは削除せず後で再調整したい場合
- 作業の安全性を優先したい場合
3. Active Current Value -> Basis / Delete Active (補助機能)
選択中Shape Keyの現在Value分をBasisへ反映し、そのShape Keyを削除します。
使用例
| 操作前 | 内容 |
|---|---|
| Active Shape Key | Face_Correction |
| Face_Correction Value | 0.50 |
実行すると、Face_Correctionの50%分がBasisへ反映され、Face_Correctionは削除されます。
使いどころ
- 補正用Shape Keyを恒久的にBasisへ取り込みたい場合
- そのShape Keyをもうスライダーとして使わない場合
注意
削除すると元に戻しにくくなるため、通常は先に Keep Residual を使う方が安全です。
4. Current Mix -> New Shape Key (No.3機能)
現在の全Shape Key Valueの合成状態を、新しいShape Keyとして作成します。
ただし、この機能では元Shape KeyのValueはリセットしません(表示は合成させることになる)。
そのため、新しく作ったShape KeyをValue=1.0にすると、元のShape Keyと重なって二重変形になる。
使いどころ
- 現在の見た目だけを新しいShape Keyとして保存したい場合
- 元のShape Key Valueはそのまま残したい場合
5. Pack All Current Values -> New Shape Key (No.3機能)
このAdd-onの中心機能です。
現在存在する全Shape KeyのValue状態を、1つの新しいShape Keyに統合します。
同時に、元になったShape Key名とValueを記録します。
例
操作前:
| Shape Key | Value |
|---|---|
| Smile | 0.40 |
| Blink | 0.25 |
| Eye_Adjust | 0.60 |
| Mouth_Correction | 0.30 |
この状態で Pack All Current Values -> New Shape Key を押すと、これら全ての現在状態が Packed_Current_All などの新しいShape Keyに統合されます。
推奨設定では、実行後は次のようになります。
| Shape Key | Value |
|---|---|
| Smile | 0.00 |
| Blink | 0.00 |
| Eye_Adjust | 0.00 |
| Mouth_Correction | 0.00 |
| Packed_Current_All | 1.00 |
この状態でも、見た目はPack前と同じになります。
つまり、複数Shape Keyの現在状態を、1つのShape Keyだけで再現できます。
Pack All Current Valuesの設定
Packed Key Name
新しく作る統合Shape Keyの名前です。
初期値:
Packed_Current_All
必要に応じて、次のような名前に変更できます。
Face_A_Expression
Eye_Adjust_Final
Smile_Blink_Mix
Reset Source Values
Pack後に、元Shape KeyのValueを0に戻す設定です。
| 設定 | 意味 |
|---|---|
| ON | 元Shape KeyのValueを0に戻す |
| OFF | 元Shape KeyのValueをそのまま残す |
通常は ON推奨 です。
ONにすると、新しく作ったPacked Shape Keyだけで形を再現できます。
Set New Key Value to 1.0
Pack後に、新しく作ったPacked Shape KeyのValueを1.0にする設定です。
| 設定 | 意味 |
|---|---|
| ON | 新しいPacked Shape Keyを有効にする |
| OFF | 新しいPacked Shape Keyを0のままにする |
通常は ON推奨 です。
ただし、Reset Source ValuesをOFFにした場合、元Shape KeyのValueが残ったままになるため、新しいShape Keyまで1.0にすると二重変形になる可能性があります。
元Shape Key Valueの記録
Pack実行時、このAdd-onは元になったShape Key名とValueを記録します。
例:
Packed Key: Packed_Current_All
Source Shape Key Values:
- Smile: 0.400000
- Blink: 0.250000
- Eye_Adjust: 0.600000
- Mouth_Correction: 0.300000
この記録により、後で再調整したい場合に、元のShape Key Value状態へ戻すことができます。
Restore Source Values from Active Packed Key
選択中のPacked Shape Keyに保存されている記録を使って、元Shape KeyのValueを復元します。
操作の意味
実行すると、基本的には次の状態になります。
| Shape Key | Value |
|---|---|
| Packed_Current_All | 0.00 |
| Smile | 0.40 |
| Blink | 0.25 |
| Eye_Adjust | 0.60 |
| Mouth_Correction | 0.30 |
つまり、Pack後に1つにまとめた状態から、再び元のShape Key群で調整できる状態に戻せます。
Restore機能の設定
Zero All Values Before Restore
復元前に、全てのShape KeyのValueを0にする設定です。
| 設定 | 意味 |
|---|---|
| ON | いったん全Shape Keyを0にしてから記録値を復元 |
| OFF | 現在値を残したまま、記録されたShape Keyだけ復元 |
通常は ON推奨 です。
ONにすると、余計なShape Key Valueが残ることを防げます。
Set Active Packed Key to 0.0
復元時に、選択中のPacked Shape KeyのValueを0にする設定です。
| 設定 | 意味 |
|---|---|
| ON | Packed Shape Keyを0にする |
| OFF | Packed Shape KeyのValueを維持する |
通常は ON推奨 です。
ONにすることで、Packed Shape Keyと元Shape Key群が同時に効いて二重変形になることを防げます。
Copy Stored Source Values
選択中のPacked Shape Keyに保存されている元Shape Key名とValueをクリップボードにコピーします。
使いどころ
- 作業記録として残したい場合
- ブログやメモに貼りたい場合
- どのShape Keyが関与していたか確認したい場合
- 手動で値を見ながら再調整したい場合
推奨ワークフロー
複数Shape Keyを1つにまとめたい場合
- 対象メッシュを選択します。
- Smile、Blink、Eye_AdjustなどのValueを調整します。
- 現在の見た目を確認します。
- Nメニュー > KJ Shape > KJ Shape Key Current を開きます。
- Packed Key Name に名前を入力します。
- Reset Source Values をONにします。
- Set New Key Value to 1.0 をONにします。
- Pack All Current Values -> New Shape Key を押します。
これで、複数Shape Keyの現在状態が1つのShape Keyに統合されます。
Pack後に再調整したい場合
- Packed Shape Keyを選択します。
- Zero All Values Before Restore をONにします。
- Set Active Packed Key to 0.0 をONにします。
- Restore Source Values from Active Packed Key を押します。
- 元のShape Key Valueが復元されます。
- 必要なShape KeyだけValueを微調整します。
- 必要であれば、再度Packします。
操作例
例:顔の表情を1つにまとめる
Pack前
| Shape Key | Value |
|---|---|
| Smile | 0.35 |
| Eye_Close_L | 0.20 |
| Eye_Close_R | 0.20 |
| Mouth_Open | 0.15 |
この状態でPackすると、現在の顔の表情が1つのShape Keyになります。
Pack後
| Shape Key | Value |
|---|---|
| Smile | 0.00 |
| Eye_Close_L | 0.00 |
| Eye_Close_R | 0.00 |
| Mouth_Open | 0.00 |
| Packed_Current_All | 1.00 |
この状態では、Packed_Current_Allだけで元の表情を再現します。
再調整時
Restoreを実行すると、次の状態に戻せます。
| Shape Key | Value |
|---|---|
| Smile | 0.35 |
| Eye_Close_L | 0.20 |
| Eye_Close_R | 0.20 |
| Mouth_Open | 0.15 |
| Packed_Current_All | 0.00 |
ここから、たとえばSmileだけ0.45に変更して、再度Packできます。
注意点
1. Shape Key名を変更すると復元できない場合がある
復元記録はShape Key名で管理しています。
そのため、Pack後に元Shape Keyの名前を変更すると、Restore時に見つけられない場合があります。
2. 元Shape Keyを削除すると復元できない
記録されるのはShape KeyのValueです。
Shape Keyそのものを削除した場合、そのShape Keyは復元できません。
3. Shape Keyの形状自体を編集した場合、完全復元にはならない
このAdd-onが記録するのはValueです。
頂点座標の完全バックアップではありません。
そのため、Pack後に元Shape Keyの形状自体を編集した場合、Valueを戻してもPack前と完全に同じ見た目にならない可能性があります。
4. Packed Shape Keyと元Shape Keyを同時に有効にすると二重変形になる
Pack後に元Shape KeyのValueを戻し、さらにPacked Shape Keyも1.0のままにすると、変形が二重にかかります。
再調整時は、通常次の状態にします。
Packed Shape Key = 0.0
元Shape Key群 = 記録されたValue
5. 頂点数が変わる編集には注意
Shape Keyは同じ頂点構造を前提に動作します。
Shape Key作成後に頂点追加・削除などを行うと、Shape Keyの整合性が崩れる可能性があります。
ボタン一覧
| ボタン | 機能 |
|---|---|
| Active Current Value -> New Shape Key | 選択Shape Keyの現在Value状態を新規Shape Key化 |
| Active Current Value -> Basis / Keep Residual | 選択Shape Keyの現在Value分をBasisへ反映し、元Keyは残す |
| Active Current Value -> Basis / Delete Active | 選択Shape Keyの現在Value分をBasisへ反映し、元Keyを削除 |
| Current Mix -> New Shape Key | 全Shape Keyの現在ミックス状態を新規Shape Key化 |
| Pack All Current Values -> New Shape Key | 全Shape Keyの現在Value状態を1つの新Shape Keyに統合し、元Valueを記録 |
| Restore Source Values from Active Packed Key | 選択Packed Keyに保存された元Valueを復元 |
| Copy Stored Source Values | 保存された元Shape Key名とValueをクリップボードへコピー |
まとめ
KJ Shape Key Current Value Toolsは、Shape Keyの現在Value状態を柔軟に扱うためのAdd-onです。
特に重要なのは、全Shape Keyの現在状態を1つの新しいShape Keyに統合し、さらに元のValue状態も記録・復元できる点です。
これにより、次のような作業がしやすくなります。
- 複数Shape Keyを組み合わせた表情を1つのShape Keyにまとめる
- Pack後に元Shape KeyのValueを忘れずに再調整する
- 中間ValueのShape Keyを新規作成する
- Value=1.0では強すぎる変形を、現在ValueのままBasisへ反映する
- 作業履歴として、どのShape Keyがどの程度使われていたか確認する
Shape Keyを多用する顔モデリング、まぶた調整、口形状、黒目スクリーン、補正Shape Key管理などで有用です。

