SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

DeveloperZine(デベロッパージン)- エンジニアの意思決定を支える技術情報メディア ProductZine

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

MikuMikuEffectで学ぶHLSL入門

3DCGツール「MikuMikuDance」のエフェクトを拡張する「MikuMikuEffect」
エフェクトの種類と編集方法

MikuMikuEffectで学ぶHLSL入門(2)

エフェクトの編集方法

 いよいよエフェクトファイルの編集に移ります。まず今回は、既存のエフェクトのパラメータ(変数)を操作して動きを確認してみることにしましょう。

 「アクセサリ操作パネル」から、サンプルとして添付したFireParticleSystem.xをMMDに読み込み、同フォルダ内のFireParticleSystem.fxをテキストエディタで開きます。

編集0
編集0

 Windows付属のメモ帳でも問題はありませんが、高機能なテキストエディタの使用を推奨します。

 まずこちらがサンプルそのままを読み込んだ状態です。

パーティクル0
パーティクル0

 12行目の「//---ユーザ操作用パラメータ---//」から29行目の「//----------------------------//」内が編集対象のパラメータです。

 では上から順番にパラメータを編集し、効果を見ていきます。

particleSystemShape

FireParticleSystem.fx
//パーティクル射出点のばらつき
float particleSystemShape = float(1.00);

 このような部分の「= float(1.00);」と記述されている部分を書き変えることでパラメータの設定を行います。

 まずは、数字を 1.00 から 0.00 に変更し、ファイルを保存します。

編集1
編集1

 パーティクルが広がる感じだった物が、地面から垂直に吹きあがるようになりました。

パーティクル1
パーティクル1

 続いて、 2.00 に変更してみましょう。

パーティクル2
パーティクル2

 今度は中心に集中した効果になりました。このように、テキストデータを編集、保存することで即座に確認することができます。

 引き続き、他のパラメータも変更してみましょう。

particleSpread

 時間経過に伴うパーティクルの移動範囲を決定します。数値を大きくすると広がりが大きく、小さくした場合は、広がりを抑えることになります。

編集2
編集2
パーティクル3
パーティクル3

particleSpeed

 パーティクルの吹きあがる速度を設定できます。0.00 にすると、パーティクルは完全に静止します。

編集1
編集1
パーティクル9(画像では効果を伝えることができませんが、動きが止まっています)
パーティクル(画像では効果を伝えることができませんが、動きが止まっています)9

次のページ
最後に

修正履歴

この記事は参考になりましたか?

MikuMikuEffectで学ぶHLSL入門連載記事一覧

もっと読む

この記事の著者

ビームマンP(ビームマンピー)

ニコニコ動画等でMikuMikuEffect用シェーダプログラム開発者として活動。 開発を始めた理由はカッコいいビームやミサイルが作りたかった為。 エフェクト配布用サイト http://www43.atwiki.jp/beamman/

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

CodeZine(コードジン)
https://codezine.jp/article/detail/6035 2011/07/21 14:00

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー