2025年4月28日月曜日

IKとボーンモーフを使ったアイディアの一個

 IKとボーンモーフを使った仕掛けをもう一個提示してみます

親の切り替えは座標への拘束が1点、一点という感じでした


では、2点を固定した場合はどうなるかというと

軸合わせをモーフ化出来るようになるんですね


3点で作れば座標とXYZ軸の強制まで可能ではありますが、MMDエンジン化回避の呪文も組み込まなくてはいけなくなるのでかなり複雑化します

どうしても必要ならば対応は可能ですが、コストに合う効果があるかが疑問ですね(やれないことは無いけどねー、というお話です)

というわけで、まだ理解がしやすいであろう軸合わせのモーフ化のお話になります


組み合わせとして

IKのアームが2セットと2セットのアームを結ぶIK

IKを纏めて動かす親

アームを結ぶIKを親にして移動させられる実ウエイトが乗ったボーン


このアームを短くするようにボーンモーフを組み合わせる事で軸を合わせる事ができます



挙動は動画のような感じになります


 筒先に近い方が先に位置が合ったほうがより現実的ですから、筒先に位置が合ってから全体の軸を合わせて挿入のような挙動が出来るようにモーフはあえて2種に分けてあります

一応サンプルモデルも上げておきますので触ってみてください

筒挿入構造サンプル

なんの仕掛けも無しにこういう挙動のモーションを作るのは結構面倒なんですよね


「直剣を鞘に入れる、出す」とか「迫撃砲の玉を入れる」とか「バラバラの部品をくみ上げる」とか

そういう事に使えるかも?

日本刀なんかでやる場合は軸は合わせられますが、反りに合わせて楕円運動をさせる感じの仕掛けが必要になるでしょう

材質トリックを組み合わせてもいいかもしれません

この、IKのアームとボーンモーフを組み合わせた手法は他にも応用出来る

と思いますので、手法の一手として覚えておくと良いと思います

足IKの有効無効のモーフ化も可能ですね、変形ロボとかには組み込んでもいいかもしれませんね

IKのONOFFをMMD上で小まめにやれば良いのではありますし、上手にモーションを作れればそれだけでOKってお話ではあるんですけどね


こんな仕掛けも作れます

という紹介でした

2025年4月19日土曜日

今更説明してもかな?(疑似的な外部親切り替えのモーフ化)

 ボーンモーフでボーンの移動が出来る訳ですが、IKLINK■黄色のボーンやTERGET■ピンクのボーンにも適用出来たりします

移動モーフとしては、ボーンの初期位置からみてグローバル方向と距離になる事が理解出来ていればボーンモーフでLINKボーン同士の距離を0にする事は難しくないでしょう

その時はどんな感じになるかと言えば、TREGETボーンとLINKの親ボーンの座標が一致する事になります

この挙動を利用すると疑似的な外部親切り替えのモーフ化手切りIKの親の切り替えが可能になったりします

動画でがっつり使われているのはこの動画ですね

使われている技術的な解説はこちらでお話されています

ネルさんのストリートパフォーマンス ふたたびEx 主にモーション周りの技術解説編【MMD杯ZERO2Ex2 前編】

の5分25秒あたり

実は、春原さんに相談いただいたときに”球形無印なら外部親の切り替えをモーフ化することは出来るよ”との条件をお話してOKもらえたので仕掛けを組んでお渡ししました

何故球形無印かというと、この時にストックであった構造は手切りIKの親の切り替えをモーフにしてみた構造配布するよにだったので、XYZの座標は一致させられるけれど、角度の制御は考えていなかったので”球形無印”ならという条件だったんです

見ればわかるのですが、ボールの数字がクルクル回っているでしょう?

結構急ぎのようでしたし、球形のボールでしたので助かりました

