したらばTOP ■掲示板に戻る■ 全部 1-100 最新50 | |
レス数が1スレッドの最大レス数(1000件)を超えています。残念ながら投稿することができません。

MMD関連ツールスレ

1名無しさん@お腹いっぱい。:2009/11/29(日) 06:45:37 ID:mACOjB1Y0
■MMDの関連ツールについてのスレです(PMDEditorを除く)
主にMMD用に作られた関連ツールについてのスレです。
PMDEditorやMetasequoisなどのソフトは専門スレに行って下さい。

■主な関連ツール
データ作成系ツール
http://www6.atwiki.jp/vpvpwiki/pages/217.html

データ変換系ツール
http://www6.atwiki.jp/vpvpwiki/pages/218.html

拡張表示系ツール
http://www6.atwiki.jp/vpvpwiki/pages/219.html

その他関連ツール
http://www6.atwiki.jp/vpvpwiki/pages/220.html

主にここに載っているようなツールを扱います。
各ツールの制作者もご利用下さい。

■このスレでの注意事項(暫定)
・人をdisらない
・荒らしはスルー
・実装を期待しない
・樋口M氏を「さま」呼ばわりしない

■次スレは>>970が建てる事
次スレに必要な議論はそれまでに済ませておくべし
>>970が音沙汰無い場合は>>980一任

263名無しさん@お腹いっぱい。:2010/09/22(水) 21:44:29 ID:DJeadET60
>>253
調査ありがとうございます。
おかげでエラー箇所の見当がついてきました。

実は、アンチエイリアスがONの場合、
"ScriptExternal=Color;"の前後で特殊な操作が入ります。

DirectXでは、
Gaussian.fxで使っているような、テクスチャとして参照可能なレンダリングターゲットに対して、
アンチエイリアスを使用してレンダリングを行うことができません。

その回避策として、一旦、別のレンダリングターゲットを用意して、そこにアンチエイリアスONで描画した後、
その結果を、元のGaussian.fxのレンダリングターゲットにコピーする、ということを行っています。
(といっても別にMMEffect独自というわけでも何でもなく、これが一般的な方法みたいですが)

恐らく、この処理でなにかポカをしているために、ご指摘の問題が起きているのだと思います。

264名無しさん@お腹いっぱい。:2010/09/22(水) 22:02:15 ID:DJeadET60
>>255
MMDのセルフシャドウが使用できない場合、MMEffectも使用できません。
基本的に同じものですから。


>>258
>・XファイルのZ軸に並んでる面を200面に(ピッチはそのまま)
Xファイルの面を増やす場合は、その分、Z値のピッチは下げてください。
200枚なら1/200をピッチとして、必ず0≦Z<1となるようにしてください。

>・TEX_WIDTH/TEX_HEIGHTを200に
TEX_WIDTH*TEX_HEIGHTを200に、の間違いでしょうか

後、0.05 のペアが2箇所で出てきますが、これは多分、以下のように直す必要があると思います。

 誤: float2 base_tex_coord = float2( float(idx%TEX_WIDTH)/TEX_WIDTH + 0.05, float(idx/TEX_WIDTH)/TEX_HEIGHT + 0.05);
 正: float2 base_tex_coord = float2( float(idx%TEX_WIDTH)/TEX_WIDTH + 0.5/TEX_WIDTH , float(idx/TEX_WIDTH)/TEX_HEIGHT + 0.5/TEX_HEIGHT);
 
 誤: texCoord += float2(0.05, 0.05);
 正: texCoord += float2(0.5/TEX_WIDTH, 0.5/TEX_HEIGHT);

ただ、パーティクルを数倍程度に増やしたいだけの場合は、
particleSpeedを少しだけ変えたものを、複数重ねて配置したほうが楽だと思います。

265名無しさん@お腹いっぱい。:2010/09/23(木) 01:34:39 ID:mUIlVhJM0
>>261
独自でしたか、参考になります。
自分の方でもいじって、トゥーンテクスチャを利用する方法を組み込んだのですが
非セルフシャドウなら納得出来る出来なのですが、セルフシャドウモードになると・・・
どうにもトゥーンテクスチャが失われるみたいで(同じs0でシャドウマップに上書きされる?)上手くいきませんでした

Color.rgb *= lerp(MaterialToon, float3(1,1,1), saturate(LightNormal * 16 + 0.5));
を組み込んで試行錯誤してみます

266名無しさん@お腹いっぱい。:2010/09/23(木) 02:03:11 ID:A3VkZfTo0
>>264
お答え頂きありがとうございます。
ミサイルの煙のように軌跡を描く表現がしたかったのですが、FireParticleSystemExのパーティクル数100では軌跡が短すぎるので数を増やしたいと思いました。
どうやら数だけじゃダメっぽいですね。

267名無しさん@お腹いっぱい。:2010/09/23(木) 03:45:06 ID:kvTLngYI0
>>265
MMD標準のセルフシャドウでは、
トゥーンテクスチャは、左下のドットの色だけを取得して使っていて、
テクスチャとしては使っていなかったかと。
なお、full.fxで使用している、"MaterialToon"も、トゥーンテクスチャの左下のドットの色を表しています。


>>266
パーティクル数を1000にしてみました。
http://bytatsu.net/uploader/mikumikudance/src/up1397.zip

268名無しさん@お腹いっぱい。:2010/09/23(木) 04:24:37 ID:QTg/wfCM0
MMEffectで質問なのですが、.fx初心者なので基本的なことかもしれませんが、

