SHOEISHA iD

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

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

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

MikuMikuEffectで学ぶHLSL入門

3DCGツール「MikuMikuDance」のエフェクトを拡張する
「MikuMikuEffect」の概要と導入方法

MikuMikuEffectで学ぶHLSL入門(1)

動作確認

 では、記事に添付されているサンプルのエフェクトファイルを読み込んでみましょう。

 アクセサリ操作パネルの[読込]ボタンをクリックし、サンプルの「FireParticleSystem.x」を読み込みます。このXファイルを読み込むと、自動的に付属の「FireParticleSystem.fx」が読み込まれます。

図6 アクセサリ操作パネル
図6 アクセサリ操作パネル

 背景が白のままでは見にくいので、メニューの[背景]-[背景黒化]を選択しましょう。MMEが正常に動作していれば、「炎」のエフェクトが表示されるはずです。

図7 FireParticleSystem.fx
図7 FireParticleSystem.fx
コラム2 実行時のエラーについて

 エフェクトファイルを読み込んだ際に、以下のようなエラーが表示されることがあります。
 

図8 エフェクトエラー
図8 エフェクトエラー

 これは、そのエフェクトが要求する機能に、ビデオカードが対応していない場合に発生します。このエラーが出てしまった場合、残念ながら、そのエフェクトファイルは使用できません。
 

 ビデオカードをより新しいものに換装するか、あるいはソフトウェアレンダラ(参考資料9)を使用することで、解消できる可能性があります。

最後に

プログラムは怖くない

 MME利用者の声を伺ってみますと、エフェクトファイルを入手しても、そのファイルの中のコードについては触れず、補助GUIツールでもない限り自分でエフェクトファイルを編集しない人も多いようです。

 多くのエフェクトでは、各種設定を書き換えやすいように、ファイルの冒頭にパラメータ類が用意されています。

 エフェクトファイルは、ただのテキストファイルなので、編集に特別な環境は必要なく、それこそメモ帳でも十分です。また、MMEで読み込んだエフェクトファイルを書き換えると、即座に画面に反映されるので、効果を確認しながらの編集に適しています。

 まずは、エフェクトファイルに触れてみましょう。

まとめ

 今回は、MMEの紹介と導入方法について解説しました。

 次回以降では、エフェクトファイルを自分で編集する方法について、解説していきます。

参考資料

  1. ニコニコ動画 『3Dミクを躍らせるツールを自作してみた』 樋口優
  2. ニコニコ動画 『【MikuMikuDance】エフェクトファイルを読めるようにしてみた』 舞力介入P
  3. VPVP wiki - MME用エフェクト
  4. Wikipedia 『High Level Shader Language
  5. Wikipedia 『プログラマブルシェーダ
  6. Wikipedia 『ピクセルシェーダ#ハードウェア
  7. MSDNライブラリ 『エフェクト フォーマット (Direct3D 9)
  8. MSDNライブラリ 『HLSL のリファレンス
  9. MME: ソフトウェアレンダラ SwiftShader

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

連載通知を行うには会員登録(無料)が必要です。
既に会員の方はを行ってください。
MikuMikuEffectで学ぶHLSL入門連載記事一覧

もっと読む

この記事の著者

舞力介入P(ブリョクカイニュウピー)

ニコニコ動画でMMD関連のツール開発者として活動中。代表作は「MikuMikuEffect」。我流のAPI Hookを常套手段とする、邪道プログラマです。ニコニコ動画マイリスト

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

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

この記事をシェア

CodeZine(コードジン)
https://codezine.jp/article/detail/5997 2011/06/24 14:00

イベント

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

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

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

メールバックナンバー