では、このクルクル回るのをなんとか出来ないか、どいう話になるのですが、結論としては対処出来ました思いつくまで時間が必要でしたけど(==;

これ、時間置いてどーうするといいかをグルグル考えて作ってみて、あかんかったら修正して、ってお話になるので急ぎだと時間が読めないのですよ(閃くまでのお時間が)

IKを付与で動かして、物が置かれるボーンでキャンセルをかける格好です、2段にすると先がMMDエンジン化しましたので、先にお話しした付与の橋渡しをしてMMDエンジン化を回避しています

サンプルを用意してみたので興味があれば触ってみてみださい

物の角度が変わらないので一応安定してはいるのかな?と

芝居するとなるとボーンを足して左右の手頸の回転も付与すると使いやすいかもしてませんね

理屈でいえば2個アームがボーンモーフで長さが0になるとアームの基部に物がくっつくという理屈です

ですから、モーフの適用順序は先端側から適用させる必要があります

また、やる気さえあれば段数を増やす事も可能ではあります

使うのであればモデルに組み込んで使う事になると思うので状況に合わせてカスタムしてあげてください

ネルさんが玉をいじったり掴んだりするやつはMMM専用でしょうからあの動画まんまが出来るとは思いませんが、誰かが対応してくれるといいよね(投げっぱなし)

それでも、疑似的に「IKの親の切り替え」や「外部親の切り替え」がモーフ化できますよというお話ではありますから応用は効くんじゃないかな?


ただいま今後どんなお話をしていこうか悩む所であります
更新間隔を開けて動画やモデル作成を進めていこうかとも思っていたり



2025年4月12日土曜日

付与率は小数点が面白い・・・のです

 デフォルトのスケルトンに関係しそうな情報は大体抑えたのかな?

そうすると、わりと使うテクニックについて、ちょっとずつ突っ込んだお話になっていく事になると思うわけです

で、今回は付与のお話です

付与親のボーンの回転、移動が

付与率倍で

付与を受けるボーンが動く

のが付与なわけですが、ちょっと気を付けないといけない事があります

付与率が整数倍なら気にすることはありません

付与倍率が1なら付与親と付与ボーンの動きはほぼ同一ですし、2倍、3倍ならその倍率に従ってグルグル回ります

ステージとか小物配布するよ「エレキキュレーター」いろいろ回れ

ここで配布しているステージとか、ターンアラウンドカメラボーンとかはMMDエンジンの代替え構造として大倍率付与を利用しています

このあたりは、先にここで説明していたりしますので興味があればどうぞ


付与率に少数が含まれる場合

これが一癖あるわけです、付与親の回転が180°を超えると、付与を受けるボーンが巻き戻ってしまいます

これはMMDモデルが3DでXYZなので行列式で計算を簡単にしたいのでフーリエ変換とかしているので180度以上の角度でちょっち癖が出るのが原因です

付与親が0~180度までの回転では付与ボーンは素直に付与倍率に従って回転します

付与親が180度を超えるとマイナス方向にジャンプします

付与親が更に回って0になると付与ボーンも0になって帳尻を合わせる動きになります


歯車を嚙合わせるように付与をする場合

1回転する付与親の親歯車と付与率10倍で回る子歯車←これは出来る

10回転する付与親の親歯車とその0.1倍で回る歯車←これは工夫が必要になる

こんな事になるわけです


この巻き戻りは厄介な動きに思えるのでしょうが、実は結構便利に使われていたりします


■捩じりボーン

これは、腕やひじを捩じる時に雑巾絞りで千切れそうになる事を、巻き戻りを利用して回避するの仕掛けになります

普通にモデルさんに組み込まれていますよ


■繰り返し構造

ある範囲でループする素材をシンクロさせて移動し続けるようにみせる仕掛け

尺取虫構造と巻き戻りを組み合わせてあげると

ステージとか小物配布するよ「エレキキュレーター」いろいろ回れこの動画の1分35秒あたりからのチューブ状背景とか、チェーンの回転とか、無限テープとかの表現が出来ます




■クロック構造

ある一定のタイミングで止まる回るを繰り返す構造

これも結構な種類があれいますね、良くあるのは時計の秒針とかです

ワープするタイプの構造はわりと簡単にできますのでレッツチャレンジです

少し凝った事をするとこんな事も出来ますね

これはそのうち配布するつもりはあるので、気長におまちください

動画を作らないとなぁ(==;

2025年4月6日日曜日

2重関節の足IK (接地させよーとするとめんどいのよ)

 MMDモデルでの2重関節はいくつかのモデルでは早い時期に採用されていました

■1軸で動くのがデフォルトである事

■終端の位置が元のモーションとズレても問題が出ない事

この2点が条件になりますが、元のボーンの回転を2個のボーンに分けて合計1になるように付与率を与えれば良いのでわりと簡単なんです

PMDモデルでも採用されているモデルがあったはずです


私の場合だと
【第11回MMD杯本選】Mechanical Dress【MMDモデル配布】
このモデルの指から採用してたんじゃないかな?

指2や3のボーンはZ軸以外まず動かさない

指先の位置はズレますが形は合う

ので先に上げた条件に合いますからわりと問題が起きにくいです


では足IKのひざは1軸(x方向のみの回転)ですね

ということは、ひざもこの簡易な2重関節構造でやれなくは無い訳です

実際採用されているモデルもあったと記憶しています


ではどんな感じになるかなのですが、答えは簡単ですね

足IKの位置と足先の位置が合わなくなる訳ですから

接地が決まらなくなります


こんな感じ
ピンクの方が簡易版です

ただ構造は単純になるので、接地感に拘りが無いのであれば採用しても悪くは無いかも

最近のメカって大抵宙に浮いてますから、歩かせる必要が無ければ採用してもいいかもです


歩かせようとすると、左で見えるズレをどう修正するかで苦労しそうです



触ってもらった方が解りやすいと思うのでファイルも上げておきます

足IKひさの2重関節サンプル2種

ダンスさせる場合はこんな感じになります、滑ったり潜ったりしますから接地感が気になるならお勧めはしません




一応自分のORZシリーズとかの構造をお勧めはしてみる宣伝です

【第9回MMD杯本選】ロボらしく動け【モデル配布】

【第10回MMD杯本選】CROSSING POINT【MMDモデル配布】

【MikuMikuDance】 LatさんとロボがHYBRIDを踊るよ 【MMDモデル配布】

あ、ちなみにミクモデルさんにも採用はされてますよ

Gourikimal式初音ミクG型 Ver1.70

良いモデルさんなので宜しくなのであります


では、この簡易構造を「1軸で動くのがデフォルト無い」場所に使った場合はどうなるかなのですが

単純に対応させるとクランク状に曲がる可能性があります


大きく曲げる可能性が低い場所であればそんなに気にならないかもしれません

ひじや、棒状の部位に使うと目立つ事になると思います

1軸以外の回転を他所に持っていく等の工夫が必要になるでしょう



一応は上でリンクしてあるORZシリーズのひじとかは参考になるかと思います

ORZ-79DやEZには「初期モーフ」を入れるようにと説明があります

これは、配布モーションに対応しつつ、IKの角度制限を利用した変形補正を行っているからです

ひじ周りは通常のモデルはYに回転させるのがデフォルトだと思いますが、IKをY軸のみの回転に制限しようとするとロックしやすくなって破綻してしまうのです

初期姿勢では回転を許す軸をグローバル軸Z、Xになるような姿勢にしておいて、「初期モーフ(ボーンモーフ)」で一般的な形に変形させています

モーションを受け入れるボーン自体は通常のMMDモデル同様にアロースタンスの腕角度なので、配布モーションが受け入れられる仕組みです

IKを利用して服を被せているイメージが理解しやすいでしょうか

一応この考え方は普通のヒューマノイドモデルの衣装にも応用できます

【第18回MMD杯本選】「天月りよん」さんに舞っていただいた

このモデルさんの腕回り応用されています、穴あきの袖でどうやって捩じりに対応しようか悩んだ結果です

今回は普通のモデルではあまり必要ないようなお話ではありますが、ひざ周りや変形補償に興味がある方には参考になるかもね、です