レス数が1スレッドの最大レス数(1000件)を超えています。残念ながら投稿することができません。
【MME】MikuMikuEffectを語るスレ Part 2
-
>>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上で動かしてチェックはしてないから
不具合あったら家に帰った後に対応します
|
|
掲示板管理者へ連絡
無料レンタル掲示板