レス数が1スレッドの最大レス数(1000件)を超えています。残念ながら投稿することができません。
PMDEditor Part.2
■PMDエディタ(VMDView)に関してのスレです
不具合報告、要望などはこちらにて
開発者である極北Pからの回答ないし要望反映が為されるとは限りません
また、スレに書き込む内容は、付属のreadme.txtを読んでいる事を前提とします
■PMDEditor入手先(VPVP.wiki該当ページ)
http://www6.atwiki.jp/vpvpwiki/pages/222.html
※PMDEditorはPMDモデルのセットアップに特化したソフトです。
これがあれば簡単にモデルが作れるというソフトではありません。ある程度の3DCGの
知識が必要となります。
また、モデリングソフトそのものではありませんので、モデリングについては各モデリング
ソフトのスレなどで行って下さい。
(スレは各人で探してね)
■このスレでの注意事項
・人をdisらない
・荒らしはスルー
・実装を期待しない
・極北Pに無茶振りしない
■不具合報告テンプレ
【PMDエディタのVer】
【バグ内容】
【バグ再現方法】
【使用OS】
【使用グラボ】
【DirectXのVer】
【備考】(場合によってはランタイム・プラグインVerなど)
MMDに読み込んで不具合が出た場合は、MMDのVerも明記すること
■次スレは>>950 が建てる事
次スレに必要な議論はそれまでに済ませておくべし
>>950 が音沙汰無い場合は>>970 一任
>>836
上着の剛体とスカートの剛体を非衝突に設定すれば良いんじゃないかな?
サイズを小さくしてみたり、剛体を非衝突に設定してみても…なんか上着だけが見えない何かに押しのけられて荒ぶります。
材質関連だろうか?尻の剛体も非衝突にしたけどダメだったし…そもそも非衝突の設定の仕方が間違ってるのだろうか?
http://www1.axfc.net/uploader/File/so/80297
>>839
ありがとうございます。教えていただいたようにやったら、
同一頂点に2つありました(汗)
PMDEの使い方の勉強になりました。ほんとにありがとうございます。
でも、主で動かす方はその2つの頂点を同時に選択できているのに、
鏡像の方が1つしか動かないのはなぜでしょう?
>>842
>鏡像の方が1つしか動かないのはなぜでしょう?
あ、これ俺も知りたい。
表情追加する時とか結構頻繁にこの現象が起こるんで、困ってたんだ。
>842
PMDEの仕様で同一座標の頂点をすべて見つけるのではなく
一つ目を見つけた時点で満足して次に行ってしまうと予想。
鏡像化とかの段階で微妙なズレが出たときに一番近い頂点を鏡像点として認識するよう、
複数あるときも一番近い点一点に絞り込むと予想。 (完全同一でも絞り込む)
スクリプトのV3ってどうやって代入するんですか?
V3 vector = (1, 0, 0)みたいな感じで指定できるんですかね?
重複頂点の鏡像化、こうなって欲しいのが
A1−B1
A2−B2
こうなるんだよなw
A1−B1
x
A2 B2
モデルでたまにエッジが無いものがありますが、
エッジを付け加えるようなことはできますか?
他のツールでできるなら教えてほしいです
輪郭なら普通にPMDEの材質タブで一括編集できるし、viewで頂点ごと編集できるのだが違う意味でのエッジか?
>>848
PMDeで出来る。
MMEでも出来るのあったはずだけど、ずっと表示させたいならPMDeのが良い。
モデルを開いて材質タブからエッジを表示したい材質を選択してエッジの「有効」にチェック。
すいません、初歩的な質問失礼します。
元がPMXで配布されているモデルを形状変化し、正規化して保存したモデルを
MMDに読み込んで、更にダンスモーション等を読み込むとMMDがフリーズしてしまうのですが
PMXで配布されているモデルを形状変化させることは出来ないのでしょうか?
>>851
多分、使ってるPMDEのバグ。
古いPMDEを使うか、一旦PMXをPMD化してから形状変化して再びPMXにするか・・・
物理切ってる間はMMDで動くんだろ?どうやら、ジョイント周りがおかしくなるっぽい。
極北Pー!早く来て修正してくれー!
>>851
情報が少ないのでなんとも言えないが・・・
Joint⇔剛体・ボーン⇔剛体・剛体A⇔剛体Bの関係は正しい?
これらの関係が正しくないとMMDは落ちやすい。
>>852
バグだったんですか。
仕方ないから地道にView画面でオブジェクト操作してましたが、
前バージョンのPMDEをダウンロードしてみますね。
迅速なご回答ありがとうございました!
>>853
ちょっと確認してきます。
ちなみに元がPMDで配布されてるモデルを形状変化→正規化保存させた場合は、問題なくMMDでも動きます。
またその形状変化させたPMXを更に形状変化させても、問題なく動きます。
何故かPMXで配布されてるモデルを形状変化→正規化保存させた場合は動きません。
当PCスペック:windows7/64bit/2GB2CPU
使っているソフトのバージョン:MMD739/PMDE0138
ざっと確認してきました。
PMXで配布されているモデル、む〜ぶ式鏡音リン・YM式神威がくぽ・銀獅式天音ルナの3体で試した所。
(全員形状変化で頭ボーン選択→スケールY値を0.95に変更。正規化保存の際は閾値0.00001)
鏡音リン:正規化保存可→MMD読み込み可。物理演算無しだと動く。物理演算ありだと頭リボンが消える。
神威がくぽ:エラーして正規化保存できない。
天音ルナ:正規化保存可→MMD読み込み可。物理演算無しだと動く。物理演算ありだとフリーズ後、いきなり再生状態前に戻る。
上記鏡音リンのデータをPMDE上で確認すると、Joint⇔剛体・ボーン⇔剛体・剛体A⇔剛体Bの関係自体は正しいけれど
PMDEView上で見ると頭リボンの剛体が行方不明になっていました。
>>846
_plugin/CSScript/CSScript.txt 読め。
>>857
メニューやらなにやらなめまわすように見てたらわかりました
どうもです
PMDエディタ最新版(1.3.8)が突然起動しなくなりました。
1.0.0は今までどおり普通に起動するのですが、
最新版はクリックしても無反応で、エラーも出ません。
DLしなおしてみても同様です。
Wikiを見る限り、最新版も1.0.0も必須ランタイムは同じになってますが、
最新版だけが起動しない場合、どんな原因が考えられるのでしょうか?
何かヒントがあったらご教授下さいm(_ _)m
>>850
ありがとうございます
ちゃんと表示されました
>>859
OSは何?Vistaか7だったらブロック制限かかってんじゃない?
でも1.0.0が起動してて、1.3.8も突然起動しなくなったっておかしいか…?
一回、DLした圧縮ファイルのプロパティからブロック解除して解凍してみて。
質問です
メタセコで凝ったモデリングをしてPMX化したときに
法線の関係で存在しない形状の影が出るなど地面影よく破綻する件についてですが
①メタセコ・PMDエディタ・MMDの、どの段階で原因が発生しているのでしょうか?
メタセコが原因であればモデリング時に未然に防ぐ方法はありますか?
②こちらで紹介されてるPMDエディタでの「近距離頂点の統合」を行うと
http://whitesilverlion.seesaa.net/article/186642580.html
たしかに地面影はかなり治まるのですが、逆にモデル形状(陰影)が破綻します
「選択法線の平均化」なども同様です
また法線を1本1本調整しようにも、複雑な形状の場合は法線同士が
密接に重なって手のつけようがない状態です
現在はモデル形状を優先させるため地面影は諦めているのですが
なにかいい解決方法はありませんか?
MMDではpmxに記録されてる法線をそのまま使うし、
PMDeも法線を編集しないならMMDと同様。
メタセコでは法線はスムージング角を元に自動的に計算してる。
法線がおかしくなるとすればmqoをpmxに変換する部分以外にはない。
>>862
PMDEで選択頂点の[平均面法線設定]→[近接法線の平均化] でだいたい直ると思うがどうでしょう?
ただ、ところどころ法線がとんでもないとこ向く頂点が出たりするんで、そこだけもう一回選択して繰り返し修正
初心者板にも書いたのですが、あっているのかわからないので
こちらにも書かせていただきます
PMDeditorの質問なのですが、普段使っているWindows7から
USBに入れてWindowsVistaで使おうとしているのですが
問題イベント名: APPCRASH
アプリケーション名: PMDEditor.exe
アプリケーションのバージョン: 0.1.3.7
アプリケーションのタイムスタンプ: 4f103951
障害モジュールの名前: KERNELBASE.dll
障害モジュールのバージョン: 6.1.7601.17651
障害モジュールのタイムスタンプ: 4e2111c0
例外コード: e0434352
例外オフセット: 0000d36f
OS バージョン: 6.1.7601.2.1.0.256.4
ロケール ID: 1041
追加情報 1: 0a9e
追加情報 2: 0a9e372d3b4ad19135b953a78882e789
追加情報 3: 0a9e
追加情報 4: 0a9e372d3b4ad19135b953a78882e789
というのが出て停止します
どうしたらいいでしょうか?
>>865 readme.txtを読んだかい 必須ランタイムがないんじゃないの
USBメモリーから実行してる?
>>863-864
情報ありがとうございました
もういちど試してみます
質問です。
自作モデルをmmdでセンターボーンを空中に移動させると、
両足のそれぞれ一部だけ地面に残り、餅がくっついたような状態になります。
pmdウェイト描画で点色を見ると、青点もあり、黒い点はくっついた場所と同じ、
参考にサンプルモデルを見てみると、全身黒点。
なので、黒い点に塗り替えたいのですが、青→黒に塗り替えるやり方がわかりません。
>>869
全身黒点になるのはボーンの選択がされてないか間違ってるだけです。
脚の頂点であれば、足・ひざ・足首のいずれかでウエイトを塗り直せば良いんじゃないですか?
>>870
サンプルモデルのセンターボーン選択でもう一度確認しましたが
どこも影響がない状態?の全身黒点でした。
>>871
ところで、サンプルモデルとはどのモデルのことでしょうか。
MMD同梱モデルのことであればセンターで黒点になるのは、
センター以外にウエイトが割り振られてるだけのことですよ。
基礎から分かってない気がするからここで聞く前にいったんエディタ講座とか
READMEを軽くでも見た方が理解に良さそうだけど
>>872
はい、同梱モデルです。
そうですか、理解できなくてすいません。
rokdebone2 でボーンと影響度まではなんとかやれるのですが
MMD用の影響度の把握はまだまだです・・・。
とりあえずセンターのウエイト消したいだけなら、センター以外のボーン2つで100%で塗ればいいよ
右足なら、右足で100、右膝で100とかね。
みなさまいろいろとありがとうございました。
ひざ下ボーンを全て削除して新たに作りなおしたところ、餅ははがれました。
影響度ではなく、根本的なミスです。
ボーンだけに骨が折・・・
遅くなりましたが>>833 です。
今までこの症状を確認したのは銀獅式リツやテト(ななみモデル)等ですが、
モデルを読み込んで何も変更せずに別名保存しようとしても
保存できなかったので、おそらくモデルが原因ではないと思います。
(0.0.6.3や1.0.0.0では普通に保存できます)
「聞いたことがない症状」と仰られているということは、環境依存(それもかなり特異な)の可能性が
高いんですかね?
だったら、アップデートの際に改善しているのを祈るしかないですが・・・
>>877
ボーンとIK見直してみたら?
銀獅式波音リツ__ver1.01.pmdを確認してみたけど、IKで右つま先IKに左足首 左つま先IKに右足首で逆になってる。
私のとこだと保存は出来たけど。
すまん 勘違いだ・・・ 逆
状態検証でボーン38の順番がおかしいというのだけ修正してみては?
>>879
ありがとうございます。
さっそくやってみましたが・・・相変わらず保存出来たり出来なかったり。
テトさんモデルも同様です。
他にも標準ミクv2やula式ユフなどでもやはり同じ症状が出ました。
>>880
標準ミクv2でなるということはPMDエディタを再インストールしてみては?
落としたファイルのブロック解除を忘れずに。
ブロック解除忘れてUACに引っかかると、一見ちゃんと動いてるように見えるのがなぁ・・・
表情設定について乗ってるサイト探してるんだが
ござらんか?
検証したら不正面/重複面の×がでたので
不正面/重複面の削除を実行したけど×が消えない
作り直すべきか(v1.3.7)
モデル全体を頂点選択して編集→頂点→面の表示でモデル真っ赤してから
不正面/重複面の削除を実行
それで消える
>>883
面選択出来るようにしてる?
してないなら「選択:頂面骨剛J」の面をクリック
>>884 ,885 できました
はずかしいながら面選択がオフになってたみたいだ。
どうも有難う!
長い髪など剛体とジョイントの長いチェーンを物理演算で動かすと接触や干渉が無いにも関わらずプルプルと振動することがあるのですが、これの解消方法をご存知ないでしょうか。
>>887
物理演算の挙動を無視して漠然とプルプルを止めるなら
・剛体の移動/回転減衰を上げる(1に近付ける)
・Jointの位置/回転数値を下げる(0に近付ける)
・Jointの位置制限/回転制限の範囲を狭くする
・剛体やJointの位置(座標)を動かしてみる
あとは剛体の質量・減衰、Jointの数値を微調整しながら試行錯誤するでござる
pmd表情設定について質問です
メタセコイアで目の周辺面を複製してUV焼き付けで目を数種作りました。
単に用意した表情に切り替える為にはどうしたらよいのですか?
それぞれrokdeboneではボーンと影響度の設定まではやりました。
>>889
pmdなら、頬赤(頬染め)とかの要領で、あらかじめ標準以外の表情をほんの少し後ろに下げて
頭の中に格納しておいて、表情編集でひとつずつ、出したい表情を前に出して元に位置に戻し、
標準表情を後ろに下げるのを繰り返す。ただしこの場合、表情アニメーションしない。
pmxなら、UVモーフで、複製を作らずに、一枚のテクスチャに表情をすべて描いて、ずらすんじゃ
ないかと思うけど、今回は表情ごとにポリを作っているのだから、すべての表情を標準表情と
同じ位置にしたまま、表情編集で透明度を上げるだけのを表情の数だけ作ることになるんじゃないかと思う。
>>890
ありがとうございます
移動と透明度、勉強になりました
自分と同じ事象が出る方がいるか、いれば解決方法などご存知でしたら
教えていただけませんでしょうか
.xファイルを読み込んで、編集した後に.xでエクスポートすると
日本語のテクスチャファイル名に"\"で挟まれた数値が含まれるようになり
結果、テクスチャが反映されないという事象がでます
たとえば、"木材.bmp" -> "\226\木\215\材.bmp"のようになります
.xファイルをテキストエディタで開いて、ファイル名を修正すれば治るのですが
できれば、PMDEditorからエクスポートする時点で正しいファイル名にしたいのです
事象確認した.xファイルは「リベルニア2.00」の「地面.x」です
よろしくおねがいします
>>892
テクスチャ名を半角英数に書き換えるとならなくなる。
>>892
PCは半角英数を扱うためのもので、日本語は苦手だから、
日本語だと化けることがある
>>893 とか、後で直すとか、自分で対処するしかないんじゃないかな
>>893
ありがとうございました
配布時点で全角文字が多く、ファイル差し替えはつらいので
従来どおり、編集後にエディタで書き換えます
>>888
現状においては根本的な解決は難しく、物理エンジンの仕様として割り切るしかないみたいですね。ありがとうございました。
メタセコの"選択部を視点回転の中心に"って言う機能
PMDeにはあるんでしょうか?
>>897
Ctrl+2
>>898
ありがとうございました
Ver0138でしたが表示タグのなかに視点の回転中心がありましたので
大変助かりました
しかしCtrl+テンキーの"2"ではなぜか発動しませんでした。
まあマウスでタグから選択していけば使える様になったので問題ないです
>>899
テンキー駄目なのは仕様です。 [2"ふ]キーほうで。
>>900
Σ(゚д゙)
知らんかった・・・
無事解決しましたありがとう
つーか、テンキーの数字キーとフルキーの数字(を含む)キーは全くの別物扱い
これはPMDEに限った話じゃなく、ほとんどのソフトがそういう仕様
定型作業を書きたくてPlugin化しようとしているのですが、今はIPXPmxで書けとあります。
しかし公開されているPluginソースなどでこれを使用している物は少なく
皆様はどこで情報を得て居るのでしょうか。
具体的にはCreateBoneをしようとして対応するものが見つからずいきなり躓きました。
基本的にはプラグイン解説.txtなんだけど、
足りない部分に関しては、
参考になりそうだけどソース非公開なプラグインをILSpyで逆コンパイルして、
使ってる関数とかを調べて、実際に書いては動かしての試行錯誤。
>>903
まず、スクリプトで練習するのをお勧めする。
サンプルスクリプトを見れば、たいていのことは書いてあるよ。
PMDEditorの「編集→プラグイン→CSScript」からスクリプトエディタを開き、
メニューの「表示→プラグインデータ一覧」を参考に。
PMDEditorに添付されてるサンプルソースのうち、「Pmd」「IPEPmd」「IPEXPmd」に
なっている部分を「Pmx」や「IPXPmx」に書き換えてやれば、たいていは動かせるよ。
ボーンなど新規オブジェクトの作成なら、サンプルスクリプト「S016」に書いてある。
ボーンクラスでnewするのではなく、オブジェクト作成用のビルダを使わないとだめ。
ちなみに、ボーンの場合はClone()でもいいかも。
全削除でもボーンゼロ個にできない仕様だから、クローン元が必ずあるからねw
剛体とか、ゼロ個の状態から剛体を作りたいなら、先ほどのビルダじゃないと
無理だけど。
ありがとうございす。
>>904
なるほど。
.NETはそういえば逆コンパイルができるのでしたね。
ソース公開されてない方にはちょっと申し訳無いですが、色々覗かせて貰おうと思います。
>>905
CSScriptはIDEの恩恵が受けられないので仕様が判っているのなら
VS上でやっていった方が良いと思っていましたが、色々試行錯誤するのなら
CSScriptを使わざるを得ないですね。
お教え頂いたS016を元にpmx用のbuilderの扱い方のとっかかりも見えました。
ただAPIの全体の流れが掴めずに苦労しています。
こういう Hostを介して・・・というのは、何か一般的なデザインパターンだったり
するのでしょうかね。。。
デザインパターンはよくわからないけど、メモリ管理の都合でそうしてるんだと思う。
本体側に必要なオブジェクトの実体をプラグイン側が抱え込むと色々面倒な事になるし。
インターフェイスだけ公開してどうこうっていうのは一般的なんじゃないかね
それ以外の点に関しては結構アレな点あるけど
argsから受け取ってどうたらとかは比較的ダサいやり方だけど、一番楽な方法でもあるから割とよく見る形式
作ったモーフを似たようなモデル(アイマスとか)で流用する方法ありませんか?
>>909
例えばどんな物?
いわゆる「漫符」の様な「完全に後付け」的な物なら、その表情だけのPMD(PMX)を作っておいて、
他の物でインポートして合成すれば出来ると思うけど、
「笑い」とか「あ」とかみたいな「ベースのモデルの頂点を移動させないといけない物」は
構造上まず無理だと思うんですが・・。
ひつもんです
材質の頂点を削除すると切断面のエッジが消えちゃいます
もちろん材質のエッジは表示ありにしてあります。
頂点ごとにエッジ設定しても表示されません。
図で説明すると左側の赤い部分の頂点を削除すると右側のに緑部分のエッジが消えてしまいます
http://www.dotup.org/uploda/www.dotup.org3182301.png.html
解決策ご存知の方。知恵を貸してください。
>>911
切断面(線)にはエッジは出ないので折り返しのポリゴンを追加しましょう。
PMDで水道蛇口のボーンを作っているのですが
バルブをX方向回転のみに設定し、Y,Z方向へは動けないようにしたいので
調べてみたのですが解説ページを見つけられませんでした。
ボーンの制限軸という項目をボーンの親子判定がない場合を-1としているのでこうなのかな?とおもいつつ1,0,0としてみましたがやはり違うようです
ご存知のかたよろしくお願いします
>>913
ちょっとテスト用に簡単なモデルを作ってみました。
ttp://bowlroll.net/up/dl6321
このテストモデルで取手の回転軸は真上を向いてるので、軸制限でYのみ回転するようにしています。0 1 0 で設定。
取手が横向きについてるような状態なら、軸制限はxを活かす感じで1 0 0 とかになります。
軸制限を、例えば「0 1 0」とすると、MMD上での操作でxyzどの軸で回転させても
y軸回転として反映される、という事です。何かの参考になれば。
見当違いだったらごめん。
>>913
もっと簡単な方法がある
捩りボーン使えばいい
表情設定してるんだけど綺麗に口閉じたりするのむずいんだけど
地道に調整するしかない?
メタセコでモデル2つ(閉口、開口)作ってうまい具合にできないかな?
>>916 新規モーフ作成画面にxファイルをドラッグ&ドロップ(複数可)すると追加される。
メタセコにてモデルをコピーして、頂点の移動だけでモーフを作成、頂点数が増減するとだめ
個々のモーフをxファイル書き出
質問です、
PMDe0.1.3.8を使っているのですが、csvファイルで剛体やボーンを編集するために
エクスポートしたcsvファイルをエクセル2003で編集、再度csvファイル形式で保存し
PMDeに読み込ませても更新できません。
エクセルで編集したcsvファイルをテキストエディタで覗いてみると、名前の部分が""でくくってあったのが
無くなってたりなど、微妙にフォーマットが異なってしまうためのようです。
エクセルで編集したcsvファイルを直接PMDeに読み込ませる方法はないでしょうか?
>>912
どうもです、助かりました。そんな単純な理由だったのか・・・
>>918
エクセルの表示形式を「文字列」にして""を追加するとか、吐き出し方(保存方法)を変えればええやないの
その辺はOpenOfficeの方が得意かもしらん
自分はtxtエディタでカンマを置換して対応した覚えがあるようなないような…
>>918
名前をつけて保存 CSV(カンマ区切り) だと駄目。
上書き保存で 「互換性ないけどいい?」 で[はい] 閉じるとき「CSVで保存する?」 で[いいえ]を選択。
注 excel2002でしか確認してない
MEA_fsさん、915さん御回答有り難うございました
どうやらPMDエディタ上だと軸制限ロックが無効になるようで”ん??”となっていましたが
MMM、MMD上でサンプルデータを動かしたところロックされた状態で動き理解できました。
質問です。
あにまさ式初音ミクver2をPMXにして、CSScriptの訓練をしています。
目的は「頭ボーンを多段化→新規枠に登録」というスクリプトを組むことなんですが、
新規枠を作るところまではうまくいくのですが、登録方法で詰んでしまっています。
以下にスクリプトを貼ります。
///////////////////多段作成////////////////////////////////////////////
for(int x=1; x < pmx.Bone.Count; ++x)
{
if(pmx.Bone[x].Name == ("頭"))
{
IPXBone cx = pmx.Bone[x]; // 多段元の参照取得
IPXBone cx2 = (IPXBone)cx.Clone(); // 多段元の複製(追加ボーン)を作成 : Clone()
pmx.Bone.Insert(x , cx2);
cx.Parent = cx2; //親に関連付け
cx2.Name = "頭親1"; //名前を変更
break;
}}
/////////////////////表示枠//////////////////////////////////////////////////////
IPXNode cxx = pmx.Node[0]; // 参照取得
IPXNode cxz = (IPXNode)cxx.Clone(); // 複製
pmx.Node.Add(cxz); //末尾に追加
cxz.Name = "多段格納"; // 名前を変更
わかる方いらっしゃいましたら、よろしくおねがいします。
最期に反映させないといけないんじゃないかな?
args.Host.Connector.Pmx.Update(pmx);
みたいに。
>>923
ビルダを使って新規にNodeItemを作って表示枠に追加、かな〜
ビルダの使い方は、サンプルの「S016_データ要素の追加.cx」に載ってる
表示枠も、Node[0]があるからたまたま動いてるけど、もし表示枠がゼロ
だったらエラーになるかな?
両方とも新規にオブジェクトを作るなら、↓みたいな感じでいけると思う
IPXPmxBuilder bld = host.Builder.Pmx;
//表示枠追加
IPXNode nodeNew = bld.Node();
nodeNew.Name = "多段収納";
pmx.Node.Add(nodeNew);
//表示枠にボーンを追加
IPXNodeItem nodeItem = bld.BoneNodeItem(bone);
nodeNew.Items.Add(nodeItem);
>>924
フッターは貼ってませんでしたが、更新させる文はあります。
>>925
ありがとうございます。
ちょっと試してみます。
>>925
表示枠の新規追加は無事にできました!ありがとうございます。
ただ、IPXNodeItem nodeItem = bld.BoneNodeItem(bone)
の行に関して、エラーが出てしまいます。
error CS1502: The best overloaded method match for 'PEPlugin.IPXPmxBuilder.BoneNodeItem(PEPlugin.Pmx.IPXBone)'
has some invalid arguments
error CS1503: Argument 1: cannot convert from
'System.Collections.Generic.IList<PEPlugin.Pmx.IPXBone>'
to 'PEPlugin.Pmx.IPXBone'
不正な記述があったようなのですが、S016を見ても
どこが不正なのかよくわからない状態です。
申し訳ありませんが、教えていただければ幸いです。
boneってどこに記述されてる?
bld.BoneNodeItem(bone) のカッコ中のboneです。
923です、お騒がせしました。無事解決しました。
最終的に以下の様なスクリプトで目的を達成できました。
///////////////////多段作成////////////////////////////////////////////
for(int x=1; x < pmx.Bone.Count; ++x)
{
if(pmx.Bone[x].Name == ("頭")) ////////ターゲット////////
{
IPXBone cx = pmx.Bone[x]; // 多段元の参照取得
IPXBone cx2 = (IPXBone)cx.Clone(); // 多段元の複製(追加ボーン)を作成 : Clone()
pmx.Bone.Insert(x , cx2);
cx.Parent = cx2; //親に関連付け
cx2.Name = "頭親1"; //名前を変更
/////////////////////表示枠////////////////////////////
IPXPmxBuilder bld = host.Builder.Pmx;
//表示枠追加
IPXNode nodeNew = bld.Node();
nodeNew.Name = "多段収納";
pmx.Node.Add(nodeNew);
//表示枠にボーンを追加
IPXNodeItem nodeItem = bld.BoneNodeItem(cx2);
nodeNew.Items.Add(nodeItem);
break;
}}
>>924 925 929
ありがとうございました!
>>931
ああ、ごめん!「ボーンの変数」とか書いた方が親切だったね
無事できたようで、よかったです
しかしエラーメッセージが適切じゃないのはboneって名前の暗黙変数か何かが居るのかな?
簡易だと扱いやすくなるようにbone[]って名前の配列があったような
中身はボーンのオブジェクトだかなんか
C#は知らんので適当だけど
>>933
検証してみたところ、pmx.Bone[]でもいけました。[]内は整数です。
forと組み合わせれば、いろいろできそうです。
それはpmx.Boneが持ってるインデクサだからboneとは関係ないかな
いや、error CS1502: The best overloaded method match for 'PEPlugin.IPXPmxBuilder.BoneNodeItem(PEPlugin.Pmx.IPXBone)'
のエラーがね、引数が合うBoneNodeItemメソッドが無いよ、ってエラーなので、boneって名前の変数が.IPXBone以外の型で存在するのかな?って話で、多分>>934 の通りなんだろうね。
なんか混乱させたようだ、申し訳ない
「bone」はただの変数名で、「x」でも「hoge」みたいなものです
自分が書いたソースでは、ボーンを列挙するfor文の中で、条件に一致する
ボーンを表示枠に登録してたので、本当は上に↓があって
foreach(bone in pmx.Bone)
これを省略してコピペしたので、「boneなんて変数は宣言されてないよ、
IPXBone型の変数を入れてね」ってエラーが出たんだね
935にあるとおり、
for(int cnt = 0; cnt < pmx.Bone.Count; cnt++){
なんたらかんたら(pmx.Bone[cnt])
みたいな書き方でも同じです
ちょっと誤字ったw
× 「x」でも「hoge」みたいなものです
○ 「x」や「hoge」みたいなものです
foreach (var bone in pmx.Bone) にすればよし
スマートフォン版
掲示板管理者へ連絡
無料レンタル掲示板