レス数が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が無い場合は公開動画の説明をよく読もう。
横から質問なのですが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
>>223
【MME紹介】グラデーションフィルタエフェクト
http://www.nicovideo.jp/watch/sm16248468
こんなのどうだろう。後半ね
>>227
おおお、そういう物もあるのですね、試してみます、ありがとうございます!
あとFuriaさんのadvancedTextureMapping付属のfull+SpecMapExでもやりたい事が出来るか試してみます
t-oguraさんのガラスエフェクト(→http://www.purple.dti.ne.jp/~t-ogura/MyMME.html)
で、シェーダがかかっているオブジェクトをそのオブジェクトを通して見たとき、
表示が思うようにならなくて困っています
例えば人に適用したとき、顔の前に手をかざすと顔にシェーダがかかっていないような
理想はシェーダ越しに見てもシェーダがかかっていることなんですが、
ややこしいことになりそうなので
ガラスシェーダがかかっているオブジェクトを通すとそのオブジェクトは見えない
という風にできますか?
上の例でいうと、手の向こうにはもうステージしか見えない感じで
分かりづらくてすみません、よろしくお願いします
>>229
エフェクト重ねるならビームマンPのFull_and_Metall_Glass_v1_1の方が使いやすいかも。
>>231
ガラスシェーダはいくつか試してみたんですが、表現したい質感にこれがぴったりで…
色々と癖のあるエフェクトだとはわかっているんですが
↑アンカ間違えたすみません
>>230
>>231
こんな感じ? http://twitpic.com/bwph49
FuriaさんのゆがみエフェクトVer1.0
針金Pのソフトシャドウにコントローラーつきますように・・・
>>233
そんな感じです!その仕様をガラスシェーダで出来ますか?
>>235
申し訳ないが、私には手も足も出なかったので、ゆがみエフェクトと
Full_and_Metall_Glassを使ってる。
>>224
便利そうなものを作っていただき恐縮なんですが、そもそも基本の
・どうやって材質に金属もしくは錆っぽい質感出すか
の初歩がわかってないですorz
ビームマンPのエフェクト公開動画には
「Mechanic_full.fxを使用するには専用にテクスチャを改造する必要があります」
とあったので。
・・・あれ、ひょっとして聞くスレ間違ってます??
>>237
横だけど
Mechanicなどの一部シェーダーはノーマルマップやスペキュラマップなどの拡張テクスチャを参照してディテールを追加している
その際モデルのUVを使用するので適応するモデルが正しくUV展開されていなければならない
さらに狙った場所にサビなど出したい場合には適応するテクスチャをUVを元に編集する必要もある
たとえば付属のあにまさミクはUV展開は一応されているものの
単純に正面から投影した形になっていて側面とかは引き伸ばされた形になってしまうのでUV編集は必須だし
目的の効果によってはその編集したUVに合わせたテクスチャを作成する必要もあるだろう
無論UVやテクスチャが無編集でも自分が満足行く結果が得られるのであればそのままでいいだろうがね
UVとテクスチャ設定に関する具体的な手法を聞くのははここではスレチだね
UV展開のやり方はモデリングスレあたりで聞いてもいいけど
テクスチャについてのあれこれ含めて3D関連のサイトがいくらでもあると思うよ
UV展開もノーマルマップやスペキュラマップも、別にMMDに限った用語ではないから
>>235
質感ちょっと変わっちゃいますが
オブジェクトの厚みで色の乗っけ具合を変えてるんでそこをいじるとか
MGlass_Final.fx
float colorEffect = min(1,thick*ColorParam); ←これで検索して
↓これに変えてみるとか
float colorEffect = -normal.z;
↓これを試してみるとか 最後の4を1にすると↑と同じになって大きくすると外側の色の乗っけ具合が薄くなる
float colorEffect = pow(-normal.z,4);
>>237
貼るテクスチャの3D空間上ポリゴン距離とUVの距離を全部統一するとかそういう改造じゃないかな?
適当なモデルに適応してみて顔と目の中の錆の具合を見ると
たとえば顔に4つの錆が出てたとして両目の中にも4つずつ錆が出ちゃうからそういうの気にしてUV展開すればいいとか
>>238
>>240
成程なんとなくイメージだけは分かった気がします。
ちょっと教わった方面で調べてみますね
>>236
その組み合わせも良さそうですね、覚えておきます。
>>239
少し自然になった気がします。使わせていただきます、ありがとうございます
おまえら実はビームマンだろ
ビームマンという個人は存在していなくて
エフェクトファイルを共有することにより
無意識下で意識が並列化されたものが集合して
ビームマンという現象を形成してるだけだよ
押井カントクのルパンかw
ビームマンPのメカシェーダで、べベル効果の出たところのみ色が乗り、
他は真っ黒になるようなパラメータ調整は出来ますか?
色々いじってみたのですが辿りつけなくて
データさんの玉ボケDOFについて質問させてください
ttp://ux.getuploader.com/Elle_DataPort/download/6/%E7%8E%89%E3%83%9C%E3%82%B1DOF_v023.zip
焦点の合っているオブジェクトとボケた背景の境界線がハッキリしすぎているので、そこを書き換えで改善できますか?
あとその境界線なんですが、普通にオブジェクトを描写するより輪郭が削れて見える?感じになります
そぼろさんのXDOFだとそうはなっていないので、色々見比べてみたんですがまるで分かりませんでした
その2つよろしくお願いします
>>247
玉ボケDOF.fxの深度マップにアンチエイリアスつけて
ブラってるところとブラってないとこの合成のところで
自前アンチエイリアスしてるところを切ってみたら
ちょいエッジ部分のイメージ変わった
// 深度マップ
texture DepthMap : OFFSCREENRENDERTARGET <
bool AntiAlias = true; // アンチエイリアス適用
/////////////////////////////////////////////////////////////////////
// 玉ボケブラー(後)とオリジナル画像を合成する
float4 Synth_PS(float2 Tex:TEXCOORD0) : COLOR {
float d=tex2D(DepthSampler, Tex).r;
d=saturate((d - FocusOut)/GradiationRange);
//↓ここから
// // 焦点内のアンチエイリアスのはみ出し分を補正
// float p=
// min(tex2D(DepthSampler, Tex+float2(1,0)*ViewportDotPitch).r,
// min(tex2D(DepthSampler, Tex+float2(0,1)*ViewportDotPitch).r,
// min(tex2D(DepthSampler, Tex+float2(-1,0)*ViewportDotPitch).r,
// tex2D(DepthSampler, Tex+float2(0,-1)*ViewportDotPitch).r
// )));
// p=saturate((p - FocusOut)/GradiationRange);
// d=0.5*(d+p);
//↑ここまでカット
return lerp(tex2D(OrgScreenSampler, Tex), tex2D(BackBlurSampler, Tex),d*Alpha);
}
>>246
9点サンプリングして法線をねじ曲げる時にねじ曲げ角度を取っておいて
角度が変わっている = ベベったと判断して黒くするならできるけど
パラメータじゃできなさそうな感じ?
//9点サンプリング
for(int i=0;i<8;i++)
{
IN.Normal += tex2D(NormalSampler,ScrTex+test[i]*SampStep).rgb;
}
float dotBebel = dot( BaseNormal, normalize( IN.Normal ) ); // これ追加
IN.Normal = lerp(BaseNormal,normalize(IN.Normal),BevelPow);
// 下の方でこれ追加して黒くする // スペキュラ適用 の後あたりが良いかな?
if( dotBebel > 0.9 ) { // 0.9は適当、0.0〜1.0の間
Color.rgb = 0;
ShadowColor.rgb = 0;
}
>>249
完璧にイメージ通りでした
ありがとうございます
>>248
最後をAlphaに書き換えると自分の環境ではエラー出るみたいで、そこだけ元通り
return lerp(tex2D(OrgScreenSampler, Tex), tex2D(BackBlurSampler, Tex),d*1);
}
にしました
エッジの綺麗さ全然違いますね、ありがとうございます。
え、だってv023って言うから(ノД`)
>>89 を読んでもしかしたら出来るんだろうかと思ったので質問させてください
わたり氏の破壊エフェクトにフィギュアエフェクトを合成することって出来ますか?
連続面ごとのエフェクト・粒子化エフェクト この2つの使用を考えています。
書き換えとか全く分からない初心者です。。
お手柔らかにお願いします
>>253
おまたせ、質感パラメータは反射高のヤツ
http://sdrv.ms/Uu95iM
破壊フィギュアセット.zip
>>254
ありがとうございます!頂きました
これでしたかったことが出来ます
本当に助かります、ありがとうございました!
済みません、MMD、MMEともに初心者です
ビームマンP様の「SelfThunder」や、「SelfBurning」系三種のMMEが使えず
困っております
こちらの>>120 も試させて頂いたのですが上手くいきません
お手数ですが、御指導いただけますと助かります
【OS】Windows7 32bit
【CPU】Intel(R) Core(TM) i3 CPU M 330 @ 2.13Ghz 2.13 Ghz
【メモリ】4.00GB(2.92GB使用可能)
【グラフィックボード】Intel(R) Graphics Media Accelerator HD (driver: 8.15.10.1995)
【MMDのVer】MikuMikuDance Ver.7.39 (DiretX9 Version)
【MMEのVer】MikuMikuEffect ver.0.32 in MikuMikuDance
MMEのログ
http://ux.getuploader.com/tsrm23k2nnktm/download/29/%E3%82%BB%E3%83%AB%E3%83%95%E3%82%B5%E3%83%B3%E3%83%80%E3%83%BC%E3%81%AEMME%E3%83%AD%E3%82%B0.docx
使用状況のスクショ
http://ux.getuploader.com/tsrm23k2nnktm/download/30/%E3%82%BB%E3%83%AB%E3%83%95%E3%82%B5%E3%83%B3%E3%83%80%E3%83%BC%E3%81%8C%E4%BD%BF%E3%81%88%E3%81%BE%E3%81%9B%E3%82%93.jpg
>>256
ログで気になったのは
Warning: texture format of 'ParticleBaseTex' was automatically adjusted: 1x3000(A32B32G32R32F) -> 1x2048(A32B32G32R32F)
↑これで
1x3000のテクスチャなんででかすぎて作れないから1x2048にしといたゼ
って言ってるんで
#define PARTICLE_COUNT 1500
を
#define PARTICLE_COUNT 1024
にするとか
この数とテクスチャのドット数があってないと保存した位置情報とかをちゃんと取り出せないし
>>257
早速のアドバイス有り難うございます!
御指摘通りに、fxファイルの(空白込みで)4行目を書き換えてみました
//設定用パラメータ
// パーティクル数(0〜15000) Tr1の時が↓ 0〜1で調節
#define PARTICLE_COUNT 1024
しかし、やはり状況は改善しませんでした
折角教えて頂いたのに申し訳有りません……orz
使い方.txtを見てる?
>>259
はい、見ています
1.SelfThunder.xを読み込む
2.エフェクト割当→VertexPosRTにてバチバチしたいモデルにSavePos.fxsubを適用する
(それ以外のモデルは非表示にしておくこと)
3.VertexPos_MaskRTにて、バチバチさせたい材質にSavePos.fxsubを適用する(他は全て非表示)
4.バリバリー
注・多分頂点数が多いモデルは見た目いまいち
あと人型モデルは頂点が集中する顔部分がいまいち かも
この手順は守っているつもりなのですが……
ただ、スクショに書いた通り、
「3.VertexPos_MaskRTにて、バチバチさせたい材質にSavePos.fxsubを適用する(他は全て非表示)」
これは説明動画と異なるようなので、念の為SavePos.fxsubとMask.fxsubの両方の適用を
試してみましたが、どちらも上手くいきませんでした
>>260
>>15 の奴は試してみた?
SelfThunder.fxの「A32B32G32R32F」を「A16B16G16R16F」に置換するだけだけど軽くはなるよ。
過去スレ読んでみたけどIntelHD Graphics(無印)では動かないのかな?
以前のGMAともHD1000以降とも微妙に仕様が違うっぽいしね。
>>261
有り難うございます
確かにサンダー読み込み後に凄まじくPCが重くなっていたのですが、
若干改善いたしました!
ですが、やはり根本的な症状が改善できませんorz
相変わらずモデルの文字通り斜め上でバチバチしております
ドライバを更新してみる?
「intel hd graphics ドライバ ダウンロード」でググって、ダウンロードセンターからWin7のexeかzipを入れてみるとか
>>262
有り難うございます、自分も過去スレ読んでみました
……が、グラボの交換って物理的なモノと技術が
要るようなので、ちょっとすぐには試せません、ごめんなさいorz
>>264
有り難うございます、それで調べてみて、試してみようと思います
>>265
ノート型なら交換はほぼ無理、デスクトップ型なら、サイズにもよるけどグラボ買ってきて取り付けるだけ。
>>264
こちらから
http://www.intel.com/p/ja_JP/support/detect
これを
Win7Vista_64_152257.exe
ダウンロードして、何回か互換性なしでエラー出たものの
何とかトラブルシューティングしてからインストールしましたが、
やはり改善いたしませんorz
色々な方に御指導頂いているのに自分の知識や技術が未熟で
大変申し訳ないのですが、もう少し頑張ってみますので
別の解決方法を御存じの方がいらっしゃいましたら
何卒よろしくお願い致しますorz
>>266
リロっておりませんでした、失礼いたしましたorz
悲しいことにノートです
スクショにも書きましたが、サンダーが位置や大きさ、挙動が
変なことになるものの、「発動」だけなら何とかするので、
(素人考えですが)全く読み込めないよりは何とかなりそうな
気はするのですが……
見たところ発動している場所はxyzすべてが65535の地点
そういう情報が書き込まれる条件は
マテリアルの透明度が0 (Trを0にしている)
VertexPosRTで最初にSavePos.fxsubで書き込む前
VertexPos_MaskRTでMask.fxsubで書き込む前
の3つなのでまずはVertexPosRTとかで適切なfxsubを指定してるかチェック
VertexPosRT、VertexPos_MaskRTのテクスチャ用のメモリがVRAMに足りていない可能性もあるので
とりあえず右上にSelfThinderが発動している状態でMainタブのミクさんにSavePos.fxsubをアタッチ
何か画面上の方にバグったように色が付いてたらOKだけど
テクスチャメモリ足りなかったらおそらく画面真っ黒になる
次はVertexPos_MaskRTのテクスチャが作れてるかチェック
は、SelfThunderはMaskの必要は実はないんでどうでもいいや
SelfThunder.fxの
//頂点座標バッファ取得
で検索して、その近くに
Color = tex2D(PosSamp, tpos)*tex2D(MaskSamp, tpos).a;
ってのがあるから
Color = tex2D(PosSamp, tpos);
に書き換え
と、ここまでやって試してみてほしい
SavePosTexってなんだろか?って思ったら隠し機能か知らないけどSelfThunder.xのXYZ位置で色変わるんだね
SelfThunderのXYZがRGB各色、Siで稲妻のサイズ、Trで量が変更出来るのは解説動画で説明されてる。
>>267
それ64bit版だから、32bit版(↓)にしないと動かないね
Win7Vista_152257.exe
Nehalemのノート用i3なのね
今のIvyBridgeHD4000なら普通に動いたけど、まずは成功例があるかどうか判ればねぇ
余計に混乱させるかもだけど、MMDとMMEがそれぞれ32bit用かどうかは確認した?
以前、自分のMMEのVerが古くてきちんと表示されなかったことがあったので、念のためVerやOSの種類に合っているかの確認を
どうしてもダメだったら、AVIUtlとかで合成しちゃうっていう手もあるよ
あるいはそのシーンだけ誰かに出力して貰うとか
皆さま、丁寧なご指導、有り難うございます!
ちょっと実行に手間取りそうなので取り急ぎ御礼だけ先に述べます
(レス消費して申し訳ございませんが……)
もし無事成功したら、似たような事例に悩む方のご一助にさせて頂くために
対処法などをまとめたスクショを作ろうと思いますので……
>>271
「自分のパソコンを検索して自動で必要なドライバを探す」
ってボタンを押したのにorz(途中から英語オンリーのページになって
訳分からなくなった)
そういえばビスタの後ろとはいえ64ってついてますね……
適切なファイルまで教えて下さり、有り難うございます
早速インストールしてみます
>>272
MMDとMME(サンダーじゃなくてMMEそのもの)はおそらく32bit用で
問題ないかと思うのですが……
(自分の各環境、スペックは>>256 にまとめてみました)
ちなみにMMEでもオートルミナス、クロスルミナス、きらきら粒子
これらは(一見)問題なく発動します
連投失礼致します
>>269
御指導有り難うございます!
>とりあえず右上にSelfThinderが発動している状態でMainタブのミクさんにSavePos.fxsubをアタッチ
>何か画面上の方にバグったように色が付いてたらOKだけど
試してみたら、黄緑や黄色の帯状の模様でMMD内の画面が塗り潰されました
おそらくOKということだと思うのですが……
>SelfThunder.fxの
>//頂点座標バッファ取得
>で検索して、その近くに
>Color = tex2D(PosSamp, tpos)*tex2D(MaskSamp, tpos).a;
>ってのがあるから
>Color = tex2D(PosSamp, tpos);
>に書き換え
実行致しましたが、改善できませんでしたorz
ちなみに>>257 >>261 で頂いたアドバイスを元に書き換えたデータで
引き続き書き換えを行っております
>>271
自分のPCは間違いなく窓7なのですが、Win7Vista_152257.exe
をインストールしようとしたところ
インストールしようとしているドライバはこのコンピュータでは無効です。
コンピュータの製造元から適切なドライバを入手して下さい。
セットアップを終了します。
と出て結局失敗してしまいましたorz
何かPC側そのものに問題があるのかも知れませんが……
テストだけど SelfThunder.fxで 65535 で↓を探して
if(!(MaterialDiffuse.a*work.a*length(work.xyz)))
{
world_matrix._41_42_43 = 65535;
}
world_matrixにセットしないようにするために
こう書き換えるとどうだろう?
if(!(MaterialDiffuse.a*work.a*length(work.xyz)))
{
// world_matrix._41_42_43 = 65535; // コメントアウト
}
これで表示できたら マテリアルのアルファかTrが0.0になってるか
SavePos.fxsubで位置をセーブするのに失敗してる
SelfThunder.x はいじってないよね?
下のほうの
Material {
1.000000;1.000000;1.000000;1.000000;;
ってやつの最後の1.0000が0.00000とかになってるとかだと困る
分岐条件の中身をいじってテストも出来るか
if(!(MaterialDiffuse.a*work.a*length(work.xyz)))
を
if(!(MaterialDiffuse.a))
if(!(work.a))
if(!(length(work.xyz))
の3パターンでやってみるとか?
初歩的なことですみません、質問させてください。
モデル単位で設定保存というのはどうすれば良いのでしょうか?
割り当てのところでモデルを選択して保存するとemdファイルは出来るのですが
同じモデルを読み込み直して、モデル単位での設定読込してもエフェクトが適用されません。
MMEをDLし直しても変わりませんでした。
>>276
emdファイルにきちんと設定が書き込まれているか確認してみて
内容はただのテキストファイルだから、メモ帳などのテキストエディタにドラッグ&ドロップするか
拡張子を.txtに変えれば開けるから
そこで内容がきちんと保存されているか確認
あとは、エフェクトファイルを移動させなかったか、MMD関連ファイルを移動させなかったか、かな
相対パスで記述されているので、MMDの本体のあるフォルダのUserFile内に一度使うファイルを移動させてから
試してみるのもいいかも
自分も普通に読み込めないから諦めてる。
スマートフォン版
掲示板管理者へ連絡
無料レンタル掲示板