1) 2pass方式で最初に全てのsubsetを1pass目のレンダリングしてから2passめのレンダリングをするというのは無理ですか?
2 )ポストエフェクト系で現在のDepthBufferを参照することは無理ですか?(DepthOfFieldみたいなことしたいなと)

もしよろしければ教えてください

269名無しさん@お腹いっぱい。:2010/09/23(木) 10:47:06 ID:0f0sfv5I0
ところで、このままこのスレで fx の質問って今後もこんな感じで受け付けてくの?
わかってない人もいるかもしれないけど、HLSLは最終的にコンパイルされてGPUが実行する機械語を作るプログラムであって、
fx ファイルも別にMME専用のデータファイルとかって訳じゃないぞ。
もしかして丸々基礎からここで教えるつもりなのか。 MME自体の使い方とか質問なら全然おkだけど、ちょっと流れ変わってきてね?

270名無しさん@お腹いっぱい。:2010/09/23(木) 10:49:47 ID:0f0sfv5I0
>>268
fx自体初心者なら先にこっち見ようぜ
http://www.google.co.jp/search?q=HLSL+%E3%83%91%E3%82%B9

271名無しさん@お腹いっぱい。:2010/09/23(木) 10:58:44 ID:NK.qSOiQ0
はいはい、名人様は自分の作業に戻っててくださいませ

272名無しさん@お腹いっぱい。:2010/09/23(木) 11:12:43 ID:0f0sfv5I0
>>271
名人様とかそういう話じゃないだろ。馬鹿じゃないの?

273名無しさん@お腹いっぱい。:2010/09/23(木) 11:17:55 ID:GC6PsH5.0
全てのアプリは最終的にPCが実行する機械語を作るプログラムだ
だがそんな事は使う側には関係無い

274名無しさん@お腹いっぱい。:2010/09/23(木) 11:21:19 ID:NK.qSOiQ0
自分に当てはまらない事柄ならば
スルーしておけばよいものを・・

275名無しさん@お腹いっぱい。:2010/09/23(木) 11:21:33 ID:0f0sfv5I0
>>273
??いやそうなんだけど、それとこれと特に関係ない話だよな?

上で俺が言ってるのは、MMD関連ツールスレで、そのツールそのものの質問でなく、そこでたまたま利用される事になった
HLSLの基礎までこのスレの範疇でやるのか?って話だ。 キリないぞって話
fx ファイルやHLSLの話なんて、MMDの話と関係ない。全然わからない人に説明始めたら延々終わらないし
当人が理解できなきゃ意味が無いから、自分である程度調べて勉強しないと無理だよって事。 それすら理解できないのか

276名無しさん@お腹いっぱい。:2010/09/23(木) 11:24:55 ID:0f0sfv5I0
>>274
いやMMEの作者の人に気を使わせてまさかいちいち全部答えるハメになったら悪いだろ
HLSLやfxの基本的な事柄やサンプルコードなんて、DirectXSDKにもあるし、MSDNにもあるし、ググればもっと噛み砕いた話もあるし、
プログラミングの素養が無い人だと壁が立ちはだかるけど、それでも興味をもったやる気のある人なら行けばいいし、って事さ
作者の人に全部基礎から聞くのはさすがに申し訳ないと思わないか。あと薄っすらスレチ

277名無しさん@お腹いっぱい。:2010/09/23(木) 11:25:34 ID:GC6PsH5.0
やりたい人がいれば続くだろうしいなければレスはつかない
ただそれだけの事

278名無しさん@お腹いっぱい。:2010/09/23(木) 12:08:51 ID:eH1HAnk20
MME固有の話からもっと話が延びるようなら「MMEでのHLSL・fxについて語るスレ」とか立てればいいと思う。
個人的にはもうちょっと様子見。

279名無しさん@お腹いっぱい。:2010/09/23(木) 12:36:09 ID:1EGEVtsk0
MMEの話が落ち着いてきたらこの辺つかえばいいと思う

MMD動画の編集・加工(エフェクトなど)を語るスレ
http://jbbs.livedoor.jp/bbs/read.cgi/music/23040/1274703972/

【MMD】 MikuMikuDance 【3DCG】
http://hibari.2ch.net/test/read.cgi/cg/1275515923/

MMEを試した動画が増えてこない事には先はわからんでしょ

280名無しさん@お腹いっぱい。:2010/09/23(木) 13:30:09 ID:Jr32U.Dg0
>>276
MMD使って動画作ろうとする初心者に、「動画の編集方法ってどうするのですか?」とか、
「フォルダとか、D&Dってなんです?」って聞かれたときにMMD板で教えるよりも、
「ニコニコ動画向け MAD製作Wiki http://www34.atwiki.jp/niconico_mad/」や、
パソコン初心者向けのサイトに誘導するじゃない。
それと同様の対応でいいと思うよ。

281名無しさん@お腹いっぱい。:2010/09/23(木) 14:52:32 ID:S0oogHZQ0
>>279
それ両方ともマズイと思う

MMD動画の編集・加工(エフェクトなど)を語るスレ
は、「AVI出力後」の動画に対する加工を扱ってるスレで、
MMEみたいな「AVI出力前」にエフェクトかけるのは技術的に別物。
ただ、加工用素材を作る目的でMME使ってみたら?って流れはあると思う。

【MMD】 MikuMikuDance 【3DCG】スレ
は、例えば、MMDで使う分には問題なく、独自拡張であるMME
を使うときだけ問題が出るようなモデルの場合、
話題が混ざって混乱する恐れがある。

