レス数が1スレッドの最大レス数(1000件)を超えています。残念ながら投稿することができません。
【MME】MikuMikuEffectを語るスレ Part 2
当スレはMiku Miku Effectのスレッドです。
MME本体、MME用fxファイルの公開、VerUPの告知にお使い下さい(他貼り自貼り問わず)
MMEに関する質問もどうぞ。ただしテンプレ(>>2-3 も含む)を一読してから。
Miku Miku Effect紹介動画
【MikuMikuDance】エフェクトファイルを読めるようにしてみた
http://www.nicovideo.jp/watch/sm12149815
舞力介入Pによる記事
3DCGツール「MikuMikuDance」のエフェクトを拡張する 「MikuMikuEffect」の概要と導入方法
http://codezine.jp/article/detail/5997
VPVP wikiの MMEのページ
http://www6.atwiki.jp/vpvpwiki/pages/272.html
ニコニコ大百科
http://dic.nicovideo.jp/a/mikumikueffect
有志によるまとめ
http://v-nyappon.net/?m=diary&a=page_detail&target_c_diary_id=895216
質問用テンプレ
【エフェクト名】fxファイル名。効果が似たものがあるので、オリジナルのファイル名推奨。
【紹介動画のタイトルとアドレス】
【Ver】MMD本体・MME本体・エフェクトのバージョン。
できれば公開日も(2011/02/02)などと書いて下さい。
※以外と勘違いしていることが多いので、最新版とは書かずに数字で書くこと推奨。
(ちなみにエフェクトもバグフィクスやVerUPされてるので
場合によってはもう一度落とし直すだけで解決する場合もあり)
【ハードウェアのスペック】動作環境。判るようならVS・PS・VTFなどの情報、ラデかゲフォか大事かも。
質問の前に同梱のReadMeをもう一度よく読もう。ReadMeが無い場合は公開動画の説明をよく読もう。
>>126
おお、ありがとうございます!
URL先も大変参考になります。
>>127
GIMPだとまた違ったりするんだよねー
http://iccii.seesaa.net/article/23360693.html
Overlay: f(x1,x2, 5) = (1-x2)*x1^2 + x2*(1-(1-x2)^2)
高速化したいなら下記の方が良いと思う。
やってることは>>126 と一緒だけど処理は1/3近くになる。
#elif BLEND_MODE == 9 //オーバーレイ
dst = src < 0.5 ? src * dst * 2.0 : 1.0 - 2.0 * (1.0 - src) * (1.0 - dst );
ブレンドモードの計算式はttp://ofo.jp/osakana/cgtips/blendmode.phtmlを参考にした。(126と一緒の式になるけど)
以前に出ていたグレースケールの考え方もあってありがたい。ttp://ofo.jp/osakana/cgtips/grayscale.phtml
>>97
原因が判明したので報告しときます
SugarSync2.0betaのSugarSyncドライブがどうやらバグってるみたいで、Sドライブに向けて書き込むとファイル終端にゴミが残ってしまうみたいです
予想外の原因だなw
後で突っ込まれそうなので補足
玉ボケDOFのSiはよく考えたら元々操作に使用されていたので、>>126 さんのから
float fObjectRx : CONTROLOBJECT <string name="(self)"; string item="Rx";>;
static float fSizeRate = fObjectRx*0.1;
static const float2 ViewportDotPitch = (float2(SAMPLING_RATE,SAMPLING_RATE)/ViewportSize*fSizeRate);
に書き換えました。
間違ってたら教えてください
>>128-129
オーバーレイにも色々あったんですね…。どちらも試してみます、ありがとうございます
>>132
fSizeRateに入れる時0.1倍してるのはオブジェクトのSiの値が10倍されて入ってくるからそれの補正でした
Rxはラジアンが入ってくるのかな?
Opt玉ボケDOF.x使っていいなら
float fControlerTr : CONTROLOBJECT <string name=CONTROLER; string item="Tr";>;
static float fSizeRate = max(fControlerTr,0.001); // なんとなくZeroDiv回避
static const float2 ViewportDotPitch = (float2(SAMPLING_RATE,SAMPLING_RATE)/ViewportSize*fSizeRate);
とするとOptの方のTr値を使えるのでフレーム補間が効きますがOptを読み忘れると常に0が入っちゃうんですよねこれ。
>>133
そうか、Optを使う手があったんですね!
自分も>>132 の書き込みをしてから補間効かないことに気づいて詰まってました
ありがとうございます、そっちでいかせてもらいます
補間が効くのはSiとTrのみ。
ただダミーボーンと併用したらX、Y、Zなら補間曲線ありで使える。
誰かRx、Ry、Rzをダミーボーンで操作できるようにしてほしい。
(ダミー)ボーンはおいら→マトリクスじゃなくてクォータニオン→マトリクスだしねー
剣と剣がぶつかり合うときに
火花を散らしたいのですが
そういった表現に適したMMEを
教えて貰えないでしょうか
元は火花じゃないけどテクスチャをそれっぽくしたエフェクトなら聖杯Pが配布してたな
http://www.nicovideo.jp/watch/sm18096048
>>138
ありがとうございます
画像を弄れば好みの火花を散らせそうです
情報ありがとうございました
ビームマンのLineParticleも使えるぞ
当たった瞬間に左右に散らすとかっこいいし鍔迫り合いもいける
最新版のMikuMikuDance_v739x64をダウンロードしましたが、開きません。
MikuMikuDance_v524なら開けるのですが…。
種類によって開けなかったりしますか?多分ですが私のパソコンはWindows7です。
>>141
ここはMikuMikuEffectのスレですがMMEの質問ですか?
MMEの質問なら>>2 を読んであなたの環境と
何のエフェクトを使おうとしてるのか、開かないというのは具体的にどうなるのかの
情報を出してください。
もしMMEではなくMMDが起動しないという質問であれば、
MMDの質問スレが適切だと思います。
MikuMikuDance初心者質問スレ part15
http://jbbs.livedoor.jp/bbs/read.cgi/music/23040/1353706917/
そのスレの>>2 と>>3 を読んで、
開かないというのは具体的に何をやったときにどうなるのかという情報を添えて
質問してください。
環境の調べ方も書いてありますから
※最新版という言葉はダメです。バージョン番号を具体的に
なおv739x64は64ビット版です。64ビットOSでないと動きません
>>142
書き忘れた
32ビットOSなら、「1.3 MikuMikuDance(DirectX9 Ver)」のところの
v7.39dotを使ってください
ジェットエンジンのブラストや焚き火など、熱源の周りで空気が揺らめく表現に使えるMMEって無いでしょうか?
http://www.nicovideo.jp/watch/sm926858 の3:51〜の表現みたいなのが欲しいのですが・・・
>>144
【MME】陽炎っぽいエフェクト
ttp://nico.ms/sm12844130
これ使ってみたらどうだろう?
xファイルの形状を変えればいけると思う
>>145
ありがとうございます
試してみたのですが、境界がシャープすぎるので違和感が出てしまいました
あと、空気のゆらぎと言うより水面みたいな感じなのも違和感の原因かも知れません
パーティクルエフェクトのパーティクルにこの効果を適用すればそれっぽくなるのかなと思って試してみようとはしてみたのですが、
勉強が足りなくて私では手に負えそうにない感じでした
平行して質問すいません
この立方体(仮)の中のみぼかす、みたいなエフェクトってありますかね
ビームマンさんのバリアーエフェクト改変でいけるかと思ったけどどうにも
立方体というかその領域の中のオブジェクトだけぼけて、それを通してみた領域外の背景はぼけない感じで
DOFの補助エフェクトとしての使用を考えてます
よろしくお願いします
質問あげ
あとビームマンさんのビルボードエフェクトなんですが、
Trで透明度を操作できるように書き換えられますか?
>>146
ビームマンのDISTLINE(ビルボード用)でパラメータをこんな感じにしてみてはどうか
-------------------------------------------------
//軌跡の着色
float4 LineColor = float4(0.0,0.0,0.0,1);
//歪み力
float DistPow = 0.01;
//最低速度(0で常にでっぱなし)
float CutSpeed = 0;
//ラインの長さ(〜100)
#define LINE_LENGTH 100
//ビルボードフラグ
#define BILLBORAD true
//UVスクロール速度
float UScroll = 5;
float VScroll = 10;
//ラインの太さ(MMD上で設定した太さ×ここで設定した太さ=表示される太さ)
float lineSize = 0.1;
//ラインのスピード(射出速度)
float LineSpd = 1;
-------------------------------------------------
これでも境界線は気になるが、くっつけたダミーをうまいこと揺らすとか振るとかすれば
境界も揺らぐのでかなりごまかせる
長さが足りない場合は射出速度を上げば伸びる
以前MMDで状態変化エフェクトを適用したら以下のエラーが出ました
エフェクトファイルの読み込みに失敗しました: C:\Users\○○◦○\Deskutop\MikuMikuDance_v739x64\Spherize004b.fx
C:\Users\○○◦○
\Desktop\MikuMikuDance_v739x64\Spherize004b.fx(203,28): error X3005:'max': identifier represents a variable not a function
読み込み時
エフェクトの読み込みに失敗しました: C\Users\○○◦○\Desktop\MikuMikuDance_v739x64\SpController.fx
C:\Users\○○◦○
\Desktop\MikuMikuDance_v739x64\SpController.fx(93,30):
warning X3206: implicit truncation of vector type
C:\Users\○○◦○
\Desktop\MikuMikuDance\v739x64\SpController.fx(140,2):
error X3003: redefinition of 'MainTec'
それで、"technique MainTec"で始まる行が複数ある時に重複しないように名前を変えるように言われましたが、重複しているのが見つからないので他に原因があるのではないかと思うのですが、どうでしょうか?
>>151
>>2 を参考に環境と使用しているエフェクト(作者やエフェクト名、公開場所)も書きましょう。
環境もエフェクトも不明では検証することも出来ませんよ。
>>151
Spherize004b.fxの方は変数名にmax,minを使おうとしてるからそれをfMax,fMinとかに変える
SpController.fxの方は132,140,147,158,166,173行目にそれぞれMainTecって書いてあるからそれ全部に番号ふったりすればOK
↑のwarningはmul().xyzにすれば良いけど無視してもOK
コンパイルしてテストしてないから他にもエラー出てくるかも
>>152
yes、ググるの苦労しました
>>152
セルさんのサイトでダウンロードしたものです
エフェクト名:球体化エフェクトVer004β1
http://girlsshapechange.blog.fc2.com/ のアップローダーから
↑今は閉鎖されていますが・・・
>>155 はアップローダーではなくエフェクト配布のサイトです
言ってる意味わからなかったらすみません
>>156
少女変形中−MMDで形状変化講座[第1回]
http://girlsshapechange.blog.fc2.com/blog-entry-42.html
ここから最新版の公開場所に飛べるよ
>>149
どっか上の方に↓を記入
float fObjectTr : CONTROLOBJECT <string name="(self)"; string item="Tr";>;
ピクセルシェーダをこういう風に改変
// ピクセルシェーダ
float4 Mask_PS( float2 Tex :TEXCOORD0 ) : COLOR0
{
return tex2D( Mask, Tex ) * float4(1,1,1,fObjectTr);
}
>>150
ありがとうございます
おお、これは!と思ったのですが、見る角度によってそのまんまの平面に見えてしまうのが致命的でした・・・
>>147
ステンシル使えたっけ?
わかんないからなしで
ゆがましたいオブジェクトを普通に描画
ゆがましたいオブジェクトにBarrier.fx(改)を適応して描画
という2段構成
Barrier.fx(改)
ピクセルシェーダでモデルの色を適応してるところはいらないのでカット
//float4 TexColor = tex2D( ObjTexSampler, IN.Tex );
//TexColor *= (1-param_Alpha);
//Dist.rgb += TexColor.rgb*10;
同じZ値なのになんかチラチラするからZバッファを無視(VertexShaderで頂点をカメラ方向に押し出してもOKだけど)
pass DrawObject {// ←で検索
ZENABLE = FALSE;//Z無視
ZWRITEENABLE = FALSE;//Z書き込まない
こうすると適応したオブジェクトがゆらゆらする
あとはピクセルシェーダでclip()関数かα値を駆使して領域外をゆがませない処理を書けばOK
領域の指定のしかたとか領域内判定のしかたとかはググって頑張るか再度要望してくれれば…
>>159
そのまんまの平面というのはほかのエフェクトと干渉して板ポリが見えてる状態?
それとも歪んでる空間と周囲の正常な空間の境界線が目立ってしまうという意味?
前者ならMMEで他のエフェクトの対象からDISTLINEだけ除外すれば板ポリは消えるし、
後者なら動画のカメラ移動に合わせてダミーの位置角度を調整したり
ビルボードをオフ(#define BILLBORAD true を falseに変更)して
手付でカメラとエフェクト平面が垂直になるように角度合わせたり
そもそも不自然な映り方になるカメラアングルにしないように工夫したり
xファイルの形状を平面以外に(たとえば同じビームマンの「Beam!」エフェクトの
円柱状のxファイルをリネームして差し替えて使うとか)してもダメかね?
動画に出力してみると画面サイズが縮むので思ったより粗が目立たないということもある
配布されてるエフェクトはパラメータ調整したり工夫したりして何とか
自分の動画で使えるように落とし込む必要があるのが普通で、
当てるだけで思った通りの絵になるエフェクトがほしいなら、エフェクト自体の
改造か自作は避けて通れないと思う
ビームマンさんのエフェクトは調整、改造してナンボって気がする。その分高機能。
>>160
回答ありがとうございます、ただ自分の欲しかったのはゆがませるんじゃなく単純なぼかしでした
バリアー云々書いたせいかと、すいません
適用してみたらかなりカッコイイ感じだったのでこれもとっておこうと思います
ぼかし(ガウシアンぼかし、もし出来たらおたもんさんのOpticalBlur)で同じようにできますかね
あとプログラムの知識はさっぱりなのでもう少しだけ易しく…
>>144
さっきビームマンPのBarrier.fxいじったついでに
null.fxという何も描画しないのを適当に作る、中身は
ここから
technique EdgeTec < string MMDPass = "edge"; > {}
technique ShadowTec < string MMDPass = "shadow"; > {}
technique ZplotTec < string MMDPass = "zplot"; > {}
technique MainTecBS0 < string MMDPass = "object";> {}
technique MainTecBS0 < string MMDPass = "object_ss";> {}
ここまで
Barrier.fx の改造 (直接じゃなくてコピーを編集がいいと思う)
上の方、// 座法変換行列のあたりにでもこれ追加
float4x4 WorldViewMatrix : WORLDVIEW;
ゆがませるための背景のテクスチャを用意、ただし自分は描画しないためにDefaultEffectで自分をnull.fxで描画
これで検索→texture DistortionRT: OFFSCREENRENDERTARGET <
string DefaultEffect =
"self = null.fx;"; // 自分は描かない
BufferShadow_VSの中でreturn Out;直前にでも法線のZ値を保存するのを追加
Out.Color.a = -normalize( mul( Normal, (float3x3)WorldViewMatrix ) ).z;
BufferShadow_PSの中 最終的な色を決めるところをゴニョゴニョする TexColor関係はごっそり削る
ここから
float4 Dist = tex2D(DistortionView,UVPos+DistColor.rg); // ←これを目印に場所検索
Dist.a = pow(IN.Color.a,10);//←ここの10を増やすとエッジ部分がどんどん薄くなる、1にするとくっきり
//Dist.rgb = float3(1,1,1);//ゆがませないでα具合をみたいならこれで色付ける
return Dist;
ここまで
これを適応したモデル自体は描画されずモデルの形がユラユラするので熱源の形のモデルでも作るといいかも
>>161
エフェクトが0,0,0から0,0,1へ向いてるとして、0,0,1から0,0,0を見るとビルボード出来ずに1本の線になってしまう状態の事です
ほぼ全周から映すカメラの都合上、どうしても避けられなさそうでした
>>164
ありがとうございます
欲しかった通りの効果が得られました!
使わさせて頂きます
>>163
了解、ちょっとテストでやったら一応できそうでした
仕事終わった後でまだ解決していなさそうならちゃんと書き直してどっかにアップします
(今日は呑み会があるので今日中にあがるかどうかは期待しないでください)
ぼやかす領域の指定方法のリクエストがあれば答えてみようかなと
リクエストがなければコントローラのセンターボーンからの距離になります
>>166
センターボーンからの距離となると、領域は球体でしょうか
それで大丈夫です、急ぎじゃないのであげられるタイミングでお願いします
ここのスレで回答してる人って普通にエフェクト配布とかしてる人達なんだろうか
毎度知識量にびびる
多少プログラム齧ってれば、ここの質問程度は答えられる。
って、プログラム齧ってる友人が言ってた!
もちろん俺にはさっぱり分からないけどな!!
日本語でおkって感じw
>>164
横からですがありがとうございます。
これは便利だ
>>149 が流れてしまった感じなのでもう一回
ビームマンさんのビルボードエフェクト(http://www1.axfc.net/uploader/so/1606640&key=mme)
について、Trの値で透明度を操作できるようにすることは可能でしょうか?
回答あるんだからちゃんと見なさい
>>147
こんな感じだろうか
http://sdrv.ms/XSEheL
o_OpticalBlur_v0_1 改 適応範囲指定.zip
>>172
ひぎいすいません ご指摘有難いです
>>158
出来ました、ありがとうございます!
>>173
頂きました
クオリティも使い勝手も思った以上で驚いてます
重宝しそうです、大事に使わせていただきます
というかこんなのを自分一人のために作ってもらってしまって申し訳ないやら何やらw
ありがとうございます!
>>173
モデルのエッジ部分がクッキリなのが気にくわなかったので更新
ぼかすドット距離分だけ法線方向に太らせたので多少イメージ変わって見える
http://sdrv.ms/WzMjTa
o_OpticalBlur_v0_1 改 適応範囲指定 エッジにじみ.zip
需要がとってもピンポイント
>>176
私のリクエストでは無いですが、ピンポイントでも作ってくれるあなたにありがとうと言いたい
>>176
こんなピンポイント需要が満たされすぎて怖い
いただきました!本当にありがとう
横から質問なのですが1枚板のxファイルを作って>>164 の設定にしたfxファイルのフォルダに入れ、MMDで読み込んだのですが
同じフォルダ内にあるbarrier.pmxを読み込んだ時のように綺麗なゆらゆら具合になりません
xファイルの材質はbarrier.pmxにある材質と同じに設定してありますし、xファイルなのが問題なのかと思って同じ1枚板をpmx化してみましたが
やはりbarrier.pmxを読み込んだ時のような綺麗なゆらゆら具合になりません
適用しているfxファイルは同じなのですがどこか間違えているのでしょうか?
〉〉179
164で提示したやつは法線がユラユラの濃さにかかわるので
板ポリだと厳しいかの知れません、しっかりと法線のあるそこそこポリ数あるモデル向けです
>>180
ありがとうございます。
法線についてちょっと勉強していろいろと試して見ます
>>180
ポリゴンの法線とUVマッピングを調整したら板ポリでも無事に機能しました。
ありがとうございます。
>>182
外だったんで慣れないスマホで変なアンカ申し訳ない
そして追加情報↓
ちゃんとMMEの説明書を見たら
string DefaultEffect =
"self = null.fx;"; // 自分は描かない
じゃなくて
string DefaultEffect =
"self = hide;"; // 自分は描かない
にすればnull.fxなんて作らなくてもよかった……。
口から吐き出す煙草の煙を再現したいんですけど
適したMMEご存知ありませんか?
ビームマンPの
宵闇の中舞い降りた白銀の堕天使
はどうかな?
…そっか、あれ「〜の吐息」は付かないんだ
ビームマンのエフェクト置き場では
宵闇の中舞い降りた白銀の堕天使(宵闇の中舞い降りた堕天使の白銀の吐息)
と書いてあるw
そんな長い名前だったのかww
でもあれって、煙草のフーッってのは難しいんじゃないかな。
普通に煙エフェクトを改変して使った方が良いんでない?
煙草の煙テスト【MME配布】 ‐ ニコニコ動画(原宿)
http://www.nicovideo.jp/watch/sm17842412
こんなのもある。
ビームマンPのBreath_v1_0のパラメータ調整で作ってみたんだけどこんな感じはどうかな?
https://www.sugarsync.com/pf/D109395_7886198_7461253
以下レシピ
// パーティクル数(0〜15000)
#define PARTICLE_COUNT 1500
//生成制限速度
float CutSpeed = 0;
//バラけ具合
float particleSpread = 1;
//スピード
float particleSpeed = 0.2;
//最終到達距離
float particleSystemHeight = 0.5;
//パーティクル大きさ最大値
float particleSize = 1.0;
//パーティクル大きさ最小値
float particleSizeMin = 0.2;
//パーティクル拡大速度
float particleScaleSpd = 2.0;
//全体透明度
float particleAlpha = 0.025;
//個別回転速度
float RotateSpd = 0;
//全体回転速度
float GlobalRotateSpd = 0;
//重力
float3 Grv = float3(0,5,0);
//推進力
float MoveSpdMin = 1;
float MoveSpdMax = 2;
//減衰力(空気抵抗)
float Air = 0.4;
//モデルの回転に追従するかフラグ
#define LOCAL_ROTATE = TRUE;
>>190
おおー!横だけどこれは凄い!
ちょっと感動した!
IntelHD+GeforceGT650M(Optimus)なノートを買って、Radeonなデスクトップと合わせて3種のGPUが揃った記念に
MMEとMMM用のエフェクト検証一覧表を作ろうと思うんだけど
http://www38.atwiki.jp/mmd-world/
手伝ってくれる人Plz!
VPVP.wikiで作るか迷ったけど、あっちは管理人大変そうだったので分けました
ある程度まとまったら、データ譲渡するなり相互リンクなりする予定
使い方が悪いのかGPU依存の問題なのか、これである程度切り分けられる助けになるはず
他にスレ立てして話進めた方がいいかしら?このスレで続けてOK?
とりあえず概要が決まるまでは良いんじゃないかな。
大まかな方向性が決まったら改めてスレ立てれば?
ビームマンPのKirakiraで、今はlamp.pngに合わせてパーティクルの大きさが変わると思うんですが
それをパーティクルの明るさにすることはできますか?
質問あげ
>>194
VS_OUTPUT Mask_VS(float4 Pos : POSITION, float2 Tex : TEXCOORD0)
の中のサイズ変更してるところをカット
float lamp = tex2Dlod( LampSamp,float4(frac(L),index/count,0,1));
Pos.xy *= lamp;
を
float lamp = tex2Dlod( LampSamp,float4(frac(L),index/count,0,1));
//Pos.xy *= lamp; // 別に残してもいい
α値いじってるところに追加
//遠方は薄く
Out.Alpha *= 0.3 + 0.7 * (1 - saturate((Out.Pos.z - 50) / FadeLength));
Out.Alpha *= alpha1;
Out.Alpha *= lamp; // ←追加 サイズ変更のやつを使いまわし
>>196
出来ました、ありがとうございます!
エフェクトのwiki作ろうという話を出した>>192 ですが、wikiの体裁をある程度整えました
【記載項目】
・エフェクト名
・ファイル名(Zipファイル名または主として読み込むfxファイル名)
・公開先URL
・バージョン
・公開日
・ポストエフェクトか否か
・MMD、MMMへの対応状況
・IntelHD、Geforce、Radeon毎の動作状況
【記載ルール】
・ポストエフェクト以下の項目は、動作確認:○、動作しなかった:×、不明:不明
・できれば検証したGPU名を併記が望ましい 例:○:HD7770
・記載されているGPUより古いもの、スペックの低いもので検証した場合は書き換え推奨
・公開されたが検証していない場合でも記載可。その場合、各項目は不明として下さい。あとで検証しときます
・備考欄には、fxファイル書き換えで対応できる場合など、そのリンク先を記載
流石にVIAのGPUの欄要らないよね?あっても自分は持ってないし…
コンテンツを補強しつつ、週末からぼちぼち一覧に追加していこうと思います
あと何かあった方が良いものってあるかな?
>>・記載されているGPUより古いもの、スペックの低いもので検証した場合は書き換え推奨
これって、判断難しいと思う。
新しくて低スペック古くて高スペックって場合もあるし、
単純にどっちがより高いかはっきりしない場合だってあるだろうし。
それにどっちが高スペックかなんてわかる人ばかりでも無いだろうし、
見る人がわからないケースも多いと思う。
確認したのを列挙した方がいいように思う。量が増えるけど。
>>199
コアのアーキテクチャが判る人なら書き換えて貰えればと思ってるけど、そう書いちゃうと書き込みに二の足踏むかな
コアクロック・メモリクロック・メモリ帯域・グラフィックメモリ容量・シェーダー数が足りずに読み込めないとかでなく
プログラマブルシェーダーが対応してるかどうかが問題になると思うので
グラボのスペック一覧みたいなのを作ったほうがいいか
ベンチマークでなくて、機能的な話でこれより上なら互換性あるよみたいな
列挙する場合はどうするかねぇ
一ページにまとめるのは無理そうだから、50音順orアルファベット順にして
コメント記入フォーム作って「HD7770動作しました」とか書き込んでいってもらうのがいいか
>>200
グラボの機能一覧ならwikipediaのRadeon、GeForce、Intel(英語版の方が見やすい?)と
ピクセルシェーダ(ここの表がわかりやすい)にリンク貼っておくとか?
ビームマンPのSelfBurningについて質問なのですが、適応モデル移動時に移動距離に依存して炎が揺らぎますがこれを依存しないようにってできますか?
MME_ParticleEditorのFireParticleSystemみたいな感じになるといいのですが・・・
>>201
なるほど
自分のPCのグラボのスペックの見方はもとより
買おうとする場合のスペックの見方についてもちょっと書いておくか
CPU-ZかGPU-Zあたりお勧めしといてもいいかなぁ
週末まではスクショ撮って素材作ったりごにょごにょしてると思うので
適当に意見出したり、先にwikiに書き込んだり、検証依頼のエフェクト書き込んだりして下さると助かります
>>202
SelfBurning.fx もしくは SelfBurning_anime.fxの
ParticleBase_Pixel_Shader_main
のセーブした位置をコピーするところをごにょごにょ
↓で探す
float4 old_color = tex2D(ParticleBase2, texCoord);
if ( old_color.a <= t ) {
old_color.a = t;
return old_color;
} else {
float rnd = (getRandomPS(idx)+time_0_X)*65535;
↑を改造
ここから
#if 0 // 登りきるまでパーティクル位置を更新しない処理をカット
if ( old_color.a <= t ) {
old_color.a = t;
return old_color;
} else
#endif
{
// float rnd = (getRandomPS(idx)+time_0_X)*65535; // 時間で発射頂点を変えてる処理をカット
float rnd = (getRandomPS(idx))*65535;
ここまで
頂点位置でなく頂点番号をセーブするようにすれば
消えたパーティクルが生まれ変わるときに元のSelfBruningと同じようにランダムで変わるってことはできるのですが
また長文書くのあれなんでこの改造だけで良さそうならこれで勘弁してください
>>203
MMMでの動作チェックなら舞力介入Pのやつをちょっとだけやってある
MME配布動画のサンプルとあと数個だけど
MMM対応に関しては対応版を別の人が配布してたりするけどうする?
MMMの欄にいれちゃうのかな?
>>204
おお、イメージ通りです!
これでも十分なのですが、この作りにするとTrでの着火が表示非表示みたいな処理になりますがこれは仕様なんでしょうか?
>>206
あ、Tr使ってたのかー
さっきのところのすぐ下の
float4 work = getVertexPosBuf(rnd%getVertexNum()); // ←これを目印に検索
world_matrix[3].xyz = work.xyz;
if(!(MaterialDiffuse.a*work.a*length(work.xyz)))
{
world_matrix._41_42_43 = 65535;
}
↑これの周りに条件追加
↓こんな感じに
float4 work = getVertexPosBuf(rnd%getVertexNum()); // ←これを目印に検索
if( old_color.a <= t ) { // 実行中処理
world_matrix._41_42_43 = old_color.xyz; // とりあえず前のをセット
if( all( old_color.xyz != 65535 ) ) { // 生まれたときにTrが0だったら65535が入ってるので位置更新しない
world_matrix._41_42_43 = work.xyz; // 位置更新
}
} else { // 生まれ変わる瞬間処理
world_matrix._41_42_43 = work.xyz; // 位置更新
if(!(MaterialDiffuse.a*work.a*length(work.xyz))) { // Trが0.0 もしくは一番最初の初期化時
world_matrix._41_42_43 = 65535; // 座標をすっとばす
}
}
↑ここまで
このすぐ下に
#if !FIX_FIRE_DIRECTION
が続くように
で多分いける・・かな。
>>207
上の文のところを下の文に変えて、その下に#if !FIX_FIRE_DIRECTION if ( texCoord.y < 0.5 ) {〜が来るようにするんですよね?
warning X3206: implicit truncation of vector type
がたくさん、
error X3004: undeclared identifier 'old_color'
の窓が出てうまくいきませんでした・・・
>>208
あ、204で消してもらった最初の一行復活で…。
↓これ
float4 old_color = tex2D(ParticleBase2, texCoord);
ついでに修正
if( all( old_color.xyz != 65535 ) ) { // 生まれたときにTrが0だったら65535が入ってるので位置更新しない
これ allじゃなくてanyでした
if( any( old_color.xyz != 65535 ) ) { // 生まれたときにTrが0だったら65535が入ってるので位置更新しない
xyzの全部が65535じゃない時にしちゃっててなんかの偶然でx一個だけにもそれが入ってたら更新しなくなったりしました
燃やす元モデルの位置を65535付近にしないと不具合は出ませんでしたが。
>>203
あー、別の人が修正対応してる場合もありますね
MMMの欄に「※」書いて、備考欄にリンク書けば表が横に長くなるのを避けられそうだけど
完全に同じ機能があるのでない場合は、行を分けたほうがいいような気もします
一覧にどんどん追加していく時には、同じ効果かどうか確認するより書き込んで貰うことを優先したいので
DL先が違うなら行を分けましょうか
MMMである程度検証データお持ちなのは助かります
わたりさんの部位破壊.fx(http://bowlroll.net/up/dl11169) を64bitMMDに対応させるには
どのような書き換えが必要でしょうか?
>>211
MMD7.39x64で動作を確認しています。
と書いてあるが?
>>212
すみません、変なことをしていたみたいでした。解決しました
>>209
出来ました、完璧イメージ通りです!
回答していただきありがとうございました!
>>194 の
>ビームマンPのKirakiraで、今はlamp.pngに合わせてパーティクルの大きさが変わると思うんですが
>それをパーティクルの明るさにすることはできますか?
で、そぼろさんのWorldsnowでも同じことをしたいんですがそれにはどこを書き換えればいいでしょうか。
>>215
WorldSnowフォルダ 下準備
WorldParticleController.pmdに 点滅速度 という名前のモーフを追加
ビームマンのKiraKiraフォルダにあるlamp.pngをコピー
WorldSnow.fx 改造
//パーティクルテクスチャ
の近くあたりにでもテクスチャ追加
↓ここから
//点滅用テクスチャ
texture2D Lamp <
string ResourceName = "lamp.png";
int MipLevels = 0;
>;
sampler LampSamp = sampler_state {
texture = <Lamp>;
Filter = LINEAR;
};
↑ここまで
// Controller対応 ////////////////////////////////////////////////////////////
って書いてあるあたりに↓追加
↓ここから
// 点滅速度のモーフ値を取得できるようにする
float morph_lamp : CONTROLOBJECT < string name = "WorldParticleController.pmd"; string item = "点滅速度"; >;
↑ここまで
頂点シェーダ改造
WPEngine_VS ←で検索
大きさを変えたいなら
// ビルボード化
のちょい上
Pos.xy *= ParticleSize_m * flicker;
のところを改造
↓ここから
//Pos.xy *= ParticleSize_m * flicker;
float L = ftime * (1-morph_lamp) + (index/count_m)*128;
float lamp = tex2Dlod( LampSamp,float4(frac(L),index/count_m,0,1));
Pos.xy *= ParticleSize_m * flicker * lamp;
↑ここまで
明るさを変えたいなら
↓これを
//アルファ適用
Out.Alpha *= ParticleFade(particle_pos);
Out.Alpha *= alpha1 * (1 - Transparent);
Out.Alpha *= 1 + AlphaAppend_m;
↓こうする
//アルファ適用
Out.Alpha *= ParticleFade(particle_pos);
Out.Alpha *= alpha1 * (1 - Transparent);
Out.Alpha *= 1 + AlphaAppend_m;
float L = ftime * (1-morph_lamp) + (index/count_m)*128;
float lamp = tex2Dlod( LampSamp,float4(frac(L),index/count_m,0,1));
Out.Alpha *= lamp;
↑ここまで
両方同時にしたいならアルファ適用の方の
float L = ftime * (1-morph_lamp) + (index/count_m)*128;
float lamp = tex2Dlod( LampSamp,float4(frac(L),index/count_m,0,1));
は上のとかぶるから追加しないようにする
で、出来るといいな。
コンパイル通すチェックだけでMMD上で動かしてチェックはしてないから
不具合あったら家に帰った後に対応します
ただいま、一応216で改変した奴をMMDで表示テストしてみたらそれっぽくはなっていました
一度MMDがカッとんだのは今日入れたばかりのRadeon最新ドライバのせいにしておきます
すいません、質問させてください。
水面エフェクトの波紋がなんかおかしいんですが、
原因と対策がわかる方いらっしゃいませんか?
カラフルな四角っぽいのがでるんですが。
http://www.dotup.org/uploda/www.dotup.org3860502.wmv.html
MME_Water_EX_v0_4_5.zip
水面エフェクトver4
屋内向け設定 MirrorWater_low.x
設定 Y10 Rx90 Si23 fx等いじってません。
【CPU】Corei7-3770K 3.50GHz
【メインメモリ】16GB
【GPU】Radeon HD 6800 Series
【OS】Win7 pro 64bit
【DirectX】11
【MMD】 v7.39dot (DirectX9 ver)
【MME】 v0.32
見当違いかもしれないけど、思い当たることとしては、
MMDでの作業中に、別窓表示にすると急に全てのエフェクトのエラー
「Error: some techniques cannot run on this hardware:〜」
が出るようになって、それ以降おかしいような気がします。
同窓に戻して右上のMMEffectから「全て更新」すると同窓のうちは
エラーが出ませんが、別窓にするとやはりまたエラー。
なお、上のエラーも、pmmファイルごとに出たり出なかったりします。
とりあえず普段はデバイス検証スキップしてます。
>>218
カラフルな四角いのがでるのは仕様ではないかな。
アップにしたり、背景によっては目立つので、MirrorWaterの波紋抑えめにしてDigitalRippleで波紋作ってる。
64bitだと「GetNormal.fx」の最後の方に「technique MainTec」が2つあるから、リネームしないとエラーでて一部表示が変になる。
>>219
仕様なんですか。
使い方動画見ても全然そんなの出て来なかったから
なにかおかしいのかと思ってました。
あと、fxの直す場所わからなくて普段64bit版使ってなかったので
リネームのやり方助かりました。
ありがとうございました。
ビームマンPの金属&錆シェーダーの使い方を解説した動画orサイトとかありますか?
仕様にかなりコツがいると聞いたので
>>216-217
ありがとうございます
MMDもカッとばず、無事動作しました。
MMDのスフィアマップですが、これはPMDE/PMXEで乗算、加算、サブTexのみしか決められず、
これをMME側である程度自由にコントロールしたいのですが、可能でしょうか?
具体的にはRGBのカラーカーブ、乗算、加算の係数の変化、透明度操作等です。
>>221
よくわかんないんでとりあえずコントローラで操作出来るようにしてみた
http://sdrv.ms/Vd1GXG
Mechanic_Rust(改 操作).zip
ビームマンPのMechanic_Rustのフォルダの中身のテクスチャ使ってるんで
フォルダコピペしてそこに入れると良いかと
シャドウマップがOFF表示の時は見た目適応されないので
なんかをポチポチ押してシャドウマップオンにしてください
コントローラのなんかのボーン位置xyzが元の.fxのフィルライト色とかに対応してます
>>223
ググってみたところカラーカーブってトーンカーブとは違うものっぽいですね
よくわからないんでとりあえずトーンカーブとしてやってみました
カーブの指定はボーンのxで赤、yで緑、zで青を表して
4つのボーンを3次ベジェの各点に見立てて計算しています
ベジェカーブを表示しようかとも思ったけど眠いんでやめました、そこは脳内補間してください
乗算係数、加算係数、透明度は表情で指定です
http://sdrv.ms/109pLLo
Basic Full(改).zip
これだと全部の材質に同じように適応になってしまうので
実際に使うのなら材質ごとに何かするようなシェーダがいいですよね
とりあえずこれはお試し版とでも思ってくれれば
>>225
とても素早く対応して頂き、本当に感謝です。
元々自分のアイデアとしては主に髪、服等のスフィアマップを色変換させてあげればリムライトのような効果が得られるのでは?と思ったので・・・
MMD上での効果を確認しました。CC0~CC3での操作は正直自分も門外漢なものでなかなか難しいですが、オートルミナスと併用して使うと非常に綺麗で素晴らしいですね。
材質ごとというのは仰る通りで、材質ごとにかけ分けられると嬉しいです・・・w
スマートフォン版
掲示板管理者へ連絡
無料レンタル掲示板