Skip to content

ComfyNodePRs/PR-comfyui-vrm-pose-editor-4fb387c9

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

3D Pose Editor — ComfyUI Custom Node

ComfyUI 上で動作するインタラクティブな 3D ポーズエディタノードです。 VRM・GLB・GLTF モデルをブラウザから直接読み込み、ボーンをドラッグ操作してポーズを付け、そのままワークフローに出力できます。

Three.js three-vrm ComfyUI


機能一覧

ボタン 機能
📸 Capture 現在のポーズを PNG としてノード出力に送信
RP ポーズをリセット
RC カメラをリセット
VRM VRM / GLB / GLTF ファイルをローカルから読み込む
CC カラー補正 ON/OFF(sRGB + ACES Filmic)
BG 背景画像をローカルから読み込む
背景画像をクリア

インストール

  1. 3dpose_custom_cm フォルダを ComfyUI/custom_nodes/ 以下に配置します。
  2. ComfyUI を再起動します。
  3. ノードメニューで "3D Pose Editor"(カテゴリ: 3D Pose)を追加します。

使い方

カメラ操作

操作 動作
左ドラッグ カメラ回転
右ドラッグ パン(平行移動)
ホイール ズーム
ビューギズモのX/Y/Z軸クリック その軸方向からのビューにスナップ

ボーン操作

ボーン上の青い点(コントロールポイント)をドラッグします。

操作 動作
左右ドラッグ Y 軸回転
上下ドラッグ X 軸回転
Alt + 上下ドラッグ Z 軸回転

モデルの読み込み

VRM ボタンをクリックしてローカルの .vrm / .glb / .gltf ファイルを選択します。 モデルは自動でスケーリング・センタリングされます。

  • VRM ファイル: @pixiv/three-vrm の HumanBone を使用してボーンを認識します。
  • GLB / GLTF ファイル: 骨格(Bone)ベースのモデルであればそのまま動作します。

デフォルトモデルの設定

ノード起動時に自動で読み込まれるモデルを設定できます。 js/ フォルダに以下のいずれかのファイル名でモデルを配置してください:

ファイル名 形式
model.glb GLB
model.vrm VRM
model.gltf GLTF

優先順位は model.glbmodel.vrmmodel.gltf の順です。 いずれも存在しない場合はモデルなしで起動します。

背景画像

BG ボタンで PNG / JPG などの画像ファイルを読み込むと、Three.js シーン内の背景板(PlaneGeometry)として表示されます。 📸 Capture 時にはモデルと背景が同一レンダリングに含まれた状態で出力されます。 ボタンで背景を削除できます。

background_image 入力ポートに別ノードから画像を接続した場合は、Python 側で Capture 後に合成されます(両方設定した場合は二重合成になるため注意)。

Shape Keys(シェイプキー)

ノード下部の Shape Keys ヘッダーをクリックするとパネルが展開します。 モデルに含まれるシェイプキー・表情をスライダー(0.0 〜 1.0)でリアルタイムに操作できます。

モデル形式 取得元
GLTF / GLB morphTargetDictionary(Blender などで設定した名前)
VRM ExpressionManagerhappy, sad, blink などの VRM 標準表情)

カラー補正(CC)

CC ボタンで sRGB カラースペース + ACES Filmic トーンマッピングを ON/OFF できます。 VROID Studio エクスポートや Blender 製モデルで暗く見える場合は ON にしてください。


ノードの入出力

項目 種類 説明
background_image IMAGE(オプション) Python 側で Capture 画像に合成する背景
output_size_mode Standard / Background / Custom 出力解像度の決定方法
custom_width / custom_height INT Custom モード時の出力サイズ
output: image IMAGE ポーズキャプチャ画像(Torch テンソル)

技術仕様

  • フロントエンド: JavaScript + Three.js r160 + @pixiv/three-vrm 2.1.0(esm.sh 経由)
  • バックエンド: Python(Base64 PNG → PIL → Torch Tensor 変換)
  • キャプチャ解像度: 600 × 600 px
  • デフォルトモデル: js/model.glb / js/model.vrm / js/model.gltf のいずれかを配置(優先順に検索)

License

MIT License

About

ComfyUI custom node for interactive 3D pose editing with VRM / GLB / GLTF support

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages

  • JavaScript 93.7%
  • Python 6.3%