282名無しさん@お腹いっぱい。:2010/09/23(木) 14:53:14 ID:QTg/wfCM0
>>270
thx. GLSL専門なんで詰まっちゃって。ググって出直してきます

283名無しさん@お腹いっぱい。:2010/09/23(木) 15:00:38 ID:/1c5jVYo0
ここでいいよさ

MMEの質問する人は検索しやすくする為に名前欄にMMEって入れとけば

284名無しさん@お腹いっぱい。:2010/09/23(木) 15:02:00 ID:0f0sfv5I0
>>282
なんだよ完全に初心者って訳じゃないのか。 それならむしろググれ
俺もBlenderでPython+GLSL書いてて、HLSLはC++でDirectX触る時に書いてるけど、考え方は似たようなものだ。
少し違うだけだからググってサンプル&基礎理解すれば詰まる事なんてない。それだけ

>>281
ちょっと2ちゃん内の各板スレも見てきたけど、DirectX でさらに HLSL(fxファイル) 特化されたような所って
微妙に見つからないか、あっても超絶過疎なので、やっぱり新スレ立てる方がいいかもな
CG板、プログラム板でも浮いてしまう話題だし、さらにMMEで使いたいって事からMMD界隈の話も出るだろうし

285名無しさん@お腹いっぱい。:2010/09/23(木) 15:05:35 ID:rMT2UGhI0
今んとこ、「HLSLの仕様の中でMMEではどこら辺まで実行可能か?」って質問しか来てないように感じるんだが気のせいか?
HLSLというか少なくともC#が少しは理解出来ていないと突っ込んだ質問は出てこないだろうし。

286名無しさん@お腹いっぱい。:2010/09/23(木) 15:14:12 ID:r0IIG4jE0
MMEは需要ありそうだし、専用スレ立ててもいいんじゃね?

287名無しさん@お腹いっぱい。:2010/09/23(木) 15:19:23 ID:/1c5jVYo0
HLSLとC#って言語仕様一緒なのか?

288名無しさん@お腹いっぱい。:2010/09/23(木) 15:24:33 ID:0f0sfv5I0
>>287
全然関係ない。むしろ C言語に近い

289かんな ◆LROMJ4PcOQ:2010/09/23(木) 22:10:24 ID:pdg85p/s0
MME用の新スレ立ててもいいし、もし新スレにするなら、DirectXやHLSL扱ったプログラマ向けな
スレでもいいし。
MMD関係でプログラム組んでたりする人も多くなってきたし、相互情報交換の場とかあっても
いいかもね。
質問に答えるような感じのものは、確かにキリが無い場合もあるからムズカシイとこだすなぁ

290名無しさん@お腹いっぱい。:2010/09/23(木) 22:40:59 ID:0f0sfv5I0
>>289
それ賛成。MMD周辺に関するプログラマ向けスレって、地味に無いのであってもいい。
その範疇でなら、MMEに限らず自前でC++とかでコード組むような場合でも、シェーダ使う場面で
結局HLSLなどの話も出るだろうから、そういう人向けって事で1つ独立しててもいいと思う
MMD関連プログラマ向けスレ みたいなわかりやすいタイトルで、
>>1 のテンプレにHLSL/GLSLなどシェーダ言語に関する話題も含むとか

291名無しさん@お腹いっぱい。:2010/09/23(木) 22:59:23 ID:YAfVdSec0
ついでだから提案したいんだけど、
エラー報告のSSやテキストファイル用の
うpろだもテンプレに入れたほうがよくない?
既存のろだにうpする人多いとモデルが埋もれちゃう

292名無しさん@お腹いっぱい。:2010/09/23(木) 23:19:55 ID:pdg85p/s0
エラー報告用うpろだかぁ…
まぁ誰かload.jpで専門作るか、ニコ静画使うか、斧使うか、かねぇ
流石に私がサイト色々抱え込むのも問題だから、誰ぞたのんますw
まぁここでも4096文字まではいけますが。

293名無しさん@お腹いっぱい。:2010/09/23(木) 23:50:44 ID:3IlQBpIY0
あ、>>291の意見は、斧みたいな汎用うpろだを
想定してます
使い捨て?のファイルはそういうろだの使用推奨
って意味です

294名無しさん@お腹いっぱい。:2010/09/24(金) 08:24:49 ID:rcvsofOM0
立てるならニコ静画が良いでしょう
やるなら次のバージョンアップの時に

295名無しさん@お腹いっぱい。:2010/09/25(土) 01:12:42 ID:aBIFu3eY0
ぬぅ、MME、グラボをGTX460に差し替えたら、炎エフェクトで不本意な結果が……
どうも炎の末端から先端に対して妙なものが出来てるようなので、
パーティクル的なものを再利用するときに、移動が見えちゃってるのかなぁとか拙い想像をしたりもしてるんですが……
下にサンプル動画を上げましたので、ちょっと何か対応策わかるかも! という方、教えてくれませんでしょうか。
できればよろしくお願いします。
http://www.nicovideo.jp/watch/sm12218548

296名無しさん@お腹いっぱい。:2010/09/25(土) 01:26:05 ID:V47ao2OM0
前のグラボに戻せばいい

297名無しさん@お腹いっぱい。:2010/09/25(土) 02:04:42 ID:AbXATp2s0
>>295
とりあえず、コレ上書きして試してもらえませんか。
http://bytatsu.net/uploader/mikumikudance/src/up1404.zip

298295:2010/09/25(土) 11:13:54 ID:aBIFu3eY0
>>297
うおおおおお、綺麗になりました! 完璧です! すごい、ありがとうございます!

