ニコニコ
ユーザーブロマガは2021年10月7日をもちましてサービスを終了いたしました。
このページは皆さまから投票いただいた記事を保存したものです。

T0R0のブロマガ

闇鍋プラグイン blender2pmxを使用した際のボーン名称変換機能追加

2013-05-26 10:10:46
闇鍋プラグイン(http://bowlroll.net/up/dl9765)に1機能追加

・RenameBoneName4Blender.dll
blender2pmxで入出力した際に
ボーン名が
「右腕→腕_R」
「左腕→腕_L」
の様になるのでblender2pmxで出力後に実行することで元の名称に戻す機能を追加しました。
(名称の一括変換ですので自身で最終チェックして下さい。)

お決まりの文言ですが、適用前にモデルのバックアップは必ず取ってください。

2013/09/26更新内容
参考URL


ボーンの左右名称パターンが
「右腕→腕_R」
「左腕→腕_L」
「右腕→腕.R」
「左腕→腕.L」
「右腕→腕-R」
「左腕→腕-L」
「右腕→腕 RIGHT」
「左腕→腕 LEFT」
「右腕→腕Right」
「左腕→腕Left」
等もあるということなので対応
なんか他にもあるっぽいにおいがするのだけれどわかれば追加するかも。

2013/12/13更新内容
今把握している命名規則と対応させる為の正規表現
// セパレーター:(nothing)
// handLeft → handRight
// nameLeft nameLeft.001 nameLeft.999
// nameLEFT nameLEFT.001 nameLEFT.999

// セパレーター:_ (underscore)
// Hand_L → Hand_R
// name_Left name_Left.001 name_Left.999
// name_LEFT name_LEFT.001 name_LEFT.999
// name_L name_L.001 name_L.999
// name_l name_l.001 name_l.999

// セパレーター:. (point)
// hand.l → hand.r
// name.Left name.Left.001 name.Left.999
// name.LEFT name.LEFT.001 name.LEFT.999
// name.L name.L.001 name.L.999
// name.l name.l.001 name.l.999

// セパレーター:- (dash)
// Foot-l → Foot-r
// name-Left name-Left.001 name-Left.999
// name-LEFT name-LEFT.001 name-LEFT.999
// name-L name-L.001 name-L.999
// name-l name-l.001 name-l.999

// セパレーター: (space)
// pelvis LEFT → pelvis RIGHT
// name Left name Left.001 name Left.999
// name LEFT name LEFT.001 name LEFT.999
// name L name L.001 name L.999
// name l name l.001 name l.999


//正規表現一覧
@"[ |\\.|\\-|_](LEFT|Left)[\\.][0-9][0-9][0-9]$"
@"[ |\\.|\\-|_](L|l)[\\.][0-9][0-9][0-9]$"
@"[ |\\.|\\-|_](RIGHT|Right)[\\.][0-9][0-9][0-9]$"
@"[ |\\.|\\-|_][Rr][\\.][0-9][0-9][0-9]$"
@"[\\.][0-9][0-9][0-9]$"
@"[ |\\.|\\-|_](LEFT|Left)$"
@"[ |\\.|\\-|_][Ll]$"
@"[ |\\.|\\-|_](RIGHT|Right)$"
@"[ |\\.|\\-|_][Rr]$"
@"(LEFT|Left)$"
@"(RIGHT|Right)$"

2014/1/22更新内容
Blenderには先ボーンの概念がない為、それに対する暫定的な処理が変換時に行われている。
処理内容としてはIKボーンのターゲットボーンになるボーン(通常は「つま先」ボーン)のとき「親ボーン名」+「セパレーター」+「左右区分」+「_」と命名される。
このルールだと「左つま先」ボーンは「足首_L_」等となる。
今回の更新はその名称の変換対応。

2014/12/30更新内容
Blenderからの出力モデルで改行を文字列に入れることが可能っぽいので処理前にあらかじめ材質名・ボーン名・モーフ名・表示枠名をTrimするように変更。

使い方
1.blender2pmxから出力したモデルを読み込みます。


2.プラグインの実行
編集
→プラグイン
→User
→BONE
→[BONE] ボーン名称の調整(Blenderから出力後用)
をクリックしてプラグインを実行してください。



3.ボーン名称が更新されている事を確認して下さい。


以上です。

この記事のコメント欄は以下の記事通り解放します
http://ch.nicovideo.jp/t0r0/blomaga/ar760385

投稿者:

T0R0

プロフィールページ