fxファイルの修正だけでなんとかなったんですね。ちょっとファイルを読み比べて勉強してみます!
創作意欲が燃えてきたー!

299名無しさん@お腹いっぱい。:2010/09/25(土) 16:48:45 ID:wA3RLPmM0
初心者質問スレからこちらに誘導されてきました
http://www.nicovideo.jp/watch/sm12204526のエフェクトのsample.xをMMDに読み込むと
MMD上では正しく表示・再生されるのですがaviに出力しようとすると真っ白になります。
また、KeyLuminous.xを読み込むと異様に重くなりPCの電源が落ちました

http://www1.axfc.net/uploader/Img/so/95523.jpg MMD
http://www1.axfc.net/uploader/Img/so/95524.jpg AVI録画中

GPUはIntel(R) G33-31 Express Chipset Family オンボードです
やはりグラフィックボードをいれないと駄目なのでしょうか?
ちなみに、同じ方が作成されたDiffusionというエフェクトや
MMEのGaussianでもAVI出力で真っ白になりました。

300名無しさん@お腹いっぱい。:2010/09/25(土) 17:36:40 ID:AbXATp2s0
ポストエフェクトの不具合の影響が大きいようなので、
バグ修正版を先にリリースします。
(別の機能を追加する予定だったけれど、それは先送り。)

http://bytatsu.net/uploader/mikumikudance/upload.cgi?mode=dl&file=1406 DLKey=mme
MikuMikuEffect ver0.11
変更点:
・一部の環境で、ポストエフェクト使用時に、AVI出力がおかしくなる不具合を修正
・一時的にエフェクトをOFFにする機能を追加(メニューの「エフェクト使用」)

301242:2010/09/25(土) 17:52:26 ID:XrVG0cnU0
>>300
正常に出力されることを確認しました!
対応ありがとうございます。これで心置きなくエフェクト作成できます

302名無しさん@お腹いっぱい。:2010/09/25(土) 18:08:15 ID:YWA5TJrc0
>>299
横からだけど、その G33-31チップセットの表示機能は今あるグラボの中でもローエンド以下の性能しかないので
そもそも3Dアプリケーションをまともに動かせるシロモノじゃないです
多分だけど、シェーダモデルも3とかそれ以前に、そもそもDirectXレベルでのエミュレーションで無理やり動かしてるだけ?だったような
さしあたり、統合チップセットでもG45ExpressになってやっとVertexShaderがエミュレートされるようになった
(それでもハード的には動かない)と思ったので、ま、なんていうか、 3Dやる環境じゃないですそれ。真面目に

303299:2010/09/25(土) 18:19:30 ID:wA3RLPmM0
>>300
おお!出力できました!ありがとうございます!

>>302
やはりグラフィックボードは必要なんですね。今まで普通に動いていたので
購入検討します

304名無しさん@お腹いっぱい。:2010/09/25(土) 18:48:01 ID:kO8lVRb20
>>299
>>302
たしかに、そのチップセットのGPUであるGMA 3100は、
VertexShaderをソフトウェア側で処理してますね。
重い・落ちるのは、上記に加えエンコードの処理で
CPUが過負荷状態に陥ったのが原因でしょう。
(真っ白になる原因としては微妙なところですが)

で、対策ですが、
①MMEアップデート(>>300)【不具合修正】
②解像度を下げる【負荷軽減】
あたりでしょうか。
まあ、一番のオススメは、グラボの追加ですが

305名無しさん@お腹いっぱい。:2010/09/25(土) 18:51:47 ID:kO8lVRb20
リロード忘れた…恥ずかしすぎるorz

306:2010/09/26(日) 13:04:40 ID:Vlp33Wrg0
MME、すごく応用範囲が広くて素晴らしいものなので、なんか色々とお手伝いとか
できたらいいなぁ、なんて考えてるのですが、本体側(MMD)でMME用に付けて欲しい
機能とかあります?

あ、ただしMMD本体はロースペック用ツールとしたいので、MMEの機能を本体に
取り込むとかは無しの方向で。
あくまでMMEを使う上で、もっと表現の幅を広げるために、簡単にMMD側で
できる事のみ、ということで。
(例えば、フレーム毎に可変の汎用数列(行列値)をfx側に渡すとか)

307名無しさん@お腹いっぱい。:2010/09/26(日) 13:50:50 ID:H9kbmAps0
「面白いねと多数派が評価するなら、どんな動画でも許されるべき」
「傷ついた?傷つく前に、観なければよかったのに」

これと、イジメをする人間の心理とを
区別するのが難しい。

308名無しさん@お腹いっぱい。:2010/09/26(日) 13:56:23 ID:utkOE6mI0
ビック電器.com
9月リニューアルOPEN!!リニューアルOPENを記念いたしまして液晶TVを50000円から販売しています。
9月末までの 限定価格!! Googleで『ビック電器.com』と検索下さい。当店のHPやブログが出てきます!!

309名無しさん@お腹いっぱい。:2010/09/26(日) 14:02:48 ID:YAtamsO20
なんかagaってるなと思ったら
ビック電器とか北海道の詐欺屋じゃねえかw
ゲキド街に店つくるぞコラw

310名無しさん@お腹いっぱい。:2010/09/26(日) 14:44:11 ID:bFnGxn..0
>>306
Mから舞力介入P宛?
そういやお互い連絡先無いのか…
誰かのblogとか非表示コメントできるトコで捨てアドでも交換できるといいね

311名無しさん@お腹いっぱい。:2010/09/26(日) 14:57:55 ID:QO0neRTo0
>>306
>(例えば、フレーム毎に可変の汎用数列(行列値)をfx側に渡すとか)

これは絶対ほしいです
キーフレームごとにエフェクトの設定変えられたら表現の可能性が
凄いことになりますよね

312名無しさん@お腹いっぱい。:2010/09/26(日) 15:03:26 ID:t0E1EE6k0
>>310
まあ公開討論で問題ない範囲は見えるところでやって貰えた方が。

もしかしたら脇から意見拾い上げて貰えるかも知れないし。

313名無しさん@お腹いっぱい。:2010/09/26(日) 16:55:27 ID:CNthiVjI0
>>310
Mの連絡先はMMDのりーどみーにメアド載ってるよw
ここでやれることはここで連絡してもらえると俺ら的にはありがたいが、
突っ込んだ話するなら舞力介入さんが一旦連絡されてみたらいいんじゃないか?

314名無しさん@お腹いっぱい。:2010/09/26(日) 17:26:19 ID:V0thnqyE0
>>306
おお、恐縮です。有難うございます。

>(例えば、フレーム毎に可変の汎用数列(行列値)をfx側に渡すとか)
一応、これと似たような機能はMMEffectに実装済みです。(CONTROLOBJECTセマンティクス)
これは、アクセサリを描画する際のWorld変換行列をMMEffect側で取得しておき、
それを別のfxから参照できる、というものです。

しかし、現在の実装では、実際にアクセサリが描画されるのを待ってからでないと、
行列を取得できないという問題があり、
何とか、シーン描画開始に先んじて、行列を取得できないかと考えていました。

そこで、
以下の情報を、MMEffect側が、BeginScene()の前の時点で取得できるよう、MMD側の支援をお願いできないでしょうか。
・モデル&アクセサリの描画順序の一覧
・各アクセサリのWorld変換行列
・PMDモデルのボーンのWorld変換行列(アクセサリをボーンに割り当てたと仮定したときのWorld変換行列、の意です)

(欲を言えば、fxの各パラメータ変数の値を、フレーム単位で記録できたらよいのですが、
 恐らく、それはMMD側の変更が大きくなりすぎるのではないかと思います。)

315舞力介入P:2010/09/26(日) 17:27:39 ID:V0thnqyE0
>>314
名前つけ忘れましたorz

316舞力介入P:2010/09/26(日) 17:28:23 ID:V0thnqyE0
また >>314 とは別に、お願いしたいことがあります。
現在、MMEffectはMODツールを自称し、MMD側のバージョンアップで動作しなくなる危険があることを
注意事項に挙げていますが、
これは、実行に必要な、いくつかの情報を、相当無茶な方法で取得している点に原因があります。

以下の情報を、MMEffect側で取得できるよう、MMD側の支援をお願いできないでしょうか。
・再生中(AVI出力時、画像出力時を含む)のフレーム時間
・PMDモデルの各種マテリアル色

他にも結構無茶をして取得している情報はあるのですが、
この2つが一番無茶をしている(無理矢理MMD側の構造体にアクセスしている)ので、なんとかしたいです。

317名無しさん@お腹いっぱい。:2010/09/26(日) 17:30:13 ID:HVT7o1bk0
にゃっぽんに入ってくれれば・・・ってことらしいから
その気があるなら捨てメアドでも貼っておけばいいんじゃないかな

318舞力介入P:2010/09/26(日) 17:42:33 ID:V0thnqyE0
私のメールアドレスは、MMEffectのREADMEに書いてあります。

>にゃっぽん
今の今まで存在自体しらなかったです…orz


>>311
>>314のCONTROLOBJECTについて補足しますと、
現バージョンでも、パラメータ部分を以下のように書き換えれば、動的にパラメータを変更できます。

// negi.xの大きさに連動して、particleSizeを変更する。
//(negi.xがFireParticleSystem.xよりも描画順序が先になっている必要があります)
float negi_value : CONTROLOBJECT < string name = "negi.x"; >;
static float particleSize = float( negi_value );

319名無しさん@お腹いっぱい。:2010/09/26(日) 18:05:52 ID:QO0neRTo0
>>318
おお、ありがとうございます
なるほどアクセサリのサイズに連動させてたんですか

Mの協力が得られそうで良かったですね
頃合いを見計らってMMEスレ立てても良いかもしれません
新しい展開期待してます

320:2010/09/26(日) 18:13:21 ID:Vlp33Wrg0
>>舞力介入Pさん

了解しました。
ですが、フックのプログラミングに疎くて、MMEffect側への変数の引渡し方法がよく判りません。
BeginScene()の前に変数を渡すとすると、エフェクト(D3DXEffect)にデータを送るのではなく、
dllへ送る形になるのですよね?(ちがうかな?)

どのdllへ送るのかとか、あるいはもっと単純なデータの引渡し法なんかがありましたら
教えてくださいませ

321:2010/09/26(日) 18:28:23 ID:Vlp33Wrg0
あ、あとMMD側のfxファイルも公開しておいた方が良いのかな?
ttp://www.geocities.jp/higuchuu4/PSM_3.zip

フックをどの関数に対して掛けているのか判らないので、MME側で読み取れるのかどうか
判りませんが、PSM_3.fxファイルの先頭にある変数へは、MMD側から

D3DXEffect->SetMatrix("変数名",値); // この場合は行列値

でそれぞれのデータを引き渡しています。

322名無しさん@お腹いっぱい。:2010/09/26(日) 18:42:53 ID:opgwLztU0
DLL自体はとあるプロセスが利用するただのライブラリなので「dllへ送る」って言うのは奇妙な言い方かも
MMDとMMEはそれぞれ異なるプロセスで動いてる訳だし
参考: ttp://ruffnex.oc.to/kenji/text/api_hook/

てかプロセス間通信とかでない方法でやるとしたら、MMD側はフックされる事を知った状態で
とある内容をどこかに書き出すようなイメージじゃないと実装できないのでは

323舞力介入P:2010/09/26(日) 19:26:49 ID:V0thnqyE0
>>320
ありがとうございます。

恐らく、MME側からMMD側へ情報の問い合わせを行う、という形にしたほうが、
MMD側の変更が少なくてすみ、また、こちらとしても開発しやすいので、
その方向で考えますと、
問い合わせ用の関数を、MikuMikuDance.exeに実装した上で、エクスポートしていただくのが、一番簡単ではないでしょうか。
確か、EXEファイルでも、DEFファイルを書くなり、"__declspec(dllexport)"キーワードを指定するなりすれば、
DLLのように関数をエクスポートできたと思います。

MME側では、そのMikuMikuDance.exe上の関数を、
HookしたBeginScene()の中からコールバックする形になります。

とはいえ、あまり突っ込んだ話をここでしても邪魔になるだけなので、
詳しい話は別のところで行おうと思うのですが、いかがでしょうか。
(にゃっぽんにもかんなさんから招待していただきましたし)

324舞力介入P:2010/09/26(日) 19:28:34 ID:V0thnqyE0
>>322
MMEはMMDと同じプロセス上で動きますよ。
対象プロセスにDLLを送り込むのが、API Hookの第一歩になります。

325名無しさん@お腹いっぱい。:2010/09/26(日) 19:41:01 ID:oIKv1eCw0
早速メールで設計書やりとりした方が良いレベルになってるw

MMDとMMEの親和性が高くなるのはユーザーとして大歓迎ですが、そうなるとMMEの挙動を守るためにMが今後MMDの大幅な改修をやりづらくなるのではと心配です。

また、舞力介入Pには失礼かもだけど、MME以外のエフェクトソフト?が現れてそっちを気に入る人が出てくるかもしれないし、MMEとだけ親和性を高めすぎても。。とも思います。

以上、釈迦二人に説法でしたw

326名無しさん@お腹いっぱい。:2010/09/26(日) 20:03:51 ID:N4EEvolE0
新たなMMD進化の瞬間を目の当たりにしたようでちょっと感動ww
Mも舞力介入Pも頑張ってください!

327名無しさん@お腹いっぱい。:2010/09/26(日) 20:12:57 ID:cqaQnf1o0
ちょっとした意見

話し合った結果をMMD SKDとして公開すれば他の人もツール作成に役立つのでは?

328名無しさん@お腹いっぱい。:2010/09/26(日) 20:14:02 ID:emHXwJKM0
MMD関連プログラミングスレ
http://jbbs.livedoor.jp/bbs/read.cgi/music/23040/1285499541/
立てたのでご利用下さい。
こちらで続けても構いませんが…どこをどう分散・集中させるか難しいすねぇ

329名無しさん@お腹いっぱい。:2010/09/26(日) 20:26:58 ID:QO0neRTo0
>>325
出力をフックしてまさにエフェクトを介入させるやり方は
普通だと余り歓迎できないけど、MMDがロースペックPCでも動くことを前提に開発されている以上
MMDにとってMMEは水と魚みたいな関係ですよ
MMDとMMEの親和性を高めることは後発のエフェクトソフトにも良い効果を与えると思います

330名無しさん@お腹いっぱい。:2010/09/26(日) 22:18:29 ID:oIKv1eCw0
>329
MMDとMMEは正常に連動して当然!という状態になると
MMDを改修するたびにMMEへの影響調査をMが行うことになって負担が大きくなるかなとか、MMEへのインパクトが大きすぎてMMDの改修を縮小・断念する…
…なんてことを想像したんですが、私の考えが杞憂であれば万々歳です。
何らかの規格化がなされて、後発ソフトが乗せやすくなるとさらに世界が広がりそう。

331名無しさん@お腹いっぱい。:2010/09/26(日) 22:27:49 ID:CNthiVjI0
君が心配することじゃないよ。

332名無しさん@お腹いっぱい。:2010/09/26(日) 22:38:46 ID:5PTi4MuI0
>>330
プロラム的には、
MMD->DirectX9
の間を引っ掛けて、追加情報を加えているのがMMEなので、
その方式は、MMDからの出し方がちょっと変わるだけで、
タイミングが悪くなっちゃうとかもありえるわけです。
MMDの作者とMMEの作者が相談して、その間の
API(プログラム間の受け渡し部分)を決めた方が、
現状のフックする方式よりも安定すると思いますよ。

333名無しさん@お腹いっぱい。:2010/09/26(日) 22:51:44 ID:FIOJ416M0
理想型を言えばAEとかNiVEで言うエクスプレッションみたいな実装形式になればいいんですけどね。
それは事実上のMMD本体組み込みを意味するからやりにくいとは思いますけど。

334名無しさん@お腹いっぱい。:2010/09/26(日) 22:58:05 ID:QO0neRTo0
個人的な理想をだけど

・MMD側でMMEを使う使わないを選択できる
・MMDからfxに対してパラメーターを渡せる
・カメラやアクセサリのようにフレームごとのパラメータをpmmに保存できる

これくらいをお願いしたい

335名無しさん@お腹いっぱい。:2010/09/26(日) 23:13:41 ID:5PTi4MuI0
>>334
pmmとは別ファイルで、拡張子別のファイルの方が使いやすそうですね。

336名無しさん@お腹いっぱい。:2010/09/26(日) 23:19:21 ID:QO0neRTo0
>>335
そうですね
MMDの方も別にした方が良いかもしれませんね

あと

・MMD側でMMEを使う使わないを選択できる

はフックする以上意味が無いことに書いてから気づきましたw

337:2010/09/26(日) 23:20:40 ID:Vlp33Wrg0
あ、それじゃMMD内で関数作って、エクスポートできるようにします。
このエクスポート用関数の仕様を全ての人に公開すれば、他のツールからも読み込めるようになるので
大丈夫でしょう。
とりあえず、プログラムできたら仕様を「MMD関連プログラミングスレ」の方に公開していきますね。

他の方でも、〜の情報を読み取れる関数を付けて欲しい等の要望を、上記すれに書き込んでくれれば
可能そうだったら対処します。

338名無しさん@お腹いっぱい。:2010/09/26(日) 23:27:52 ID:QO0neRTo0
マジすか
なんか燃えてきたw

339名無しさん@お腹いっぱい。:2010/09/26(日) 23:28:31 ID:E08tg8fY0
早くパソ買い換えないとw

340舞力介入P:2010/09/27(月) 00:03:58 ID:tuw8gFMg0
>>337
ありがとうございます。お願いします。

341名無しさん@お腹いっぱい。:2010/09/27(月) 11:54:21 ID:MbWkzrfw0
なに,この神々の会話!?

342名無しさん@お腹いっぱい。:2010/09/27(月) 14:53:17 ID:fsZvvMKo0
感謝の表現はいいけど、「神」とか言うのはやめようぜ

343名無しさん@お腹いっぱい。:2010/09/29(水) 10:11:16 ID:MycxsuAU0
MMDがLOD対応してくれたらうれしいな
モデルも作りこめるし

344名無しさん@お腹いっぱい。:2010/09/29(水) 19:54:00 ID:rncpK.so0
>>343
PMDの頂点数制限が、65000ぐらいにあるので、元々詳細は作りこめない
のではないでしょうかね。
DirectXの機能としてはDirectX11のテッセレーションというのが、自動で
ディテールを作ってくれるらしい(ノーマルマップかバンプマップが必要なのかな?)
どのぐらい効果的なのか興味あります。
http://www.4gamer.net/games/033/G003329/20080908014/
http://www.youtube.com/watch?v=9F6zSgtRnkE

そういえば、バンプマップやノーマルマップはMMDで使えるのかな?

345名無しさん@お腹いっぱい。:2010/09/29(水) 20:37:31 ID:74U/b9ds0
>>343
Level of Detail?
プリレンダ用途なMMDで、速度パフォーマンス出す必要性があまりないから
用途がちょっと想像できないのだけど、速度面以外でなにかあったっけ・・・

>>344
MME使うと、シェーダさえ組めば
ノーマルマップ(視差マップ・視差遮蔽マップもがんばれば)ができる下地ができましたね。

346名無しさん@お腹いっぱい。:2010/10/02(土) 01:22:24 ID:hBPhR2260
MMEの表示失敗についてご相談させて下さい。

PC/Win7
グラボ/Intel Core i5 450M 2.40GHz
MMD/Ver708a・710(モデル:標準のMEIKO・初音ミク)
MME/Ver0.11
MME サンプルエフェクト/ver3

MMD本体とモデルが上記のどの場合でも、特定エフェクトが一部正常に表示されませんでした。
希望はDiffusion、DOFの使用ですが、原因を調べる為いくつか他のエフェクトも試しています。
セルフシャドウは解除してあります。アンチエイリアスが有効な環境無し。

成功
glass_sample.pmm。再生も問題無し。Avi出力は試していません。

失敗
①Diffusionフィルタ
②DOF(被写界深度)テスト用エフェクト
 どちらもモデルが全く見えません。MME効果で座標軸にはエフェクトがかかっています。
 モデルは読み込んだ瞬間ボーンのみ表示され、移動も可能なので読み込みは出来ています。

 MMEログウインドウには下記エラー?が残っていました。
 \MikuMikuDance_v708a\UserFile\Model\○○(モデル名).fx
 done.
③Gaussian(ぼかしフィルタ).pmm
④LaughingMan(笑い男).pmm
 fxではなくpmmを試しました。どちらもpmm読み込み時にアクセサリエラー「xファイルが見つかりません」OK
 →「アクセサリファイル○○(エフェクト名).xが見つかりません。○○(エフェクト名).xの場所を指定して下さい(代替可)」
 
 なお、xファイルをMMDのどの階層に置いても必ずエラーが出ます。
 Accessory、BackGround、Modelフォルダ、その他全て試しにxファイルを置いてみましたがやはりエラー。

 「指定して下さい」エラーに沿ってxファイルを指定すると、Gaussianは全くエフェクトかからず。
 LaughingManは、モデルの顔周りに白い四角が表示されるのみ(板アクセサリに顔を半分突っ込んだ感じ)。
 再生しても変わらず。
 ③④はMMEのログウインドウには何も表示されず。

他、記載すべき点、改善すべき点があれば教えて頂けると嬉しいです。

347名無しさん@お腹いっぱい。:2010/10/02(土) 01:44:51 ID:231xSiH.0
>グラボ/Intel Core i5 450M 2.40GHz
??

348名無しさん@お腹いっぱい。:2010/10/02(土) 01:57:25 ID:y6t9Jioo0
>>347
Core i5内蔵のグラフィックアクセラレータなのでは?
DirectX10をサポートしているはず。
http://pc.watch.impress.co.jp/docs/column/kaigai/20090827_310763.html
コードネームは"Arrandale"

349名無しさん@お腹いっぱい。:2010/10/02(土) 20:52:15 ID:isMVrem20
>>346
とりあえず、以下の点を確認してみてください。
・配布場所の説明にあったように、MMEサンプル(GaussianやLaughingMan)は
 Accessory\ に展開してください( UserFile\Accessory\Gaussian\Gaussian.x とかになるように)
 (pmm読込時にXファイルのパスを指定しなおせば、別にここでなくとも良いです)
・DiffusionやDOFなどの、ポストエフェクト系のエフェクトファイルは、
 描画順序が先頭にくるように設定してください/
・その他、README.txtに書かれている、特殊操作を行っているか確認してください。

350名無しさん@お腹いっぱい。:2010/10/02(土) 23:53:09 ID:hBPhR2260
>>349
>・配布場所の説明にあったように、MMEサンプル(GaussianやLaughingMan)は
> Accessory\ に展開してください( UserFile\Accessory\Gaussian\Gaussian.x とかになるように)
laughing man.pmmが成功しました!ありがとうございます。
原因は、配布動画で
 Model/初音ミク.pmd
 Model/初音ミク.fx
 Accessory/negi.x
 Accessory/negi.fx
とあったので、pmd・fx等は、Model・Accessory各フォルダに個別で「直置き」すると勘違いしていたことでした。

動画には「モデルファイルと同一フォルダ&同名で格納」の記載もきちんとありましたが、
「直置き」と反するので意味がよく分からず、とりあえず色付き文字が表示しているように置けばいいのかな?
フォルダが要る時はりどめに記載があるんだろうか?と思っていました。
※サンプルエフェクトの(Accessory\に展開)についても展開=xファイル等を個別にAccessoryに置くのかな?と・・。
 考えすぎでした。

Diffusion・DOFも同様に正常表示され、AVI出力も問題ありません。
個人的な思い込みが原因で申し訳ないです。失礼しました。

351名無しさん@お腹いっぱい。:2010/10/03(日) 07:30:58 ID:ApwEj4LE0
これは良い失敗例

352名無しさん@お腹いっぱい。:2010/10/04(月) 09:06:35 ID:YRfMuENM0
こちらの被写界深度エフェクトについての質問です。
http://www.nicovideo.jp/watch/sm12265680
エフェクトを使用するとCPU使用率とフレームレートが低下して操作に支障が出るのですが、ハードウェア的な問題なのでしょうか?

具体的にはステージとアクセサリ、モデルを3人読み込んだ状態で、
エフェクト未使用時はCPU使用率約30%/150fps程度ですが、エフェクト使用時には約15%/30fps程度です。
特にPMDファイルにエフェクトを適用した場合に、一気に半分程度に低下します。
エフェクト使用で負荷が上がるのは分かるのですが、CPU使用率が下がってしまうのが腑に落ちません。

主な構成
i5 750、GTX260、DDR3-1333 2GB*2、Windows7(x86)、MMD 7.11、MME0.11を使用しています。

353名無しさん@お腹いっぱい。:2010/10/04(月) 09:33:54 ID:AcoRCx8s0
GPUの処理が増加してfpsが下がったのでCPUは暇になった

354名無しさん@お腹いっぱい。:2010/10/04(月) 09:56:34 ID:QTFzaHOQ0
>>353
GPUのロード率をモニターしたら、確かにそのようで納得しました。ありがとうございます。
モデルにエフェクト適用すると一気に99%近くまで振り切れていましたw

355名無しさん@お腹いっぱい。:2010/10/10(日) 13:06:43 ID:BdsFsOF20
一時age

356名無しさん@お腹いっぱい。:2010/11/11(木) 01:09:32 ID:QYvqTcGI0
>>350
やばい、今まさにこの失敗と同じことして、同じ質問しようとしてたw
そうか、そういうことだったのか。
一人で勝手に助かったよ

357名無しさん@お腹いっぱい。:2010/11/11(木) 01:18:18 ID:TF1w6RzE0
そりゃだって何でもかんでもHLSLで書いてやらせてしまうって内容だからそうなるわなww
普通はシェーダだけでやったりなんかしないもんな

358名無しさん@お腹いっぱい。:2010/11/16(火) 21:00:35 ID:QDDg5DZQ0
剛体の設定を弄ってスカートの物理だけ切って手付けが手っ取り早いかもね。ドラマ系やるならある程度髪の毛やスカートは手付け覚悟した方がいいかも

359名無しさん@お腹いっぱい。:2010/11/16(火) 21:01:09 ID:QDDg5DZQ0
誤爆(´・ω・`)ごめんなさい

360名無しさん@お腹いっぱい。:2010/11/18(木) 18:00:52 ID:xIoellBw0
EdgeOnPlugin2とGrooveboonの.DLLの読み込みに失敗するのは自分だけですか?
どちらもpublickeyToken Nullからの型DLL名.testPOption(GPBOption)にある
メソッド get_RegisterMenuに実装が含まれてないという理由で失敗するのですが・・・

361名無しさん@お腹いっぱい。:2010/11/18(木) 18:11:44 ID:NW4k3qgs0
>>360
最近のPMDエディタの話?
それなら、仕様変更で使えないよ。
旧版のPMDエディタ使ってくださいってさ。

362名無しさん@お腹いっぱい。:2010/11/18(木) 18:18:06 ID:xIoellBw0
>>361
了解
分けとくかあ




掲示板管理者へ連絡 無料レンタル掲示板